成像方法、成像装置、区分成像对象的方法及计算机程序

文档序号:1804623 发布日期:2021-11-05 浏览:19次 >En<

阅读说明:本技术 成像方法、成像装置、区分成像对象的方法及计算机程序 (Imaging method, imaging apparatus, method of distinguishing imaging objects, and computer program ) 是由 川岛安武 于 2020-11-06 设计创作,主要内容包括:一种成像装置,包括作为成像器的成像传感器(111)以及作为用于照明成像传感器(111)的成像对象的照明器的脉冲LED(113),其根据各个成像条件来执行各个成像,每个成像条件包括成像传感器(111)的曝光时间te和脉冲LED(113)的照明时间tr,存储通过各个成像获得的各个图像的亮度指标值D1和各个图像的成像条件的各个组合,基于存储的亮度指标值D1和成像条件的组合,获得指示曝光时间te的变化对亮度指标值D1的影响程度的曝光贡献度k-off的估计以及指示照明时间tr的变化对亮度指标值D1的影响程度的照明贡献度k-on的估计(S36),以及基于k-on和k-off的估计,确定将在下一次成像中使用的成像条件(S37)。(An imaging apparatus includes an imaging sensor (111) as an imager and a pulse LED (113) as an illuminator for illuminating an imaging object of the imaging sensor (111), performs respective imaging according to respective imaging conditions, each of which includes an exposure time te of the imaging sensor (111) and an illumination time tr of the pulse LED (113), stores respective combinations of luminance index values D1 of respective images obtained by the respective imaging and the imaging conditions of the respective images, obtains an estimate of an exposure contribution degree k _ off indicating a degree of influence of a change in the exposure time te on a luminance index value D1 and an estimate of an illumination contribution degree k _ on indicating a degree of influence of a change in the illumination time tr on a luminance index value D1 based on the stored combinations of the luminance index values D1 and the imaging conditions (S36), and based on the estimates of k _ on and k _ off, the imaging conditions to be used in the next imaging are determined (S37).)

成像方法、成像装置、区分成像对象的方法及计算机程序

技术领域

本发明涉及一种成像装置,包括成像器和用于照明该成像器的成像对象的照明器,通过这种成像装置的成像方法以及用于使计算机控制成像装置执行该成像方法的计算机程序。本发明还涉及一种用于区分成像对象的方法和用于成像装置的成像方法,该成像装置包括成像器和用于照明该成像器的成像对象的照明器。

背景技术

在用于光学读取诸如条形码或二维码等代码符号的光学信息读取装置中,传统上已采用:该装置对读取对象进行成像,从通过成像获得的图像中剪裁出代码符号,并且对其进行解码。在这种情况下,如果图像太暗则不能执行解码,因此也已经采用在光学信息读取装置中提供照明器并在照明读取对象的同时执行成像。

在这种情况下,适当的照明强度和时间根据周围环境和读取对象的类型而变化。适当的曝光时间也因它们而异。因此,如PTL1至PTL7所示,已经开发出各种用于将照明的强度和时间自动调整为适当值的技术,其也包括本申请人的技术。

在这些专利文献中,例如,PTL1在第0028段和图5A等中公开了在执行连续的低强度照明和至少一个脉冲的高强度照明时,基于捕获的图像的图像强度来设置适当的曝光时间。

PTL2在第0038段等中公开了根据图像的亮度和与读取对象的距离来调整照明时间。

顺便提及,当出于除读取代码符号以外的目的而执行成像时,也执行照明和曝光的调整,并且PTL1至PTL7包括公开了涉及非光学信息读取装置的装置的技术的文档。

引用列表

专利文献

PTL1 日本专利号6,053,224

PTL2 日本专利申请公开号2015-76106

PTL3 日本专利申请公开号2001-43306

PTL4 日本专利申请公开号2001-245111

PTL5 日本专利申请公开号2011-130165

PTL6 日本专利申请公开号2013-42429

PTL7 日本专利申请公开号2019-129509

发明内容

技术问题

顺便提及,以代码符号为例,近年来,代码符号不仅固定地打印在诸如纸的记录载体上,而且还经常动态地显示在诸如显示器的显示装置上。因此,在读取装置的操作环境中,经常需要假设记录载体和显示器都是要读取的对象,即要成像的对象。

但是,记录载体和显示装置的特性彼此之间有很大的不同,区别在于记录载体通常自身不发光,而大多数显示装置自身发光。因此,适合对其成像的条件也大不相同。

因此,仅通过基于通过成像获得的图像亮度来调整成像条件,有时难以获得适合于对代码符号进行解码的图像。例如,当读取显示在智能手机的显示器上的代码符号时,由于显示器本身正在发光,即使考虑到亮度不足而增加照明的照明时间,也不能期望这种增加对改善图像的亮度有很大贡献。另一方面,延长曝光时间被认为对改善亮度有效。相反,当读取打印在纸上的代码符号时,如果环境较暗,则即使延长曝光时间,也无法期望会改善图像的亮度,并且认为增加照明的照明时间(在曝光时间的范围内)是有效的。

如果增加照明量或照明时间以及曝光时间,则认为在智能手机和纸的情况下都是有效的。然而,当对智能手机成像时,将提供不必要的照明量,并且这可能导致功耗增加和用户的眩光的感觉。此外,由于智能手机的显示器表面上的玻璃的镜面反射,照明可能会干扰成像。

还可以想到通过某种方式来区分成像对象,然后执行适合于成像对象的特性的控制。然而,即使是纸和智能手机,也很难用廉价的硬件和软件将它们彼此区分开。例如,当在成像对象的表面发生镜面反射时,可以想到确定读取对象为智能手机,但是当由于附接了保护片等而没有发生镜面反射时,无法基于该标准进行适当的区分。还可以想到,操作者通过切换等将成像对象设置到读取装置上,但是如果需要快速读取各种对象则不可行。

