專利名稱:一種郵政條碼的碼值提取方法
一種郵政條碼的碼值提取方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種條碼的碼值提取方法,特別涉及一種二態(tài)郵政條碼和四態(tài)郵政條 碼的碼值提取方法。
背景技術(shù):
條碼技術(shù)是在計算機技術(shù)與信息技術(shù)基礎(chǔ)上發(fā)展起來的一門集編碼、印刷、識別、 數(shù)據(jù)采集和處理于一身的新興技術(shù)。條碼技術(shù)由于其識別快速、準確、可靠以及成本低等優(yōu) 點,被廣泛應用于商業(yè)、圖書管理、倉儲、郵電、交通和工業(yè)控制等領(lǐng)域,并且勢必在逐漸興 起的“物聯(lián)網(wǎng)”應用中發(fā)揮重大的作用。目前被廣泛使用的條碼包括一維條碼及二維條碼。其中,一維條碼是由平行排列 的多個“條”和“空”單元組成,條形碼信息靠條和空單元的不同寬度和位置來表達。郵政條碼是一種特殊形式的一維條碼,郵政條碼的條形碼信息依靠條單元的高度 和位置給定的二進制數(shù)據(jù)來表達。請一并參見圖1和圖2,圖1是二態(tài)郵政條碼片段的結(jié)構(gòu)示意圖,圖2是四態(tài)郵政 條碼片段的結(jié)構(gòu)示意圖。簡單而言,二態(tài)條郵政碼包括一個上升區(qū)和一個下降區(qū),2種可 能的條碼為上升條和下降條;而四態(tài)條郵政碼是基于一個帶有上升區(qū)和下降區(qū)的跟蹤區(qū),4 種可能的條碼分別為跟蹤條(僅包含跟蹤區(qū)),全條(同時包含上升區(qū)、跟蹤區(qū)及下降區(qū)), 上升條(包含上升區(qū)和跟蹤區(qū))以及下降條(包含和跟蹤區(qū)下降區(qū))。通過判斷各條單元 的相對高度值來提取該條碼對應的碼值。一般來說,長條碼對應的碼值為1,短條碼對應的 碼值為0。在現(xiàn)有技術(shù)中,通常是采用整體掃描的方式來提取該郵政條碼的碼值。然而,在實 際情況中,郵政條碼往往會發(fā)生變形,例如整個條碼相對于水平線發(fā)生了歪斜或者每個單 獨的條塊相對于對條碼的中心線發(fā)生了旋轉(zhuǎn),在這樣的情況下,郵政條碼的掃描過程中,很 容易發(fā)生漏掃某些條單元的情況,在實際應用當中常常導致誤碼。
發(fā)明內(nèi)容為了解決現(xiàn)有技術(shù)中郵政條碼在掃描過程中常常發(fā)生漏掃某些條單元的問題,本 發(fā)明提供了一種郵政條碼的碼值提取方法。該方法能夠準確的提取各條單元對應的碼值。本發(fā)明解決上述問題所采用的技術(shù)方案是提供一種郵政條碼的碼值提取方法,該 郵政條碼的碼值提取方法包括以下步驟a.確定相鄰兩個條單元端部的高度值;b.將該高度值作差值計算,得出該相鄰兩個條單元的對應的碼值;c.重復a_b,獲得所有條單元端部的高度值,并通過作差值計算得出該郵政條碼 的碼值。根據(jù)本發(fā)明一優(yōu)選實施例,在上述步驟a中,通過在垂直于該條單元方向掃描該 條單元的邊界,并沿垂直方向掃描該條單元的端部來獲得該條單元端部的高度值;通過在垂直于該條單元邊界的方向繼續(xù)掃描下一條單元邊界,并沿垂直方向掃描該下一條單元的 端部而獲得該下一條單元端部的高度值。根據(jù)本發(fā)明一優(yōu)選實施例,在上述步驟b中,將該相鄰兩個條單元端部的高度值 作差值,若該差值大于第一高度閾值,則該相鄰兩個條單元對應的碼值分別為1、0,若該差 值小于第二高度閾值,則該相鄰兩個條單元對應的碼值分別為0、1,若該差值處于該第一閾 值與該第二閾值之間,則該相鄰兩個條單元對應的碼值相同,其中該第一高度閾值為正值, 該第二高度閾值為負值。根據(jù)本發(fā)明一優(yōu)選實施例,若該相鄰多個條單元對應的碼值相同,則利用起始條 單元來判斷該相鄰多個條單元對應的碼值,若該相鄰多個條單元的高度與該起始條單元的 高度相等,則該相鄰多個條單元對應的碼值均為1,若該相鄰多個條單元的高度與該起始條 單元的高度不相等,則該相鄰多個條單元對應的碼值均為0。根據(jù)本發(fā)明一優(yōu)選實施例,若該相鄰多個條單元對應的碼值相同,則利用該多個 相鄰條單元與后續(xù)條單元的高度進行比較來判斷該相鄰多個條單元對應的碼值,若該后續(xù) 條單元中有高度大于該相鄰多個條單元的,則該相鄰多個條單元對應的碼值均為0,該后續(xù) 條單元中沒有高度大于該相鄰多個條單元的,則該相鄰多個條單元對應的碼值均為1。根據(jù)本發(fā)明一優(yōu)選實施例,該郵政條碼是二態(tài)郵政條碼。根據(jù)本發(fā)明一優(yōu)選實施例,該郵政條碼是四態(tài)郵政條碼。與現(xiàn)有技術(shù)相比較,本發(fā)明所提供的郵政條碼的碼值提取方法不會出現(xiàn)條單元漏 掃的情況,能夠準確的提取郵政條碼的碼值。
可參考附圖并通過實例更加具體地描述本發(fā)明,在附圖中圖1是二態(tài)郵政條碼片段的結(jié)構(gòu)示意圖;圖2是四態(tài)郵政條碼片段的結(jié)構(gòu)示意圖;圖3是根據(jù)本發(fā)明一實施例的郵政條碼的碼值提取方法的流程圖;圖4是根據(jù)本發(fā)明一實施例的二態(tài)郵政條碼片段的碼值提取示意圖;以及圖5是根據(jù)本發(fā)明一實施例的四態(tài)郵政條碼片段的碼值提取示意圖。
具體實施方式下面結(jié)合附圖和實施例對本發(fā)明進行詳細說明。參見圖3,本發(fā)明提供了一種郵政條碼的碼值提取方法,簡單而言,本發(fā)明通過掃 描可獲取每一條單元端部的高度值,將相鄰條單元端部的高度值作差值計算可得出該相鄰 條單元對應的碼值,重復以上步驟即可準確的提取該郵政條碼的碼值。具體而言,請參見圖4,圖4是根據(jù)本發(fā)明一實施例的二態(tài)郵政條碼片段的碼值提 取意圖。根據(jù)本發(fā)明的郵政條碼的碼值提取方法,首先,掃描最左邊的第一個條單元的邊 界,即掃描線1的位置,然后在垂直于該條單元的方向掃描該條單元的上端,即掃描線2的 位置,此時,可以通過一個RAM記錄下該條單元上端的高度值。值得一提的是,對于二態(tài)郵 政條碼而言,由于下降區(qū)始終存在條單元,所以通常是將基本掃描線定位于下降條的中間部位,因此可不用掃描各條單元的下端。接下來,繼續(xù)沿垂描線1的位置掃描與其相鄰條單 元的邊界,即掃描線3的位置,然后在垂直于該條單元的方向掃描該條單元的上端,即掃描 線4的位置,同樣,通過RAM記錄下該條單元上端的高度值。依次掃描下去即可獲得所有條 單元的高度值。通過將相鄰兩個條單元的端部高度值作差值計算即可獲得該郵政條碼的碼值,根 據(jù)本發(fā)明的郵政條碼的碼值提取方法,若相鄰兩個條單元端部高度值的差值大于第一高度 閾值,則相鄰兩個條單元對應的碼值分別為1、0,若相鄰兩個條單元端部高度值的差值小于 第二高度閾值,則相鄰兩個條單元對應的碼值分別為0、1,若相鄰兩個條單元端部高度值的 差值處于第一閾值與第二閾值之間,則相鄰兩個條單元對應的碼值相同。其中,其中該第一 高度閾值為正值,該第二高度閾值為負值。舉例而言,在圖4中,假設(shè)掃描到第一條單元的高度值為5,第二個條單元的高度 為10,其高度差為-5 (設(shè)第二高度閾值="4),因此該相鄰條單元對應的碼值分別為0,1,依 此類推,,即可得出該二態(tài)郵政條碼的所有碼值(一組二進制數(shù)據(jù)),將該碼值給計算機處 理,便可得出相應的條碼信息。值得一提的是,若相鄰多個條單元對應的碼值相同,則不能直接判斷該相鄰多個 條單元對應的碼值均為1或0,本發(fā)明對此提出了以下兩種方法第一種方法,因為一般條碼的起始條單元都具有特定的規(guī)律,例如起始條單元的 高度通常確定了該條碼中各條單元的最大高度范圍,因此,可以將碼值相同的相鄰多個條 單元與起始條單元進行比較來判斷該多個相鄰條單元對應的碼值,若該相鄰多個條單元的 高度與起始條單元的高度相等,則該相鄰多個條單元對應的碼值應均為1,若該相鄰多個條 單元與起始條單元不相等(通常是低于起始條單元的高度),則該相鄰多個條單元對應的 碼值應為均為0。第二種方法,因為二態(tài)郵政條碼各條單元對應的碼值只有1或0兩種情況,如果多 個相鄰的條單元的高度值相同,則可通過將碼值相同的相鄰多個條單元與后續(xù)條單元進行 高度比較來判斷該多個相鄰條單元對應的碼值,若后續(xù)條單元中有高度大于該相鄰多個條 單元的,則可判斷該相鄰的條單元對應的碼值均為0,若后續(xù)條單元中沒有高度大于該多個 相鄰條單元的,則可判斷該多個相鄰條單元對應的碼值均為1。接下來,請參見圖5,圖5是根據(jù)本發(fā)明一實施例的四態(tài)郵政條碼片段的碼值提取 示意圖。類似于二態(tài)郵政條碼的碼值提取方法,對于四態(tài)郵政條碼而言,通常是將基本掃描 線定位于跟蹤條的中間部位。具體而言,首先,掃描最左邊的第一個條單元的邊界,即掃描線5的位置,然后在 垂直于該條單元的方向掃描該條單元的上端和下端,即掃描線6和掃描線7的位置,此時, 可以通過一個RAM記錄下該條單元的上端和下端的高度值。然后,繼續(xù)在垂直于該條單元 的方向掃描下一條單元的邊界,即掃描線8的位置,再在垂直于該條單元的方向掃描該條 單元的上端和下端的高度值,即掃描線9和掃描線10的位置,依次掃描下去便可獲得所有 條單元的上端和下端高度值。通過將相鄰兩個條單元上端和下端的高度值作差值計算即可得出四態(tài)郵政條碼 的碼值。四態(tài)郵政條碼可視為兩個二態(tài)郵政條碼,因此,本領(lǐng)域技述人員容易理解,四態(tài)郵 政條碼的碼值提取方法與上述二態(tài)郵政條碼的碼值提取方法大致相同,因此,根據(jù)本發(fā)明的方法提取出四態(tài)郵政條碼的碼值是兩組二進制數(shù)據(jù)。將該碼值給計算機處理,便可得出 相應的條碼信息。本發(fā)明旨在公開郵政條碼的碼值獲取方法,因此關(guān)于解碼處理描述在此 不再贅述。綜上所述,本領(lǐng)域技術(shù)人員容易理解,本發(fā)明所提供的郵政條碼的碼值提取方法 不會出現(xiàn)條單元漏掃的情況,能夠準確的提取郵政條碼的碼值。在上述實施例中,僅對本發(fā)明進行了示范性描述,但是本領(lǐng)域技術(shù)人員在閱讀本 專利申請后可以在不脫離本發(fā)明的精神和范圍的情況下對本發(fā)明進行各種修改。
權(quán)利要求
一種郵政條碼的碼值提取方法,其特征在于,所述郵政條碼的碼值提取方法包括以下步驟a.確定相鄰兩個條單元端部的高度值;b.將所述高度值作差值計算,得出所述相鄰兩個條單元的對應的碼值;c.重復a b,獲得所有條單元端部的高度值,并通過作差值計算得出所述郵政條碼的碼值。
2.根據(jù)權(quán)利要求1所述的郵政條碼的碼值提取方法,其特征在于,在所述步驟a中,通 過在垂直于所述條單元方向掃描所述條單元的邊界,并沿垂直方向掃描所述條單元的端部 來獲得所述條單元端部的高度值;通過在垂直于所述條單元邊界的方向繼續(xù)掃描下一條單 元邊界,并沿垂直方向掃描所述下一條單元的端部而獲得所述下一條單元端部的高度值。
3.根據(jù)權(quán)利要求1所述的郵政條碼的碼值提取方法,其特征在于,在所述步驟b中,將 所述相鄰兩個條單元端部的高度值作差值,若所述差值大于第一高度閾值,則所述相鄰兩 個條單元對應的碼值分別為1、0,若所述差值小于第二高度閾值,則所述相鄰兩個條單元對 應的碼值分別為0、1,若所述差值處于所述第一閾值與所述第二閾值之間,則所述相鄰兩個 條單元對應的碼值相同,其中所述第一高度閾值為正值,所述第二高度閾值為負值。
4.根據(jù)權(quán)利要求3所述的郵政條碼的碼值提取方法,其特征在于,若所述相鄰多個條 單元對應的碼值相同,則利用起始條單元來判斷所述相鄰多個條單元對應的碼值,若所述 相鄰多個條單元的高度與所述起始條單元的高度相等,則所述相鄰多個條單元對應的碼值 均為1,若所述相鄰多個條單元的高度與所述起始條單元的高度不相等,則所述相鄰多個條 單元對應的碼值均為0。
5.根據(jù)權(quán)利要求3所述的郵政條碼的碼值提取方法,其特征在于,若所述相鄰多個條 單元對應的碼值相同,則利用所述多個相鄰條單元與后續(xù)條單元的高度進行比較來判斷所 述相鄰多個條單元對應的碼值,若所述后續(xù)條單元中有高度大于所述相鄰多個條單元的, 則所述相鄰多個條單元對應的碼值均為0,所述后續(xù)條單元中沒有高度大于所述相鄰多個 條單元的,則所述相鄰多個條單元對應的碼值均為1。
6.根據(jù)權(quán)利要求1所述的郵政條碼的碼值提取方法,其特征在于,所述郵政條碼是二 態(tài)郵政條碼。
7.根據(jù)權(quán)利要求1所述的郵政條碼的碼值提取方法,其特征在于,所述郵政條碼是四 態(tài)郵政條碼。
全文摘要
本發(fā)明公開了一種郵政條碼的碼值提取方法,該郵政條碼的碼值提取方法包括以下步驟確定相鄰兩個條單元端部的高度值;將該高度值作差值計算,得出該相鄰兩個條單元對應的碼值;重復上述步驟,可獲得所有條單元端部的高度值,并通過作差值計算得出該郵政條碼的碼值。與現(xiàn)有技術(shù)相比較,本發(fā)明所提供的郵政條碼的碼值提取方法不會出現(xiàn)條單元漏掃的情況,能夠準確的提取郵政條碼的碼值。
文檔編號G06K7/10GK101908129SQ20101018982
公開日2010年12月8日 申請日期2010年6月1日 優(yōu)先權(quán)日2010年6月1日
發(fā)明者俞開斌, 劉榮生, 施曉迪 申請人:福建新大陸電腦股份有限公司