图像处理是科研中必然碰到的一环。从文章中拍摄照片的处理,到电镜中晶格的测量,甚至逐帧分析原位视频中数据,都离不开图像处理和信息提取。如果只简单地通过人工来信息提取,连简单的纳米颗粒/细胞计数都让人不胜其烦。这里介绍免费好用的Image J软件用来解决几乎与图像处理相关的所有问题。此外,丰富的插件库可以满足的你对科研图像处理的所有需求。
ImageJ是一个基于java的免费图像处理软件,可以应用在Linux,Mac OS X和Windows系统上,它是由美国国立卫生研究院(NIH)开发的。这款免费软件被广泛用于图像、视频处理,并且针对不同需求,各路大神无私分享了各种插件。只有想不到,没有做不到。比如基本的长度、角度、面积测量,电镜上色,平均荧光强度分析,图像自动配准,图像抖动自动校正,甚至徒手测心率。这里我对软件进行基本功能介绍和逐步讲解大家都有可能用到的一个实例:自动获取粒径分布信息。
官方免费下载地址:
https://imagej.nih.gov/ij/download.html
软件的主体非常简约,与大多数图像处理程序不同,ImageJ没有主要的工作区域。ImageJ的主窗口实际上非常简单,仅包含一个菜单栏(见图1),其中包含所有菜单命令,工具栏,状态栏和进度栏。图像,直方图,配置文件,小部件等显示在其他窗口中,测量结果显示在结果表中。大多数窗口可以在屏幕上拖动并调整大小。
图1 ImageJ软件主窗口
(1)工具栏。工具栏中有各种最常用的命令,包含用于进行选择,绘图,缩放和滚动等的工具。此外,工具栏的右侧包含七个插槽,可以容纳ImageJ网站上提供的60多种工具和15多种工具集可以选择。具体命令对应功能标示见图2。
图2-1 ImageJ软件工具栏标示(part-1)
图2-2 ImageJ软件工具栏标示(part-2)
(2)状态栏。当光标在图像上方时,像素强度和坐标显示在状态栏中。运行过滤器(filter)后,还将显示经过的时间和处理速率(以像素/秒为单位)。在状态栏上单击时,将显示ImageJ版本,Java版本,正在使用的内存,可用内存和已用内存百分比。在创建Selections或调整其大小时,状态栏上会显示选择属性(例如,位置,宽度等)。
(3)进度栏。状态栏右侧的进度条会显示操作的进度。如果操作需要的时间少于一秒钟,则不会出现。
下面我主要通过自动获取粒径分布信息这一具体实例,其中需要调动多种命令,可以让大家对软件有一个初步的了解。
(1)导入图片:依次选择file->open命令,导入想要分析的图片。
图3 导入TEM/STEM图片
(2)把RGB格式的图片转换为8-bit黑白图片。依次选择image->Type->8-bit。因为需要把RGB格式的图片转换为8-bit黑白图片有助于下面步骤中设置对比度临界值。
图4 将RGB格式的图片转换为8-bit黑白图片
(3)标定比例尺。首先选择线段工具(工具栏坐起第五个)。然后放大图像比例尺,并在图像中画出比例尺长度的线段,其次选择Analyze->Set Scale来告诉系统线段长度所代表的真实长度。
图5-1 标定比例尺(part 1)
在Known distance中填入真实比例尺长度,这里面是 100 nm,并在unit of length里面填入单位纳米(nm)。点OK。
图5-2 标定比例尺,填入真实比例尺长度(part 2)
(4)选择合适的对比度临界值(threshold)。选择菜单栏中Image->Adjust->Threshold(快捷键Ctrl+Shift+T)
图6-1 选择合适的对比度临界值(part 1)
在下面界面中选取好合适的阈值(在这里是红色完全覆盖到所有的纳米粒子)。这里清注意,比例尺也被红色所覆盖,不用担心它也会被统计到粒子信息里面,后面我们会通过相应的过滤条件去除无用信息。
图6-2 选择合适的对比度临界值(part 2)
(5)选择所需要统计的信息。这里选择Analyze->Set Measurements.得到相应命令窗口。
图7 选择所需要统计的信息
(6)分析得到粒径分布的信息。这里选择Analyze->Analyze Particles.然后打开相应的命令窗口。
图8-1 分析得到粒径分布的信息(part 1)
得到的命令窗口中有两个过滤条件。
第一个是面积过滤条件,假如按照默认设置是0到Infinity的话,单个被红色覆盖的像素点就被识别为一个粒子,那么显然结果是不可靠的。这里我首先目测了目测了粒子大小,然后选择了一个不是太大的数值100 nm2作为最小阈值,有利于保留有用信息的同时去除掉无用的干扰信息。
第二个是圆度过滤条件,它是会首先评价粒子的圆度,然后根据人为设置的条件去除掉圆度较低的信息。为了给大家一个直观感受,了解意义所在,我使用了默认的圆度设置0到1,也就是说无过滤条件。在其他命令中记得要勾选Display results来显示结果,勾选Exclude on edges来排除在画面边缘的粒子。
图8-2 分析得到粒径分布的信息(part 2)
我们来看一下面积有过滤条件而圆度无过滤条件的结果。我们看到红色圆圈标记的比例尺被统计在内,黄色圆圈标记的非常不规则粒子的粒子也被统计在内。
图8-3 分析得到粒径分布的信息(part 3)
为了解决这一问题,我们把圆度调到0.2至1,请看下图结果。比例尺便不再被统计在内,而且黄色框中粒子也消失。这时候我们基本可以得到满意的信息。但是我们发现绿色圈中粒子仍不符合我们的要求,因为只有一个粒子,我们记下它的编号是54,以便在随后的数据处理中删除掉。
图8-4 分析得到粒径分布的信息(part 4)
(7)处理统计结果。我们可以在弹出的结果窗口中得到面积统计信息,见下图。
图9 面积统计结果
这时全选所有数据,拷贝到Excel或Origin或其他数据处理软件中,通过圆形面积公式A = πr2得到半径,再将半径乘以2得到直径d(粒径分布是以直径为参考)。这里记得删除掉刚才绿色圈中的编号54。
图10 面积统计结果在Excel中进行换算得到直径
选择所有的直径数据,做出来粒径分布图。我这里用Origin作图。纳米粒子粒径分布图到此完成。格式根据个人喜好来修改。
图11 完成的粒径分布图
以上是基本功能的介绍,额外需要更多自定义功能的话可以直接去下面两个地方寻找资源:
(1) 带好插件的Fiji下载(Fiji is just image J的缩写)(Fiji地址:https://fiji.sc/)
(2)针对各种需求的插件下载(插件地址:https://imagej.nih.gov/ij/plugins/)
免责声明:本公众号致力于分享最新科研资讯,相关内容仅供参考学习,所有转载内容,均不代表【科学10分钟】赞同其观点,不能完全保证其真实性。如若本公众号无意侵犯媒体或个人知识产权,请联系【科学10分钟】小编:19113530170,我们将立即予以删除,谢谢。