本发明的目的是解决这样的问题,以及当在照明成像对象的同时通过成像装置执行成像时,能够在假设各种成像对象的同时快速设置适当的成像条件。从另一方面,本发明的目的是,当成像对象是发光体时,在照明成像对象的同时通过成像装置执行成像的情况下,能够容易地区分这一事实。在任一种情况下,不用说,成像的目的不限于读取诸如代码符号之类的信息,并且本发明可以应用于出于任何目的的成像。假设的成像对象不限于诸如纸的记录载体和设置在智能手机等中的显示器,并且是任意的。

问题的解决方案

为了达到上述目的,本发明的成像方法是一种通过包括成像器和配置为照明成像器的成像对象的照明器的成像装置进行成像的成像方法,该方法包括:根据各个成像条件执行各个成像,每个成像条件包括成像器的曝光时间和照明器的照明时间;将通过各个成像获得的各个图像的亮度和各个图像的成像条件的各个组合存储在存储器中;基于存储在存储器中的亮度和成像条件的组合,获得指示曝光时间的变化对图像亮度的影响程度的第一参数的估计以及指示照明时间的变化对图像亮度的影响程度的第二参数的估计;以及基于第一参数的估计和第二参数的估计,确定将在下一次成像中使用的成像条件。

此外,可以想到,该方法还包括基于第一参数的估计和第二参数的估计来确定曝光时间和照明时间之间的关系,使得照明时间越长,曝光时间变得越短,以及照明时间越短,曝光时间变得越长,以及确定将在下一次成像中使用的成像条件以满足所确定的关系。

此外,可以想到,确定将在下一次成像中使用的成像条件,使得满足曝光时间和照明时间之间的关系,以及照明时间与曝光时间的比值与最新成像条件中的比值相差预定阈值或者更多。

此外,可以想到,确定将在下一次成像中使用的成像条件,使得照明时间与曝光时间的比值与第二参数的估计与第一参数的估计的比值尽可能接近。

在本发明的成像方法中,可以使用照明器对成像对象的照明量来代替照明时间。

本发明还提供以下区分方法和使用这种区分方法的成像方法,其旨在使得当成像对象是发光体时,在照明成像对象的同时通过成像装置执行成像的情况下能够容易地区分该事实。同样在这些发明中,成像的目的不限于读取诸如代码符号之类的信息,并且本发明可以应用于用于任何目的成像。假设的成像对象不限于诸如纸的记录载体和设置在智能手机等中的显示器,并且是任意的。

本发明的区分方法是一种通过包括成像器和配置为照明成像器的成像对象的照明器的成像装置区分成像对象的区分方法,该方法包括:根据多个成像条件来执行各个成像,每个成像条件包括成像器的曝光时间和照明器的照明时间,各个成像条件具有彼此不同的曝光时间;将通过各个成像获得的各个图像的亮度和各个图像的成像条件的各个组合存储在存储器中;以及基于存储在存储器中的亮度和成像条件的组合,获得所述曝光时间的变化对图像亮度的影响程度的估计,以及当估计大于预定阈值时,确定成像器的成像对象是发光体。

此外,本发明的另一种区分方法是一种通过包括成像器和配置为照明成像器的成像对象的照明器的成像装置区分成像对象的区分方法,该方法包括:根据多个成像条件来执行各个成像,每个成像条件包括成像器的曝光时间和照明器的照明时间,各个成像条件具有彼此不同的照明时间;将通过各个成像获得的各个图像的亮度和所述各个图像的成像条件的各个组合存储在存储器中;以及基于存储在存储器中的亮度和成像条件的组合,获得照明时间的变化对图像亮度的影响程度的估计,以及当估计小于预定阈值时,确定成像器的成像对象是发光体。

此外,本发明的另一种区分方法是一种通过包括成像器和配置为照明成像器的成像对象的照明器的成像装置区分成像对象的区分方法,该方法包括:根据多个成像条件来执行各个成像,每个成像条件包括成像器的曝光时间和照明器的照明时间,各个成像条件的曝光时间与照明时间的比值彼此不同;将通过各个成像获得的各个图像的亮度和各个图像的成像条件的各个组合存储在存储器中;基于存储在存储器中的亮度和成像条件的组合,获得指示曝光时间的变化对图像亮度的影响程度的第一参数的估计以及指示照明时间的变化对图像亮度的影响程度的第二参数的估计;以及当第一参数的估计大于第一阈值以及第二参数的估计小于第二阈值时,确定成像器的成像对象是发光体。

此外,本发明的另一种区分方法是一种通过包括成像器和配置为照明成像器的成像对象的照明器的成像装置区分成像对象的区分方法,该方法包括:根据多个成像条件来执行各个成像,每个成像条件包括成像器的曝光时间和照明器的照明时间,各个成像条件的曝光时间与照明时间的比值彼此不同;将通过各个成像获得的各个图像的亮度和各个图像的成像条件的各个组合存储在存储器中;基于存储在存储器中的亮度和成像条件的组合,获得指示曝光时间的变化对图像亮度的影响程度的第一参数的估计以及指示照明时间的变化对图像亮度的影响程度的第二参数的估计;以及当第一参数的估计与第二参数的估计的比值大于预定阈值时,确定成像器的成像对象是发光体。

本发明的成像方法是一种方法,包括:在通过根据任一区分方法确定成像对象为发光体的情况下,与通过区分方法未确定成像对象为发光体的情况相比,使用照明时间较小的上限确定将在下一次成像中使用的成像条件,以及在通过区分方法未确定成像对象为发光体的情况下,与通过区分方法确定成像对象为发光体的情况相比,使用照明时间的较大的下限确定将在下一次成像中使用的成像条件;以及通过成像装置根据确定的成像条件执行成像。

除了上述方式之外,本发明还可以以任意方式来实现,诸如装置、方法、系统、计算机程序、记录有计算机程序的存储介质等。

发明的有益效果

