APP下载

激光点云中散乱电子元器件分割方法

2022-07-27陈伯云陆安江赵麒黄际玮彭熙舜

包装工程 2022年13期
关键词:欧式夹角元器件

陈伯云,陆安江,赵麒,黄际玮,彭熙舜

激光点云中散乱电子元器件分割方法

陈伯云1,陆安江1,赵麒2,黄际玮1,彭熙舜1

(1.贵州大学 大数据与信息工程学院,贵阳 550025;2.贵州民族大学 机械电子工程学院,贵阳 550025)

针对散乱电子元器件计数过程中电子元器件分割困难的问题,提出一种基于点云簇平均法线夹角、平均点云密度边缘提取和区域生长阈值自适应的散乱电子元器件分割方法。通过体素化处理、RANSAC算法和统计离群滤波算法对原始点云数据进行预处理,去除大量无关点云;使用欧式聚类算法对预处理结果粗分割得到电子元器件点云簇,以点云簇为阈值设置单元,避免阈值设置不合理的情况;通常边缘点较非边缘点法线夹角更大、邻域点更少,提出通过点云簇平均法线夹角和平均点云密度自适应约束来去除点云簇中边缘点的方法;对去边缘点后的点云簇细分割,根据细分割后点云簇的平均法线夹角进行区域生长阈值的自适应选择,通过改进的区域生长算法将每个电子元器件从点云簇中分割出来。实验结果证明,文中方法分割正确率达97%以上,每10个目标分割耗时约345 ms。提出的方法具有良好的准确性和实用性,分割效果优于传统分割算法,能够准确地将每个电子元器件从复杂场景中分割出来。

点云分割;数量检测;边缘提取;散乱电子元器件;区域生长

在工业自动化包装过程中,经常需要对电子元器件进行计数,以确保销售产品数量的一致性。如采用人工计数方式[1],不仅任务繁杂、工作效率低,还可能出现人为主观因素造成的计数偏差。使用称量的方法虽然节省人力,但在计数准确性上会有所欠缺。使用三维扫描设备获取散乱电子元器件点云实现散乱电子元器件的数量检测具有无接触、快速高效、准确率高等特点。由于散乱电子元器件分布的随机性,以及相互之间的重叠、密接触等因素的影响,将单个电子元器件从复杂场景中分割出来并不容易。分割的结果将直接影响电子元器件数量检测的准确性。所以,对散乱电子元器件点云的准确分割是实现散乱电子元器件数量检测的重要基础。

目前,针对电子元器件计数的研究主要使用二维图像。二维视觉通常难以提取有效信息,存在识别困难的问题[2],只能应对电子元器件分布离散且无相互遮挡的简单场景。例如,陈孝威等[3]根据微小电子元器件的形状和正反两面的纹理特征对图像中电子元器件的正面和反面分别处理最终获得分割结果,计数准确率达到了100%。这种方法虽然计数精度高,但无法应对电子元器件出现散乱堆叠的复杂场景,且受光照环境影响较大。黄梓淳[4]将图像处理的计数算法与深度学习结合,采用改进的基于卷积神经网络的区域定位(Faster R-CNN)网络模型[5]算法提高了检测的速度和精度,计数准确率达到了98.3%,但同样不适用于电子元器件出现散乱堆叠的复杂场景且不具有实时性。近年来,随着三维数据获取精度的提高和成本的降低,点云数据处理成为了研究热点[6-7]。采用三维激光扫描技术采集点云数据具有高速度、高精度、可量测等优点[8]。点云分割是点云数据处理的重要环节[9],目前常用的分割方法包括聚类分割、基于模型的分割、基于边缘的分割以及区域生长分割[10],但这些传统的分割算法都无法直接应用于散乱电子元器件这一复杂场景。

针对散乱电子元器件这一复杂场景分割困难的问题,文中提出基于点云簇平均法线夹角、平均点云密度边缘提取和区域生长阈值自适应的散乱电子元器件分割方法。该方法以点云簇为重点处理对象,有效地解决分割过程中因阈值选择不合理而造成的过分割和欠分割现象[11-12],极大地提高分割的准确率,为工业自动化包装中实现散乱电子元器件自动计数提供技术支持。

1 散乱电子元器件分割算法

文中提出的散乱电子元器件分割算法主要包括点云数据预处理和点云数据分割2部分,具体算法流程见图1。

1.1 点云预处理

点云数据通常是使用线阵激光扫描[13],获取的点云数据过于稠密,同时由于外界环境和相机自身等因素的影响,在获取的点云数据中存在大量离群点和冗余点。点云的数据量过大会导致后续分割和计算过程中耗费大量时间。离群点指远离目标点,主要来自数据采集过程中深度相机和环境干扰产生的噪声和未完全去除的冗余点。离群点的存在会对分割结果造成影响。冗余点则往往来自载物台背景,同样会造成数据量过大从而耗费计算时间。针对上述问题,需要对从深度相机获得的点云数据进行预处理。预处理步骤如下。

1)点云数据体素化处理。将输入的点云数据划分为微小立方体的集合,使用每个立方体内点的重心代替立方体内所有点,从而在保证原有形状不变的情况下降低整个点云的数据量。

2)使用随机采样一致性(RANSAC)算法[14]对输入数据进行平面拟合,将拟合出的载物台平面内点去除。算法的基本思想:从样本集中随机选取3点,使用这3点进行平面拟合,计算所有点到该平面模型的距离,将小于距离阈值的点加入内点集合,否则加入外点集合。将步骤1—2进行次迭代,迭代次数中内点最多的拟合平面即为载物台平面。

3)去除离群点。使用统计滤波器对非感兴趣点进行剔除。基本思想:给定邻域半径,点距其半径内所有邻域点的平均距离呈高斯分布,如果该平均距离在标准范围(由全局平均距离和方差定义)之外,则被定义为离群点移除。

为验证预处理的有效性,以图2a所示散乱电子元器件点云数据Data1为例进行实验,Data1点数为1 297 820,包含16个电子元器件点云数据。Data1预处理各阶段见图2,各阶段点数变化见表1。

表1 Data1预处理各阶段点数变化情况

1.2 点云簇边缘提取

根据散乱电子元器件点云特征进行分析,分割的难点主要在于分布的随机性、相互之间的重叠和密接触。对边缘进行提取可减少电子元器件相互之间的碰撞,同时降低后续区域生长过分割的可能。文中使用欧式聚类算法对预处理后的点云数据进行粗分割,将空间上相邻的电子元器件点云分割为点云簇,将每个点云簇与基准向量的平均夹角、点云簇的邻域点密度作为约束条件进行边缘提取,以Data1为实验对象,Data1部分点云簇边缘提取结果见图3。

图2 Data1预处理各阶段结果

图3 Data1部分点云簇边缘提取结果图

1.2.1 欧式聚类获取点云簇

使用欧式聚类算法将原始场景点云数据分割为由1个或多个电子元器件构成的点云簇。欧式聚类算法是一种基于欧式距离度量的分割算法,它使用Kdtree建立点的拓扑关系,通过计算点与其邻域点的欧式距离,将在阈值范围内的点分割为一类,反复迭代直到没有新的点加入。点与其邻域中的一点的欧式距离为:

(1)

1.2.2 基于点云簇平均法线夹角和平均点云密度的边缘提取

由于相机视场和外界环境等因素的影响,电子元器件表面的点云分布通常不是均匀的,因此文中提出以点云簇为约束条件设置单元,以提高边缘提取的准确率。具体步骤如下。

1)法线向量估计。使用PCA(主成分分析法)[15-16]计算每个点的法线向量,对于任意一点,以为半径搜索其邻近点,得到邻近点数量为,使用最小二乘法对邻域内的点进行平面拟合,见式(2)。

(2)

(3)

(4)

点云簇的法线夹角均值为:

(5)

(6)

统计实验数据Data1不同点云簇的平均法线夹角和=1 mm邻域内平均点密度见表2。

3)自适应阈值边缘提取。对任一点云簇,其平均法线夹角为,平均点密度为,根据多次实验统计分析,提取边缘阈值法线夹角约束,邻域内点密度约束时边缘提取效果最好。对于点云簇中任一点,基准向量与该点法线的夹角为,在邻域内该点邻近点数为,则该点被定义为边缘点被去除的约束条件为:

(7)

表2 Data1点云簇平均法线夹角和平均点云密度

Tab.2 Average normal angle and average point cloud density of Data1 point cloud cluster

1.3 区域生长阈值自适应分割

区域生长算法[17-18]是通过比较法向量,将符合平滑约束条件的邻近点分割在一起,其基本原理是将点的曲率值进行排序,选取曲率值最小的点作为种子点开始生长,曲率最小的点所在的区域称为平坦区域,从此处开始分割能够降低重复分割率,提高效率。传统的区域生长算法由于适用性的不同,生长阈值的设置比较困难且容易出现过分割和欠分割的现象,无法应对散乱电子元器件这样复杂场景的分割,因此,文中基于点云簇的平均法线夹角来进行区域生长阈值的自适应选择,有效地提高了分割的准确率。具体过程为如下。

