本申请涉及计算机视觉技术领域,尤其涉及目标对象识别方法、装置、电子设备及计算机可读存储介质。
背景技术:
在芯片封测过程中,部分环节需要将ic芯片放置于芯片托盘的载台中进行相关操作,完成操作后芯片会被取出到下一工位,而托盘会被回收进行再次使用。封测过程中的震动等情况有时会导致芯片脱离载台,以任意的姿态散落在托盘上,无法被取出到下一工位,同时会影响托盘回收使用后续过程,造成不必要的损失。因此需要增加检测工位来判断有无遗漏在托盘上的芯片。
公开号为cn106949848b的现有技术公开了一种高精度激光3d轮廓手机结构件检测方法,包括:步骤1)使用激光测量仪预先扫描一下样品,设定样品的扫描参数,包括激光功率,图像曝光时间,采集范围,采集样品的激光扫描图像样本;步骤2)放置手机结构件到移动工作台上,固定激光测量头在正上方,伺服电机带动工作台托板移动,完成检测,系统在2秒内完成表面轮廓检测,采样次数st=pl/sstep,pl是产品测量长度,sstep是采样步长;步骤3)建立轮廓标准数据模型;步骤4)测量前导入3d模型cad数据,数据由几千到上万个三角面片组成,沿着和扫描方向垂直的路径截取3d模型的切片图等。该方法通过测量关键尺寸,在进行切面关键点与标准工件关键点对比之前,基于灰度图像将测量点云和标准点云进行配准,如果用于托盘上ic芯片的检出,存在配准特征难以选择,计算量较大等问题。
现有技术还包括通过2d相机采集图像,根据2d图像判断有无遗漏在托盘上的芯片,该方法的不足之处是2d相机使用正面或者侧面拍照,图像特征易受光照的影响,产生误测结果。
技术实现要素:
本申请的目的在于提供目标对象识别方法、装置、电子设备及计算机可读存储介质,识别准确率高且计算量小、识别效率高。
本申请的目的采用以下技术方案实现:
第一方面,本申请提供了一种目标对象识别方法,所述方法包括:获取承载件的3d点云数据,所述3d点云数据是3d检测设备检测所述承载件得到的,所述承载件用于承载目标对象,所述承载件的3d点云数据包括多个扫描点在三维坐标系中的坐标数据,所述三维坐标系的三个坐标轴分别记为x轴、y轴和z轴;获取所有扫描点的z轴方向的坐标数据的最小值zmin和最大值zmax;获取包含[zmin,zmax]的预设区间,将所述预设区间划分为n个区间,第i区间是[zimin,zimax],其中,i和n为整数,1≤i≤n,zimin为第i区间的最小值,zimax为第i区间的最大值;针对每个扫描点,根据所述扫描点的坐标数据,计算所述扫描点在第i区间的调整灰度;根据所有扫描点在第i区间的调整灰度,获取所述承载件在第i区间的二维图像数据;根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,所述承载件的识别结果用于指示所述承载件是否承载有所述目标对象。该技术方案的有益效果在于,可以利用3d检测设备获取承载件的3d点云数据,根据多个扫描点在z轴方向的坐标数据,获取预设区间并对预设区间进行划分,得到n个区间,对每个扫描点计算其在第i区间的调整灰度,从而得到承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,现有技术检测承载件上是否有目标对象包括两种方法,一是关键尺寸测量,在进行切面关键点与标准工件关键点对比之前,基于灰度图像将测量点云和标准点云进行配准,该方法存在配准特征难以选择,计算量较大等问题;二是通过2d相机采集图像,该方法的不足之处是2d相机使用正面或者侧面拍照,图像特征易受光照的影响,产生误测结果;本申请的目标对象识别方法是通过3d检测设备扫描得到承载件的3d点云数据,将3d点云数据映射到二维空间,利用计算机视觉技术得到承载件的识别结果,相比现有技术,识别准确率高且计算量小、识别效率高。
在一些可选的实施例中,所述预设区间为[zmin,zmax]。该技术方案的有益效果在于,预设区间可以是包含[zmin,zmax]的长度最小的区间,即为[zmin,zmax],计算量较小。
在一些可选的实施例中,所述针对每个扫描点,根据所述扫描点的坐标数据,计算所述扫描点在第i区间的调整灰度,包括:针对每个扫描点,根据所述扫描点的坐标数据(x,y,z),计算所述扫描点在第i区间的调整灰度fi(x,y),
在一些可选的实施例中,c1=0,c2=255。该技术方案的有益效果在于,c1=0且c2=255时,fi(x,y)的取值范围最大,进一步提高所有扫描点的z轴方向的坐标数据在第i区间上的差异程度。
在一些可选的实施例中,所述根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,包括:根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;根据所述承载件的三维矩阵,检测得到所述承载件的识别结果。该技术方案的有益效果在于,可以根据承载件在n个区间的二维图像数据获取承载件的三维矩阵,通过对三维矩阵进行平移、缩放、旋转等基本变换实现数据处理的高速化,提高数据处理的能力和效率。
在一些可选的实施例中,所述根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,包括:获取训练数据集,所述训练数据集包括多个样本数据,每个所述样本数据包括样本承载件在n个区间的二维图像数据和所述样本承载件的标注数据,所述样本承载件的标注数据包括所述样本承载件的识别结果;根据所述训练数据集,利用神经网络模型进行训练,得到目标识别模型;将所述承载件在n个区间的二维图像数据输入所述目标识别模型,得到所述承载件的识别结果。该技术方案的有益效果在于,可以获取多个样本数据并将其作为训练数据集,根据训练数据集,利用神经网络模型进行训练,得到目标识别模型,一方面,可以通过向目标识别模型输入承载件在n个区间的二维图像数据,得到承载件的识别结果;另一方面,目标识别模型可以由大量的样本数据训练而成,可以识别多种承载件在n个区间的二维图像数据,适用范围广,智能化水平高。
在一些可选的实施例中,所述获取训练数据集,包括:获取多个样本数据并放入训练数据集;针对至少一个样本数据,获取所述样本承载件在n个区间的二维图像数据的调整结果,将所述样本承载件在n个区间的二维图像数据的调整结果和所述样本承载件的标注数据作为新的样本数据,并将所述新的样本数据放入所述训练数据集。该技术方案的有益效果在于,可以获取样本承载件在n个区间的二维图像数据的调整结果,将其放入训练数据集中,大大扩充了训练数据集,增强了目标识别模型的识别能力。
在一些可选的实施例中,所述样本承载件在n个区间的二维图像数据的调整结果是对所述样本承载件在n个区间的二维图像数据的参数进行调整得到的,所述参数包括以下至少一种:亮度;对比度;噪声;饱和度;尺度;角度。该技术方案的有益效果在于,可以通过调整样本承载件在n个区间的二维图像数据的亮度、对比度、噪声、饱和度、尺度、角度等参数,得到样本承载件在n个区间的二维图像数据的调整结果。
在一些可选的实施例中,所述目标识别模型包括输入层、特征提取网络与检测头部网络;所述将所述承载件在n个区间的二维图像数据输入所述目标识别模型,得到所述承载件的识别结果,包括:根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;获取对照承载件在n个区间的二维图像数据,得到尺度为w×h×n的所述对照承载件的三维矩阵,所述对照承载件的尺寸与所述承载件相同且所述对照承载件没有承载所述目标对象;根据所述输入层、所述承载件的三维矩阵和所述对照承载件的三维矩阵,获取复合三维矩阵;将所述复合三维矩阵输入所述特征提取网络,得到特征提取结果;将所述特征提取结果输入所述检测头部网络,得到所述承载件的识别结果。该技术方案的有益效果在于,可以根据承载件的三维矩阵和对照承载件的三维矩阵,利用输入层获取复合三维矩阵,将复合三维矩阵输入特征提取网络,得到特征提取结果,将特征提取结果输入检测头部网络,检测承载件与对照承载件的匹配程度,从而得到承载件的识别结果。
在一些可选的实施例中,所述根据所述输入层、所述承载件的三维矩阵和所述对照承载件的三维矩阵,获取复合三维矩阵,包括:将所述承载件的三维矩阵与所述对照承载件的三维矩阵在所述输入层中进行拼接,得到尺度为w×h×2n的复合三维矩阵。该技术方案的有益效果在于,可以将承载件的三维矩阵与对照承载件的三维矩阵在输入层中进行z轴方向的拼接,从而得到尺度为w×h×2n的复合三维矩阵。
第二方面,本申请提供了一种目标对象识别装置,所述装置包括:点云数据获取模块,用于获取承载件的3d点云数据,所述3d点云数据是3d检测设备检测所述承载件得到的,所述承载件用于承载目标对象,所述承载件的3d点云数据包括多个扫描点在三维坐标系中的坐标数据,所述三维坐标系的三个坐标轴分别记为x轴、y轴和z轴;最值获取模块,用于获取所有扫描点的z轴方向的坐标数据的最小值zmin和最大值zmax;区间划分模块,用于获取包含[zmin,zmax]的预设区间,将所述预设区间划分为n个区间,第i区间是[zimin,zimax],其中,i和n为整数,1≤i≤n,zimin为第i区间的最小值,zimax为第i区间的最大值;灰度计算模块,用于针对每个扫描点,根据所述扫描点的坐标数据,计算所述扫描点在第i区间的调整灰度;图像数据获取模块,用于根据所有扫描点在第i区间的调整灰度,获取所述承载件在第i区间的二维图像数据;目标识别模块,用于根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,所述承载件的识别结果用于指示所述承载件是否承载有所述目标对象。
在一些可选的实施例中,所述预设区间为[zmin,zmax]。
在一些可选的实施例中,所述灰度计算模块用于针对每个扫描点,根据所述扫描点的坐标数据(x,y,z),计算所述扫描点在第i区间的调整灰度fi(x,y),
在一些可选的实施例中,c1=0,c2=255。
在一些可选的实施例中,所述目标识别模块包括:第一矩阵获取单元,用于根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;目标检测单元,用于根据所述承载件的三维矩阵,检测得到所述承载件的识别结果。
在一些可选的实施例中,所述目标识别模块包括:数据集获取单元,用于获取训练数据集,所述训练数据集包括多个样本数据,每个所述样本数据包括样本承载件在n个区间的二维图像数据和所述样本承载件的标注数据,所述样本承载件的标注数据包括所述样本承载件的识别结果;模型训练单元,用于根据所述训练数据集,利用神经网络模型进行训练,得到目标识别模型;数据输入单元,用于将所述承载件在n个区间的二维图像数据输入所述目标识别模型,得到所述承载件的识别结果。
在一些可选的实施例中,所述数据集获取单元包括:样本获取子单元,用于获取多个样本数据并放入训练数据集;样本整合子单元,用于针对至少一个样本数据,获取所述样本承载件在n个区间的二维图像数据的调整结果,将所述样本承载件在n个区间的二维图像数据的调整结果和所述样本承载件的标注数据作为新的样本数据,并将所述新的样本数据放入所述训练数据集。
在一些可选的实施例中,所述样本承载件在n个区间的二维图像数据的调整结果是对所述样本承载件在n个区间的二维图像数据的参数进行调整得到的,所述参数包括以下至少一种:亮度;对比度;噪声;饱和度;尺寸;角度。
在一些可选的实施例中,所述目标识别模型包括输入层、特征提取网络与检测头部网络;所述目标识别模块包括:第二矩阵获取单元,用于根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;第三矩阵获取单元,用于获取对照承载件在n个区间的二维图像数据,得到尺度为w×h×n的所述对照承载件的三维矩阵,所述对照承载件的尺寸与所述承载件相同且所述对照承载件没有承载所述目标对象;复合矩阵获取单元,用于根据所述输入层、所述承载件的三维矩阵和所述对照承载件的三维矩阵,获取复合三维矩阵;特征提取单元,用于将所述复合三维矩阵输入所述特征提取网络,得到特征提取结果;结果获取单元,用于将所述特征提取结果输入所述检测头部网络,得到所述承载件的识别结果。
在一些可选的实施例中,所述复合矩阵获取单元包括:矩阵拼接子单元,用于将所述承载件的三维矩阵与所述对照承载件的三维矩阵在所述输入层中进行拼接,得到尺度为w×h×2n的复合三维矩阵。
第三方面,本申请提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项方法的步骤。
在一些可选的实施例中,所述电子设备还包括激光传感器,所述激光传感器发射的激光与承载件的承载平面垂直。该技术方案的有益效果在于,激光传感器发射的激光与承载件的承载平面垂直时,发射出的激光能从承载件的承载平面原路反射回激光传感器,从而得到较为准确的检测结果。
第四方面,本申请提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项方法的步骤。
附图说明
下面结合附图和实施例对本申请进一步说明。
图1是本申请实施例提供的一种目标对象识别方法的流程示意图;
图2是本申请实施例提供的一种得到识别结果的流程示意图;
图3是本申请实施例提供的另一种得到识别结果的流程示意图;
图4是本申请实施例提供的一种获取训练数据集的流程示意图;
图5是本申请实施例提供的又一种得到识别结果的流程示意图;
图6是本申请实施例提供的又一种得到识别结果的流程示意图;
图7是本申请实施例提供的一种目标对象识别装置的结构示意图;
图8是本申请实施例提供的一种目标识别模块的结构示意图;
图9是本申请实施例提供的另一种目标识别模块的结构示意图;
图10是本申请实施例提供的一种数据集获取单元的结构示意图;
图11是本申请实施例提供的又一种目标识别模块的结构示意图;
图12是本申请实施例提供的一种复合矩阵获取单元的结构示意图;
图13是本申请实施例提供的一种电子设备的结构框图;
图14是本申请实施例提供的一种用于实现目标对象识别方法的程序产品的结构示意图。
具体实施方式
下面,结合附图以及具体实施方式,对本申请做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
参见图1,本申请实施例提供了一种目标对象识别方法,所述方法包括步骤s101~s106。
步骤s101:获取承载件的3d点云数据,所述3d点云数据是3d检测设备检测所述承载件得到的,所述承载件用于承载目标对象,所述承载件的3d点云数据包括多个扫描点在三维坐标系中的坐标数据,所述三维坐标系的三个坐标轴分别记为x轴、y轴和z轴。具体地,3d检测设备可以是3d激光传感器,例如是3d线激光传感器,承载件可以是芯片托盘,目标对象可以是芯片,例如是ic芯片,z轴方向可以是垂直于水平面的方向,z轴方向还可以是平行于水平面的方向。
在一具体实施方式中,检测工位上固定设置有波长为405nm的3d线激光传感器,运动载台载着芯片托盘沿着垂直于激光线的方向移动,传感器与运动载台的编码器相连,通过设置合适的曝光时间、增益、采样频率等参数,采集芯片托盘的3d点云数据。
步骤s102:获取所有扫描点的z轴方向的坐标数据的最小值zmin和最大值zmax。
步骤s103:获取包含[zmin,zmax]的预设区间,将所述预设区间划分为n个区间,第i区间是[zimin,zimax],其中,i和n为整数,1≤i≤n,zimin为第i区间的最小值,zimax为第i区间的最大值。具体地,所述n个区间可以是[zmin,zmax]以等分或者不等分的划分方式得到的,其中,第i-1区间是[zi-1min,zi-1max],第i 1区间是[zi 1min,zi 1max],zi-1max=zimin,zimax=zi 1min。
在一具体实施方式中,所述预设区间可以为[zmin,zmax]。
由此,预设区间可以是包含[zmin,zmax]的长度最小的区间,即为[zmin,zmax],计算量较小。
步骤s104:针对每个扫描点,根据所述扫描点的坐标数据,计算所述扫描点在第i区间的调整灰度。
在一具体实施方式中,所述步骤s104可以包括针对每个扫描点,根据所述扫描点的坐标数据(x,y,z),计算所述扫描点在第i区间的调整灰度fi(x,y),
由此,可以根据每个扫描点的三维坐标数据(x,y,z),计算得到该扫描点在第i区间的调整灰度fi(x,y),从而将承载件在z轴方向的坐标数据映射到第i区间的c1~c2范围的灰度值数据,得到承载件在第i区间的二维图像数据,利用该方法可以得到所有扫描点的z轴方向的坐标数据在第i区间上的差异程度,提高承载件上目标对象的识别能力,从而提高目标对象的检出率。
在一具体实施方式中,c1=0,c2=255。
此时,
例如,zmin=10,zmax=11,[10,11]分为三个区间,[z1min,z1max]为[10,10.4],[z2min,z2max]为[10.4,10.8],[z3min,z3max]为[10.8,11],x轴、y轴和z轴方向的坐标数据单位均为mm。
现有三个扫描点a(50,20,10.2)、b(12,60,10.7)和c(48,35,10.5)。
a(50,20,10.2)在[10,10.4]的g1(50,20)=0.5,f1(50,20)=127;在[10.4,10.8]的g2(50,20)=-0.5,f2(50,20)=0;在[10.8,11]的g3(50,20)=-3,f3(50,20)=0。
b(12,60,10.7)在[10,10.4]的g1(12,60)=1.75,f1(12,60)=255;在[10.4,10.8]的g2(12,60)=0.75,f2(12,60)=191;在[10.8,11]的g3(12,60)=-0.5,f3(12,60)=0。
c(48,35,10.5)在[10,10.4]的g1(48,35)=1.25,f1(48,35)=255;在[10.4,10.8]的g2(48,35)=0.25,f2(48,35)=63;在[10.8,11]的g3(48,35)=-1.5,f3(48,35)=0。
由此,c1=0且c2=255时,fi(x,y)的取值范围最大,进一步提高所有扫描点的z轴方向的坐标数据在第i区间上的差异程度。
步骤s105:根据所有扫描点在第i区间的调整灰度,获取所述承载件在第i区间的二维图像数据。
步骤s106:根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,所述承载件的识别结果用于指示所述承载件是否承载有所述目标对象。具体地,所述承载件的识别结果可以包括承载件承载有目标对象、承载件没有承载目标对象、目标对象在承载件上的位置、承载件上目标对象的数量、承载件上目标对象的分布情况等。
由此,可以利用3d检测设备获取承载件的3d点云数据,根据多个扫描点在z轴方向的坐标数据,获取预设区间并对预设区间进行划分,得到n个区间,对每个扫描点计算其在第i区间的调整灰度,从而得到承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,现有技术检测承载件上是否有目标对象包括两种方法,一是关键尺寸测量,在进行切面关键点与标准工件关键点对比之前,基于灰度图像将测量点云和标准点云进行配准,该方法存在配准特征难以选择,计算量较大等问题;二是通过2d相机采集图像,该方法的不足之处是2d相机使用正面或者侧面拍照,图像特征易受光照的影响,产生误测结果;本申请实施例的目标对象识别方法是通过3d检测设备扫描得到承载件的3d点云数据,将3d点云数据映射到二维空间,利用计算机视觉技术得到承载件的识别结果,相比现有技术,识别准确率高且计算量小、识别效率高。
参见图2,在一具体实施方式中,所述步骤s106可以包括步骤s201~s202。
步骤s201:根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度。具体地,w可以是所述承载件在n个区间的二维图像数据在x轴方向的长度,h可以是所述承载件在n个区间的二维图像数据在y轴方向的长度。
步骤s202:根据所述承载件的三维矩阵,检测得到所述承载件的识别结果。
由此,可以根据承载件在n个区间的二维图像数据获取承载件的三维矩阵,通过对三维矩阵进行平移、缩放、旋转等基本变换实现数据处理的高速化,提高数据处理的能力和效率。
参见图3,在一具体实施方式中,所述步骤s106可以包括步骤s301~s303。
步骤s301:获取训练数据集,所述训练数据集包括多个样本数据,每个所述样本数据包括样本承载件在n个区间的二维图像数据和所述样本承载件的标注数据,所述样本承载件的标注数据包括所述样本承载件的识别结果。其中,样本承载件在n个区间的二维图像数据的获取方法与所述承载件在n个区间的二维图像数据的获取方法类似,此处不做赘述。
参见图4,在一具体实施方式中,所述步骤s301可以包括步骤s401~s402。
步骤s401:获取多个样本数据并放入训练数据集。
步骤s402:针对至少一个样本数据,获取所述样本承载件在n个区间的二维图像数据的调整结果,将所述样本承载件在n个区间的二维图像数据的调整结果和所述样本承载件的标注数据作为新的样本数据,并将所述新的样本数据放入所述训练数据集。
由此,可以获取样本承载件在n个区间的二维图像数据的调整结果,将其放入训练数据集中,大大扩充了训练数据集,增强了目标识别模型的识别能力。
在一具体实施方式中,所述样本承载件在n个区间的二维图像数据的调整结果可以是对所述样本承载件在n个区间的二维图像数据的参数进行调整得到的,所述参数可以包括以下至少一种:亮度;对比度;噪声;饱和度;尺度;角度。具体地,可以对样本承载件在n个区间的二维图像数据执行调整亮度、调整对比度、增加噪声、增加饱和度、裁剪、旋转、翻转等操作。
由此,可以通过调整样本承载件在n个区间的二维图像数据的亮度、对比度、噪声、饱和度、尺度、角度等参数,得到样本承载件在n个区间的二维图像数据的调整结果。
步骤s302:根据所述训练数据集,利用神经网络模型进行训练,得到目标识别模型。
步骤s303:将所述承载件在n个区间的二维图像数据输入所述目标识别模型,得到所述承载件的识别结果。
由此,可以获取多个样本数据并将其作为训练数据集,根据训练数据集,利用神经网络模型进行训练,得到目标识别模型,一方面,可以通过向目标识别模型输入承载件在n个区间的二维图像数据,得到承载件的识别结果;另一方面,目标识别模型可以由大量的样本数据训练而成,可以识别多种承载件在n个区间的二维图像数据,适用范围广,智能化水平高。
参见图5,在一具体实施方式中,所述目标识别模型可以包括输入层、特征提取网络与检测头部网络;所述步骤s303可以包括步骤s501~s505。
步骤s501:根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度。
步骤s502:获取对照承载件在n个区间的二维图像数据,得到尺度为w×h×n的所述对照承载件的三维矩阵,所述对照承载件的尺寸与所述承载件相同且所述对照承载件没有承载所述目标对象。例如当承载件是托盘时,对照承载件可以是空白托盘。
步骤s503:根据所述输入层、所述承载件的三维矩阵和所述对照承载件的三维矩阵,获取复合三维矩阵。
在一具体实施方式中,所述步骤s503可以包括:将所述承载件的三维矩阵与所述对照承载件的三维矩阵在所述输入层中进行拼接,得到尺度为w×h×2n的复合三维矩阵。
由此,可以将承载件的三维矩阵与对照承载件的三维矩阵在输入层中进行z轴方向的拼接,从而得到尺度为w×h×2n的复合三维矩阵。
步骤s504:将所述复合三维矩阵输入所述特征提取网络,得到特征提取结果。
步骤s505:将所述特征提取结果输入所述检测头部网络,得到所述承载件的识别结果。
由此,可以根据承载件的三维矩阵和对照承载件的三维矩阵,利用输入层获取复合三维矩阵,将复合三维矩阵输入特征提取网络,得到特征提取结果,将特征提取结果输入检测头部网络,检测承载件与对照承载件的匹配程度,从而得到承载件的识别结果。
参见图6,在一具体实施方式中,所述步骤s106可以包括步骤s601~s603。
步骤s601:获取训练数据集,所述训练数据集包括多个样本数据,每个所述样本数据包括样本承载件的三维矩阵和所述样本承载件的标注数据,所述样本承载件的标注数据包括所述样本承载件的识别结果。
步骤s602:根据所述训练数据集,利用神经网络模型进行训练,得到目标识别模型。
步骤s603:将所述承载件的三维矩阵输入所述目标识别模型,得到所述承载件的识别结果。
由此,可以获取多个样本数据并将其作为训练数据集,根据训练数据集,利用神经网络模型进行训练,得到目标识别模型,一方面,可以通过向目标识别模型输入承载件的三维矩阵,得到承载件的识别结果;另一方面,目标识别模型可以由大量的样本数据训练而成,可以识别多种承载件的三维矩阵,适用范围广,智能化水平高。
参见图7,本申请实施例还提供了一种目标对象识别装置,其具体实现方式与上述方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。
所述装置包括:点云数据获取模块101,用于获取承载件的3d点云数据,所述3d点云数据是3d检测设备检测所述承载件得到的,所述承载件用于承载目标对象,所述承载件的3d点云数据包括多个扫描点在三维坐标系中的坐标数据,所述三维坐标系的三个坐标轴分别记为x轴、y轴和z轴;最值获取模块102,用于获取所有扫描点的z轴方向的坐标数据的最小值zmin和最大值zmax;区间划分模块103,用于获取包含[zmin,zmax]的预设区间,将所述预设区间划分为n个区间,第i区间是[zimin,zimax],其中,i和n为整数,1≤i≤n,zimin为第i区间的最小值,zimax为第i区间的最大值;灰度计算模块104,用于针对每个扫描点,根据所述扫描点的坐标数据,计算所述扫描点在第i区间的调整灰度;图像数据获取模块105,用于根据所有扫描点在第i区间的调整灰度,获取所述承载件在第i区间的二维图像数据;目标识别模块106,用于根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,所述承载件的识别结果用于指示所述承载件是否承载有所述目标对象。
在一具体实施方式中,所述预设区间可以为[zmin,zmax]。
在一具体实施方式中,所述灰度计算模块104可以用于针对每个扫描点,根据所述扫描点的坐标数据(x,y,z),计算所述扫描点在第i区间的调整灰度fi(x,y),
在一具体实施方式中,c1=0,c2=255。
参见图8,在一具体实施方式中,所述目标识别模块106可以包括:第一矩阵获取单元1061,可以用于根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;目标检测单元1062,可以用于根据所述承载件的三维矩阵,检测得到所述承载件的识别结果。
参见图9,在一具体实施方式中,所述目标识别模块106可以包括:数据集获取单元1063,可以用于获取训练数据集,所述训练数据集可以包括多个样本数据,每个所述样本数据可以包括样本承载件在n个区间的二维图像数据和所述样本承载件的标注数据,所述样本承载件的标注数据可以包括所述样本承载件的识别结果;模型训练单元1064,可以用于根据所述训练数据集,利用神经网络模型进行训练,得到目标识别模型;数据输入单元1065,可以用于将所述承载件在n个区间的二维图像数据输入所述目标识别模型,得到所述承载件的识别结果。
参见图10,在一具体实施方式中,所述数据集获取单元1063可以包括:样本获取子单元1063a,可以用于获取多个样本数据并放入训练数据集;样本整合子单元1063b,可以用于针对至少一个样本数据,获取所述样本承载件在n个区间的二维图像数据的调整结果,将所述样本承载件在n个区间的二维图像数据的调整结果和所述样本承载件的标注数据作为新的样本数据,并将所述新的样本数据放入所述训练数据集。
在一具体实施方式中,所述样本承载件在n个区间的二维图像数据的调整结果可以是对所述样本承载件在n个区间的二维图像数据的参数进行调整得到的,所述参数可以包括以下至少一种:亮度;对比度;噪声;饱和度;尺寸;角度。
参见图11,在一具体实施方式中,所述目标识别模型可以包括输入层、特征提取网络与检测头部网络;所述目标识别模块106可以包括:第二矩阵获取单元1066,可以用于根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;第三矩阵获取单元1067,可以用于获取对照承载件在n个区间的二维图像数据,得到尺度为w×h×n的所述对照承载件的三维矩阵,所述对照承载件的尺寸与所述承载件相同且所述对照承载件没有承载所述目标对象;复合矩阵获取单元1068,可以用于根据所述输入层、所述承载件的三维矩阵和所述对照承载件的三维矩阵,获取复合三维矩阵;特征提取单元1069,可以用于将所述复合三维矩阵输入所述特征提取网络,得到特征提取结果;结果获取单元1160,可以用于将所述特征提取结果输入所述检测头部网络,得到所述承载件的识别结果。
参见图12,在一具体实施方式中,所述复合矩阵获取单元1068可以包括:矩阵拼接子单元1068a,可以用于将所述承载件的三维矩阵与所述对照承载件的三维矩阵在所述输入层中进行拼接,得到尺度为w×h×2n的复合三维矩阵。
参见图13,本申请实施例还提供了一种电子设备200,电子设备200包括至少一个存储器210、至少一个处理器220以及连接不同平台系统的总线230。
存储器210可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)211和/或高速缓存存储器212,还可以进一步包括只读存储器(rom)213。
其中,存储器210还存储有计算机程序,计算机程序可以被处理器220执行,使得处理器220执行本申请实施例中目标对象识别方法的步骤,其具体实现方式与上述方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。
存储器210还可以包括具有一组程序模块215的程序/实用工具214,这样的程序模块215包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
相应的,处理器220可以执行上述计算机程序,以及可以执行程序/实用工具214。
总线230可以为表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备240例如键盘、指向设备、蓝牙设备等通信,还可与一个或者多个能够与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等)通信。这种通信可以通过输入/输出(i/o)接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储平台等。
在一具体实施方式中,所述电子设备200还可以包括激光传感器(图中未示出),所述激光传感器发射的激光可以与承载件的承载平面垂直。所述承载件的承载平面用于承载目标对象。具体地,激光传感器例如是3d线激光传感器,承载件例如是芯片托盘,目标对象例如是芯片。芯片托盘所承载的芯片的数量可以是一个,也可以是多个。
在一具体实施方式中,检测工位上固定设置有波长为405nm的3d线激光传感器,运动载台载着芯片托盘沿着垂直于激光线的方向移动。
由此,激光传感器发射的激光与承载件的承载平面垂直时,发射出的激光能从承载件的承载平面原路反射回激光传感器,从而得到较为准确的检测结果。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,所述计算机程序被执行时实现本申请实施例中目标对象识别方法的步骤,其具体实现方式与上述方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。
图14示出了本实施例提供的用于实现上述方法的程序产品300,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品300不限于此,在本申请中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。程序产品300可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言诸如java、c 等,还包括常规的过程式程序设计语言诸如c语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本申请从使用目的上,效能上,进步及新颖性等观点进行阐述,已符合专利法所强调的功能增进及使用要件,本申请以上的说明书及说明书附图,仅为本申请的较佳实施例而已,并非以此局限本申请,因此,凡一切与本申请构造,装置,特征等近似、雷同的,即凡依本申请专利申请范围所作的等同替换或修饰等,皆应属本申请的专利申请保护的范围之内。
1.一种目标对象识别方法,其特征在于,所述方法包括:
获取承载件的3d点云数据,所述3d点云数据是3d检测设备检测所述承载件得到的,所述承载件用于承载目标对象,所述承载件的3d点云数据包括多个扫描点在三维坐标系中的坐标数据,所述三维坐标系的三个坐标轴分别记为x轴、y轴和z轴;
获取所有扫描点的z轴方向的坐标数据的最小值zmin和最大值zmax;
获取包含[zmin,zmax]的预设区间,将所述预设区间划分为n个区间,第i区间是[zimin,zimax],其中,i和n为整数,1≤i≤n,zimin为第i区间的最小值,zimax为第i区间的最大值;
针对每个扫描点,根据所述扫描点的坐标数据,计算所述扫描点在第i区间的调整灰度;
根据所有扫描点在第i区间的调整灰度,获取所述承载件在第i区间的二维图像数据;
根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,所述承载件的识别结果用于指示所述承载件是否承载有所述目标对象。
2.根据权利要求1所述的目标对象识别方法,其特征在于,所述预设区间为[zmin,zmax]。
3.根据权利要求1所述的目标对象识别方法,其特征在于,所述针对每个扫描点,根据所述扫描点的坐标数据,计算所述扫描点在第i区间的调整灰度,包括:
针对每个扫描点,根据所述扫描点的坐标数据(x,y,z),计算所述扫描点在第i区间的调整灰度fi(x,y),
4.根据权利要求3所述的目标对象识别方法,其特征在于,c1=0,c2=255。
5.根据权利要求1所述的目标对象识别方法,其特征在于,所述根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,包括:
根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;
根据所述承载件的三维矩阵,检测得到所述承载件的识别结果。
6.根据权利要求1所述的目标对象识别方法,其特征在于,所述根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,包括:
获取训练数据集,所述训练数据集包括多个样本数据,每个所述样本数据包括样本承载件在n个区间的二维图像数据和所述样本承载件的标注数据,所述样本承载件的标注数据包括所述样本承载件的识别结果;
根据所述训练数据集,利用神经网络模型进行训练,得到目标识别模型;
将所述承载件在n个区间的二维图像数据输入所述目标识别模型,得到所述承载件的识别结果。
7.根据权利要求6所述的目标对象识别方法,其特征在于,所述获取训练数据集,包括:
获取多个样本数据并放入训练数据集;
针对至少一个样本数据,获取所述样本承载件在n个区间的二维图像数据的调整结果,将所述样本承载件在n个区间的二维图像数据的调整结果和所述样本承载件的标注数据作为新的样本数据,并将所述新的样本数据放入所述训练数据集。
8.根据权利要求7所述的目标对象识别方法,其特征在于,所述样本承载件在n个区间的二维图像数据的调整结果是对所述样本承载件在n个区间的二维图像数据的参数进行调整得到的,所述参数包括以下至少一种:
亮度;
对比度;
噪声;
饱和度;
尺度;
角度。
9.根据权利要求6所述的目标对象识别方法,其特征在于,所述目标识别模型包括输入层、特征提取网络与检测头部网络;
所述将所述承载件在n个区间的二维图像数据输入所述目标识别模型,得到所述承载件的识别结果,包括:
根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;
获取对照承载件在n个区间的二维图像数据,得到尺度为w×h×n的所述对照承载件的三维矩阵,所述对照承载件的尺寸与所述承载件相同且所述对照承载件没有承载所述目标对象;
根据所述输入层、所述承载件的三维矩阵和所述对照承载件的三维矩阵,获取复合三维矩阵;
将所述复合三维矩阵输入所述特征提取网络,得到特征提取结果;
将所述特征提取结果输入所述检测头部网络,得到所述承载件的识别结果。
10.根据权利要求9所述的目标对象识别方法,其特征在于,所述根据所述输入层、所述承载件的三维矩阵和所述对照承载件的三维矩阵,获取复合三维矩阵,包括:
将所述承载件的三维矩阵与所述对照承载件的三维矩阵在所述输入层中进行拼接,得到尺度为w×h×2n的复合三维矩阵。
11.一种目标对象识别装置,其特征在于,所述装置包括:
点云数据获取模块,用于获取承载件的3d点云数据,所述3d点云数据是3d检测设备检测所述承载件得到的,所述承载件用于承载目标对象,所述承载件的3d点云数据包括多个扫描点在三维坐标系中的坐标数据,所述三维坐标系的三个坐标轴分别记为x轴、y轴和z轴;
最值获取模块,用于获取所有扫描点的z轴方向的坐标数据的最小值zmin和最大值zmax;
区间划分模块,用于获取包含[zmin,zmax]的预设区间,将所述预设区间划分为n个区间,第i区间是[zimin,zimax],其中,i和n为整数,1≤i≤n,zimin为第i区间的最小值,zimax为第i区间的最大值;
灰度计算模块,用于针对每个扫描点,根据所述扫描点的坐标数据,计算所述扫描点在第i区间的调整灰度;
图像数据获取模块,用于根据所有扫描点在第i区间的调整灰度,获取所述承载件在第i区间的二维图像数据;
目标识别模块,用于根据所述承载件在n个区间的二维图像数据,检测得到所述承载件的识别结果,所述承载件的识别结果用于指示所述承载件是否承载有所述目标对象。
12.根据权利要求11所述的目标对象识别装置,其特征在于,所述预设区间为[zmin,zmax]。
13.根据权利要求11所述的目标对象识别装置,其特征在于,所述灰度计算模块用于针对每个扫描点,根据所述扫描点的坐标数据(x,y,z),计算所述扫描点在第i区间的调整灰度fi(x,y),
14.根据权利要求13所述的目标对象识别装置,其特征在于,c1=0,c2=255。
15.根据权利要求11所述的目标对象识别装置,其特征在于,所述目标识别模块包括:
第一矩阵获取单元,用于根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;
目标检测单元,用于根据所述承载件的三维矩阵,检测得到所述承载件的识别结果。
16.根据权利要求11所述的目标对象识别装置,其特征在于,所述目标识别模块包括:
数据集获取单元,用于获取训练数据集,所述训练数据集包括多个样本数据,每个所述样本数据包括样本承载件在n个区间的二维图像数据和所述样本承载件的标注数据,所述样本承载件的标注数据包括所述样本承载件的识别结果;
模型训练单元,用于根据所述训练数据集,利用神经网络模型进行训练,得到目标识别模型;
数据输入单元,用于将所述承载件在n个区间的二维图像数据输入所述目标识别模型,得到所述承载件的识别结果。
17.根据权利要求16所述的目标对象识别装置,其特征在于,所述数据集获取单元包括:
样本获取子单元,用于获取多个样本数据并放入训练数据集;
样本整合子单元,用于针对至少一个样本数据,获取所述样本承载件在n个区间的二维图像数据的调整结果,将所述样本承载件在n个区间的二维图像数据的调整结果和所述样本承载件的标注数据作为新的样本数据,并将所述新的样本数据放入所述训练数据集。
18.根据权利要求17所述的目标对象识别装置,其特征在于,所述样本承载件在n个区间的二维图像数据的调整结果是对所述样本承载件在n个区间的二维图像数据的参数进行调整得到的,所述参数包括以下至少一种:
亮度;
对比度;
噪声;
饱和度;
尺度;
角度。
19.根据权利要求16所述的目标对象识别装置,其特征在于,所述目标识别模型包括输入层、特征提取网络与检测头部网络;
所述目标识别模块包括:
第二矩阵获取单元,用于根据所述承载件在n个区间的二维图像数据,获取所述承载件的三维矩阵,所述承载件的三维矩阵的尺度为w×h×n,其中,w为所述承载件在n个区间的二维图像数据的长度,h为所述承载件在n个区间的二维图像数据的宽度;
第三矩阵获取单元,用于获取对照承载件在n个区间的二维图像数据,得到尺度为w×h×n的所述对照承载件的三维矩阵,所述对照承载件的尺寸与所述承载件相同且所述对照承载件没有承载所述目标对象;
复合矩阵获取单元,用于根据所述输入层、所述承载件的三维矩阵和所述对照承载件的三维矩阵,获取复合三维矩阵;
特征提取单元,用于将所述复合三维矩阵输入所述特征提取网络,得到特征提取结果;
结果获取单元,用于将所述特征提取结果输入所述检测头部网络,得到所述承载件的识别结果。
20.根据权利要求19所述的目标对象识别装置,其特征在于,所述复合矩阵获取单元包括:
矩阵拼接子单元,用于将所述承载件的三维矩阵与所述对照承载件的三维矩阵在所述输入层中进行拼接,得到尺度为w×h×2n的复合三维矩阵。
21.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1-10任一项所述方法的步骤。
22.根据权利要求21所述的电子设备,其特征在于,所述电子设备还包括激光传感器,所述激光传感器发射的激光与承载件的承载平面垂直。
23.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-10任一项所述方法的步骤。
技术总结