專利名稱:一種基于動態(tài)模板的條碼圖像校正方法及校正點獲取方法
一種基于動態(tài)模板的條碼圖像校正方法及校正點獲取方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種圖像校正方法,特別涉及一種基于動態(tài)模板的條碼圖像校正方法 及校正點獲取方法。
背景技術(shù):
條碼技術(shù)是在計算機技術(shù)與信息技術(shù)基礎(chǔ)上發(fā)展起來的一門容編碼、印刷、識別、 數(shù)據(jù)采集和處理于一身的新興技術(shù)。條碼技術(shù)由于其識別快速、準(zhǔn)確、可靠以及成本低等優(yōu) 點,被廣泛應(yīng)用于商業(yè)、圖書管理、倉儲、郵電、交通和工業(yè)控制等領(lǐng)域,并且勢必在逐漸興 起的“物聯(lián)網(wǎng)”應(yīng)用中發(fā)揮重大的作用。目前被廣泛使用的條碼包括一維條碼及二維條碼。一維條碼又稱線形條碼是由平 行排列的多個“條”和“空”單元組成,條形碼信息靠條和空的不同寬度和位置來表達(dá)。一 維條碼只是在一個方向(一般是水平方向)表達(dá)信息,而在垂直方向則不表達(dá)任何信息,因 此信息容量及空間利用率較低,并且在條碼損壞后即無法識別。二維條碼是由按一定規(guī)律在二維方向上分布的黑白相間的特定幾何圖形組成,其 可以在二維方向上表達(dá)信息,因此信息容量及空間利用率較高,并具有一定的校驗功能。二 維條碼可以分為堆疊式二維條碼和矩陣式二維條碼。堆疊式二維條碼是由多行短截的一 維條碼堆疊而成,代表性的堆疊式二維條碼包括PDF417、Code 49、Code 16K等。矩陣式 二維條碼是由按預(yù)定規(guī)則分布于矩陣中的黑、白模塊組成,代表性的矩陣式二維條碼包括 Codeone、Aztec、Date MatriX、QR 碼等?,F(xiàn)有技術(shù)中的二維條碼識別過程中均需要對條碼圖像進行校正,而這種校正過程 往往依賴于條碼圖像中的固定形式圖案。以QR碼為例,QR碼內(nèi)設(shè)置有探測圖形和校正圖 形,通過探測圖形和校正圖形來確定條碼圖像校正系數(shù),并利用變換公式對條碼圖像進行 校正。因此,如果探測圖形和校正圖形受到污損,則難以進行校正。
發(fā)明內(nèi)容為了解決現(xiàn)有技術(shù)中條碼圖像校正過程中需首先對條碼圖像的標(biāo)志性圖形進行 搜索的問題,本發(fā)明提供了一種基于動態(tài)模板的條碼圖像校正方法及校正點獲取方法。上 述方法無需通過搜索標(biāo)志性圖形即可獲取校正點,并可基于校正點進行條碼圖像校正。本發(fā)明解決上述技術(shù)問題所采取的技術(shù)方案是提供一種基于動態(tài)模板的條碼圖 像校正方法。該條碼圖像校正方法包括a.確定二維條碼圖像的子圖像區(qū)域內(nèi)的各模塊的 模塊坐標(biāo)及模塊中心的圖像坐標(biāo);b.對各模塊的模塊中心的灰度值進行二值化處理,以獲 得各模塊中心的黑白值;C.選擇子圖像區(qū)域中的部分模塊的模塊中心作為特征點,形成動 態(tài)模板;d.將動態(tài)模板相對二維條碼圖像進行平移并進行灰度匹配,以確定動態(tài)模板與二 維條碼圖像的最佳匹配位置,并根據(jù)最佳匹配位置確定校正點;e.重復(fù)步驟a_d,獲取多個 校正點,并利用多個校正點對二維條碼圖像進行校正。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟c中,基于各模塊相對于相鄰模塊的標(biāo)志性選擇部分模塊。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟c中,進一步將動態(tài)模板中的各特征點所對應(yīng) 的模塊坐標(biāo)進行統(tǒng)一向量的模塊坐標(biāo)平移,并將動態(tài)模板中的各特征點的黑白值與平移后 的模塊坐標(biāo)所對應(yīng)的模塊中心的黑白值進行匹配,以確定動態(tài)模板是否為有效模板。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟C中,將動態(tài)模板中的各特征點所對應(yīng)的模塊 坐標(biāo)統(tǒng)一向量平移一至兩個模塊,并在匹配度小于預(yù)定閾值時認(rèn)為動態(tài)模板為有效動態(tài)模 板。 根據(jù)本發(fā)明一優(yōu)選實施例,在步驟d中,將動態(tài)模板中的各特征點的圖像坐標(biāo)進 行統(tǒng)一向量的圖像坐標(biāo)平移,并將動態(tài)模板中的各特征點的黑白值與平移后的圖像坐標(biāo) 在二維條碼圖像中的對應(yīng)位置的灰度值進行匹配,并確定匹配度最高的位置為最佳匹配位置。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟d中,將動態(tài)模板中的各特征點的黑白值進行 反轉(zhuǎn),再將動態(tài)模板中的各特征點的圖像坐標(biāo)進行統(tǒng)一向量的圖像坐標(biāo)平移,并將動態(tài)模 板中的各特征點的反轉(zhuǎn)后的黑白值與平移后的圖像坐標(biāo)在二維條碼圖像中的對應(yīng)位置的 灰度值進行匹配,并確定匹配度最低的位置為最佳匹配位置。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟d中,在確定最佳匹配位置后,選擇動態(tài)模板的 一特征點作為校正點。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟d中,選擇距離動態(tài)模板的中心最近的特征點 作為校正點。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟e中,根據(jù)多個校正點的圖像坐標(biāo)及所對應(yīng)的 模塊坐標(biāo),利用如下透視變換公式計算透視變換系數(shù)U= (aX+bY+c) / (gX+hY+1)V= (dX+eY+f)/(gX+hY+1)其中,X和Y為多個校正點在目標(biāo)圖像上的對應(yīng)模塊坐標(biāo),并由多個校正點在二維 條碼圖像上的對應(yīng)模塊坐標(biāo)計算獲得,U和V為多個校正點在二維條碼圖像上的圖像坐標(biāo), a、b、c、d、e、c、f、g及h為透視變換系數(shù)。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟e中,進一步根據(jù)透視變換系數(shù)利用透視變換 公式確定目標(biāo)圖像上的各目標(biāo)像素點在二維條碼圖像上的對應(yīng)位置,并將對應(yīng)位置的像素 信息作為目標(biāo)像素點的像素信息。本發(fā)明解決上述技術(shù)問題所采取的另一技術(shù)方案是提供一種基于動態(tài)模板的條 碼圖像校正點獲取方法。該述條碼圖像校正點獲取方法包括a.確定二維條碼圖像的子 圖像區(qū)域內(nèi)的各模塊的模塊坐標(biāo)及模塊中心的圖像坐標(biāo);b.對各模塊的模塊中心的灰度 值進行二值化處理,以獲得各模塊中心的黑白值;c.選擇子圖像區(qū)域中的部分模塊的模塊 中心作為特征點,形成動態(tài)模板;d.將動態(tài)模板相對二維條碼圖像進行平移并進行灰度匹 配,以確定動態(tài)模板與二維條碼圖像的最佳匹配位置,并根據(jù)最佳匹配位置確定校正點。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟c中,基于各模塊相對于相鄰模塊的標(biāo)志性選 擇部分模塊。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟c中,進一步將動態(tài)模板中的各特征點所對應(yīng) 的模塊坐標(biāo)進行統(tǒng)一向量的模塊坐標(biāo)平移,并將動態(tài)模板中的各特征點的黑白值與平移后的模塊坐標(biāo)所對應(yīng)的模塊中心的黑白值進行匹配,以確定動態(tài)模板是否為有效模板。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟c中,將動態(tài)模板中的各特征點所對應(yīng)的模塊 坐標(biāo)統(tǒng)一向量平移一至兩個模塊,并在匹配度小于預(yù)定閾值時認(rèn)為動態(tài)模板為有效動態(tài)模 板。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟d中,將動態(tài)模板中的各特征點的圖像坐標(biāo)進 行統(tǒng)一向量的圖像坐標(biāo)平移,并將動態(tài)模板中的各特征點的黑白值與平移后的圖像坐標(biāo) 在二維條碼圖像中的對應(yīng)位置的灰度值進行匹配,并確定匹配度最高的位置為最佳匹配位置。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟d中,將動態(tài)模板中的各特征點的黑白值進行 反轉(zhuǎn),再將動態(tài)模板中的各特征點的圖像坐標(biāo)進行統(tǒng)一向量的圖像坐標(biāo)平移,并將動態(tài)模 板中的各特征點的反轉(zhuǎn)后的黑白值與平移后的圖像坐標(biāo)在二維條碼圖像中的對應(yīng)位置的 灰度值進行匹配,并確定匹配度最低的位置為最佳匹配位置。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟d中,在確定最佳匹配位置后,選擇動態(tài)模板的 一特征點作為校正點。根據(jù)本發(fā)明一優(yōu)選實施例,在步驟d中,選擇距離動態(tài)模板的中心最近的特征點 作為校正點。通過上述方法,可以在無需搜索條碼圖像的標(biāo)志性圖形的情況下獲取用于條碼圖 像校正的校正點,提供了在標(biāo)志性圖形污損情況下進行圖像校正的可能。
圖1是根據(jù)本發(fā)明的條碼圖像采樣方法的流程圖;圖2是根據(jù)本發(fā)明的條碼圖像采樣過程中的映射方式的示意圖;圖3是根據(jù)本發(fā)明的第一種校正點獲取方法的流程圖;圖4是根據(jù)本發(fā)明的第一種校正點獲取方法的子圖像區(qū)域的示意圖;圖5是根據(jù)本發(fā)明的第一種校正點獲取方法的動態(tài)模板的示意圖;圖6是根據(jù)本發(fā)明的第二種校正點獲取方法的流程圖;圖7是根據(jù)本發(fā)明的第二種校正點獲取方法的二維條碼圖像的局部放大圖。
具體實施方式本發(fā)明提供了一種基于多幅條碼圖像的條碼圖像采樣方法,該條碼圖像采樣方法 通過融合兩幅或兩幅以上條碼圖像的像素信息來提高條碼圖像的清晰度。此外,該條碼圖 像采樣方法還可以進一步將至少兩幅條碼圖像融合到超分辨率目標(biāo)圖像或亞分辨率目標(biāo) 圖像中。如圖1-2所示,本發(fā)明提供了一種條碼圖像采樣方法。在本發(fā)明的條碼圖像采樣 方法中,首先獲得兩幅條碼圖像A、B。條碼圖像A、B優(yōu)選是在預(yù)定時間間隔內(nèi)針對同一條碼 連續(xù)拍攝獲得的,以使條碼圖像A、B之間的差異性相對較小,進而確保圖像采樣的準(zhǔn)確性。 在獲得兩幅條碼圖像A、B后,分別對兩幅條碼圖像A、B進行掃描,以分別獲取可用于配準(zhǔn)的 標(biāo)志性位置。例如,條碼圖像的轉(zhuǎn)角點、探測圖形、校正圖形、定位圖形以及用于條碼校正的 其他校正點等等。
在獲取上述標(biāo)志性位置后,分別計算條碼圖像A、B與目標(biāo)圖像C之間的映射系數(shù)
B1^b1,C1......以及a2、b2、c2.......條碼圖像A、B與目標(biāo)圖像C之間的映射公式以及映
射系數(shù)Α、、、。......以及a2、b2、c2......可通過多種方式獲得,例如透視變換、二次多項
式、三次多項式、三角網(wǎng)格、小波變換等。本發(fā)明以透視變換為例進行詳細(xì)描述。在確定條碼圖像A、B上的多個標(biāo)志性位置 (例如,校正圖形)后,獲取各標(biāo)志性位置的坐標(biāo)信息(例如,模塊坐標(biāo)及圖像坐標(biāo))。利用
透視變換公式計算出條碼圖像々、8與目標(biāo)圖像(之間的的透視變換系數(shù) 、131、(31......以
及 a2、b2、c2......U= (aX+bY+c)/(gX+hY+l) (1)V= (dX+eY+f)/(gX+hY+l) (2)其中,U和V為各標(biāo)志性位置在條碼圖像A、B上的坐標(biāo),X和Y為各標(biāo)志性位置在 目標(biāo)圖像C上的對應(yīng)坐標(biāo),a、b、c、d、e、c、f、g及h為透視變換系數(shù)。在實際應(yīng)用中,U和 V可以是各標(biāo)志性位置在條碼圖像A、B上的圖像坐標(biāo),X和Y可以是各標(biāo)志性位置在目標(biāo)圖 像C上的模塊坐標(biāo),并可根據(jù)各標(biāo)志性位置在條碼圖像A、B上的模塊坐標(biāo)計算推得。例如, 在圖2所示的條碼圖像A、B與目標(biāo)圖像C的分辨率相同的情況下,各標(biāo)志性位置在條碼圖 像A、B上的模塊坐標(biāo)即為其在目標(biāo)圖像C上的對應(yīng)模塊坐標(biāo)。如圖2所示,在分別獲得條碼圖像A、B與目標(biāo)圖像C之間的透視變換系數(shù)&1、bp
C1......以及a2、b2、c2......后,通過上述透視變換公式分別將條碼圖像A、B映射到目標(biāo)
圖像C上。在本實施例中,根據(jù)上述透視變換系數(shù)及透視變換公式可確定目標(biāo)圖像C上的目 標(biāo)像素點c分別在條碼圖像A和條碼圖像B上的對應(yīng)位置。S卩,根據(jù)目標(biāo)像素點c的坐標(biāo) (XC>YC)通過上述透視變換公式可求得其在條碼圖像A上的對應(yīng)坐標(biāo)(Ua、Va)以及條碼圖像 B上的對應(yīng)坐標(biāo)(Ub、Vb)。在本發(fā)明中,將對應(yīng)于目標(biāo)圖像C的同一目標(biāo)像素點c的分別來 自條碼圖像A、B的像素信息進行融合。具體來說,將目標(biāo)圖像C的目標(biāo)像素點c在條碼圖 像A和條碼圖像B上的對應(yīng)位置的像素值Ha、Hb進行融合,以作為該目標(biāo)像素點c的像素值 H。,例如H。= (Ha+Hb)/2。通過上述方式,目標(biāo)圖像C可以融合條碼圖像A、B的像素信息,由 此提高了目標(biāo)圖像C的清晰度。本發(fā)明所提到的融合方式包括但不限于平均或加權(quán)平均運 笪弁。由于目標(biāo)像素點c在條碼圖像A和條碼圖像B上的對應(yīng)位置不會完全對應(yīng)于條碼 圖像A和條碼圖像B上的一個真實像素點,也就是說,對應(yīng)坐標(biāo)(Ua、Va)和對應(yīng)坐標(biāo)(Ub、Vb) 出現(xiàn)非整數(shù)的情況。在本發(fā)明中,通過將對應(yīng)位置周邊的多個像素點的像素信息進行插值 獲得對應(yīng)位置的像素信息。例如,在本實施例中,將對應(yīng)坐標(biāo)(Ua、Va)周邊的像素點la、2a、 3a、4a的像素值Hla、H2a, H3a, H4a進行插值來獲得對應(yīng)坐標(biāo)(Ua、Va)的像素值Ha,并將對應(yīng)坐 標(biāo)(Ub、Vb)周邊的像素點lb、2b、3b、4b的像素值Hlb、H2b, H3b、H4b進行插值來獲得對應(yīng)坐標(biāo) (Ub、Vb)的像素值Hb。隨后,再在對HjPHb進行融合來獲得目標(biāo)像素點c的像素值H。。同 幅圖像內(nèi)多像素點的插值運算為本領(lǐng)域公知技術(shù),在此不再贅述。此外,除了圖2所描述的條碼圖像A、B與目標(biāo)圖像C的分辨率相同的情況,本發(fā)明 的條碼圖像采樣方法也可以應(yīng)用于條碼圖像A、B與目標(biāo)圖像的分辨率不同的情況。在目標(biāo)圖像的分辨率小于條碼圖像的情況下,即亞分辨率采樣的情況下,首先可通過將標(biāo)志性位置在條碼圖像上的模塊坐標(biāo)進行縮小獲得該標(biāo)志性位置在目標(biāo)圖像上的 對應(yīng)模塊坐標(biāo),并利用上述透視變換公式計算出條碼圖像與目標(biāo)圖像之間的透視變換系 數(shù)。隨后,根據(jù)透視變換系數(shù)分別將目標(biāo)圖像中各目標(biāo)像素點的坐標(biāo)映射到各條碼圖像,以 確定其與各條碼圖像上的對應(yīng)位置。利用上文描述插值方法獲取對應(yīng)位置的像素信息(例 如,像素值),再將目標(biāo)圖像的同一目標(biāo)像素點在各條碼圖像上的對應(yīng)位置的像素信息融合 成目標(biāo)圖像上的目標(biāo)像素點的像素信息。在目標(biāo)圖像的分辨率大于條碼圖像的情況下,即超分辨率采樣的情況下,首先可 通過將標(biāo)志性位置在條碼圖像上的模塊坐標(biāo)進行擴大獲得該標(biāo)志性位置在目標(biāo)圖像上的 對應(yīng)模塊坐標(biāo),并利用上述透視變換公式計算出條碼圖像與目標(biāo)圖像之間的透視變換系 數(shù)。隨后,根據(jù)透視變換系數(shù)分別將目標(biāo)圖像中各目標(biāo)像素點的坐標(biāo)映射到各條碼圖像,以 確定其與各條碼圖像上的對應(yīng)位置。利用上文描述插值方法獲取對應(yīng)位置的像素信息(例 如,像素值),在目標(biāo)圖像的同一目標(biāo)像素點在各條碼圖像上的對應(yīng)位置的像素信息融合成 目標(biāo)圖像上的目標(biāo)像素點的像素信息。通過上述圖像采樣方法,可以將來自至少兩幅圖像的像素信息融合到同一幅目標(biāo) 圖像內(nèi),由此提高了目標(biāo)圖像的清晰度。此外,還可以進一步利用上述條碼圖像采樣方法來 獲得超分辨率目標(biāo)圖像或亞分辨率目標(biāo)圖像。如圖3-5所示,本發(fā)明進一步提供了一種獲取校正點的方法。該方法利用動態(tài)模 板獲取條碼圖像中的校正點。該校正點除了可用于上述條碼采樣方法,還可以用來對單幅 條碼圖像進行校正。如圖3所示,在該校正點獲取方法中,首先通過拍攝系統(tǒng)獲取二維條碼圖像。該二 維條碼圖像優(yōu)選是灰度圖像或者通過預(yù)處理單元將由拍攝系統(tǒng)獲取的彩色圖像轉(zhuǎn)化為灰 度圖像。該二維條碼由按矩形形式排列的多個黑白模塊組成。在實際拍攝的灰度圖像中, 每個黑白模塊分別由多個像素組成,并且每個像素的像素值并不是純黑或純白,而是具有 一定灰度值。此外,由于拍攝系統(tǒng)自身、拍攝手法以及環(huán)境因素的影響,實際拍攝的灰度圖 像相對于原始的二維條碼會存在一定畸變,即存在一定的變換關(guān)系。在現(xiàn)有技術(shù)中,是通過 搜索實際拍攝的灰度圖像中的校正圖像的圖像坐標(biāo),并通過圖像坐標(biāo)來計算實際拍攝的灰 度圖像相對于目標(biāo)圖像的變換系數(shù)(校正系數(shù)),并利用該校正系數(shù)將拍攝圖像映射到目 標(biāo)圖像上,由此實現(xiàn)對拍攝圖像的校正。然而,在本發(fā)明的校正點獲取方法中,在獲取二維條碼的灰度圖像后,不直接對校 正圖形進行搜索,而是確定二維條碼灰度圖像中的一子圖像區(qū)域內(nèi)的各模塊的模塊坐標(biāo)及 模塊中心的圖像坐標(biāo)。例如,如圖3所示,以QR碼為例,通過搜索探測圖形來獲取邊界及模 塊寬度等圖形系數(shù),并利用已知的方法計算二維條碼灰度圖像的一子圖像區(qū)域內(nèi)的各模塊 的模塊坐標(biāo)及模塊中心的圖像坐標(biāo)。在本發(fā)明中,模塊坐標(biāo)是指以模塊為單位的坐標(biāo),即某 模塊在坐標(biāo)軸方向上相對于坐標(biāo)原點的模塊個數(shù),而圖像坐標(biāo)是以像素為單位的坐標(biāo),即 某像素點在坐標(biāo)軸方向上相對于坐標(biāo)原點的像素個數(shù)。如圖4所示,在獲得子圖像區(qū)域內(nèi)的各模塊的模塊坐標(biāo)及模塊中心的圖像坐標(biāo) 后,利用閾值對各模塊中心的灰度值進行二值化處理,以判斷各模塊中心的黑白特征,即獲 得各模塊中心的黑白值。在本步驟中,閾值的選取及二值化處理方法可采用公知的全局閾 值或局部閾值的選取及二值化處理方法,并在此不在贅述。
在確定了各模塊中心的黑白值后,選擇子圖像區(qū)域中的部分模塊的模塊中心作為 特征點,形成動態(tài)模板。具體來說,動態(tài)模板的選擇一般是基于各模塊相對于相鄰模塊的標(biāo) 志性,即選取相對于相鄰模塊比較容易區(qū)分的標(biāo)志性較好的模塊,形成動態(tài)模板。例如,如 圖4所示,在本實施例中,選取相對于相鄰模塊比較容易區(qū)分的模塊1、2、3、4、5、6的模塊中 心作為特征點,形成圖5所示的動態(tài)模塊。如圖5所示,動態(tài)模板中的每個特征點均具有三 個參數(shù)對應(yīng)模塊的模塊坐標(biāo)、圖像坐標(biāo)以及黑白值,即(X1^ Y1) > (U1, V1), H1, (X2, Y2), (U2, V2)、H2, (X3 > Y3)、(U3 > V3)、H3, (X4 > Y4)、(U4, V4)、H4, (X5, Y5)、(U5, V5)、H5, (X6, Y6)、(U6, V6)、 H6。在形成動態(tài)模板后,還可進一步對動態(tài)模板的有效性進行判斷。例如,將動態(tài)模板中的 各特征點所對應(yīng)的模塊坐標(biāo)(X1J1)、(X2、Y2)、(X3、Y3)、(X4> Y4)、(X5> Y5)、(X6> Y6)進行統(tǒng)一 向量的模塊坐標(biāo)平移,例如平移一至兩個模塊,并將動態(tài)模板中的各特征點的黑白值Hi、H2、 H3、H4、H5、H6與平移后的模塊坐標(biāo)所對應(yīng)的模塊中心的黑白值進行匹配。若匹配度高于預(yù) 定閾值,則認(rèn)為該動態(tài)模板不易于與周邊模塊相區(qū)分,該動態(tài)模板即為無效模板,若匹配度 低于預(yù)定閾值,則認(rèn)為該動態(tài)模板能夠與周邊模塊相區(qū)分,該動態(tài)模板為有效模板。在確定了動態(tài)模板后,將動態(tài)模板相對灰度圖像進行平移并進行灰度匹配,以確 定動態(tài)模板與灰度圖像的最佳匹配位置。具體來說,將動態(tài)模板中的各特征點的圖像坐標(biāo) U” V1)、(U2, V2)、(U3> V3)、(U4、V4)、(U5, V5)、(U6, V6)進行統(tǒng)一向量的圖像坐標(biāo)平移,例如依 次增加或減小一個像素,并將動態(tài)模板中的各特征點的黑白值Hp H2、H3、H4、H5、H6與平移后 的圖像坐標(biāo)在灰度圖像中的對應(yīng)位置的灰度值進行匹配,并確定匹配度最高的位置為最佳 匹配位置。在本實施例中,可采用公知的匹配方法來確定動態(tài)模板與灰度圖像的匹配度。此 外,還可預(yù)先將動態(tài)模板中的各特征點的黑白值氏、H2、H3、H4、H5、H6進行反轉(zhuǎn),再將動態(tài)模 板中的各特征點的圖像坐標(biāo)(U”、)、(u2、v2)、(u3、v3)、(u4、v4)、(u5、v5)、(u6、v6)進行統(tǒng)一 向量的圖像坐標(biāo)平移,并將動態(tài)模板中的各特征點的反轉(zhuǎn)后的黑白值與平移后的圖像坐標(biāo) 在灰度圖像中的對應(yīng)位置的灰度值進行匹配。此時,則確定匹配度最低的位置為最佳匹配 位置。在確定最佳匹配位置后,選擇動態(tài)模板中的一個特征點作為校正點,并且優(yōu)選選 擇動態(tài)模板的中心最近的特征點作為校正點。該校正點除了可作為上文描述的基于多條碼 圖像的條碼圖像采樣方法中的標(biāo)志性位置外,還可以用來對單幅圖像進行校正。具體來說,重復(fù)上述步驟,可獲取多個校正點。隨后,利用透視變換、二次多項式、 三次多項式、三角網(wǎng)格等方法確定條碼圖像與目標(biāo)圖像之間的映射系數(shù),并將灰度圖像映 射到目標(biāo)圖像上,由此實現(xiàn)圖像的校正。下面以透視變換為例,解釋本發(fā)明的利用上述校正點對單幅條碼圖像進行校正的 具體過程。通過上述方法獲取4個校正點所對應(yīng)的模塊坐標(biāo)(Xa、Ya)、(Xb、Yb)、(X。、Y。)、(Xd、 Yd)以及圖像坐標(biāo)(ua> Va)、(Ub、Vb)、(Uc, Vc)、(Ud、Vd)。根據(jù)模塊坐標(biāo)(Xa、Ya)、(Xb、Yb)、(X。、Y。)、(Xd、Yd)以及原灰度圖像與目標(biāo)圖像的分 辨率,確定該多個校正點在目標(biāo)圖像上的對應(yīng)模塊坐標(biāo)。例如,在原灰度圖像與目標(biāo)圖像的 分辨率保持不變的情況下,該多個校正點在目標(biāo)圖像上的對應(yīng)模塊坐標(biāo)即為(xa、Ya)、(xb、 Yb)、(Xc、Yc)、(Xd、Yd)。此時,利用透視變換公式計算出原灰度圖像與目標(biāo)圖像的透視變換系數(shù)a、b、b、d、 e、f、g、h
U= (aX+bY+c) / (gX+hY+1) (1)V= (dX+eY+f)/(gX+hY+1) (2)在獲得透視變換系數(shù)a、b、b、d、e、f、g、h,則可進一步根據(jù)上述公式確定目標(biāo)圖像 上各像素點在原灰度圖像的對應(yīng)位置,并通過上文描述的插值方式獲取對應(yīng)位置的像素信 息,進而作為目標(biāo)圖像上各像素點的像素信息,由此實現(xiàn)了圖像的校正。通過上述方法,可以在無需搜索條碼圖像的校正圖形等標(biāo)志性圖形的情況下獲取 用于條碼圖像采樣或者條碼圖像校正的校正點,提供了在標(biāo)志性圖形污損情況下進行條碼 圖像采樣及條碼圖像校正的可能。如圖6-7所示,本發(fā)明進一步提供了另一種獲取校正點的方法。該校正點除了可 用于上述條碼采樣方法的標(biāo)志性位置,還可以用來對單幅條碼圖像進行校正。本實施例中,在獲取二維條碼圖像后,搜索并確定該二維條碼圖像中位于同一行 或列上的相互間隔的兩個模塊1、2的模塊坐標(biāo)(X1J1)、(X2、Y2)及模塊中心的圖像坐標(biāo)饑、 V1)、(U2、V2)。例如,以QR碼為例,通過搜索探測圖形來獲取邊界及模塊寬度等圖形系數(shù),并 利用已知的方法搜索并確定位于同一行或列上的相互間隔的兩個模塊1、2的模塊坐標(biāo)(Xp Y1) > (X2>Y2)及模塊中心的圖像坐標(biāo)(U1J1^(UyV2)15在本發(fā)明中,模塊坐標(biāo)是指以模塊為 單位的坐標(biāo),即某模塊在坐標(biāo)軸方向上相對于坐標(biāo)原點的模塊個數(shù),而圖像坐標(biāo)是以像素 為單位的坐標(biāo),即某像素點在坐標(biāo)軸方向上相對于坐標(biāo)原點的像素個數(shù)。在本實施例中,二 維條碼圖像并不限于灰度圖像,而可以是二值化圖像或彩色圖像。在確定模塊1、2的模塊坐標(biāo)(X1J1)、(X2、Y2)及模塊中心的圖像坐標(biāo)(U1J1)、(U2, V2)后,進一步確定模塊1、2的模塊中心連線上的多個中間模塊的模塊坐標(biāo)(X3、Y3)、(Χ4、
Y4) > (X5、Y5)......,并確定該模塊中心連線上是否存在可區(qū)分的模塊邊界(例如,黑白邊
界)。在該多個中間模塊中選擇出兩端具有模塊邊界的奇數(shù)個連續(xù)中間模塊,例如在本實施 例中的模塊3、4、5,并選擇位于該奇數(shù)個連續(xù)中間模塊3、4、5的中心位置的中間模塊5的模 塊中心作為校正點。隨后,確定模塊中心連線與模塊3、4、5兩端的模塊邊界的交點的圖像 坐標(biāo)(U3、V3)、(U4、V4),并對該兩個交點的圖像坐標(biāo)(U3、V3)、(U4、V4)進行平均,計算結(jié)果即 為校正點的圖像坐標(biāo)(U5、V5)。此外,可以進一步在模塊1、2的模塊中心連線的垂直方向上對中間模塊5的模塊 中心的圖像坐標(biāo)(U5、V5)進行校正。具體來說,在垂直方向上以中間模塊5為中心確定兩端 具有可區(qū)分模塊邊界的奇數(shù)個連續(xù)中間模塊,并確定位于該奇數(shù)個連續(xù)中間模塊兩側(cè)的兩 個模塊的模塊中心的圖像坐標(biāo)。進一步確定這兩個模塊的模塊中心連線與奇數(shù)個連續(xù)中間 模塊兩端的模塊邊界的交點,并通過對該兩個交點的圖像坐標(biāo)進行平均,由此重新求得的 中間模塊5的模塊中心的圖像坐標(biāo)。并可與之前沿模塊1、2的模塊中心連線求得的中間模 塊5的模塊中心的圖像坐標(biāo)再進行平行,來進一步校正中間模塊5的模塊中心的圖像坐標(biāo)。隨后,重復(fù)上述過程,則可確定多個校正點,并根據(jù)上述實施例中描述的校正過 程,利用校正點的模塊坐標(biāo)及圖像坐標(biāo)計算出二維條碼圖像與目標(biāo)圖像之間的映射系數(shù), 并利用該映射系數(shù)實現(xiàn)對二維條碼圖像的校正。在上述實施例中,僅對本發(fā)明進行了示范性描述,但是本領(lǐng)域技術(shù)人員在閱讀本 專利申請后可以在不脫離本發(fā)明的精神和范圍的情況下對本發(fā)明進行各種修改。
權(quán)利要求
一種基于動態(tài)模板的條碼圖像校正方法,其特征在于,所述條碼圖像校正方法包括a.確定二維條碼圖像的子圖像區(qū)域內(nèi)的各模塊的模塊坐標(biāo)及模塊中心的圖像坐標(biāo);b.對所述各模塊的模塊中心的灰度值進行二值化處理,以獲得各所述模塊中心的黑白值;c.選擇所述子圖像區(qū)域中的部分模塊的模塊中心作為特征點,形成動態(tài)模板;d.將所述動態(tài)模板相對所述二維條碼圖像進行平移并進行灰度匹配,以確定所述動態(tài)模板與所述二維條碼圖像的最佳匹配位置,并根據(jù)所述最佳匹配位置確定校正點;e.重復(fù)步驟a-d,獲取多個校正點,并利用所述多個校正點對所述二維條碼圖像進行校正。
2.根據(jù)權(quán)利要求1所述的條碼圖像校正方法,其特征在于,在所述步驟c中,基于所述 各模塊相對于相鄰模塊的標(biāo)志性選擇所述部分模塊。
3.根據(jù)權(quán)利要求1所述的條碼圖像校正方法,其特征在于,在所述步驟c中,進一步將 所述動態(tài)模板中的各特征點所對應(yīng)的模塊坐標(biāo)進行統(tǒng)一向量的模塊坐標(biāo)平移,并將所述動 態(tài)模板中的各特征點的黑白值與平移后的模塊坐標(biāo)所對應(yīng)的模塊中心的黑白值進行匹配, 以確定所述動態(tài)模板是否為有效模板。
4.根據(jù)權(quán)利要求3所述的條碼圖像校正方法,其特征在于,在所述步驟c中,將所述動 態(tài)模板中的各特征點所對應(yīng)的模塊坐標(biāo)統(tǒng)一向量平移一至兩個模塊,并在匹配度小于預(yù)定 閾值時認(rèn)為所述動態(tài)模板為有效動態(tài)模板。
5.根據(jù)權(quán)利要求1所述的條碼圖像校正方法,其特征在于,在所述步驟d中,將所述動 態(tài)模板中的各特征點的圖像坐標(biāo)進行統(tǒng)一向量的圖像坐標(biāo)平移,并將所述動態(tài)模板中的各 特征點的黑白值與平移后的圖像坐標(biāo)在所述二維條碼圖像中的對應(yīng)位置的灰度值進行匹 配,并確定匹配度最高的位置為最佳匹配位置。
6.根據(jù)權(quán)利要求1所述的條碼圖像校正方法,其特征在于,在所述步驟d中,將所述動 態(tài)模板中的各特征點的黑自值進行反轉(zhuǎn),再將所述動態(tài)模板中的各特征點的圖像坐標(biāo)進行 統(tǒng)一向量的圖像坐標(biāo)平移,并將所述動態(tài)模板中的各特征點的反轉(zhuǎn)后的黑白值與平移后的 圖像坐標(biāo)在所述二維條碼圖像中的對應(yīng)位置的灰度值進行匹配,并確定匹配度最低的位置 為最佳匹配位置。
7.根據(jù)權(quán)利要求5或6所述的條碼圖像校正方法,其特征在于,在所述步驟d中,在確 定所述最佳匹配位置后,選擇所述動態(tài)模板的一特征點作為所述校正點。
8.根據(jù)權(quán)利要求7所述的條碼圖像校正方法,其特征在于,在所述步驟d中,選擇距離 所述動態(tài)模板的中心最近的特征點作為所述校正點。
9.根據(jù)權(quán)利要求1所述的條碼圖像校正方法,其特征在于,在所述步驟e中,根據(jù)所述 多個校正點的圖像坐標(biāo)及所對應(yīng)的模塊坐標(biāo),利用如下透視變換公式計算透視變換系數(shù)U = (aX+bY+c)/(gX+hY+l) V = (dX+eY+f)/(gX+hY+l)其中,X和Y為所述多個校正點在目標(biāo)圖像上的對應(yīng)模塊坐標(biāo),并由所述多個校正點在 所述二維條碼圖像上的對應(yīng)模塊坐標(biāo)計算獲得,U和V為所述多個校正點在所述二維條碼 圖像上的圖像坐標(biāo),a、b、c、d、e、c、f、g及h為透視變換系數(shù)。
10.根據(jù)權(quán)利要求9所述的條碼圖像校正方法,其特征在于,在所述步驟e中,進一步根 據(jù)所述透視變換系數(shù)利用所述透視變換公式確定所述目標(biāo)圖像上的各目標(biāo)像素點在所述 二維條碼圖像上的對應(yīng)位置,并將所述對應(yīng)位置的像素信息作為所述目標(biāo)像素點的像素信 肩、ο
11.一種基于動態(tài)模板的條碼圖像校正點獲取方法,其特征在于,所述條碼圖像校正點 獲取方法包括a.確定二維條碼圖像的子圖像區(qū)域內(nèi)的各模塊的模塊坐標(biāo)及模塊中心的圖像坐標(biāo);b.對所述各模塊的模塊中心的灰度值進行二值化處理,以獲得各所述模塊中心的黑白值;c.選擇所述子圖像區(qū)域中的部分模塊的模塊中心作為特征點,形成動態(tài)模板;d.將所述動態(tài)模板相對所述二維條碼圖像進行平移并進行灰度匹配,以確定所述動態(tài) 模板與所述二維條碼圖像的最佳匹配位置,并根據(jù)所述最佳匹配位置確定校正點。
12.根據(jù)權(quán)利要求11所述的條碼圖像校正點獲取方法,其特征在于,在所述步驟c中, 基于所述各模塊相對于相鄰模塊的標(biāo)志性選擇所述部分模塊。
13.根據(jù)權(quán)利要求11所述的條碼圖像校正點獲取方法,其特征在于,在所述步驟c中, 進一步將所述動態(tài)模板中的各特征點所對應(yīng)的模塊坐標(biāo)進行統(tǒng)一向量的模塊坐標(biāo)平移,并 將所述動態(tài)模板中的各特征點的黑白值與平移后的模塊坐標(biāo)所對應(yīng)的模塊中心的黑白值 進行匹配,以確定所述動態(tài)模板是否為有效模板。
14.根據(jù)權(quán)利要求13所述的條碼圖像校正點獲取方法,其特征在于,在所述步驟c中, 將所述動態(tài)模板中的各特征點所對應(yīng)的模塊坐標(biāo)統(tǒng)一向量平移一至兩個模塊,并在匹配度 小于預(yù)定閾值時認(rèn)為所述動態(tài)模板為有效動態(tài)模板。
15.根據(jù)權(quán)利要求11所述的條碼圖像校正點獲取方法,其特征在于,在所述步驟d中, 將所述動態(tài)模板中的各特征點的圖像坐標(biāo)進行統(tǒng)一向量的圖像坐標(biāo)平移,并將所述動態(tài)模 板中的各特征點的黑白值與平移后的圖像坐標(biāo)在所述二維條碼圖像中的對應(yīng)位置的灰度 值進行匹配,并確定匹配度最高的位置為最佳匹配位置。
16.根據(jù)權(quán)利要求11所述的條碼圖像校正點獲取方法,其特征在于,在所述步驟d中, 將所述動態(tài)模板中的各特征點的黑白值進行反轉(zhuǎn),再將所述動態(tài)模板中的各特征點的圖像 坐標(biāo)進行統(tǒng)一向量的圖像坐標(biāo)平移,并將所述動態(tài)模板中的各特征點的反轉(zhuǎn)后的黑白值與 平移后的圖像坐標(biāo)在所述二維條碼圖像中的對應(yīng)位置的灰度值進行匹配,并確定匹配度最 低的位置為最佳匹配位置。
17.根據(jù)權(quán)利要求15或16所述的條碼圖像校正點獲取方法,其特征在于,在所述步驟 d中,在確定所述最佳匹配位置后,選擇所述動態(tài)模板的一特征點作為所述校正點。
18.根據(jù)權(quán)利要求17所述的條碼圖像校正點獲取方法,其特征在于,在所述步驟d中, 選擇距離所述動態(tài)模板的中心最近的特征點作為所述校正點。
全文摘要
本發(fā)明公開了一種基于動態(tài)模板的條碼圖像校正方法及校正點獲取方法。該校正點獲取方法包括確定二維條碼圖像的子圖像區(qū)域內(nèi)的各模塊的模塊坐標(biāo)及模塊中心的圖像坐標(biāo);對各模塊的模塊中心的灰度值進行二值化處理,以獲得各模塊中心的黑白值;選擇子圖像區(qū)域中的部分模塊的模塊中心作為特征點,形成動態(tài)模板;將動態(tài)模板相對二維條碼圖像進行平移并進行灰度匹配,以確定動態(tài)模板與二維條碼圖像的最佳匹配位置,并根據(jù)最佳匹配位置確定校正點。通過上述方法,可以在無需搜索條碼圖像的標(biāo)志性圖形的情況下獲取用于條碼圖像校正的校正點,提供了在標(biāo)志性圖形污損情況下進行圖像校正的可能。
文檔編號G06K7/10GK101882220SQ20101018916
公開日2010年11月10日 申請日期2010年6月1日 優(yōu)先權(quán)日2010年6月1日
發(fā)明者邱有森, 陳挺立, 陳文傳 申請人:福建新大陸電腦股份有限公司