温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
遥控
操作
返修
机器人
视觉
系统
焊缝
图像
处理
算法
设计
2023年 第3期 热加工54焊接与切割W e l d i n g&C u t t i n g遥控操作返修机器人视觉系统焊缝图像处理算法设计吴闯,刘金平,马明豪,王象元,王毅核工业工程研究设计有限公司 北京 101300摘要:针对遥控操作返修机器人,研究其视觉系统的焊缝图像处理算法。通过对视觉检测传感器、焊缝信息采集及处理算法、远端场景恢复算法的设计,完成遥控操作返修机器人视觉系统焊缝图像处理,形成待返修焊口的三维模型。关键词:遥控操作;焊缝图像处理;三维模型1 序言遥控操作焊接技术可以有效改善焊接环境,发挥机械臂可达性、稳定性好等方面优势的同时,充分发挥人的高效决策能力以及高度学习能力,同时计算机对焊接过程中某些复杂场景信息的计算能力可以补足人在计算方面的薄弱点,使得人可以专心决策,而使机械臂作为决策执行者,因此遥控焊接对于恶劣焊接场景有很大的应用前景。视觉传感和遥控焊接过程的监控是实现遥控焊接的重要手端1。因此,本文设计视觉系统的方案,并根据视觉系统辅助条件下设计焊接遥控操作的控制策略及焊枪姿态优化方式,且实时监控焊接过程,并给操作员提供焊缝坡口特征信息,便于其决策并实时改变焊枪姿态,实现更好的遥控焊接质量。2 图像采集方法设计视觉检测传感器内部集成了图像采集系统和激光发射器,外部包括保护壳、滤光系统和防飞溅挡板,模型如图1所示。本文选取能发射650nm的激光器,其具有较高的工作使用寿命,并配备激光功率适配器,可以更改激光的照射强度,激光照射在工件表面形成“一字形”的条纹,能够较好地反应焊缝坡口形貌,如图2所示。图1传感器模型图2激光工作原理由于工件对激光有反光等影响,对结构光提取增大了难度,故使用滤光片消除影响结构光提取的干扰因素,让试验能正常进行。视觉传感自适应控制系统在Python的基础上结合OpenCV、Halcon等图片处理软件平台进行试验和调试。图像处理利用Opencv进行预处理,焊缝特征点提取使用Halcon进行连续不间断的提取。相机标定过程中使用Halcon得到相机参数,并进行精度检验,光平面使用Matlab进行数据处理和平面拟合,手眼标定用Matlab进行坐标系的转换。PC机与机器人的通信利用Python中的UDP通信进行数据交换。2023年 第3期 热加工55焊接与切割W e l d i n g&C u t t i n g3 图像处理三角测量算法设计三角测量法是利用光线空间传播过程中的光学反射规律和相似三角形原理,在接收透镜的物空间与像空间构成相似关系,同时利用边角关系计算出移动距离2。根据激光的入射角度不同可分为以下两种情况。(1)正入射 激光与工件表面垂直,正入射原理如图3所示。激光正入射到参考平面M处、测量平面N处,并分别在CCD上的M和N处成像。面要求低;结构简单,性价比高。图3正入射原理图4斜入射原理根据几何光路可知,OPN:OPN得到式(1),即 ()()()()()()(,)(,)sincossincossinsincoscossinsincoscoscoscos,exxyxys tSs tSNPN POPOPNPmOPlN PM NOPLM NmM NLmLM NmM NmlM Nlfx yg s tmng s tG x y=+=-=+-+=-+=21 12ptanyxyxxyGEdge gradient GGGAngleG-+-=+=2222212_()()(1)由光路图可知 ()()()()()()(,)(,)sincossincossinsincoscossinsincoscoscoscos,exxyxys tSs tSNPN POPOPNPmOPlN PM NOPLM NmM NLmLM NmM NmlM Nlfx yg s tmng s tG x y=+=-=+-+=-+=21 12ptanyxyxxyGEdge gradient GGGAngleG-+-=+=2222212_()()(2)联立式(1)、(2)可得 (3)进而即可求解得到m,在已知参考平面的情况下,通过m即可完成测距。(2)斜入射 激光与工件表面夹角0,如图4所示。由OPN:OPN得到式(4),即 (4)解得m即可。结构光三角测量法不用接触工件,得到的距离就有较高的精度;可以测量的范围较大,对待测表 a)灰度处理b)Matlab处理图5灰度图像分析处理4 图像预处理实际焊接过程中,要将得到的图像灰度处理成只有黑白两色状态。利用OpenCV中Imread里的函数进行处理。转换之后的灰度图像如图5所示。由于焊接环境以及线结构光的发射,在线结构光的转折部分存在2023年 第3期 热加工56焊接与切割W e l d i n g&C u t t i n g干扰噪声。这些噪声与椒盐噪声类似,对目标特征的识别与检测有很大影响。另外,线结构光条纹的边缘呈锯齿状,但是起伏幅度较小。利用Matlab对图5a进行处理,可以直观地看到图中的噪点分布没有规律,且噪点较多,如图5b所示。对图像进行平滑处理,将影响图片质量的噪声去除3。根据滤波器的不同可分为以下三种。(1)均值滤波 令Sxy表示中心在(x,y)点,尺寸为mn的矩形坐标组,均值滤波的表达式为 ()()()()()()(,)(,)sincossincossinsincoscossinsincoscoscoscos,exxyxys tSs tSNPN POPOPNPmOPlN PM NOPLM NmM NLmLM NmM NmlM Nlfx yg s tmng s tG x y=+=-=+-+=-+=21 12ptanyxyxxyGEdge gradient GGGAngleG-+-=+=2222212_()()(5)式中 ()()()()()()(,)(,)sincossincossinsincoscossinsincoscoscoscos,exxyxys tSs tSNPN POPOPNPmOPlN PM NOPLM NmM NLmLM NmM NmlM Nlfx yg s tmng s tG x y=+=-=+-+=-+=21 12ptanyxyxxyGEdge gradient GGGAngleG-+-=+=2222212_()()Sxy包围的所有灰度的值;()()()()()()(,)(,)sincossincossinsincoscossinsincoscoscoscos,exxyxys tSs tSNPN POPOPNPmOPlN PM NOPLM NmM NLmLM NmM NmlM Nlfx yg s tmng s tG x y=+=-=+-+=-+=21 12ptanyxyxxyGEdge gradient GGGAngleG-+-=+=2222212_()()中心点的灰度值。利用OpenCV中的 Blur算法对图像均值滤波。(2)高斯滤波 高斯滤波原理是加权平均图像中任意一个邻域点内的像素值,确定该点的像素值。高斯滤波过程中所选模板内的值并非全部都是,而是根据二维高斯分布函数来确定,之后利用改模板与图像进行卷积计算。二维高斯是构建高斯滤波的基础,其概率分布函数式为 ()()()()()()(,)(,)sincossincossinsincoscossinsincoscoscoscos,exxyxys tSs tSNPN POPOPNPmOPlN PM NOPLM NmM NLmLM NmM NmlM Nlfx yg s tmng s tG x y=+=-=+-+=-+=21 12ptanyxyxxyGEdge gradient GGGAngleG-+-=+=2222212_()()(6)式中二维高斯分布函数的标准差。利用OpenCV中的 GaussianBlur算法对图像进行处理。(3)中值滤波 中值滤波是一种非线性滤波技术,其滤波思想与均值滤波过程中叠加求平均值的方式截然不同。在中值滤波过程中,所采用的是排序统计思想。原理是利用任意一点像素值周围的灰度中值,来替换该点的灰度值。使用中值滤波对消除噪声很合适。利用OpenCV中的 MedianBlur 算法对图像进行处理。其中,中值滤波的效果受卷积核尺寸的大小Ksize影响,本文通过编历卷积核大小为1、3、5、7,滤波效果如图6所示。从图6可看出,当卷积核为3时,图片边缘虽然保存有较好的效果,但是噪声相对于卷积核为5时,效果略差一些,卷积核为7时,图片边缘细节较为模糊。本文中为了得到更好的图片边缘效果以及减少噪声的干扰,因此Ksize取值为5。5 图像二值化处理二值化处理,又叫做黑白处理。为突出焊缝图像中的特征,将结构光变为白色,其余地方变为黑色,呈现的图像为黑白分明的图像。用OpenCV中的Threshold算法对中值滤波后的图像进行二值化处理。分析得出,图像二值化后,图像黑白分明,结构光和背景处噪点数量明显减小。6 结构光的边缘细化处理边缘检测可以提取出目标区域与周围像素不一样的轮廓。本项目中,边缘指的是线结构光在采集图像中的边缘。由于光的反射、散射等原因,线结构光在图像中较为宽粗。边缘检测步骤为滤波、增强、检测4。本文在初步检测线结构光边缘时,选用Canny检测与Sobel检测方法并对其结果进行比较分析。(1)Sobel边缘检测 Sobel检测算法为离散型差分算法,也称为一阶微分算法。主要运算思想是通过任意像素点邻近的灰度值进行计算,得到该点的灰度值。图像边缘附近的灰度值变化幅度较大,呈阶跃现象5。因此,利用计算得到的一阶梯度值与阈值进行比较,确定其是否为边缘。(2)Canny边缘检测 结合最优思想,Canny检测可使图像中的实际边缘检测数量最大化。局部 a)Ksize=3 b)Ksize=5 c)Ksize=7 图6中值滤波效果2023年 第3期 热加工57焊接与切割W e l d i n g&C u t t i n g化检测良好,检测的点与实际边缘线上的点距离较近,而且检测到像素边缘之间的距离最小。Canny边缘检测步骤如下。1)噪声去除:由于边缘检测很容易受到噪声的影响,因此用中滤波去除噪声。2)计算图像梯度:计算得到Gx和Gy,从而找到边界的梯度和方向,即 ptanyxyxxyGEdge gradient GGGAngleG-+-=+=2222212_()()(7)()()()()()()(,)(,)sincossincossinsincoscossinsincoscoscoscos,exxyxys tSs tSNPN POPOPNPmOPlN PM NOPLM NmM NLmLM NmM NmlM Nlfx yg s tmng s tG x y=+=-=+-+=-+=21 12ptanyxyxxyGEdge gradient GGGAngleG-+-=+=2222212_()()(8)3)抑制非极大值:在得到Gx和Gy之后,对图像进行处理,如果扫描到的点在相同梯度上最大,则被判定为边界点,从而筛除非边缘像素点,仅留下边缘检测线。4)滞后阈值:设置两个阈值:m i nV a l和maxVal。图像的灰度值高于maxVal时判定为边界,低于minVal 1的则不是边界。在两个阈值中间,看取得的点与被判定为边界的点是否相连,相连则为边界点,反之则不是。(3)差分图像及骨架提取 将原图像与区域连接生成的图像差分运算,为差分图像。在此基础上再次进行灰度转化与二值化,在此基础上进行分析处理。从目标外围到目标内围,对目标不断腐蚀,直到目标是单层像素宽度。该单层像素即目标的骨架。通过以上流程,达到细化线结构光边缘的目的。细化线结构光优化流程如图7所示。与原图像进行比较可知,差分图像中的线结构光清晰明亮。在像素层面上,线结构光线宽大幅度降低并且没有断裂现象,差分效果好。(4)特征点提取 焊点即为焊缝与线结构光的交点。在提取边缘后,通过对其腐蚀膨胀、直线拟合得到4条线结构光,进而转换成4条结构光两两延长求交点的问题,从而求出焊点。具体操作步骤如下:1)首先对变间隙焊缝的视频进行分帧处理,得到30