掌桥专利:专业的专利平台
掌桥专利
首页

盲孔板盲孔孔深测量方法及相关装置

文献发布时间:2023-06-19 18:37:28


盲孔板盲孔孔深测量方法及相关装置

技术领域

本发明涉及光学测量中的一般图像数据处理领域,尤其涉及一种盲孔板盲孔孔深测量方法及相关装置。

背景技术

目前半导体印制电路板(Printed Circuit Board,PCB)/高密度互联板(HighDensity Interconnector,HDI)的盲孔板中盲孔检测的主要方式是对盲孔区域进行切片后在打磨机上对切片进行研磨,通过显微镜进行观察,一点一点的磨到盲孔区域,然后在电子显微镜下面进行孔深测量。该方法对PCB/HDI盲孔板具有破坏性、并且耗时长、测量不具备可重复性。

为解决以上问题,提出使用3D视觉检测的方式来替代人工检测,三维信息可以更全面、真实地反映客观物体,并实现如:测量高度、深度、厚度、平面度、翘曲度、磨损划伤等情况。其中,结构光3D测量技术具有非接触、高精度、抗干扰强等特点,近些年在工业自动化和智能制造中发挥着越来越重要的作用,已被广泛应用于半导体行业、手机行业(手机盖板曲面检测、屏幕厚度检测)、五金行业等领域。但是传统的线结构扫描幅面小,面对如PCB/HDI盲孔板大面积物体表面检测存在着效率低下等问题。

如何通过线结构光,实现高效率的PCB/HDI盲孔板孔深测量,来替代人工切片测量是本领域亟待解决的重要问题之一。

发明内容

针对上述问题,本申请实例提供了一种盲孔板盲孔孔深测量方法及相关装置,通过多相机分布式布置,解决了3D相机只能应用于小区域检测无法同时实现整块盲孔板检测的问题,实现多相机的大幅面成像,进而提高了盲孔板检测的检测准确率和检测效率。

为实现上述目的,第一方面,本申请实施例提供了一种盲孔板盲孔孔深测量方法,应用于盲孔板光学检测系统的处理器,盲孔板光学检测系统包括多个3D相机和处理器,该方法包括以下步骤:

通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据;获取目标盲孔板的先验信息,先验信息包括在目标盲孔板资料上的通孔坐标;根据目标盲孔板资料上的通孔坐标确定3D图像数据中的通孔坐标;根据3D图像数据中的通孔坐标确定3D图像数据中的盲孔坐标;根据3D图像数据中的盲孔坐标确定盲孔矩形,获取盲孔矩形范围内的计算点;根据计算点在3D图像数据中的深度信息,计算获得盲孔矩形对应盲孔的深度。

可以看出在本申请实施例中,通过多个3D相机和处理器解决了3D相机只能应用于小区域检测无法同时实现整块盲孔板检测的问题,实现多相机的大幅面成像,进而提高了盲孔板检测系统的检测准确率和检测效率,更全面、真实地观测到目标盲孔板上所有盲孔的物理性质。

结合第一方面,在一种可能的实施例中,通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据,包括:通过多个3D相机在y轴上移动,扫描获得多个线激光条纹图像,其中,多个3D相机在x轴方向顺序排列,y轴为在与盲孔板平行的平面上,与x轴垂直的方向;对多个线激光条纹图像进行y轴方向的拼接,获得目标盲孔板的3D图像数据。

结合第一方面,在一种可能的实施例中,在通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据之前,该方法还包括:多个3D相机在z轴方向等间隔抬升多次并扫描标准平面,得到的标准平面激光条纹图像位置数据和多个3D相机在每次扫描时的高度数据;根据激光条纹图像位置数据和对应的高度数据的对应关系,得到多个3D相机的拉格朗日多项式高度分辨率;多个3D相机在y轴方向扫描目标标定板,得到目标标定板的条纹数据;根据多个3D相机的拉格朗日多项式高度分辨率和目标标定板的条纹数据,得到标定板的3D图像数据;对标定板的3D图像数据进行去噪平滑预处理后,提取预处理后的标定板的3D图像数据中的目标标定板的标定图案;根据灰度重心法,计算出目标标定板的标定图案中心位置;对标定图案中心位置进行拟合,计算得到标定图案中心位置对应的3D相机的拟合参数,拟合参数用于校准3D相机拍摄得到的3D图像数据。

可以看出在本申请实施例中,在获得目标盲孔板的3D图像数据之前,根据标定板的扫描结果对多个3D相机进行标定、校准,以消除多个3D相机的安装位置误差,安装偏移等因素带来的影响,提高了本盲孔板检测系统的检测准确率。

结合第一方面,在一种可能的实施例中,根据目标盲孔板资料上的通孔坐标确定3D图像数据中的通孔坐标,包括:根据目标盲孔板资料上的通孔坐标确定3D图像数据中的理论通孔坐标;按照理论通孔坐标划分通孔坐标区域,对通孔坐标区域进行几何特征提取,获取通孔坐标区域的几何特征;将通孔坐标区域的几何特征与先验通孔几何特征进行匹配,其中,先验通孔几何特征为根据目标盲孔板资料上的通孔坐标确定的;若通孔坐标区域的几何特征与先验通孔几何特征匹配成功,则确定理论通孔坐标为3D图像数据中的通孔坐标。

