杨 亮,刘钟馨,周 琼,林仕伟,曹 阳
(海南大学a.海南优势资源化工材料应用技术教育部重点实验室;b.硅锆钛资源综合开发与利用海南省重点实验室;c.材料与化工学院,海南 海口570228)
扫描电子显微镜是联系宏观世界与微观世界的桥梁.目前,场发射电子扫描显微镜的分辨率已经达纳米级,已是材料表面形貌分析方面一种不可缺失的研究手段[1-2].对材料科学与工程的学生来说,材料性能表征既是本科阶段重点学习内容也是学习的难点,利用SEM(Scanning Electron Microscope)表征材料表面形貌及SEM图像分析更是学习内容的重中之重.但目前SEM属大型贵重设备,学生一般没有机会上机操作,对电镜照片后处理工作更是无所适之.
Visual Basic 2010学习版开发环境具有的强大图像处理功能,可以对电镜图片的每个像素进行操作.该软件采取由上至下、由左至右、由左上至右下等多方向对电镜图片进行二值化处理,以确定指定范围的电镜照片每个孔的位置及像素面积并将二值化后的图像进行输出,以方便比对孔洞位置及孔面积计算的误差情况.结合电镜照片标尺的实际尺寸和像素尺寸将每个孔洞的像素面积转换成真实面积并计算出相应的孔径大小.将取得的孔径按大小进行排序,计算出给定孔径区间内孔洞的数量,利用Data View控件将不同区间孔径数量分布结果进行图形化显示.本软件还提供了保存二值化图像功能,可将孔面积、孔数量、孔径大小及不同区间的孔径分布等信息进行保存,以方便对数据后续的深入分析.
本软件以微软公司最近发布的Visual Basic 2010学习版为开发工具,以恒压200,230,260,290,320,350 V处理的微弧氧化样品的场发射电镜照片为研究对象,通过图像的读取,二值化及修正、孔径计算与转化、孔径区间内孔洞数量分布计算等过程来实现,界面友好,稳定性高,对培养学生对电镜照片的认识有一定的帮助.
电镜照片由电镜采集系统自动生成并可保存为*.BMP或*.JPG等通用格式,但通常会采用颜色索引格式保存,给后续图片二值化带来一定的困难[3].故本软件先获取SEM图片高和宽信息,再以该尺寸新建立1张24位新位图图片,并拷贝原图到新建位图,然后在图形控件内对该转化后的图像进行显示,如图1所示.代码如下:
图1 加载图片后的软件操作界面
采用全局阈值法对整个图像进行二值化,根据图像的直方图[4]分布来确定1个阈值也可根据图像质量手工调整该阈值.但由于电镜照片的噪声及样品表面存在污染等原因,使SEM照片二值化后会出现少量远小于样品微孔孔径的噪声颗粒,为去除该噪声点对实验结果的影响需要对图片进一步修正,以每个二值化后的纯黑像素周围的8个像素数量来判断该像素是否为噪声[5],代码如下:
由于电镜照片底端均有标尺等标志信息,一般不用二值化该区域,故应在二值化前除去该区域,可减小实验误差.同时由于二值化及修正过程所耗机时较多,将该过程利用Visual Basic自带的线程控件(Backgroud Worker)进行后台操作,利用Backgroud Worker控件的 Worker ReportsProgess事件报告处理进程,并用Progess-Bar动态显示处理进度,以避免操作界面的假死现象.
二值化处理后电镜照片图像分散大量不连通的微孔,要得到微孔的数量必须对每个微孔进行标识,采用像素标记法[6](或称标号像素法).以标号像素法对二值化后图像黑色像素点进行计算,处理过程如下:
1)对已经加载图像从左到右、从上到下进行扫描,在同一行中不同的位置标上标识,不同列也标上不同的标识;
2)从图像左上到右下进行扫描,若2个相邻行中有相连通的区域则下行的号改为上行的号;
3)从图像右下到左上进行扫描,若2个相邻行中有相连通的区域则上行的号改为下行的号;
4)对标识进行排列、累加、计算.
如图2所示,对于电镜照片一般都会在图像右下角给出图像标尺值,以示材料表面形貌的相对实际大小.计算机只能获取材料表面图像的每个微孔孔径的像素尺寸,需要将微孔像素尺寸转换为微孔的实际尺寸.
图2 标尺大小的测量界面
对于采用像素标记法标记的电镜照片上非连通的二值化区域进行数点记数,得每一区域像素数量值,利用电镜标尺值可将该区域以像素为单位的面积值转为以微米为单位的实际面积值.通常将微弧氧化法制备的样品表面的微孔近似看作圆形区域,利用公式A=πr2即可算得相应微孔的半径值[7],将面积值及孔径值存入到DataGrid-View控件显示.
对于只统计单张的电镜照片,由于其分辨率已经固定,只需将已经计算好的微孔孔径值存入数组,然后进行排序处理,利用用户输入的孔径区间值进行区间数目统计即可实现对微孔孔径分布统计.
对每个小孔面积经修正后加到低分辨率图上,以修正低分辨率对细节的淡化.然后修正该低分辨率图片的孔径范围、微孔数量及表面孔隙率等相关信息.
图3 数据显示界面
对于微孔孔径区间分布统计完成后,将数据显示给用户采用Chart控件[8],界面见图3,该控件为微软在Visual Basic 2010最新引入的控件,能较灵活地以二维或三维方式显示数据,用户可通过菜单进行不同显示方式对数据进行直观预览.
本软件提供了将二值化后图像保存成BMP格式的功能,将孔面积、孔数量、孔径大小及不同区间的孔径分布等信息保存成Excel(兼容Excel 2003和Excel 2007格式)文件格式的功能,以方便对数据后续的深入分析和形成实验报告.
该软件已经在海南大学材料与化学学院2007级及2008级材料科学与工程专业和2008级实验班进行了试用,反馈良好,其友好的操作界面,详细的操作步骤,让学生更好地了解材料表面技术,深入地学习材料表面表征手段及增强了对材料表面数据分析处理能力,而且由于软件开发源代码的开源性,更好地激发了学生的学习兴趣,达到很好的教学效果.总之,通过实际教学过程表现及结果反馈分析,该实验拓宽了学生的思维空间,有效地激发了学生的学习兴趣和研究热情,同时也培养了学生发现问题、解决问题的能力,提供了实验数据深入分析的实验方法,对学生深入了解材料科学的内涵起到一定的促进作用.
[1] 朱琳.扫描电子显微镜及其在材料科学中的应用[J].吉林化工学院学报,2007,24(2):81-84,92.
[2] 李丽娟,刘伟波,郭庆叶.强流辐射钛合金表面特征的原子力显微研究[J].物理实验,2010,30(1):9-13.
[3] 韩琦,王志芳,牛夏牧,等.针对索引图像的人脸区域分级加密算法[J].电子学报,2008,36(12A):25-29.
[4] 王树梅,范勇.一种基于直方图统计特征的灰度图像水印算法[J].计算机技术与发展,2010,20(1):177-180,184.
[5] 李徐周,于飞.有效的指纹纹线细化方法[J].计算机工程与设计,2006,27(4):626-628,647.
[6] 陆敬辉,王宏力,郑佳华,等.一种改进的星图中星提取方法[J].传感器与微系统,2008,27(6):31-33.
[7] 黄平,憨勇,徐可为.用微弧氧化技术处理医用钛合金表面的研究[J].稀有金属材料与工程,2002,31(4):308-311.
[8] 鄂越.浅谈MSChart控件在VC++中的应用[J].计算机与农业(综合版),2003(12):41-42.