一种用于多个被测对象的视觉检测方法及其系统与流程

文档序号:12888141阅读:204来源:国知局
一种用于多个被测对象的视觉检测方法及其系统与流程

本发明涉及视觉检测领域,尤其是一种用于多个被测对象的视觉检测方法及其系统。



背景技术:

参考图1,图1是现有视觉检测方法和本发明获取最佳镜头位置集合的采样示意图,被测对象为pcb板上的孔,现有的视觉检测方法通常为每次相机镜头定位到一个被测对象上方,拍摄被测对象以得到待检测图像,然后对这一个待检测图像进行图像分析,每次只能检测一个被测对象,当上一个被测对象检测完成后再移至下一个被测对象之上,继续拍摄下一个被测对象得到待检测图像,进行图像分析;如此循环直至检测结束。然而,单镜头单对象的检测方式所带来的结果是检测速度过慢;即便在程序实现时使用能提高处理效率的多线程技术,当被测对象过多时,对被测对象的检测也将非常耗时,检测效率仍旧低下。



技术实现要素:

为了解决上述技术问题,本发明的目的是提供一种能提高多个对象视觉检测效率的用于多个被测对象的视觉检测方法,相应地,还提供一种用于多个被测对象的视觉检测系统。

本发明所采用的技术方案是:一种用于多个被测对象的视觉检测方法,包括以下步骤:

s1、获取被测对象位置分布文件,所述被测对象位置分布文件包括多个被测对象的位置信息;

s2、根据被测对象位置分布文件并利用镜头模拟技术获取最佳镜头位置集合,所述最佳镜头位置集合为包含所有被测对象且镜头位置的个数最少的镜头位置集合;

s3、根据所述最佳镜头位置集合获取对应的采样图像集合,并对所述采样图像集合进行处理以获取被测对象的实际位置信息。

进一步地,所述步骤s3包括:

s31、利用路径优化算法获取遍历最佳镜头位置集合中所有最佳镜头位置的最短路径;

s32、根据所述最短路径和最佳镜头位置集合并基于多线程技术获取、处理分析采样图像集合以获取被测对象的实际位置信息。

进一步地,所述路径优化算法为蚁群算法。

进一步地,所述步骤s2包括:

s21、设置模拟镜头框;

s22、控制所述模拟镜头框在被测对象位置分布文件上进行偏移搜索;

s23、根据所述模拟镜头框的位置信息和被测对象位置分布文件获取包含所有被测对象且镜头位置的个数最少的镜头位置集合,即最佳镜头位置集合。

进一步地,所述步骤s32包括:

s321、建立多个处理线程,其中,包括至少一个采样线程和至少一个分析处理线程;

s322、所述采样线程按照所述最短路径控制单个镜头依次获取最佳镜头位置集合对应的采样图像,并将所有采样图像按最短路径的遍历顺序排列成采样图像队列;

s323、所述分析处理线程按照所述最短路径的遍历顺序从所述采样图像队列提取采样图像,并对采样图像进行图像处理以获取其中的被测对象的实际位置信息。

本发明所采用的另一技术方案是:一种用于多个被测对象的视觉检测系统,包括:

被测对象位置分布文件获取单元,用于获取被测对象位置分布文件,所述被测对象位置分布文件包括多个被测对象的位置信息;

最佳镜头位置集合获取单元,用于根据被测对象位置分布文件并利用镜头模拟技术获取最佳镜头位置集合,所述最佳镜头位置集合为包含所有被测对象且镜头位置的个数最少的镜头位置集合;

图像获取与分析单元,根据所述最佳镜头位置集合获取对应的采样图像集合,并对所述采样图像集合进行处理以获取被测对象的实际位置信息。

进一步地,所述图像获取与分析单元包括:

最短路径获取模块,用于利用路径优化算法获取遍历最佳镜头位置集合中所有最佳镜头位置的最短路径;

采样图像集合获取与分析模块,用于根据所述最短路径和最佳镜头位置集合并基于多线程技术获取、处理分析采样图像集合以获取被测对象的实际位置信息。

进一步地,所述路径优化算法为蚁群算法。

进一步地,所述最佳镜头位置集合获取单元包括:

模拟镜头框设置模块,用于设置模拟镜头框;

偏移搜索模块,用于控制所述模拟镜头框在被测对象位置分布文件上进行偏移搜索;

