发明名称 条形码图像识别方法
摘要 本发明公开了一种条形码图像识别方法,属于计算机的信息自动识别技术领域,包括以下步骤:S1、对Android手机摄像头采集的彩色图像进行灰度化,所述彩色图像为条形码图像;S2、对灰度化后的图像进行中值滤波处理;S3、对于中值滤波处理后的图像进行二值化处理;S4、对二值化处理后的图像进行条形码的定位;S5、对定位后的图像进行几何失真校正;S6、对校正后的图像进行解码,得到图像的码字。本发明提高了条码识别的精度,降低了复杂度。
申请公布号 CN102136058B 申请公布日期 2014.04.30
申请号 CN201110109589.5 申请日期 2011.04.26
申请人 中国农业大学 发明人 孙明;赵凡
分类号 G06K7/10(2006.01)I;G06K9/60(2006.01)I 主分类号 G06K7/10(2006.01)I
代理机构 北京路浩知识产权代理有限公司 11002 代理人 王莹
主权项 一种条形码图像识别方法,其特征在于,包括以下步骤:S1、对采集的彩色图像进行灰度化,所述彩色图像为条形码图像;S2、对灰度化后的图像进行中值滤波处理;S3、对于中值滤波处理后的图像进行二值化处理;S4、对二值化处理后的图像进行条形码的定位;S5、对定位后的图像进行几何失真校正以及像素值变换;S6、对校正后的图像进行解码,得到图像的码字;步骤S3具体为:提取过渡区的像素,然后使用过渡区像素的灰度均值作为分割门限对图像进行二值化,所述过渡区是图像中介于目标与背景之间的部分像素构成的区域;步骤S3具体包括:S301、计算所述过渡区的灰度最低值L<sub>low</sub>、灰度最高值L<sub>high</sub>及灰度平均值L;S302、用所述灰度平均值L对图像进行二值化,得到二值化图像;S303、在所述二值化图像中,寻找位置探测图形,如果未找到,则执行步骤S304;否则执行步骤S4;S304、将灰度平均值L与灰度最低值L<sub>low</sub>求平均值得到L<sub>1</sub>,再利用L<sub>1</sub>寻找位置探测图形,如未找到则执行步骤S305;否则执行步骤S4;S305、将灰度平均值L与灰度最高值L<sub>high</sub>求平均值得到L<sub>2</sub>,再利用L<sub>2</sub>寻找位置探测图形,如未找到则进行步骤S306;否则执行步骤S4;S306、将L<sub>1</sub>分别与L<sub>low</sub>、L求平均值得到L<sub>3</sub>和L<sub>4</sub>,将L<sub>2</sub>分别与L、L<sub>high</sub>分别求平均值得到L<sub>5</sub>和L<sub>6</sub>;再用L<sub>3</sub>、L<sub>4</sub>、L<sub>5</sub>、L<sub>6</sub>分别寻找位置探测图形,如未找到则说明该图像无法识别,需要重新采集彩色图像;否则执行步骤S4;所述条形码为QR码,且步骤S4具体为:从图像中寻找QR码中包含的3个位置探测图形,根据3个位置探测图形确定出来图像中QR码顶点的位置,然后分析该位置探测图形的3个顶点的坐标,然后再利用过这三个顶点的Hough变换来确定第四个顶点,从而计算出QR码的边界;所述Hough变换的具体步骤如下:1)、在图像中设定斜率区间,将设定的斜率区间等分为10个子区间,即每个子区间的宽度为设定斜率区间宽度的1/10;2)、为每个子区间设置一个累加器n<sub>j</sub>,1≤j≤10;3)、初始化每个累加器的值为0,即n<sub>j</sub>=0;4)、逐点扫描图像,扫描到目标像素时,计算目标像素与已知点p<sub>0</sub>之间的斜率m,m值属于哪个子区间就将哪个子区间累加器的值加1;5)、当扫描完全部斜率区间之后,将累加器的值为最大的子区间及其相邻的两个子区间组成的区间作为下一次要设定的斜率区间,重复上述步骤1至4,直到斜率区间的宽度小于预设的斜率检测精度为止。
地址 100193 北京市海淀区圆明园西路2号