一种彩色条码及其颜色校准方法与流程

文档序号:16211682发布日期:2018-12-08 07:49阅读:1157来源:国知局
一种彩色条码及其颜色校准方法与流程

本发明涉及一种条码识别技术领域,尤其涉及一种彩色条码及其颜色校准方法。

背景技术

目前,条形码技术集编码、印刷、识别、数据采集和处理于一身,在商品流通、图书管理、邮政管理等许多领域都有着十分广泛的应用。且随着零售业和消费市场的飞速扩大和发展,越来越多的地方需要用到标签和条码。

现有条形码,是将宽度不等的多个黑条和白条及其对应字符,按照一定的编码规则排列组成的图形标识,用来表达一组信息。条形码的黑条和白条与对应的字符所表示的信息是相同的,主要依靠黑条和白条的不同宽度来对应定义不同的数字。

现有条形码需要通过专用识读设备依靠分辨条空的边界和宽窄来进行识读,要求条与空的颜色反差越大越好。因此,以白色作底、黑色作条成为了最理想的颜色搭配,同时,受扫描设备灵敏度和距离的影响也较大。

条形码中对应的字符通常由一组阿拉伯数字组成,是提供给人们直接识读或通过键盘向计算机输入数据使用,人工识读容易出错、且识读和录入速度慢,效率低下。同时,现有条形码需要通过专用扫描设备或人工逐一扫描和识读录入,处理效率较低。



技术实现要素:

为了克服现有技术的不足,本发明的目的之一在于提供一种彩色条码,其能解决彩色条码白平衡校正的技术问题。

本发明的目的之二在于提供一种彩色条码的颜色校准方法,其能解决彩色条码白平衡校正的技术问题。

本发明的目的之三在于提供一种计算机可读存储介质,其能解决彩色条码白平衡校正的技术问题。

本发明的目的之一采用如下技术方案实现:

一种彩色条码,包括起始区域、数据区域和校验区域,所述起始区域、数据区域和校验区域按顺序依次排列,所述起始区域包括有标识彩色条码的起始位置的起始色块,所述数据区域包括有标识彩色条码的编码数据的数据色块,所述校验区域包括有标识彩色条码的结束位置的校验色块;所述起始色块包括有第一色块和第二色块,所述第一色块位于起始位置,所述第二色块为白色色块。

进一步地,所述第一色块的数量为两个,所述第一色块、第二色块、第一色块依次相接以形成起始色块。

进一步地,所述第一色块为黑色色块,所述第二色块所占面积为起始色块所占面积的50%。

进一步地,所述数据色块中的编码颜色对应于相应的字符。

进一步地,所述字符为数字,将数字0-9中所有的数字与相应的编码颜色一一对应,以使得所述数字通过编码颜色进行显示。

本发明的目的之二采用如下技术方案实现:

一种彩色条码的颜色校准方法,包括以下步骤:

图像获取步骤:获取当前图像信息;

框选步骤:获取当前图像信息中的白色色块;

白平衡校正步骤:计算白色色块的颜色均值并对当前图像信息中的彩色条码进行白平衡校正。

进一步地,所述当前图像信息包括彩色条码,所述彩色条码包括白色色块;所述框选步骤具体包括以下子步骤:

框选彩色条码中的起始区域;

根据起始区域中的起始色块定位白色色块。

进一步地,所述白平衡校正步骤具体包括以下子步骤:

计算白色色块中各颜色通道亮度值的平均值ravew,gavew,bavew;

根据增益公式计算白色色块各颜色通道的增益值,所述增益公式为:

rgain=ymax/ravew,ggain=ymax/gavew,bgain=ymax/bavew;其中,ymax是在ycbcr颜色空间中y分量的在彩色条码图像中的最大值,rgain、ggain和bgain分别为r、g和b通道的增益值;

根据白平衡公式计算彩色条码中校正后每个颜色通道的颜色值r’、g’和b’,所述白平衡公式为r′=r×rgain,g′=g×ggain,b′=b×bgain,其中,r、g和b为在当前的颜色空间中的值。

进一步地,在白平衡校正步骤之后还包括以下步骤:

颜色获取步骤:提取校正后的彩色条码中各数据色块编码颜色的平均值,得到各数据色块的hsb颜色值信息;

条码识别步骤:根据获取到各数据色块的hsb颜色值信息以及条码编码规则以得彩色条码的识别结果。

本发明的目的之三采用如下技术方案实现:

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如本发明目的之二中任意一项所述的彩色条码的颜色校准方法。

相比现有技术,本发明的有益效果在于:

本发明的彩色条码的颜色校准方法通过获取当前图像信息中的白色色块来对彩色条码的颜色进行校正从而提高彩色条码的识别精度。

附图说明

图1为实施例一的彩色条码的示意图;

图2为实施例一的彩色条码的显示效果图;

图3为实施例三的彩色条码的颜色校准方法的流程图。

附图标记:1、起始区域;2、数据区域;3、校验区域;4、空白区。

具体实施方式

下面,结合附图以及具体实施方式,对本发明做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。

实施例一:

如图1所示,本实施例提供了一种彩色条码,包括起始区域、数据区域和校验区域,所述起始区域、数据区域和校验区域按顺序依次排列,所述起始区域包括有标识彩色条码的起始位置的起始色块,所述起始色块包括有第一色块和第二色块,所述第一色块位于起始位置,所述第二色块为白色色块。设置白色色块的目的主要是为了进行颜色校正,但是为了能够使得其实现更好的效果,需要提取出来的白色足够准确,故而所述第一色块的数量为两个,所述第一色块、第二色块、第一色块依次相接以形成起始色块。所述第一色块为黑色色块,所述第二色块所占面积为起始色块所占面积的50%。这个第一第一色块的颜色可以是红色、蓝色等等,但是这些颜色的对比度没有黑色这么强烈,故而最优选采用黑色。

起始区域:条码的第一位字符,用于提示读取设备当识别到该字符时,开始正式读取代码内容;同时起始区域还用于条码颜色的校正,起始区域使用特殊定义的色块和颜色值组合来表示。为了便于颜色校正,本发明的起始区域中的其实色块使用黑色+白色+黑色组合的色块形式来定义。白色区域为颜色校正的参考区域,且其位置和于黑色区域的比例大小都是固定的;两个黑色相邻区域的设置是为了辅助白色区域能够被更精准的定位;白色区域占整个色块面积的50%,相邻两个黑色区域各占25%,除了这些比例还可以采用其他的比例进行对比。在条码识别时,需要判断每个条码的准确值,因为白色参考区域作为识别时的比对颜色区域需要精确到像素级的裁剪,与白色区域两边相邻的区域选择黑色因为黑色与白色色差最强烈,它们的交界能够更精准的被识别判断,这样设置便于参考区域能被精确的定位,从而保证颜色判断的准确性。

所述数据区域包括有标识彩色条码的编码数据的数据色块,数据区域:条形码的主要内容,是根据编码规则制定的各种颜色值对应各种数字、字母的颜色块组合,在条码印刷时,可以根据需要设置是否显示对应色块代表的数字或字母字符。我们在应用时使用数字0-9的组合来进行条形码编码,并对每个数字都对应设置一个指定的颜色值。编码规则根据应用的行业和物品类别、用户需求进行制定。

所述数字0-9与编码颜色中的深蓝、青绿、紫色、黄色、红色、粉色、橙色、轻蓝、褐色和深绿一一对应。这只是其中一种实施方式,还可以采用其他不同的颜色组合来进行表示,不过在进行选取的时候,尽量选取颜色区分度比较明显的颜色,彩色条码的开始和结束标志可以是黑色(或者其他固定颜色)与数字对应颜色值各一半的形式。因为颜色条定宽的,所以黑色与数字对应颜色值各占半个宽度的形式作为起止标志会相对容易判断,故而比较优选地采用黑色与数字对应颜色各占一半的矩形进行操作。因为摄像头拍下的图像容易因为外界光源产生色差,更优选的做法是选择更少的颜色类别,所以用10种颜色代表10个数字,会在很大程度上提高准确度。实际应用需要时,也可以根据编码需要挑选出色差较大的颜色值对应字母作为扩展。从而能够从另一方面来保证识别的准确性。

所述校验区域包括有标识彩色条码的结束位置的校验色块;校验区域:校验区域具有特殊结构,是条码的最后一位字符,也是终止字符,作用是告知扫描设备全部条码代码已扫描完毕,开始根据校验规则检验读取到的数据是否正确。校验规则根据编码规则制定。

在图书馆应用时,我们使用0~9的10位数字组合进行编码对图书进行分类管理存放,其编码规则如下:

对应图书馆场景,用数字9、对应使用固定的黑色+数字9的颜色值组合来作为条码第1位的起始区域。条码的第2、3位用来对应每个分馆;第4、5位用来对应图书的分类;第6、7、8、9位对应图书的存放书架及书架上的存放位置序列;

第2~9位使用0~9中的任意数字按图书管理存放的规则进行编码组合,根据编码规则使用指定颜色值的相同形状、相同宽度、大小的色块来标示。当然,也可以使用具有各种变化的形状来体现,只需要对应编码规则的颜色值即可。

第10位为校验区域3。第10位根据前9位条码的数值和校验规则计算得出,且设置为特定黑色块+校验区域3所对应的颜色值组合的形式来表现,用以提示条码扫描设备读到此时识别结束,开始校验。

图书的侧面贴上该条码,编号为901033584?,“9”表示它属于图书这类物品,01对应为该书存放的分馆,03为图书的分类,3584为图书存放的书架和存放位置序列,“?”根据校验规则计算得到。

其各位条码、代表的信息及校验码计算方式如下表1:

当扫描设备摄像头在图书馆读取到为5或除了9以外其他数字或字母的起始区域对应的颜色值色块条形码组合时,则会判定该物品不属于图书,进行了错误的存放,会提示需要将其清理出来。除了上述的识别规则外,还可以采用其他的识别方式来进行判断,只要可以达到校验目的即可。

本发明的彩色条码主要由上述几个特征来标识,除了其实区域、数据区域和校验区域等特征外,还包括有静区,静区用于标识彩色条码的开始与结束,其主要用于保证条码信息能够被正确识别,使相邻的两个条码易于被读取设备区分;这个区域主要指的是起始区域前的空白部分和校验区域后的空白部分。

上述每类区域中的字符均使用根据规则制定的颜色块表示对应信息,各字符的色块大小、形状可以一致,色块形状也可以不同,只需要便于摄像头在一定距离范围内能够清晰的拍摄到条码上的各种颜色组合图像即可。

而当扫描到如图2所示的条码时,则可以根据扫描结果判断出图书的类别、存放场馆及存放书架和在书架上的具体位置,便于对图书进行分类管理存放。除了图书的管理存放,本发明的方法还可以应用在仓储货物、邮政快递的存放管理等方面。

本发明提供的彩色条码,每个条形码中包含的“条”的宽度和形状可以是相同的,每个条对应的数字使用“条”的颜色值来进行定义,由于当前条形码只能够通过特有的扫描设备去对条形码进行识别,并且每次只能够识别一种,从而从一定程度上会造成识别效率的低下;而本发明的条形码可以通过摄像头或普通拍摄装置进行批量识读,数据处理效率高,可以不需要专门的扫描设备,应用更方便。因为发明的条码识别是通过颜色值来进行识别的,并且每个条码具有相应的起始位置与结束位置,从而使得识别设备能够更轻易的区分出来;从而提供了大批量扫描识别的基础。本实施例的彩色条码除了图书的管理存放,本发明的方法还可以应用在仓储货物、邮政快递的存放管理等方面。

且本条码由于通过颜色块进行信息读取识别,不受物件的宽度影响。可以应用在比较细长的物件上,克服了现有条形码需要通过黑条和白条的不同宽度来进行信息对应,需要较大面积宽度的物件来贴附才能使扫码器进行扫描读取的缺点,应用范围更广泛。并且通过设立颜色校正,从而使得本实施例具有更高的识别精度。

实施例二:

除了实施例一中的用数字进行编码的方式外,也可以加入26个字母来进行组合编码,加入26个字母时,需要对26个字母都设定一个数字来对应,以便进行数据校验。如将26个字母从11-36的数字依次进行对应,且每个字母都对应设置一个指定的颜色值。设定26个字母对应一个具体的数值,是为了便于通过设置的编码规则设定校验区域,对条码进行校验。通过设置颜色校准,可以使得其具备更好的识别精度,故而当扩展到更多颜色的时候,使得其识别的准确度也大大提高。

如下表2,字母字符与数字对应表:

颜色值根据应用时对应字母字符进行指定,指定后将固定使用,不可随意变更。

实施例三:

如图3所示,本实施例提供了一种彩色条码的颜色校准方法,包括以下步骤:

s1:获取当前图像信息;进行白平衡校正关键的是需要有白色来进行颜色校正,这里的白色有两种获取形式,一种是彩色条码中直接包含有白色色块,另一种是白色色块作为独立于彩色条码之外的一种辅助来进行识别;在本实施例中针对于彩色条码中包含白色色块的形式来进行识别。

本实施例的从当前图像信息中分离彩色条码还需要预先对其构建相应的识别模型库,通过机器学习大量彩色条码图像,预先建立彩色条码识别模型。学习时通过获取大量各种角度、各种光线下拍摄到的彩色条码图像进行预处理、特征提取、反复识别训练,建立起彩色条码识别模型。这样在判断时,通过与识别模型比对,可以同时判断出图像中包含的多个彩色条码,并对各彩色条码图像进行定位和校正。对彩色条码图像进行预处理,通过除噪音和干扰、图像切割、归一化等预处理过程提高服务器对图像处理识别的性能。通过消除图像中无关的信息,恢复有用的真实信息,增强有关信息的可检测性和最大限度地简化数据,从而改进特征提取、匹配和识别的可靠性。对预处理后的彩色条码图像进行特征提取,根据不同彩色条码图像的空间密度的颜色、图案排布情况特征,将条码图像分为5*5的25个方格区域,计算每个方格中的点数与彩色条码图像总点数之比,得到25维特征向量。通过反复识别训练,从训练集各条码图像中提取出标准模版,建立标准特征库,完成彩色条码识别模型的建立。每种类型的条码都有几百个标准模版,因为条码具有方向性,训练时需要将条码图像按起始方向进行正确排列后提供给机器进行学习,通过预处理、特征提取后,将训练集各条码特征向量存入文件中。训练时需要指明各类条码的正确值。上述过程中模型构建的完成过程。

在进行实际处理的时候,先要获取当前图像信息,并对获取的彩色条码图像进行预处理。主要包括去除噪音和干扰、图像切割、归一化等预处理过程,通过预处理提高服务器对图像的处理识别性能。比对识别模型判断图片中的包含的各个彩色条码图像区域,根据判断出的彩色条码区域,对各个彩色条码图像进行条码定位和3d校正。

条码定位:对预处理后的彩色条码图像进行特征提取,寻找出构成彩色条码具有显著特点的颜色、图案、形状等属性,计算出它们的几何特征量,通过这些特征量形成描述彩色条码的特征向量,与系统中建立好的彩色条码识别模型的特征向量进行比对,当相似度超过80%则判定为一个彩色条码区域,根据判断结果对该彩色条码区域进行定位。

3d校正:由于拍摄时的拍摄角度、条码粘贴所在物品的摆放角度等问题,条码图像通常存在一定程度的图像扭曲或角度旋转颠倒,因此需要对单个条码图像进行3d校正。通过空间映射,将定位得到的各单个条码上、下、左、右四个角的四个点固定后进行投影,对各单个条码图像进行方向旋转、扭曲校正,使条码图像按照条码起始方向排列成为标准的矩形区域,得到标准形状大小的单个条码图像。

s2:获取当前图像信息中的白色色块;所述当前图像信息包括彩色条码,所述彩色条码包括白色色块;步骤s2具体包括以下子步骤:

框选彩色条码中的起始区域;首先要定位起始区域,之后才能进一步去框选白色色块;根据起始区域中的起始色块定位白色色块。判断并框选出各彩色条码的白色色块,根据白色色块的颜色均值计算彩色条码拍摄时的光源的特性,对彩色条码图像进行白平衡颜色校正,分析校正后的彩色条码每个条块的颜色值。

白平衡颜色校正:不同的光照环境会导致采集的图像颜色与真实颜色存在一定程度的偏差,例如绿色光源下拍摄得到的图像会整体偏绿偏冷,红色光源下拍摄的成像则偏红偏暖;所以需要选择合适的颜色平衡(校正)算法,消除光照环境对颜色显现的影响,这样在对摄像头拍摄到的彩色条码图像进行条块颜色值提取时才能得到准确的结果,避免误判。

在进行白平衡颜色校正时,首先框选出彩色条码的白色参考区域。根据彩色条码的起始字符区域(即条码的第一位字符区域)黑色块与白色块交界色差对比最强烈处判断出白色块的边缘对白色区域进行框选,将选择区域整体缩小一个阈值范围后得到白色参考区域。因为起始字符使用黑色+白色+黑色组合的色块形式,白色块的设置就是为了用来进行颜色校正的参考区域,黑色区域的设置是为了辅助白色区域能够被更精准的定位;整体缩小框选的白色参考区域是因为白色块与黑色块交界处会出现一些干扰判断的杂色像素点,缩小框选范围能避开这些杂色区域确保选区为彩色条码的白色区域,以保障判断的准确性。

s3:计算白色色块的颜色均值,从而判断环境光源的特性,并对当前图像信息中的彩色条码进行白平衡校正。所述步骤s3具体包括以下子步骤:

计算白色色块中各颜色通道亮度值的平均值ravew,gavew,bavew;

根据增益公式计算白色色块各颜色通道的增益值,所述增益公式为:

ggain=ymax/gavew,ggain=ymax/gavew,bgain=ymax/bavew;其中,ymax是在ycbcr颜色空间中y分量的在彩色条码图像中的最大值,rgain、ggain和bgain分别为r、g和b通道的增益值;

根据白平衡公式计算彩色条码中校正后每个颜色通道的颜色值r’、g’和b’,所述白平衡公式为r′=r×rgain,g′=g×ggain,b′=b×bgain,其中,r、g和b为在当前的颜色空间中的值。

s4:提取校正后的彩色条码中各数据色块编码颜色的平均值,得到各数据色块的hsb颜色值信息;

s5:根据获取到各数据色块的hsb颜色值信息以及条码编码规则以得彩色条码的识别结果。根据得到的颜色信息进而可以判断出彩色条码的相关信息。

从物理意义上说,灰色世界法假设自然界景物对于光线的平均反射的均值在总体上是个定值,这个定值近似地为“灰色”。在给定图片的白平衡算法中,灰色世界假设图片中的反射面足够丰富,以至于可以作为自然界景物的一个缩影。若这幅图片是在经典光源下拍摄的,其均值就应该等于灰色。若这幅图是在非经典光源下拍摄的,那么均值就会大于或者小于灰色值。而该均值对于灰色的偏离程度则反映了未知光源相对于已知光源的特性。

根据图像形成理论,对于纯白色的反射面而言,无论光源是什么颜色,最终反射后的颜色总能完全表现出光源的颜色。如果景物中有纯白的部分,那么就可以直接从这些像素中提取出光源信息。

在计算未知的环境光源的特性时,从彩色条码图片中的白色参考区域提取相关的统计特性,假定未知环境光源在整幅彩色条码图片上都是统一的,利用取均值的方法作为估算未知光源的关键统计量。

实施例四:

实施例四公开了一种可读的计算机存储介质,该存储介质用于存储程序,并且该程序被处理器执行时,实现实施例三的彩色条码的颜色校准方法。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

值得注意的是,上述基于内容更新通知装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

上述实施方式仅为本发明的优选实施方式,不能以此来限定本发明保护的范围,本领域的技术人员在本发明的基础上所做的任何非实质性的变化及替换均属于本发明所要求保护的范围。

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