2)遍历点云簇,计算所有点的曲率并将曲率值按大小排序,选取曲率最小的点开始生长。

3)统计分割结束后剩余点云的点数,如果剩余点数大于输入点云簇点数的30%则将剩余点云再次输入重复上述步骤1、2、3,直到分割剩余点云点数不再大于第1次输入点云簇点数的30%。

统计不同点云簇平均法线夹角区间对应的平滑度约束阈值见表3。

表3 平滑度约束阈值对应表

Tab.3 Correspondence table of smoothness constraint threshold

2 实验结果与分析

文中使用的电子元器件为6.0 mm×8.0 mm×4.0 mm的贴片钽电容。实验数据采用VS–PCA–P600 3D深度相机获取,该相机使用近红外激光光源,轴重复精度为0.1~0.5 mm,满足文中对电子元器件点云数据采集的需求,搭建的实验数据采集平台见图4。实验使用的软硬件环境:Windows10专业版、Intel(R) Core(TM) i5–6200U CPU@2.30 GHz 2.40 Hz、8 GB内存。算法开发环境为:Microsoft Visual Studio 2017结合pcl1.8.1点云库。

图4 实验数据采集平台

为验证文中分割方法的可行性,以Data1作为原始数据输入,按照文中算法流程进行分割。实验中体素栅格大小size设置为0.3,RANSAC算法中平面模型内点和外点阈值t设置为2.2 mm,统计滤波器标准差设置为1.0,欧式聚类算法中欧式距离阈值t为0.5 mm,最小点云簇点数大于150,用于法线估计的点的邻域点数目为50,邻域半径设置为1.0 mm。

Data1分割结果见图5。同一点云簇中每个区域生长分割结果用不同颜色表示,可以看出,每个分割聚类均仅包含一个电子元器件,没有出现过分割和欠分割的现象。统计实验相关数据见表4。

为进一步验证文中分割方法的有效性,以3组不同散乱分布、不同数量的电子元器件点云数据为例进行实验,并使用传统欧式聚类算法和区域生长算法对同样的预处理结果进行对比实验,实验相关数据和统计实验结果见表5。表5中分别记录了3组数据使用文中算法和其他2种用于对比的算法的分割结果,其中A为文中算法,B为传统欧式聚类算法,C为传统区域生长算法。分割聚类数为不同算法从点云数据中最终分割出的聚类个数,正确分割数量统计了分割算法分割出的聚类中确为单个电子元器件点云的聚类数量,即正确分割出目标的数量。为了便于进行算法性能分析,表5中还统计了文中算法和对比算法分割的正确率和分割耗时。

图5 Data1分割结果

表4 Data1实验结果

Tab.4 Experimental results of Data1

表5 多组数据实验结果

Tab.5 Experimental results of multiple data sets

文中算法和对比算法对实验数据Test1、Test2和Test3的分割结果见图6,不同颜色代表一个分割聚类,相邻电子元器件构成的点云簇中出现同色聚类则说明该点云簇分割不完整,出现欠分割现象;单一电子元器件点云中出现2个及以上颜色则说明该点云簇出现过分割现象。

从图6—8可以看出,文中算法基本能够准确地将每个电子元器件从复杂场景中分割出来,分割准确性远远高于传统分割算法。由于传统的欧式聚类分割算法是基于欧式距离进行分割的,对相互重叠、粘连的电子元器件容易出现欠分割的现象,而传统的区域生长算法受限于生长阈值,不能自动调节,既有过分割又有欠分割现象,因此对这样复杂的场景分割效果极差。对比提到的传统算法,文中算法具有分割准确率高、阈值自适应选择、不易出现过分割和欠分割等优势。从表6可以发现,文中分割算法分割正确率达97%以上,平均正确率较传统欧式聚类算法提高了47.5%,较传统区域生长算法提高了19.1%。虽然耗时方面有所增加,但对实验中这样量级数据的分割,平均耗时也仅需1.104 s,平均每10个目标分割耗时约345 ms,具有良好的实用性。

图6 实验数据Test1 3种算法分割结果

图7 实验数据Test2 3种算法分割结果

图8 实验数据Test3 3种算法分割结果

