机器视觉检测技术在汽车行业中的应用

    最近在关注机器视觉这个领域,发现各种理论、算法讲了很多,但是在实际应用领域还在探索阶段。想做一个实际应用案例的系列。分享一篇机器视觉检测技术在汽车行业中的应用文章,论文发表在《电子测试》,介绍了机器视觉对汽车零部件平面度检测的设计,对主要内容作了摘抄和整理,分享给大家~

 0 引言

       平面度是汽车零部件的各项形状公差中重要组成部分之一,也是生产检测过程中最重要的技术指标之一。在很大程度上,平面度决定了汽车部分零部件的装配质量,影响汽车的使用性能。所以如何快速准确检测汽车零部件平面度成为目前汽车零件制造行业的研究方向之一。

       到目前为止,在零部件平面度测量行业中,部分厂家仍采用塞尺测量法,检测精度低,效率低,只能检测零件边缘。这对于需要大批量检测的产线是难以接受的。有的厂家采用三坐标测量法 [1],测量速度慢,而且需要被测要素保持水平,导致企业只能对产品行抽检不能进行全检。针对目前测量方法的精度低、效率低、速度慢、容易造成人力资源浪费等问题,本文设计了一种基于机器视觉的汽车零部件平面度在线检测系统,满足了目前国内对汽车零部件进行平面度测量大批量、高速度、高精度的需求,降低企业成本,提高企业的运行效率,具有广阔的应用前景。视觉的汽车零部件平面度在线检测系统,满足了目前国内对汽车零部件进行平面度测量大批量、高速度、高精度的需求,降低企业成本,提高企业的运行效率,具有广阔的应用前景。

图1:设备示意图

1 整体方案设计

       本系统的总体技术路线如图 2 所示,分为视觉和机器两部分:

        (1) 在视觉部分中,主要包含硬件与软件两部分。视觉硬件主要指测量采用的激光轮廓仪。视觉软件指的是点云算法以及上位机软件的设计。点云算法采取先粗配准再精配准的方式,实现平面度测量。上位机软件设计是基于 Visual Studio 2019 软件开发环境使用 C++ 编程语言并调用 PCL 点云库与 OpenCV 视觉库进行编写、测试与实现。

        (2) 在机器部分需完成硬件总体架构的搭建,配合视觉部分实现待测物及激光轮廓仪的运动,同时设计下位机软件 , 实现待测物、激光轮廓仪的运动控制以及各机构的联动。

2 系统模块设计

       如图 3 所示,本系统按照功能上可以划分为分为三个模块。

图3:系统模块设计图

 2.1 运动控制模块设计

       运动控制模块以可编程控制 PLC 为核心,通过驱动气缸、激光轮廓仪移动电机、不合格平剔除机构以及两个传送带的运动,完成与计算机、激光轮廓仪以及检测传感器的信息交互。待测物检测的运动控制流程如下所示 :

       ①将待测物放置于载物台上,随上料传送带一起运动。

       ②当上料检测激光位移传感器检测到有物体进入检测区,并且当载物台在检测区就位后,传感器将信号传递给PLC,控制气缸向上顶起载物台以保证检测时待测物不受传送带振动等因素干扰。

       ③然后,PLC 向电机发送信号由电机带动激光轮廓仪移动,同时激光轮廓仪开始扫描。待获取待测物的表面点云信息后,传输至计算机进行下一步的点云显示、计算与处理。

       ④完成扫描后的待测物进入下料传送带。PLC 接收计算机给出的平面度检测反馈信号,若待测物平面度检测不合格则控制剔除机构进行剔除,若待测物平面度检测合格则允许待测物通过,进入后续的检测环节。

2.2 点云采集模块设计

       点云采集模块由激光轮廓仪和待测物组成。该模块主要负责完成点云信息的获取,选择合适的采样帧率、采样点距以及景深对待测物进行扫描。

2.3 点云处理模块设计

       点云处理模块负责点云的显示、点云的配准以及待测物平面度的计算和显示,并与 PLC 完成信息交互。因为激光轮廓仪激光扫描时会得到较大的点云数据,而常用的迭代最近点(Iterative Closest Point,ICP)算法对点云最初始的位置要求较高,容易陷入局部最优解,无法达到实际需求。为确保点云配准不陷入局部最优解,通常将点云配准分为两部分,即采用先进行点云粗配准再进行细配准的点云配准方式 [2]. 其中点云的粗配准可以通过点云关

       键点的局部特征描述子建立对应关系,从而得到变换矩阵,而特征描述子的提取决定了配准的精度。Rusu 等人 [3] 提出了特征直方图(Point Feature Histogram, PFH)描述子计算关键点邻域内所有点对的几何位置关系作为关键点的主要特点 ;随后 Rusu 等人改进了 PFH 算法,保留了大部分PFH 的识别特征,提出一种快速点特征直方图(Fast Point Feature Histogram,FPFH)特征。然后使用采样一致性初始配准 (Sample Consensus Intial Alignment, SAC-IA)方法,该方法虽然显著提高了配准精度,但降低了效率,常用来进行初始配准。

       因此本文采用先提取出点云的 FPFH作为点云特征描述[4];然后根据该特征,采用 SAC-IA 方法完成初始配准 ;最后采取ICP 算法,实现点云的精配准。

2.3.1 点云粗配准

图4:查询点 Pq 的 PFH 计算的影响区域

       如图 4 所示的是一个查询点Pq 的 PFH 计算的影响区域。以 Pq为圆心,r 为半径,圆内的所有点全部互相连接。以 P1 为原点建立 UVW 坐标系,任意两点的 P1 和P2 及其法线 n1 与 n2 之间的关系特征如下所示 :

        α、φ、d 和 θ 是 FPH 描述子所需要的特征信息。在获取这些特征信息后,便可构建直方图,并进行归一化处理。该方法的缺点是当数据量变大时,其计算速度会变得缓慢。为了提高 FPH 描述子的提取效率,提出了 FPFH 算法。

       点云数据中所有点都要先得到 SPFH 特征,SPFH 是用来计算特征点与邻域点之间的关联,利用式(5)计算 FPFH 特征,计算量大幅度减少,通过后续的加权处理,使得 FPFH 特征获取了邻域点与邻域点之间的关系信息,填补了 SPFH 中邻域点与邻域点之间关系信息的丢失,提高了匹配的准确性。

图5:FPFH 计算原理

       获取 FPFH 特征子后,对点云P和点云Q采取 SAC-IA 算 法来进行特征点匹配计算。SAC-IA 算法是在点云 P 中随机选择 k 个样本点,在点云Q中寻找这些点最接近的对应点,根据两个点云数据集的相互关系计算出变换矩阵。利用式(6)来计算配准的偏差值,并使用 Levengerg-Marquardt 算法来不断优化最佳平移矩阵和旋转矩阵。

2.3.2 点云精配准

        点云精配准就是精确地求出点云的相对关联和变换矩阵的过程 [5]。由于 SAC-IA 得到的刚体变换矩阵使两点云的数据大致重叠,但是配准精度远远达不到现实工程应用的要求,因此在初始配准基础上再进行精确配准。点云精配准采用迭代最近点(IterativeClosestPoint,ICP)算法 :首先根据一定的方法确立对应点集 P 与 Q,其中 P A,Q B,对应点对的个数为 n。然后采用最小二乘法迭代计算最优的坐标变换,即旋转矩阵 R 和平移矢量 t,使得误差函数 f Rt ( , ) 最小,直到满足要求。

​ 3 实验结果与分析

        将本文点云配准算法应用在激光轮廓仪平面度测量中,对汽车零部件模型进行平面度测量实验。如图 6 所示绿色点云为源点云,蓝色为目标点云。本文实验的硬件环境为英特酷睿 i7-9750H @2.60GHZ 8GB ;显卡 Nvidia gtx 1650; 软件环境为 Visual Studio 2019。为了验证点云配准精度对平面度测量结果的影响,选取SHOT+ICP 点云算法与本文采用的算法进行对比。将三坐标测量机的平面度测量结果作为参考值。平面度测量结果如表 1所示。

图6:汽车零部件点云匹配图
表 1 平面度测量结果

       从表中可以得出,两种方法的平面度测量结果与三坐标测量机的测量结果基本一致。由于本文采取的方法的测量结果重复性可控制在 0.0023mm 以下,能够实现对平面度有效的评估。另外,三坐标测量机的测量时间在 15min 以上,而采用本文算法的平面度测量耗时可控制在 24.5s 左右,因此本文平面度测量方式更适用于大批量测量的场合。

4 结论

       国内汽车零部件平面度检测行业较为落后,如何进行快速准确测量汽车零部件平面度是重点研究方向之一。本文设计的基于机器视觉的汽车零部件平面度在线检测系统,非常适用于需要大批量检测汽车零部件平面度的场合具有广阔的发展前景。


文章来源:王宇龙. 基于机器视觉的汽车零部件平面度检测系统设计 [J]. 电子测试, 2022,36(18)


       当然,目前市面上有许多大大小小的机器视觉公司,做的机器视觉检测都不错,但是我在这里想推荐一款机器视觉平台—跑码地Coovally,Coovally是一个包含完整AI建模流程、AI项目管理及AI系统部署管理的机器视觉平台。可以把开发周期从月缩短到天,加快AI视觉解决方案的开发、集成、测试和验证。帮助提升企业的AI栈软件开发能力,使先进的AI系统能够以更低成本、更快地普及。“打包自身的AI能力”给业务人员使用,从而实现“授人以渔”。目前跑码地Coovally已覆盖多个应用领域,包含制造业质检、地质灾害监测、电力行业设备监控、医学专病诊断、智慧交通、智慧园区等。

        除了常见的缺陷检测,还可以检测的有:火焰检测、烟雾识别、抽烟识别、安全帽识别、行人检测、人员闯入识别、越界检测、攀爬识别、离岗检测、徘徊检测、聚众识别、人流密度检测、跌倒识别、防疫服识别、口罩识别、护目镜识别、灭火器摆放、别反光衣识别、、焊接缺陷识别、玻璃制品缺陷检测、楼道杂物堆放识别、垃圾桶溢出识别、河道漂浮物识别、夜间老鼠识别、包裹移动识别、电动车进电梯识别、取物放物识别、扶梯大件行李识别、家畜检测、鸟窝检测、农作物病虫害检测、船舶闯入识别、渣土车识别、裸露土堆识别、非机动车识别、车辆违停识别、电动车头盔识别、大货车限行识别、积水识别、井盖识别、路面损坏识别、重型机械车辆检测、交通指示灯识别等超过100种常见AI应用场景。

       对于汽车零部件的缺陷检测,Coovally也是完全没问题的。

猜你喜欢

转载自blog.csdn.net/Bella_zhang0701/article/details/127981726