(华东理工大学 机械与动力工程学院, 上海 200237)
目前,一些复杂零件成型精度比较低、加工质量不稳定、废品率很高,因此作为一种先进的无损检测技术,工业CT越来越受到关注。工业CT能够在不接触样件的情况下,无损快速地检测样件的内外部结构等[1-5]。工业CT设备通过对零件的扫描,可以获得一系列切片图像,通过这些切片图像可以方便地观察到零件的内部形状、大小及空间位置,更好地了解零件结构。
改善工业CT检测中的虚拟测量精度主要有两种方式:一种是提高工业CT设备扫描系统的分辨率;另一种是提高虚拟测量时的图像算法精度。笔者采用某商用工业CT设备进行试验,因此硬件设备是固定的,故主要通过改善软件的算法精度来提高虚拟测量的精度。
笔者提出了一种对CT图像进行虚拟测量的方法。该方法对工业CT获得的切片图像进行二值化处理,分离出图像中的目标和背景;再通过灰度值的差别进行轮廓跟踪,识别出切片图像的内外轮廓;然后,将内轮廓和外轮廓数据分别拟合成样条曲线;最后进行虚拟测量。
为了更好地提取出工业CT图像轮廓,首先通过中值滤波对图像进行预处理,去除噪声,以避免轮廓的误提取。在去噪后,可进行图像二值化和轮廓边缘的提取。
图像二值化是图像分割的重要方法之一,可以直接将图像分类为物体和背景两部分。常见的二值化方法包括平均值法、迭代选择阈值法、一维Otsu法、二维Otsu法等。二维Otsu法是一种比较好的图像二值化方法,它保留了最多的有用信息,同时噪声较少。文章采用二维Otsu法[6-7]选取合适的阈值对图像实现二值化。通过对工业CT图像的二值化,可以将物体和背景明确地区分开来。
区分出物体和背景后,通过八邻域追踪算法提取图像边缘,八邻域法的搜索顺序如图1所示。其具体步骤如下:
(1) 按从左到右,从上到下的方向扫描CT图像,找到第一个像素值为1的点P0作为目标点,存储其坐标值。
(2) 从P0点的0邻域点开始,逆时针方向搜索它的8邻域点的值,找到第一个像素值为1的点,存储其坐标值并记为P1。P0为P1的前邻域点。
(3) 从P1点的0邻域点开始,逆时针方向搜索它的8邻域点的值,找到第一个像素值为1的点(该点不能是P1的前邻域点),存储其坐标值并记为P2。依此类推。
(4) 直到再次遇到P0点,跟踪结束。第一个轮廓边缘结束。
(5) 按从左到右,从上到下的方向扫描CT图像,找到的第一个像素值为1的点Q0作为目标点,存储坐标值。Q0是新的轮廓起点。
(6) 从Q0点的0邻域点开始,逆时针方向搜索它的8邻域点的值,找到第一个像素值为1的点,存储其坐标值并记为Q1。Q0为Q1的前邻域点。
(7) 从Q1点的0邻域点开始,逆时针方向搜索它的8邻域点的值,找到第一个像素值为1的点(该点不能是Q1的前邻域点),存储其坐标值并记为Q2。依此类推。
(8) 直到再次遇到Q0点,跟踪结束。第二个轮廓边缘追踪结束。
(9) 依此类推,追踪到所有的轮廓边缘。
图1 八邻域法的搜索顺序
现有的亚像素级的边缘检测方法有基于矩的方法,拟合法和基于插值的方法。拟合法获得的亚像素边缘精度要高于另外两种方法。因此在提取轮廓边缘数据后,对内外轮廓数据点进行B样条拟合,拟合成B样条曲线。基于B样条拟合轮廓边缘,定位精度高。整像素提取出的数据在通过B样条曲线拟合后,变成亚像素级的数据,从而提高了虚拟测量精度。
CT图像内外轮廓拟合成B样条曲线后,测量内外轮廓沿x,y方向以及任意方向的尺寸,就是沿需要测量的方向虚拟绘制一条直线,该直线与内外轮廓曲线相交,求取其交点,就可计算出所需测量方向的具体尺寸。
对于一系列CT图像,将所有图像的内外轮廓拟合成样条曲线后,沿需要测量的方向虚拟绘制一个平面,该平面与这些样条曲线相交,就可以计算出每幅图像在所需要测量方向的具体尺寸。
用工业CT扫描设备对某个铸件进行扫描,得到一系列工业CT图像。图2为某铸件的CT 图像。图3为采用二维Otsu法对图像二值化的结果。图4为提取轮廓边缘后,通过样条拟合得到的内外轮廓曲线。用一系列平行于y轴的直线与图4中的内外轮廓曲线相交,可得到一系列y方向的内外轮廓宽度值。图5为内外轮廓宽度的走势,图中横坐标为x坐标值,纵坐标为y方向的内外轮廓宽度值。用一系列平行于x轴的直线与图4中的内外轮廓曲线相交,可以获得一系列x方向的内外轮廓长度值。图6为内外轮廓长度的走势,图中横坐标为y坐标值,纵坐标为x方向的内外轮廓长度值。对于沿任意方向的虚拟测量,只要给出直线方程,虚拟绘制一条直线,如图7所示,就可分别得到内轮廓及外轮廓的尺寸为14.54,37.57 mm。
图2 某铸件CT图像
图3 二维Otsu法对铸件图像的二值化结果
图4 样条拟合得到的铸件轮廓曲线
图5 铸件内外轮廓宽度
图6 铸件内外轮廓长度
图7 铸件任意方向的虚拟测量
表1 铸件虚拟测量和实际测量的结果对比
基于工业CT图像提出了一种虚拟测量方法,此方法对图像预处理后,提取图像轮廓边缘,然后对边缘数据点进行B样条拟合,得到样条曲线后,再进行虚拟测量。这种方法可以应用于不适合采用传统方式测量的场合,也特别适用于零件的内部轮廓、壁厚等参数的测量。 将虚拟测量与传统测量方式相结合,可以有效地对零件内部以及外部尺寸进行测定。