根据如上所述的本发明的配置,当在照明成像对象的同时通过成像装置执行成像时,可以在假设各种成像对象的同时快速设置适当的成像条件。此外,根据本发明的另一方面的配置,当成像对象是发光体时,在照明成像对象的同时通过成像装置执行成像的情况下,可以容易地区分该事实。

附图说明

图1是示出作为本发明的成像装置的实施例的读取装置100的硬件配置的框图。

图2是示出图1所示的读取装置100的功能配置的功能框图。

图3是用于说明由读取装置100执行的用于获得照明时间tr和曝光时间te的过程的概要的示图。

图4是用于说明由读取装置100执行的、获得照明时间tr和曝光时间te的过程的概要的另一示图。

图5是由读取装置100的CPU 121执行的、与读取控制部151的功能相应的过程的流程图。

图6是由同样装置执行的、与成像部153和成像条件确定部154的功能相应的过程的流程图。

图7是图6所示的成像条件确定过程的流程图。

图8是由读取装置100的CPU 121执行的、与解码部156的功能相应的过程的流程图。

图9是示出第二实施例的读取装置100的功能配置的、与图2对应的功能框图。

图10是由第二实施例的读取装置100的CPU 121执行的、与成像对象区分部158的功能相应的过程的流程图。

具体实施方式

将参考附图来说明本发明的实施例。

第一实施例:图1至图8

首先,将参考图1来描述本发明的成像装置的实施例。图1是示出作为成像装置的实施例的读取装置的硬件配置的框图。

图1所示的读取装置100是用于光学读取读取对象101上的代码符号102(由具有与周围环境不同的光反射率的符号表示)的光学信息读取装置,并且还是用于在读取时捕获读取对象101的图像的成像装置。

读取对象101可以是静态地携带代码符号102的记录载体,或者可以是动态地显示代码符号的显示器。记录载体的材料可以是纸、金属、树脂等中的任何一种,并且将代码符号102承载在记录载体上的方法可以是印刷、表面改性、压印等中的任何一种。显示器可以是通过利用背光源等自身发光来显示信息的发光体,或者是通过反射来自外部的光而显示信息的诸如反射型液晶显示装置之类的装置。当然,不必预先指定上述哪一个是读取对象101。

代码符号102可以是任何标准的一维条形码或二维码。不必预先指定代码符号102的标准,并且可以在稍后描述的解码过程中区分该标准。

如图1所示,读取装置100包括光学部110、控制部120、操作部131和通知部132。

其中,光学部110包括成像传感器111、透镜112、脉冲LED(发光二极管)113,并且光学部110是用于光学捕获包括代码符号102的读取对象101的图像的成像装置。

成像传感器111是用于捕获诸如读取对象101之类的成像对象的图像的成像器,例如,成像传感器111可以由CMOS(互补金属氧化物半导体)图像传感器构成。此外,成像传感器111可以基于通过成像在图像传感器的每个像素中累积的电荷来生成指示每个像素的灰度值的图像数据,并将图像数据输出到控制部120。在该成像传感器111中,像素是二维排列的。

透镜112是用于将来自成像对象的反射光成像在成像传感器111上的光学系统。

脉冲LED 113是用于将照明光辐照到成像传感器111的成像对象的照明器。

接下来,控制部120包括CPU 121、ROM 122、RAM 123和用于与外部装置进行通信的通信I/F 124,ROM 122存储诸如将由CPU 121执行的程序和各种表格等的数据,当CPU 121执行各种处理时RAM 123用作工作区域。

CPU 121使用RAM 123作为工作区域来执行存储在ROM 122中的程序,以控制包括光学部110、操作部131和通知部132的整个读取器100的操作,从而实现包括稍后参考图2描述的那些功能的各种功能。此外,CPU 121还执行诸如对包括在由成像传感器111捕获的图像的图像数据中的代码符号102的检测和解码,以及将解码结果输出到外部或累积其的处理。

通信I/F 124是用于与诸如利用代码符号102的解码结果的数据处理装置之类的各种外部装置进行通信的接口。

操作部131是用于接受用户的操作的诸如按钮和触发器之类的操作装置。通知部132是用于向用户执行各种通知的通知器。可以想到的具体通知方法包括但不限于通过显示器显示消息或数据、灯的点亮或闪烁、通过扬声器输出声音等。

当读取装置100根据来自外部装置的控制或自主控制而自动操作时,可以省略操作部131和通知部132。

上述读取装置100可以被配置为例如但不限于手持式或固定式代码符号读取装置。

在上述读取装置100中,特征点之一是一种用于基于通过成像传感器111的过去成像获得的图像亮度和在各个成像中使用的成像条件的组合来确定在下一次成像中使用的成像条件的方法。接下来,对这一点进行说明。

首先,将描述与读取代码符号有关的读取装置100的功能,包括上述确定成像条件的功能。图2是示出功能配置的功能框图。

如图2所示,读取装置100包括读取控制部151、触发检测部152、成像部153、成像条件确定部154、成像历史存储部155、解码部156以及输出部157的功能。在这里描述的示例中,各个部分的功能由CPU 121通过执行软件控制包括光学部110的读取装置100的各个部分来实现,但是某些或全部功能可以由专用控制电路来实现。

图2中所示的读取控制部151具有与代码符号102的读取有关的、从读取对象101的成像到代码符号102的解码的全面控制操作的功能。该功能包括响应于检测到读取开始触发而开始成像、响应于检测到解码完成触发而停止成像并输出解码结果等。

触发检测部152具有监控读取开始触发的发生并在检测到读取开始触发时将读取开始触发的发生通知读取控制部151的功能。可以由读取装置100的制造商或用户任意确定采用什么作为读取开始触发。例如,读取开始触发可以是设置在操作部131中的触发开关的操作,某些对象进入成像传感器111的成像范围等。在后一种情况下,可以在读取装置100中设置诸如红外线传感器之类的用于检测对象的传感器。此外,用户能够任意地切换采用什么作为触发。

