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