结合第一方面,在一种可能的实施例中,先验信息还包括目标盲孔板资料上的盲孔坐标,根据3D图像数据中的通孔坐标确定3D图像数据中的盲孔坐标,包括:获取3D图像数据中通孔坐标区域的坐标信息;根据通孔坐标区域的坐标信息计算得到3D图像数据中的通孔中心坐标;获取目标盲孔板资料上的通孔坐标,根据目标盲孔板资料上的通孔坐标计算获得目标盲孔板资料上的通孔中心坐标;根据3D图像数据中的通孔中心坐标和目标盲孔板资料上的通孔中心坐标进行仿射变换,获得仿射变换矩阵;根据仿射变换矩阵,以及目标盲孔板资料上的盲孔坐标,计算获得3D图像数据中的盲孔坐标。

结合第一方面,在一种可能的实施例中,在计算获得3D图像数据中的盲孔坐标之后,该方法还包括:对3D图像数据中的盲孔坐标区域进行几何特征提取,获取盲孔坐标区域的几何特征;将盲孔坐标区域的几何特征与先验盲孔几何特征进行匹配,其中,先验盲孔几何特征为根据目标盲孔板资料上的盲孔坐标确定的;若盲孔坐标区域的几何特征与先验盲孔几何特征匹配成功,则确定3D图像数据中的盲孔坐标为校验精准的3D图像数据中的盲孔坐标;根据3D图像数据中的盲孔坐标确定盲孔矩形,包括:根据校验精准的3D图像数据中的盲孔坐标确定盲孔矩形。

可以看出在本申请实施例中通过先验信息确定更容易定位的目标盲孔板3D图像数据中的通孔坐标区域,并根据通孔坐标区域确定目标盲孔板3D图像数据中的盲孔坐标,最终确定用于计算盲孔深度的盲孔矩形,进而提高了本盲孔板检测系统的检测效率,通过先验信息与通孔坐标区域和盲孔矩形进行比对验证提高了本盲孔板检测系统的精准率。

结合第一方面,在一种可能的实施例中,计算点为多个计算点,根据计算点在3D图像数据中的深度信息,计算获得盲孔矩形对应盲孔的深度,包括:获取多个计算点中每个计算点到盲孔板的板面平面的距离;根据多个计算点到盲孔板的板面平面的距离的平均值,确定盲孔矩形对应盲孔的深度。

结合第一方面,在一种可能的实施例中,在根据多个计算点到盲孔板的板面平面的距离的平均值,确定盲孔矩形对应盲孔的深度之前,该方法还包括:判断计算点到盲孔板的板面平面的距离与所有计算点到盲孔板的板面平面的距离的平均值的数据偏差;若计算点的数据偏差大于第一预设阈值,则删除计算点到盲孔板的板面平面的距离。

可以看出在本申请实施例中,根据多个计算点到盲孔板的板面平面的距离均值来计算对应的目标盲孔板的盲孔孔深,并根据单个计算点到盲孔板的板面平面的距离与所有计算点到盲孔板的板面平面的距离的平均值的数据偏差来排除孤立点,进一步提高了本系统的检测精确度。

第二方面,本申请实施例提供了一种盲孔板盲孔孔深测量装置,应用于盲孔板光学检测系统的处理器,盲孔板光学检测系统包括多个检测相机和处理器,该装置包括:

获取单元:用于通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据;

获取目标盲孔板的先验信息,先验信息包括在目标盲孔板资料上的通孔坐标;

确定单元:用于根据目标盲孔板资料上的通孔坐标确定3D图像数据中的通孔坐标;

根据3D图像数据中的通孔坐标确定3D图像数据中的盲孔坐标;

根据3D图像数据中的盲孔坐标确定盲孔矩形,获取盲孔矩形范围内的计算点;

计算单元:用于根据计算点在3D图像数据中的深度信息,计算获得盲孔矩形对应盲孔的深度。

第三方面,本申请实施例提供了一种电子设备,包括处理器、存储器、通信接口,以及一个或多个程序,一个或多个程序被存储在存储器中,并且被配置由处理器执行,一条或多条指令适于由处理器加载并执行如第一方面的方法的部分或者全部。

第四方面,本申请实施例提供了一种计算机可读存储介质,其存储用于电子数据交换的计算机程序,其中,计算机程序使得计算机执行如第一方面的方法的部分或者全部。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种盲孔板盲孔孔深测量系统的结构示意图;

图2为本申请实施例提供的一种盲孔板盲孔孔深测量方法的流程示意图;

图3为本申请实施例提供的一种目标盲孔板的结构示意图;

图4为本申请实施例提供的一种多个3D相机的结构示意图;

图5A为本申请实施例提供的一种标定板的标准图像示意图;

图5B为本申请实施例提供的一种3D相机拍摄得到的标定板图像的示意图;

图6为本申请实施例提供的一种确定盲孔矩形对应盲孔的深度流程示意图;

图7为本申请实施例提供的一种盲孔板盲孔孔深测量装置的结构示意图;

图8为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

下面结合附图对本申请的实施例进行描述。

传统的盲孔板人工检测效率低且准确率不稳定,而传统的线结构光又有成像幅面小效果差等问题,如何实现高效率的PCB/HDI盲孔板孔深测量,来替代人工切片测量是本领域亟待解决的重要问题之一。

针对上述问题,本申请提出一种盲孔板盲孔孔深测方法及相关装置,有效地解决了单相机高精度测量时,视场范围小的问题,提高了高精度测量大幅面视场成像的成像效果。下面结合附图进行说明。