最佳镜头位置集合确定模块,用于根据所述模拟镜头框的位置信息和被测对象位置分布文件获取包含所有被测对象且镜头位置的个数最少的镜头位置集合,即最佳镜头位置集合。

进一步地,所述采样图像集合获取与分析模块包括:

线程建立模块,用于建立多个处理线程,其中,包括至少一个采样线程和至少一个分析处理线程;

采样线程模块,用于按照所述最短路径控制单个镜头依次获取最佳镜头位置集合对应的采样图像,并将所有采样图像按最短路径的遍历顺序排列成采样图像队列;

分析处理线程模块,用于按照所述最短路径的遍历顺序从所述采样图像队列提取采样图像,并对采样图像进行图像处理以获取其中的被测对象的实际位置信息。

本发明的有益效果是:本发明中一种用于多个被测对象的视觉检测方法,根据被测对象位置分布文件并利用镜头模拟技术获取最佳镜头位置集合,最佳镜头位置集合为包含所有被测对象且镜头位置的个数最少的镜头位置集合,减少了实际检测多个被测对象时所需的运动定位次数;再根据最佳镜头位置集合获取对应的采样图像集合,并对采样图像集合进行处理以获取被测对象的实际位置信息,完成多个被测对象的视觉检测,由于运动定位次数减少,针对多个被测对象的视觉检测的效率得以有效提高。另外,一种用于多个被测对象的视觉检测系统,通过最佳镜头位置集合获取单元,实现根据被测对象位置分布文件并利用镜头模拟技术获取最佳镜头位置集合,最佳镜头位置集合为包含所有被测对象且镜头位置的个数最少的镜头位置集合,减少了实际检测多个被测对象时所需的运动定位次数;再通过图像获取与分析单元,实现根据最佳镜头位置集合获取对应的采样图像集合,并对采样图像集合进行处理以获取被测对象的实际位置信息,实现对多个被测对象的视觉检测,由于减少了原本多个检测对象所需的运动定位次数,提高了多个被测对象的视觉检测系统的检测效率。

附图说明

下面结合附图对本发明的具体实施方式作进一步说明:

图1是现有视觉检测方法和本发明获取最佳镜头位置集合的采样示意图;

图2是本发明中一种用于多个被测对象的视觉检测方法的最佳镜头位置集合的一具体实施例示意图;

图3是本发明中一种用于多个被测对象的视觉检测方法中基于多线程技术获取、处理分析采样图像集合的一具体实施例流程图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

一种用于多个被测对象的视觉检测方法,包括以下步骤:

s1、获取被测对象位置分布文件,被测对象位置分布文件包括多个被测对象的位置信息;

s2、根据被测对象位置分布文件并利用镜头模拟技术获取最佳镜头位置集合,最佳镜头位置集合为包含所有被测对象且镜头位置的个数最少的镜头位置集合;

s3、根据最佳镜头位置集合获取对应的采样图像集合,并对采样图像集合进行处理以获取被测对象的实际位置信息。

本发明中一种用于多个被测对象的视觉检测方法,根据被测对象位置分布文件并利用镜头模拟技术获取最佳镜头位置集合,最佳镜头位置集合为包含所有被测对象且镜头位置的个数最少的镜头位置集合,减少了实际检测多个被测对象时所需的运动定位次数;再根据最佳镜头位置集合获取对应的采样图像集合,并对采样图像集合进行处理以获取被测对象的实际位置信息,完成多个被测对象的视觉检测,由于运动定位次数减少,针对多个被测对象的视觉检测的效率得以有效提高。

作为技术方案的进一步改进,步骤s2包括:

s21、设置模拟镜头框;

s22、控制模拟镜头框在被测对象位置分布文件上进行偏移搜索;

s23、根据模拟镜头框的位置信息和被测对象位置分布文件获取包含所有被测对象且镜头位置的个数最少的镜头位置集合,即最佳镜头位置集合。

参考图1,图1是现有视觉检测方法和本发明获取最佳镜头位置集合的采样示意图,本实施例中,以pcb板上的孔位为被测对象,pcb板上设置有20个孔,现有视觉检测方法中,相机镜头以位于镜头中心的被测对象为拍摄主体,20个孔将需要定位20次(每次镜头中心定位到对象上方然后采样分析);而本发明所指的最佳镜头位置集合是通过设置一个模拟镜头框,在被测对象位置分布文件上不断移动模拟镜头框以找到一些镜头位置,这些镜头位置为包含所有被测对象(孔)且镜头位置的个数最少的镜头位置集合,参考图2,图2是本发明中一种用于多个被测对象的视觉检测方法的最佳镜头位置集合的一具体实施例示意图,实际上是通过算法模拟镜头在被测对象位置分布文件上方的位置变化,在这些位置时,相机视场区域(fov)内即模拟镜头框中能容纳的被测对象数量每次都是模拟镜头框能容纳的最多个数,找到这些镜头位置之后,找出包含所有被测对象(孔)且镜头位置的个数最少的镜头位置集合,本实施例中,最佳镜头位置集合为图2中的镜头位置1、2、3、4、5、6和7,则对于20个孔只需要7个镜头位置即可完全包含。通过步骤s2实现镜头优化,减少以后实际检测时的运动定位次数和相机拍照采样次数,从而提高检测效率。

作为技术方案的进一步改进,步骤s3包括:

s31、利用路径优化算法获取遍历最佳镜头位置集合中所有最佳镜头位置的最短路径。具体地,路径优化算法采用蚁群算法;

s32、根据最短路径和最佳镜头位置集合并基于多线程技术获取、处理分析采样图像集合以获取被测对象的实际位置信息。

参考图2,当把最佳镜头位置集合找到后,使用“蚁群算法”把最佳镜头位置集合的镜头位置遍历,找到一条遍历的最短路径:1->4->3->2->6->5->7。则计算机可以控制伺服系统按找到的最短路径依次定位到最佳镜头位置集合中的镜头位置,相机开始采样图像;找到图像采样的最短路径可以减少伺服定位次数,节省采样图像的时间,提高检测效率。

作为技术方案的进一步改进,步骤s32包括:

s321、建立多个处理线程,其中,包括至少一个采样线程和至少一个分析处理线程;

s322、采样线程按照最短路径控制单个镜头依次获取最佳镜头位置集合对应的采样图像,并将所有采样图像按最短路径的遍历顺序排列成采样图像队列;

s323、分析处理线程按照最短路径的遍历顺序从采样图像队列提取采样图像,并对采样图像进行图像处理以获取其中的被测对象的实际位置信息。

通常每个“最佳镜头”内都包含多个被测对象,且目前的计算机多核cpu已经非常普及,使用多线程技术将进一步提高测试分析效率。参考图3,图3是本发明中一种用于多个被测对象的视觉检测方法中基于多线程技术获取、处理分析采样图像集合的一具体实施例流程图,根据所使用的控制计算机的cpu核心数,确定建立多个线程(线程数和cpu核心数相同);多个线程有序地分工合作。本实施例中,多个线程中的一个作为采样线程,剩余线程作为分析处理线程;采样线程负责按最短路径依次驱动镜头到最佳镜头位置集合中的镜头位置采样图像,当确定伺服系统已运动到位,相机开始抓取采样图像,并从一端加入采样图像队列中,并产生图像抓取完成信号,返回继续抓取图像;而分析处理线程等待采样线程的图像抓取完成信号,当接收到采样线程的图像抓取完成信号,则有序地从采样图像队列中的另一端提取出一个采样图像,然后负责分析采样图像中的多个被测对象(被测对象在图像采样时已通过数据结构和采样图像“绑定”,因此分析处理线程只要提取出一个采样图像就能确定哪些被测对象需要检测,当所有的分析处理线程把图像队列中的采样图像清空并分析完成时,即代表了所有的被测对象也已检测完毕)。多线程技术的加入进一步提高了对多个被测对象的视觉检测速度。

具体地,对采样图像进行图像处理时,根据相机镜头的位置可以获取被测对象的实际位置,则根据被测对象位置分布文件中被测对象的位置信息,可以得到被测对象的位置偏差。以pcb板为例,被测对象位置分布文件即pcb板的孔位分布文件,其中除了被测孔之外,还包括定位孔,实物的pcb板上也有对应的定位孔;则根据镜头模拟得到最佳镜头位置集合后,根据实物定位孔的实际位置与被测对象位置分布文件中定位孔的位置偏差,可以映射得到实际的镜头位置集合后,即实际采样图像时的镜头位置已知,则根据实际采样图像时的镜头位置,通过图像处理可以得到实物孔的位置;根据实物孔的位置和pcb板的孔位分布文件上的孔的位置,可以得到孔位的位置误差。

