CN103473518B - 运单信息录入和黑白色块编码解码系统 - Google Patents

运单信息录入和黑白色块编码解码系统 Download PDF

Info

Publication number
CN103473518B
CN103473518B CN201310364550.7A CN201310364550A CN103473518B CN 103473518 B CN103473518 B CN 103473518B CN 201310364550 A CN201310364550 A CN 201310364550A CN 103473518 B CN103473518 B CN 103473518B
Authority
CN
China
Prior art keywords
color lump
black
waybill
white color
coding
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.)
Active
Application number
CN201310364550.7A
Other languages
English (en)
Other versions
CN103473518A (zh
Inventor
补建
罗安
冯少川
杨吟峰
李毅
师改梅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fengchao Interactive Media Co ltd
Original Assignee
Chengdu Wolaila Network Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Wolaila Network Information Technology Co Ltd filed Critical Chengdu Wolaila Network Information Technology Co Ltd
Priority to CN201310364550.7A priority Critical patent/CN103473518B/zh
Publication of CN103473518A publication Critical patent/CN103473518A/zh
Application granted granted Critical
Publication of CN103473518B publication Critical patent/CN103473518B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Processing (AREA)

Abstract

本发明为运单信息录入和黑白色块编码解码系统,解决巳有系统图像识别码的种类和排列单一,不便运单图片排版,解码时对编码中图像识别码的准确定位相对困难,进而使得对运单图片进行解码和版面识别困难的问题。包括设计版面单元,运单图片采集单元,运单图片黑白色块解码单元以及运单信息生成单元:黑白色块编码是若干黑、白色块,横向或纵向按照直线顺序和相同间距进行排列组合,每种排列组合为一种编码,通过设定编码表,将编码和运单类型匹配,确定各种编码对应的运单类型,便于后续在解码后对应确定相应的运单类型。

Description

运单信息录入和黑白色块编码解码系统
技术领域:
本发明涉及图像处理领域,具体涉及运单信息录入和黑白色块编码解码系统。
背景技术:
随着中国物流业总体规模快速增长,物流服务水平也显著得到了提高,但是庞大的运单量也给运单数据的管理带来了很大的难度。运单上的数据包含客户信息,运单信息,费用信息等,传统的信息录入过程是数据录入人员人工讲运单上的数据手动录入到录单管理系统数据库中,即耗时又耗力。
运单信息录入系统需要处理多种业务类型的运单,这些运单中包含的数据字段基本类似,但不同类型的运单的字段布局又有所不同。因此对运单图片进行版面识别是非常关键的一个环节。
在二维直方图数字图像识别码(CN101025785)中公开了一种二维直方图数字图像识别码,其码图是在一种颜色的底板上设计有与底板颜色像素差距明显的10个不重复的直方图单元图块。所述十个单元图块从左到右分别对应阿拉伯数字0~9,其编码方法是对包含有N个阿拉伯数字的编号,用N+3个单元图块编码。该发明的码图相对于数字而言,经过统计分析后,在计算机上更容易识别,而且,每个单元图块经过同一个分析算法后,结果相对于别的单元图块都是唯一的。它的编码信息只包含0~9的阿拉伯数字和一些常用符号;在图像质量较差的情况下也能准确读出码值;使非专业人员容易理解编解码方式。但是CN101025785中提到的图像识别码的种类和排列单一,不便运单图片排版,另外该图像识别码没有统一的形状和大小,解码时对编码中图像识别码的准确定位相对困难,进而使得对运单图片进行解码和版面识别困难。
现在的条码识别方法比较成熟,但是现在运单的条码主要表示运单号,如果将此条码中加入运单类型信息,将会对现有的运单号扫描录入加大工作量。因此需要在现有的运单版面中再打印一个条码上去,但是,如果有两个条码,会对扫描枪扫描造成干扰。
发明内容:
本发明的目的是提供一种便于运单图片排版、识别,解码时对编码中各单元图块进行准确定位,效率高,错误少的运单信息录入和黑白色块编码解码系统。
本发明是这样实现的:
1、运单信息录入和黑白色块编码解码系统,其特征在于包括设计版面单元,运单图片采集单元,运单图片色块解码单元以及运单信息生成单元:
一、设计版面单元
通过黑白色块编码,将版面和黑白色块编码关联,设计票据版面后批量印刷成运单图片,运单图片上有黑白色块编码和其他信息;
黑白色块编码是若干黑、白色块,横向或纵向按照直线顺序和相同间距进行排列组合,每种排列组合为一种编码,通过设定编码表,将编码和运单类型匹配,确定各种编码对应的运单类型,便于后续在解码后对应确定相应的运单类型;
在黑白色块编码后,根据运单版面特征,在运单的特定位置加入色块信息,批量印刷;
二、运单图片采集单元
运单图片采集单元的主要功能是通过通用的扫描仪,将各运单图片进行扫描得到的各运单图像储存;
三、运单图片黑白色块编码解码单元
运单图片黑白色块编码解码单元的主要功能是对每种运单图像进行色块解码,确定每个运单图片的运单类型;
黑白色块编码解码包括如下步骤:
1、运单图像获取
读取真实运单图像,得到运单彩色图像。
2、运单图像二值化
首先将运单彩色图像转换为灰度图像,运单图像二值化就是将运单灰度图像转化为黑白二值的运单二值图像,对于读入的运单灰度图像,I[i,j]表示水平位置为i,垂直位置为j像素点处运单图像的灰度值,[i,j]遍历运单灰度图像的所有像素点,i是变量,表示窗口图像中像素点的水平位置,取值为i=1,2,...,W0,j是变量,表示窗口图像中像素点的垂直位置,取值为j=1,2,...,H0,W0为运单灰度图像宽度,H0为运单灰度图像高度;
对于运单灰度图像的各个像素点,采用阈值分割法,将运单灰度图像中大于分割阈值的像素点置为0,小于分割阈值的像素点置为255,得到运单二值图像,D1[i,j]表示运单二值图像水平位置为i,垂直位置为j像素点处的值,具体计算方法为:
D 1 &lsqb; i , j &rsqb; = 255 , I &lsqb; i , j &rsqb; < th 1 0 , I &lsqb; i , j &rsqb; &GreaterEqual; th 1 , i = 1 , 2 , .. , W 0 , j = 1 , 2 , .. , H 0
其中,th1为分割阈值,th1的选取要使得运单灰度图像的黑色字体和表格信息凸现出来,而去除其他信息的干扰;
3、运单二值图像自动纠偏
在运单扫描过程中,由于送纸传送带或滚筒的机械原因导致扫描的运单图像经常会出现倾斜情况,自动纠偏包括两个步骤:计算倾斜角度和倾斜校正;
(1)计算倾斜角度
计算运单二值图像的倾斜角度是在步骤2得到的运单二值图像的基础上进行的,对运单二值图像进行分析,选定运单二值图像左边处做分析,将该位置的二值图像提取出来称为边框二值图像,分别对边框二值图像做-8°到8°的顺时针旋转,旋转间隔为1°,每旋转一次,对该边框二值图像进行水平投影,计算极大投影值,共计算得到17个极大投影值,求这17个极大投影值中的最大值,得到最大值对应的旋转角度,该角度便为运单二值图像逆时针方向的倾斜角度,具体包括以下步骤:
a.将运单二值图像中特定区域的图像提取出来称为子区域二值图像
R[i,j]表示子区域二值图像水平水平位置为i,垂直位置为j像素点处的值,W1表示子区域二值图像的宽度,H1表示子区域二值图像的高度,W为运单二值图像的宽度,H为运单二值图像的高度,运单子区域二值图像的提取方法为:
R[i,j]=D1[i,j],i=1,2,..,W1,j=1,2,..,H1
其中,H1=H;
b.对子区域二值图像做旋转调整
将子区域二值图像R[i,j]做-8°到8°,间隔为1°的顺时针旋转,用W2k表示第k次旋转后子区域二值图像所占图像的宽度,用H2k表示第k次旋转后子区域二值图像所占图像的高度,计算方法为:
其中,α=|k-9|°表示旋转角度,为向下取整运算符,表示不大于W1×cosα+H1×sinα的最大整数;
用Rk[i,j]表示第k次旋转后,子区域二值图像水平第i个像素点,垂直第j个像素点的值,先做初始化,Rk[i,j]=0,i=1,2,...,W2k,j=1,2,...,H2k,取k=1时,子区域二值图像像素点R[i,j]顺时针旋转-8°,也即逆时针旋转8°,此时α=8°,得到旋转后的子区域二值图像R1[i,j],原子区域二值图像位置[i,j]对应的像素值R[i,j]在逆时针旋转α后子区域二值图像位置[i1,j1]对应的像素值R1[i,j]的计算公式为:
i 1 j 1 1 = c o s &alpha; s i n &alpha; 0 - s i n &alpha; c o s &alpha; W 1 &times; s i n &alpha; 0 0 1 i - 1 j - 1 1 + 1 1 0
其中,[i1,j1]为经过运算后向下取整操作得到的;
k依次加1,取k=2,3,...,8时,依次将子区域二值图像像素点R[i,j]逆时针旋转-7°到-1°,此时,α=|k-9|°,可分别得到R2[i,j],R3[i,j],...,R8[i,j],k=9时,旋转角度为0,此时,R9[i,j]=R[i,j],k=10,11,...,17时,依次将子区域二值图像像素点R[i,j]顺时针旋转1°到7°,此时,α=|k-9|°,原子区域二值图像各像素点的位置[i,j]对应的像素值R[i,j]在顺时针旋转α后子区域二值图像各像素点的位置[i1,j1]对应的像素值Rk[i,j]中的位置的计算公式为:
i 1 j 1 1 = c o s &alpha; - s i n &alpha; H 1 &times; c o s &alpha; s i n &alpha; cos &alpha; 0 0 0 1 i - 1 j - 1 1 + 1 1 0
其中,[i1,j1]为经过运算后向下取整操作得到的,可分别得到R10[i,j],R11[i,j],...,R17[i,j],共得到17个子区域二值图像Rk[i,j];
c.对旋转后的每个子区域二值图像按行进行垂直投影,计算每个旋转后的子区域二值图像的极大投影值m[k]:
m &lsqb; k &rsqb; = m a x ( h k &lsqb; j &rsqb; ) j = 1 , 2 , .. , H 2 k , k = 1 , ... , 17
其中,hk[j]表示旋转后的每个子区域二值图像的垂直投影值,j=1,2,..,H2k
d.计算倾斜角度:
对得到的17个极大投影值m[k]进行判断,找出其中的最大值作为最大投影值,此时对应的角度值为如果(K-9)<0,表明运单图像顺时针方向倾斜了|K-9|°,即倾斜角度为β=|K-9|°,如果(K-9)=0,表示运单图像没有倾斜,β=0,如果(K-9)>0,表明运单图像逆时针方向倾斜了|K-9|°,倾斜角度为β=-|K-9|°;
(2)倾斜校正
根据上述得到的倾斜角度,对运单二值图像进行倾斜补偿,完成倾斜校正,用W3表示倾斜校正后运单二值图像的宽度,用H3表示倾斜校正后运单二值图像的高度,计算方法为:
当倾斜角度β>0时,对运单二值图像做逆时针β校正:
i 1 j 1 1 = c o s &beta; s i n &beta; 0 - sin &beta; cos &beta; W 1 &times; s i n &beta; 0 0 1 i - 1 j - 1 1 + 1 1 0
其中,[i1,j1]为经过运算后向下取整操作得到的;
当倾斜角度β<0时,对运单二值图像做顺时针|β|校正:
i 1 j 1 1 = c o s | &beta; | - s i n | &beta; | H 1 &times; c o s | &beta; | s i n | &beta; | cos | &beta; | 0 0 0 1 i - 1 j - 1 1 + 1 1 0
其中,[i1,j1]为经过运算后向下取整操作得到的;
当倾斜角度β=0时,对运单二值图像不做校正;
4.运单二值图像去噪
当扫描过程中由于纸张质量或者扫描镜头的灰尘原因,造成扫描出来的影像存在噪声点,大大影响黑白色块编码定位和黑白色块编码解码的质量,因此针对步骤3自动纠偏后的运单二值图像需要进行噪声点去除;
5.黑白色块编码定位
在步骤4处理后,在运单二值图像上进行黑白色块编码定位,在倾斜校正后的运单二值图像中,首先确定各需要定位的黑白色块编码顶点的搜索范围,然后与相应的定位模板进行加权计算,完成对各色块顶点的精确定位,进而确定各色块的位置;
所谓定位模板是指用于定位各顶点,与各顶点进行卷积运算的矩阵,m表示定位模板的列值,n表示定位模板的行值,m=1,2,...,21,n=1,2,...,21,用T1[m,n]表示左上角定位模板第n行第m列的值,用公式表示如下:
用T2[m,n]表示右上角定位模板第n行第m列的值,用公式表示如下:
用T3[m,n]表示左下角定位模板第n行第m列的值,用公式表示如下:
运单二值图像中编码中各色块可以是横向排列或纵向排列;
(1)纵向排列的黑白色块编码定位
在本发明中,编码是由很多色块组成的,每个色块为形状和大小相同的方块,对于纵向排列的黑白色块编码定位,步骤如下:
1)黑白色块编码第一色块左上角精确定位
由于黑白色块编码总是位于运单图像的某一区域内,运单图像中黑白色块编码左上角的大概位置为[x00,y00],这个位置同时也是黑白色块编码第一色块的左上角位置,对于左上角给予一定的宽裕,水平偏移量为a,垂直偏移量为b,则运单二值图像黑白色块编码第一色块左上角搜索范围依次为:左上角[x00-a,y00-b],右上角[x00+a,y00-b],左下角[x00-a,y00+b],右下角[x00+a,y00+b];
在搜索范围内,从左上角开始,按自左向右,自上向下的顺序依次平移定位模板,每移动一次定位模板窗口,使定位模板的中心与搜索范围内的相应点重合,计算定位模板与其覆盖下图像的卷积值;
如上所述,定位模板的中心是指定位模板正中间的点,对于左上角定位模板来说,其中心为用T1[11,11]表示,右上角定位模板的中心为T2[11,11],左下角定位模板的中心为T3[11,11];
运单二值图像搜索范围内各像素点与左上角定位模板的卷积值t1[i,j]的计算方法如下:
t 1 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 1 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 1 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x00-a,x00-a+1,..,x00+a,j=y00-b,y00-b+1,..,y00+b;
在计算得到的运单二值图像搜索范围内各像素点的卷积值t1[i,j]中,其最大值对应的位置便为运单二值图像黑白色块编码第一色块左上角的位置,这个位置同时也是黑白色块编码的左上角位置,用[x01,y01]表示;
2)黑白色块编码第一色块右上角精确定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第一色块右上角的搜索范围依次为:左上角[x01,y01-b],右上角[x01+2*a,y01-b],左下角[x01,y01+b],右下角[x01+2*a,y01+b];
按照步骤1)相同的搜索方式,计算定位模板与其覆盖下图像的卷积值,运单二值图像搜索范围内各像素点与右上角定位模板的卷积值t2[i,j]的计算方法如下
t 2 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 2 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 2 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x01,x01+1,..,x01+2*a,j=y01-b,y01-b+1,..,y01+b
t2[i,j]最大值对应的位置便为运单二值图像黑白色块编码第一色块右上角的位置,这个位置同时也是黑白色块编码的右上角位置,用[x02,y02]表示;
3)黑白色块编码第一色块左下角定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第一色块左下角的搜索范围依次为:左上角[x01-a,y01],右上角[x01+a,y01],左下角[x01-a,y01+2*b],右下角[x01+a,y01+2*b],
按照步骤1)相同的搜索方式,计算定位模板与其覆盖下图像的卷积值,
t 3 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 3 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 3 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x01-a,x01-a+1,..,x01+a,j=y01,y01+1,..,y01+2*b,
t3[i,j]最大值对应的位置便为运单二值图像黑白色块编码第一色块左下角的位置,用[x03,y03]表示;
4)黑白色块编码第一色块右下角定位
得到黑白色块编码第一色块的左上角,右上角,左下角位置后,对应可得到黑白色块编码第一色块的右下角位置[x04,y04],其中x04=x02,y04=y03
5)黑白色块编码第二色块左上角定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第二色块左上角的搜索范围依次为:左上角[x01-a,y01],右上角[x01+a,y01],左下角[x01-a,y01+2*b],右下角[x01+a,y01+2*b];
按照步骤1)相同的搜索方式,计算左上角定位模板T1[m,n]与其覆盖下图像的卷积值t4[i,j]:
t 4 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 1 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 2 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x01-a,x01-a+1,..,x01+a,j=y01,y01+1,..,y01+2*b。
t4[i,j]最大值对应的位置便为运单二值图像黑白色块编码第二色块左上角的位置,用[x11,y11]表示;
可以得出第一色块的宽度w等于x02-x01,第一色块的高度h等于y03-y01,第一色块的下边界和第二色块的上边界的垂直距离d等于y11-y03
6)黑白色块编码剩余各色块定位
由于黑白色块编码每一色块的大小是相同的,并且黑白色块编码各色块间的位置是固定的,因此对应可以确定黑白色块编码剩余每一色块的精确位置;
黑白色块编码第二色块的右上角的位置为[x12,y12],其中x12=x11+w,y12=y11,黑白色块编码第二色块左下角的位置为[x13,y13],其中,x13=x11,y13=y11+h,黑白色块编码第二色块右下角的位置为[x14,y14],其中,x14=x12,y14=y13,黑白色块编码第三色块左上角的位置为[x21,y21],其中,x21=x13,y21=y13+d,黑白色块编码第三色块右上角的位置为[x22,y22],其中,x22=x21+w,y22=y21,黑白色块编码第三色块左下角的位置为[x23,y23],其中,x23=x21,y23=y21+h,黑白色块编码第三色块右下角的位置为[x24,y24],其中,x24=x22,y24=y23,黑白色块编码第四色块左上角的位置为[x31,y31],其中,x31=x23,y31=y23+d,黑白色块编码第四色块右上角的位置为[x32,y32],其中,x32=x31+w,y32=y31,黑白色块编码第四色块左下角的位置为[x33,y33],其中,x33=x31,y33=y31+h,黑白色块编码第四色块右下角的位置为[x34,y34],其中,x34=x32,y34=y33,黑白色块编码第五色块左上角的位置为[x41,y41],其中,x41=x33,y41=y33+d,黑白色块编码第五色块右上角的位置为[x42,y42],其中,x42=x41+w,y42=y41,黑白色块编码第五色块左下角的位置为[x43,y43],其中,x43=x41,y43=y41+h,黑白色块编码第五色块右下角的位置为[x44,y44],其中,x44=x42,y44=y43
(2)横向排列的黑白色块编码定位
横向排列的黑白色块编码各色块的左上角、右上角位置的纵坐标相同,各色块的左下角、右下角位置的纵坐标相同,各色块的左上角位置的横坐标之间的距离相同,各色块的右上角位置的横坐标的距离相同,各色块的左下角位置的横坐标的距离相同,各色块的右下角位置的横坐标的距离相同;
1)黑白色块编码左上角精确定位
黑白色块编码左上角的定位方法与纵向排列的黑白色块编码左上角定位的方法相同,这个位置同时也是黑白色块编码第一色块的左上角位置,用[x61,y61]表示;
2)黑白色块编码第一色块右上角精确定位
黑白色块编码第一色块的右上角定位方法与纵向排列的黑白色块编码第一色块右上角定位的方法相同,用[x62,y62]表示;
3)黑白色块编码第一色块左下角定位
黑白色块第一色块的左下角定位方法与纵向排列的黑白色块编码第一色块左下角定位的方法相同,用[x63,y63]表示;
4)黑白色块编码第一色块右下角定位
得到黑白色块编码第一色块的左上角,右上角,左下角位置后,对应可得到黑白色块编码第一色块的右下角位置[x64,y64],其中x64=x62,y64=y63
5)黑白色块编码第二色块左上角定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第二色块左上角的搜索范围依次为:左上角[x61,y61-b],右上角[x61+2*a,y61-b],左下角[x61,y61+b],右下角[x61+2*a,y61+b];
在搜索范围内,从左上角开始,按自左向右,自上向下的顺序依次平移定位模板,每移动一次定位模板窗口,使定位模板的中心与搜索范围内的相应点重合,计算定位模板与其覆盖下图像的卷积值;
左上角定位模板T1[m,n]与其覆盖下图像的卷积值t5[i,j]:
t 5 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 1 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 2 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x61,x61+1,..,x61+2a,j=y61-b,y61-b+1,..,y61+b;
t5[i,j]最大值对应的位置便为运单二值图像黑白色块编码第二色块左上角的位置,用[x71,y71]表示;
可以得出第一色块的宽度w1等于x62-x61,第一色块的高度h1等于y63-y61,第一色块的右边界和第二色块的左边界的水平距离d1等于x71-x62
6)黑白色块编码剩余各色块位置确定
由于黑白色块编码每一色块的大小是相同的,并且黑白色块编码各色块间的位置是固定的,因此对应可以确定黑白色块编码剩余每一色块的精确位置;
黑白色块编码第二色块的右上角的位置为[x72,y72],其中x72=x71+w1,y72=y71,黑白色块编码第二色块左下角的位置为[x73,y73],其中,x73=x71,y73=y71+h1,黑白色块编码第二色块右下角的位置为[x74,y74],其中,x74=x72,y74=y73,黑白色块编码第三色块左上角的位置为[x81,y81],其中,x81=x72+d1,y81=y72,黑白色块编码第三色块右上角的位置为[x82,y82],其中,x82=x81+w1,y82=y81,黑白色块编码第三色块左下角的位置为[x83,y83],其中,x83=x81,y83=y81+h1,黑白色块编码第三色块右下角的位置为[x84,y84],其中,x84=x82,y24=y83,黑白色块编码第四色块左上角的位置为[x91,y91],其中,x91=x82+d1,y91=y82,黑白色块编码第四色块右上角的位置为[x92,y92],其中,x92=x91+w1,y92=y91,黑白色块编码第四色块左下角的位置为[x93,y93],其中,x93=x91,y93=y91+h1,黑白色块编码第四色块右下角的位置为[x94,y94],其中,x94=x92,y94=y93,黑白色块编码第五色块左上角的位置为[x101,y101],其中,x101=x92+d1,y101=y92,黑白色块编码第五色块右上角的位置为[x102,y102],其中,x102=x101+w1,y102=y101,黑白色块编码第五色块左下角的位置为[x103,y103],其中,x103=x101,y103=y101+h1,黑白色块编码第五色块右下角的位置为[x104,y104],其中,x104=x102,y104=y103
6.色块解码
在得到编码中各色块的位置后,就可以进行黑白色块编码的解码了;
通过统计运单二值化图像中黑白色块编码上每一色块中白点的个数来判定每一色块对应的编码信息,当白点个数大于每一块像素点总数的一半时,该色块用‘1’表示,表示为黑色块,当白点个数小于等于每一块像素点总数的一半时,该方块用‘0’表示,表示为白色块,将从上到下各色块的信息依次排列,便可得到该黑白色块编码信息;
四、运单信息生成单元
运单信息生成单元的主要功能是将运单图片的运单类型保存下来,这里的运单信息生成单元可以简单的看作一个常用的计算机,将运单图片的运单类型保存在计算机里,用于后续的识别。
本发明通过在现有运单图片中加入黑白色块编码信息,用于区分不同的运单类型,然后利用图像处理技术对运单图片进行色块解码,进而确定运单类型。本发明可以根据运单的特点选择相应数目的黑白色块,进行横向排列或纵向排列,更利于运单图片排版,本发明中的色块有统一的形状和大小,解码时对编码中图像识别码的准确定位更加方便,进而使得对运单图片进行解码和版面识别更加快捷。为信息录入提供了可靠的资料,可实现运单信息录入的自动化,能够满足信息采集的准确性与信息安全管控需求,提高了运单数据录入人员的信息录入效率。
附图说明:
图1所示是本发明的黑白色块编解码的系统结构图;
图2所示是本发明的黑白色块编码中的黑白色块;
图3所示是本发明的黑白色块编码中的横向排列组合;
图4所示是本发明的黑白色块编码中的纵向排列组合;
图5所示是本发明的黑白色块解码流程图
具体实施方式:
在本发明中,提到的黑白色块是指黑色色块,白色色块组成的,印刷在运单图片中用于区分运单类型的一整块区域。
在本发明中,所指的编码是指将某种运单类型用黑白色块排列组合表示印刷在运单上,所指的解码是指将运单图片印刷的黑白色块组合进行识别,确定编码类型,进而确定属于哪种运单类型,是2个相反的过程。
本发明提供了一种运单信息录入系统黑白色块编解码方法,该方法的系统结构框图如图1所示,包括设计版面单元,运单图片采集单元,运单图片色块解码单元以及运单信息生成单元。
一、设计版面单元
设计版面单元的主要功能是通过黑白色块编码,将版面和编码信息关联,设计票据版面后批量印刷。
本发明提供的方法中提到的黑白色块编码是通过评估采用几个黑白色块组合,评估横向还是纵向布局色块组合,将一定数量的黑方块、白方块按照一定顺序进行排列组合,每种排列组合分别代表不同的含义,形成不同的黑白色块编码。根据需要区分的运单类型的数目和版面复杂程度选取不同的色块数目和色块排列方法,作为后续色块解码的依据。
本发明提供的运单信息录入系统中黑白色块编码的方法如下:
1.确定黑白色块数目
当需要识别的运单类型较少时,通过较少的黑白色块的排列组合编码就可以表示所有的运单类型,当需要识别的运单类型较多时,需要的黑白色块数目也较多,因此根据需要确定黑白色块的数目是黑白色块编码的关键。黑白色块编码组合如图2所示,白色方块表示‘0’,黑色方块表示‘1’,N个黑白色块排列组合共表示2N个编码。
2.确定黑白色块排列方式
在确定了黑白色块数目后,结合运单版面分布,确定最佳的黑白色块排列方式,使得黑白色块解码时干扰更少。黑白色块可以横向排列也可以纵向排列,黑白色块横向排列组合如图3所示,黑白色块纵向排列组合如图4所示,根本运单的版面特征,选择更能合理利用运单图片的空间,且不会对其他运单信息造成干扰的黑白色块排列方式。
3.编码信息和运单类型匹配
在确定了黑白色块数目和色块排列方式后,通过设定编码表,将编码信息和运单类型匹配,确定各种编码对应的运单类型,便于后续在解码后对应确定相应的运单类型。
在黑白色块编码后,根据运单版面特征,在运单图片的特定位置加入色块信息,批量印刷。以顺丰快递为例,对于大陆至港澳台,国内件运单,马来西亚运单,美国运单,香港运单和新加坡运单,通过将黑白纵向排列的色块编码打印在运单从最左边起水平0.64倍宽度,从最上边起垂直0.064倍高度开始的位置处,每个黑白色块编码子块的宽度和高度均为18个像素点,黑白色块编码的各子块之间相距5个像素点。当运单图片的宽度为1754个像素点,高度为1240个像素点时,黑白色块编码打印在水平第1122个,垂直第79个像素点开始的位置处。对于其他的运单图片,根据运单版面的特点,选择横向或纵向的色块组合。
在本发明实施例中,采用5个黑白色块纵向排列和5个黑白色块横向排列对黑白色块编解码进行说明。
在本发明中,各色块是形状和大小相同的方块,黑白色块编码由黑白色块编码的第一色块,黑白色块编码的第二色块,黑白色块编码的第三色块,黑白色块编码的第四色块,黑白色块编码的第五色块组成。
二、运单图片采集单元
运单图片采集单元的主要功能是通过通用的扫描仪,提前将各运单图片进行扫描并将扫描得到的各银行运单图像数据存储下来,以下该存储图像简称运单图像。
三、运单图片黑白色块编码解码单元
运单图片黑白色块编码解码单元的主要功能是对每种运单图像进行色块解码,确定每个运单图片的运单类型。
本发明提供的运单信息录入系统中黑白色块编码解码的流程如图5所示,具体包括如下步骤:
1、运单图像获取
读取真实运单图像,得到运单彩色图像,以后提到的运单彩色图像,均指运单图像的彩色图。
2、运单图像二值化
首先将运单彩色图像转换为灰度图像,以后提到的运单灰度图像,均指运单图像的灰度图。
运单图像二值化就是将运单灰度图像转化为黑白二值的运单二值图像,对于读入的运单灰度图像,I[i,j]表示水平位置为i,垂直位置为j像素点处运单图像的灰度值,[i,j]遍历运单灰度图像的所有像素点,i是变量,表示窗口图像中像素点的水平位置,取值为i=1,2,...,W0,j是变量,表示窗口图像中像素点的垂直位置,取值为j=1,2,...,H0,W0为运单灰度图像宽度,H0为运单灰度图像高度。
对于运单灰度图像的各个像素点,采用阈值分割法,将运单灰度图像中大于分割阈值的像素点置为0,小于分割阈值的像素点置为255,得到运单二值图像,D1[i,j]表示运单二值图像水平位置为i,垂直位置为j像素点处的值,具体计算方法为:
D 1 &lsqb; i , j &rsqb; = 255 , I &lsqb; i , j &rsqb; < th 1 0 , I &lsqb; i , j &rsqb; &GreaterEqual; th 1 , i = 1 , 2 , .. , W 0 , j = 1 , 2 , .. , H 0 - - - ( 1 )
其中,th1为分割阈值,th1的选取要使得运单灰度图像的字和表格信息凸现出来,而去除其他信息的干扰,在本发明实施例中,th1=60。
3、运单二值图像自动纠偏
在运单扫描过程中,由于送纸传送带或滚筒的机械原因导致扫描的运单图像经常会出现倾斜情况,因而影响后续一系列的判断,虽然目前主流扫描仪都自带硬件图像纠偏功能,但效果不理想。自动纠偏功能可以将倾斜的图像自动矫正,使原件调整到整齐的位置。
自动纠偏包括两个步骤:计算倾斜角度和倾斜校正。
(1)计算倾斜角度
计算运单二值图像的倾斜角度是在步骤2得到的运单二值图像的基础上进行的,对运单二值图像进行分析,选定运单二值图像左边处做分析,将该位置的二值图像提取出来称为边框二值图像,分别对边框二值图像做-8°到8°的顺时针旋转,旋转间隔为1°,每旋转一次,对该边框二值图像进行水平投影,计算极大投影值,共计算得到17个极大投影值,求这17个极大投影值中的最大值,得到最大值对应的旋转角度,该角度便为运单二值图像逆时针方向的倾斜角度。具体包括以下步骤:
a.将运单二值图像中特定区域的图像提取出来称为子区域二值图像
在本发明实施例,将运单二值图像中左边区域的图像提取出来作为子区域二值图像。R[i,j]表示子区域二值图像水平位置为i,垂直位置为j像素点处的值,W1表示子区域二值图像的宽度,H1表示子区域二值图像的高度。运单子区域二值图像的提取方法为:
R[i,j]=D1[i,j],i=1,2,..,W1,j=1,2,..,H1(2)
其中,H1=H。
b.对子区域二值图像做旋转调整
将子区域二值图像R[i,j]做-8°到8°,间隔为1°的顺时针旋转,用W2k表示第k次旋转后子区域二值图像所占图像的宽度,用H2k表示第k次旋转后子区域二值图像所占图像的高度,计算方法为:
其中,α=|k-9|°表示旋转角度,为向下取整运算符,表示不大于W1×cosα+H1×sinα的最大整数。
用Rk[i,j]表示第k次旋转后,子区域二值图像水平位置为i,垂直位置为j像素点处的值,先做初始化,Rk[i,j]=0,i=1,2,...,W2k,j=1,2,...,H2k,取k=1时,子区域二值图像像素点R[i,j]顺时针旋转-8°,也即逆时针旋转8°,此时α=8°,得到旋转后的子区域二值图像R1[i,j],原子区域二值图像位置[i,j]对应的像素值R[i,j]在逆时针旋转α后子区域二值图像位置[i1,j1]对应的像素值R1[i,j]的计算公式为:
i 1 j 1 1 = c o s &alpha; s i n &alpha; 0 - s i n &alpha; c o s &alpha; W 1 &times; s i n &alpha; 0 0 1 i - 1 j - 1 1 + 1 1 0 - - - ( 4 - 1 )
其中,[i1,j1]为经过运算后向下取整操作得到的。
k依次加1,取k=2,3,...,8时,依次将子区域二值图像像素点R[i,j]逆时针旋转-7°到-1°,此时,α=|k-9|°,可分别得到R2[i,j],R3[i,j],...,R8[i,j],k=9时,旋转角度为0,此时,R9[i,j]=R[i,j],k=10,11,...,17时,依次将子区域二值图像像素点R[i,j]顺时针旋转1°到7°,此时,α=|k-9|°,原子区域二值图像各像素点的位置[i,j]对应的像素值R[i,j]在顺时针旋转α后子区域二值图像各像素点的位置[i1,j1]对应的像素值Rk[i,j]中的位置的计算公式为:
i 1 j 1 1 = c o s &alpha; - s i n &alpha; H 1 &times; c o s &alpha; s i n &alpha; cos &alpha; 0 0 0 1 i - 1 j - 1 1 + 1 1 0 - - - ( 4 - 2 )
其中,[i1,j1]为经过运算后向下取整操作得到的。
可分别得到R10[i,j],R11[i,j],...,R17[i,j],共得到17个子区域二值图像Rk[i,j]。
c.对旋转后的每个子区域二值图像按行进行垂直投影,并计算旋转后的每个子区域二值图像的极大投影值。
用hk[j]表示第k次旋转后的图像第j行的投影值。计算公式为:
h k &lsqb; j &rsqb; = &Sigma; i = 1 W 2 k R k &lsqb; i , j &rsqb; , k = 1 , 2 , .. , 17 , j = 1 , 2 , .. , H 2 k - - - ( 5 )
用m[k]表示第k个旋转图像的极大投影值,共得到17个极大投影值,依次为:m[1],m[2],...,m[17],计算公式为:
m &lsqb; k &rsqb; = m a x ( h k &lsqb; j &rsqb; ) j = 1 , 2 , .. , H 2 k , k = 1 , ... , 17 - - - ( 6 )
d.对上一步骤得到的17个极大投影值进行判断,计算最大投影值对应的角度值,进而计算倾斜角度
对得到的17个极大投影值m[k]进行判断,找出其中的最大值作为最大投影值,此时对应的旋转角度值为如果(K-9)<0,表明运单图像顺时针方向倾斜了|K-9|°,即倾斜角度为β=|K-9|°,如果(K-9)=0,表示运单图像没有倾斜,β=0,如果(K-9)>0,表明运单图像逆时针方向倾斜了|K-9|°,倾斜角度为β=-|K-9|°。
需要说明的是,本发明中计算倾斜角度,只针对倾斜角度<15°的。
(2).倾斜校正
根据上述得到的倾斜角度,对运单二值图像分别进行倾斜补偿,完成倾斜校正,用W3表示倾斜校正后运单二值图像的宽度,用H3表示倾斜校正后运单二值图像的高度,计算方法为:
当倾斜角度β>0时,对运单二值图像按照公式(4-1)做逆时针校正,其中α=β;当倾斜角度β<0时,对运单二值图像按照公式(4-2)做顺时针校正,其中α=|β|;当倾斜角度β=0时,对运单二值图像不做校正。
4.运单二值图像去噪
当扫描过程中由于纸张质量或者扫描镜头的灰尘原因,造成扫描出来的影像存在噪声点,大大影响黑白色块编码定位和黑白色块编码解码的质量,因此针对步骤3自动纠偏后的运单二值图像需要进行噪声点去除。
在本发明实施例中,采用常规的中值滤波算法对运单二值图像去除噪声,中值滤波算法是将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。
5.黑白色块编码定位
在步骤4处理后,运单二值图像基本是比较理想的图像,在此二值图像上进行黑白色块编码定位。黑白色块编码定位对于黑白色块编码的解码有很重要的作用,黑白色块编码定位的准确与否直接关系到黑白色块编码解码的结果,准确的定位到黑白色块编码的位置后,就能更准确的进行黑白色块编码解码。
在倾斜校正后的二值图像中,首先确定黑白色块编码第一色块左上角的搜索范围,然后与左上角定位模板进行加权计算,完成对黑白色块编码第一色块左上角的精确定位,然后确定黑白色块编码第一色块右上角的搜索范围,然后与右上角定位模板进行加权计算,完成对黑白色块编码第一色块右上角的精确定位,最后依次确定黑白色块编码第一色块的左下角和右下角,根据黑白色块编码各子块的大小相同,间距相同,依次确定黑白色块编码的剩余子块的位置。
定位模板是指用于定位各顶点,与各顶点进行卷积运算的矩阵。m表示定位模板的列值,n表示定位模板的行值,m=1,2,...,21,n=1,2,...,21,用T1[m,n]表示左上角定位模板第n行第m列的值,用公式表示如下:
用T2[m,n]表示右上角定位模板第n行第m列的值,用公式表示如下:
用T3[m,n]表示左下角定位模板第n行第m列的值,用公式表示如下:
(1)纵向排列的黑白色块编码定位
纵向排列的黑白色块编码各色块的左上角、左下角位置的横坐标相同,各色块的右上角、右下角位置的横坐标相同,各色块的左上角位置的纵坐标之间的距离相同,各色块的右上角位置的纵坐标的距离相同,各色块的左下角位置的纵坐标的距离相同,各色块的右下角位置的纵坐标的距离相同。
1)黑白色块编码第一色块左上角精确定位
由于黑白色块编码总是位于运单图像的某一区域内,运单图像中黑白色块编码左上角的大概位置为[x00,y00],这个位置同时也是黑白色块编码第一色块的左上角位置,对于左上角给予一定的宽裕,水平偏移量为a,垂直偏移量为b,则运单二值图像黑白色块编码第一色块左上角搜索范围依次为:左上角[x00-a,y00-b],右上角[x00+a,y00-b],左下角[x00-a,y00+b],右下角[x00+a,y00+b],在本发明实施例中,a=15,b=15。
在搜索范围内,从左上角开始,按自左向右,自上向下的顺序依次平移定位模板,每移动一次定位模板,使定位模板的中心与搜索范围内的相应点重合,计算定位模板与其覆盖下图像的卷积值。如上所述,定位模板的中心是指定位模板正中间的点,对于左上角定位模板来说,其中心为用T1[11,11]表示,右上角定位模板的中心为T2[11,11],左下角定位模板的中心为T3[11,11]。
运单二值图像搜索范围内各像素点与左上角定位模板的卷积值t1[i,j]的计算方法如下:
t 1 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 1 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 1 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb; - - - ( 11 )
其中,i=x00-a,x00-a+1,..,x00+a,j=y00-b,y00-b+1,..,y00+b。
在计算得到的运单二值图像搜索范围内各像素点的卷积值t1[i,j]中,其最大值对应的位置便为运单二值图像黑白色块编码第一色块的左上角位置,这个位置同时也是黑白色块编码左上角的位置,用[x01,y01]表示。
2)黑白色块编码第一色块右上角精确定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第一色块右上角的搜索范围依次为:左上角[x01,y01-b],右上角[x01+2*a,y01-b],左下角[x01,y01+b],右下角[x01+2*a,y01+b]。
按照步骤1)相同的搜索方式,计算定位模板与其覆盖下图像的卷积值,运单二值图像搜索范围内各像素点与右上角定位模板的卷积值t2[i,j]的计算方法如下:
t 2 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 2 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 2 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb; - - - ( 12 )
其中,i=x01,x01+1,..,x01+2*a,j=y01-b,y01-b+1,..,y01+b。
t2[i,j]最大值对应的位置便为运单二值图像黑白色块编码第一色块右上角的位置。这个位置同时也是黑白色块编码的右上角位置,用[x02,y02]表示。
3)黑白色块编码第一色块左下角定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第一色块左下角的搜索范围依次为:左上角[x01-a,y01],右上角[x01+a,y01],左下角[x01-a,y01+2*b],右下角[x01+a,y01+2*b]。
按照步骤1)相同的搜索方式,计算定位模板与其覆盖下图像的卷积值,运单二值图像搜索范围内各像素点与左下角角定位模板的卷积值t3[i,j]的计算方法如下
t 3 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 3 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 3 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb; - - - ( 13 )
其中,i=x01-a,x01-a+1,..,x01+a,j=y01,y01+1,..,y01+2*b。
t3[i,j]最大值对应的位置便为运单二值图像黑白色块编码第一色块左下角的位置,用[x03,y03]表示。
4)黑白色块编码第一色块右下角定位
得到黑白色块编码第一色块的左上角,右上角,左下角位置后,对应可得到黑白色块编码第一色块的右下角位置[x04,y04],其中x04=x02,y04=y03
5)黑白色块编码第二色块左上角定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第二色块左上角的搜索范围依次为:左上角[x01-a,y01],右上角[x01+a,y01],左下角[x01-a,y01+2*b],右下角[x01+a,y01+2*b]。
按照步骤1)相同的搜索方式,计算左上角定位模板T1[m,n]与其覆盖下图像的卷积值t4[i,j]:
t 4 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 1 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 2 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb; - - - ( 14 )
其中,i=x01-a,x01-a+1,..,x01+a,j=y01,y01+1,..,y01+2*b。
t4[i,j]最大值对应的位置便为运单二值图像黑白色块编码第二色块左上角的位置,用[x11,y11]表示。
可以得出第一色块的宽度w等于x02-x01,第一色块的高度h等于y03-y01,第一色块的下边界和第二色块的上边界的垂直距离d等于y11-y03
6)黑白色块编码剩余各色块定位
由于黑白色块编码每一色块的大小是相同的,并且黑白色块编码各色块间的位置是固定的,因此对应可以确定黑白色块编码剩余每一色块的精确位置。
黑白色块编码第二色块的右上角的位置为[x12,y12],其中x12=x11+w,y12=y11,黑白色块编码第二色块左下角的位置为[x13,y13],其中,x13=x11,y13=y11+h,黑白色块编码第二色块右下角的位置为[x14,y14],其中,x14=x12,y14=y13,黑白色块编码第三色块左上角的位置为[x21,y21],其中,x21=x13,y21=y13+d,黑白色块编码第三色块右上角的位置为[x22,y22],其中,x22=x21+w,y22=y21,黑白色块编码第三色块左下角的位置为[x23,y23],其中,x23=x21,y23=y21+h,黑白色块编码第三色块右下角的位置为[x24,y24],其中,x24=x22,y24=y23,黑白色块编码第四色块左上角的位置为[x31,y31],其中,x31=x23,y31=y23+d,黑白色块编码第四色块右上角的位置为[x32,y32],其中,x32=x31+w,y32=y31,黑白色块编码第四色块左下角的位置为[x33,y33],其中,x33=x31,y33=y31+h,黑白色块编码第四色块右下角的位置为[x34,y34],其中,x34=x32,y34=y33,黑白色块编码第五色块左上角的位置为[x41,y41],其中,x41=x33,y41=y33+d,黑白色块编码第五色块右上角的位置为[x42,y42],其中,x42=x41+w,y42=y41,黑白色块编码第五色块左下角的位置为[x43,y43],其中,x43=x41,y43=y41+h,黑白色块编码第五色块右下角的位置为[x44,y44],其中,x44=x42,y44=y43
(2)横向排列的黑白色块编码定位
横向排列的黑白色块编码各色块的左上角、右上角位置的纵坐标相同,各色块的左下角、右下角位置的纵坐标相同,各色块的左上角位置的横坐标之间的距离相同,各色块的右上角位置的横坐标的距离相同,各色块的左下角位置的横坐标的距离相同,各色块的右下角位置的横坐标的距离相同。
1)黑白色块编码左上角精确定位
黑白色块编码左上角的定位方法与纵向排列的黑白色块编码左上角定位的方法相同,这个位置同时也是黑白色块编码第一色块的左上角位置,用[x61,y61]表示。
2)黑白色块编码第一色块右上角精确定位
黑白色块编码第一色块的右上角定位方法与纵向排列的黑白色块编码第一色块右上角定位的方法相同,用[x62,y62]表示。
3)黑白色块编码第一色块左下角定位
黑白色块编码第一色块的左下角定位方法与纵向排列的黑白色块编码第一色块左下角定位的方法相同,用[x63,y63]表示。
4)黑白色块编码第一色块右下角定位
得到黑白色块编码第一色块的左上角,右上角,左下角位置后,对应可得到黑白色块编码第一色块的右下角位置[x64,y64],其中x64=x62,y64=y63
5)黑白色块编码第二色块左上角定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第二色块左上角的搜索范围依次为:左上角[x61,y61-b],右上角[x61+2*a,y61-b],左下角[x61,y61+b],右下角[x61+2*a,y61+b],在本发明实施例中,a=15,b=15。
在搜索范围内,从左上角开始,按自左向右,自上向下的顺序依次平移定位模板,每移动一次定位模板窗口,使定位模板的中心与搜索范围内的相应点重合,计算定位模板与其覆盖下图像的卷积值。
左上角定位模板T1[m,n]与其覆盖下图像的卷积值t5[i,j]:
t 5 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 1 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 2 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb; - - - ( 15 )
其中,i=x61,x61+1,..,x61+2a,j=y61-b,y61-b+1,..,y61+b。
t5[i,j]最大值对应的位置便为运单二值图像黑白色块编码第二色块左上角的位置,用[x71,y71]表示。
可以得出第一色块的宽度w1等于x62-x61,第一色块的高度h1等于y63-y61,第一色块的右边界和第二色块的左边界的水平距离d1等于x71-x62
6)黑白色块编码剩余各色块定位
由于黑白色块编码每一色块的大小是相同的,并且黑白色块编码各色块间的位置是固定的,因此对应可以确定黑白色块编码剩余每一色块的精确位置。
黑白色块编码第二色块的右上角的位置为[x72,y72],其中x72=x71+w1,y72=y71,黑白色块编码第二色块左下角的位置为[x73,y73],其中,x73=x71,y73=y71+h1,黑白色块编码第二色块右下角的位置为[x74,y74],其中,x74=x72,y74=y73,黑白色块编码第三色块左上角的位置为[x81,y81],其中,x81=x72+d1,y81=y72,黑白色块编码第三色块右上角的位置为[x82,y82],其中,x82=x81+w1,y82=y81,黑白色块编码第三色块左下角的位置为[x83,y83],其中,x83=x81,y83=y81+h1,黑白色块编码第三色块右下角的位置为[x84,y84],其中,x84=x82,y24=y83,黑白色块编码第四色块左上角的位置为[x91,y91],其中,x91=x82+d1,y91=y82,黑白色块编码第四色块右上角的位置为[x92,y92],其中,x92=x91+w1,y92=y91,黑白色块编码第四色块左下角的位置为[x93,y93],其中,x93=x91,y93=y91+h1,黑白色块编码第四色块右下角的位置为[x94,y94],其中,x94=x92,y94=y93,黑白色块编码第五色块左上角的位置为[x101,y101],其中,x101=x92+d1,y101=y92,黑白色块编码第五色块右上角的位置为[x102,y102],其中,x102=x101+w1,y102=y101,黑白色块编码第五色块左下角的位置为[x103,y103],其中,x103=x101,y103=y101+h1,黑白色块编码第五色块右下角的位置为[x104,y104],其中,x104=x102,y104=y103
6.黑白色块编码解码
在得到编码中各色块的位置后,就可以进行黑白色块编码的解码了;
通过统计运单二值化图像中黑白色块编码上每一色块中白点的个数来判定每一色块对应的编码信息,当白点个数大于每一色块像素点总数的一半时,该色块用‘1’表示,表示为黑色块,当白点个数小于等于每一色块像素点总数的一半时,该色块用‘0’表示,表示为白色块,将从上到下各色块的信息依次排列,便可得到该黑白色块编码信息。在本发明实施例中,如果检测得到的结果为“011000”,则对应表示的色块信息为“白色块黑色块黑色块白色块白色块白色块”。根据“011000”对应的编码表确定该运单类型。
在确定了运单类型后,对应进行后续的版面切割和识别任务,运单数据的电子化有很大帮助。
四、运单信息生成单元
运单信息生成单元的主要功能是将运单图片的运单类型保存下来。这里的运单信息生成单元可以简单的看作一个常用的计算机,将运单图片的运单类型保存在计算机里,用于后续的识别。

