CN116543247A - 基于光度立体表面重建的数据集制作方法及验证系统 - Google Patents
基于光度立体表面重建的数据集制作方法及验证系统 Download PDFInfo
- Publication number
- CN116543247A CN116543247A CN202211320694.8A CN202211320694A CN116543247A CN 116543247 A CN116543247 A CN 116543247A CN 202211320694 A CN202211320694 A CN 202211320694A CN 116543247 A CN116543247 A CN 116543247A
- Authority
- CN
- China
- Prior art keywords
- normal vector
- image
- frame
- defect
- photometric
- 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
- 238000012795 verification Methods 0.000 title claims abstract description 27
- 238000004519 manufacturing process Methods 0.000 title claims abstract description 22
- 239000013598 vector Substances 0.000 claims abstract description 172
- 230000007547 defect Effects 0.000 claims abstract description 124
- 238000001514 detection method Methods 0.000 claims abstract description 90
- 238000010586 diagram Methods 0.000 claims abstract description 46
- 229910052751 metal Inorganic materials 0.000 claims abstract description 22
- 239000002184 metal Substances 0.000 claims abstract description 22
- 238000005286 illumination Methods 0.000 claims abstract description 8
- 238000000605 extraction Methods 0.000 claims description 72
- 239000011159 matrix material Substances 0.000 claims description 28
- 238000000034 method Methods 0.000 claims description 26
- 238000012549 training Methods 0.000 claims description 26
- 238000011176 pooling Methods 0.000 claims description 24
- 238000003384 imaging method Methods 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 15
- 230000004913 activation Effects 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 11
- 238000012360 testing method Methods 0.000 claims description 11
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 8
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 claims description 6
- 230000015572 biosynthetic process Effects 0.000 claims description 6
- 238000002372 labelling Methods 0.000 claims description 6
- 238000002310 reflectometry Methods 0.000 claims description 6
- 229910052709 silver Inorganic materials 0.000 claims description 6
- 239000004332 silver Substances 0.000 claims description 6
- 238000003786 synthesis reaction Methods 0.000 claims description 6
- 230000000877 morphologic effect Effects 0.000 claims description 5
- 229910001220 stainless steel Inorganic materials 0.000 claims description 5
- 239000010935 stainless steel Substances 0.000 claims description 5
- 229910000831 Steel Inorganic materials 0.000 claims description 3
- 230000002779 inactivation Effects 0.000 claims description 3
- 239000000463 material Substances 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 239000010959 steel Substances 0.000 claims description 3
- 238000002360 preparation method Methods 0.000 claims description 2
- 238000013461 design Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 240000007651 Rubus glaucus Species 0.000 description 3
- 235000011034 Rubus glaucus Nutrition 0.000 description 3
- 235000009122 Rubus idaeus Nutrition 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000002950 deficient Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 101100298219 Arabidopsis thaliana POT1B gene Proteins 0.000 description 1
- 101100298224 Arabidopsis thaliana POT2 gene Proteins 0.000 description 1
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 101000741885 Homo sapiens Protection of telomeres protein 1 Proteins 0.000 description 1
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 102100038745 Protection of telomeres protein 1 Human genes 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 208000003464 asthenopia Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 229910052804 chromium Inorganic materials 0.000 description 1
- 239000011651 chromium Substances 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 239000011365 complex material Substances 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007797 corrosion Effects 0.000 description 1
- 238000005260 corrosion Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000007747 plating Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- 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/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
- G06T5/30—Erosion or dilatation, e.g. thinning
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- 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
-
- 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/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- 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/766—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using regression, e.g. by projecting features on hyperplanes
-
- 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/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
基于光度立体表面重建的缺陷检测数据集制作方法,包括以下步骤:(1)选择四种类型的对象生成数据集;(2)获取多张不同光照条件下的图像;对每个对象依次激励不同位置光源进行打光,获取对象表面区域的一组光度图像;(3)获取多张不同光照条件下的图像;对每个对象依次激励不同位置光源进行打光,获取对象表面区域的一组光度图像;(4)基于步骤(3)获得的法向量图,构建基于光度立体表面重建的缺陷检测数据集。本发明还提供一种基于光度立体表面重建的缺陷检测数据集制作方法的验证系统。发明能够通过获取多张不同光源条件下的图像,避免由于表面反光造成的信息缺失,光度立体视觉能够获取表面法向量图;并设计了验证系统,对整体方案进行验证,实现了金属表面缺陷的有效识别。
Description
技术领域
本发明涉及基于光度立体表面重建的数据集制作方法及验证系统。
背景技术
当前,企业中多数采用人工目视检测的方式进行产品表面质量检测,该方法存在以下几个问题:工厂生产环境较为恶劣,尤其是冲压车间存在较大的振动噪声,不适宜工人长时间工作;工人通过目视检测的方式会受到主观因素影响;长时间进行检测会造成眼部疲劳,损害身体健康。自动化检测成为企业发展的趋势,自动化检测能够规范检测标准,节省劳动力成本,降低工人劳动强度,提高检测效率。
计算机视觉的发展大大缓解了这个问题,基于图像的机器视觉检测技术,能够实现非接触式表面无损检测,同时能够将无损检测与自动化和智能化相结合,实现高效率、高精度的非接触式缺陷检测。但是,使用机器视觉算法进行缺陷检测的必要条件是能够在图像中提取缺陷的形态信息,然而金属表面的高反光特性会使采集的图像中部分区域出现过曝现象,单张图像很难获取被测表面所有缺陷的信息。有必要调整光的方向与角度,以确保缺陷不在光泽或阴影区域。但产品零件尺寸较大,检测精度要求较高,难以通过一次成像获取整个表面的图像信息。不同产品间存在尺寸差异,并且腔体曲面难以在正上方获取高质量的表面信息;对于缺陷的检测要求中包含深度方向的信息,二维图像检测难以处理。
与此同时,近年来光度立体视觉技术在先进制造领域受到了极大的关注,该技术利用在已知光源环境中固定视角下拍摄的不同光照条件的图像,根据物体表面的反射规律,求解出物体表面的法向量信息,反映物体表面的三维特征。由于实际的检测物体多数为非朗伯体材料,非朗伯体表面的反射规律复杂,难以通过理想假设进行精确建模,非朗伯体光度立体(Non-Lambertian Photometric Stereo)成为当前光度立体视觉算法的主要研究方向。
缺陷检测方法和光度立体算法在各自的基准上都取得了优异的性能。然而,基于光度立体的缺陷检测方法很少。这是由于大多数当前缺陷检测数据是在单一照明下捕获、无法实现法向求解,不能应用于光度立体。同时,现有的光度立体数据集缺乏缺陷样本。
发明内容
为克服上述问题,本发明提供一种基于光度立体表面重建的缺陷检测数据集制作方法,包括以下步骤:
(1)构建缺陷样品集,缺陷样品集由多个样品组成,样品属性包括颜色、材质、形状和缺陷类型,每个样品至少有一个属性与其他样品不同;
(2)对每个对象依次激励不同位置光源进行打光,每个位置光源激励获得一张图像,以至少三张图像形成一组光度图像;
(3)将光度图像输入到光度立体网络模型中,使用训练完成的光度立体网络模型根据光度图像进行模型推理估计各像素点处的表面法向量,获得对象表面法向量图;训练光度立体网络模型包括如下步骤,
3.1)建立采集系统的成像环境模型,对光度立体成像装置进行光源信息标定;
3.2)搭建基于三维卷积的光度立体网络模型,使用光度立体合成数据集对模型进行监督训练,至模型在训练数据集上收敛;其中,光度立体合成数据集为Bloddy数据集与Sculpture数据集,用于验证的真实物体数据集为DiLiGenT数据集;
3.3)设计光度立体网络模型的评价指标,光度立体模型的性能通过表面法向量估计精度进行评价,表面法向量估计精度的计算指标为预测法向量与真实法向量间的平均角度误差;其计算公式为:
其中,Nk表示预测法向量图中第k像素处的法向量,表示真实法向量图中第k像素处的法向量,K表示法向量图中像素数的总和;MAE值越小表示法向量的估计精度越高;
(4)基于步骤(3)获得的法向量图,构建基于光度立体表面重建的缺陷检测数据集;
4.1)使用Python的标注脚本LabelImg进行缺陷目标区域的矩形框标注;
4.2)读取每个图像的注释文件,获取当前图像中每个缺陷的位置和类别信息,设置滑动窗口,从当前图像的左上角开始、以滑动窗口遍历图像;
4.3)判断当前滑动窗口内是否存在缺陷目标,如果没有缺陷目标则舍弃该窗口裁切的图像;如果存在缺陷,则将与滑动窗口存在交集的缺陷区域信息进行保存;
4.4)判断步骤(4.3)保存的区域信息是否存在窗口包含不完整缺陷的情况,不存在则将缺陷的位置信息转换至窗口的图像坐标系下,进行保存生成新的标注文件;当存在不完整的缺陷区域时,计算窗口中该缺陷的面积与实际标注缺陷区域面积的比值,通过阈值判断,当比值大于0.75时,调整缺陷的标注信息,以窗口边界作为新的边界,当比值小于0.75时,将该缺陷舍弃,然后将窗口图片进行保存,并生成新的标注文件;完成后获得缺陷样本图像;
4.5)将步骤4.6)获得的缺陷样本图像划分为训练集、验证集和测试集。
进一步,缺陷样品集种至少包括四种类型的缺陷样品;所述四种类型包括不锈钢的黄色半球、银色半球、黄色圆锥体和银色圆锥体,每个样品通过模拟生产过程的冲击在其表面上产生缺陷,缺陷的类型至少包括点状凹坑、变形、划痕和擦伤。
进一步,对光源标定包括以下步骤:光源方向标定;使用镀铬金属球作为标定球,首先获取标定球球心,通过图像处理求解钢球表面的高光点位置,进而求得该点处的表面法向量;
获取标定球的参数圆心坐标(xC,yC)和半径r,处理高光点图像,获取高光点P坐标(xP,yP),进行该点处球面法向量的计算;根据标定球三视图,高光点相较于圆心的相对坐标为法向量的x和y方向的分量,z方向分量根据勾股定理计算,N表示为:
已知反射方向向量和法线方向向量,待求的入射方向向量可由下述方法获取;
首先将反射方向向量进行平移,与法线方向向量延长向量S相交,根据光的反射定律,向量L、R和S形成等腰三角形;入射方向向量L可表示为:
L=R-S (2)
向量S与法向方向向量方向相同,可通过向量R与向量N进行表示:
综合上式,可求得:
L=R-2(R·N)N (4)
3.1.2)光源强度标定;利用标准白板,将标准白板视作理想的朗伯体表面,标准白板的形状为理想平面,各点法向量一致,白板的平面法向量nstd=(0,0,1)T;标定白板的光度立体公式如下:
其中,白板表面像素响应值光源方向l,白板平面法向量/>均为已知参数,kc是相机内参,Elight是光源强度,T是曝光时间,ρwhite是白板反射率;将上式整理可得:
上式左侧为常数,通过计算各光源间的该常数比值,然后进行归一化,得到各光源相对强度因子。
进一步,搭建基于三维卷积的光度立体网络模型具体为包括以下步骤:
3.2.1)设计光度立体网络模型的网络模型输入,输入数据是光度矩阵和光源方向与光源强度的标定矩阵;每一帧光度图像的尺寸为3×W×H,与之对应的光源方向与光源强度标定参数为3×1的向量,其中图像宽度为W,图像高度为H,表述物体的图像像素数p可表示为p=W×H;将光源方向参数、光源方向一维向量按照空间维度复制,生成3×W×H的光源方向图,与对应的光度图像进行拼接,生成6×W×H的矩阵,然后将q张光度图像在空间维度进行拼接,生成(6×q)×W×H的三维矩阵作为模型的输入;
3.2.2)设计光度立体网络模型的初始特征提取模块,对输入的(6×q)×W×H数据矩阵进行卷积操作,获取每一帧的特征图谱,为后续使用三维卷积的提取时空特征做准备;初始特征模块由三维卷积层、激活函数层和Dropout层组成,首先使用6×1×1的三维卷积核对原始矩阵进行卷积操作,卷积核空间维度的大小与单帧光度及光源方向数据矩阵的空间维度相同,用于提取单帧数据的特征;激活函数使用LeakyReLU函数,Dropout层通过随机失活避免模型过拟合;
3.2.3)设计光度立体网络模型的三维特征提取模块,获得各帧光度数据的特征图谱,在三维特征提取模块中分别部署帧间特征提取块和空间特征提取块,来同时分析帧间和空间的光度信息变化规律;帧间特征提取块由的三维卷积层、LeakyReLU激活层和Dropout层构成,三维卷积层的卷积核大小为M×1×1,作用是处理M个相邻帧上单像素的光度变化;空间特征提取块由三维卷积层与LeakyReLU激活层构成;卷积核大小为1×N×N,通过三维卷积层获取局部像素间的强度变化,局部信息能够提升物体表面反射率发生变化时的性能,同时在稀疏光照下具有鲁棒性;
3.2.4)设计光度立体网络模型的法向量估计模块,在法向量估计模块前加入Max-pooling层,将不同维度特征提取模块输出为固定维度的特征图谱,法向量估计模块是在max-pooling操作之后,利用特征图谱进行法向量图的估计;法向量估计模块由两层全连接层构成;
3.2.5)设计光度立体网络模型的损失函数,光度立体网络模型通过减小各点预测法向量与真实法向量的误差进行,法向量本质是单位空间向量,两个单位空间向量的差异可由两向量的角度反映;采用余弦相似度损失函数,公式如下:
其中,H是图片长度,W是图片宽度,i,j表示行数和列数,即第几行和第几列;N表示求得的法向量,N波浪线表示真值法向量。
进一步,步骤4的滑动窗口的初始大小设置为400x400,滑动步长设置为200。
本发明的第二个方面提供一种基于光度立体表面重建的缺陷检测数据集的验证系统,包括以下步骤:
(1)建立验证模型;构建faster-RCNN模型,通过缺陷检测数据集对faster-RCNN模型进行训练,获得验证模型;
(2)通过步骤(1)获得的验证模型对金属零件进行缺陷检测;
2.1)根据金属零件的形貌特征和成像装置的视场大小,将金属零件表面划分为若干区域,将每个区域视为基本检测单位;
2.2)设置六自由度机器人的位姿信息,确定每个区域图像采集时成像装置的位姿;设置光度立体成像装置的参数,确定各区域成像时的打光方案;
2.3)采集每个区域的光度图像,将采集的图像数据输入光度立体视觉算法模型获得法向量图;
2.4)将法向量图输入至缺陷检测模型中获得检测结果;
2.5)单区域的检测完成,移动机器人进入下一区域位置,循环执行,直至遍历完成所有检测区域,检测完成,系统复位。
优选地,所述步骤1中aster-RCNN模型分为特征提取模块、区域生成网络模块、ROIPooling层和目标预测模块四部分;
所述特征提取模块用ResNet-50残差网络进行特征提取,ResNet-50网络中的残差块由卷积核大小依次为1x1、3x3、1x1的三个卷积层构成;
所述区域生成网络模块筛选出可能存在目标的候选区域,该模块的输入是特征提取网络模块获得的特征图;使用锚框机制生成区域,即在每一点按照不同的长宽比例在原图中生成k个矩形框,该矩形框作为最初预测可能存在缺陷的区域;当特征尺寸为m×n时,锚框的数量为m×n×k,取k值为9;在目标检测中将存在目标的区域称为前景,不存在目标的区域称为背景,区域生成网络是在生成的锚框中选出可能为前景的锚框,并对锚框位置进行调整,作为网络预测的候选区域,将候选区域的位置信息输出,提供给后续的目标预测模块进行最终的目标分类和位置回归;
所述ROI Pooling的输入是候选区域的位置信息和前期提取的特征图,将候选区域位置参数映射在特征图上,对应特征图上的矩形区域。将矩形区域内的特征进一步提取,生成固定尺寸7x7大小的特征图,作为该层输出;输出特征图的尺寸设置为7x7;
所述目标预测模块根据ROI Pooling层获取的候选区域的特征图进行目标分类与位置回归,获得图像中的目标信息;目标预测模块将ROI Pooling层获取的候选区域特征图展平处理,连接两个全连接层,然后分别输入到全连接层进行类别预测和位置预测。
优选地,在ResNet-50的特征提取网络中加入FPN(Feature Pyramid Networks)结构,输出多个特征,用于后续的区域生成和目标预测;具体为,将ResNet-50各阶段的特征图与由最深层的Feature5上采样,获取与Feature 4、3、2尺寸相同的特征图,然后拼接生成不同尺度的特征输出;各阶段的特征在缺陷检测任务中的作用不同;如Feature 5的尺寸最小,可用于大目标的检测;Feature 2的尺寸最大,可用于小目标的检测。
优选地,所述区域生成网络模块首先通过卷积核大小为3×3卷积层,然后将特征图分别输入到两个卷积核大小为1×1的卷积层用于目标分类和位置坐标回归;目标类别分类判断预选框的类型,每个锚框使用两个参数表示是否为前景或背景,分类特征提取卷积层的卷积核个数为2k;位置坐标回归获得用于锚框调整的偏移量,每个锚框使用4个参数确定矩形框的位置及大小,位置坐标特征提取卷积层的卷积核个数为4k;通过目标分类和位置回归得到经过位置调整且类别为前景的候选区域;在模型训练阶段需要计算区域生成网络损失函数,来优化分类器和回归参数,RPN的损失函数包括分类损失函数和边界回归框损失函数两部分,公式为:
其中,pi表示第i个预测框预测为真实标签的概率;表示预测框真实标签;ti表示预测的第i个预测框边界框回归参数;/>表示第i个预测框对应的真实框的边界框回归参数;Ncls表示所采样的样本个数;Nreg表示预测框位置的个数;λ为平衡参数;
分类损失函数对目标分类卷积层预测的背景与前景参数损失计算,具体计算采用多类别交叉熵损失函数,公式如下:
边界回归损失函数是对预测框位置真实框位置的损失计算,具体计算采用smooth-L1损失函数,公式如下:
本发明的有益效果是:
(1)针对反光金属表面缺陷检测设计了基于光度立体视觉的检测数据集制作方法,能够通过获取多张不同光源条件下的图像,避免由于表面反光造成的信息缺失,光度立体视觉能够获取表面法向量图;基于三维卷积的光度立体重建算法相较于其他主流光度立体重建算法重建精度具有一定提升;
(2)设计了基于光度立体表面重建的缺陷检测数据集的验证系统,通过系统实验对整体方案进行验证,实现了金属表面缺陷的有效识别。
附图说明
图1是不同照明条件下静止的金属物体的图像。(每一行表示在不同方向光下捕获的对象的图像。方框表示缺陷的位置。左:可见缺陷。右:过度曝光或阴影区域的缺陷。)
图2是缺陷检测数据集制作方法的四种类型对象示意图。
图3是缺陷检测数据集制作方法的图像处理流程图。
图4是缺陷检测数据集制作方法的图像处理中间结果图。
图5是缺陷检测数据集制作方法的标定球三视图。
图6是缺陷检测数据集制作方法的光源方向求解图。
图7是光度立体网络模型的整体框架图。
图8光度立体网络模型的输入数据处理示意图。
图9是光度立体网络模型的初始特征提取模块结构图。
图10是光度立体网络模型的三维特征提取块结构图。
图11是光度立体网络模型的三维特征提取模块结构方案。
图12是光度立体网络模型的法向量估计模块结构图。
图13是光度立体网络模型的光度立体合成数据集示意图。
图14是基于滑动窗口思想的数据集制作流程。
图15是Faster RCNN网络结构图。
图16是ResNe-50 FPN结构图。
图17是区域生成网络模块结构图。
图18是ROI Pooling结构图。
图19是目标预测模块结构图。
图20是验证系统的硬件示意图。
附图标记说明:1、六自由度机器;2、光度立体成像装置;3、设备框架。
具体实施方式
下面将结合附图对本发明专利的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,如出现术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,如出现术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,如出现术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
本发明提供一种基于光度立体表面重建的缺陷检测数据集制作方法,包括以下步骤:
(1)选择四种类型的对象生成数据集;所述四种类型包括不锈钢的黄色半球、银色半球、黄色圆锥体和银色圆锥体,每个对象通过模拟生产过程的冲击在其表面上产生缺陷,缺陷的类型包括点状凹坑、变形、划痕和擦伤;
(2)获取多张不同光照条件下的图像;对每个对象依次激励不同位置光源进行打光,获取对象表面区域的一组光度图像;
(3)将拍摄到的光度图像输入到光度立体网络模型中,使用训练完成的光度立体网络模型根据光度图像进行模型推理估计各像素点处的表面法向量,获得对象表面法向量图;
光度立体网络模型包括如下步骤:
3.1)建立采集系统的成像环境模型,对光度立体成像装置进行光源信息标定;光度立体算法需要获取光度立体图像采集装置的光源系统模型,即建立工业相机与LED光源的模型,标定光源在相机坐标系中的光源方向,同时由于LED光源的差异,需要对光源强度进行标定,将获取的光度图像进行归一化,消除由于LED光源的不同而产生的光度值变化。
3.1.1)光源方向标定
光源方向的标定可以利用镜面反射原理,使用镀铬金属球作为标定球,光源产生的入射光线照射在金属球表面,经过金属球表面的反射,光线进入相机,由相机捕捉金属球表面的反射光线,相机采集的图像中金属球表面存在高光点,该点即为反射光线与相机视角方向平行的入射光线发生反射的位置,同时根据球体表面的法线方向为该点与球心连线的方向。根据镜面反射原理,光源入射光线的方向与反射光线的方向相对法线对称,可基于该组向量的关系,推算入射光线的方向。
球面反射点处的法向量、反射光线与入射光线方向向量和都为单位向量。反射光线方向与相机视角方向平行,反射光线方向向量,即视角方向,固定为[0,0,1],球面某一点的法向量为球面上该点的坐标与球心坐标之差。本文通过图像处理求解钢球表面的高光点位置,进而求得该点处的表面法向量,首先获取标定球球心,图像处理流程如图3所示。
对输入图像依次进行梯度计算、形态学处理(腐蚀和膨胀)、连通域分析(删除小面积区域)与Canny边缘检测、利用霍夫变换寻找圆心与半径,并显示在原图上,各个步骤的处理结果如图4所示。
获取标定球的参数圆心坐标(xC,yC)和半径r,处理高光点图像,获取高光点P坐标(xP,yP),进行该点处球面法向量的计算。根据图5所示的标定球三视图可知,高光点相较于圆心的相对坐标为法向量的x和y方向的分量,z方向分量可根据勾股定理计算,N表示为:
现已知反射方向向量和法线方向向量,待求的入射方向向量可由下述方法获取。首先将反射方向向量按照图5进行平移,与法线方向向量延长向量S相交,根据光的反射定律,向量L、R和S形成等腰三角形。入射方向向量L可表示为:
L=R-S (2)
向量S与法向方向向量方向相同,可通过向量R与向量N进行表示:
综合上式,可求得:
L=R-2(R·N)N (4)
3.1.2)光源强度标定
由于实际图像采集系统中,使用的LED光源实际亮度,与安装位置的差异,各光源在视场中的光源强度不同,会对计算过程产生影响。需要对光源强度进行归一化,消除各光源的强度差异。采用的方法是利用标准白板,将标准白板视作理想的朗伯体表面,标准白板的形状为理想平面,各点法向量一致,白板的平面法向量nstd=(0,0,1)T。标定白板的光度立体公式如下:
其中,白板表面像素响应值Istd,光源方向l,白板平面法向量均为已知参数,kc是相机内参,Elight是光源强度,T是曝光时间,ρwhite是白板反射率;将上式整理可得:
上式左侧为常数,通过计算各光源间的该常数比值,然后进行归一化,得到各光源相对强度因子。
3.2)搭建基于三维卷积的光度立体网络模型,使用光度立体合成数据集对模型进行监督训练,至模型在训练数据集上收敛;
基于三维卷积的网络模型包括三个部分:初始特征提取模块、三维特征提取模块和法向量图估计模块。模型的输入是各帧光度图像和光源方向矩阵拼接形成的三维矩阵。初始特征提取模块的作用将每帧的多通道数据矩阵抽象为单通道特征,便于后续帧间特征的提取;三维特征提取模块的作用是从帧间维度与空间维度进行特征提取,然后通过max-pooling操作,将特征图谱的通道数进行标准化,使模型能够处理输入图像数量变化的情况;法向量图估计模块通过全连接层将特征图谱转换为表面法向量,输出法向量图。
3.2.1)网络模型输入设计
假定获取目标物体在不同光源方向下的q张彩色图像,其中,图像宽度为W,图像高度为H,表述物体的图像像素数p可表示为p=W×H。待求解的表面法向量N∈R3×p,q张图像的光源方向L∈R3×q,光度矩阵I∈R3×p×q之间的关系可表示为:
I=Θ·repmat(max(NTL,0),3)(3-1)
其中,Θ∈R3×p×q表示与物体表面法向量,光源方向,视角方向相关的复杂函数。本章通过设计的光度立体网络模型基于光度矩阵I与光源方向矩阵L直接估计法向量矩阵N,无需建立复杂函数Θ的数学模型。
对于输入数据是光度矩阵和光源方向与光源强度的标定矩阵,为了便于模型处理数据,需要对输入数据进行调整。如图8所示,每一帧光度图像的尺寸为3×W×H,与之对应的光源方向与光源强度标定参数为3×1的向量。将光源方向参数将光源方向一维向量按照空间维度复制,生成3×W×H的光源方向图,与对应的光度图像进行拼接,生成6×W×H的矩阵,然后将q张光度图像在空间维度进行拼接,生成(6×q)×W×H的三维矩阵作为模型的输入。
3.2.2)初始特征提取模块设计
初始特征提取模块的作用是对输入的(6×q)×W×H数据矩阵进行卷积操作,获取每一帧的特征图谱,为后续使用三维卷积的提取时空特征做准备。由三维卷积层、激活函数层和Dropout层组成。首先使用6×1×1的三维卷积核对原始矩阵进行卷积操作,卷积核空间维度的大小与单帧光度及光源方向数据矩阵的空间维度相同,用于提取单帧数据的特征。激活函数使用LeakyReLU函数,Dropout层通过随机失活避免模型过拟合。
3.2.3)三维特征提取模块设计
通过初始特征提取模块,获得各帧光度数据的特征图谱,在三维特征提取模块中分别部署帧间特征提取块和空间特征提取块,来同时分析帧间和空间的光度信息变化规律。
帧间特征提取块由的三维卷积层、LeakyReLU激活层和Dropout层构成,如图10a所示。三维卷积层的卷积核大小为M×1×1,作用是处理M个相邻帧上单像素的光度变化,帧间信息在解决由阴影、高光等造成的异常点的问题中具有重要作用。空间特征提取块由三维卷积层与LeakyReLU激活层构成,如图10所示。卷积核大小为1×N×N,通过三维卷积层获取局部像素间的强度变化,局部信息能够提升物体表面反射率发生变化时的性能,同时在稀疏光照下具有鲁棒性。为了在模型复杂度与模型性能中取得平衡,分别部署三个帧间特征提取块与空间特征提取块。
三维特征提取模块中的子模块部署顺序对模型提取特征的能力有较大影响,部署顺序分为三种,如图11所示。第一种方案是首先部署帧间特征提取块,然后部署空间特征提取块;第二种方案是首先部署空间特征提取块,然后部署帧间特征提取块;第三种方案是空间特征提取块与帧间特征提取块混合部署。三种方案的选择,通过实验进行判断。具体的,按照三种方案的网络结构进行模型实现,在相同的数据集中进行训练,表3.1是在DiLiGenT数据集中的测试结果。表3.1网络结构对比试验
方案 | BALL | CAT | POT1 | BEAR | POT2 | BUDD. | GOBL. | READ. | COW | HARV. | Avg. |
方案一 | 2.82 | 5.79 | 6.92 | 5.59 | 7.55 | 6.93 | 7.98 | 11.85 | 7.82 | 14.18 | 7.74 |
方案二 | 2.58 | 6.02 | 6.99 | 6.62 | 8.68 | 7.34 | 9.46 | 13.68 | 8.79 | 15.95 | 8.61 |
方案三 | 2.76 | 5.99 | 7.24 | 6.84 | 7.79 | 7.23 | 8.39 | 11.71 | 8.32 | 14.79 | 8.81 |
根据实验数据可得,方案一的效果最佳。帧间与空间信息对法向量的估计都起到重要作用,但帧间信息对高光或者阴影等异常值是敏感的,在处理非朗伯体物体表面法向量估计问题是提供更多的有用信息。
3.2.4)法向量估计模块设计
在法向量估计模块前,设计了Max-pooling层,聚合不同光源方向数据中提取的最显著特征,使得模型输出固定通道的特征图谱。该环节的作用是能够使模型适用于不同光源数量的数据输入,当光源数量发生变化时,特征提取模块获得的特征图谱与法向量估计模块的输入维度不匹配。当加入Max-pooling层,可以将不同维度特征提取模块输出为固定维度的特征图谱,法向量估计模块是在max-pooling操作之后,利用特征图谱进行法向量图的估计。法向量估计模块由两层全连接层构成。具体结构如图12所示。
3.2.5)损失函数设计
光度立体网络模型的训练是通过减小各点预测法向量与真实法向量的误差进行,法向量本质是单位空间向量,两个单位空间向量的差异可由两向量的角度反映。通常计算两向量的余弦值衡量两个向量在方向上的差异。因此采用余弦相似度损失函数,公式如下:
对比试验结果与分析
模型训练及测试
光度立体模型,基于Pytorch框架实现,硬件平台为GeForce GTX1080Ti,RAM为96GB。具体训练参数设置如表3.2所示。
表3.2训练参数设置
光度立体模型需要使用目标的真实法向量图来监督模型训练。为了获得足够的训练数据,本文使用合成数据集进行模型训练和测试。为了验证模型对真实物体表面法向量的估计能力,使用公开可用的真实物体光度立体数据集。合成数据集为Bloddy数据集与Sculpture数据集,如图13所示,Bloddy数据集使用流体状模型通过不同的成像视角构建数据集,该数据集的特点是物体形状不规则但表面平滑;Sculpture数据集相较于Bloddy数据集,数据包含复杂的法向量分布。两个数据集的样本总量为85212。用于验证的真实物体数据集为DiLiGenT数据集,该数据集包含10个具有复杂材料和各种形状的物体。
3.3)评价指标
光度立体模型的性能通过表面法向量估计精度进行评价,表面法向量估计精度的计算指标为预测法向量与真实法向量间的平均角度误差(mean angular error,MAE)。其计算公式为:
其中,Nk表示预测法向量图中第k像素处的法向量,表示真实法向量图中第k像素处的法向量,K表示法向量图中像素数的总和。MAE值越小表示法向量的估计精度越高。
(4)基于步骤(3)获得的法向量图,构建基于光度立体表面重建的缺陷检测数据集;
4.1)使用Python的标注脚本LabelImg进行缺陷目标区域的矩形框标注;
4.2)将滑动窗口的初始大小设置为400x 400,步长设置为200;
4.3)读取每个图像的注释文件,获取图像中每个缺陷的位置和类别信息,并从图像的左上角开始遍历图像;
4.4)判断该区域内是否存在缺陷目标,如果没有缺陷目标则舍弃该窗口裁切的图像;如果存在缺陷,则将与窗口存在交集的缺陷区域信息进行保存;
4.5)判断步骤(4.4)保存的区域信息是否存在窗口包含不完整缺陷的情况,不存在则将缺陷的位置信息转换至窗口的图像坐标系下,进行保存生成新的标注文件;当存在不完整的缺陷区域时,计算窗口中该缺陷的面积与实际标注缺陷区域面积的比值,通过阈值判断,当比值大于0.75时,调整缺陷的标注信息,以窗口边界作为新的边界,当比值小于0.75时,将该缺陷舍弃,然后将窗口图片进行保存,并生成新的标注文件;完成后获得缺陷样本图像;
经统计,共获得缺陷样本711个,将缺陷样本划分训练集、验证集和测试集,比例为3:1:1。划分完成后各类样本的数量如表4.1所示。
表4.1缺陷样本统计信息
通过基于滑动窗口的数据集制作方法生成数据集标准图像,制作完成后共获得2017张缺陷样本图像,训练集与测试集数据如表4.2所示。
表4.2数据集统计信息
本发明的第二个方面提供一种基于光度立体表面重建的缺陷检测数据集的验证系统,包括以下步骤:
(1)建立验证模型;构建faster-RCNN模型,通过缺陷检测数据集对faster-RCNN模型进行训练,获得验证模型;
(2)通过步骤(1)获得的缺陷检测模型对金属零件进行缺陷检测;
2.1)根据金属零件的形貌特征和成像装置的视场大小,将金属零件表面划分为若干区域,将每个区域视为基本检测单位;
2.2)设置六自由度机器人的位姿信息,确定每个区域图像采集时成像装置的位姿;设置光度立体成像装置的参数,确定各区域成像时的打光方案;
2.3)采集每个区域的光度图像,将采集的图像数据输入光度立体视觉算法模型获得法向量图;
2.4)将法向量图输入至缺陷检测模型中获得检测结果;
2.5)单区域的检测完成,移动机器人进入下一区域位置,循环执行,直至遍历完成所有检测区域,检测完成,系统复位。
Faster RCNN模型分为特征提取模块、区域生成网络模块、ROI Pooling层和目标预测模块四部分;模型的输入为表面法向量图,输出为预测的缺陷类别及位置信息。特征提取模块作为特征提取器获取输入图像的特征图;区域生成网络模块的作用是生成候选区域,按照特征图像素点生成先验框,称为锚框,根据锚框区域特征分为前景与背景,综合类别信息与边界框回归参数,将被预测为前景类别的锚框通过位置修正输出为预测的候选区域;ROI Pooling层的作用是获取候选区域对应的特征图像,并进行标准化,通过Pooling操作将每个候选区域的二维特征图调整为固定尺寸的特征向量输出,目标预测模块根据特征向量进行类别分类和位置回归。
Faster RCNN基准模型使用VGG-16网络模型的前13个卷积层作为特征提取网络,由于在卷积神经网络中激活函数层与卷积层通常组合使用,下文将统称为卷积层。按顺序为两个卷积层、最大池化层、两个卷积层、最大池化层、三个卷积层、最大池化层、三个卷积层、最大池化层和三个卷积层。通过实验发现检测模型的检测效果不理想。本文选择使用ResNet-50残差网络进行特征提取,能够有效提升缺陷检测网络的检测能力。
残差网络通过设计残差结构使网络学习输入与输出的差值,有效解决了深层神经网络的退化问题,减少有效信息的丢失,提高了网络的特征提取能力。残差块是残差网络的设计核心。残差块由多个级联的卷积层和一个shortcut connections组成,深层网络由多个残差块串联构成。残差网络在深度增加时,可通过残差块中的恒等映射和残差映射保证网络性能不会降低。
本发明使用的ResNet-50网络中的残差块由卷积核大小依次为1x1、3x3、1x1的三个卷积层构成;
表5.1特征提取网络具体结构
所述特征提取模块用ResNet-50残差网络进行特征提取,ResNet-50网络中的残差块由卷积核大小依次为1x1、3x3、1x1的三个卷积层构成;在ResNet-50的特征提取网络中加入FPN(Feature Pyramid Networks)结构,输出多个特征,用于后续的区域生成和目标预测;具体为,将ResNet-50各阶段的特征图与由最深层的Feature5上采样,获取与Feature4、3、2尺寸相同的特征图,然后拼接生成不同尺度的特征输出;各阶段的特征在缺陷检测任务中的作用不同;如Feature 5的尺寸最小,可用于大目标的检测;Feature 2的尺寸最大,可用于小目标的检测。
所述区域生成网络模块筛选出可能存在目标的候选区域,该模块的输入是特征提取网络模块获得的特征图;使用锚框机制生成区域,即在每一点按照不同的长宽比例在原图中生成k个矩形框,该矩形框作为最初预测可能存在缺陷的区域;当特征尺寸为m×n时,锚框的数量为m×n×k,取k值为9;在目标检测中将存在目标的区域称为前景,不存在目标的区域称为背景,区域生成网络是在生成的锚框中选出可能为前景的锚框,并对锚框位置进行调整,作为网络预测的候选区域,将候选区域的位置信息输出,提供给后续的目标预测模块进行最终的目标分类和位置回归;
所述ROI Pooling的输入是候选区域的位置信息和前期提取的特征图,将候选区域位置参数映射在特征图上,对应特征图上的矩形区域。将矩形区域内的特征进一步提取,生成固定尺寸7x7大小的特征图,作为该层输出;输出特征图的尺寸设置为7x7;
所述目标预测模块根据ROI Pooling层获取的候选区域的特征图进行目标分类与位置回归,获得图像中的目标信息;目标预测模块将ROI Pooling层获取的候选区域特征图展平处理,连接两个全连接层,然后分别输入到全连接层进行类别预测和位置预测。
所述区域生成网络模块首先通过卷积核大小为3×3卷积层,然后将特征图分别输入到两个卷积核大小为1×1的卷积层用于目标分类和位置坐标回归;目标类别分类判断预选框的类型,每个锚框使用两个参数表示是否为前景或背景,分类特征提取卷积层的卷积核个数为2k;位置坐标回归获得用于锚框调整的偏移量,每个锚框使用4个参数确定矩形框的位置及大小,位置坐标特征提取卷积层的卷积核个数为4k;通过目标分类和位置回归得到经过位置调整且类别为前景的候选区域;在模型训练阶段需要计算区域生成网络损失函数,来优化分类器和回归参数,RPN的损失函数包括分类损失函数和边界回归框损失函数两部分,公式为:
其中,pi表示第i个预测框预测为真实标签的概率;表示预测框真实标签;ti表示预测的第i个预测框边界框回归参数;/>表示第i个预测框对应的真实框的边界框回归参数;Ncls表示所采样的样本个数;Nreg表示预测框位置的个数;λ为平衡参数;
分类损失函数对目标分类卷积层预测的背景与前景参数损失计算,具体计算采用多类别交叉熵损失函数,公式如下:
边界回归损失函数是对预测框位置真实框位置的损失计算,具体计算采用smooth-L1损失函数,公式如下:
本发明所述验证系统的硬件结构参照图20,包括光度立体成像装置、运动执行模块和设备框架;
所述设备框架为矩形框体,矩形框体的上半部分采用不锈钢板封装,矩形框体的内部采用黑色遮光布覆盖,以避免不锈钢板反射光源,影响检测对象的光度信息获取;
所述运动执行模块包括六自由度机器人、控制箱和上位机,六自由度机器人安装在设备框架顶端,六自由度机器人的末端安装有光度立体成像装置;所述六自由度机器人与控制箱电连接,控制箱与上位机通讯连接;所述上位机规划机器人位姿和移动轨迹并将移动指令发送至控制箱;控制箱接收上位机发送的移动指令并控制六自由度机器人移动,使得光度立体成像装置在设计的点位进行图像采集;
所述光度立体成像装置包括LED光源、工业相机、安装框架和树莓派微型电脑,所述安装框架呈“目”字框形,安装框的框边上均布有多个LED光源;安装框的中心位置安装有工业相机,安装框的框边上安装有树莓派微型电脑;所述树莓派微型电脑分别与LED光源和工业相机电连接,树莓派微型电脑与上位机通讯连接;所述上位机向树莓派微型电脑发送图像采集指令,树莓派微型电脑接受图像采集指令并控制LED光源点亮、工业相机拍照,完成图像采集后树莓派微型电脑向上位机发送采集成功指令。
为验证上述验证系统的有效性,从缺陷检测准确率和系统单次检测运行时间两个方面进行实验验证。a
在测试集中选取100个存在缺陷的次品零件,与100个良品零件组成测试样本集。系统对各零件进行分区域检测,当存在缺陷时将系统判定为次品,若运行完成无缺陷则判定为良品,实验结果如表5.1所示。综合计算,系统检测准确率为89.5%。
表5.2
系统在对零件表面检测过程中需要进行各检测区域的遍历,在各检测区域的耗时分为机器人移动时间、成像装置拍照时间和检测算法运行时间。其中检测算法耗时最长,系统单次检测时间由检测算法运行时间决定。检测系统的各项平均耗时与整体耗时实验结果如表5.3所示;
表5.3
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。
Claims (9)
1.基于光度立体表面重建的缺陷检测数据集制作方法,其特征在于,包括以下步骤:
(1)构建缺陷样品集,缺陷样品集由多个样品组成,样品属性包括颜色、材质、形状和缺陷类型,每个样品至少有一个属性与其他样品不同;
(2)对每个对象依次激励不同位置光源进行打光,每个位置光源激励获得一张图像,以至少三张图像形成一组光度图像;
(3)将光度图像输入到光度立体网络模型中,使用训练完成的光度立体网络模型根据光度图像进行模型推理估计各像素点处的表面法向量,获得对象表面法向量图;训练光度立体网络模型包括如下步骤,
3.1)建立采集系统的成像环境模型,对光度立体成像装置进行光源信息标定;
3.2)搭建基于三维卷积的光度立体网络模型,使用光度立体合成数据集对模型进行监督训练,至模型在训练数据集上收敛;其中,光度立体合成数据集为Bloddy数据集与Sculpture数据集,用于验证的真实物体数据集为DiLiGenT数据集;
3.3)设计光度立体网络模型的评价指标,光度立体模型的性能通过表面法向量估计精度进行评价,表面法向量估计精度的计算指标为预测法向量与真实法向量间的平均角度误差;其计算公式为:
其中,Nk表示预测法向量图中第k像素处的法向量,表示真实法向量图中第k像素处的法向量,K表示法向量图中像素数的总和;MAE值越小表示法向量的估计精度越高;
(4)基于步骤(3)获得的法向量图,构建基于光度立体表面重建的缺陷检测数据集;
4.1)使用Python的标注脚本LabelImg进行缺陷目标区域的矩形框标注;
4.2)读取每个图像的注释文件,获取当前图像中每个缺陷的位置和类别信息,设置滑动窗口,从当前图像的左上角开始、以滑动窗口遍历图像;
4.3)判断当前滑动窗口内是否存在缺陷目标,如果没有缺陷目标则舍弃该窗口裁切的图像;如果存在缺陷,则将与滑动窗口存在交集的缺陷区域信息进行保存;
4.4)判断步骤(4.3)保存的区域信息是否存在窗口包含不完整缺陷的情况,不存在则将缺陷的位置信息转换至窗口的图像坐标系下,进行保存生成新的标注文件;当存在不完整的缺陷区域时,计算窗口中该缺陷的面积与实际标注缺陷区域面积的比值,通过阈值判断,当比值大于0.75时,调整缺陷的标注信息,以窗口边界作为新的边界,当比值小于0.75时,将该缺陷舍弃,然后将窗口图片进行保存,并生成新的标注文件;完成后获得缺陷样本图像;
4.5)将步骤4.6)获得的缺陷样本图像划分为训练集、验证集和测试集。
2.如权利要求1所述的基于光度立体表面重建的缺陷检测数据集制作方法,其特征在于:所述缺陷样品集种至少包括四种类型的缺陷样品;所述四种类型包括不锈钢的黄色半球、银色半球、黄色圆锥体和银色圆锥体,每个样品通过模拟生产过程的冲击在其表面上产生缺陷,缺陷的类型至少包括点状凹坑、变形、划痕和擦伤。
3.如权利要求1所述的基于光度立体表面重建的缺陷检测数据集制作方法,其特征在于:对光源标定包括以下步骤:光源方向标定;使用镀铬金属球作为标定球,首先获取标定球球心,通过图像处理求解钢球表面的高光点位置,进而求得该点处的表面法向量;
获取标定球的参数圆心坐标(xC,yC)和半径r,处理高光点图像,获取高光点P坐标(xP,yP),进行该点处球面法向量的计算;根据标定球三视图,高光点相较于圆心的相对坐标为法向量的x和y方向的分量,z方向分量根据勾股定理计算,N表示为:
已知反射方向向量和法线方向向量,待求的入射方向向量可由下述方法获取;
首先将反射方向向量进行平移,与法线方向向量延长向量S相交,根据光的反射定律,向量L、R和S形成等腰三角形;入射方向向量L可表示为:
L=R-S (2)
向量S与法向方向向量方向相同,可通过向量R与向量N进行表示:
综合上式,可求得:
L=R-2(R·N)N (4)
3.1.2)光源强度标定;利用标准白板,将标准白板视作理想的朗伯体表面,标准白板的形状为理想平面,各点法向量一致,白板的平面法向量nstd=(0,0,1)T;标定白板的光度立体公式如下:
其中,白板表面像素响应值Istd,光源方向l,白板平面法向量均为已知参数,kc是相机内参,Elight是光源强度,T是曝光时间,ρwhite是白板反射率;将上式整理可得:
上式左侧为常数,通过计算各光源间的该常数比值,然后进行归一化,得到各光源相对强度因子。
4.如权利要求1所述的基于光度立体表面重建的缺陷检测数据集制作方法,其特征在于:搭建基于三维卷积的光度立体网络模型具体为包括以下步骤:
3.2.1)设计光度立体网络模型的网络模型输入,输入数据是光度矩阵和光源方向与光源强度的标定矩阵;每一帧光度图像的尺寸为3×W×H,与之对应的光源方向与光源强度标定参数为3×1的向量,其中图像宽度为W,图像高度为H,表述物体的图像像素数p可表示为p=W×H;将光源方向参数、光源方向一维向量按照空间维度复制,生成3×W×H的光源方向图,与对应的光度图像进行拼接,生成6×W×H的矩阵,然后将q张光度图像在空间维度进行拼接,生成(6×q)×W×H的三维矩阵作为模型的输入;
3.2.2)设计光度立体网络模型的初始特征提取模块,对输入的(6×q)×W×H数据矩阵进行卷积操作,获取每一帧的特征图谱,为后续使用三维卷积的提取时空特征做准备;初始特征模块由三维卷积层、激活函数层和Dropout层组成,首先使用6×1×1的三维卷积核对原始矩阵进行卷积操作,卷积核空间维度的大小与单帧光度及光源方向数据矩阵的空间维度相同,用于提取单帧数据的特征;激活函数使用LeakyReLU函数,Dropout层通过随机失活避免模型过拟合;
3.2.3)设计光度立体网络模型的三维特征提取模块,获得各帧光度数据的特征图谱,在三维特征提取模块中分别部署帧间特征提取块和空间特征提取块,来同时分析帧间和空间的光度信息变化规律;帧间特征提取块由的三维卷积层、LeakyReLU激活层和Dropout层构成,三维卷积层的卷积核大小为M×1×1,作用是处理M个相邻帧上单像素的光度变化;空间特征提取块由三维卷积层与LeakyReLU激活层构成;卷积核大小为1×N×N,通过三维卷积层获取局部像素间的强度变化,局部信息能够提升物体表面反射率发生变化时的性能,同时在稀疏光照下具有鲁棒性;
3.2.4)设计光度立体网络模型的法向量估计模块,在法向量估计模块前加入Max-pooling层,将不同维度特征提取模块输出为固定维度的特征图谱,法向量估计模块是在max-pooling操作之后,利用特征图谱进行法向量图的估计;法向量估计模块由两层全连接层构成;
3.2.5)设计光度立体网络模型的损失函数,光度立体网络模型通过减小各点预测法向量与真实法向量的误差进行,法向量本质是单位空间向量,两个单位空间向量的差异可由两向量的角度反映;采用余弦相似度损失函数,公式如下:
其中,H是图片长度,W是图片宽度,i,j表示行数和列数,即第几行和第几列;N表示求得的法向量,N波浪线表示真值法向量。
5.如权利要求1所述的基于光度立体表面重建的缺陷检测数据集制作方法,其特征在于:步骤4的滑动窗口的初始大小设置为400x400,滑动步长设置为200。
6.如权利要求1-5任意一项所述的基于光度立体表面重建的缺陷检测数据集制作方法的验证系统,其特征在于:
(1)建立验证模型;构建faster-RCNN模型,通过缺陷检测数据集对faster-RCNN模型进行训练,获得验证模型;
(2)通过步骤(1)获得的验证模型对金属零件进行缺陷检测;
2.1)根据金属零件的形貌特征和成像装置的视场大小,将金属零件表面划分为若干区域,将每个区域视为基本检测单位;
2.2)设置六自由度机器人的位姿信息,确定每个区域图像采集时成像装置的位姿;设置光度立体成像装置的参数,确定各区域成像时的打光方案;
2.3)采集每个区域的光度图像,将采集的图像数据输入光度立体视觉算法模型获得法向量图;
2.4)将法向量图输入至缺陷检测模型中获得检测结果;
2.5)单区域的检测完成,移动机器人进入下一区域位置,循环执行,直至遍历完成所有检测区域,检测完成,系统复位。
7.如权利要求6所述的验证系统,其特征在于,所述步骤1中aster-RCNN模型分为特征提取模块、区域生成网络模块、ROI Pooling层和目标预测模块四部分;
所述特征提取模块用ResNet-50残差网络进行特征提取,ResNet-50网络中的残差块由卷积核大小依次为1x1、3x3、1x1的三个卷积层构成;
所述区域生成网络模块筛选出可能存在目标的候选区域,该模块的输入是特征提取网络模块获得的特征图;使用锚框机制生成区域,即在每一点按照不同的长宽比例在原图中生成k个矩形框,该矩形框作为最初预测可能存在缺陷的区域;当特征尺寸为m×n时,锚框的数量为m×n×k,取k值为9;在目标检测中将存在目标的区域称为前景,不存在目标的区域称为背景,区域生成网络是在生成的锚框中选出可能为前景的锚框,并对锚框位置进行调整,作为网络预测的候选区域,将候选区域的位置信息输出,提供给后续的目标预测模块进行最终的目标分类和位置回归;
所述ROI Pooling的输入是候选区域的位置信息和前期提取的特征图,将候选区域位置参数映射在特征图上,对应特征图上的矩形区域。将矩形区域内的特征进一步提取,生成固定尺寸7x7大小的特征图,作为该层输出;输出特征图的尺寸设置为7x7;
所述目标预测模块根据ROI Pooling层获取的候选区域的特征图进行目标分类与位置回归,获得图像中的目标信息;目标预测模块将ROI Pooling层获取的候选区域特征图展平处理,连接两个全连接层,然后分别输入到全连接层进行类别预测和位置预测。
8.如权利要求7所述的验证系统,其特征在于:在ResNet-50的特征提取网络中加入FPN(Feature Pyramid Networks)结构,输出多个特征,用于后续的区域生成和目标预测;具体为,将ResNet-50各阶段的特征图与由最深层的Feature 5上采样,获取与Feature 4、3、2尺寸相同的特征图,然后拼接生成不同尺度的特征输出;各阶段的特征在缺陷检测任务中的作用不同;如Feature 5的尺寸最小,可用于大目标的检测;Feature 2的尺寸最大,可用于小目标的检测。
9.如权利要求7所述的基于光度立体视觉的金属零件表面缺陷检测方法,其特征在于:所述区域生成网络模块首先通过卷积核大小为3×3卷积层,然后将特征图分别输入到两个卷积核大小为1×1的卷积层用于目标分类和位置坐标回归;目标类别分类判断预选框的类型,每个锚框使用两个参数表示是否为前景或背景,分类特征提取卷积层的卷积核个数为2k;位置坐标回归获得用于锚框调整的偏移量,每个锚框使用4个参数确定矩形框的位置及大小,位置坐标特征提取卷积层的卷积核个数为4k;通过目标分类和位置回归得到经过位置调整且类别为前景的候选区域;在模型训练阶段需要计算区域生成网络损失函数,来优化分类器和回归参数,RPN的损失函数包括分类损失函数和边界回归框损失函数两部分,公式为:
其中,pi表示第i个预测框预测为真实标签的概率;表示预测框真实标签;ti表示预测的第i个预测框边界框回归参数;/>表示第i个预测框对应的真实框的边界框回归参数;Ncls表示所采样的样本个数;Nreg表示预测框位置的个数;λ为平衡参数;
分类损失函数对目标分类卷积层预测的背景与前景参数损失计算,具体计算采用多类别交叉熵损失函数,公式如下:
边界回归损失函数是对预测框位置真实框位置的损失计算,具体计算采用smooth-L1损失函数,公式如下:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211320694.8A CN116543247A (zh) | 2022-10-26 | 2022-10-26 | 基于光度立体表面重建的数据集制作方法及验证系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211320694.8A CN116543247A (zh) | 2022-10-26 | 2022-10-26 | 基于光度立体表面重建的数据集制作方法及验证系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116543247A true CN116543247A (zh) | 2023-08-04 |
Family
ID=87453027
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211320694.8A Pending CN116543247A (zh) | 2022-10-26 | 2022-10-26 | 基于光度立体表面重建的数据集制作方法及验证系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116543247A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117788781A (zh) * | 2024-02-28 | 2024-03-29 | 深圳市易检车服科技有限公司 | 标定物识别方法、装置、电子设备及存储介质 |
CN118032661A (zh) * | 2024-04-15 | 2024-05-14 | 帕西尼感知科技(张家港)有限公司 | 一种物体的缺陷检测、标定方法、装置及系统 |
-
2022
- 2022-10-26 CN CN202211320694.8A patent/CN116543247A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117788781A (zh) * | 2024-02-28 | 2024-03-29 | 深圳市易检车服科技有限公司 | 标定物识别方法、装置、电子设备及存储介质 |
CN117788781B (zh) * | 2024-02-28 | 2024-06-07 | 深圳市易检车服科技有限公司 | 标定物识别方法、装置、电子设备及存储介质 |
CN118032661A (zh) * | 2024-04-15 | 2024-05-14 | 帕西尼感知科技(张家港)有限公司 | 一种物体的缺陷检测、标定方法、装置及系统 |
CN118032661B (zh) * | 2024-04-15 | 2024-06-11 | 帕西尼感知科技(张家港)有限公司 | 一种物体的缺陷检测、标定方法、装置及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111539908B (zh) | 对样本的缺陷检测的方法及其系统 | |
WO2021000524A1 (zh) | 孔位保护门检测方法、装置、计算机设备和存储介质 | |
US11132786B2 (en) | Board defect filtering method based on defect list and circuit layout image and device thereof and computer-readable recording medium | |
CN111507976B (zh) | 基于多角度成像的缺陷检测方法及系统 | |
CN116543247A (zh) | 基于光度立体表面重建的数据集制作方法及验证系统 | |
JP6305171B2 (ja) | シーン内の物体を検出する方法 | |
CN111612737B (zh) | 一种人造板表面瑕疵检测装置及检测方法 | |
CN102184878B (zh) | 一种用于晶圆对准的模板图像质量反馈方法 | |
CN113608378B (zh) | 一种基于lcd制程的全自动缺陷检测方法和系统 | |
CN110517265A (zh) | 一种产品表面缺陷的检测方法、装置及存储介质 | |
CN113362276B (zh) | 板材视觉检测方法及系统 | |
CN116593479B (zh) | 电池盖板外观质量检测方法、装置、设备及存储介质 | |
CN113822882A (zh) | 基于深度学习的电路板表面缺陷检测方法与检测装置 | |
CN116228780A (zh) | 基于计算机视觉的硅片缺陷检测方法及系统 | |
CN110837809A (zh) | 血液自动分析方法、系统、血细胞分析仪及存储介质 | |
CN113176270A (zh) | 一种调光方法、装置及设备 | |
CN117576014A (zh) | 陶瓷基板质量检测方法、系统、电子设备及存储介质 | |
CN116385430A (zh) | 一种机器视觉瑕疵检测方法、装置、介质及设备 | |
CN109064444B (zh) | 基于显著性分析的轨道板病害检测方法 | |
CN113706496A (zh) | 一种基于深度学习模型的飞行器结构裂纹检测方法 | |
CN114120318B (zh) | 一种基于集成决策树的暗场图像目标点精确提取方法 | |
CN112798608B (zh) | 手机摄像头支架内腔侧壁的光学检测装置及光学检测方法 | |
CN212646436U (zh) | 一种人造板表面瑕疵检测装置 | |
CN117706239B (zh) | 一种换流变压器过热故障点预测系统 | |
CN117237353B (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 |