成像部153具有控制光学部110响应于来自读取控制部151的开始指令来执行成像以及获取通过成像获得的图像数据的功能。根据成像条件确定部154确定的条件执行该成像。此外,成像部153具有以下功能:当对通过成像获得的图像进行解码时,将获取的图像数据传输到解码部156的功能,以及作为存储器的功能,其被配置来将在成像中使用的成像条件和通过成像获得的图像亮度的组合存储在成像历史存储部155中作为成像历史。

成像条件确定部154具有基于存储在成像历史存储部155中的成像条件和亮度的组合而确定适合于当前读取对象101成像的成像条件的功能,以及向成像部153提供所确定的成像条件的功能。在本实施例中,成像条件确定部154将成像传感器111的曝光时间和脉冲LED 113的照明时间确定为成像条件,但是并不阻止一起确定其他条件。稍后将描述用于该确定的算法的细节。

成像历史存储部155具有存储成像部153在成像中使用的成像条件和通过成像获得的图像亮度的组合的功能。用于存储的硬件可以是读取装置100中提供的硬件,例如RAM123,或者是读取装置100外部的硬件。

解码部156具有对包括在从成像部153传送的图像数据中的代码符号102执行解码过程,以及当解码成功时,将解码结果的事实和数据传送到读取控制部151的功能。

输出部157具有将代码符号102的解码结果输出到诸如数据处理装置的外部装置以及经由通信I/F 124和通知部132向用户通知成功读取的功能。通知用户的方法可以是诸如蜂鸣器或振动之类的任何方法,或者当不需要通知时可以省略该通知。

接下来,将描述由上述读取装置100中的成像条件确定部154执行的读取条件确定的基本概念。

首先,成像条件确定部154确定成像条件,使得可以通过成像部153的成像来获得具有适合于解码的亮度的图像。例如,亮度可以作为图像中约几百个像素的样本像素的顶部百分之几附近的像素值的百分位值来获得。可以执行适当的偏移处理。无论如何,在本说明书中,我们引入指示图像亮度的参数的值作为亮度指标值D1,并且将确定成像条件,从而可以获得具有预定目标值D1_t的亮度指标值D1的图像。

这里,当周围环境、读取对象及其位置恒定时,即,在短时间内对特定的读取对象进行多个帧的成像时,假设脉冲LED 113的照明时间tr、成像传感器111的曝光时间te和成像传感器111的增益g作为影响亮度指标值D1的参数。亮度指标值D1和这些参数之间的关系可以近似地表示为下面的公式1。

公式1

D1=g(k_on·tr+k_off·te)...(公式1)

在此,k_off是指示曝光时间te的变化对图像亮度的影响程度的曝光贡献度(第一参数),k_on是指示照明时间tr的变化对图像亮度的影响程度的照明贡献度(第二参数)。根据以下想法获得公式1:成像传感器111检测到的光量基本上与曝光时间te成正比;当脉冲LED 113开启时,光量增加与照明时间tr成正比的量;以及图像的亮度(亮度指标值D1)是通过将光量以多少倍的增益g反射到像素值来确定的来确定的。

在此,脉冲LED 113的照明量在照明时始终为恒定,曝光时间te和照明时间tr各自的贡献假设是线性的。即使做出这样的假设,也可以以足够的精度执行成像条件的确定。稍后将描述考虑照明光量的变化的示例作为变型。

在公式1中,根据周围环境、读取对象及其位置来确定k_on和k_off的值,以及当这些条件恒定时,可以将k_on和k_off视为常数。因此,通过适当地确定tr、te和g的值,可以期望通过成像获得的图像的亮度指标值D1变为期望值或其附近的值。

然而,为了简化控制,在此我们考虑在固定增益g的同时通过调整照明时间tr和曝光时间te来获得期望的亮度指标值D1。

因此,我们引入了亮度指标值D,其中D=D1/g。使用亮度指标值D,可以将公式1所示的关系表示为以下公式2。然后,在下面,我们考虑获得照明时间tr和曝光时间te,通过这些时间,通过成像获得的图像的亮度指标值D变为预定目标值D_t。

公式2

D=k_on·tr+k_off·te...(公式2)

为此,成像条件确定部154首先估计k_on和k_off的值。

具体地,成像条件确定部154在改变照明时间tr和曝光时间te的同时执行成像,并且将通过每次成像获得的图像的照明时间tr、曝光时间te和亮度指标值D应用于公式2以获得关系表达式公式3。在公式3中,D_ci是通过第i次成像获得的图像的亮度指标值D,以及tri和tei分别是在第i次成像中使用的成像条件的照明时间tr和曝光时间te,其中i是自然数。x是可用于估计k_on和k_off值的成像历史数。

公式3

在公式3中,由于仅k_on和k_off未知,k_on和k_off的估计值就可以通过求解公式3将其视为k_on和k_off的联立方程来获得。如果存在三个或更多个方程,则不能唯一确定k_on和k_off的解,但是可以根据下面的公式4和公式5通过计算获得大致满足所有方程的k_on和k_off的解的近似值。

公式4

公式5

K=(STS)-1STD...(公式5)

公式4使用矩阵表示与公式3相同的内容,而公式5是通过修改公式4获得左侧矩阵K的值而导出的。在公式5中,XT表示矩阵X的转置,而X-1表示矩阵X的逆。公式5可以通过在公式4两侧从左侧开始依次乘以矩阵ST和矩阵(STS)-1并组织该公式而导出。

考虑到公式2的含义,k_on和k_off均被认为是正值。因此,如果根据公式5计算的结果为零或更小,则可以采用适当的小的正值作为估计。

此外,在x=2的情况下,当关于两次成像的照明时间tr和曝光时间te之间的比值相同时,不能确定解。因此,优选地,在两次成像中使用在照明时间tr和曝光时间te之间具有不同比值的成像条件。此外,即使x为3或更大,当关于x次成像的照明时间tr和曝光时间te之间的所有比值相同时,不能确定解。因此,优选地,在每次成像中适当地改变照明时间tr和曝光时间te之间的比值。

当如上所述获得k_on和k_off的估计时,成像条件确定部154使用该估计来确定将在下一次成像中使用的照明时间tr和曝光时间te。接下来,将参考图3和图4的曲线描述这一点。

图3示出了公式2在tr-te-D空间上的曲线图,附图标记223表示由公示式2表示的平面,(a)和(b)是示出关于k_on和k_off的值的不同组合的该平面223的两个示例。

(a)是k_on大而k_off小的示例。例如,当尝试在黑暗环境中对诸如纸之类的非发光体成像时,即使延长曝光时间te,入射在成像传感器111上的光量也不会改变太多,以及如果延长照明时间tr,则入射光的量将大大增加并且将被反射到图像亮度,呈现出(a)中所示的趋势。

(b)是k_on小而k_off有点大的示例。例如,当尝试对诸如智能手机的显示器的发光体成像时,如果延长曝光时间te,则由显示器发射的光将长时间入射到成像传感器111上,因此,入射在成像传感器111上的光量将增加,并且将被反射到图像亮度。然而,即使延长了照明时间tr,尽管入射在成像传感器111上的光本身的量将相应地增加,但是该增加对图像亮度的影响将很小,因为增加的光比显示器发射并在相同期限内入射的光弱。因此,呈现出(b)中所示的趋势。

这些(a)和(b)仅示出两个示例,也可以想到例如k_on和k_off都为较大值的其他情况。在第一实施例中,成像条件确定部154不需要根据k_on和k_off的估计值来改变照明时间tr和曝光时间te的计算算法。即,不必基于k_on和k_off的估计来确定成像对象是什么或成像环境如何。

在(a)和(b)两者中,由公式2表示的平面223是包括以下的平面:在tr-D平面上、具有k_on的斜率并且穿过原点的线221;以及在te-D平面上、具有k_off的斜率并且穿过原点的线222。为了获得目标值D_t作为亮度指标值D的值,仅需要确定照明时间tr和曝光时间te的组合,使得该组合落在直线224上,该直线是平面223与D=D_t的平面之间的相交线。该线224在指示待确定的tr和te的值之间的关系的线的意义上被称为“解提供线”。这一点对于示例(a)和示例(b)都是相同的。

成像条件确定部154根据预定约束条件选择解提供线224上的某个点,并将该点的tr和te的坐标值分别用作在下一次成像中使用的照明时间tr和曝光时间te。接下来,将解释这些约束条件。

图4示出了在te-tr平面上投影解提供线224时的约束条件的示例。图4的(a)和(b)分别对应于图3的(a)和(b)。

图4所示的约束条件中的第一个是0≤te,tr。这是因为曝光时间和照明时间都不能取负值。

第二约束条件是tr≤te。即使光发射的时间比曝光时间长,对图像亮度也没有影响,从而导致功率的浪费,因此准备了该约束条件。在图4中,线231是tr=te的线,以及具有点阴影的区域被第二约束条件排除。

第三个约束条件是ρ≤(tr/te)/(trα/teα)或者(tr/te)/(trα/teα)≤1/ρ,其中teα和trα分别是先前成像中的曝光时间和照明时间,ρ是大于1的适当常数。这是将照明时间tr和曝光时间te之间的比值与以前的成像中使用的相比相差预定阈值或更大,并排除大于前一个值的1/ρ倍以及小于ρ倍的范围的约束条件。在图4中,点232是(teα,trα),线233是穿过原点和点232的线,以及由第三约束条件排除了没有阴影的由附图标记234表示的范围。

因此,成像条件确定部154采用解提供线224在垂直阴影线所示的范围内的某个点,作为在下一次成像中使用的照明时间tr和曝光时间te。

注意,解提供线224在te-tr平面上的斜率是负值,因为它是-k_off/k_on。即,解提供线224确定曝光时间te和照明时间tr之间的关系,使得随着照明时间tr变长,曝光时间te变短,以及随着照明时间tr变短,曝光时间te变长。

然后,如果从原点到解提供线224的垂直线235和解提供线224的交点236在满足约束条件的范围内,则成像条件确定部154采用交点236的坐标。(b)对应于这种情况。如果交点236不在满足约束条件的范围内,则采用在满足约束条件的范围内尽可能接近交点236的点237的坐标。(a)对应于这种情况。

在任一情况下,由于垂直线235的斜率是k_on/k_off,在交点236处,tr=(k_on/k_off)·te,即,tr/te=k_on/k_off。因此,成像条件确定部154确定曝光时间te和照明时间tr,使得照明时间tr与曝光时间te的比值尽可能接近于第二参数k_on的估计与第一参数k_off的估计的比值。

采用交点236的原因是该点最接近解提供线224上的原点。可以认为,通过采用解直线224上的任意一点可以获得目标值D_t处具有亮度指标值D的图像,但是如果曝光时间te过长,则一帧的时间变长并且读取时间延长,以及如果照明时间tr过长,则功耗增加,然后如果用户可以看见脉冲LED 113,则用户会感到眩目。可以认为,可以通过采用尽可能靠近交点236的点的坐标来确定在曝光时间te和照明时间tr之间达到平衡的成像条件。

从图4中可以看出,在(a)的情况下,确定足以用于通过来自读取对象101的反射光获得足够量的光的照明时间tr和与tr几乎相同的曝光时间te。在(b)的情况下,确定足以用于通过来自读取对象101发射的光获得基本上足够量的光的曝光时间te和较短的照明时间tr。

基于上述概念,可以使用通用算法自动且快速地设置成像条件,使得可以获得具有优选亮度的图像,而不管读取对象101是什么以及周围环境如何,都不必在不必要的长时间和不太长的帧时间内点亮脉冲LED 113。可以期望能够在第三帧中设置能够以一定程度的精度实现亮度指标值的目标值D_t的成像条件,对于该第三帧,可以使用两帧中的数据作为成像历史。

