CN115330734A - 一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统 - Google Patents
一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统 Download PDFInfo
- Publication number
- CN115330734A CN115330734A CN202210994552.3A CN202210994552A CN115330734A CN 115330734 A CN115330734 A CN 115330734A CN 202210994552 A CN202210994552 A CN 202210994552A CN 115330734 A CN115330734 A CN 115330734A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- repair welding
- workpiece
- defect
- dimensional
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
- G06T7/001—Industrial image inspection using an image reference approach
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20024—Filtering details
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Abstract
一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,整套系统通过ROS进行通信。通过嵌入坐标注意力机制的Lidar‑RCNN++网络模型实现选取指定工件的三维目标检测,结合PointNet网络进行三维缺陷检测,最后采用PF‑NET网络进行点云补全,并结合PCL点云处理库进行缺陷补焊;以Ubuntu18.04为操作系统,以多个深度学习算法为基础网络框架,结合PCL开源库进行软件开发,建立自动化补焊系统。在人机交互方面,结合QT图形界面进行上位机功能开发,建立的可视化界面显示缺陷工件点云、点云补全效果和缺陷补焊结果,具有人机交互性好、结果可视化能力强等特点。通过本系统可解决在大型焊接场景下高精度识别工件种类以及工件缺陷补焊的问题,使现代焊接作业进一步迈向自动化与智能化。
Description
技术领域
本发明属于人工智能领域和工业自动化领域,具体涉及一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,可以实现焊接工件的品种高精度识别与板件缺陷补焊。
背景技术
补焊技术作为一种基础的缺陷板件加工技术,在工业实际生产作业中运用非常广泛,已经逐渐成为影响传统工业制造领域的关键性因素之一。伴随着焊接机器人与传感器等配套产品的快速更新换代以及计算机视觉三维检测技术的日益发展,关于如何提升三维目标检测准确性、提高补焊工件的质量稳定性现已成为重点研究方向之一。
三维点云数据的获取方法相对快捷,同时三维点云数据的采集不受光照影响,也规避了二维图像遇到的光照、姿态等问题,因此基于点云数据的三维物体识别也引起了人们的重视。三维点云物体识别方法多是通过提取物体的特征点几何属性、形状属性、结构属性或者多种属性的组合等特征进行比对、学习,从而完成物体的识别与分类。
随着焊接机器人技术、三维目标检测、深度学习、PCL等技术的快速发展,基于视觉的智能识别与检测技术在现代机器人焊接领域的应用日渐增多,极大提高了焊接机器人的智能化以及自动化程度。缺陷补焊技术是实现焊接智能化与自动化的核心技术之一,高效且精准的焊枪补焊操作对于保障成品工件的质量稳定性具有极其重要的意义。为了实现复杂环境下焊接机器人的自动化补焊操作,要求焊接机器人必须能够准确识别复杂环境下工件缺陷位置并优化焊枪姿态进行精准补焊。
发明内容
本发明提供了一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,整套系统通过ROS进行通信。通过嵌入坐标注意力机制的Lidar-RCNN++网络模型实现在多个工件中选取指定工件的三维目标检测,后结合PointNet网络进行三维缺陷检测,最后采用PF-NET网络进行缺陷点云补全,并结合PCL点云处理库进行缺陷补焊,本系统是一种可针对大型焊接场景的工件进行缺陷补焊的系统。本发明以Ubuntu18.04为操作系统,以多个深度学习算法为基础神经网络框架,结合PCL点云处理开源库进行软件开发,建立自动化补焊系统。在人机交互方面,设计上位机交互模块,结合QT图形界面进行上位机功能开发,建立的可视化界面可显示缺陷工件点云、点云补全效果和缺陷补焊结果,具有人机交互性好、结果可视化能力强等特点。通过本发明,可以解决在大型焊接场景下高精度识别工件种类以及工件缺陷补焊的问题,使现代焊接作业进一步迈向自动化与智能化。
本发明通过模块化的方式设计了整体系统,主要可分为5个模块:数据采集模块、三维目标检测模块、三维缺陷检测模块、工件补焊模块,同时设计上位机交互系统可以显示缺陷工件点云、点云补全效果和缺陷补焊结果。数据采集模块使用深度相机获取有多个工件的场景图像,再通过深度相机采集到的RGB图、深度图与相机内参结合,计算像素点在相机坐标系下的坐标,利用障碍点在相机坐标系下的坐标结合相机内参外参获得相机坐标系下的点云数据。同时结合红外相机棋盘格标定,通过校准与匹配获取坐标系转换信息R和T。三维目标检测模块首先对原始场景的点云数据进行降采样、离群点去除、聚类等预处理,再采用基于坐标注意力机制并结合使用Virtual points的Lidar-RCNN++网络模型实现在多个不同种类工件点云中选取指定的工件点云数据。三维缺陷检测模块首先通过预设无缺陷的指定工件标签,然后利用PointNet网络模型进行模型分类,将有缺陷的点云数据与无缺陷点云数据区分开,再将有缺陷的点云数据提取出来,以供补全算法的实际工作开展。工件补焊模块首先通过PF-NET网络进行缺陷点云补全,后结合PCL库算法筛选出补全前与补全后的点云数据重复点,提取出缺陷工件模型的待补焊点的点云数据,根据关键点选取和朝向计算,从而精准的进行TCP焊枪补焊操作。上位机交互系统实现了深度相机传感器数据的获取与处理,可以显示传感器拍摄到的RGB图、深度图、点云数据图,可以模拟补焊全过程的仿真图,可以提供手眼标定数值的修正界面。通过本专利,解决了工件在出厂前次品率检测的问题,同时有效降低了焊接作业所需的人工成本,并且可以在极大程度上避免焊接作业中重大事故的发生,提高了实际工业生产过程的安全性和自动化程度,保障了成品工件的质量稳定性。
本发明解决其技术问题所采用的技术方案如下:
在数据采集模块中,使用深度相机获取有多个工件的场景图像,再利用RGBD相机采集到的RGB图、深度图与相机内参结合,计算出每个像素点在相机坐标系下的坐标,最后利用障碍点在相机坐标系下的坐标结合相机内参外参获得相机坐标系下的点云数据。同时结合张正友标定法完成手眼标定,求解出内参矩阵、外参矩阵、畸变参数,最后利用L-M(Levenberg-Marquardt)算法对上述参数进行优化,计算得到相机坐标系到机械臂末端坐标系的旋转矩阵和平移量。
在三维目标检测模块中,将数据采集模块中得到的相机坐标系下的点云数据进行点云预处理,利用RandomSample随机降采样的方法减少点云数量,加速算法执行速度,利用RadiusOutlierRemoval半径滤波的方法去除离群点,结合区域生长聚类算法分割出不同种类工件的点云数据。在完成了点云预处理之后,使用改进了嵌入坐标注意力机制的Lidar-RCNN++三维目标检测网络模型检测出多个不同种类工件点云中指定的工件点云数据。
在三维缺陷检测模块中,首先通过预设的标签自动去除三维目标检测中可能存在的错误检测结果,然后利用PointNet网络模型通过上采样和Max Pooling等操作对指定的工件点云数据进行模型分类,将工件分为需要补焊和不需要补焊的两类工件,最后将有缺陷的工件点云数据提取出来,以供后续点云补全使用。
在工件补焊模块中,首先采用PF-NET点云补全网络进行训练和缺陷点云补全,后结合PCL库去除重复点的算法筛选出补全前与补全后的点云数据重复点,从而提取出缺陷工件模型的待补焊点的点云数据,根据对三维坐标的X、Y、Z坐标进行关键点选取判断出补焊起点与终点,最后结合补焊点云数据法向量计算和空间坐标系转换等进行焊枪朝向计算,从而精准的进行TCP焊枪补焊操作。
在上位机交互系统中,实现了深度相机传感器数据的获取与处理,利用Qt图形用户界面应用程序开发框架设计了可视化界面,集成了数据采集、工件识别、点云补全、工件补焊以及手眼标定修正的功能,通过QT的“信号——槽”机制,点击对应按钮即可完成操作,并且可以显示深度相机拍摄到的RGB图、深度图、点云数据图,可以模拟补焊全过程的仿真图,可以提供手眼标定数值的修正界面。
本发明采用以上技术方案后与现技术相比,具有以下有益效果:
(1)本发明通过嵌入坐标注意力机制的深度学习算法建立适用于三维目标检测的Lidar-RCNN++网络模型,通过智能化处理的方式提升了不同工件模型进行目标工件检测的准确性;
(2)本发明采用了基于关键点选取和多个空间坐标系转换优化焊枪朝向的方法,大大提升了补焊作业的精确度和稳定性;
(3)本发明在极大程度上代替了工件检测场景下技术人员进行手动补焊,同时设计上位机交互系统,可以方便查看缺陷补焊系统作业过程和进行手眼标定数值修改。
附图说明
图1为本发明实施例中的自动化机器人补焊系统的结构框图。
图2为本发明实施例中的系统结构示意图。
图3为本发明实施例中的缺陷补焊模型示意图。
图4为本发明实施例中的数据采集模块示意图。
图5为本发明实施例中的三维目标检测模块示意图。
图6为本发明实施例中的三维缺陷检测模块示意图。
图7为本发明实施例中的工件补焊模块示意图。
图8为本发明实施例中的人机交互界面示意图。
图9为本发明实施例中的PointNet网络结构示意图。
图10为本发明实施例中的PF-Net网络结构示意图。
图11为本发明实施例中的Lidar RCNN++结构示意图。
图12为本发明实施例中的工件点云可视化及参数修改界面图。
图13为本发明实施例中的模拟实际焊接测试界面图。
图14为本发明实施例中的点云数据预处理流程示意图。
图15为本发明实施例中的数据标注示意图。
图16为本发明实施例中的条焊识别实操示意图。
图17为本发明实施例中的补焊测试实操示意图。
具体实施方式
下面结合说明书附图对本发明的技术方案做进一步的详细说明。
如图1和图2所示,本发明包括数据采集模块、三维目标检测模块、三维缺陷检测模块、工件补焊模块和人机交互界面模块五个部分,模块间采用ROS发布订阅的形式进行全局通信。其中数据采集模块利用深度相机获取有多个工件的场景图像,再通过深度相机采集到的RGB图、深度图与相机内参结合,计算像素点在相机坐标系下的坐标,利用障碍点在相机坐标系下的坐标结合相机内参外参获得相机坐标系下的点云数据。三维目标检测模块首先对三维点云数据进行一系列预处理操作,后采用基于坐标注意力(CA)机制并结合使用Virtual points的Lidar-RCNN++网络模型实现在多个不同种类工件点云中选取指定的工件点云数据。三维缺陷检测模块首先预设无缺陷的工件标签,接着利用PointNet网络模型进行模型分类,将有缺陷的点云数据与无缺陷点云数据区分开,获取到缺陷点云数据。工件补焊模块首先通过PF-NET网络进行缺陷点云补全,后结合PCL库算法筛选出补全前后点云重复点,去除重复点得到待补焊的点云数据,根据关键点选取和焊枪朝向计算,从而精准的进行TCP焊枪补焊操作。人机交互系统集成了数据采集、工件识别、点云补全、工件补焊以及手眼标定修正的功能,增强了缺陷工件补焊作业的可视性。各模块相互协作,可以实现本系统的正常运转。
以下详细叙述各模块实现方法及功能:
本系统缺陷补焊采用点焊和条焊相结合,为了方便各模块功能叙述,选择如图3所示的点焊类型缺陷补焊为例,但本系统并不局限于此,可以适用于所有点焊和条焊的场景。
数据采集模块如图4所示,本模块可主要分为点云数据采集、手眼标定两部分。
(1)点云数据采集部分首先使用RGBD相机获取有多个工件的场景图像,将采集到的RGB图、深度图与相机内参结合,根据RGB图像提供的像素点坐标系下的X、Y坐标(公式中的u、v)和相机内参求出相机坐标系下的X、Y坐标值,同时深度图直接提供相机坐标系的Z坐标值,结合两者得到相机坐标系下的坐标P=[XYZ]T,相机坐标系下的障碍物点的坐标,就是点云传感器数据,也就是相机坐标系下的点云数据。
相机坐标系P与像素坐标系Puv下的点的坐标的关系公式,式中的fx为每个像素在图像平面x方向上的物理尺寸的倒数、fy为每个像素在图像平面y方向上的物理尺寸的倒数、cx、cy分别为图像坐标系原点在像素坐标系下的坐标:
将上式整理后具体的求解公式如下:
Z=d (4)
一般来说,公式中点在相机坐标系下的Z值就是相机测出的深度值d,即就是真实点到相机平面的距离,如果不是可以加倍数补偿。(2)手眼标定部分首先采集22mm方格大小的标定板图像200张,对图像中的特征点如标定板角点进行检测,得到标定板角点的像素坐标值,根据已知的棋盘格大小和世界坐标系原点,计算得到标定板角点的物理坐标值,根据物理坐标值和像素坐标值的关系,求出H矩阵,进而构造v矩阵,求解B矩阵,利用B矩阵求解相机内参矩阵A,最后求解每张图片对应的相机外参矩阵,从而得到R、T(R为旋转矩阵,T为平移量),同时可构造矩阵计算径向畸变参数;标定结束后,会得到内参矩阵、平移和旋转参数以及畸变参数,最后可利用L-M(Levenberg-Marquardt)算法对上述参数进行优化,计算得到相机坐标系到机械臂末端坐标系的旋转矩阵和平移量。
三维目标检测模块如图5所示,本模块可主要分为点云预处理、三维目标检测两部分。
(1)点云预处理部分。这部分利用PCL点云处理开源库对点云数据进行点云数据降采样、离群点去除以及聚类分割这三步点云预处理操作。由于传感器获取的点云数据量庞大从而影响了算法的运行速度,采用了随机降采样的方法减少点云数量,指定选取原始点云数据中的80000个点,每个点被选到的概率相同,可以得到指定采样点数量的80000个点云,由于随机降采样后的点云数据可能会过滤掉一些具有重要信息的关键特征点,通过固定随机种子为20,以此生成固定的随机数序列,来保证随机降采样的科学性,在不损失点云重要特征的前提下,提高后续算法执行的速率。离群点去除采用RadiusOutlierRemoval半径滤波器,对点云中每个点Pi,确定一个半径为r的邻域(即以Pi为圆心,以r为圆心的球体),若邻域内的点数N<Nthreshold,则认为点Pi为噪声点并去除。聚类分割采用的是基于区域生长的聚类分割算法,首先设置一个空的种子点序列和一个空的聚类数组,选择种子点(曲率最小的点)并将其加入到种子点序列中;搜索当前种子点的邻域点,计算邻域点的法线与当前种子点的法线之间的夹角,小于平滑阈值的邻域点加入到当前区域;检查每一个邻域点的曲率,小于曲率阈值的邻域点加入到种子点序列中,并删除当前种子点,以新的种子点继续生长;重复进行以上生长过程,直到种子点序列被清空。此时,一个区域生长完成,并将其加入到聚类数组中;对剩余点重复进行以上步骤,直到遍历完所有点。通过以上基于PCL库的点云预处理算法,可分离出每个工件单独的点云数据。
(2)三维目标检测部分。这部分首先搭建嵌入基于坐标注意力(CA)机制并结合使用Virtual points的Lidar-RCNN++网络模型,如图5所示。Lidar-RCNN++又可以分为PointNet、Lidar-RCNN和Lidar-RCNN++三个阶段。PointNet是首个直接处理无序点云数据的深度模型框架,输入为包含n个点的三维点云数据,通过三维变换矩阵预测网络T-Net,估计出3*3的变换矩阵T,并将其作用于原始数据之上,实现了数据对齐。将对齐的数据以点为单位,通过一个共享参数的双层感知机模型shared mlp进行特征提取。每个点提取出64维的特征,后续再通过T-Net以及shared mlp,直到把特征的维度变为1024维,继而在特征空间的维度上进行MaxPooling,提取出点云的全局特征向量。Lidar-RCNN以PointNet网络为backbone主干网络,采用添加Virtual points添加虚点的方法解决了PointNet网络的proposal中空白部分无法在特征中表示,只会提取有扫描点部分的特征并融合,对proposal的大小没有任何感知能力的问题。Lidar-RCNN++在Lidar-RCNN网络模型的基础上嵌入坐标注意力机制,可以捕获全局上下文依赖关系,显著提高三维目标检测的精度。坐标注意力机制通过一种有效的方法来捕获位置信息和通道关系,以增强Mobile Network的特征表示。通过将三维全局池操作分解为三个一维编码过程,CA比其他具有轻量级属性的注意力方法(如SENet、CBAM和TA)效果更佳。
Coordinate Attention通过精确的位置信息对通道关系和长期依赖性进行编码,具体操作分为Coordinate信息嵌入和Coordinate Attention生成2个步骤。
①全局池化方法通常用于通道注意编码空间信息的全局编码,但由于它将全局空间信息压缩到通道描述符中,导致难以保存位置信息。为了促使注意力模块能够捕捉具有精确位置信息的远程空间交互,CA采用了以下公式分解了全局池化,转化为一对一维特征编码操作:
具体来说,给定输入X,首先使用尺寸为(H,1)或(1,W)的pooling kernel分别沿着水平坐标和垂直坐标对每个通道进行编码。因此,高度为h的第c通道的输出可以表示为:
同样,宽度为w的第c通道的输出可以写成:
上述2种变换分别沿两个空间方向聚合特征,得到一对方向感知的特征图。这与在通道注意力方法中产生单一的特征向量的SE Block非常不同。这2种转换也允许注意力模块捕捉到沿着一个空间方向的长期依赖关系,并保存沿着另一个空间方向的精确位置信息,这有助于网络更准确地定位感兴趣的目标。
②Coordinate Attention生成通过信息嵌入中的变换后,该部分将上面的变换进行concatenate操作,然后使用卷积变换函数对其进行变换操作,式中δ是一个非线性激活函数,F1是1×1卷积变换函数,zh是高度为h的第c通道的输出,zw是宽度为w的第c通道的输出,σ是sigmoid函数,fh、fw为f沿空间维度拆分为两个独立的张量,Fw、Fh是1×1卷积变换将fh、fw转换为与输入X具有一样通道数的张量:
f=δ(F1([zh,zw])) (8)
gh=σ(Fh(fh)) (9)
gw=σ(Fw(fw)) (10)
最后,Coordinate Attention Block的输出Y可以写成:
三维缺陷检测模块如图6所示,首先通过预设的标签自动去除三维目标检测中可能存在的错误检测结果,然后利用PointNet网络模型通过上采样和Max Pooling等操作对指定的工件点云数据进行模型分类,将工件分为需要补焊和不需要补焊的两类工件,最后将有缺陷的工件点云数据提取出来,以供后续点云补全使用。
工件补焊模块如图7所示,首先采用PF-NET点云补全网络进行缺陷点云补全,其大体思想为把有缺陷的点云数据作为输入,输出根据输入所生成的补全点云,但生成的点云从本质上不确定是否正确,因此,再把这些生成的点云放到一个判别器中,最终来判断补全的结果是True还是False。
PF-NET网络模型框架可分为生成器和判别器两部分。
①生成器部分首先采用了最远点采样的点云提取方法实现FPN(多尺度特征融合),紧接着PF-Net在点云特征提取部分对每一次特征升维的结果都进行了一次MaxPooling操作,之后再把各个层的Max Pooling结果拼接起来,成为特征提取结果,最后把相同点云、不同密度的特征提取结果再拼接起来,之后再做一个MLP操作以及卷积操作,从而得出最终的特征提取结果。获取到特征提取的结果后,进入补全点云的生成阶段,首先对得到的特征提取结果逐次通过两个全连接层,其中最深的FC3被用来生成补足点云的骨架,之后在把FC3和FC2加起来生成补足点云的肉,再之后把三次特征提取结果FC3、FC2、FC1三者加起来补全完整的点云数据。
②判别器部分在获取了完整、稠密的点云补全结果之后,把该结果与实际真实的点云结果进行比较,从而最终返回一个True or False的布尔值,来判别生成的补全点云的准确性。在PF-Net的网络模型图中,这个比较被缩写为CD,它的公式如下所示,式中S1代表预测点云,S2代表真值点云,dCD代表平均最近平方距离,x、y代表坐标值:
由于PF-Net网络的本质其实就是一个GAN(对抗生成网络),因此它还遵循GAN本身的损失函数,式中的D( )为鉴别器的输出,yi代表真值,yi*是预测值:
通过PF-Net获得了正确的不全后点云模型后,本发明结合PCL库去除重复点的算法筛选出补全前与补全后的点云数据重复点,从而提取出缺陷工件模型的待补焊点的点云数据,其算法核心原理为使用平衡二叉树KD-Tree判断出一点在其一定距离的阈值邻域内不止其本身,则两者为重复点。
为了保证实际焊接作业中焊枪的垂直度,对待补焊点的点云数据进行法向计,采用了OpenMP加速法线估计,设置线程数为10,采用KD-Tree这种轻量级的二叉树进行快速搜索最近邻,设置点云中任一点与其近邻域70个点的平均距离满足高斯分布,最后计算补焊区域法向量。在得到法向量后,发现部分待补焊点的点云数据法向量不精确,采用求平均的方法进一步精确法向的方向,由手眼标定得到了相机坐标系到机械臂末端坐标系Cam2gripper的旋转矩阵R和平移量T,将相机坐标系下的平均法向量通过旋转平移转换到机械臂末端坐标系下。以机械臂末端坐标系的平均法向量的反向做Normalized正则化处理当作Vz构建新的自定义坐标系,把机械臂末端坐标系下补焊区域终点减起点的向量做正则化处理作为Vx,进行一次关键点选取重新判断补焊区域的起点和终点,并将Vz和Vx的叉乘作为Vy,至此机械臂末端坐标系下的自定义坐标系构建完毕。为了验证三个轴是否两两垂直,引入了getAngle3D函数,计算出两向量之间的角度关系。为了计算从自定义坐标系转换到机械臂末端坐标系的旋转矩阵R和平移量T,引入了以下公式,式中Vx、Vy、Vz为正则化后的每个轴的向量,transpose为转置求解:
R=(Vx,Vy,Vz).transpose() (14)
以Vx、Vy、Vz的向量的转置作为旋转矩阵R,以MinPoint_cam2gripper作为平移量T。为了得到转到基座坐标系下的旋转矩阵R,需要将机械臂末端到基座坐标系的旋转矩阵R_gripper2base与上述旋转矩阵相乘,得到旋转矩阵从自定义坐标系转到基座坐标系的旋转矩阵,最后通过eulerAngles函数将旋转矩阵转为欧拉角。通过ROS节点发布补焊区域起点终点及欧拉角的话题,上位机订阅该话题读取补焊区域起点终点及欧拉角信息并返回给机械臂进行实际TCP补焊作业。
人机交互界面模块如图8所示,实现了传感器数据的获取、处理与传输。利用QT图形用户界面应用程序开发框架设计了可视化界面,集成了数据采集、工件识别、点云补全、工件补焊以及手眼标定修正的功能,通过QT的“信号——槽”机制,点击对应按钮即可完成操作。当用户点击数据采集按钮时,可以显示深度相机拍摄到的RGB图、深度图、点云数据图;当用户点击工件识别按钮时,可以显示出检测出的目标工件的点云PCD图;当用户点击点云补全按钮时,可以显示经过补全之后的工件点云数据;当用户点击工件补焊按钮时,可以模拟出补焊全过程的仿真图;当用户点击手眼标定修正按钮时,可以提供手眼标定坐标:X、Y、Z,欧拉角:W、P、R的修正界面。
本发明所提出的系统,其优点在于:
(1)为现代工业生产中的智能化缺陷补焊系统提出了可行性方案,大大提升了产品出厂前的质量稳定性;
(2)通过对实时采集并检测的缺陷工件数据进行补焊操作,有效地降低了用工成本,同时提高了基层焊接工人施工的安全性;
(3)本系统具有上位机交互功能,提升了补焊作业可视性,增加了直观、易操作、易修改的校准功能,更高效直观的配合技术人员对补焊作业的监督与操作。
本发明公开的一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,解决了在大型缺陷补焊场景下,如何准确识别工件及工件缺陷并实现自动化补焊的问题,使现代补焊作业进一步迈向智能化。同时可以减少企业在补焊领域的人工成本,并且可以在很大程度上避免车间安全事故的发生,大大提升了工业生产的安全性和自动化程度。
本发明的优点就是采用基于坐标注意力机制的深度学习算法建立适用于三维目标检测的Lidar-RCNN++网络模型,并且采用基于关键点选取和多个空间坐标系转换优化焊枪朝向的算法。解决了在工件补焊场景下,如何保障成品工件质量稳定性的问题,使缺陷工件补焊作业进一步迈向智能化。设计上位机交互系统,增强了缺陷工件补焊作业的可视性,提供了更加便捷的手眼标定修正方法。本系统将人工智能与计算机视觉技术融入到实际工厂生产作业环境中,是现代AI技术落地到实际产业中的现实案例,应用并保障实际工业生产过程中极为重要的生产安全环节。
进行本系统的部署和实验,基于联想拯救者R9000P作为计算平台,搭载3070系显卡。基于Ubuntu操作系统进行开发,安装有显卡驱动、CUDA10.1、CUDNN、OpenCV、PCL、Eigen等,以pytorch为框架进行数据集标注与训练,以Clion、PyCharm等IDE进行调试训练。图12为工件点云可视化及参数修改界面图。图13为模拟实际焊接测试界面图,在该界面中判断起始点终点坐标和焊枪垂直度。图14为点云数据预处理流程示意图,其中对于点云数据进行半径滤波以及区域生长算法的处理,详见前文的点云预处理部分。图15为数据标注示意图,由于网络训练。图16为条焊识别实操示意图,其中竖线标记部分即为补焊位置,通过训练后的网络模型精确识别。图17为补焊测试实操示意图,对实际补焊位置通过焊枪进行处理。
以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。
Claims (8)
1.一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,其特征在于:
系统包含数据采集模块、三维目标检测模块、三维缺陷检测模块、工件补焊模块和人机交互界面模块;
数据采集模块利用深度相机获取工件图像,再通过深度相机采集到的RGB图、深度图与相机内参结合,获得相机坐标系下的点云数据;
三维目标检测模块首先对三维点云数据进行预处理操作,然后采用基于坐标注意力机制并结合使用Virtual points的Lidar-RCNN++网络模型实现在多个不同种类工件点云中选取指定的工件点云数据;
三维缺陷检测模块首先预设无缺陷的工件标签,接着利用PointNet网络模型进行模型分类,将有缺陷的点云数据与无缺陷点云数据区分开,获取到缺陷点云数据;
工件补焊模块首先通过PF-NET网络进行缺陷点云补全,后结合PCL库算法筛选出补全前后点云重复点,去除重复点得到待补焊的点云数据,根据关键点选取和焊枪朝向计算,从而进行TCP焊枪补焊操作;
人机交互系统集成并实现可视化的数据采集、工件识别、点云补全、工件补焊以及手眼标定修正的功能。
2.根据权利要求1所述的一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,其特征在于:所述数据采集模块为多传感器融合模块,使用RGBD深度相机结合红外相机进行数据采集和手眼标定;
数据采集中,通过RGBD深度相机采集RGB图和深度图,结合相机坐标系和像素坐标系,获得相机坐标系下的点云数据;
手眼标定中,对图像中的特征点进行检测得到其像素坐标值,计算得到对应物理坐标值,求解每张图片对应的相机外参矩阵,通过标定得到内参矩阵、平移和旋转参数以及畸变参数,计算得到相机坐标系到焊枪机械臂末端坐标系的旋转矩阵和平移量。
3.根据权利要求1所述的一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,其特征在于:所述三维目标检测模块分为点云预处理部分和三维目标检测部分;
点云预处理部分利用PCL点云处理开源库对点云数据进行点云数据降采样、离群点去除以及聚类分割;
三维目标检测部分搭建了嵌入坐标注意力机制的Lidar-RCNN++网络模型,对不同种类板件进行高精度检测分类;
Lidar-RCNN++网络模型由三维空间变换矩阵预测网络T-Net、共享参数的双层感知机模型shared mlp、Virtual points、MaxPooling以及坐标注意力机制CA的变形组成。
4.根据权利要求1所述的一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,其特征在于:所述三维缺陷检测模块基于纯点云的Pointnet分类与回归网络,对工件点云数据进行分类,将工件分为需要补焊和不需要补焊的两类,最后将有缺陷的工件点云数据提取出来,以供后续补焊使用。
5.根据权利要求1所述的一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,其特征在于:所述工件补焊模块分为点云补全部分、去除重复点云部分和智能化补焊部分;
点云补全部分采用了PF-NET网络,将点云补全分为生成和判别两部分,在补全点云后,对补全数据再经过一次判别,增加了补全区域的置信度;
去除重复点云部分结合了PCL点云处理算法库中平衡二叉树KD-Tree去除阈值邻域重复点的算法,有效提取待补焊部分点云数据;
智能化补焊部分对待补焊部分点云数据进行OpenMP法向计,对待补焊区域进行关键点提取,对法向量进行多个三维空间坐标系变换。
6.根据权利要求1所述的一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,其特征在于:所述人机交互界面模块是基于Qt开发的可视化界面,集成了数据采集、工件识别、点云补全、工件补焊以及手眼标定修正五个模块的功能按钮。
7.根据权利要求6所述的一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,其特征在于:所述数据采集按钮,实时显示深度相机拍摄到的RGB图、深度图、点云数据图。
8.根据权利要求6所述的一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统,其特征在于:所述工件补焊按钮,模拟出补焊全过程的仿真图,实现对补焊作业的监督与操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210994552.3A CN115330734A (zh) | 2022-08-18 | 2022-08-18 | 一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210994552.3A CN115330734A (zh) | 2022-08-18 | 2022-08-18 | 一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115330734A true CN115330734A (zh) | 2022-11-11 |
Family
ID=83926833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210994552.3A Pending CN115330734A (zh) | 2022-08-18 | 2022-08-18 | 一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115330734A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116894907A (zh) * | 2023-09-11 | 2023-10-17 | 菲特(天津)检测技术有限公司 | 一种rgbd相机纹理贴图优化方法及系统 |
CN117047237A (zh) * | 2023-10-11 | 2023-11-14 | 太原科技大学 | 一种异形件智能柔性焊接系统与方法 |
CN117218123A (zh) * | 2023-11-09 | 2023-12-12 | 上海擎刚智能科技有限公司 | 一种基于点云的冷轧带钢飞丝设备故障检测方法及系统 |
CN117408999A (zh) * | 2023-12-13 | 2024-01-16 | 安格利(成都)仪器设备有限公司 | 一种利用点云补全自动检测容器和管道腐蚀坑的方法 |
-
2022
- 2022-08-18 CN CN202210994552.3A patent/CN115330734A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116894907A (zh) * | 2023-09-11 | 2023-10-17 | 菲特(天津)检测技术有限公司 | 一种rgbd相机纹理贴图优化方法及系统 |
CN116894907B (zh) * | 2023-09-11 | 2023-11-21 | 菲特(天津)检测技术有限公司 | 一种rgbd相机纹理贴图优化方法及系统 |
CN117047237A (zh) * | 2023-10-11 | 2023-11-14 | 太原科技大学 | 一种异形件智能柔性焊接系统与方法 |
CN117047237B (zh) * | 2023-10-11 | 2024-01-19 | 太原科技大学 | 一种异形件智能柔性焊接系统与方法 |
CN117218123A (zh) * | 2023-11-09 | 2023-12-12 | 上海擎刚智能科技有限公司 | 一种基于点云的冷轧带钢飞丝设备故障检测方法及系统 |
CN117218123B (zh) * | 2023-11-09 | 2024-02-02 | 上海擎刚智能科技有限公司 | 一种基于点云的冷轧带钢飞丝设备故障检测方法及系统 |
CN117408999A (zh) * | 2023-12-13 | 2024-01-16 | 安格利(成都)仪器设备有限公司 | 一种利用点云补全自动检测容器和管道腐蚀坑的方法 |
CN117408999B (zh) * | 2023-12-13 | 2024-02-20 | 安格利(成都)仪器设备有限公司 | 一种利用点云补全自动检测容器和管道腐蚀坑的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111340797B (zh) | 一种激光雷达与双目相机数据融合检测方法及系统 | |
CN110059558B (zh) | 一种基于改进ssd网络的果园障碍物实时检测方法 | |
CN109816725B (zh) | 一种基于深度学习的单目相机物体位姿估计方法及装置 | |
CN115330734A (zh) | 一种基于三维目标检测和点云缺陷补全的自动化机器人补焊系统 | |
CN108656107B (zh) | 一种基于图像处理的机械臂抓取系统及方法 | |
CN111080693A (zh) | 一种基于YOLOv3的机器人自主分类抓取方法 | |
CN111462120B (zh) | 一种基于语义分割模型缺陷检测方法、装置、介质及设备 | |
CN109800689A (zh) | 一种基于时空特征融合学习的目标跟踪方法 | |
CN109159113B (zh) | 一种基于视觉推理的机器人作业方法 | |
CN111476841B (zh) | 一种基于点云和图像的识别定位方法及系统 | |
CN112836734A (zh) | 一种异源数据融合方法及装置、存储介质 | |
CN110910350B (zh) | 一种用于风电塔筒的螺母松动检测方法 | |
CN112070727B (zh) | 一种基于机器学习的金属表面缺陷检测方法 | |
CN113012122B (zh) | 一种类别级6d位姿与尺寸估计方法及装置 | |
CN115272204A (zh) | 一种基于机器视觉的轴承表面划痕检测方法 | |
CN115439458A (zh) | 基于深度图注意力的工业图像缺陷目标检测算法 | |
Zhuang et al. | Instance segmentation based 6D pose estimation of industrial objects using point clouds for robotic bin-picking | |
CN114155610B (zh) | 基于上半身姿态估计的面板装配关键动作识别方法 | |
Hao et al. | Fast recognition method for multiple apple targets in complex occlusion environment based on improved YOLOv5 | |
CN113240798B (zh) | 基于数字孪生和ar的物料完备性智能检测与配置方法 | |
CN114331961A (zh) | 用于对象的缺陷检测的方法 | |
CN112669452B (zh) | 一种基于卷积神经网络多分支结构的物体定位方法 | |
Wang et al. | Unsupervised representation learning for visual robotics grasping | |
CN115019202A (zh) | 一种应用于服务型移动机械臂的分步式抓取检测方法 | |
CN115719363A (zh) | 可进行二维动态检测和三维重建的环境感知方法与系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |