图像采集方法、装置、电子设备及计算机可读存储介质与流程

文档序号:31542193发布日期:2022-09-17 00:10阅读:73来源:国知局
图像采集方法、装置、电子设备及计算机可读存储介质与流程

1.本公开涉及图像采集技术领域,尤其涉及一种图像采集方法、装置、及电子设备及计算机可读存储介质。


背景技术:

2.线扫相机用于获取图像信息,例如,获取待检测产品的图像信息,其作业原理是逐行曝光持续成像,曝光过程采用编码器高速脉冲信号实现同步。现有的线扫相机采图过程中,因为线扫相机的行频曝光是设定一个完整过程,电气控制一个起始信号、一个终止信号,每次作业必须完成整个过程。
3.如果出现图像采集的异常中断或主动干预中断的情况,则必须进行重新运动复位,即恢复到采图过程的起始状态,重新进行采图;重复操作会严重浪费时间,降低采集设备的使用效率。


技术实现要素:

4.为解决现有技术中存在的至少以上技术问题,本发明实施例提供了一种图像采集方法、装置及电子设备。
5.本公开实施例的第一方面提供一种图像采集方法,用于图像设备采集图像信息,所述图像设备连接用于驱动其移动的连接运动结构,所述方法包括:获取单位像素距离;开启图像采集,所述运动结构位于所述图像的起始行开始移动,并且每运动所述单位像素距离,则获取一行图像数据;获取运动结构移动中断时的移动距离,根据所述移动距离和所述单位像素距离确定中断的计数值;继续图像采集,所述运动结构位于所述图像与所述中断的计数值相同的行数开始移动,并且每运动所述单位像素距离,则获取一行图像数据。
6.在一些实施例中,所述方法还包括:每获取一行图像数据时,同步进行计数,并保存为行数的计数值;对比所述行数的计数值和行数的预设值,当两者相同时,则停止图像采集。
7.在一些实施例中,所述方法还包括:继续图像采集前,对比所述行数的计数值和所述中断的计数值,当两者不同时,则将所述行数的计数值更新为所述中断的计数值。
8.在一些实施例中,所述方法还包括:图像采集完成后,根据所述中断的计数值,将所述图像分为第一图像和第二图像,其中,中断前所采集的图像为第一图像,中断后所采集的图像为第二图像;提取并对比所述第一图像和所述第二图像的特征点,当所述特征点的匹配数量满足设定个数时,确定所述第一图像和所述第二图像所拼接的图像为所需图像。
9.在一些实施例中,所述方法还包括:当所述特征点的匹配数量少于设定个数时,设定新的中断的计数值,并且所述运动结构位于所述图像与所述新的中断的计数值相同的行数开始移动;根据所述新的中断的计数值确定新的第二图像,提取并对比第一图像和新的第二图像的特征点;当所述特征点的匹配数量满足设定个数时,确定所述第一图像和新的所述第二图像所拼接的图像为所需图像。
10.在一些实施例中,所述获取单位像素距离,包括:根据所述图像设备的像素值,计算每个像素对应所述运动结构所在平面的实际距离。
11.在一些实施例中,所述每运动所述单位像素距离,则获取一行图像数据,包括:所述运动结构每运动所述单位像素距离,触发编码器发送一个脉冲信号至所述图像设备,所述图像设备触发一行图像曝光,获取所述图像设备曝光的一行图像数据。
12.本公开实施例的第二方面提供一种图像采集装置,用于图像设备采集图像信息,所述图像设备连接用于驱动其移动的连接运动结构,所述装置包括:启停模块、获取模块和计算模块;所述启停模块被配置为启动图像采集;所述获取模块被配置为获取单位像素距离、获取图像数据,以及获取运动结构移动中断时的移动距离;所述计算模块被配置为根据所述移动距离和所述单位像素距离确定中断的计数值。
13.在一些实施例中,所述计算模块还被配置为每获取一行图像数据时,同步进行计数,并保存为行数的计数值;启停模块还被配置为对比所述行数的计数值和行数的预设值,当两者相同时,则停止图像采集。
14.在一些实施例中,所述计算模块还被配置为继续图像采集前,对比所述行数的计数值和所述中断的计数值,当两者不同时,则将所述行数的计数值更新为所述中断的计数值。
15.在一些实施例中,还包括图像划分模块和特征对比模块,所述图像划分模块被配置为图像采集完成后,根据所述中断的计数值,将所述图像分为第一图像和第二图像,其中,中断前所采集的图像为第一图像,中断后所采集的图像为第二图像;所述特征对比模块被配置为提取并对比所述第一图像和所述第二图像的特征点,当所述特征点的匹配数量满足设定个数时,确定所述第一图像和所述第二图像所拼接的图像为所需图像。
16.在一些实施例中,还包括设定模块,所述设定模块被配置为当所述特征点的匹配数量少于设定个数时,设定新的中断的计数值,并且所述运动结构位于所述图像与所述新的中断的计数值相同的行数开始移动;所述图像划分模块还被配置为根据所述新的中断的计数值确定新的第二图像,所述特征对比模块被配置为提取并对比第一图像和新的第二图像的特征点;当所述特征点的匹配数量满足设定个数时,确定所述第一图像和新的所述第二图像所拼接的图像为所需图像。
17.在一些实施例中,所述获取模块还被配置为根据所述图像设备的像素值,所述计算模块还被配置为计算每个像素对应所述运动结构所在平面的实际距离。
18.在一些实施例中,所述获取模块还被配置为所述运动结构每运动所述单位像素距离,触发编码器发送一个脉冲信号至所述图像设备,所述图像设备触发一行图像曝光,获取所述图像设备曝光的一行图像数据。
19.本公开实施例的第三方面提供一种电子设备,所述电子设备包括:处理器、存储器和总线;所述存储器存储可执行指令;所述处理器与所述存储器之间通过所述总线通信,所述处理器执行所述存储器中存储的可执行指令时,实现上述图像采集方法。
20.本公开实施例的第四方面提供一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现上述图像采集方法。
21.本公开实施例的第五方面提供一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述图像采集方
法。
22.本公开实施例提供的图像采集方法包括:获取运动结构移动中断时的移动距离,根据移动距离和单位像素距离确定中断的计数值;继续图像采集,运动结构位于图像与中断的计数值相同的行数开始移动,并且每运动单位像素距离,则获取一行图像数据。如此,图像采集存在中断的情况下,将基于中断的计数值,继续进行图像采集,无需进行复位操作,节省采集图像所需的时间,以及保证了持续作业的成像品质。
附图说明
23.通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:
24.在附图中,相同或对应的标号表示相同或对应的部分。
25.图1是本公开实施例提供的图像采集方法的一种可选处理流程示意图;
26.图2是本公开实施例提供的图像采集方法的一种可选处理流程示意图;
27.图3是本公开实施例提供的图像采集方法的一种可选处理流程示意图;
28.图4是本公开实施例提供的图像采集装置的组成结构示意图;
29.图5是本公开实施例提供的电子设备的硬件结构示意图。
30.图中:
31.400:图像采集装置;500:电子设备;
32.410:启停模块;420:获取模块;430:计算模块;
33.510:处理器;520:网络接口;530:用户接口;540:总线;550:存储器;551:操作系统;552:网络通信模块。
具体实施方式
34.为使本公开的目的、特征、优点能够更加的明显和易懂,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而非全部实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
35.图像设备(例如线扫相机)若实现中断后持续作业功能,则必须进行运动复位,即恢复到采图过程的起始状态,重新进行图像采集。
36.针对相关技术中图像采集如果被中断,只能重新采图的问题,本公开实施例提供了一种图像采集方法、装置及电子设备。图1是本公开实施例提供的图像采集方法的一种可选处理流程示意图。如图1所示,图像采集方法用于图像设备采集图像信息,所述图像设备连接用于驱动其移动的连接运动结构,所述方法包括:
37.步骤s10:获取单位像素距离;图像设备使用中会逐行进行曝光,运动结构结构每次移动的单位距离为单位像素距离。
38.例如,根据所述图像设备(例如,线扫相机)的像素值,计算每个像素对应所述运动结构所在平面的实际距离steplen mm/pixel,其中, mm/pixel为每个像素对应的毫米距离。
39.步骤s20:上位机下发采集图像指令,开启图像采集,所述运动结构位于所述图像的起始行开始移动,并且每运动所述单位像素距离,则获取一行图像数据。
40.例如,上位机下发采集图像指令至可编程控制器(plc),通过可编程控制器控制运动结构运动。例如,运动结构为三维运动结构,分别包括x轴、y轴和z轴方向运动的移动结构,例如,移动结构的滑轨及滑块结构。
41.例如,图像的起始行可以解释为:图像设备用于采集产品的图像信息,图像设备进行图像采集时需要逐行采集,图像的起始行为所要采集图像的第一行。
42.例如,所述运动结构每运动所述单位像素距离,触发编码器发送一个脉冲信号至所述图像设备,所述图像设备触发一行图像曝光,获取所述图像设备曝光的一行图像数据。
43.步骤s30:获取运动结构移动中断时的移动距离,根据所述移动距离和所述单位像素距离确定中断的计数值。
44.例如,在运动结构移动时,利用传感器同步获取运动结构的移动距离,例如,传感器为光栅传感器,利用光栅传感器获取运动结构的移动距离runlen,根据所述移动距离runlen和所述单位像素距离steplen 确定中断的计数值stepcount,计算公式如下:
45.stepcount=runlen/steplen;
46.运动结构可能存在意外中断,或者人为中断的情况,当存在时,获取中断时运动结构所在的图像行数。
47.步骤s40:继续图像采集,所述运动结构位于所述图像与所述中断的计数值相同的行数开始移动,并且每运动所述单位像素距离,则获取一行图像数据。
48.上述图像采集方法具有以下优点:
49.1、图像采集中断后可继续作业,且不影响成像品质;
50.2、可对图像采集过程增加中断操作,在作业期间插入其他作业功能,实现多线作业的情景;
51.3、降低了工程应用环境,提高应用的技术容忍性;
52.4、避免了重新取图的时间浪费;
53.5、保证了持续作业的成像品质。
54.图2是本公开实施例提供的图像采集方法的一种可选处理流程示意图。如图2所示,图像采集方法还包括:
55.步骤s50:每获取一行图像数据时,同步进行计数,并保存为行数的计数值linecount;对比所述行数的计数值和行数的预设值,当两者相同时,则停止图像采集。
56.在图像采集过程中,若未出现图像采集中断的情况,则直至行数的计数值与行数的预设值相同时,停止图像采集。若存在中断的情况下,则继续图像采集时,直至行数的计数值与行数的预设值相同时,停止图像采集。
57.继续参考图2,图像采集方法还包括:
58.步骤s31:继续图像采集前,对比所述行数的计数值和所述中断的计数值,当两者不同时,则将所述行数的计数值更新为所述中断的计数值。
59.图像采集时,根据行数的计数值进行判断,因此,在图像采集过程中,可对行数的计数值进行校正。例如,对比行数的计数值linecount 和中断的计数值stepcount,当两数值相同时,则表示行数的计数值linecount正确,无需更新,当两数值不同时,则表示行数的
计数值 linecount存在偏差,需要进行更新。其中,基于运动结构的移动距离 runlen和所述单位像素距离steplen获取的数值的精准度高,因此,可以该中断的计数值stepcount作为校正的基础。
60.在一些实施例中,采集图像中断时,可能存在被采集的产品移动的情况,因此,在图像采集完成后需要进行图像校正,图3是本公开实施例提供的图像采集方法的一种可选处理流程示意图。如图3所示,图像采集方法还包括:
61.步骤s61:图像采集完成后,根据所述中断的计数值,将所述图像分为第一图像和第二图像,其中,中断前所采集的图像为第一图像,中断后所采集的图像为第二图像;提取并对比所述第一图像和所述第二图像的特征点,当所述特征点的匹配数量满足设定个数时,确定所述第一图像和所述第二图像所拼接的图像为所需图像。
62.例如,通过surf图像算法进行图像特征提取。例如,第一图像和第二图像的特征点满足匹配数量,也即具有足够的视野交集,此时表示,第一图像和第二图像为连续的图像,所述第一图像和所述第二图像所拼接的图像为所需图像。
63.在一些实施例中,图像采集方法还包括:
64.步骤s62:当所述特征点的匹配数量少于设定个数时,设定新的中断的计数值,并且所述运动结构位于所述图像与所述新的中断的计数值相同的行数开始移动;根据所述新的中断的计数值确定新的第二图像,提取并对比第一图像和新的第二图像的特征点;当所述特征点的匹配数量满足设定个数时,确定所述第一图像和新的所述第二图像所拼接的图像为所需图像。
65.例如,当所述特征点的匹配数量没有足够的视野交集时,设定新的中断的计数值,并根据所述新的中断的计数值确定新的第二图像。例如,将运动结构运动结构回退一定距离,根据回退距离、单位像素距离和中断的计数值,计算获得新的中断的计数值,计算公式如下:
66.新的中断的计数值=中断的计数值-回退距离/单位像素距离;
67.若新的第二图像的特征点仍不能满足匹配数量要求,则运动结构再回退一定距离,并重新计算新的中断的计数值以及新的第二图像,直至特征点满足匹配数量要求。
68.例如,确定新的中断的计数值后,计算第一图像和新的第二图像之间的共同部分,在拼接所需图像时,将第一图像和新的第二图像的共同部分重合设置,进行拼接成完整无重复的所需图像。
69.例如,基于opencv库中的算法,计算获得新的第二图像。例如,使用findhomography函数获取变换矩阵h,并使用透视变换方法变换获得新的第二图像。
70.图4是本公开实施例提供的图像采集装置的组成结构示意图。如图 4所示,本公开实施例提供一种图像采集装置400,用于图像设备采集图像信息,所述图像设备连接用于驱动其移动的连接运动结构,所述装置包括:启停模块410、获取模块420和计算模块430;所述启停模块被配置为启动图像采集;所述获取模块被配置为获取单位像素距离、获取图像数据,以及获取运动结构移动中断时的移动距离;所述计算模块被配置为根据所述移动距离和所述单位像素距离确定中断的计数值。
71.在一些实施例中,所述计算模块还被配置为每获取一行图像数据时,同步进行计数,并保存为行数的计数值;启停模块还被配置为对比所述行数的计数值和行数的预设值,
当两者相同时,则停止图像采集。
72.在一些实施例中,所述计算模块还被配置为继续图像采集前,对比所述行数的计数值和所述中断的计数值,当两者不同时,则将所述行数的计数值更新为所述中断的计数值。
73.在一些实施例中,还包括图像划分模块和特征对比模块,所述图像划分模块被配置为图像采集完成后,根据所述中断的计数值,将所述图像分为第一图像和第二图像,其中,中断前所采集的图像为第一图像,中断后所采集的图像为第二图像;所述特征对比模块被配置为提取并对比所述第一图像和所述第二图像的特征点,当所述特征点的匹配数量满足设定个数时,确定所述第一图像和所述第二图像所拼接的图像为所需图像。
74.在一些实施例中,还包括设定模块,所述设定模块被配置为当所述特征点的匹配数量少于设定个数时,设定新的中断的计数值,并且所述运动结构位于所述图像与所述新的中断的计数值相同的行数开始移动;所述图像划分模块还被配置为根据所述新的中断的计数值确定新的第二图像,所述特征对比模块被配置为提取并对比第一图像和新的第二图像的特征点;当所述特征点的匹配数量满足设定个数时,确定所述第一图像和新的所述第二图像所拼接的图像为所需图像。
75.在一些实施例中,所述获取模块还被配置为根据所述图像设备的像素值,所述计算模块还被配置为计算每个像素对应所述运动结构所在平面的实际距离。
76.在一些实施例中,所述获取模块还被配置为所述运动结构每运动所述单位像素距离,触发编码器发送一个脉冲信号至所述图像设备,所述图像设备触发一行图像曝光,获取所述图像设备曝光的一行图像数据。
77.需要说明的是,本公开实施例中图像采集装置的描述,与上述图像采集方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本公开实施例提供的图像采集装置中未尽的技术细节,可以根据图1至图3任一附图的说明而理解。
78.下面说明本公开实施例提供的电子设备的示例性应用,本公开实施例提供的电子设备可以实施为电子设备,电子设备可以是服务器或终端设备。
79.图5是本公开实施例提供的电子设备的硬件结构示意图。图5所示的电子设备500包括:至少一个处理器510、存储器550和总线540;电子设备500中的各个组件通过总线540耦合在一起。可理解,总线540 用于实现这些组件之间的连接通信。总线540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线540。
80.处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
81.存储器550中存储有用于实现本公开实施例提供的图像采集方法的可执行指令,图像采集方法可由图4所示的图像采集装置中的启停模块 410、获取模块420和计算模块430实现;存储器550可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。
82.在一些实施例中,存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集。
83.在一些实施例中,电子设备500还可以包括:
84.操作系统551,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
85.网络通信模块552,用于经由一个或多个(有线或无线)网络接口 520到达其他计算设备,示例性的网络接口520包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universal serial bus)等。
86.本公开实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本公开实施例提供的图像采集方法,例如,如图1至图3示出的图像采集方法。
87.在一些实施例中,计算机可读存储介质可以是fram、rom、prom、 eprom、eeprom、闪存、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
88.在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
89.例如,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
90.本公开实施例提供一种计算机程序产品,计算机程序产品包括计算机程序/指令,计算机程序/指令被处理器执行时实现本公开的图像采集方法。
91.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
92.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
93.以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1