请参见图1,图1为本申请实施例提供的一种盲孔板盲孔孔深测量系统的结构示意图,该盲孔板盲孔孔深测量系统100包括3D相机101,其中3D相机101还包括光源组件1011和相机组件1012,光源组件1011用于产生光源照射被检测的盲孔板,以使相机组件1012扫描拍摄被检测的目标板;处理器102用于获取3D相机拍摄得到的原始图像,计算得到目标盲孔板的3D图像数据,并分析目标盲孔板的3D图像数据定位目标盲孔计算得到目标盲孔的深度。3D相机101和处理器102都直接连接在PCIE总线上,可以直接进行数据传输和交互。

图2为本申请实施例提供的一种盲孔板盲孔孔深测量方法的流程示意图,如图2所示,包括步骤S201-S206。

S201:通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据。

具体地,请参见图3,图3为本申请实施例提供的一种目标盲孔板的结构示意图,这里的盲孔板是在板面有盲孔的印制电路板(Printed Circuit Board,PCB)或者高密度互联板(High Density Interconnector,HDI),如图所示PCB或者HDI板上的孔一般包括贯穿PCB或HDI的通孔,只存在于表面的盲孔和只存在于板内部的埋孔。本申请实施例中对目标盲孔板的表面进行扫描,以得到目标盲孔板的3D图像数据。

可以看出在本申请实施例中,通过多个3D相机和处理器解决了3D相机只能应用于小区域检测无法同时实现整块盲孔板检测的问题,实现多相机的大幅面成像,进而提高了盲孔板检测系统的检测准确率和检测效率,提高了盲孔板检测系统的检测效率。

结合第一方面,在一种可能的实施例中,通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据,包括:通过多个3D相机在y轴上移动,扫描获得多个线激光条纹图像,其中,多个3D相机在x轴方向顺序排列,y轴为在与盲孔板平行的平面上,与x轴垂直的方向;对多个线激光条纹图像进行y轴方向的拼接,获得目标盲孔板的3D图像数据。

具体地,请参见图4,图4为本申请实施例提供的一种多个3D相机的结构示意图,如图4所示在本申请实施例提供的测量系统中包括多个并排的3D相机,多个3D相机被固定在于测量系统上的同一水平面内并在x轴方向依次排布,扫描置于下方平面的目标盲孔板。在扫描目标盲孔板时多个3D相机向y轴方向移动以使扫描区域历经整个目标盲孔板。

示例性地,这里的处理器可以为图形处理器GPU,多个3D相机与GPU通过高速串行计算机扩展(Peripheral Component Interconnect Express,PCIE)总线连接通讯,多个3D相机得到的图像数据可以直接通过PCIE总线输入GPU中,同时GPU开启多个线程可以同时处理多个3D相机的图像数据以得到最终的盲孔板的3D图像数据。

结合第一方面,在一种可能的实施例中,在通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据之前,该方法还包括:多个3D相机在z轴方向等间隔抬升多次并扫描标准平面,得到的标准平面激光条纹图像位置数据和多个3D相机在每次扫描时的高度数据;根据激光条纹图像位置数据和对应的高度数据的对应关系,得到多个3D相机的拉格朗日多项式高度分辨率;多个3D相机在y轴方向扫描目标标定板,得到目标标定板的条纹数据;根据多个3D相机的拉格朗日多项式高度分辨率和目标标定板的条纹数据,得到标定板的3D图像数据;对标定板的3D图像数据进行去噪平滑预处理后,提取预处理后的标定板的3D图像数据中的目标标定板的标定图案;根据灰度重心法,计算出目标标定板的标定图案中心位置;对标定图案中心位置进行拟合,计算得到标定图案中心位置对应的3D相机的拟合参数,拟合参数用于校准3D相机拍摄得到的3D图像数据。

具体地,请参见图5A,图5A为本申请实施例提供的一种标定板的标准图像示意图,这里的标定板是一种专用于标定3D相机并校准3D相机位置和角度的具有特定图案,及图案的位置、尺寸和形状信息的样板,这里的图案的位置、尺寸和形状信息是类似于先验信息的一种标准信息。在通过多个3D相机扫描目标盲孔板之前,还需要通过具有特定图案,尺寸和形状的标定板进行校准,如图5A所示该标定板的特定图案为多个排列的圆,图中的虚线矩形框的位置为单个3D相机的拍摄区域。通过多个3D相机扫描标定板得到的3D图像数据与标定板的图案的位置、尺寸和形状进行拟合,得到拟合参数来校准3D相机的位置和角度,示例性地,根据多个3D相机中的第一台为中心,相机的排列方向为x轴,相机的扫描移动方向为y轴,相机高度方向为z轴。这里的拟合参数具体可为绕x轴旋转俯仰角,y轴旋转滚转角,绕z轴旋转滚偏航角,x轴偏移量,和y轴偏移量和z轴偏移量等参数,根据上述参数可以消除3D相机的物理位置偏移产生的影响。

示例性地,以单相机为例,在平面高度为P1时,拍摄相机采集标准平面的激光条纹图像,这里的标准平面可以为一种毛玻璃平面,并计算出激光条纹所处的位置Z1,移动平面高度到P2,并计算出激光条纹所处的位置Z2,如此重复改变平面高度至Pn,同时计算出激光条纹所处的位置Zn,其中P1~Pn为系统的高度测量制程。依据在实际标定中确定以下对应关系(Z1,P1),(Z2,P2),...,(Zn,Pn),获得到该相机的拉格朗日多项式高度分辨率。依据相机的拉格朗日多项式高度分辨率,可以对任意的激光条纹所处的位置为Zm求取实际高度Pm。对每个相机进行高度标定的数据采集,求取各自相机的拉格朗日多项式高度分辨率。参见图5B,图5B为本申请实施例提供的一种3D相机拍摄得到的标定板图像的示意图,由于安装误差的影响,标定板处于水平排布的圆,在对目标标定板进行扫描后,相机内的同一排的圆的成像结果产生了倾斜,不同相机中,同一排的圆有错位现象,如图5B所示,其中第一个虚线矩形区域中的标定图像出现了角度的偏移,因此该区域图像对应的3D相机存在物理上的偏移,根据该图像和标准图像可以得到目标相机的拟合参数,以使拍摄目标盲孔板时消除。由于部分3D相机出现了物理上的偏移因此图中对应的部分标定图像产生了形变。根据标定板的标准图像和实际拍摄的产生形变的图像可以得到3D相机的拟合参数,以消除3D相机物理偏移对盲孔板图像成像带来的影响。将目标标定板放置在系统的y轴移动3D相机,然后对其进行扫描获取图像,同时计算机会对相机采集到的激光处于标定板图像进行条纹中心的提取,然后在利用对应相机高度分辨率下拉格朗日多项式求取对应的高度数据。对高度数据进行数字图像的预处理,如去噪、平滑等操作;然后再提取数字图像中特定图案的轮廓,依据轮廓的面积大小和设计图案的面积大小等条件进行数据匹配,进而筛选出实际标定板中设计的图案。在确定标定板设计图案的轮廓后,依据灰度重心法,计算出每个标定板设计图案中心位置(Xi、Yi)。然后对每个相机内求出的图案中心位置进行直线拟合或二次拟合,获得拟合参数,然后通过拟合参数消除相机内倾斜和不同相机的物理位置偏移的影响。

可以看出在本申请实施例中,在获得目标盲孔板的3D图像数据之前,根据标定板的扫描结果对多个3D相机进行标定、校准,以消除多个3D相机的安装位置误差,安装偏移等因素带来的影响,提高了本盲孔板检测系统的检测准确率。

S202:获取目标盲孔板的先验信息,先验信息包括在目标盲孔板资料上的通孔坐标。

具体地,这里的先验信息是目标通孔板的一种标准资料信息,记载了在目标盲孔板资料上的通孔的位置信息,进一步的这里的先验信息可以为一种标准图纸,记录了目标盲孔板的所有信息包括通孔位置信息,相对于通孔的盲孔位置信息等。

S203:根据目标盲孔板资料上的通孔坐标确定3D图像数据中的通孔坐标。

具体地,在计算目标盲孔板资料上的盲孔孔深之前需要确定目标盲孔的位置由于目标盲孔板资料上的盲孔数目大且目标较小,所以需要通过先定位目标盲孔板上更好识别的通孔位置后,根据通孔位置和盲孔位置的对应关系来定位到目标盲孔。

结合第一方面,在一种可能的实施例中,根据目标盲孔板资料上的通孔坐标确定3D图像数据中的通孔坐标,包括:根据目标盲孔板资料上的通孔坐标确定3D图像数据中的理论通孔坐标;按照理论通孔坐标划分通孔坐标区域,对通孔坐标区域进行几何特征提取,获取通孔坐标区域的几何特征;将通孔坐标区域的几何特征与先验通孔几何特征进行匹配,其中,先验通孔几何特征为根据目标盲孔板资料上的通孔坐标确定的;若通孔坐标区域的几何特征与先验通孔几何特征匹配成功,则确定理论通孔坐标为3D图像数据中的通孔坐标。

具体地,这里的目标盲孔板资料上的通孔坐标可以为盲孔板的先验信息,根据预知的目标盲孔板的通孔坐标可以确定在目标盲孔板的3D图像数据中的理论通孔坐标,再根据理论通孔坐标确定3D图像数据中的通孔坐标区域,这里的通孔坐标区域可以为一种矩形或者圆形区域等。同样的先验信息中可以根据通孔坐标得到对应的通孔坐标区域,将先验信息中的通孔坐标区域和3D数据中的通孔坐标区域进行比对验证,可以通过图像算法得到比对结果,当先验信息中的通孔坐标区域和3D数据中的通孔坐标区域的比对相似度达到预设阈值后,即可确定理论通孔坐标为3D图像数据中的通孔坐标并确定通孔坐标区域。

示例性地,在经过标定后的多3D相机对PCB/HDI盲孔板完成扫描获得其3D数据后,根据目标盲孔板有先验信息,得到先验信息图像坐标系下的通孔坐标(XT,YT),首先依据通孔坐标(XT,YT)为中心,选取3D数据中矩形区域的数据图像IM,寻找该数据中通孔的中心。对数据图像IM通过数字图像预处理,如滤波、平滑等;然后再对其进行阈值分割、形态学处理;最后进行轮廓提取,并根据资料中通孔的面积、长宽比等几何特征与提取到的轮廓的面积长宽比等几何特征进行相似度对比,对比合格后,依据截取矩形区域的坐标求取该通孔在目标盲孔板的3D图像数据中的位置(XI,YI)。

S204:根据3D图像数据中的通孔坐标确定3D图像数据中的盲孔坐标。

具体地,根据确定的3D图像数据中的通孔坐标和先验信息中的通孔坐标和盲孔坐标的对应关系可以确定3D图像数据中的盲孔坐标。

结合第一方面,在一种可能的实施例中,先验信息还包括目标盲孔板资料上的盲孔坐标,根据3D图像数据中的通孔坐标确定3D图像数据中的盲孔坐标,包括:获取3D图像数据中通孔坐标区域的坐标信息;根据通孔坐标区域的坐标信息计算得到3D图像数据中的通孔中心坐标;获取目标盲孔板资料上的通孔坐标,根据目标盲孔板资料上的通孔坐标计算获得目标盲孔板资料上的通孔中心坐标;根据3D图像数据中的通孔中心坐标和目标盲孔板资料上的通孔中心坐标进行仿射变换,获得仿射变换矩阵;根据仿射变换矩阵,以及目标盲孔板资料上的盲孔坐标,计算获得3D图像数据中的盲孔坐标。

具体地,目标盲孔板的先验信息中还包括盲孔坐标,这里的盲孔坐标可以为盲孔与通孔的一种相对位置,根据已经得到的通孔坐标和目标盲孔板的先验信息中的盲孔坐标,可以通过已经确定的通孔位置来进一步通过仿射变换得到3D图像数据中的盲孔坐标。

示例性地,根据所有盲孔板先验信息中的通孔坐标(XT,YT)对应的盲孔板3D图像数据中的通孔坐标(XI,YI),进行仿射变换,求取仿射变换矩阵。依据求取的仿射矩阵,和先验信息中盲孔的位置坐标(XM,YM)。可以获取盲孔在目标盲孔板3D图像数据中的位置(Xm,Ym)。

结合第一方面,在一种可能的实施例中,在计算获得3D图像数据中的盲孔坐标之后,该方法还包括:对3D图像数据中的盲孔坐标区域进行几何特征提取,获取盲孔坐标区域的几何特征;将盲孔坐标区域的几何特征与先验盲孔几何特征进行匹配,其中,先验盲孔几何特征为根据目标盲孔板资料上的盲孔坐标确定的;若盲孔坐标区域的几何特征与先验盲孔几何特征匹配成功,则确定3D图像数据中的盲孔坐标为校验精准的3D图像数据中的盲孔坐标;根据3D图像数据中的盲孔坐标确定盲孔矩形,包括:根据校验精准的3D图像数据中的盲孔坐标确定盲孔矩形。

具体地,通过仿射矩阵求取到的盲孔位置(Xm,Ym)还可能与真实盲孔位置存在波动误差,如果不能准确定位到盲孔的孔洞中心,后续孔深计算将产生计算错误。因此需要根据先验信息对3D图像数据中的盲孔坐标进行验证,以仿射变换求取盲孔位置(Xm,Ym)截取矩形区域。这里的矩形区域可以通过盲孔位置(Xm,Ym)和先验信息中的盲孔半径确定一个矩形区域或者圆心区域等。先验信息中还包括盲孔的孔径、孔深范围和其他盲孔的相对位置等特征信息,依据先验信息中的盲孔特征信息,对数据的不同区域进行特征提取、然后与先验知识进行数据匹配与筛选,完成盲孔孔洞计算孔深的位置确定。

可以看出在本申请实施例中通过先验信息确定更容易定位的目标盲孔板3D图像数据中的通孔坐标区域,并根据通孔坐标区域确定目标盲孔板3D图像数据中的盲孔坐标,最终确定用于计算盲孔深度的盲孔矩形,进而提高了本盲孔板检测系统的检测效率,通过先验信息与通孔坐标区域和盲孔矩形进行比对验证提高了本盲孔板检测系统的精准率。

S205:根据3D图像数据中的盲孔坐标确定盲孔矩形,获取盲孔矩形范围内的计算点。

具体的,得到目标盲孔板的盲孔坐标后,根据盲孔坐标获取盲孔矩形范围,盲孔矩形范围中包括盲孔的多个计算点,这里的计算点用于获取多个盲孔的深度信息,以求取均值得到盲孔孔深。

S206:根据计算点在所述3D图像数据中的深度信息,计算获得盲孔矩形对应盲孔的深度。

具体地,根据盲孔坐标确定盲孔矩形中的多个计算点,再根据确定盲孔矩形中的多个计算点确定多个计算点在3D图像数据中的深度信息,计算均值可以得到盲孔矩形对应的盲孔孔深。

结合第一方面,在一种可能的实施例中,计算点为多个计算点,根据计算点在3D图像数据中的深度信息,计算获得盲孔矩形对应盲孔的深度,包括:获取多个计算点中每个计算点到盲孔板的板面平面的距离;根据多个计算点到盲孔板的板面平面的距离的平均值,确定盲孔矩形对应盲孔的深度。

具体地,3D图像数据中的盲孔坐标得到目标盲孔的盲孔矩形区域,在根据盲孔矩形区域对目标盲孔孔深进行计算之前,还可以对盲孔矩形区域进行校准,计算其平面拟合函数,在依据这个函数和拟合参数对盲孔矩形区域进行修正。修正后,根据目标盲孔板的3D图像数据获取多个计算点中每个计算点到盲孔板的板面平面的距离,计算上述多个计算点中每个计算点到盲孔板的板面平面的距离的均值得到目标盲孔板的孔深。

结合第一方面,在一种可能的实施例中,在根据多个计算点到盲孔板的板面平面的距离的平均值,确定盲孔矩形对应盲孔的深度之前,该方法还包括:判断计算点到盲孔板的板面平面的距离与所有计算点到盲孔板的板面平面的距离的平均值的数据偏差;若计算点的数据偏差大于第一预设阈值,则删除计算点到盲孔板的板面平面的距离。

具体地,根据盲孔计算区域进行每个计算点到盲孔板的板面平面的距离计算之前。首先进行孤立点的处理,通过判断该点与周围点的数据偏差,如绝对差、梯度等,如果偏差过大则不计入每个计算点到盲孔板的板面平面的距离。剔除完孤立点后,计算将剩余的计算点到板面平面的距离的平均值作为该盲孔的孔深,完成对该盲孔的孔深计算。

可以看出在本申请实施例中,根据多个计算点到盲孔板的板面平面的距离均值来计算对应的目标盲孔板的盲孔孔深,并根据单个计算点到盲孔板的板面平面的距离与所有计算点到盲孔板的板面平面的距离的平均值的数据偏差来排除孤立点,进一步提高了本系统的检测精确度。

在一种可能的实施例中,在根据多个计算点到盲孔板的板面平面的距离的平均值,确定盲孔矩形对应盲孔的深度之前,该方法还包括:

获取先验信息中目标盲孔矩形对应的目标盲孔孔深预设范围,计算数据偏差大于第一预设阈值的计算点数量;数据偏差大于第一预设阈值的计算点数量大于第二预设阈值,则将3D数据中的盲孔矩形与先验信息中的盲孔矩形进行相似度比对;若先验信息中的盲孔矩形与3D数据中的盲孔矩形的相似度大于第三预设阈值,则排除数据偏差大于第一预设阈值的计算点后确定盲孔矩形对应盲孔的深度;若先验信息中的盲孔矩形与3D数据中的盲孔矩形的相似度不大于第一预设阈值,则不排除数据偏差大于第一预设阈值的计算点后确定盲孔矩形对应盲孔的深度。

具体地,请参见图6,图6为本申请实施例提供的一种确定盲孔矩形对应盲孔的深度流程示意图,这里的第一预设阈值是指,允许计算点的深度数据与所有计算点的平均均值的差距,若计算点的深度数据与所有计算点的平均均值的差距大于第一预设阈值,则证明该计算点的数据属于噪音数据。第二预设阈值是指当噪音数据较多,超过了第二预设阈值则证明所有计算点的平均均值的差距大于第一预设阈值的计算点数量较多,目标盲孔可能有部分区域存在凹陷、气泡等问题。这里的第三预设阈值表示,将目标盲孔矩形与先验信息中的盲孔矩形进行进一步地比对,如果相似度达到了第三预设阈值则表示盲孔矩形与先验信息中的盲孔矩形的匹配度达到了要求,数据偏差为噪音数据。相似度未达到了第三预设阈值则表示盲孔矩形与先验信息中的盲孔矩形的匹配度未达到了要求,数据偏差不为噪音数据。第三预设阈值对相似度的要求高于上述实施例几何特征匹配的要求。判断目标盲孔区域内的计算点得到的孔深是否超过预设的标准范围来判断目标盲孔是否合格。这里的目标盲孔区域对应唯一一个目标盲孔。在本申请实施例中通过获取多个计算点在3D图像数据中的深度求均值得到目标盲孔的孔深,当这些计算点中出现单个计算点的数据与其他计算点的数据差距较大的情况时,可以认定该单个数据为多个计算点数据中的噪音数据,噪音数据是在数据采集的时候,由于系统波动,算法波动等情况造成的,将噪音数据排除后才能计算得到准确的目标孔深。但当疑似噪音数据点不止一个,且噪音数据超过了盲孔孔深预设范围时,则上述多个疑似噪音数据则可能是不是波动产生的噪音数据,而是目标盲孔的真实数据,进而根据多个计算点到盲孔板的板面平面的距离的平均值确定目标盲孔的孔深。将3D图像数据中的目标盲孔区域与先验信息中的盲孔区域进行比对,根据比对精准度更高的第三阈值来判断3D图像数据中的目标盲孔区域是否满足先验信息中的盲孔区域,若比对结果大于第三阈值,那么可以确定为正常盲孔,则可以确定数据差距较大的多个计算点数据为噪音。将噪音数据排除后正常计算目标盲孔孔深。若比对结果小于第三阈值,在认为数据差距较大的多个计算点数据不为噪音,直接计算目标盲孔孔深,进一步判断目标盲孔是否符合制造规范。

可以看出在本申请实施例中,根据目标盲孔区域中的多个计算点的深度数据是否在盲孔孔深预设范围内的计算点数量判断是否需要重新匹配新的孔深预设范围,根据重新匹配的结果确定是对目标盲孔区域选取新的孔深预设范围还是标记为不合格盲孔提高了盲孔板的盲孔测量系统的精确度和测量效率。

通过实施本申请实施例的方法,通过PCIE总线连接通讯的多个3D相机和图形处理器GPU,获取多个3D相机拍摄得到的原始图像,GPU将多个原始图像合成为目标盲孔板的3D图像数据,通过目标盲孔板的先验信息和3D图像数据确定目标盲孔板的盲孔矩形,根据盲孔矩形中的多个计算点排除孤立点计算均值得到目标盲孔板的盲孔孔深。从而解决了3D相机只能应用于小区域检测无法同时实现整块盲孔板检测的问题,实现多相机的大幅面成像,进而提高了盲孔板检测系统的检测准确率和检测效率,更全面、真实地观测到目标盲孔板资料上所有盲孔的物理性质。

基于上述配置方法实施例的描述,本申请还提供一种盲孔板盲孔孔深测量装置700,该盲孔板盲孔孔深测量装置700可以是运行于终端中的一个计算机程序(包括程序代码)。该盲孔板盲孔孔深测量装置700可以执行图1、图2所示的方法。请参见图7,图7为本申请实施例提供的一种盲孔板盲孔孔深测量装置的结构示意图,该装置包括:

获取单元701:用于通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据;

获取目标盲孔板的先验信息,先验信息包括在目标盲孔板资料上的通孔坐标;

确定单元702:用于根据目标盲孔板资料上的通孔坐标确定3D图像数据中的通孔坐标;

根据3D图像数据中的通孔坐标确定3D图像数据中的盲孔坐标;

根据3D图像数据中的盲孔坐标确定盲孔矩形,获取盲孔矩形范围内的计算点;

计算单元703:用于根据计算点在3D图像数据中的深度信息,计算获得盲孔矩形对应盲孔的深度。

在一种可能的实施例中,通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据方面,获取单元701还具体用于:通过多个3D相机在y轴上移动,扫描获得多个线激光条纹图像,其中,多个3D相机在x轴方向顺序排列,y轴为在与盲孔板平行的平面上,与x轴垂直的方向;对多个线激光条纹图像进行y轴方向的拼接,获得目标盲孔板的3D图像数据。

在一种可能的实施例中,在通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据之前,获取单元701还具体用于:多个3D相机在z轴方向等间隔抬升多次扫描标准平面得到的标准平面激光条纹图像位置数据,和多个3D相机在每次扫描时的高度数据;根据激光条纹图像位置数据和对应的高度数据的对应关系,得到多个3D相机的拉格朗日多项式高度分辨率;多个3D相机在y轴方向扫描目标标定板,得到目标标定板的条纹数据;根据多个3D相机的拉格朗日多项式高度分辨率和目标标定板的条纹数据,得到标定板的3D图像数据;对标定板的3D图像数据进行去噪平滑预处理后,提取预处理后的标定板的3D图像数据中的目标标定板的标定图案;根据灰度重心法,计算出目标标定板的标定图案中心位置;对标定图案中心位置进行拟合,计算得到标定图案中心位置对应的3D相机的拟合参数,拟合参数用于校准3D相机拍摄得到的3D图像数据。

在一种可能的实施例中,在根据目标盲孔板资料上的通孔坐标确定3D图像数据中的通孔坐标方面,获取单元701还具体用于:根据目标盲孔板资料上的通孔坐标确定3D图像数据中的理论通孔坐标;按照理论通孔坐标划分通孔坐标区域,对通孔坐标区域进行几何特征提取,获取通孔坐标区域的几何特征;将通孔坐标区域的几何特征与先验通孔几何特征进行匹配,其中,先验通孔几何特征为根据目标盲孔板资料上的通孔坐标确定的;若通孔坐标区域的几何特征与先验通孔几何特征匹配成功,则确定理论通孔坐标为3D图像数据中的通孔坐标。

在一种可能的实施例中,先验信息还包括目标盲孔板资料上的盲孔坐标,在根据3D图像数据中的通孔坐标确定3D图像数据中的盲孔坐标方面,确定单元702还具体用于:获取3D图像数据中通孔坐标区域的坐标信息;根据通孔坐标区域的坐标信息计算得到3D图像数据中的通孔中心坐标;获取目标盲孔板资料上的通孔坐标,根据目标盲孔板资料上的通孔坐标计算获得目标盲孔板资料上的通孔中心坐标;根据3D图像数据中的通孔中心坐标和目标盲孔板资料上的通孔中心坐标进行仿射变换,获得仿射变换矩阵;根据仿射变换矩阵,以及目标盲孔板资料上的盲孔坐标,计算获得3D图像数据中的盲孔坐标。

在一种可能的实施例中,在计算获得3D图像数据中的盲孔坐标之后,确定单元702还具体用于:对3D图像数据中的盲孔坐标区域进行几何特征提取,获取盲孔坐标区域的几何特征;将盲孔坐标区域的几何特征与先验盲孔几何特征进行匹配,其中,先验盲孔几何特征为根据目标盲孔板资料上的盲孔坐标确定的;若盲孔坐标区域的几何特征与先验盲孔几何特征匹配成功,则确定3D图像数据中的盲孔坐标为校验精准的3D图像数据中的盲孔坐标;根据3D图像数据中的盲孔坐标确定盲孔矩形,包括:根据校验精准的3D图像数据中的盲孔坐标确定盲孔矩形。

在一种可能的实施例中,在计算点为多个计算点,根据计算点在3D图像数据中的深度信息,计算获得盲孔矩形对应盲孔的深度方面,计算单元703还具体用于:获取多个计算点中每个计算点到盲孔板的板面平面的距离;根据多个计算点到盲孔板的板面平面的距离的平均值,确定盲孔矩形对应盲孔的深度。

在一种可能的实施例中,在根据多个计算点到盲孔板的板面平面的距离的平均值,确定盲孔矩形对应盲孔的深度之前,计算单元703还具体用于:判断计算点到盲孔板的板面平面的距离与所有计算点到盲孔板的板面平面的距离的平均值的数据偏差;若计算点的数据偏差大于第一预设阈值,则删除计算点到盲孔板的板面平面的距离。

需要说明的是,上述各单元(获取单元701、确定单元702和计算单元703)用于执行上述方法的相关步骤。比如获取单元701用于执行步骤S201的相关内容,确定单元702用于执行S203的相关内容。

