APP下载

基于相移轮廓术快速三维检测系统研究

2020-03-15王建兴

电子技术与软件工程 2020年23期
关键词:光栅轮廓算子

王建兴

(闽江学院物理与电子信息工程学院 福建省福州市 350108)

三维检测技术主要分为接触式检测和非接触检测两大类[1]。在工业上,目前接触式检测方法渐渐被非接触式检测技术淘汰。光学三维检测技术特点主要是通过光线照射到物体表面,然后通过漫反射和反射得到物体的表面信息的三维空间坐标点。光学三维检测技术包括:立体视觉法、飞行时间法、莫尔条纹法、傅里叶变换轮廓术和相移轮廓术等。

相移轮廓术的原理是通过计算多张以上背景的连续相位与物体的连续相位之间的差值,然后通过测量的数据再计算出物体的高度信息。该方法在是通过计算每一个点的光强信息再去转化为相位信息,因此不会受到背景光的影响,从而能解决高反光的问题。

本文应用HALCON 算子来进行标定和测。HALCON 包含了多达1400 个图像处理算子,其中包括了数学与几何变换、滤波、形态学计算和色彩分析、分类、辨识、校正、形状搜索等等基本的几何图像计算功能[2]。

1 基于相移轮廓术的三维检测的原理

本文采用交叉光轴法去搭建测量系统。如图1 所示。

相移术根据拍摄N 帧光栅图像称为N 步相移法,本系统采用四步相移法,简单来说就是通过投影4 帧图片,对应的δ 为π/2。则φ(x,y)计算如式2 所示,该方法在检测速度上不逊于三步相移法,且相应的提高了准确性。

因为相位值φ(x,y)是通过反正切函数计算得到的,相位值是被包裹在(-π,π)区间中,需要进行相位展开。计算的公式为,左边的表示是k 点展开之后的相位信息,右边的代表的是k 点的包裹相位信息,而nk则表示的是k 点在包裹相位的相位级次信息。 次级的nk信息一般采用邻域查找法[1],即比较nk与nk-1之间像素的相位差,如果该相位差的值大于π,则次级的值减去1;反之,若相位差的值小于-π,则该次级的值加1。设k 点相位次级为nk,k+1 点的相位次级为nk+1,它们之间有如下的关系:

图1:相移法检测原理图

图2:软件流程

至此得到了所有的未知量,只要将已知量和未知量都代入计算,求得物体的高度信息。但是由于相机的畸变等硬件方面的误差,还有各个部件摆放位置不够精确等因素,可能会导致最后得到的结果误差较大,所以还需要对相机进行标定,来形成一个较为准确而真实的高度分布结果。

2 基于HALCON的相移轮廓术快速三维检测系统

2.1 软硬件系统

图3:被调制后的狐型面具

图4:光栅背景图

图5:纵向包裹相位图

图6:纵向解包后的相位图

本文的软件系统主要由MATLAB 生成光栅图像、光栅的投影、图像的采集、图像的预处理、图像包裹相位的获取、图像连续相位的获取、求解出相位差、相似三角形对比、高度信息的获取等九个部分组成,结合HALCON 进行快速相机的标定,然后用MATLAB计算出最终的结果。具体的步骤流程如图2 所示。

本实验搭建的检测系统的硬件由一台数字式投影仪、一个CCD 相机及镜头、一台计算机、一个测量模型和一块标定板组成。投影仪型号为LG HW300G - JE,分辨率为1200*800,亮度300 流明。通过投影仪将在计算中通过MATLAB 编程生成的正弦光栅图像投影到被测物体上。CCD 相机通过USB3.0 与电脑连接去采集图像。CCD 相机型号为MER-132-30UC,接口是USB3.0,分辨率1292"964,像素尺寸3.75um,全分辨率最大帧率30 帧每秒,支持GENICAM 接口,可以直接连接HALCON 软件,是一款适用于工业检测的高性价的相机。

2.2 图像的采集和预处理

主要步骤如下:

(1)调用open_framegrabber 算子去打开型号为MER-132-UC的CCD 相机。

(2)接着调用grab_image_start 算子去获取句柄。

(3)然后调用grab_image_async 获取句柄中的图像。

(4)使用rgb1_to_gray 算子把采集到的图像转化成灰度图像。

(5)使用gen_rectangle1 算子画出一个ROI。

(6)配合reduce_domain 算子切割ROI,排除其他干扰。

(7)调用write_image 算子把处理好的图像保存在计算机中。

(8)最后调用close_framegrabber 算子关闭计算机对相机的连接。

拍摄后处理好的4 幅手模型的图像。如图3 所示。

使用相同的方式去拍摄4 幅背景图像。如图4 所示。

2.3 求解出包裹相位和解包裹

打开MATLAB 软件,然后在编辑器内使用如下步骤:

(1)使用imread 函数读入4 帧背景图像,并保存在变量中。

(2)使用imresize 函数对读入的图像进行双线性插值,入参为bilinear。

(3)使用double 函数将其转化为双精度型数据,并且使用size 函数获取图像的大小M 和N。

(4)使用atan2 函数反正切函数将计算出背景的包裹相位。

(5)使用unwrap 函数先对物体进行列解卷,然后再将得到的结果进行行解卷,最后得到背景的连续相位数据。

重复以上步骤,对物体进行连续相位的求解得出相位展开。如图5 和图6 所示为包裹相位与解包后的相位对比:

最后使用解包裹后的图像相位矩阵矩阵减去解包裹后的背景图像相位矩阵,得到相位差矩阵。接着使用相似三角形原理,求解出物体的高度信息。加上平面二维信息,得到空间点云坐标,应用距离公式计算出空间尺寸,从而实现检测。

3 结论

本文研究了基于相移轮廓术的三维检测技术,重点探讨了四步相移法的原理和实现过程。对高反光的物体进行了检测,在检测的精度和速度上都达到了比较理想的结果,证明了使用HALCON 进行标定结合光栅投影的三维检测方法的可行性和有效性,在各种工业检测上有着很广阔的应用场景。

但是本系统仍旧存在一些不足之处。本系统进行多次不同环境下的检测,发现背景全黑的情况下,只通过投影仪投影的光栅,经相机采集后的图像会较为清晰,实验的结果较为理想。虽然说相位轮廓术通过相减的方式去处理图像信息,本身不会受环境光的影响,但是因为无论是投影光还是自然光投射到物体上后,会在物体边缘产生阴影,这一部分阴影会对实验的结果造成误差,目前只能通过背景全黑的情况下去解决,解决的手段过于单一。

猜你喜欢

光栅轮廓算子
拟微分算子在Hp(ω)上的有界性
OPENCV轮廓识别研究与实践
各向异性次Laplace算子和拟p-次Laplace算子的Picone恒等式及其应用
基于实时轮廓误差估算的数控系统轮廓控制
一类Markov模算子半群与相应的算子值Dirichlet型刻画
Roper-Suffridge延拓算子与Loewner链
CDIO教学模式在超声光栅实验教学中的实践
基于LabView的光栅衍射虚拟实验研究
在线学习机制下的Snake轮廓跟踪
光栅衍射实验教学中的体会