一种用于多个被测对象的视觉检测系统,包括:

被测对象位置分布文件获取单元,用于获取被测对象位置分布文件,被测对象位置分布文件包括多个被测对象的位置信息;

最佳镜头位置集合获取单元,用于根据被测对象位置分布文件并利用镜头模拟技术获取最佳镜头位置集合,最佳镜头位置集合为包含所有被测对象且镜头位置的个数最少的镜头位置集合;

图像获取与分析单元,根据最佳镜头位置集合获取对应的采样图像集合,并对采样图像集合进行处理以获取被测对象的实际位置信息。

一种用于多个被测对象的视觉检测系统,通过最佳镜头位置集合获取单元,实现根据被测对象位置分布文件并利用镜头模拟技术获取最佳镜头位置集合,最佳镜头位置集合为包含所有被测对象且镜头位置的个数最少的镜头位置集合,减少了实际检测多个被测对象时所需的运动定位次数;再通过图像获取与分析单元,实现根据最佳镜头位置集合获取对应的采样图像集合,并对采样图像集合进行处理以获取被测对象的实际位置信息,实现对多个被测对象的视觉检测,由于减少了原本多个检测对象所需的运动定位次数,提高了多个被测对象的视觉检测系统的检测效率。

作为技术方案的进一步改进,最佳镜头位置集合获取单元包括:

模拟镜头框设置模块,用于设置模拟镜头框;

偏移搜索模块,用于控制模拟镜头框在被测对象位置分布文件上进行偏移搜索;

最佳镜头位置集合确定模块,用于根据模拟镜头框的位置信息和被测对象位置分布文件获取包含所有被测对象且镜头位置的个数最少的镜头位置集合,即最佳镜头位置集合。

通过模拟镜头框设置模块设置的模拟镜头,并结合偏移搜索模块和最佳镜头位置集合确定模块,找到最佳镜头位置集合,节省系统采样时所需的运动定位次数,提高检测效率。

作为技术方案的进一步改进,图像获取与分析单元包括:

最短路径获取模块,用于利用路径优化算法获取遍历最佳镜头位置集合中所有最佳镜头位置的最短路径,进一步地,路径优化算法为蚁群算法;

采样图像集合获取与分析模块,用于根据最短路径和最佳镜头位置集合并基于多线程技术获取、处理分析采样图像集合以获取被测对象的实际位置信息。

通过最短路径获取模块获取到最短路径,则系统按照最短路径采样最佳镜头位置集合对应的采样图像,可以节省相机的运动定位次数以及相机拍照采样的次数,提高检测效率。

作为技术方案的进一步改进,采样图像集合获取与分析模块包括:

线程建立模块,用于建立多个处理线程,其中,包括至少一个采样线程和至少一个分析处理线程;

采样线程模块,用于按照最短路径控制单个镜头依次获取最佳镜头位置集合对应的采样图像,并将所有采样图像按最短路径的遍历顺序排列成采样图像队列;

分析处理线程模块,用于按照最短路径的遍历顺序从采样图像队列提取采样图像,并对采样图像进行图像处理以获取其中的被测对象的实际位置信息。

视觉检测系统通过利用多线程技术,提高系统的采样分析处理速度,提高检测效率。

实际上应用在pcb板检测时,一种用于多个被测对象的视觉检测系统包括多核计算机、伺服系统、相机、光源和pcb被测板(包含多个被测对象),被测对象位置分布文件获取单元、最佳镜头位置集合获取单元,通过多核计算机来实现,图像获取与分析单元通过多核计算机、伺服系统和相机来实现,相机具有至少一个镜头。本实施例中,被测对象是pcb板上的孔位。首先在计算机上进行镜头模拟找到最佳镜头位置集合,再根据蚁群算法找到遍历最佳镜头位置集合所有镜头位置的最短路径,则多核计算机中的采样线程可以控制伺服系统按照最短路径驱动镜头依次获取最佳镜头位置集合的镜头位置所对应的采样图像,加入采样图像队列,多核计算机的分析处理线程有序依次处理图像队列中的采样图像,获取孔的实际位置信息。

以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1