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

条码处理方法、插件及其适用的便携设备与流程

2023-01-16 09:40:47 来源:中国专利 TAG:


1.本发明主要涉及条码处理领域,尤其涉及一种条码处理方法、插件及其适用的便携设备。


背景技术:

2.目前使用扫码设备识读条码时,常遇到条码无法识别的情况,这种情况发生的原因可能是条码缺失、脏污、褶皱、反光等导致扫码头采集图像中的条码不清晰、不完整,从而导致条码算法无法正确识读。若要解决上述的问题,则需要通过大量无法识读的条码样本对条码算法进行训练和优化。一般情况下获取此类样本图片需要研发人员在产品开发阶段和设备使用方进行沟通,需要设备使用方提供样本照片供研发人员进行算法的训练和优化。这样的方式沟通成本较高,并且设备使用方所提供的样本照片通常和实际异常条码场景存在出入,算法优化效率低,也无法大批量复制,研发成本很高。


技术实现要素:

3.本发明要解决的技术问题是提供一种条码处理方法、插件及其适用的便携设备,可以在设备工作过程中实时获取异常条码影像,从而不断优化设备异常条码处理能力,降低研发成本,提高设备的稳定性和用户体验。
4.为解决上述技术问题,本发明提供了一种条码处理方法,包括如下的步骤:在设备进行扫描条码的工作过程中,实时读取通过扫码头获取的条码源图;对所述条码源图进行解析,并判断解析结果是否正常,其中,若解析结果正常,返回解码成功字符串;若解析结果异常,判定所述条码源图为异常条码影像,并将所述异常条码影像传输至云端服务器中与所述设备相关的条码算法优化训练样本集。
5.在本发明的一实施例中,还包括在判定所述条码源图为异常条码影像时,将所述异常条码影像保存至缓存队列中并添加未读标记。
6.在本发明的一实施例中,还包括轮询判断所述缓存队列中是否有未读标记,其中,若判断结果为是,则将所述异常条码影像保存至所述设备的本地存储模块;若判断结果为否,则继续轮询判断所述缓存队列中是否有未读标记。
7.在本发明的一实施例中,在将所述异常条码影像保存至所述设备的本地存储模块之前,还包括将所述异常条码影像压缩调整为jepg格式。
8.在本发明的一实施例中,还包括轮询判断所述本地存储模块中是否有所述异常条码影像,其中,若判断结果为是,则将所述异常条码影像上传至所述云端服务器;若判断结果为否,则继续轮询判断所述本地存储模块中是否有所述异常条码影像。
9.在本发明的一实施例中,还包括在将所述异常条码影像上传至所述云端服务器后,删除所述本地存储模块中的所述异常条码影像。
10.在本发明的一实施例中,还包括根据所述设备与所述云端服务器之间网络传输协议的类型确定预设时间内所述设备向所述云端服务器传输所述异常条码影像的数量上限。
11.本发明的另一方面还提出了一种条码处理插件,适于安装在便携设备中,所述条码处理插件包括:影像采集模块,配置为在设备进行扫描条码的工作过程中,实时读取通过扫码头获取的条码源图;条码算法模块,配置为对所述条码源图进行解析,并判断解析结果是否正常,且当解析结果正常时,返回解码成功字符串,而当解析结果异常时,判定所述条码源图为异常条码影像;存图模块,配置当所述条码算法模块判断解析结果异常时,将所述异常条码影像保存至所述设备的本地存储模块;以及传图模块,配置为将所述异常条码影像传输至云端服务器中与所述设备相关的条码算法优化训练样本集。
12.在本发明一实施例中,所述存图模块还配置为采用轮询的方式判定在缓存队列中是否存在所述异常条码影像,且所述传图模块还配置为采用轮询的方式判断所述设备的本地存储模块中是否存在所述异常条码影像。
13.本发明的另一方面还提出了一种便携设备,包括扫码头、本地存储模块以及上述的条码处理插件。
14.与现有技术相比,本发明具有以下优点:本技术方案在便携设备(pda设备)中搭建智能的异常条码图像的获取和处理手段,从而节省了设备研发过程中与设备使用方反复沟通异常条码样本的时间和人力成本;本发明通过在设备的实际使用过程中不断扩充与设备相关的条码算法优化训练样本集,可大大确保异常条码样本图片和用户使用环境的一致性,避免出现用户手动拍照和实际条码扫描图像不一致的情况;本发明通过更低的成本提高设备的稳定性和用户体验。
附图说明
15.包括附图是为提供对本技术进一步的理解,它们被收录并构成本技术的一部分,附图示出了本技术的实施例,并与本说明书一起起到解释本发明原理的作用。附图中:
16.图1是本发明一实施的一种条码处理方法的流程示意图;
17.图2是本发明一实施例的一种条码处理插件的架构图;
18.图3是本发明一实施例的一种条码处理插件的工作流程原理图;
19.图4是本发明一实施的一种条码处理插件中存图模块的工作流程示意图;以及
20.图5是本发明一实施例的一种条码处理插件中传图模块的工作流程示意图。
具体实施方式
21.为了更清楚地说明本技术的实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本技术的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本技术应用于其他类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
22.如本技术和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。
23.除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表
达式和数值不限制本技术的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
24.在本技术的描述中,需要理解的是,方位词如“前、后、上、下、左、右”、“横向、竖向、垂直、水平”和“顶、底”等所指示的方位或位置关系通常是基于附图所示的方位或位置关系,仅是为了便于描述本技术和简化描述,在未作相反说明的情况下,这些方位词并不指示和暗示所指的装置或元件必须具有特定的方位或者以特定的方位构造和操作,因此不能理解为对本技术保护范围的限制;方位词“内、外”是指相对于各部件本身的轮廓的内外。
25.为了便于描述,在这里可以使用空间相对术语,如“在
……
之上”、“在
……
上方”、“在
……
上表面”、“上面的”等,用来描述如在图中所示的一个器件或特征与其他器件或特征的空间位置关系。应当理解的是,空间相对术语旨在包含除了器件在图中所描述的方位之外的在使用或操作中的不同方位。例如,如果附图中的器件被倒置,则描述为“在其他器件或构造上方”或“在其他器件或构造之上”的器件之后将被定位为“在其他器件或构造下方”或“在其他器件或构造之下”。因而,示例性术语“在
……
上方”可以包括“在
……
上方”和“在
……
下方”两种方位。该器件也可以其他不同方式定位(旋转90度或处于其他方位),并且对这里所使用的空间相对描述作出相应解释。
26.此外,需要说明的是,使用“第一”、“第二”等词语来限定零部件,仅仅是为了便于对相应零部件进行区别,如没有另行声明,上述词语并没有特殊含义,因此不能理解为对本技术保护范围的限制。此外,尽管本技术中所使用的术语是从公知公用的术语中选择的,但是本技术说明书中所提及的一些术语可能是申请人按他或她的判断来选择的,其详细含义在本文的描述的相关部分中说明。此外,要求不仅仅通过所使用的实际术语,而是还要通过每个术语所蕴含的意义来理解本技术。
27.应当理解,当一个部件被称为“在另一个部件上”、“连接到另一个部件”、“耦合于另一个部件”或“接触另一个部件”时,它可以直接在该另一个部件之上、连接于或耦合于、或接触该另一个部件,或者可以存在插入部件。相比之下,当一个部件被称为“直接在另一个部件上”、“直接连接于”、“直接耦合于”或“直接接触”另一个部件时,不存在插入部件。同样的,当第一个部件被称为“电接触”或“电耦合于”第二个部件,在该第一部件和该第二部件之间存在允许电流流动的电路径。该电路径可以包括电容器、耦合的电感器和/或允许电流流动的其它部件,甚至在导电部件之间没有直接接触。
28.参照图1,本发明的一实施例提出了一种条码处理方法10,可以在设备工作过程中实时获取异常条码影像,从而不断优化设备异常条码处理能力,降低研发成本,提高设备的稳定性和用户体验。本技术中图1使用了流程图用来说明根据本技术的实施例的系统所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,或将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
29.根据图1,条码处理方法10包括如下的步骤。
30.步骤11为在设备进行扫描条码的工作过程中,实时读取通过扫码头获取的条码源图。通常来说,在具有扫码头的设备中,扫码头扫描条码图像,会通过传感器输出一个原始图像数据(raw图),这也是用于条码解析算法进行解析的图像数据格式。本发明步骤11的关键在于,步骤11是在设备正常工作的同时,不断的通过扫码头采集影像流,从而在设备使用过程中,能够实时的对于异常条码影像进行收集。相较于现有技术在设备研发阶段对于预设的条码异常图像进行处理,本发明所收集的异常条码影像的时间节点和设备工作环境均不同。
31.步骤12为对条码源图进行解析。在解析后进一步判断解析结果是否正常。其中,若解析结果正常,则执行步骤13返回解码成功字符串,使设备继续进行扫码成功后的其他操作。若解析结果异常,则执行步骤14判定条码源图为异常条码影像,并继续执行步骤15将异常条码影像传输至云端服务器中与设备相关的条码算法优化训练样本集。
32.在本发明的一些实施例中优选地,还包括在执行步骤14判定条码源图为异常条码影像时,将异常条码影像保存至缓存队列中并添加未读标记。示例性的,缓存队列可以选用ring buffer。在这样的实施例中,本发明的条码处理方法还包括轮询判断缓存队列中是否有未读标记,其中,若判断结果为是,则将异常条码影像保存至设备的本地存储模块;若判断结果为否,则继续轮询判断缓存队列中是否有未读标记,直至下一次找到了该未读标记并进行本地存储的操作。
33.进一步优选地,在这样的实施例中,在将异常条码影像保存至设备的本地存储模块之前,还包括将异常条码影像压缩调整为jepg格式。通常来说,将异常条码影像调整为jepg个时候,压缩率可以达到90%,即1mb的raw图(条码源图)在压缩为jpeg后大小仅为100kb,可以有效的减少传图流量,提高向云端服务器上传图像的速度。
34.相似的,在本发明的一些实施例中,条码处理方法还包括轮询判断本地存储模块中是否有异常条码影像,其中,若判断结果为是,则将异常条码影像上传至云端服务器;若判断结果为否,则继续轮询判断本地存储模块中是否有异常条码影像,直至下一次确定了本地存储模块中具有异常条码影像,再完成上传至云端服务器的操作。进一步优选地,在这样的实施例中,还包括在将异常条码影像上传至云端服务器后,删除本地存储模块中的异常条码影像,从而可以进一步节省设备的本地存储空间,以便于在后续使用过程中有充足的存储空间继续存储其他异常条码图像。
35.在本发明的一些实施例中,优选地,还包括根据设备与云端服务器之间网络传输协议的类型确定预设时间内设备向云端服务器传输异常条码影像的数量上限。示例性的,设备在使用时可以通过wifi或者手机移动网络等等与云端服务器发生数据通信,这取决于设备在工作时所使用的环境。示例性,在本发明的一些实施例中,若设备连接的是wifi,可以设定在24小时内向云端服务器传输异常条码影像的传图上限为50张;而相对应的,若设备使用移动网络,则24小时内的传图上限为5张。这意味着,设备连接有wifi时,可以被允许在一定时间内向云端服务器传输更多的异常条码图像,而在仅具有移动网络时,只上传少量的图像,从而可以尽量降低采集异常条码影像对于设备正常使用的影响,提升用户体验。
36.参照图2,本发明的一实施例还提出了一种条码处理插件20。该条码处理插件适于安装在便携设备中。条码处理插件20包括影像采集模块21、条码算法模块22、存图模块23以
及传图模块24。
37.具体的,影像采集模块21配置为在设备进行扫描条码的工作过程中,实时读取通过扫码头获取的条码源图。条码算法模块22配置为对条码源图进行解析,并判断解析结果是否正常,且当解析结果正常时,返回解码成功字符串,而当解析结果异常时,判定条码源图为异常条码影像。存图模块23配置当条码算法模块判断解析结果异常时,将异常条码影像保存至设备的本地存储模块。传图模块24配置为将异常条码影像传输至云端服务器中与设备相关的条码算法优化训练样本集。
38.优选地,存图模块23还配置为采用轮询的方式判定在缓存队列中是否存在异常条码影像,且传图模块24还配置为采用轮询的方式判断设备的本地存储模块中是否存在异常条码影像。
39.可以理解的是,条码处理插件20可以与如图1所示的条码处理方法10在技术方案的细节上相互对应,与条码处理方法10有关的一些细节在此部分不再赘述。现根据图3,对于条码处理插件20中的各模块工作流程进行进一步详细的说明。
40.根据图3,影像采集模块21读取扫码头实时影像raw图(条码源图),条码算法模块可以对于该格式的图像进行解析,如果条码解析不存在异常,则获取解码成功字符串,并返回至设备端进行扫描成功的后续操作。而当通过条码算法模块22解析后发现条码解析异常,则将异常条码影像保存于缓存队列ring buffer中并标记为未读。示例性的,条码解析异常的情况可以是条码缺失、条码脏污、条码褶皱、条码反光等等。
41.进一步优选地:在本实施例中,存图模块23和传图模块24均采用轮询的方式执行操作。这是考虑到在本发明的技术方案中,存图模块23和传图模块24本身是单独的进程,采用轮询的设计后各模块间可以互相解耦,同时也可以避免因系统高负载导致的通信滞后,不采用进程间通信方式也可以一定程度上减少系统的压力。
42.具体的,存图模块23轮询判断ring buffer中是否存在未读标记,如果发现了未读的异常条码影像,则先将其压缩为jepg格式后再保存到设备的本地存储模块中。关于压缩为jpeg格式的好处在前文已有说明,在此不再赘述。另一方面,传图模块24也轮询判断设备的本地存储模块中是否有jpeg图,如果判断结果为是,则将其上传至云端服务器后并同时删除本地存储模块中的该异常条码影像,从而可以尽量释放本地存储模块的空间,提升本方案的可持久性。
43.根据图3可以清楚的看出,本发明的条码处理插件20采用了独立的存图模块23和传图模块24,两个模块通过标志位和本地存储模块是否存在图片的方式来判断是否需要存图或传图,只有需要存图或传图时才会操作完整的数据,因此效率较高,异常条码影像的采集效果较好,同时不会影响设备的正常操作。
44.进一步优选地,图4示出了在本发明的一优选实施例中,存图模块23的工作流程图。可以看出的是,在本实施例中,若通过标志位(未读标记)判定缓存队列中没有条码源图,则停止5ms后再进行下一个buffer标志位的选取。
45.另一方面,图5也示出了在本发明的一优选实施例中,传图模块24的工作流程图。可以看出的是,在本实施例中,若判断在本地存储模块的相关目录下没有jepg图片,则停止1分钟后再进行下一次的读取。而当发现本地存储模块中具有相关的jepg图片后,首先判断设备是否连接wifi,如果连接wifi,则进行上传异常条码图像的数量上限为50张的具体操
作。当判断是否未连接wifi,还会进一步判断是否有可用的移动网络,如果判断结果为是,则进行上传异常条码图像的数量上限为5张的具体操作。这这意味着在本实施例中采用了根据设备与云端服务器之间网络传输协议的类型确定预设时间内设备向云端服务器传输异常条码影像的数量上限的操作。而当设备未连接wifi、也未有可用的移动网络时,则停止操作,直至1分钟后再进行下一轮的读取,直至具有可用的网络时再进行图像的传输。
46.最后,本发明还提出了一种便携设备,其中包括扫码头、本地存储模块以及参照图2~图5说明的条码处理插件20。该便携设备在正常使用时,通过每一次扫码头在工作时发现的异常条码影响,采用上述的方式先暂存在本地存储模块、并在合适的时机上传至云端服务器,从而可以针对该设备的条码解析算法进行长期的优化和改进。
47.本发明所提出的条码处理方法、插件及其应用的便携设备,通过设备扫码头在工作过程中不断采集raw图像,并实时把raw图传给条码算法进行识读解析,当发生条码缺失、条码脏污、条码褶皱、条码反光等情况时,条码解析失败,判定为此图像中的条码存在异常,同时把异常时刻的raw图转换为jpeg压缩图片并保存在便携设备中,一旦设备能够上因特网,会把jpeg图片上传云端服务器,作为异常条码样本永久性保存在云端服务器中与该设备有关的条码算法训练和优化的样本集,从而可以在设备的使用过程中不断优化条码扫描效果,提升用户体验。
48.上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述发明披露仅仅作为示例,而并不构成对本技术的限定。虽然此处并没有明确说明,本领域技术人员可能会对本技术进行各种修改、改进和修正。该类修改、改进和修正在本技术中被建议,所以该类修改、改进、修正仍属于本技术示范实施例的精神和范围。
49.同时,本技术使用了特定词语来描述本技术的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本技术至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本技术的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
50.本技术的一些方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。处理器可以是一个或多个专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理器件(dapd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、处理器、控制器、微控制器、微处理器或者其组合。此外,本技术的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。例如,计算机可读介质可包括,但不限于,磁性存储设备(例如,硬盘、软盘、磁带
……
)、光盘(例如,压缩盘cd、数字多功能盘dvd
……
)、智能卡以及闪存设备(例如,卡、棒、键驱动器
……
)。
51.计算机可读介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等等、或合适的组合形式。计算机可读介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机可读介质上的程序编码可以通过任何合适的介质进行传播,包括无
线电、电缆、光纤电缆、射频信号、或类似介质、或任何上述介质的组合。
52.同理,应当注意的是,为了简化本技术披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本技术实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本技术对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
53.一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有
±
20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本技术一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
54.虽然本技术已参照当前的具体实施例来描述,但是本技术领域中的普通技术人员应当认识到,以上的实施例仅是用来说明本技术,在没有脱离本技术精神的情况下还可作出各种等效的变化或替换,因此,只要在本技术的实质精神范围内对上述实施例的变化、变型都将落在本技术的权利要求书的范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献