如上所述,不必单独地逐步执行k_on、k_off和tr,te的计算过程。这里描述的是基本概念,并且可以通过组合多个步骤来分析地或近似地确定并执行用于在随后的多个步骤中获得结果的计算。

此外,可以将图4所示的条件以外的条件视为曝光时间te和照明时间tr应满足的约束条件。图4所示的条件在具体细节上可以与上述条件有所不同。

例如,为了防止在成像之后从成像传感器111读出图像数据时由于关闭脉冲led113时的电压变化而引起的噪声,可以想到在曝光时间te结束之前的预定时间k终止照明。在这种情况下,约束条件为te≤tr-k。

此外,可以基于对帧周期和快门速度的限制来确定曝光时间te的最大值和最小值。此外,可以基于对脉冲LED 113的响应速度、发热、功耗等的限制来确定照明时间tr的最大值和最小值。

此外,解提供线224上要用作曝光时间te和照明时间tr的点不限于与垂直线235的交点。例如,关于适当的正常数β,可以采用满足tr/te=β·(k_on/k_off)的点。照明时间较长且曝光时间较短的条件设置为β较大,照明时间较短且曝光时间较长的条件设置为β较小。β的值可以由用户根据读取装置100的使用模式或周围环境来调整。

接下来,参照图5至图8,将描述由CPU 121执行的、用于对代码符号102进行读取控制的过程,包括如上所述的用于确定曝光时间te和照明时间tr的过程。这里描述的过程是本发明的成像方法的实施例。此外,还包括在以上描述中省略的、直到准备两个帧的成像历史的过程。

首先,图5示出了与读取控制部151的功能相对应的过程的流程图。

当开启读取装置100时,CPU 121开始图5所示的过程。

在该过程中,CPU 121首先等待,直到从触发检测部152检测到读取开始触发的通知为止(S11)。当检测到该通知时,CPU 121指示成像部153开始成像以便读取代码符号102(S12)。

此后,CPU 121等待直到从解码部156接收到解码结果(S13中为“是”)或从读取开始经过预定时间(S14中为“是”),以及当满足这两个条件中的任一个时,CPU 121指示成像部153停止成像(S15)。在前一种情况下,解码(读取)成功,在后一种情况下,由于超时导致读取失败。

如果解码成功(S16中为“是”),则CPU 121通过输出部157输出解码结果,过程返回到步骤S11。此时,CPU 121可以通过声音或光将解码成功通知给用户。如果解码失败(S16中为“否”),则过程直接返回到步骤S11。

接下来,图6示出了与成像部153和成像条件确定部154的功能相对应的过程的流程图。

当检测到通过图5的步骤S12提供的成像开始指令时,CPU 121开始图6的过程。

在该过程中,CPU 121首先执行图7所示的成像条件确定过程(S21)。如参考图3和图4所述,该过程是用于确定在下一成像中要使用的曝光时间te和照明时间tr的过程,并且稍后将描述该过程。

接下来,CPU 121根据在步骤S21中确定的成像条件来控制光学部110以执行一帧的成像(S22)。然后,CPU 121从通过成像获得的图像数据的像素值来计算亮度指标值D(S23),并将成像中使用的成像条件和计算出的亮度指标值D的组合存储到成像历史存储部155中(S24)。此时,还存储指示当前开始的过程中的成像的帧数的数据。在图7的成像条件确定过程中参考在步骤S24中存储的数据。

此后,CPU 121确定是否满足以下条件之一,这些条件是:这次计算的亮度指标值D落在目标值D_t附近的预定范围内(适于解码);以及在最后预定帧数期间亮度指标值D继续落在预定范围之外(继续判别,因为尽管D尚未收敛到优选范围,但似乎花费了很长时间)(S25)。如果在S25中为“是”,则CPU 121确定解码在当前成像中获得的图像数据,并将该图像数据传递给解码部156(S26)。

如果在步骤S25中为“否”,则CPU 121确定不对在当前成像中获得的图像数据进行解码,跳过步骤S26,并且进行到步骤S27。

之后,如果CPU 121已经接收到通过图5的步骤S15提供的成像停止指令(S27中为“是”),则图6的过程结束,否则,过程返回至步骤S21以重复该过程。如果解码已经成功或读取超时,则步骤S27中的确定变为“是”。

接下来,图7示出了图6所示的成像条件确定过程的流程图。该过程对应于成像条件确定部154的功能。

CPU 121在图6的步骤S21中开始图7的过程。

在该过程中,首先,CPU 121检查在成像历史存储部155中存储了多少可用于确定当前读取中使用的成像条件的成像历史(S31)。然后,该过程根据该数量进行分支。

基本上,认为在图6的过程的最后开始之后存储的成像历史是可用的,但是可以限于最新的预定帧数的成像历史。可替代地,如果自从先前的解码以来没有经过很长时间,则由于可以假设周围环境没有显着差异,在先前的解码中使用的最后预定帧数的成像历史也可以是可用的。通过这样做,可以在步骤S37中从第一帧准确地设置合适的读取条件。

然而,当假设混合诸如纸和智能手机之类的具有不同特性的读取对象101时,优选地不使用先前解码的成像历史。可以允许用户在使用先前解码的成像历史的模式和不使用先前解码的成像历史的另一模式之间任意切换模式。

当在步骤S31中可用成像历史的数量为零时,不存在用于确定要在成像中使用的曝光时间te和照明时间tr的数据,因此CPU 121采用预先登记的初始值作为要在随后的成像中使用的曝光时间te和照明时间tr(S32),以及返回到图6的过程。作为这些初始值,优选地登记适合于最常执行读取的周围环境或读取对象101的值。例如,优选地在标准室内亮度下登记适于以标准距离读取纸张的值。

接下来,当在步骤S31中可用成像历史的数量为1时,仍不能根据公式3至公式5获得k_on和k_off的估计值。因此,CPU 121采用预先登记的初始值作为k_off(S33)。该初始值可以与在步骤S32中采用的值相同或不同。