Claims (1)

1.运单信息录入和黑白色块编码解码系统,其特征在于包括设计版面单元,运单图片采集单元,运单图片色块解码单元以及运单信息生成单元:
一、设计版面单元
通过黑白色块编码,将版面和黑白色块编码关联,设计票据版面后批量印刷成运单图片,运单图片上有黑白色块编码信息;
黑白色块编码是若干黑、白色块,横向或纵向按照直线顺序和相同间距进行排列组合,每种排列组合为一种编码,通过设定编码表,将编码和运单类型匹配,确定各种编码对应的运单类型,便于后续在解码后对应确定相应的运单类型;
在黑白色块编码后,根据运单版面特征,在运单的特定位置加入色块信息,批量印刷;
二、运单图片采集单元
运单图片采集单元的主要功能是通过通用的扫描仪,将各运单图片进行扫描得到的各运单图像储存;
三、运单图片黑白色块编码解码单元
运单图片黑白色块编码解码单元的主要功能是对每种运单图像进行色块解码,确定每个运单图片的运单类型;
黑白色块编码解码包括如下步骤:
1、运单图像获取
读取真实运单图像,得到运单彩色图像,
2、运单图像二值化
首先将运单彩色图像转换为灰度图像,运单图像二值化就是将运单灰度图像转化为黑白二值的运单二值图像,对于读入的运单灰度图像,I[i,j]表示水平位置为i,垂直位置为j像素点处运单图像的灰度值,[i,j]遍历运单灰度图像的所有像素点,i是变量,表示窗口图像中像素点的水平位置,取值为i=1,2,...,W0,j是变量,表示窗口图像中像素点的垂直位置,取值为j=1,2,...,H0,W0为运单灰度图像宽度,H0为运单灰度图像高度;
对于运单灰度图像的各个像素点,采用阈值分割法,将运单灰度图像中大于分割阈值的像素点置为0,小于分割阈值的像素点置为255,得到运单二值图像,D1[i,j]表示运单二值图像水平位置为i,垂直位置为j像素点处的值,具体计算方法为:
D 1 &lsqb; i , j &rsqb; = 255 , I &lsqb; i , j &rsqb; < th 1 0 , I &lsqb; i , j &rsqb; &GreaterEqual; th 1 , i = 1 , 2 , .. , W 0 , j = 1 , 2 , .. , H 0
其中,th1为分割阈值,th1的选取要使得运单灰度图像的黑色字体和表格信息凸现出来,而去除其他信息的干扰;
3、运单二值图像自动纠偏
在运单扫描过程中,由于送纸传送带或滚筒的机械原因导致扫描的运单图像经常会出现倾斜情况,自动纠偏包括两个步骤:计算倾斜角度和倾斜校正;
(1)计算倾斜角度
计算运单二值图像的倾斜角度是在步骤2得到的运单二值图像的基础上进行的,对运单二值图像进行分析,选定运单二值图像左边处做分析,将该位置的二值图像提取出来称为边框二值图像,分别对边框二值图像做-8°到8°的顺时针旋转,旋转间隔为1°,每旋转一次,对该边框二值图像进行水平投影,计算极大投影值,共计算得到17个极大投影值,求这17个极大投影值中的最大值,得到最大值对应的旋转角度,该角度便为运单二值图像逆时针方向的倾斜角度,具体包括以下步骤:
a.将运单二值图像中特定区域的图像提取出来称为子区域二值图像
R[i,j]表示子区域二值图像水平水平位置为i,垂直位置为j像素点处的值,W1表示子区域二值图像的宽度,H1表示子区域二值图像的高度,W为运单二值图像的宽度,H为运单二值图像的高度,运单子区域二值图像的提取方法为:
R[i,j]=D1[i,j],i=1,2,..,W1,j=1,2,..,H1
其中,H1=H;
b.对子区域二值图像做旋转调整
将子区域二值图像R[i,j]做-8°到8°,间隔为1°的顺时针旋转,用W2k表示第k次旋转后子区域二值图像所占图像的宽度,用H2k表示第k次旋转后子区域二值图像所占图像的高度,计算方法为:
其中,α=|k-9|°表示旋转角度,为向下取整运算符,表示不大于W1×cosα+H1×sinα的最大整数;
用Rk[i,j]表示第k次旋转后,子区域二值图像水平第i个像素点,垂直第j个像素点的值,先做初始化,Rk[i,j]=0,i=1,2,...,W2k,j=1,2,...,H2k,取k=1时,子区域二值图像像素点R[i,j]顺时针旋转-8°,也即逆时针旋转8°,此时α=8°,得到旋转后的子区域二值图像R1[i,j],原子区域二值图像位置[i,j]对应的像素值R[i,j]在逆时针旋转α后子区域二值图像位置[i1,j1]对应的像素值R1[i,j]的计算公式为:
i 1 j 1 1 = c o s &alpha; s i n &alpha; 0 - s i n &alpha; cos &alpha; W 1 &times; s i n &alpha; 0 0 1 i - 1 j - 1 1 + 1 1 0
其中,[i1,j1]为经过运算后向下取整操作得到的;
k依次加1,取k=2,3,...,8时,依次将子区域二值图像像素点R[i,j]逆时针旋转-7°到-1°,此时,α=|k-9|°,可分别得到R2[i,j],R3[i,j],...,R8[i,j],k=9时,旋转角度为0,此时,R9[i,j]=R[i,j],k=10,11,...,17时,依次将子区域二值图像像素点R[i,j]顺时针旋转1°到7°,此时,α=|k-9|°,原子区域二值图像各像素点的位置[i,j]对应的像素值R[i,j]在顺时针旋转α后子区域二值图像各像素点的位置[i1,j1]对应的像素值Rk[i,j]中的位置的计算公式为:
i 1 j 1 1 = c o s &alpha; - s i n &alpha; H 1 &times; c o s &alpha; s i n &alpha; cos &alpha; 0 0 0 1 1 - 1 j - 1 1 + 1 1 0
其中,[i1,j1]为经过运算后向下取整操作得到的,可分别得到R10[i,j],R11[i,j],...,R17[i,j],共得到17个子区域二值图像Rk[i,j];
c.对旋转后的每个子区域二值图像按行进行垂直投影,计算每个旋转后的子区域二值图像的极大投影值m[k]:
m &lsqb; k &rsqb; = m a x ( h k &lsqb; j &rsqb; ) j = 1 , 2 , .. , H 2 k , k = 1 , ... , 17
其中,hk[j]表示旋转后的每个子区域二值图像的垂直投影值,j=1,2,..,H2k
d.计算倾斜角度:
对得到的17个极大投影值m[k]进行判断,找出其中的最大值作为最大投影值,此时对应的角度值为如果(K-9)<0,表明运单图像顺时针方向倾斜了|K-9|°,即倾斜角度为β=|K-9|°,如果(K-9)=0,表示运单图像没有倾斜,β=0,如果(K-9)>0,表明运单图像逆时针方向倾斜了|K-9|°,倾斜角度为β=-|K-9|°;
(2)倾斜校正
根据上述得到的倾斜角度,对运单二值图像进行倾斜补偿,完成倾斜校正,用W3表示倾斜校正后运单二值图像的宽度,用H3表示倾斜校正后运单二值图像的高度,计算方法为:
当倾斜角度β>0时,对运单二值图像做逆时针β校正:
i 1 j 1 1 = c o s &beta; s i n &beta; 0 - s i n &beta; cos &beta; W 1 &times; s i n &beta; 0 0 1 i - 1 j - 1 1 + 1 1 0
其中,[i1,j1]为经过运算后向下取整操作得到的;
当倾斜角度β<0时,对运单二值图像做顺时针|β|校正:
i 1 j 1 1 = c o s | &beta; | - s i n | &beta; | H 1 &times; c o s | &beta; | s i n | &beta; | cos | &beta; | 0 0 0 1 i - 1 j - 1 1 + 1 1 0
其中,[i1,j1]为经过运算后向下取整操作得到的;
当倾斜角度β=0时,对运单二值图像不做校正;
4.运单二值图像去噪
当扫描过程中由于纸张质量或者扫描镜头的灰尘原因,造成扫描出来的影像存在噪声点,大大影响黑白色块编码定位和黑白色块编码解码的质量,因此针对步骤3自动纠偏后的运单二值图像需要进行噪声点去除;
5.黑白色块编码定位
在步骤4处理后,在运单二值图像上进行黑白色块编码定位,在倾斜校正后的运单二值图像中,首先确定各需要定位的黑白色块编码顶点的搜索范围,然后与相应的定位模板进行加权计算,完成对各色块顶点的精确定位,进而确定各色块的位置;
所谓定位模板是指用于定位各顶点,与各顶点进行卷积运算的矩阵,m表示定位模板的列值,n表示定位模板的行值,m=1,2,...,21,n=1,2,...,21,用T1[m,n]表示左上角定位模板第n行第m列的值,用公式表示如下:
用T2[m,n]表示右上角定位模板第n行第m列的值,用公式表示如下:
用T3[m,n]表示左下角定位模板第n行第m列的值,用公式表示如下:
运单二值图像中编码中各色块可以是横向排列或纵向排列;
(1)纵向排列的黑白色块编码定位
在本发明中,编码是由很多色块组成的,每个色块为形状和大小相同的方块,对于纵向排列的黑白色块编码定位,步骤如下:
1)黑白色块编码第一色块左上角精确定位
由于黑白色块编码总是位于运单图像的某一区域内,运单图像中黑白色块编码左上角的大概位置为[x00,y00],这个位置同时也是黑白色块编码第一色块的左上角位置,对于左上角给予一定的宽裕,水平偏移量为a,垂直偏移量为b,则运单二值图像黑白色块编码第一色块左上角搜索范围依次为:左上角[x00-a,y00-b],右上角[x00+a,y00-b],左下角[x00-a,y00+b],右下角[x00+a,y00+b];
在搜索范围内,从左上角开始,按自左向右,自上向下的顺序依次平移定位模板,每移动一次定位模板窗口,使定位模板的中心与搜索范围内的相应点重合,计算定位模板与其覆盖下图像的卷积值;
如上所述,定位模板的中心是指定位模板正中间的点,对于左上角定位模板来说,其中心为用T1[11,11]表示,右上角定位模板的中心为T2[11,11],左下角定位模板的中心为T3[11,11];
运单二值图像搜索范围内各像素点与左上角定位模板的卷积值t1[i,j]的计算方法如下:
t 1 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 1 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 1 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x00-a,x00-a+1,..,x00+a,j=y00-b,y00-b+1,..,y00+b;
在计算得到的运单二值图像搜索范围内各像素点的卷积值t1[i,j]中,其最大值对应的位置便为运单二值图像黑白色块编码第一色块左上角的位置,这个位置同时也是黑白色块编码的左上角位置,用[x01,y01]表示;
2)黑白色块编码第一色块右上角精确定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第一色块右上角的搜索范围依次为:左上角[x01,y01-b],右上角[x01+2*a,y01-b],左下角[x01,y01+b],右下角[x01+2*a,y01+b];
按照步骤1)相同的搜索方式,计算定位模板与其覆盖下图像的卷积值,运单二值图像搜索范围内各像素点与右上角定位模板的卷积值t2[i,j]的计算方法如下
t 2 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 2 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 2 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x01,x01+1,..,x01+2*a,j=y01-b,y01-b+1,..,y01+b
t2[i,j]最大值对应的位置便为运单二值图像黑白色块编码第一色块右上角的位置,这个位置同时也是黑白色块编码的右上角位置,用[x02,y02]表示;
3)黑白色块编码第一色块左下角定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第一色块左下角的搜索范围依次为:左上角[x01-a,y01],右上角[x01+a,y01],左下角[x01-a,y01+2*b],右下角[x01+a,y01+2*b],
按照步骤1)相同的搜索方式,计算定位模板与其覆盖下图像的卷积值,
t 3 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 3 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 3 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x01-a,x01-a+1,..,x01+a,j=y01,y01+1,..,y01+2*b,
t3[i,j]最大值对应的位置便为运单二值图像黑白色块编码第一色块左下角的位置,用[x03,y03]表示;
4)黑白色块编码第一色块右下角定位
得到黑白色块编码第一色块的左上角,右上角,左下角位置后,对应可得到黑白色块编码第一色块的右下角位置[x04,y04],其中x04=x02,y04=y03
5)黑白色块编码第二色块左上角定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第二色块左上角的搜索范围依次为:左上角[x01-a,y01],右上角[x01+a,y01],左下角[x01-a,y01+2*b],右下角[x01+a,y01+2*b];
按照步骤1)相同的搜索方式,计算左上角定位模板T1[m,n]与其覆盖下图像的卷积值t4[i,j]:
t 4 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 1 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 2 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x01-a,x01-a+1,..,x01+a,j=y01,y01+1,..,y01+2*b,
t4[i,j]最大值对应的位置便为运单二值图像黑白色块编码第二色块左上角的位置,用[x11,y11]表示;
可以得出第一色块的宽度w等于x02-x01,第一色块的高度h等于y03-y01,第一色块的下边界和第二色块的上边界的垂直距离d等于y11-y03
6)黑白色块编码剩余各色块定位
由于黑白色块编码每一色块的大小是相同的,并且黑白色块编码各色块间的位置是固定的,因此对应可以确定黑白色块编码剩余每一色块的精确位置;
黑白色块编码第二色块的右上角的位置为[x12,y12],其中x12=x11+w,y12=y11,黑白色块编码第二色块左下角的位置为[x13,y13],其中,x13=x11,y13=y11+h,黑白色块编码第二色块右下角的位置为[x14,y14],其中,x14=x12,y14=y13,黑白色块编码第三色块左上角的位置为[x21,y21],其中,x21=x13,y21=y13+d,黑白色块编码第三色块右上角的位置为[x22,y22],其中,x22=x21+w,y22=y21,黑白色块编码第三色块左下角的位置为[x23,y23],其中,x23=x21,y23=y21+h,黑白色块编码第三色块右下角的位置为[x24,y24],其中,x24=x22,y24=y23,黑白色块编码第四色块左上角的位置为[x31,y31],其中,x31=x23,y31=y23+d,黑白色块编码第四色块右上角的位置为[x32,y32],其中,x32=x31+w,y32=y31,黑白色块编码第四色块左下角的位置为[x33,y33],其中,x33=x31,y33=y31+h,黑白色块编码第四色块右下角的位置为[x34,y34],其中,x34=x32,y34=y33,黑白色块编码第五色块左上角的位置为[x41,y41],其中,x41=x33,y41=y33+d,黑白色块编码第五色块右上角的位置为[x42,y42],其中,x42=x41+w,y42=y41,黑白色块编码第五色块左下角的位置为[x43,y43],其中,x43=x41,y43=y41+h,黑白色块编码第五色块右下角的位置为[x44,y44],其中,x44=x42,y44=y43
(2)横向排列的黑白色块编码定位
横向排列的黑白色块编码各色块的左上角、右上角位置的纵坐标相同,各色块的左下角、右下角位置的纵坐标相同,各色块的左上角位置的横坐标之间的距离相同,各色块的右上角位置的横坐标的距离相同,各色块的左下角位置的横坐标的距离相同,各色块的右下角位置的横坐标的距离相同;
1)黑白色块编码左上角精确定位
黑白色块编码左上角的定位方法与纵向排列的黑白色块编码左上角定位的方法相同,这个位置同时也是黑白色块编码第一色块的左上角位置,用[x61,y61]表示;
2)黑白色块编码第一色块右上角精确定位
黑白色块编码第一色块的右上角定位方法与纵向排列的黑白色块编码第一色块右上角定位的方法相同,用[x62,y62]表示;
3)黑白色块编码第一色块左下角定位
黑白色块第一色块的左下角定位方法与纵向排列的黑白色块编码第一色块左下角定位的方法相同,用[x63,y63]表示;
4)黑白色块编码第一色块右下角定位
得到黑白色块编码第一色块的左上角,右上角,左下角位置后,对应可得到黑白色块编码第一色块的右下角位置[x64,y64],其中x64=x62,y64=y63
5)黑白色块编码第二色块左上角定位
以黑白色块编码第一色块左上角为基础,确定黑白色块编码第二色块左上角的搜索范围依次为:左上角[x61,y61-b],右上角[x61+2*a,y61-b],左下角[x61,y61+b],右下角[x61+2*a,y61+b];
在搜索范围内,从左上角开始,按自左向右,自上向下的顺序依次平移定位模板,每移动一次定位模板窗口,使定位模板的中心与搜索范围内的相应点重合,计算定位模板与其覆盖下图像的卷积值;
左上角定位模板T1[m,n]与其覆盖下图像的卷积值t5[i,j]:
t 5 &lsqb; i , j &rsqb; = &Sigma; n = 1 21 T 1 &lsqb; 11 , n &rsqb; &CenterDot; D 1 &lsqb; i , n + j - 11 &rsqb; + &Sigma; m = 1 21 T 2 &lsqb; m , 11 &rsqb; &CenterDot; D 1 &lsqb; m + i - 11 , j &rsqb; - D 1 &lsqb; i , j &rsqb;
其中,i=x61,x61+1,..,x61+2a,j=y61-b,y61-b+1,..,y61+b;
t5[i,j]最大值对应的位置便为运单二值图像黑白色块编码第二色块左上角的位置,用[x71,y71]表示;
可以得出第一色块的宽度w1等于x62-x61,第一色块的高度h1等于y63-y61,第一色块的右边界和第二色块的左边界的水平距离d1等于x71-x62
6)黑白色块编码剩余各色块位置确定
由于黑白色块编码每一色块的大小是相同的,并且黑白色块编码各色块间的位置是固定的,因此对应可以确定黑白色块编码剩余每一色块的精确位置;
黑白色块编码第二色块的右上角的位置为[x72,y72],其中x72=x71+w1,y72=y71,黑白色块编码第二色块左下角的位置为[x73,y73],其中,x73=x71,y73=y71+h1,黑白色块编码第二色块右下角的位置为[x74,y74],其中,x74=x72,y74=y73,黑白色块编码第三色块左上角的位置为[x81,y81],其中,x81=x72+d1,y81=y72,黑白色块编码第三色块右上角的位置为[x82,y82],其中,x82=x81+w1,y82=y81,黑白色块编码第三色块左下角的位置为[x83,y83],其中,x83=x81,y83=y81+h1,黑白色块编码第三色块右下角的位置为[x84,y84],其中,x84=x82,y24=y83,黑白色块编码第四色块左上角的位置为[x91,y91],其中,x91=x82+d1,y91=y82,黑白色块编码第四色块右上角的位置为[x92,y92],其中,x92=x91+w1,y92=y91,黑白色块编码第四色块左下角的位置为[x93,y93],其中,x93=x91,y93=y91+h1,黑白色块编码第四色块右下角的位置为[x94,y94],其中,x94=x92,y94=y93,黑白色块编码第五色块左上角的位置为[x101,y101],其中,x101=x92+d1,y101=y92,黑白色块编码第五色块右上角的位置为[x102,y102],其中,x102=x101+w1,y102=y101,黑白色块编码第五色块左下角的位置为[x103,y103],其中,x103=x101,y103=y101+h1,黑白色块编码第五色块右下角的位置为[x104,y104],其中,x104=x102,y104=y103
6.色块解码
在得到编码中各色块的位置后,就可以进行黑白色块编码的解码了;
通过统计运单二值化图像中黑白色块编码上每一色块中白点的个数来判定每一色块对应的编码信息,当白点个数大于每一色块像素点总数的一半时,该色块用‘1’表示,表示为黑色块,当白点个数小于等于每一色块像素点总数的一半时,该色块用‘0’表示,表示为白色块,将从上到下各色块的信息依次排列,便可得到该黑白色块编码信息;
四、运单信息生成单元
运单信息生成单元的主要功能是将运单图片的运单类型保存下来,这里的运单信息生成单元可以简单的看作一个常用的计算机,将运单图片的运单类型保存在计算机里,用于后续的识别。
CN201310364550.7A 2013-08-20 2013-08-20 运单信息录入和黑白色块编码解码系统 Active CN103473518B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310364550.7A CN103473518B (zh) 2013-08-20 2013-08-20 运单信息录入和黑白色块编码解码系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310364550.7A CN103473518B (zh) 2013-08-20 2013-08-20 运单信息录入和黑白色块编码解码系统

