CN103336938A - 一种基于一维条形码图像的识别方法 - Google Patents
一种基于一维条形码图像的识别方法 Download PDFInfo
- Publication number
- CN103336938A CN103336938A CN2013102217507A CN201310221750A CN103336938A CN 103336938 A CN103336938 A CN 103336938A CN 2013102217507 A CN2013102217507 A CN 2013102217507A CN 201310221750 A CN201310221750 A CN 201310221750A CN 103336938 A CN103336938 A CN 103336938A
- Authority
- CN
- China
- Prior art keywords
- bar code
- extreme point
- dimensional bar
- image
- edge pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Image Analysis (AREA)
- Character Discrimination (AREA)
Abstract
本发明公开了一种基于一维条形码图像的识别方法,包括:S1用户通过移动电子设备对一维条形码进行拍照;S2对拍摄的一维条形码图像进行角度的校正;S3选取一维条形码图像任意的2-3行进行垂直投影,得到一维条形码投影曲线;S4基于一维条形码投影曲线,得到始末极值点位置;S5进一步定位出条形码投影曲线中59个极值点位置;S6利用条形码边缘像素区域算法得到条形码边缘像素值区域,得到条形码黑白条宽度向量集;S7基于条形码黑白条宽度向量集,运用全局和局部的欧氏距离算法进行解码;S8对解码出的条形码字符进行检验。本发明具有灵活、实时、方便、稳定、识别正确率高等优点。
Description
技术领域
本发明涉及计算机视觉相关领域,特别涉及一种基于一维条形码图像的识别方法。
背景技术
伴随着经济的快速发展和科技的进步,人们消费观念的逐步提升,如果在消费时能够及时了解各大卖场商品的真伪、销售价格或者相关商品的信息,这将对买家带来很大的便利。但是,目前条形码的识别主要通过条形码激光扫描设备进行识别,并且市场上常用的激光读码器成本较高,携带不方便,所以我们希望能够通过利用我们的手机等电子设备所具有的拍照功能,对商品上的条形码进行拍照;然后,再利用手机网络或者免费提供的无线网络,及时了解所需产品的相关信息。这就需要通过计算机视觉相关领域知识对拍摄的条形码图像进行识别。
发明内容
本发明的目的在于克服激光读码器解码所带来的不便,提供一种基于一维条形码图像的识别方法,该方法具有实时、方便、识别率高等优点。
本发明的目的是通过下述技术方法实现的:
一种基于一维条形码图像的识别方法,包括以下步骤:
S1、用户通过移动电子设备对一维条形码进行拍照;
S2、对拍摄的一维条形码图像进行角度的校正;
S3、选取一维条形码图像中相邻的2-3行进行垂直投影,得到一维条形码投影曲线;
S4、基于一维条形码投影曲线,得到第一个黑条中间位置和最后一个黑条的中间位置即始末极值点位置;
S5、基于始末极值点位置,进一步定位出条形码投影曲线中59个极值点位置;
S6、利用条形码边缘像素区域算法得到条形码边缘像素值区域,继而得到条形码黑白条宽度向量集;
S7、基于条形码黑白条宽度向量集,运用全局和局部的欧氏距离算法进行解码;
S8、对解码出的条形码字符进行检验,如果正确则识别结束,否则调用纠错算法进行错误条形码字符校正,如无法校正转为S3。
所述S2对拍摄的一维条形码图像进行角度的校正,具体步骤为:
S2.1利用Radon变换来实现图像在不同方向的投影;
S2.2对投影数据进行差分处理,差分值绝对值的最大值方向与条形码互相垂直;
S2.3对图像进行旋转操作,实现对图像的校正。
所述步骤S3中选取条形码区域中相邻的2-3行进行垂直投影是通过对每行所对应元素上的数据求和,然后求取平均值所得。
所述步骤S6中运用条形码边缘像素区域算法得到条形码边缘像素值区域,具体包括如下步骤为:
S6.1条形码边缘像素区域为极值点的范围,所述极值点的范围在所述59个极值点中的三个极大值点中的最小值和所述59个极值点中三个极小值点中的最大值之间;
S6.2利用条形码梯度域来对条形码的边缘像素值区域做进一步的定位;
S6.3筛选出既满足S6.2,又满足边缘差分值的像素值中的最小值和最大值为条形码边缘像素值的区域。
所述S4基于一维条形码投影曲线,定位第一个黑条中间位置和最后一个黑条中间位置,具体步骤为:
S4.1定位一维条形码投影曲线中所有的极值点;
S4.2从左向右依次遍历极值点,如果该极值点小于该极值点到其左边第λ个极值点均值的0.85倍,则该极值点为第一个极值点;
从右向左依次遍历极值点,如果该极值点小于该极值点到其左边第λ个极值点平均值的0.85倍,则该极值点为最后一个极值点;所述λ的范围为10-15。
与现有技术相比,本发明具有如下有益效果:
(1)灵活性:本发明采取了基于Radon变换的条形码拍摄角度校正算法,对不同角度拍摄的条形码图像都可以进行识别,解决目前方法中需要垂直条形码进行拍照才能进行识别的问题,提高了拍照的灵活性。
(2)实时性:我们的方法主要是对1行n列(n为拍摄图像宽度)的矩阵进行数据处理,因此算法简单,计算速度快。
(3)解决了手机等终端像素较低、光照不均、拍摄距离和抖动等影响图像质量的干扰,对各种情况下拍摄的条形码图像都具有很高的识别率。
(4)鲁棒性强:提出基于全局和局部的欧氏距离算法和基于条形码投影曲线的纠错算法,进一步提高了识别方法的鲁棒性。
(5)方便性:用户只需要在手机等终端安装相关软件,就可以非常方便的了解商品信息。
附图说明
图1是本发明一种基于一维条形码图像的识别方法的工作流程图。
具体实施方式
下面结合实施例及附图,对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例
如图1所示,一种基于一维条形码图像的识别方法,包括如下步骤:
S1用户通过移动电子设备对一维条形码进行拍照,所述移动电子设备可以为手机。
S2对拍摄的一维条形码图像进行角度的校正,具体步骤为:
S2.1利用Radon变换来实现图像在不同方向的投影;
S2.2对投影数据进行差分处理,差分值绝对值的最大值方向与条形码互相垂直;
S2.3对图像进行旋转操作。
S3选取一维条形码图像中相邻的2-3行进行垂直投影,得到一维条形码投影曲线,所述步骤S3中选取条形码区域中相邻的2-3行进行垂直投影是通过对每行所对应元素上的数据求和,然后求取平均值所得。
所述一维条形码为M行N列的矩阵,首先从条形码矩阵中选取相邻的2-3行,也就是相邻的横跨条形码区域的2-3条线,这线就对应一行N列的矩阵,然后将2-3个一行N列矩阵相加求取平均值,仍为一个一行N列的矩阵,也就是一维条形码投影曲线
S4基于一维条形码投影曲线,得到第一个黑条中间位置和最后一个黑条中间位置,也就是始末极值点位置,具体步骤为:
S4.1定位一维条形码投影曲线中所有的极值点;
S4.2从左向右依次遍历极值点,如果该极值点小于该极值点到其左边第λ个极值点均值的0.85倍,则该极值点为第一个极值点;
从右向左依次遍历极值点,如果该极值点小于该极值点到其左边第λ个极值点平均值的0.85倍,则该极值点为最后一个极值点;所述λ的范围为10-15,确定始末极值点的位置也就是第一个黑条中间位置和最后一个黑条中间位置。
S5基于始末极值点位置,进一步定位出条形码投影曲线中59个极值点位置,判断是否为59个极值点,如果是则转为下一步,否则转为S3。
S6利用条形码边缘像素区域算法得到条形码边缘像素值区域,具体步骤为:
S6.1条形码边缘像素区域的初步定位:条形码边缘像素区域为极值点的范围,所述极值点的范围在所述59个极值点中的三个极大值点中的最小值和所述59个极值点中三个极小值点中的最大值之间;
S6.2条形码边缘像素区域的精确定位:条形码的边缘就是像素值变化比较大的区域,利用条形码梯度域来对条形码的边缘像素值区域做进一步的定位;
S6.3筛选出既满足S6.2,又满足边缘差分值的像素值中的最小值和最大值为条形码边缘像素值的区域。
S7、基于条形码黑白条宽度向量集,运用全局和局部的欧氏距离算法进行解码;基于条形码的固有特性,也就是条形码是由相连的两个黑条和两个白条的宽度表示一个数字,每个黑条和白条的宽度取值范围为1、2、3、4。因此黑条和白条之间受到干扰,很难得到精确的宽度,因此,我们在解码时采用全局和局部的欧氏距离算法,本算法既需要每个黑条和白条同条形码标准最相似,又要保证相邻黑条和白条的和同条形码标准最相似。
S8、调用条形码检验算法对解码出的条形码字符进行检验,判断是否识别正确,如果正确则识别过程结束,否者调用条形码纠错算法对识别出来的条形码字符进行校正,纠错算法较重新选取条形码区域进行识别,速度快很多;如果无法对识别出的字符进行正,则转为S3。。
本方法首先求取出1行n列矩阵中所有的极值点,是为了适应各种情况下拍摄的条形码图像,因为我们没法确定真正的极值点和噪声点,首先求出所有极值点,一是就是为了自适应选取阈值;二是为了找到第一个和最后一个黑条的中间位置,因为在条形码标准中,第一个黑条的左边和最后一个黑条的右边,会有一定宽度的平滑区域,因此在第一个黑条和最后一个黑条的中间位置的波动会较大,根据S4的方法很容易确定出第一个真正的极值点和最后一个极值点,进一步缩小了条形码的区域范围,而且如果图像干扰严重,通过S4会得到很多的极值点,然后在通过S5的进一步确定所有59个极值点。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (5)
1.一种基于一维条形码图像的识别方法,其特征在于,包括以下步骤:
S1、用户通过移动电子设备对一维条形码进行拍照;
S2、对拍摄的一维条形码图像进行角度的校正;
S3、选取一维条形码图像相邻的2-3行进行垂直投影,得到一维条形码投影曲线;
S4、基于一维条形码投影曲线,得到第一个黑条中间位置和最后一个黑条的中间位置,即始末极值点位置;
S5、基于始末极值点位置,进一步定位出条形码投影曲线中59个极值点位置;
S6、利用条形码边缘像素区域算法得到条形码边缘像素值区域,继而得到条形码黑白条宽度向量集;
S7、基于条形码黑白条宽度向量集,运用全局和局部的欧氏距离算法进行解码;
S8、对解码出的条形码字符进行检验,如果正确则识别结束,否则调用纠错算法进行错误条形码字符校正,如无法校正转为S3。
2.根据权利要求1所述一种基于一维条形码图像的识别方法,其特征在于,所述S2对拍摄的一维条形码图像进行角度的校正,具体步骤为:
S2.1利用Radon变换来实现图像在不同方向的投影;
S2.2对投影数据进行差分处理,差分值绝对值的最大值方向与条形码互相垂直;
S2.3对图像进行旋转操作,实现对图像的校正。
3.根据权利要求2所述一种基于一维条形码图像的识别方法,其特征在于,所述步骤S3中选取条形码区域中相邻的2-3行进行垂直投影是通过对每行所对应元素上的数据求和,然后求取平均值所得。
4.根据权利要求3所述一种基于一维条形码图像的识别方法,其特征在于,所述步骤S6中运用条形码边缘像素区域算法得到条形码边缘像素值区域,具体包括如下步骤为:
S6.1条形码边缘像素区域为极值点的范围,所述极值点的范围在所述59个极值点中的三个极大值点中的最小值和所述59个极值点中三个极小值点中的最大值之间;
S6.2利用条形码梯度域来对条形码的边缘像素值区域做进一步的定位;
S6.3筛选出既满足S6.2,又满足边缘差分值的像素值中的最小值和最大值为条形码边缘像素值的区域。
5.根据权利要求4所述的一种基于一维条形码图像的识别方法,其特征在于,所述S4基于一维条形码投影曲线,得到第一个黑条中间位置和最后一个黑条中间位置,具体步骤为:
S4.1定位一维条形码投影曲线中所有的极值点;
S4.2从左向右依次遍历极值点,如果该极值点小于该极值点到其左边第λ个极值点均值的0.85倍,则该极值点为第一个极值点;
从右向左依次遍历极值点,如果该极值点小于该极值点到其左边第λ个极值点平均值的0.85倍,则该极值点为最后一个极值点,所述λ的范围为10-15。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310221750.7A CN103336938B (zh) | 2013-06-05 | 2013-06-05 | 一种基于一维条形码图像的识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310221750.7A CN103336938B (zh) | 2013-06-05 | 2013-06-05 | 一种基于一维条形码图像的识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103336938A true CN103336938A (zh) | 2013-10-02 |
CN103336938B CN103336938B (zh) | 2016-04-13 |
Family
ID=49245097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310221750.7A Active CN103336938B (zh) | 2013-06-05 | 2013-06-05 | 一种基于一维条形码图像的识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103336938B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295455A (zh) * | 2016-08-09 | 2017-01-04 | 苏州佳世达电通有限公司 | 条形码指示方法及条码读取器 |
CN106778411A (zh) * | 2016-11-30 | 2017-05-31 | 上海集成电路研发中心有限公司 | 一种条形码定位方法 |
CN107403123A (zh) * | 2016-03-30 | 2017-11-28 | 兄弟工业株式会社 | 识别目标图像中的条码图像的图像分析设备 |
CN108009455A (zh) * | 2017-11-07 | 2018-05-08 | 深圳市华汉伟业科技有限公司 | 一种条形码的扫描信号的解码方法及装置 |
CN108108646A (zh) * | 2017-12-29 | 2018-06-01 | Tcl王牌电器(惠州)有限公司 | 条码信息识别方法、终端和计算机可读存储介质 |
CN108256375A (zh) * | 2018-01-10 | 2018-07-06 | 诺为信科技有限公司 | 一种一维条形码扫描方法 |
CN109508571A (zh) * | 2017-09-14 | 2019-03-22 | 杭州海康威视数字技术股份有限公司 | 一种条空定位方法、装置、电子设备及存储介质 |
CN111241862A (zh) * | 2020-01-21 | 2020-06-05 | 西安邮电大学 | 基于边缘特性的条形码定位方法 |
CN116415610A (zh) * | 2023-06-12 | 2023-07-11 | 恒银金融科技股份有限公司 | 银行存折条形码的处理方法、装置和电子设备 |
CN118428382A (zh) * | 2024-07-02 | 2024-08-02 | 广东朝歌智慧互联科技有限公司 | 条形码识别方法、终端及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5389770A (en) * | 1993-01-22 | 1995-02-14 | Intermec Corporation | Method and apparatus for decoding unresolved bar code profiles |
CN102799850A (zh) * | 2012-06-30 | 2012-11-28 | 北京百度网讯科技有限公司 | 一种条形码识别方法和装置 |
-
2013
- 2013-06-05 CN CN201310221750.7A patent/CN103336938B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5389770A (en) * | 1993-01-22 | 1995-02-14 | Intermec Corporation | Method and apparatus for decoding unresolved bar code profiles |
CN102799850A (zh) * | 2012-06-30 | 2012-11-28 | 北京百度网讯科技有限公司 | 一种条形码识别方法和装置 |
Non-Patent Citations (3)
Title |
---|
RAMTIN SHAMS ET AL: "Bar code recognition in highly distorted and low resolution images", 《ACOUSTICS,SPEECH AND SIGNAL PROCESSING》 * |
SHEN-CHUAN TAI ET AL: "A method of container codes detection and segmentation by using improved projection algorithm", 《PROCEEDINGS OF THE 8TH WORLD CONGRESS ON INTELLIGENT CONTROL AND AUTOMATION》 * |
刘发耀: "PDF417条码识别方法的研究", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107403123A (zh) * | 2016-03-30 | 2017-11-28 | 兄弟工业株式会社 | 识别目标图像中的条码图像的图像分析设备 |
CN106295455B (zh) * | 2016-08-09 | 2021-08-03 | 苏州佳世达电通有限公司 | 条形码指示方法及条码读取器 |
CN106295455A (zh) * | 2016-08-09 | 2017-01-04 | 苏州佳世达电通有限公司 | 条形码指示方法及条码读取器 |
CN106778411A (zh) * | 2016-11-30 | 2017-05-31 | 上海集成电路研发中心有限公司 | 一种条形码定位方法 |
CN106778411B (zh) * | 2016-11-30 | 2019-06-21 | 上海集成电路研发中心有限公司 | 一种条形码定位方法 |
CN109508571B (zh) * | 2017-09-14 | 2021-08-27 | 杭州海康威视数字技术股份有限公司 | 一种条空定位方法、装置、电子设备及存储介质 |
CN109508571A (zh) * | 2017-09-14 | 2019-03-22 | 杭州海康威视数字技术股份有限公司 | 一种条空定位方法、装置、电子设备及存储介质 |
CN108009455A (zh) * | 2017-11-07 | 2018-05-08 | 深圳市华汉伟业科技有限公司 | 一种条形码的扫描信号的解码方法及装置 |
CN108108646B (zh) * | 2017-12-29 | 2022-04-22 | Tcl王牌电器(惠州)有限公司 | 条码信息识别方法、终端和计算机可读存储介质 |
CN108108646A (zh) * | 2017-12-29 | 2018-06-01 | Tcl王牌电器(惠州)有限公司 | 条码信息识别方法、终端和计算机可读存储介质 |
CN108256375B (zh) * | 2018-01-10 | 2021-04-06 | 钱志明 | 一种一维条形码扫描方法 |
CN108256375A (zh) * | 2018-01-10 | 2018-07-06 | 诺为信科技有限公司 | 一种一维条形码扫描方法 |
CN111241862A (zh) * | 2020-01-21 | 2020-06-05 | 西安邮电大学 | 基于边缘特性的条形码定位方法 |
CN111241862B (zh) * | 2020-01-21 | 2023-06-02 | 西安邮电大学 | 基于边缘特性的条形码定位方法 |
CN116415610A (zh) * | 2023-06-12 | 2023-07-11 | 恒银金融科技股份有限公司 | 银行存折条形码的处理方法、装置和电子设备 |
CN116415610B (zh) * | 2023-06-12 | 2023-10-03 | 恒银金融科技股份有限公司 | 银行存折条形码的处理方法、装置和电子设备 |
CN118428382A (zh) * | 2024-07-02 | 2024-08-02 | 广东朝歌智慧互联科技有限公司 | 条形码识别方法、终端及系统 |
CN118428382B (zh) * | 2024-07-02 | 2024-09-10 | 广东朝歌智慧互联科技有限公司 | 条形码识别方法、终端及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103336938B (zh) | 2016-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103336938A (zh) | 一种基于一维条形码图像的识别方法 | |
US11818303B2 (en) | Content-based object detection, 3D reconstruction, and data extraction from digital images | |
US20200380643A1 (en) | Content-based detection and three dimensional geometric reconstruction of objects in image and video data | |
US8733650B1 (en) | Decoding barcodes from images with varying degrees of focus | |
US11620733B2 (en) | Content-based object detection, 3D reconstruction, and data extraction from digital images | |
US8881986B1 (en) | Decoding machine-readable code | |
CN102799850B (zh) | 一种条形码识别方法和装置 | |
TWI439951B (zh) | 人臉影像性別辨識系統及其辨識方法及其電腦程式產品 | |
KR101710050B1 (ko) | 이미지 식별 시스템 및 방법 | |
US20160321529A1 (en) | Producing, capturing and using visual identification tags for moving objects | |
US20170286764A1 (en) | Content-based detection and three dimensional geometric reconstruction of objects in image and video data | |
CN103034831B (zh) | 线性条码识别方法和系统 | |
JP6688277B2 (ja) | プログラム、学習処理方法、学習モデル、データ構造、学習装置、および物体認識装置 | |
US10169629B2 (en) | Decoding visual codes | |
WO2019061658A1 (zh) | 眼镜定位方法、装置及存储介质 | |
KR101907414B1 (ko) | 촬영 이미지 기반의 문자 인식 장치 및 방법 | |
KR101165415B1 (ko) | 이미지내 생체 얼굴 인식 방법 및 인식 장치 | |
JP2014524085A (ja) | オブジェクトにおけるテキスト情報を認識するための方法およびシステム | |
CN106778996A (zh) | 嵌入有视觉图像的二维码的生成系统和方法以及读取系统 | |
US20110063468A1 (en) | Method and apparatus for retrieving label | |
Chen et al. | A two-stage quality measure for mobile phone captured 2D barcode images | |
Tan et al. | Designing a color barcode for mobile applications | |
CN105224903A (zh) | 一种二维码的防伪方法和二维码的读取装置 | |
CN103034830A (zh) | 条码解码方法及装置 | |
CN115830604A (zh) | 面单图像矫正方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |