[發明專利]運單信息錄入和黑白色塊編碼解碼系統有效
| 申請號: | 201310364550.7 | 申請日: | 2013-08-20 |
| 公開(公告)號: | CN103473518A | 公開(公告)日: | 2013-12-25 |
| 發明(設計)人: | 補建;羅安;馮少川;楊吟峰;李毅;師改梅 | 申請(專利權)人: | 成都三泰電子實業股份有限公司 |
| 主分類號: | G06K7/00 | 分類號: | G06K7/00;G06K9/60;G06T9/00 |
| 代理公司: | 成都立信專利事務所有限公司 51100 | 代理人: | 馮忠亮 |
| 地址: | 610091 四*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 運單 信息 錄入 白色 編碼 解碼 系統 | ||
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像素點處的值,具體計算方法為:
其中,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
其中,
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]的計算公式為:
其中,[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]中的位置的計算公式為:
其中,[i1,j1]為經過運算后向下取整操作得到的,可分別得到R10[i,j],R11[i,j],...,R17[i,j],共得到17個子區域二值圖像Rk[i,j];
c.對旋轉后的每個子區域二值圖像按行進行垂直投影,計算每個旋轉后的子區域二值圖像的極大投影值m[k]:
其中,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時,對運單二值圖像做逆時針β校正:
其中,[i1,j1]為經過運算后向下取整操作得到的;
當傾斜角度β<0時,對運單二值圖像做順時針|β|校正:
其中,[i1,j1]為經過運算后向下取整操作得到的;
當傾斜角度β=0時,對運單二值圖像不做校正;
4.運單二值圖像去噪
當掃描過程中由于紙張質量或者掃描鏡頭的灰塵原因,造成掃描出來的影像存在噪聲點,大大影響黑白色塊編碼定位和黑白色塊編碼解碼的質量,因此針對步驟3自動糾偏后的運單二值圖像需要進行噪聲點去除;
5.黑白色塊編碼定位
在步驟4處理后,在運單二值圖像上進行黑白色塊編碼定位,在傾斜校正后的運單二值圖像中,首先確定各需要定位的黑白色塊編碼頂點的搜索范圍,然后與相應的定位模板進行加權計算,完成對各色塊頂點的精確定位,進而確定各色塊的位置;
所謂定位模板是指用于定位各頂點,與各頂點進行卷積運算的矩陣,m表示定位模板的列值,n表示定位模板的行值,m=1,2,...,51,n=1,2,...,51,用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]的計算方法如下:
其中,i=x00-a,x00-a+1,..,x00+a,j=y00-b,y00-b+1,..,y00+b;
在計算得到的運單二值圖像搜索范圍內各像素點的卷積值t[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]的計算方法如下
其中,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)相同的搜索方式,計算定位模板與其覆蓋下圖像的卷積值,
其中,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]:
其中,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]與其覆蓋下圖像的卷積值t4[i,j]:
其中,i=x61-a,x61-a+1,..,x61+a,j=y61,y61+1,..,y61+2*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’表示,表示為白色塊,將從上到下各色塊的信息依次排列,便可得到該黑白色塊編碼信息;
四、運單信息生成單元
運單信息生成單元的主要功能是將運單圖片的運單類型保存下來,這里的運單信息生成單元可以簡單的看作一個常用的計算機,將運單圖片的運單類型保存在計算機里,用于后續的識別。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都三泰電子實業股份有限公司,未經成都三泰電子實業股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310364550.7/1.html,轉載請聲明來源鉆瓜專利網。
- 信息記錄介質、信息記錄方法、信息記錄設備、信息再現方法和信息再現設備
- 信息記錄裝置、信息記錄方法、信息記錄介質、信息復制裝置和信息復制方法
- 信息記錄裝置、信息再現裝置、信息記錄方法、信息再現方法、信息記錄程序、信息再現程序、以及信息記錄介質
- 信息記錄裝置、信息再現裝置、信息記錄方法、信息再現方法、信息記錄程序、信息再現程序、以及信息記錄介質
- 信息記錄設備、信息重放設備、信息記錄方法、信息重放方法、以及信息記錄介質
- 信息存儲介質、信息記錄方法、信息重放方法、信息記錄設備、以及信息重放設備
- 信息存儲介質、信息記錄方法、信息回放方法、信息記錄設備和信息回放設備
- 信息記錄介質、信息記錄方法、信息記錄裝置、信息再現方法和信息再現裝置
- 信息終端,信息終端的信息呈現方法和信息呈現程序
- 信息創建、信息發送方法及信息創建、信息發送裝置