然后,CPU 121基于在成像历史中的成像条件和亮度指标值D以及在步骤S33中采用的k_off的组合来计算k_on的估计(S34)。具体地,可以通过将在成像条件下的te,tr、亮度指标值D和曝光贡献度k_off代入通过修改公式2而获得的以下公式6来获得估计。

公式6

k_on=(D-k_off·te)/tr...(公式6)

此后,如以上参考图3和图4所述,CPU 121基于在步骤S33中采用的k_off和在步骤S34中计算出的k_on,来计算满足预定约束条件并且被估计以实现目标亮度指标值D_t的曝光时间te和照明时间tr(S35)。然后,CPU 121将计算出的te和tr确定为要在下一次成像中使用的曝光时间te和照明时间tr,该过程返回到图6的过程。

注意,在步骤33中采用关于k_off的默认初始值的原因是,即使该值偏离目标值,k_off所引起的负面影响也小于k_on。然而,即使采用关于k_on的默认初始值,也可以与上述情况类似地执行步骤S34和S35中的计算。但是,在这种情况下,代替公式6而使用通过将公式2布置为使得左侧变为k_off而获得的方程。

此外,在步骤S35中,不必采用如图4所示的解提供线234与垂直线235之间的交点236的坐标值作为曝光时间te和照明时间tr。由于尚未达到可以通过例如在满足约束条件的范围内采用最接近直线233的点的坐标值来稳定地计算k_on、k_off、te和tr的情况,可以防止te和tr变为极值,并对下一次成像或k_on、k_off、te和tr的后续计算产生不利影响。

接下来,当在步骤S31中可用成像历史的数量是两个或更多个时,在正常情况下,可以根据公式3至公式5获得k_on和k_off的估计。然后,CPU 121基于成像历史中的成像条件和亮度指标值D的多个组合,根据上述公式5计算k_on和k_off的估计(S36)。

然后,如以上参考图3和图4所述,基于在步骤S36中确定的k_on和k_off,CPU 121计算满足预定约束条件并且被估计以实现目标亮度指标值D_t的曝光时间te和照明时间tr(S37)。然后,CPU 121将计算出的te和tr确定为要在下一成像中使用的曝光时间te和照明时间tr,该过程返回到图6的过程。

接下来,图8示出了与解码部156的功能相对应的过程的流程图。

当通过图6的步骤S26的过程将图像数据传递到解码部156时,CPU 121获取图像数据并开始图8的过程。

在该过程中,CPU 121首先从所获取的图像数据中提取要解码的代码符号部分,并对所提取的图像数据执行解码过程(S41)。对于该解码过程,可以根据假设的代码符号的标准适当地采用公知的过程。可能需要根据多个标准进行顺序解码。

当步骤S41中的解码成功时(S42中为“是”),CPU 121将解码成功和解码结果的数据通知给读取控制部151(S43),并结束过程。如果解码失败(S42中为“否”),则该过程跳过步骤S43结束。

由于CPU 121执行图5至图8的过程,特别是通过图6和图7的过程,读取器100也可以快速设置适合于正在执行的读取的成像条件,以及即使在假设大范围的周围环境(特别是亮度)和读取对象101的情况下,也可读取代码符号102,如参考图3和图4所述。此外,脉冲LED 113的照明时间不会不必要地变长,因此可以减少功耗和眩光。

如果在图7的过程中涉及的可用成像历史的数目为零或一的状态下解码成功,则不必再重复成像,并且可以在可用的成像历史数量变为两个或更多之前完成读取。

第二实施例:图9和图10

接下来,将描述本发明的第二实施例。第二实施例与第一实施例的不同之处仅在于读取装置100基于所计算的曝光贡献度k_off和照明贡献度k_on的估计来区分成像对象是否为发光体,并且根据确定结果执行不同的过程。因此,省略与第一实施例相同的部分的描述,并且描述将集中于差异。与第一实施例的元件相同或相对应的元件由相同的附图标记表示。

首先,图9示出与读取器100中包括的代码符号的读取有关的功能的配置。

除了增加了成像对象区分部158之外,图9所示的功能配置与图2所示的相同。

成像对象区分部158具有基于成像条件确定部154在确定成像条件时计算出的k_off和k_on的估计来区分成像传感器111的成像对象是否为发光体的功能。此外,成像对象区分部158还具有基于区分结果来改变要由成像条件确定部154确定的照明时间tr的约束条件和由解码部156执行的解码过程的功能。

图10示出了与上述成像对象区分部158的功能相对应的过程的流程图。将在图7的步骤S36和S37之间插入图10的过程。

在第二实施例的读取装置100中,当CPU 121在图7的步骤S36中计算k_off和k_on的估计时,过程进入图10的步骤S51。在步骤S51和S52中,当曝光贡献度k_off大于预定的第一阈值T1以及照明贡献度k_on小于预定的第二阈值T2时(S52中为“是”),CPU 121确定成像对象为发光体。如果不满足这些条件中的任何一个(S51或S52中为“否”),则CPU 121确定成像对象不是发光体。

如在第一实施例的说明中参考图3所描述的,由于当尝试对发光体成像时可以认为k_on小而k_off有点大,因此根据该概念提供了以上标准。

当CPU 121确定成像对象不是发光体时,CPU 121将解码部156切换为通用解码模式(S53),并且将照明时段tr的下限设置为在图7的S37中所使用的一个约束条件(S54)。结果,与不设置下限的步骤S56的情况相比,照明时间tr的下限增加。

通用解码模式是在不假设特定读取对象的情况下,针对代码符号102的所有可能的标准顺序地执行解码过程的模式。此外,之所以在步骤S54中设置tr的下限,是因为考虑到当成像对象不是发光体时(通常需要一定程度的照明),通过确保一定程度的照明时间来防止曝光时间te不必要地变长,从而当照明时间tr太短时,曝光时间te变长,并且读取花费很长时间。

另一方面,当CPU 121确定成像对象为发光体时,CPU 121将解码部156切换为智能手机的解码模式(S55),并且将照明时间tr的上限设置为在图7的S37中使用的一个约束条件(S56)。结果,与没有设置上限的步骤S54的情况相比,照明时间tr的上限减小了。

在该实施例中,假设智能手机的显示器作为发光体,还假设在使用读取装置100的环境中在智能手机上显示特定标准的代码符号。在这样的环境中,当可以确定成像对象为发光体时,通过首先尝试在解码过程中针对特定标准的解码,可以加速解码过程,同时防止由于针对其他标准的解码而引起的不必要的解码失败。考虑到这样的应用,用于智能手机的解码模式是首先尝试针对特定标准的解码的模式。

顺便提及,可以想到的是,在某些环境中,除了智能手机上显示的代码符号之外,某些标准的代码符号也被打印在纸上。在这种情况下,如果在步骤S53中将首先尝试针对打印在纸上所使用的标准的解码模式设置为纸张介质的解码模式而不是通用解码模式,则可以加速与上述类似的解码过程。

此外,在步骤S56中设置tr的上限的原因是为了防止照明时间tr变得太长,因为当成像对象为发光体时,通常,照明对增加图像亮度没有太大的作用,并且太长的照明时间tr是不利的,因为它会导致功耗和眩光的增加。

在步骤S54或S56之后,CPU 121前进到图7的步骤S37的过程,然后执行与第一实施例中相同的过程。

如上所述,通过利用k_off和k_on的估计,可以在简单的过程中区分成像对象是否为发光体。此外,根据区分结果,通过切换解码过程,改变在下一次和随后的成像中使用的成像条件,或者改变其确定方法,还可以执行适合于读取对象或成像对象的有效读取。

根据成像对象的区分结果执行的过程不限于图10所示的过程,并且是任意的。其可以是与读取或解码代码符号无关的过程。此外,其可以是将非智能手机的某些对象假设为发光体的过程。

此外,作为用于区分成像对象的标准,可以仅使用“曝光贡献度k_off大于预定的第一阈值T1”和“照明贡献度k_on小于预定的第二阈值T2”中的一个。虽然精度比如图10所示同时使用它们两者的情况低,但仅基于上述之一,就可以在一定程度上进行区分。

此外,由于k_off,k_on>0成立,如果k_off>T1且k_on<T2,则k_off/k_on>T1/T2。因此,通过采用T1/T2作为第三阈值T3,当k_off与k_on的比值大于第三阈值T3时,在图10的步骤S51和S52中使用的标准也可以被认为确定成像对象为发光体。

变形例

尽管对实施例的描述如上所述,但是在本发明中,装置的特定配置、处理的特定过程、数据的格式、数据的特定内容、要采用的标准等不限于在实施例中描述的那些。

例如,在上述实施例中,尽管将tr定义为脉冲LED 113的照明时间,但是由成像传感器111捕获的图像的像素值取决于入射在每个像素上的光量的时间积分值。因此,据此,tr也可以被视为脉冲LED 113辐照的光量的时间积分值。该时间积分值可以被认为是“照明量”,即被提供在读取对象101上的照明量。如果脉冲LED 113的辐照强度总是恒定的,则时间积分值与照明时间成比例,因此,无论以何种方式考虑tr,在获得tr的值的计算上都没有很大的不同。然而,当tr被视为时间积分值,例如对于tr倍增,也可以想到将脉冲LED 113的光强度加倍而不是将其照明时间加倍。

此外,在实际装置中,即使施加电压以开启脉冲LED 113,光强度也不会立即达到期望的水平,但是通常光强度将在与控制电路的时间常数相对应的时间内逐渐增加,即使不会花费如此长的时间。为了在tr的计算中反映出这一点,可以想到将tr视为光量的时间积分值,使用脉冲LED 113的控制电路的特征方程将实际的通电时间tr_c转换为发射的光强度的时间积分值,并在将转换后的值视为上述实施例中的照明时间tr的同时,通过参考公式3至公式5、图3和图4描述的方法来计算用于实现亮度指标值的目标值D_t的te和tr的值。然后,通过使用特性方程计算用于实现与所计算的tr相对应的时间积分值的通电时间tr_x,并通过tr_x的时间对脉冲LED 113进行通电,可以考虑到瞬态现象,来执行适当的照明量。

读取装置100的读取目标可以是诸如字符串或标记等非代码符号102的信息。

此外,本发明当然适用于读取信息以外的目的而进行成像的情况。例如,即使在希望获取具有特定亮度的图像以便分析通过成像获得的图像本身的情况下,以与上述实施例的情况相同的方式来确定成像条件也是有用的。

此外,本发明的计算机程序的实施例是用于使一个或多个计算机协作以控制所需的硬件的计算机程序,以实现上述实施例中的读取装置100的功能或执行上述实施例中描述的过程。

这样的计算机程序可以存储在最初包含在计算机中的ROM或其他非易失性存储介质(闪存、EEPROM等)中。可以在将计算机程序记录在诸如存储卡、CD、DVD、蓝光光盘等的任意非易失性记录介质上的同时提供该计算机程序。也可以从连接到网络的外部装置下载计算机程序,并将其安装到计算机中并由计算机执行。

此外,以上说明的实施例和修改的示例的配置只要不相互矛盾可以以任意的组合来实施,以及自然也可以仅取出一部分来实施。

附图标记列表

100...读取装置,101...读取对象,102...代码符号,110...光学部,111...成像传感器,112...透镜,113...脉冲LED,120...控制部,151...读取控制部,152...触发检测部,153...成像部,154...成像条件确定部,155...成像历史存储部,156...解码部,157...输出部,158...成像对象区分部,224...解提供线,235...垂直线,D,D1...亮度指标值,D_t,D1_t...亮度指标值的目标值,k_off...曝光贡献度,k_on...照明贡献度,te…成像传感器111的曝光时间,tr…脉冲LED 113的照明时间

27页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:图像处理装置、方法、系统和计算机可读介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类