Publications (2)

Publication Number Publication Date
CN103473518A CN103473518A (zh) 2013-12-25
CN103473518B true CN103473518B (zh) 2016-06-15

Family

ID=49798363

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310364550.7A Active CN103473518B (zh) 2013-08-20 2013-08-20 运单信息录入和黑白色块编码解码系统

Country Status (1)

Country Link
CN (1) CN103473518B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298947B (zh) * 2014-08-15 2017-03-22 广东顺德中山大学卡内基梅隆大学国际联合研究院 一种对二维条码精确定位的方法及装置
CN106683593A (zh) * 2015-11-06 2017-05-17 沈维 一种具有编码信息的广告牌
CN108491843B (zh) * 2018-04-12 2022-11-18 腾讯科技(深圳)有限公司 一种图像处理方法、装置及存储介质
CN108875737B (zh) * 2018-06-11 2022-06-21 四川骏逸富顿科技有限公司 一种纸质处方单据中检测复选框是否勾选的方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0779351A (ja) * 1993-09-08 1995-03-20 Fuji Xerox Co Ltd 画像符号化復号装置
CN101794435A (zh) * 2010-03-04 2010-08-04 成都三泰电子实业股份有限公司 基于积分图的二值图像降噪方法以及二值图像处理系统
CN102789658A (zh) * 2012-03-02 2012-11-21 成都三泰电子实业股份有限公司 紫外防伪支票真伪验证方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4529828B2 (ja) * 2005-07-19 2010-08-25 富士ゼロックス株式会社 文書改ざん防止装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0779351A (ja) * 1993-09-08 1995-03-20 Fuji Xerox Co Ltd 画像符号化復号装置
CN101794435A (zh) * 2010-03-04 2010-08-04 成都三泰电子实业股份有限公司 基于积分图的二值图像降噪方法以及二值图像处理系统
CN102789658A (zh) * 2012-03-02 2012-11-21 成都三泰电子实业股份有限公司 紫外防伪支票真伪验证方法