基于上述方法实施例和装置实施例的描述,请参见图8,图8为本申请实施例提供的一种电子设备的结构示意图,本实施例中所描述的电子设备800,如图8所示,该电子设备800包括处理器801、存储器802、通信接口803以及一个或多个程序,处理器801可以是通用中央处理器(CPU),微处理器,特定应用集成电路(application-specific integratedcircuit,ASIC),或一个或多个用于控制以上方案程序执行的集成电路。存储器802可以是只读存储器(Read-Only Memory,ROM) 或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM) 或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically ErasableProgrammable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器802可以是独立存在,通过总线与处理器801相连接。存储器802也可以和处理器801集成在一起。通信接口803,用于与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(Wireless Local Area Networks,WLAN)等。上述一个或多个程序通过程序代码的形式被存储在上述存储器中,并且被配置由上述处理器执行,本申请实施例中,上述程序包括用于执行以下步骤的指令:

通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据;获取目标盲孔板的先验信息,先验信息包括在目标盲孔板资料上的通孔坐标;根据目标盲孔板资料上的通孔坐标确定3D图像数据中的通孔坐标;根据3D图像数据中的通孔坐标确定3D图像数据中的盲孔坐标;根据3D图像数据中的盲孔坐标确定盲孔矩形,获取盲孔矩形范围内的计算点;根据计算点在3D图像数据中的深度信息,计算获得盲孔矩形对应盲孔的深度。

在一种可能的实施例中,通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据,包括:通过多个3D相机在y轴上移动,扫描获得多个线激光条纹图像,其中,多个3D相机在x轴方向顺序排列,y轴为在与盲孔板平行的平面上,与x轴垂直的方向;对多个线激光条纹图像进行y轴方向的拼接,获得目标盲孔板的3D图像数据。

在一种可能的实施例中,在通过多个3D相机扫描目标盲孔板,得到目标盲孔板的3D图像数据之前,该方法还包括:多个3D相机在z轴方向等间隔抬升多次扫描标准平面得到的标准平面激光条纹图像位置数据,和多个3D相机在每次扫描时的高度数据;根据激光条纹图像位置数据和对应的高度数据的对应关系,得到多个3D相机的拉格朗日多项式高度分辨率;多个3D相机在y轴方向扫描目标标定板,得到目标标定板的条纹数据;根据多个3D相机的拉格朗日多项式高度分辨率和目标标定板的条纹数据,得到标定板的3D图像数据;对标定板的3D图像数据进行去噪平滑预处理后,提取预处理后的标定板的3D图像数据中的目标标定板的标定图案;根据灰度重心法,计算出目标标定板的标定图案中心位置;对标定图案中心位置进行拟合,计算得到标定图案中心位置对应的3D相机的拟合参数,拟合参数用于校准3D相机拍摄得到的3D图像数据。

在一种可能的实施例中,根据目标盲孔板资料上的通孔坐标确定3D图像数据中的通孔坐标,包括:根据目标盲孔板资料上的通孔坐标确定3D图像数据中的理论通孔坐标;按照理论通孔坐标划分通孔坐标区域,对通孔坐标区域进行几何特征提取,获取通孔坐标区域的几何特征;将通孔坐标区域的几何特征与先验通孔几何特征进行匹配,其中,先验通孔几何特征为根据目标盲孔板资料上的通孔坐标确定的;若通孔坐标区域的几何特征与先验通孔几何特征匹配成功,则确定理论通孔坐标为3D图像数据中的通孔坐标。

在一种可能的实施例中,先验信息还包括目标盲孔板资料上的盲孔坐标,根据3D图像数据中的通孔坐标确定3D图像数据中的盲孔坐标,包括:获取3D图像数据中通孔坐标区域的坐标信息;根据通孔坐标区域的坐标信息计算得到3D图像数据中的通孔中心坐标;获取目标盲孔板资料上的通孔坐标,根据目标盲孔板资料上的通孔坐标计算获得目标盲孔板资料上的通孔中心坐标;根据3D图像数据中的通孔中心坐标和目标盲孔板资料上的通孔中心坐标进行仿射变换,获得仿射变换矩阵;根据仿射变换矩阵,以及目标盲孔板资料上的盲孔坐标,计算获得3D图像数据中的盲孔坐标。

在一种可能的实施例中,在计算获得3D图像数据中的盲孔坐标之后,该方法还包括:对3D图像数据中的盲孔坐标区域进行几何特征提取,获取盲孔坐标区域的几何特征;将盲孔坐标区域的几何特征与先验盲孔几何特征进行匹配,其中,先验盲孔几何特征为根据目标盲孔板资料上的盲孔坐标确定的;若盲孔坐标区域的几何特征与先验盲孔几何特征匹配成功,则确定3D图像数据中的盲孔坐标为校验精准的3D图像数据中的盲孔坐标;根据3D图像数据中的盲孔坐标确定盲孔矩形,包括:根据校验精准的3D图像数据中的盲孔坐标确定盲孔矩形。

在一种可能的实施例中,计算点为多个计算点,根据计算点在3D图像数据中的深度信息,计算获得盲孔矩形对应盲孔的深度,包括:获取多个计算点中每个计算点到盲孔板的板面平面的距离;根据多个计算点到盲孔板的板面平面的距离的平均值,确定盲孔矩形对应盲孔的深度。

在一种可能的实施例中,在根据多个计算点到盲孔板的板面平面的距离的平均值,确定盲孔矩形对应盲孔的深度之前,该方法还包括:判断计算点到盲孔板的板面平面的距离与所有计算点到盲孔板的板面平面的距离的平均值的数据偏差;若计算点的数据偏差大于第一预设阈值,则删除计算点到盲孔板的板面平面的距离。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory ,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。

综上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

技术分类

06120115633135