0%

利用Image J进行晶粒尺寸测量

摘要:截线法的基本思想是,通过用一定长度的直线截过晶粒,可以计算平均多长的直线可以截过一个晶粒,也就是平均晶粒尺寸。

晶粒尺寸测量原理


统计学(平均数)

统计的样本总量越大,最后得出的平均晶粒尺寸越可靠。

截线法晶粒计数

截线法的基本思想是,通过用一定长度的直线截过晶粒,可以计算平均多长的直线可以截过一个晶粒,也就是平均晶粒尺寸。若记直线长度为L,截过晶粒总数为N,则平均晶粒尺寸可表示为:

需要注意的是,

  • 在实际计数过程中,直线两端一般没有截过完整晶粒,可统一算作一个晶粒。
  • 计数过程中不必关注晶粒“个数”,只需关注穿过的晶粒边界即可。
  • 实际计数过程中,某个方向的截过晶粒总数以超过100为宜,即多条直线总计穿过超过100个晶粒。

例如:

橙色截线共穿过5个晶粒边界,即穿过4个晶粒。截线两端未穿过完整晶粒。依据上述原则,可计算截线共穿过5个晶粒。

此时我们只需要再记录截线长度即可得到平均晶粒尺寸。

Image J软件操作


ImageJ是一个基于java的公共的图像处理软件,它是由National Institutes of Health开发的。可运行于Microsoft Windows,Mac OS,Mac OS X,Linux,和Sharp Zaurus等多种平台。其基于java的特点,使得它编写的程序能以applet等方式分发。

首先,没有下载Image J的同学可以去Image J官网下载界面免费下载,该软件为开源软件。考虑到大多数同学使用的是windows版本系统,请下载如下图红框所示版本后进行安装。安装过程十分简单。

安装完成后打开软件(要记住安装位置,双击安装根目录下ImageJ.exe便可以打开软件),打开后是下图所示界面。很简洁,只有菜单栏、工具栏和状态栏。

接下来,我们就要正式开始我们的计数操作了。

设置比例尺

我们知道,图片是以像素为单位的离散数据矩阵。如果我们不设置相应的比例尺,那么后续的直线测量得到的也将是像素点数据,就没有相应的物理意义。

要导入有比例尺的图片,可以通过File->Open…来打开图片文件,也可以通过拖拽该图片文件至ImageJ软件界面上完成。

然后按住Ctrl,滚动鼠标滚轮,将图片比例尺放大到合适大小。该步骤目的是方便对准比例尺,如果大小合适也可不用放大。

接着选择直线工具。



按住Shift,同时鼠标左键拖拽得到一条水平线,与比例尺重合。准确度看个人强迫症程度吧…

接下来点击菜单栏Analyze->Set Scale…



如下图进行操作。



需要注意的是,各位在设置自己的比例尺时需要自己注意比例尺。因为本文中的比例尺是100μm所以“Distance in pixels”设置为“100”,“Unit of length”设置为“um”。


设置好之后单击“ok”就完成的比例尺的设置。设置完成后可以尝试再次给比例尺画直线,从状态栏上可以看到长度数值,以此检测比例尺是否设置成功。



有同学反映“length”项有时候不出现。注意画直线时最好不要按住Shift键,粗略检查一下就好。

记录直线长度及其截过晶粒数目

接下来的步骤就比较简单了,根据公式我们需要记录的只有两个东西:直线长度和直线截过晶粒数目

Image J给我们提供了很方便的长度记录工具。

用直线工具在图上画出直线后,可以通过菜单栏Analyze->Measure记录长度,也可以使用快捷键“Ctrl+M”。会弹出下图所示的“Result”窗口。

其中“Length”便是图中直线的长度L了,而且是经过比例尺变换过具有真实物理意义的长度。

然后我们可以通过Ctrl+鼠标滚轮对图片进行放大,再对晶粒边界进行判断。依据之前给大家提到的晶粒计数原则,我们可以得到直线截过晶粒数目N。

笔者把这两项数据统计后汇总于Excel表格。

以上数据仅为示例,实际操作应以截取晶粒个数N≥100为宜。之后,我们再对原始数据的操作便是另一个话题了。

写在后面


以上方法是晶粒计数的最基本方法。

该种方法优点是原理简单,易于理解,直观易操作。但其缺点也很明显,我们很容易在画线时加入主观思想;同时其原理简单,会致使很多长度的统计信息实际上没有被充分运用起来,最后可能导致计数结果的不可靠。

接下来文章中,笔者还将会为大家介绍另一种晶粒计数工具,以供大家选择。敬请期待。

如果对上文中的任何一点存在疑惑,欢迎联系笔者。
Email: mozheyang@outlook.com