3 结语

为满足工业自动化包装过程中散乱电子元器件计数需求,提出一种散乱电子元器件分割新方法,通过基于点云簇平均法线夹角和平均点云密度的边缘提取有效减少了电子元器件间相互重叠、密接触等情况,提高了分割的准确率。基于点云簇的平均法线夹角来进行区域生长阈值的自适应选择,有效减少了由于阈值设置不合理而导致的过分割和欠分割现象。实验证明,文中提出的散乱电子元器件分割算法分割正确率达97%以上,相较于传统的欧式聚类算法和区域生长算法在分割正确率上有很大提升,解决了散乱电子元器件这样复杂场景分割困难的问题,为实现散乱电子元器件计数提供了技术支持。同时,每10个目标的分割耗时仅需约345 ms,兼顾了分割的准确性和实用性。然而,文中算法目前分割的对象比较单一,适用于规则形状的电子元器件,对于不规则形状的电子元器件尚不具有可行性,如何实现多类型元器件的分割将是下一步的研究重点。

[1] 方志强, 肖书浩, 熊禾根, 等. 基于机器视觉及SVM的零件产品计数系统[J]. 制造业自动化, 2018, 40(7): 37-40.

FANG Zhi-qiang, XIAO Shu-hao, XIONG He-gen, et al. Part Product Counting System Based on Machine Vision and SVM[J]. Manufacturing Automation, 2018, 40(7): 37-40.

[2] 梁雪. 基于三维视觉的散乱零件抓取技术研究[D]. 济南: 山东大学, 2020: 1-5.

LIANG Xue. Research on the Robotic Grabbing Technology of Scattered Parts Based on 3D Vision[D]. Jinan: Shandong University, 2020: 1-5.

[3] 陈孝威, 王茵. 基于图像处理的微小电子元器件自动计数算法[J]. 计算机工程与设计, 2009, 30(17): 4100-4103.

CHEN Xiao-wei, WANG Yin. Algorithm for Automatic Counting Tiny Electronic Device Based on Digital Image Processing[J]. Computer Engineering and Design, 2009, 30(17): 4100-4103.

[4] 黄梓淳. 深度学习在电子元器件计数中的应用研究[D]. 广州: 华南理工大学, 2017: 36-42.

HUANG Zi-chun. Research on Deep Learning and Its Application on the Electronic Components Counting[D]. Guangzhou: South China University of Technology, 2017: 36-42.

[5] REN S, HE K, GIRSHICK R, et al. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6): 1137-1149.

[6] 李明磊, 宗文鹏, 李广云, 等. 基于体素生长的点云结构直线段提取[J]. 光学学报, 2018, 38(1): 0112001.

LI Ming-lei, ZONG Wen-peng, LI Guang-yun, et al. Extraction of Structure Line Segments from Point Clouds Using Voxel-Based Region Growing[J]. Acta Optica Sinica, 2018, 38(1): 0112001.

[7] PU Shi, VOSSELMAN G. Knowledge Based Reconstruction of Building Models from Terrestrial Laser Scanning Data[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2009, 64(6): 575-584.

[8] 赵梦娜, 花向红, 冯绍权, 等. 基于点云切片的建筑物门窗信息提取[J]. 中国激光, 2020, 47(6): 183-192.

ZHAO Meng-na, HUA Xiang-hong, FENG Shao-quan, et al. Information Extraction of Buildings, Doors, and Windows Based on Point Cloud Slices[J]. Chinese Journal of Lasers, 2020, 47(6): 183-192.

[9] 汪文琪, 李宗春, 付永健, 等. 基于改进多规则区域生长的点云多要素分割[J]. 光学学报, 2021, 41(5): 198-212.

WANG Wen-qi, LI Zong-chun, FU Yong-jian, et al. Multi-Factor Segmentation of Point Cloud Based on Improved Multi-Rule Region Growing[J]. Acta Optica Sinica, 2021, 41(5): 198-212.

[10] 田青华, 白瑞林, 李杜. 基于改进欧氏聚类的散乱工件点云分割[J]. 激光与光电子学进展, 2017, 54(12): 316-324.

TIAN Qing-hua, BAI Rui-lin, LI Du. Point Cloud Segmentation of Scattered Workpieces Based on Improved Euclidean Clustering[J]. Laser & Optoelectronics Progress, 2017, 54(12): 316-324.

[11] BEN-SHABAT Y, AVRAHAM T, LINDENBAUM M, et al. Graph Based Over-Segmentation Methods for 3D Point Clouds[J]. Computer Vision and Image Understanding, 2018, 174: 12-23.

[12] XU Sheng, WANG Rui-sheng, WANG Hao, et al. Plane Segmentation Based on the Optimal-Vector-Field in LiDAR Point Clouds[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, 43(11): 1-9.

[13] 熊骏伟, 刘全香. 基于物体表面变化的点云自适应切片算法[J]. 包装工程, 2016, 37(5): 167-171.

XIONG Jun-wei, LIU Quan-xiang. Adaptive Cloud Point Slicing Algorithm Based on Change of Object Surface[J]. Packaging Engineering, 2016, 37(5): 167-171.

[14] SCHNABEL R, WAHL R, KLEIN R. Efficient RANSAC for Point-Cloud Shape Detection[J]. Computer Graphics Forum, 2007, 26(2): 214-226.

[15] NURUNNABI A, WEST G, BELTON D. Outlier Detection and Robust Normal-Curvature Estimation in Mobile Laser Scanning 3D Point Cloud Data[J]. Pattern Recognition, 2015, 48(4): 1404-1419.

[16] QIN Xu-jia, HU Zhong-tian, ZHENG Hong-bo, et al. Surface Reconstruction from Unorganized Point Clouds Based on Edge Growing[J]. Advances in Manufacturing, 2019, 7(3): 343-352.

[17] VO A V, TRUONG-HONG L, LAEFER D F, et al. Octree-Based Region Growing for Point Cloud Segmentation[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2015, 104: 88-100.

[18] ANGELINA S, SURESH L P, VENI S H K. Image Segmentation Based on Genetic Algorithm for Region Growth and Region Merging[C]// 2012 International Conference on Computing, Electronics and Electrical Technologies(ICCEET), 2012: 970-974.

Segmentation Method of Scattered Electronic Components in Laser Point Cloud

CHEN Bo-yun1, LU An-jiang1, ZHAO Qi2, HUANG Ji-wei1, PENG Xi-shun1

(1. School of Big Data and Information Engineering,Guizhou University, Guiyang 550025, China; 2. School of Mechatronics Engineering,Guizhou Minzu University, Guiyang 550025, China)

The work aims to propose a segmentation method of scattered electronic components based on edge extraction and adaptive region growth threshold of average normal angle and average point cloud density of point cloud cluster, so as to overcome the difficulty of dividing electronic components in counting of scattered electronic components. The original point cloud data were preprocessed by voxel processing, RANSAC algorithm and statistical outlier filtering algorithm to remove a large number of irrelevant point clouds. The European clustering algorithm was used to roughly segment the preprocessing results to obtain the point cloud cluster of electronic components. The point cloud cluster was used as the threshold setting unit to avoid the unreasonable threshold setting. In general, edge points had larger normal angle and fewer neighborhood points than non-edge points. A method was proposed to remove the edge points in point cloud cluster by adaptive constraints of average normal angle and average point cloud density. Finally, the point cloud cluster with the edge points removed was finely segmented, and the region growth threshold was adaptively selected according to the average normal angle of the point cloud cluster after fine segmentation. Thus, each electronic component was segmented from the point cloud cluster through the improved region growth algorithm. Experimental results proved that the segmentation accuracy of the method was over 97%, and it took about 345 ms to segment 10 targets. The proposed method has good accuracy and practicability, and has better segmentation effect than the traditional segmentation algorithm, which can accurately segment each electronic component from the complex scene.

point cloud segmentation; quantity detection; edge extraction; scattered electronic components; region growth

TP391.41

A

1001-3563(2022)13-0216-09

10.19554/j.cnki.1001-3563.2022.13.028

2021‒10‒16

国家自然科学基金(62065002,61865002)

陈伯云(1998—),男,贵州大学硕士生,主攻计算机视觉。

陆安江(1976—),男,博士,贵州大学副教授,主要研究方向为图像处理与分析、MEMS微机电系统。

责任编辑:曾钰婵

猜你喜欢

欧式夹角元器件
国产元器件选型方式及流程分析
航天产品用元器件返修技术状态管控研究
LGA封装元器件批量除金方法在航天领域的应用
欧式花边的中西宫廷时尚表现
求解异面直线夹角问题的两个路径
向量夹角的风波
向量夹角的风波
欧式新古典风格室内软装饰设计资源的运用原则探讨
平面向量夹角问题的易错剖析
简欧别墅室内空间设计与表现分析