Also Published As

Publication number Publication date
CN103473518A (zh) 2013-12-25

Similar Documents

Publication Publication Date Title
CN103488965B (zh) 运单信息录入和彩色色块编码解码系统
RU2678485C1 (ru) Способ сегментации и распознавания символов
CN106156761B (zh) 面向移动终端拍摄的图像表格检测与识别方法
CN102184378B (zh) 一种pdf417标准二维条码图像切割的办法
CN100377167C (zh) 一种用于二维码识别的二维码区域精确定位方法
CN101908136B (zh) 一种表格识别处理方法及系统
US7106904B2 (en) Form identification method
US10311322B2 (en) Character information recognition method based on image processing
US9430726B2 (en) High capacity 2D color barcode and method for decoding the same
CN105654072A (zh) 一种低分辨率医疗票据图像的文字自动提取和识别系统与方法
US10528781B2 (en) Detection method and system for characteristic patterns of Han Xin codes
US20150129658A1 (en) Method for decoding matrix-type two-dimensional code
CN103473518B (zh) 运单信息录入和黑白色块编码解码系统
EP2393037A1 (en) Data matrix decoding chip and decoding method thereof
CN105654015A (zh) 解码二维矩阵符号的方法和系统
JP2012008791A (ja) 帳票認識装置及び帳票認識方法
CN103559490A (zh) 基于二值图像连通域统计的答题卡自动评分方法
JP2000200321A (ja) 2次元バ―コ―ドを場所検知し及び読取るための方法
CN111046859B (zh) 字符识别方法及装置
CN110458014A (zh) 答题卡识读方法、装置和计算机可读存储介质
CN112241730A (zh) 一种基于机器学习的表格提取方法和系统
CN114399677A (zh) 一种基于文本区域读取的指针仪表识别方法
US8249364B2 (en) Method for resolving contradicting output data from an optical character recognition (OCR) system, wherein the output data comprises more than one recognition alternative for an image of a character
CN111046770B (zh) 一种照片档案人物自动标注方法
CN104376317A (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
ASS Succession or assignment of patent right

Owner name: CHENGDU WOLAILA GRID INFORMATION TECHNOLOGY CO., L

Free format text: FORMER OWNER: CHENGDU SANTAI ELECTRONIC INDUSTRY CO., LTD.

Effective date: 20150603

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150603

Address after: High tech Zone Renhe street Chengdu city Sichuan province 610091 No. 39 1 1 storey building No. 1

Applicant after: Chengdu Wolaila Network Information Technology Co., Ltd.

Address before: 610091 No. 42 Shu West Road, Chengdu, Sichuan, Jinniu District

Applicant before: Chengdu Santai Electronic Industry Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: High tech Zone Renhe street Chengdu city Sichuan province 610091 No. 39 1 1 storey building No. 1

Patentee after: CHENGDU WOLAILA GRID INFORMATION TECHNOLOGY CO., LTD.

Address before: High tech Zone Renhe street Chengdu city Sichuan province 610091 No. 39 1 1 storey building No. 1

Patentee before: Chengdu Wolaila Network Information Technology Co., Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 610000 No. 1, 1st floor, No. 39 Renhe Street, Chengdu High-tech Zone, Sichuan Province

Patentee after: CHINA POST TECHNOLOGY Co.,Ltd.

Address before: 610091 No. 1, 1st floor, No. 39 Renhe Street, Chengdu High-tech Zone, Sichuan Province

Patentee before: CHENGDU WOLAILA GRID INFORMATION TECHNOLOGY CO., LTD.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 610000 No. 1, 1st floor, No. 39 Renhe Street, Chengdu High-tech Zone, Sichuan Province

Patentee after: Zhidi Technology Co.,Ltd.

Address before: 610000 No. 1, 1st floor, No. 39 Renhe Street, Chengdu High-tech Zone, Sichuan Province

Patentee before: CHINA POST TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 610000 No. 1, 1st floor, No. 39 Renhe Street, Chengdu High-tech Zone, Sichuan Province

Patentee after: Fengchao Interactive Media Co.,Ltd.

Address before: 610000 No. 1, 1st floor, No. 39 Renhe Street, Chengdu High-tech Zone, Sichuan Province

Patentee before: Zhidi Technology Co.,Ltd.