一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种读写器的解码方法、读写器及存储介质与流程

2022-02-22 04:36:54 来源:中国专利 TAG:


1.本发明涉及图像处理技术领域,具体涉及一种读写器的解码方法、读写器及存储介质。


背景技术:

2.射频识别(radio frequency identification,rfid)是一种自动识别技术,是构建物联网的关键技术。rfid系统主要由读写器和应答器构成。应答器主要由天线、耦合元件及芯片组成,一般来说用标签作为应答器,每个标签具有唯一的电子产品代码,附着在物体上标识目标对象。读写器,或称为阅读器,主要由天线、耦合元件及芯片组成,是读取和/或写入标签信息的设备,可设计为可移动的手持设备或固定设备。
3.rfid技术在各个领域,特别是在物流、零售、服装等领域的应用,越来越广泛,但同时要求越来越高,特别是手持设备上的rfid,需要对不确定数量的标签,例如单标签、少量标签或者多标签甚至大量标签进行无漏读、连续、高效率的盘点。
4.而在一些实际应用场景中,读写器仅仅具有识别标签的功能还不够。有一些商品采用标签作为识别载体,也有一些商品采用条码作为识别载体。所以,如果仅仅能够识别标签的读写器在一些场景下的应用具有一定的局限性。


技术实现要素:

5.本技术实施例提供一种读写器的解码方法、读写器及存储介质。以使得该读写器在识别标签的同时能够对条码进行识别,能够扩大读写器的应用场景,提高读写器的使用效率。
6.有鉴于此,本技术第一方面提供了一种读写器的解码方法,该读写器的解码方法应用于读写器,所述读写器包含扫描模组,所述扫描模组中,摄像头与激光瞄准器依次排列,所述读写器的解码方法包括:通过所述摄像头拍摄第一帧图像,其中,当所述摄像头拍摄所述第一帧图像的曝光时刻,所述激光瞄准器开启,以使得所述第一帧图像中包含所述激光瞄准器发出的激光中心点;通过所述摄像头拍摄第二帧图像,其中,当所述摄像头拍摄所述第二帧图像的曝光时刻,所述激光瞄准器关闭,以使得所述第二帧图像中不包含激光中心点,所述摄像头拍摄所述第一帧图像与拍摄所述第二帧图像的时差小于或等于设定时间阈值;确定所述第一帧图像中所述激光中心点的第一位置,并确定所述第一位置在所述第二帧图像中相对应的第二位置;获取所述第二帧图像中,处于所述第二位置的条码,并对所述处于第二位置的条码进行解析。
7.在工业级读写器的应用场景中,可能有大量的条码需要读取。而在获取到的一帧图像中可能有两个或多个条码,但是每一次只能解析一个具体的条码。当瞄准到多个条码时,如何选择解析哪一个条码进行解析就是一个问题。在一些民用的终端设备中,通过某一些扫码软件扫描到多个条码时,可以通过扫码软件提供一个预览界面,将扫描到的多个条码都标识出来。再在该预览界面中,获取用户在多个条码中点击确定的一个条码,进而对用
户选中的一个条码进行解析。但是在工业级读写器采用这样的方案进行解码势必会降低解码效率。如果每一帧图像都需要操作人员去逐个点击和确认需要解析的多个条码中的具体一个条码,这将会大大降低扫码和解码的效率。
8.而本技术提供的这种读写器的解码方法中,读写器的扫描模组包含摄像头与激光瞄准器。通过该激光瞄准器可以瞄准到用户想要解码的条码,使得该拍摄的第一帧图像中包含有激光瞄准器发出的激光中心点。但是,由于该激光中心点的存在会对后续的解码造成影响,该具有激光中心点的第一帧图像不可直接用于解码。所以,再通过摄像头拍摄与该第一帧图像拍摄的时差小于或等于设定时间阈值的第二帧图像。而该第二帧图像中不带有激光中心点。通过该第一帧图像中激光中心点的位置确认该第二帧图像中条码的位置,从而可以对该第二帧图像中具体位置的条码进行解析。通过这样的方法能够确定该第二帧图像中需要解析的条码的位置,同时能够避免激光中心点的影响,从而能够实现对需要解码的条码进行解析的目的。能够扩大工业级读写器的使用的场景,可以使得读写器不仅仅能够识别标签,还可以实现条码的快速扫描和读取。
9.可选的,结合第一方面,在一种可能的实现方式中,所述对处于所述第二位置的条码进行解析之前,所述读写器的解码方法还包括:通过所述摄像头拍摄第三帧图像,其中,当所述摄像头拍摄所述第三帧图像的曝光时刻,所述激光瞄准器开启,以使得所述第三帧图像中包含激光中心点,所述摄像头拍摄所述第二帧图像与拍摄所述第三帧图像的时差小于或等于设定时间阈值;确定所述第三帧图像中所述激光中心点的第三位置,并判断所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点在所述第三帧图像中的第三位置的差距是否在设定误差范围之内;所述对处于第二位置的条码进行解析具体包括:当确定所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点所述第三帧图像中的第三位置的差距在设定误差范围之内时,对处于所述第二位置的条码进行解析。
10.值得指出的是,若仅仅只是通过第一帧图像中激光中心点的第一位置去定位该第二帧图像中条码的位置,有可能会导致一些不准确的情况。比如,在拍摄该第一帧图像与拍摄该第二帧图像的时间间隙,可能由于操作人员握住读写器的手发生抖动,从而导致该第一位置对应的第二位置上不存在条码,或者该第二位置上瞄准的条码,并不是该第一位置上激光中心点瞄准的条码。这样还是会存在一些误差。所以,本技术只有确定第一位置与第三位置的差距在设定误差范围之内时,才对该第二位置的条码进行解析。这样可以在前一张图像与后一张图像中激光中心点的差距较小的情况下,对中间一张图像进行解码,能够保证解码的准确率。
11.可选的,结合第一方面,在一种可能的实现方式中,所述方法还包括:当确定所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点在所述第三帧图像中的第三位置的差距超过所述设定误差范围时,则取消对处于所述第二位置的条码进行解析。如果确定该第一位置与该第三位置之间的差距超过该设定误差范围时,取消对该第二位置的条码解析,这样可以保证不会解析到其他的条码,能够提高解码的准确率。
12.可选的,结合第一方面,在一种可能的实现方式中,所述对处于所述第二位置的条码进行解析之前,所述读写器的解码方法还包括:通过所述摄像头拍摄第三帧图像,其中,当所述摄像头拍摄所述第三帧图像的曝光时刻,所述激光瞄准器开启,以使得所述第三帧图像中包含激光中心点,所述摄像头拍摄所述第二帧图像与拍摄所述第三帧图像的时差小
于或等于设定时间阈值;确定所述第三帧图像中所述激光中心点的第三位置,并判断所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点在所述第三帧图像中的第三位置是否落在同一个条码上;所述对处于第二位置的条码进行解析具体包括:当确定所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点所述第三帧图像中的第三位置落在同一个条码上时,对处于所述第二位置的条码进行解析。
13.确定该第一位置与该第三位置是否落在同一个条码上。只有该第一位置和该第三位置落在同一个条码上时,才对该第二位置的条码进行解析。由于该拍摄该第一帧图像与拍摄该第二帧图像的时差小于或等于设定时间阈值。且拍摄该第二帧图像与拍摄该第三帧图像的时差也小于或等于设定时间阈值,若确定该第一位置与该第三位置落在同一个条码上,则也可以确定该第二位置所在的条码与该第一位置所在的条码时同一个条码,则对该第二位置的条码进行解析,能够保证解码的准确率。
14.可选的,结合第一方面,在一种可能的实现方式中,所述方法还包括:当确定所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点在所述第三帧图像中的第三位置未落在同一个条码上时,则取消对处于所述第二位置的条码进行解析。若确定该第一位置与该第三位置未落在同一个条码上时,则取消对该第二位置的条码解析。这样可以保证不会解析到其他的条码,能够提高解码的准确率。
15.可选的,结合第一方面,在一种可能的实现方式中,所述通过所述摄像头拍摄第一帧图像之前,所述方法还包括:确定所述激光瞄准器发出的激光中心点瞄准在条码上,以使得所述第一帧图像中,所述激光中心点落在所述条码上。这样能够确保该第一帧图像中,该激光中心点瞄准在条码上。如果在没有移动该读写器的情况下,能够保证该第一位置对应到第二帧图像中的第二位置处刚好存在条码,以便于对该条码进行解析。
16.可选的,结合第一方面,在一种可能的实现方式中,所述确定所述第一帧图像中所述激光中心点的第一位置具体包括:在所述第一帧图像中,以预先设定水平线的中心,获取所述预设设定水平线上下设定数量的像素点的亮度值,并获取亮度值大于预设亮度阈值的像素点构成的像素矩阵;根据所述亮度值大于预设亮度阈值的像素点构成的像素矩阵确定所述激光中心点的第一位置。以该设定的水平线为中心获取该设定水平线上下设定数量的像素点的亮度值,并获取亮度值大于预设亮度阈值的像素点构成的像素矩阵;根据该确定所述亮度值大于预设亮度阈值的像素点构成的像素矩阵确定所述激光中心点的第一位置。这样相较于将该第一帧图像中从第一个像素点到最后一个像素点比较而言,能够减少对比的像素点数量,提高对比效率,能够节省时间,以最快的速度确定该第一位置。
17.可选的,结合第一方面,在一种可能的实现方式中,所述方法还包括:确定所述第一帧图像的亮度值,所述第一帧图像中激光中心点的亮度值在预设亮度值范围之内;所述通过所述摄像头拍摄第三帧图像之前,所述方法还包括:根据所述第一帧图像的亮度值与预先设定的亮度增益值动态调整所述摄像头的拍摄参数,以使得所述第三帧图像中激光中心点的亮度值也在所述预设亮度值范围之内。这样能够使得拍摄的带有激光中心点的第一帧图像和第三帧图像中激光中心点的亮度值均在该预设亮度值的范围内。从而能够从该第一帧图像与该第三帧图像中准确地分辨出该激光中心点。有利于定位该第一位置与该第三位置。
18.本技术第二方面提供了一种读写器,该读写器包含扫描模组、处理器,所述扫描模
组中,摄像头与激光瞄准器依次排列,所述摄像头,用于拍摄第一帧图像,其中,当所述摄像头拍摄所述第一帧图像的时刻,所述激光瞄准器开启,以使得所述第一帧图像中包含所述激光瞄准器发出的激光中心点;所述摄像头,还用于拍摄第二帧图像,其中,当所述摄像头拍摄所述第二帧图像的时刻,所述激光瞄准器关闭,以使得所述第二帧图像中不包含激光中心点,所述摄像头拍摄所述第一帧图像与拍摄所述第二帧图像的时差小于或等于设定时间阈值;所述处理器,用于确定所述第一帧图像中所述激光中心点的第一位置,并确定所述第一位置在所述第二帧图像中相对应的第二位置;所述处理器,还用于获取所述第二帧图像中,处于所述第二位置的条码,并对所述处于所述第二位置的条码进行解析。
19.本技术提供的这种读写器中,扫描模组包含摄像头与激光瞄准器。通过该激光瞄准器可以瞄准到用户想要解码的条码,使得该拍摄的第一帧图像中包含有激光瞄准器发出的激光中心点。但是,由于该激光中心点的存在会对后续的解码造成影响,该具有激光中心点的第一帧图像不可直接用于解码。所以,再通过摄像头拍摄与该第一帧图像拍摄的时差小于或等于设定时间阈值的第二帧图像。而该第二帧图像中不带有激光中心点。通过该第一帧图像中激光中心点的位置确认该第二帧图像中条码的位置,从而可以对该第二帧图像中具体位置的条码进行解析。通过这样的方法能够确定该第二帧图像中需要解析的条码的位置,同时能够避免激光中心点的影响,从而能够实现对需要解码的条码进行解析的目的。能够扩大工业级读写器的使用的场景,可以使得读写器不仅仅能够识别标签,还可以实现条码的快速扫描和读取。
20.可选的,结合第二方面,在一种可能的实现方式中,所述摄像头,还用于拍摄第三帧图像,其中,当所述摄像头拍摄所述第三帧图像的时刻,所述激光瞄准器开启,以使得所述第三帧图像中包含激光中心点,所述摄像头拍摄所述第二帧图像与拍摄所述第三帧图像的时差小于或等于设定时间阈值;该处理器,还用于确定所述第三帧图像中所述激光中心点的第三位置,并判断所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点所述第三帧图像中的第三位置的差距是否在设定误差范围之内;该处理器,还用于当确定所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点所述第三帧图像中的第三位置的差距在设定误差范围之内时,对所述处于所述第二位置的条码进行解析。
21.可选的,结合第二方面,在一种可能的实现方式中,该处理器,还用于当确定所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点所述第三帧图像中的第三位置的差距超过所述设定误差范围时,则取消对所述第二位置的条码解析。
22.可选的,结合第二方面,在一种可能的实现方式中,该摄像头,还用于拍摄第三帧图像,其中,当所述摄像头拍摄所述第三帧图像的时刻,所述激光瞄准器开启,以使得所述第三帧图像中包含激光中心点,所述摄像头摄像头拍摄所述第二帧图像与拍摄所述第三帧图像的时差小于或等于设定时间阈值;该处理器,还用于确定所述第三帧图像中所述激光中心点的第三位置,并判断所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点所述第三帧图像中的第三位置是否落在同一个条码上;该处理器,还用于当确定所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点所述第三帧图像中的第三位置落在同一个条码上时,对所述处于所述第二位置的条码进行解析。
23.可选的,结合第二方面,在一种可能的实现方式中,该处理器,还用于当确定所述激光中心点在所述第一帧图像中的第一位置与所述激光中心点所述第三帧图像中的第三
位置未落在同一个条码上时,则取消对所述第二位置的条码解析。
24.可选的,结合第二方面,在一种可能的实现方式中,该处理器,还用于确定所述激光瞄准器发出的激光中心点瞄准在条码上,以使得所述第一帧图像中,所述激光中心点落在所述条码上。
25.可选的,结合第二方面,在一种可能的实现方式中,该处理器,还用于在所述第一帧图像中,以预先设定水平线的中心,获取所述设定水平线上下设定数量的像素点的亮度值,并获取亮度值大于预设亮度阈值的像素点构成的像素矩阵;确定所述亮度值大于预设亮度阈值的像素点构成的像素矩阵为所述激光中心点的第一位置。
26.可选的,结合第二方面,在一种可能的实现方式中,该处理器,还用于确定所述第一帧图像的亮度值;根据所述第一帧图像的亮度值与预先设定的亮度增益值动态调整所述摄像头的拍摄参数,以使得所述第三帧图像中激光中心点的亮度值与所述第一帧图像中激光中心点的亮度值均在预设亮度值范围之内。
27.本技术第三方面提供了一种读写器,该读写器包括处理器、存储器、通信接口,该存储器中存储有程序指令,当该程序指令被处理器执行时,以实现如本技术第一方面至第一方面任意一种可能的实现方式中所述的读写器的解码方法。
28.本技术第四方面提供了一种计算机可读存储介质,该计算机可读存储介质存储有程序指令,所述程序指令在计算机上执行时,使得所述计算机执行如本技术第一方面至第一方面任意一种可能的实现方式中所述的读写器的解码方法。
29.本技术提供了一种读写器的解码方法、读写器及存储介质。该读写器的解码方法应用于读写器,所述读写器包含扫描模组,所述扫描模组中,摄像头与激光瞄准器依次排列,所述读写器的解码方法包括:通过所述摄像头拍摄第一帧图像,其中,当所述摄像头拍摄所述第一帧图像时,所述激光瞄准器开启,以使得所述第一帧图像中包含所述激光瞄准器发出的激光中心点;通过所述摄像头拍摄第二帧图像,其中,当所述摄像头拍摄所述第二帧图像的曝光时刻,所述激光瞄准器关闭,以使得所述第二帧图像中不包含激光中心点,所述摄像头拍摄所述第一帧图像与拍摄所述第二帧图像的时差小于或等于设定时间阈值;确定所述第一帧图像中所述激光中心点的第一位置,并确定所述第一位置在所述第二帧图像中相对应的第二位置;获取所述第二帧图像中,处于所述第二位置的条码,并对所述处于所述第二位置的条码进行解析。
30.在工业级读写器的应用场景中,可能有大量的条码需要读取。而在获取到的一帧图像中可能有两个或多个条码,但是每一次只能解析一个具体的条码。当瞄准到多个条码时,如何选择解析哪一个条码进行解析就是一个问题。在一些民用的终端设备中,通过某一些扫码软件扫到多个条码时,可以通过扫码软件提供一个预览界面,将扫描到的多个条码都标识出来。再在该预览界面中,获取用户在多个条码中点击确定的一个条码,进而对用户选中的那一个条码进行解析。但是在工业级读写器采用这样的方案进行解码势必会降低解码效率。如果每一帧图像都需要操作人员去逐个点击和确认需要解读取到的多个条码中的具体一个条码,这将会大大降低扫码和解码的效率。
31.而本技术提供的这种读写器的解码方法中,读写器的扫描模组包含摄像头与激光瞄准器。通过该激光瞄准器可以瞄准到用户想要解码的条码,使得该拍摄的第一帧图像中包含有激光瞄准器发出的激光中心点。但是,由于该激光中心点的存在会对后续的解码造
成影响,该具有激光中心点的第一帧图像不可直接用于解码。所以,再通过摄像头拍摄与该第一帧图像拍摄的时差小于或等于设定时间阈值的第二帧图像。而该第二帧图像中不带有激光中心点。通过该第一帧图像中激光中心点的位置确认该第二帧图像中条码的位置,从而可以对该第二帧图像中具体位置的条码进行解析。通过这样的方法能够确定该第二帧图像中需要解析的条码的位置,也能够避免激光中心点的影响,从而能够实现对需要解码的条码进行解析的目的。能够扩大工业级读写器的使用的场景,可以使得读写器不仅仅能够识别标签,还可以实现快速实现条码的快速扫描和读取。
附图说明
32.为了更清楚地说明申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
33.图1a是本技术实施例提供的一种民用终端设备扫描到多个条码的预览界面示意图;图1b是本技术实施例提供的一种读写器扫描到多个条码时拍摄的图像示意图;图2是本技术实施例提供的一种扫描模组的示意图;图3a是本技术实施例提供的一种读写器的结构示意图;图3b是本技术实施例提供的一种读写器的结构示意图;图3c是本技术实施例提供的一种读写器的结构示意图;图4是本技术实施例提供的一种读写器的解码方法的流程示意图;图5是本技术实施例提供的一种扫描模组的视场范围示意图;图6是本技术实施例提供的一种三帧图像叠加态的图像示意图;图7是本技术实施例提供的一种读写器的解码方法的流程示意图;图8是本技术实施例提供的一种读写器的解码方法的流程示意图;图9是本技术实施例提供的一种读写器的功能模块结构示意图;图10是本技术实施例提供的一种读写器的结构示意图。
具体实施方式
34.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
35.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
36.本技术中出现的术语“和/或”,可以是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。
另外,本技术中字符“/”,一般表示前后关联对象是一种“或”的关系。
37.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。
38.本文中的标签,是指rfid标签、射频标签或电子标签,简称为标签(tag)。本文中的读写器,也称为阅读器(reader),可以是uhf读写器。本文中的标签盘点系统,是一种rfid系统。本技术实施例技术可用于物流、零售、服装等各种领域。
39.本文中的一维码(或一维条码,one dimensional barcode)是指由宽度不同的黑白条根据不同的编码规则组成的条码。在该一维码中只有宽度携带信息,不同的宽度代表不同的编码值,高度不携带信息。当扫码设备获取到该一维码的图片信息后,通过计算黑白条的宽度,再对照编码规则,就可以还原条码内容。
40.本文中的二维码(或二维条码,two dimensional barcode),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的、黑白相间的、记录数据符号信息的图形。在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图像输入设备或光电扫描设备自动识读以实现信息自动处理。
41.在一些实际应用场景中,读写器仅仅具有识别标签的功能还不够。随着一维码、二维码等条码的应用越来越广泛,条码在大量产品、包装上随处可见。所以,如果仅仅能够识别标签的读写器在一些场景下的应用具有一定的局限性。能够同时识别标签与识别条码的读写器应运而生。
42.在日常生活中,以及在工业应用场景中,可能有大量的条码需要读取解析。所以,有可能在获取到的一帧图像中存在两个或多个条码,而目前的设备每一次只能解析一个具体的条码。因此,当瞄准到多个条码时,如何选择解析哪一个条码进行解析就是一个问题。
43.请参见图1a,图1a为本技术提供的一种面向消费者的民用的终端设备中,通过一些扫码软件扫描到多个条码时,提供的预览界面示意图。
44.当该民用的终端设备扫描到多个条码时,可以通过扫码软件提供一个预览界面,将扫描到的多个条码都标识出来,如图1a所示,每一个扫描到的条码在预览界面中都标识有一个箭头。用户在该预览界面上可以根据需求选择点击该多个箭头中的一个箭头。该终端设备再根据用户点击的具体的一个箭头对该对应的条码进行解析。通过这种方法可以准确的解析用户选择的条码。
45.但是工业级的读写器需要快速高效地进行解码,如果每一帧图像都需要操作人员去逐个点击和确认需要解析的多个条码中的具体一个条码,这将会大大降低扫码和解码的效率。所以,在工业级的读写器中,是不会提供预览界面的。参见图1b,图1b提供了一种读写器扫描到多个条码时拍摄到的图像示意图。该读写器同样会拍摄到存在多个条码的图像。但是,在不提供预览界面,未经过操作人员确认的情况下,如何选择解析扫描到的多个条码
中的哪一个,如何确定解析的条码是操作人员想要解析的条码就成为一个问题。
46.所以,本技术提供的一种读写器的解码方法。该读写器的解码方法应用于读写器。其中该读写器中包含扫描模组。请参见图2,图2提供了一种扫描模组的结构示意图。该扫描模组10包含补光灯11、摄像头12与激光瞄准器13。
47.其中,该补光灯11是可选的,非必要的组件。在一些情况下,该补光灯11可以没有,此处不做限制。该补光灯11,用于在环境光不足时用于补光,该补光灯11的开关和亮度可以由控制器所控制。该摄像头12,包含定焦镜头,用于采集条码图片,受控于控制器。该摄像头12的分辨率不做限制。示例性的,该摄像头12的分辨率可以固定设置为1280
×
800。该激光瞄准器13,用于发射十字激光,受控于控制器,以辅助瞄准。
48.该扫描模组10可以设置于读写器的各个部位,此处不做限制。示例性的,请参见图3a,该扫描模组10可以设置于该读写器20-1的顶部;请参见图3b与图3c,该扫描模组10可以设置于读写器20-2,读写器20-3的背部,其中,该读写器的形状可以如图3a的形状,也可以为图3b或图3c的形状,本技术对此不做限制。
49.应用于上述提及的扫描模组以及读写器,有鉴于上述问题,本技术提供了一种读写器的解码方法。该读写器的解码方法一方面能够使得读写器在识别标签的同时能够对条码进行识别,能够扩大读写器的应用场景,提高读写器的使用效率。另一方面可以实现在不提供预览界面的前提下,能够解析操作人员想要解析的条码。请参见图4,该读写器的解码方法可以包括:s110、通过摄像头拍摄第一帧图像。
50.通过摄像头拍摄第一帧图像,其中,当摄像头拍摄第一帧图像的曝光时刻,该激光瞄准器开启,以使得该第一帧图像中包含该激光瞄准器发出的激光中心点。需要说明的是,该激光中心点为该激光瞄准器发出的十字激光中该横向激光与纵向激光的中心交汇点。可以理解的是,拍摄图像的曝光时刻可以为1-2毫秒。
51.需要指出的是,由于该十字激光的亮度很高,导致该第一帧图像过曝,会对解码产生影响。该第一帧图像中包含有该十字激光,不能直接用于解码。
52.可以理解的是,该第一帧图像是用于操作人员通过十字激光瞄准条码的。若该十字激光没有瞄准条码,则不会采用摄像头拍摄该第一帧图像。所以,在通过摄像头拍摄该第一帧图像之前,该方法还包括:确定激光瞄准器发出的激光中心点瞄准在条码上,以使得该第一帧图像中,激光中心点落在该条码上。这样可以使得该第二帧图像中相对应的第二位置处存在该第一帧图像激光中心点瞄准的条码。
53.s120、通过摄像头拍摄第二帧图像。
54.通过摄像头拍摄第二帧图像,其中,当该摄像头拍摄该第二帧图像的曝光时刻,该激光瞄准器关闭,以使得该第二帧图像中不包含该激光中心点。该摄像头拍摄该第一帧图像与拍摄第二帧图像的时差小于或等于设定时间阈值。该设定时间阈值可以预先设定,例如15毫秒,此处不作为本技术的限制。
55.该第二帧图像中不包含该激光中心点,可以用于解码。但是该第二帧图像中可能包含多个条码。若直接将该第二帧图像解码,则无法确定具体解哪一个条码,也不确定该第二帧图像中,条码的具体位置。
56.s130、确定第一帧图像中激光中心点的第一位置,并确定第一位置在第二帧图像
中对应的第二位置。
57.确定第一帧图像中激光中心点的第一位置,并确定第一位置在该第二帧图像中相对应的第二位置。也就是说,通过该第一帧图像中激光点的位置来定位第二帧图像中条码的位置。而该摄像头拍摄该第一帧图像与拍摄第二帧图像的时差小于或等于设定时间阈值,则在一定程度上可以保证该第一帧图像和该第二帧图像保持一致,使得该第一帧图像中,该激光中心点的第一位置瞄准的条码,仍然显示在该第二帧图像中的第二位置上。
58.需要指出的是,该读写器中扫描模组的扫码距离比较广,扫码距离从几厘米到几十厘米不等,但是该扫描模组中摄像头拍摄的图像大小尺寸是确定的。请参见图2,该扫码模组10中,该摄像头12与该激光瞄准器13之间有一定的间距。该摄像头12位于该扫码模组10正中间位置,该激光瞄准器13位于该扫描模组10边缘位置。所以,该激光瞄准器13发出的激光中心点其实并不在该摄像头12拍摄的图像的中心位置,而是随着扫码距离的远近在拍摄的图片中水平移动。
59.具体的,该扫描模组中摄像头可视范围如图5所示,该摄像头的可视范围位于该摄像头左可视范围线与摄像头右可视范围线之间。该摄像头和激光瞄准器的距离相对固定。在该第一成像范围、第二成像范围、第三成像范围处,该激光瞄准线距离该摄像头左可视范围线的距离都不相同,且随着成像范围的增大,该激光瞄准线与该摄像头左可视范围线之间的距离占整个视场角的比例越来越大。
60.相对应的,请参见图6,图6为该第一成像范围、第二成像范围、第三成像范围分别拍摄的三帧图像叠加态的图像示意图。图6中,该第一十字激光、第二十字激光、第三十字激光分别与图5中第一成像范围、第二成像范围、第三成像范围依次相对应。可以看出,该第一十字激光、第二十字激光与该第三十字激光从左到右依次排列,越来越靠近图像中心位置。且该第一十字激光、第二十字激光与该第三十字激光依次从小变到大。
61.所以,该扫描模组距离条码的距离越远,则摄像头的成像范围越大,该激光中心点会越靠近图像的中心位置。相反的,该扫描模组距离条码的距离越近,则摄像头的成像范围越小,该激光中心点会越偏离图像的中心位置。简而言之,该激光中心点在图像中的位置,会随着该扫描模组与条码的距离变化而变化。
62.所以,若拍摄该第一帧图像与拍摄第二帧图像时,该扫描模组与条码之间的距离发生了很大的变化,那么可能会导致该第一帧图像中激光中心点对应到该第二帧图像中第二位置上不存在条码,或者该第二位置上的条码并不是该第一帧图像中激光中心点。但是,本技术提供的读写器是操作人员手持扫描的,一般来说,操作人员手持读写器扫码在短时间内,该读写器中摄像头与该条码的距离不会发生突变。所以,本技术中,该摄像头拍摄所述第一帧图像与拍摄所述第二帧图像的时差小于或等于设定时间阈值可以保证该第一帧图像和该第二帧图像保持一致,使得该第一帧图像中,该激光中心点的第一位置瞄准的条码,仍然显示在该第二帧图像中的第二位置上。
63.更进一步的,请参见图5和图6,由于该读写器中,该摄像头和激光瞄准器的位置相对固定且在一条水平线上,该摄像头拍摄图像时在竖直方向上以该摄像头为中心。所以,该摄像头拍摄到图像中,十字激光中的横向激光线都处在一条预先设定的水平线上,该预先设定水平线为该摄像头拍摄到的图像的中心线。
64.示例性的,本技术中摄像头输出的图像分辨率为1280
×
800,则该摄像头拍摄到的
激光中心点都在该图像中以左下角为原点的,纵坐标为400像素的一条直线上。且该激光中心点的横坐标在0至640范围之内。
65.所以,确定第一帧图像中所述激光中心点的第一位置具体可以包括:在第一帧图像中,以预先设定水平线的中心,获取该预先设定水平线上下设定数量的像素点的亮度值,并获取亮度值大于预设亮度阈值的像素点构成的像素矩阵;根据所述亮度值大于预设亮度阈值的像素点构成的像素矩阵确定所述激光中心点的第一位置。这样相较于从该第一帧图像中从头到尾寻找该激光中心点能够减少工作量,提高寻找效率。
66.具体的,在该第一帧图像中确定亮度值大于预设亮度阈值的像素点构成的像素矩阵之后,将该亮度值大于预设亮度阈值的像素点构成的像素矩阵确定为该激光中心点的第一位置。该第一位置可以为一个坐标集合。例如,纵坐标为400,横坐标在500至510的所有像素点。则确定该第二帧图像中第二位置为以该第二帧图像的左下角为原点的坐标系中,纵坐标为400,横坐标在500至510的所有像素点。
67.该第一位置在第二帧图像中相对应的位置即为该第二位置。具体的,将该第一位置对应的坐标集合,直接转移为该第二帧图像中,以图像左下角为原点的直角坐标系中的坐标集合,即可确定该第二位置。
68.s140、获取第二帧图像中,处于第二位置的条码,并对处于第二位置的条码进行解析。
69.获取该第二帧图像中,处于第二位置的条码,并对处于该第二位置的条码进行解析。
70.综上,本技术提供的这种读写器的解码方法不需要提供预览界面,能够适用于工业应用级别快速扫码解码。提高扫码和解码效率。而且通过该第一帧图像中激光中心点的位置确认该第二帧图像中条码的位置,从而可以对该第二帧图像中具体位置的条码进行解析。通过这样的方法能够确定该第二帧图像中需要解析的条码的位置,同时能够避免激光中心点的影响,从而能够实现对需要解码的条码进行解析的目的。能够扩大工业级读写器的使用的场景,可以使得读写器不仅仅能够识别标签,还可以实现条码的快速扫描和读取。
71.需要说明的是,本技术提供的这种读写器的解码方法,在上述步骤s140中,在获取到该第二帧图像之后,就直接对该第二帧图像中第二位置的条码进行解析。为了减少该第二帧图像与该第一帧图像较大偏差,仍然对该第二帧图像中第二位置的条码进行解析的情况。所以,本技术还提供了一种读写器的解码方法的另一个实施例,请参见图7,该读写器的解码方法包括:s210、通过摄像头拍摄第一帧图像。
72.请参见前述步骤s110进行理解,此处不再赘述。
73.s220、通过摄像头拍摄第二帧图像。
74.请参见前述步骤s120进行理解,此处不再赘述。
75.s230、通过摄像头拍摄第三帧图像。
76.通过摄像头拍摄第三帧图像,在拍摄该第三帧图像的曝光时刻,该激光瞄准器开启,以使得该第三帧图像中包含激光中心点。其中,该摄像头拍摄该第二帧图像与拍摄该第三帧图像的时差小于或等于设定时间阈值。该设定时间阈值如前文步骤s120所述。
77.在该拍摄的第三帧图像中确定激光中心点的第三位置。从该第三帧图像中确定激
光中心点的第三位置的方法步骤可以参见步骤s130中,从该第一帧图像中确定激光中心点的第一位置进行理解,此处不再反复描述。
78.值的补充的是,为了更好地从该第一帧图像与该第三帧图像中定位该第一位置与该第三位置。需要保证该第一帧图像与该第三帧图像的亮度值都在预设亮度值范围之内。
79.所以,在确定该第一帧图像的亮度值之后,通过摄像头拍摄第三帧图像之前,本方案还可以包括:根据第一帧图像的亮度值与预先设定的亮度增益值动态调整摄像头的拍摄参数,以使得第三帧图像中激光中心点的亮度值也在预设亮度值范围之内。这样有利于定位该第一位置与该第三位置,进而能够提高第二帧图像中解析条码的准确率。
80.s240、判断激光中心点在第一帧图像中的第一位置与激光中心点在第三帧图像中的第三位置的差距是否在设定误差范围之内。
81.判断该激光中心点在第一帧图像中的第一位置与该第三帧图像中第三位置的差距是否在设定误差范围之内。具体的,该设定误差范围可以预先设置,例如10个像素点。该第一位置与该第三位置可以通过将两帧图像叠加起来进行对比,参见图6所示的三帧图像叠加态示意图进行理解。该第一位置与该第三位置之间的差距可以为该第一位置对应的像素矩阵中心,与该第三位置对应的像素矩阵中心之间的差距。
82.当该第一帧图像中的第一位置与该第三帧图像中的第三位置之间的差距在该设定误差范围之内时,则进入步骤s250。若该第一帧图像中的第一位置与该第三帧图像中的第三位置之间的差距在该设定误差范围之外时,则进入步骤s260。
83.当该第一帧图像中的第一位置与该第三帧图像中的第三位置之间的差距在该设定误差范围之内时,可以认为该摄像头在拍摄该第一帧图像与拍摄该第三帧图像的时间内该激光中心点的位置基本无变化,那么在选择该第一帧图像与该第三帧图像中间的第二帧图像进行解码操作,则能够保证解码的准确性。
84.s250、确定第一帧图像中激光中心点的第一位置,确定第一位置在第二帧图像中对应的第二位置,并对处于第二位置的条码进行解析。
85.当该第一帧图像中的第一位置与该第三帧图像中的第三位置之间的差距在该设定误差范围之内时。则确定该第一帧图像中激光中心点的第一位置,确定该第一位置在第二帧图像中相对应的第二位置,并对处于该第二位置的条码进行解析。具体请参加前述步骤s130与步骤s140进行理解,此处不再赘述。
86.s260、取消对第二位置的条码进行解析。
87.若该第一帧图像中的第一位置与该第三帧图像中的第三位置之间的差距在该设定误差范围之外时,则取消对该第二位置的条码进行解析。由于该第一位置与该第三位置差距较大,若对该第二位置的条码进行解析则可能会造成解错条码。所以,直接取消对该第二位置的条码进行解析可以提高解码准确率。
88.需要说明的是,在取消对该第二位置的条码进行解析的同时,可以在该读写器的界面,或者通过该读写器的蜂鸣器对用户进行提示,以告知用户有漏读的条码,从而可以让用户重新扫描漏读的条码。
89.请参见图8,在另一种具体的实现方式中,该读写器的解码方法还包括:s310、通过摄像头拍摄第一帧图像。
90.请参见前述步骤s110进行理解,此处不再赘述。
91.s320、通过摄像头拍摄第二帧图像。
92.请参见前述步骤s120进行理解,此处不再赘述。
93.s330、通过摄像头拍摄第三帧图像。
94.请参见前述步骤s230进行理解,此处不再赘述。
95.s340、判断激光中心点在第一帧图像中的第一位置与激光中心点在第三帧图像中的第三位置是否落在同一个条码上。
96.判断该激光中心点在第一帧图像中的第一位置与该激光中心点在第三帧图像中的第三位置是否落在同一个条码上。具体的,可以将该第一帧图像与该第三帧图像进行对比。由于摄像头拍摄第一帧图像、第二帧图像的时差小于或等于该设定时间阈值。该摄像头拍摄第二帧图像与第三帧图像的时差也小于或等于该设定时间阈值。所以,一般来说,该第一帧图像与该第三帧图像不会有较大差距。所以,仅需要比较该第一帧图像中的第一位置与激光中心点在第三帧图像中的第三位置是否落在同一个条码上,就可以确定该第二帧图像中的第二位置是否与该第一帧图像中的第一位置在该同一个条码上。
97.具体的,可以首先定位该第一帧图像与该第三帧图像中各自存在几个条码,并确定该第一帧图像与该第三帧图像中,该激光中心点分别落在该第一帧图像、第三帧图像中具体哪一个条码上,进而确定该第一帧图像中激光中心点落在的条码与该第三帧图像中激光中心点落在的条码是否是同一个条码。
98.当该激光中心点在第一帧图像中的第一位置与激光中心点在第三帧图像中的第三位置落在同一个条码上时时,可以认为该摄像头在拍摄该第一帧图像与拍摄该第三帧图像的时间内该激光中心点的位置基本无变化,那么在选择该第一帧图像与该第三帧图像中间的第二帧图像进行解码操作,则能够保证解码的准确性。
99.s350、确定第一帧图像中激光中心点的第一位置,确定第一位置在第二帧图像中对应的第二位置,并对处于第二位置的条码进行解析。
100.请参见前述步骤s250进行理解,此处不再赘述。
101.s360、取消对第二位置的条码进行解析。
102.请参见前述步骤s260进行理解,此处不再赘述。
103.上面对本技术中的方法步骤进行了描述,下面对本技术实施例提供的读写器的功能模块进行描述,本技术提供的读写器用于实现上述读写器的解码方法,其相应的方法步骤以及有益效果请参见上述读写器的解码方法进行理解,此处不再赘述。请参见图5。该读写器30包括:扫描模组31、处理器32,其中,扫描模组31中,摄像头31-1与激光瞄准器31-2依次排列,摄像头31-1,用于拍摄第一帧图像,其中,当摄像头31-1拍摄第一帧图像的时刻,激光瞄准器31-2开启,以使得第一帧图像中包含激光瞄准器31-2发出的激光中心点;摄像头31-1,还用于拍摄第二帧图像,其中,当摄像头31-1拍摄第二帧图像的时刻,激光瞄准器31-2关闭,以使得第二帧图像中不包含激光中心点,摄像头31-1拍摄第一帧图像与拍摄第二帧图像的时差小于或等于设定时间阈值;处理器32,用于确定第一帧图像中激光中心点的第一位置,并确定第一位置在第二帧图像中相对应的第二位置;处理器32,还用于获取第二帧图像中,处于第二位置的条码,并对处于第二位置的条码进行解析。
104.更进一步的,摄像头31-1,还用于拍摄第三帧图像,其中,当摄像头31-1拍摄第三
帧图像的时刻,激光瞄准器31-2开启,以使得第三帧图像中包含激光中心点,摄像头31-1拍摄第二帧图像与拍摄第三帧图像的时差小于或等于设定时间阈值;该处理器32,还用于确定第三帧图像中激光中心点的第三位置,并判断激光中心点在第一帧图像中的第一位置与激光中心点第三帧图像中的第三位置的差距是否在设定误差范围之内;该处理器32,还用于当确定激光中心点在第一帧图像中的第一位置与激光中心点第三帧图像中的第三位置的差距在设定误差范围之内时,对处于第二位置的条码进行解析。
105.更进一步的,该处理器32,还用于当确定激光中心点在第一帧图像中的第一位置与激光中心点第三帧图像中的第三位置的差距超过设定误差范围时,则取消对第二位置的条码解析。
106.更进一步的,该摄像头31-1,还用于拍摄第三帧图像,其中,当摄像头31-1拍摄第三帧图像的时刻,激光瞄准器31-2开启,以使得第三帧图像中包含激光中心点,摄像头31-1摄像头31-1拍摄第二帧图像与拍摄第三帧图像的时差小于或等于设定时间阈值;该处理器32,还用于确定第三帧图像中激光中心点的第三位置,并判断激光中心点在第一帧图像中的第一位置与激光中心点第三帧图像中的第三位置是否落在同一个条码上;该处理器32,还用于当确定激光中心点在第一帧图像中的第一位置与激光中心点第三帧图像中的第三位置落在同一个条码上时,对处于第二位置的条码进行解析。
107.更进一步的,该处理器32,还用于当确定激光中心点在第一帧图像中的第一位置与激光中心点第三帧图像中的第三位置未落在同一个条码上时,则取消对第二位置的条码解析。
108.更进一步的,该处理器32,还用于确定激光瞄准器31-2发出的激光中心点瞄准在条码上,以使得第一帧图像中,激光中心点落在条码上。
109.更进一步的,该处理器32,还用于在第一帧图像中,以预先设定水平线的中心,获取设定水平线上下设定数量的像素点的亮度值,并获取亮度值大于预设亮度阈值的像素点构成的像素矩阵;确定亮度值大于预设亮度阈值的像素点构成的像素矩阵为激光中心点的第一位置。
110.更进一步的,该处理器32,还用于确定第一帧图像的亮度值;根据第一帧图像的亮度值与预先设定的亮度增益值动态调整摄像头31-1的拍摄参数,以使得第三帧图像中激光中心点的亮度值与第一帧图像中激光中心点的亮度值均在预设亮度值范围之内。
111.上面图9从模块化实体的角度对本技术实施例提供的读写器进行了详细描述,下面从硬件处理的角度对本技术实施例中读写器进行详细描述。
112.图10为本技术提供的一种读写器结构示意图。如图10所示,该读写器40包括处理器41、存储器42和通信接口43,处理器41、存储器42和通信接口43可以通过总线44相连。该通信接口可以连接诸如摄像头之类的外设。
113.该读写器40是一种硬件结构的装置,可以用于如图9所示的读写器30中的各个功能模块的功能。
114.可选的,上述处理器41可以是一个或多个中央处理器(central processing unit,cpu),微处理器,特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制本技术方案程序执行的集成电路。
115.该处理器41,用于执行存储器42中的指令,执行上述应用于图4、图7以及图8中任
意一种读写器的解码方法。该通信接口43,可以包含输入/输出(i/o)接口。
116.存储器42、处理器41和通信接口43可以通过总线44相互连接,但不限于只能通过总线44连接;总线44可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。
117.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
118.所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
119.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序指令指示相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介质可以包括:rom、ram、磁盘或光盘等。
120.本技术还提供了一种计算机可读存储介质,包括指令,当该指令在计算机设备上运行时,使得该计算机设备执行如本技术任意一个实施例提供的读写器的解码方法。
121.本技术还提供了一种芯片,该芯片包括处理单元和存储单元,该存储单元用于存储计算机操作指令;该处理单元用于通过调用存储单元中存储的计算机操作指令,以执行如本技术任意一个实施例提供的读写器的解码方法。
122.以上对本技术实施例所提供的一种读写器的解码方法、读写器及存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献