專利名稱:二維微型編碼及其處理方法、裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種二維微型編碼及其處理方法、裝置。
背景技術(shù):
二維微型編碼簡稱為二維碼,具有顯性二維碼和隱性二維碼兩種顯示方式。顯性二維碼是通過肉眼可以直接看到的二維碼信息,這種信息需要通過光學(xué)識辨 技術(shù)進行處理。這些就是在電子顯示設(shè)備上顯示的內(nèi)容,需要用戶通過本設(shè)備的掃描端口 將二維碼拍攝下來進行識讀,因此需要顯示器上的二維碼是顯性的。隱性二維碼為肉眼看不見的,它由含碳物質(zhì)組成,它的隱性實現(xiàn)是利用含碳的材 料更容易吸收紅外的原理進行工作,將隱含的信息用含碳的油墨印制,而其他圖像信息用 非含碳的材料印制,使用時在光的幫助下,含碳油墨與其他油墨就會呈現(xiàn)不同圖案,進而被 本設(shè)備所識別。使用者無需知道它的存在,只需要對他想點選的內(nèi)容用本設(shè)備掃描被提示 的掃描區(qū)域就可以達到識讀的目的?,F(xiàn)有技術(shù)中的隱性二維碼如點讀碼由于是定長碼,因此儲存的是單純的定長數(shù) 字,一般為16、20或26位數(shù)據(jù)長度,即2-3個字節(jié),存儲量很小、數(shù)值大小受限制且不能表 示字符串,因此,例如在實際的電視訪問引導(dǎo)手段中若想通過二維碼實現(xiàn)識別縮寫的URL 時,該二維碼無法實現(xiàn)該功能,用戶使用時易用性較差。因而現(xiàn)有技術(shù)的二維碼具有編碼容量小、容錯能力差且使用范圍較窄等問題,目 前尚無有效的解決方案。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種二維微型編碼及其處理方法及裝置,以解決現(xiàn)有 技術(shù)的二維碼編碼容量小、容錯能力差且使用范圍較窄等問題。為了實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了 一種二維微型編碼。根據(jù)本發(fā)明的二維微型編碼的碼元由多個正方型的碼點模塊排列組成,碼元可以 包括定位標(biāo)識區(qū),用于標(biāo)識碼元的位置,定位標(biāo)識區(qū)包括折型定位標(biāo)和輔助定位標(biāo);數(shù)據(jù) 區(qū),用于標(biāo)識碼元的碼值,碼元包括多個數(shù)據(jù)區(qū),折型定位標(biāo)和/或輔助定位標(biāo)表征不同的 數(shù)據(jù)區(qū)的位權(quán)值;碼元類型識別區(qū),用于標(biāo)識碼元的類型和序列號,碼元的類型包括單碼 和組碼。進一步地,碼元是由碼點模塊構(gòu)成的NXN點矩陣,其中,定位標(biāo)識區(qū)的折型定位 標(biāo)位于碼元的第一頂點位置,呈等腰直角型分布;碼元類型識別區(qū)位于碼元的第二頂點位 置,呈等腰直角型分布,第一頂點位置與第二頂點位置相對對稱;輔助定位標(biāo)位于第一頂點 位置與第二頂點位置之間,其上的每個碼點模塊確定多個數(shù)據(jù)區(qū)中的一個數(shù)據(jù)區(qū)的位置及 該數(shù)據(jù)區(qū)的位權(quán)值,每個數(shù)據(jù)區(qū)相鄰分布。進一步地,碼元由碼點模塊構(gòu)成的7X7點矩陣包括四個數(shù)據(jù)區(qū),折型定位標(biāo)和輔 助定位標(biāo)上的第一碼點模塊表征第一數(shù)據(jù)區(qū)的第一位權(quán)值,輔助定位標(biāo)上的第二碼點模塊表征第二數(shù)據(jù)區(qū)的第二位權(quán)值,輔助定位標(biāo)上的第三碼點模塊表征第三數(shù)據(jù)區(qū)的第三位權(quán) 值,輔助定位標(biāo)上的第一碼點模塊表征第四數(shù)據(jù)區(qū)的第四位權(quán)值。進一步地,碼元還可以包括狀態(tài)標(biāo)識,位于數(shù)據(jù)區(qū)上,不同的狀態(tài)標(biāo)識表征與其 對應(yīng)的數(shù)據(jù)區(qū)的標(biāo)識數(shù)值,該數(shù)據(jù)區(qū)的碼值是標(biāo)識數(shù)值與位權(quán)值的積。進一步地,每個數(shù)據(jù)區(qū)由3X3的碼點模塊構(gòu)成,輔助定位標(biāo)位于數(shù)據(jù)區(qū)的頂點, 狀態(tài)標(biāo)識的初始位置為數(shù)據(jù)區(qū)上輔助定位標(biāo)的對角位置。進一步地,狀態(tài)標(biāo)識在初始位置的基礎(chǔ)上,依據(jù)順時針或者逆時針的方向在3X3 的碼點模塊中設(shè)置遞增的標(biāo)識數(shù)值。為了實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種二維微型編碼的處理方法。根據(jù)本發(fā)明的二維微型編碼的處理方法包括采集圖像后對圖像進行解碼預(yù)處理 以獲取碼元,碼元包括定位標(biāo)識區(qū)、數(shù)據(jù)區(qū)、碼元類型識別區(qū)以及狀態(tài)標(biāo)識;對碼元進行解 碼得到圖像的解碼數(shù)據(jù);輸出解碼數(shù)據(jù)。進一步地,對圖像進行解碼預(yù)處理以獲取碼元的步驟包括劃定圖像的中心區(qū)域, 查詢中心區(qū)域的碼元的定位標(biāo)識區(qū);根據(jù)碼元的定位標(biāo)識區(qū)的折型定位標(biāo)矯正圖像;提取 矯正后的圖像的碼元數(shù)據(jù)。進一步地,在劃定圖像的中心區(qū)域之前,方法還包括通過影像背景測定以及圖型 二值化處理圖像用以提取多種類型的圖案,圖案包括正像或負像的圖案。進一步地,對碼元進行解碼得到圖像的解碼數(shù)據(jù)包括根據(jù)碼元類型識別區(qū)的數(shù) 據(jù)確定碼元的類型,獲取不同類型的碼元的解碼數(shù)據(jù),其中,當(dāng)碼元是單碼的情況下,將各 個數(shù)據(jù)區(qū)的碼值累加獲得碼元的解碼數(shù)據(jù);當(dāng)碼元是組碼的情況下,根據(jù)組碼的序列號累 加組碼中各個單碼的解碼數(shù)據(jù)以獲取組碼的解碼數(shù)據(jù)。進一步地,當(dāng)碼元是單碼的情況下,將各個數(shù)據(jù)區(qū)的碼值累加獲得碼元的解碼數(shù) 據(jù)包括根據(jù)定位標(biāo)識區(qū)的折型定位標(biāo)和/或輔助定位標(biāo)獲取各個數(shù)據(jù)區(qū)的位權(quán)值;根據(jù) 數(shù)據(jù)區(qū)的狀態(tài)標(biāo)識獲取各個數(shù)據(jù)區(qū)的標(biāo)識數(shù)值;數(shù)據(jù)區(qū)的位權(quán)值與其對應(yīng)的標(biāo)識數(shù)值的積 為數(shù)據(jù)區(qū)的碼值;將各個碼值相加得到單碼的解碼數(shù)據(jù)。進一步地,當(dāng)碼元是組碼的情況下,根據(jù)組碼的序列號累加組碼中多個單碼的解 碼數(shù)據(jù)以獲取組碼的解碼數(shù)據(jù)的步驟包括分解組碼得到組成組碼的單碼;根據(jù)碼元類型 識別區(qū)的數(shù)據(jù)確定組碼中的各個單碼的序列號;按照累加數(shù)據(jù)區(qū)的碼值的方法獲得組碼中 各個單碼的解碼數(shù)據(jù);在組碼字符表中查詢各個單碼的解碼數(shù)據(jù)所對應(yīng)的字符;按照序列 號將字符排序獲得組碼的解碼數(shù)據(jù)。進一步地,在輸出解碼數(shù)據(jù)之后校驗解碼數(shù)據(jù),可以包括在單碼解碼得到解碼數(shù) 據(jù)后,對單碼進行二次解碼得到第一解碼數(shù)據(jù),解碼數(shù)據(jù)與第一解碼數(shù)據(jù)相同時,單碼解碼 成功。進一步地,在輸出解碼數(shù)據(jù)之后校驗解碼數(shù)據(jù),可以包括在組碼解碼得到解碼數(shù) 據(jù)后,對組碼進行二次解碼得到第二解碼數(shù)據(jù),第二解碼數(shù)據(jù)與解碼數(shù)據(jù)相同時,組碼解碼 成功。進一步地,在輸出解碼數(shù)據(jù)之后校驗解碼數(shù)據(jù),可以包括在組碼解碼得到解碼數(shù) 據(jù)后,對組碼中預(yù)定數(shù)量的單碼進行二次解碼得到第三解碼數(shù)據(jù),在解碼數(shù)據(jù)中包括與第三解碼數(shù)據(jù)相同的部分時,組碼解碼成功。為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種二維微型編碼的處理裝置。根據(jù)本發(fā)明的二維微型編碼的處理裝置包括預(yù)處理模塊,用于采集圖像后對圖 像進行解碼預(yù)處理以獲取碼元,碼元包括定位標(biāo)識區(qū)、數(shù)據(jù)區(qū)、碼元類型識別區(qū)以及狀態(tài)標(biāo) 識;解碼模塊,用于對碼元進行解碼得到圖像的解碼數(shù)據(jù);傳輸模塊,用于輸出解碼數(shù)據(jù)。進一步地,定位模塊,用于劃定圖像的中心區(qū)域,查詢中心區(qū)域的碼元的定位標(biāo)識 區(qū);矯正模塊,用于根據(jù)碼元的定位標(biāo)識區(qū)的折型定位標(biāo)矯正圖像;生成模塊,用于提取矯 正后的圖像的碼元數(shù)據(jù)。進一步地,解碼模塊可以包括確認模塊,用于根據(jù)碼元類型識別區(qū)的數(shù)據(jù)確定碼 元的類型,獲取不同類型的碼元的解碼數(shù)據(jù);單碼解碼模塊,用于當(dāng)碼元是單碼的情況下, 將各個數(shù)據(jù)區(qū)的碼值累加獲得碼元的解碼數(shù)據(jù);組碼解碼模塊,用于當(dāng)碼元是組碼的情況 下,根據(jù)組碼的序列號累加組碼中多個單碼的解碼數(shù)據(jù)以獲取組碼的解碼數(shù)據(jù)。進一步地,該裝置還可以包括校驗?zāi)K,用于在輸出解碼數(shù)據(jù)之后校驗解碼數(shù) 據(jù)。通過本發(fā)明,采用碼元包括定位標(biāo)識區(qū),用于標(biāo)識碼元的位置,定位標(biāo)識區(qū)包括 折型定位標(biāo)和輔助定位標(biāo);數(shù)據(jù)區(qū),用于標(biāo)識碼元的碼值,碼元包括多個數(shù)據(jù)區(qū),折型定位 標(biāo)和/或輔助定位標(biāo)表征不同的數(shù)據(jù)區(qū)的位權(quán)值;碼元類型識別區(qū),用于標(biāo)識碼元的類型 和序列號,碼元的類型包括單碼和組碼,解決了現(xiàn)有技術(shù)的二維碼具有編碼容量小、容錯 能力差且使用范圍較窄等缺陷的問題,進而達到了增加二維碼容量,提高二維碼應(yīng)用性的 效果。且該二維微型編碼成本低、易制作、持久耐用。
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā) 明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中圖1是根據(jù)本發(fā)明實施例的二維微型編碼的結(jié)構(gòu)示意圖;圖2是根據(jù)本發(fā)明一種實施例的二維微型編碼的處理裝置示意圖;圖3是根據(jù)本發(fā)明一種實施例的二維微型編碼的處理方法的流程圖;圖4是根據(jù)本發(fā)明另一種實施例的二維微型編碼的處理方法的流程圖;圖5是根據(jù)本發(fā)明圖3所示的實施例二維微型編碼的預(yù)處理方法的流程圖;圖6是根據(jù)本發(fā)明圖3所示的實施例的單碼解碼的流程示意圖;圖7是根據(jù)本發(fā)明圖3所示的實施例的組碼解碼的流程示意圖;以及圖8是根據(jù)本發(fā)明實施例的組碼字符表。
具體實施例方式需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相 互組合。下面將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。根據(jù)本發(fā)明的實施例,提供了一種二維微型編碼。圖1是根據(jù)本發(fā)明實施例的二 維微型編碼的結(jié)構(gòu)示意圖。如圖1所示,該二維微型編碼的碼元由多個正方形的碼點模塊排列組成,碼元包括定位標(biāo)識區(qū)A,用于標(biāo)識碼元的位置,定位標(biāo)識區(qū)A包括折形定位標(biāo)Al 和輔助定位標(biāo)A2 ;數(shù)據(jù)區(qū)B,用于標(biāo)識碼元的碼值。碼元包括多個數(shù)據(jù)區(qū),折形定位標(biāo)Al和 /或輔助定位標(biāo)A2表征不同的數(shù)據(jù)區(qū)的位權(quán)值;碼元類型識別區(qū)C,用于標(biāo)識碼元的類型, 碼元的類型包括單碼和組碼。本發(fā)明實施例的二維微型編碼,通過定位標(biāo)識區(qū)A對碼元進行調(diào)整和定位,提高 了碼元的識讀效果;由于碼元可以包括多個具有不同位權(quán)值的數(shù)據(jù)區(qū)構(gòu)成的數(shù)據(jù)區(qū)B,因 而碼元的數(shù)據(jù)容量更大;碼元類型識別區(qū)C可以區(qū)分該碼元是單碼還是組碼,從而可以表 示整型數(shù)字或者通過編碼組合表示一段字符串,用來表示網(wǎng)址、URL鏈接等信息。具有上述 特征的二位微型編碼較以往的二維碼容量大、應(yīng)用范圍廣且性能更強。其中,單碼的所有單 位有效區(qū)域表現(xiàn)為同一個編碼,沒有編碼序列,常用于表示一個整型數(shù)值;組碼是一個區(qū)域 中由多個單元聯(lián)合構(gòu)成一個序列編碼區(qū)域,可以表示多個字符構(gòu)成字符串。本發(fā)明的碼元可以由碼點模塊構(gòu)成NXN的點矩陣,優(yōu)選的N為7。其中,定位標(biāo)識 區(qū)A的折型定位標(biāo)Al位于碼元的第一頂點位置,呈等腰直角形分布;碼元類型識別區(qū)C位 于碼元的第二頂點位置,呈等腰直角形分布,第一頂點位置與第二頂點位置相對對稱;輔助 定位標(biāo)A2位于第一頂點位置與第二頂點位置之間,其上的每個碼點模塊定位一個數(shù)據(jù)區(qū), 每個數(shù)據(jù)區(qū)相鄰分布。本發(fā)明實施例中輔助定位標(biāo)A2由三個碼點模塊構(gòu)成,其中一個碼點 模塊位于碼元的幾何中心位置。本發(fā)明實施例中折型定位標(biāo)位Al為圖1中碼元左上角的“ Γ"型標(biāo)識符,通過它 可以得到該碼元所處的位置以及所代表的數(shù)據(jù)區(qū)的碼值。“廠”型標(biāo)識符與輔助定位標(biāo)A2 是雙標(biāo)識組合,構(gòu)成微碼的尋像標(biāo)識,“ Γ"型標(biāo)識符是一個邊長各四個連續(xù)黑點,“ Γ"型 標(biāo)識符的尋標(biāo)位與方形或圓形圖案尋標(biāo)位相比不但更加簡單,而且可以標(biāo)識出圖像的方 向,方便對圖像進行糾偏處理。此外,“ Γ"型標(biāo)識符尋標(biāo)標(biāo)識缺口方向,存在一連續(xù)三個點 組成的斜線,即輔助定位標(biāo)A2可以實現(xiàn)輔助識別標(biāo)志。斜線本身的組合可以標(biāo)識碼元的屬 性(碼值)和狀態(tài)(主要是用來填充的補碼/空白碼的檢測)。本發(fā)明實施例中碼元類型識別區(qū)C是微碼中有一個倒“ |"”型區(qū)域,區(qū)域中標(biāo)識了 組碼信息與碼元位置屬性相關(guān)的信息,算法可根據(jù)采集屏幕中的一個區(qū)域中的碼元信息, 直接得出是屬于那種組合的微碼,并能根據(jù)圖形編碼規(guī)則搜索到相鄰圖案,算法根據(jù)碼元 在組合碼中的位置,自動判斷檢索周邊哪個區(qū)域的圖形來解碼。避免沒有組碼和碼元位置 屬性信息時,需要大量的重復(fù)尋像解碼尋找圖形的起始位置信息(會浪費系統(tǒng)運算資源)。優(yōu)選地,本發(fā)明實施例中的碼元可以包括四個數(shù)據(jù)區(qū),折型定位標(biāo)Al和輔助定位 標(biāo)A2上的第一碼點模塊表征第一數(shù)據(jù)區(qū)Bl的第一位權(quán)值,輔助定位標(biāo)A2上的第二碼點模 塊表征第二數(shù)據(jù)區(qū)B2的第二位權(quán)值,輔助定位標(biāo)A2上的第三碼點模塊表征第三數(shù)據(jù)區(qū)B3 的第三位權(quán)值,輔助定位標(biāo)A2上的第一碼點模塊表征第四數(shù)據(jù)區(qū)B4的第四位權(quán)值。例如, 第一位權(quán)值是1,第二位權(quán)值是10,第三位權(quán)值是100,第四位權(quán)值是1000,因此該碼元可以 表示0-9999的數(shù)值范圍。本發(fā)明實施例中微碼系統(tǒng)標(biāo)準(zhǔn)碼元的組碼序列可以支持五種狀態(tài),即單碼元, 2x1 (2組)碼元,2x2 (4組)碼元,3x3 (9組)碼元,4x4 (16組)碼元。以下分別簡稱為單碼、 A組碼、B組碼、C組碼、D組碼。雖然是組合碼,但是可以從組碼中任何一個碼元就可以判 斷組碼的類型(即組碼是單組,還是A組碼、B組碼、C組碼或D組碼、以及該碼的序號)。
上述實施例維碼系統(tǒng)中的碼元即解析一組數(shù)據(jù)所需最小組合,本發(fā)明實施例的 碼元可以由7x7組碼點模塊構(gòu)成,其中存在一個4x4的占用七個碼點模塊的Γ型定位 標(biāo)和一組為三個碼點模塊的輔助定位標(biāo)。碼元共有四個3bit數(shù)據(jù)區(qū),一個4bit定位 標(biāo)識區(qū)A和一個3bit-l (七個狀態(tài))碼元類型識別區(qū)C。一個碼元理論可儲存信息為 (2~(12+4)*(*2~3-1))個,但實際上數(shù)據(jù)區(qū)只是用12bit,也就是最大4096個數(shù)。一個碼元 所需識別的像素為(3x7) "2 = 2Γ2 = 441個像素,在紙面上面積大約為0. 55*0. 55mm到 0. 6*0. 6mm 的面積。每個數(shù)據(jù)區(qū)可以由3X3的碼點模塊構(gòu)成,輔助定位標(biāo)A2位于數(shù)據(jù)區(qū)的頂點,狀態(tài) 標(biāo)識的初始位置位于數(shù)據(jù)區(qū)上輔助定位標(biāo)A2的對角。碼元還可以包括狀態(tài)標(biāo)識,位于數(shù) 據(jù)區(qū)上,不同的狀態(tài)標(biāo)識表征與其對應(yīng)的數(shù)據(jù)區(qū)的標(biāo)識數(shù)值,標(biāo)識數(shù)值與位權(quán)值的積是該 數(shù)據(jù)區(qū)的碼值。狀態(tài)標(biāo)識在初始位置的基礎(chǔ)上,依據(jù)順時針或者逆時針的方向在3X3的碼 點模塊中設(shè)置遞增的標(biāo)識數(shù)值,其中順時針或者逆時針分別表示從上至下從左至右或者從 上至下從右至左的順序。本發(fā)明實施例中的碼值可以采用八進制數(shù)值。例如,當(dāng)?shù)谝粩?shù)據(jù) 區(qū)Bl上第一位權(quán)值是1,狀態(tài)標(biāo)識在初始位置時第一數(shù)據(jù)區(qū)Bl的碼值為0,如果按照從上 至下從左至右的順序排序,當(dāng)狀態(tài)標(biāo)識位于第二個碼點模塊上時,該第一數(shù)據(jù)區(qū)Bl的碼值 為1,依次得到第一數(shù)據(jù)區(qū)的碼值范圍為0-7,同理可得第二數(shù)據(jù)區(qū)B2的碼值范圍是0-70, 第三數(shù)據(jù)區(qū)B3的碼值范圍是0-700,第四數(shù)據(jù)區(qū)B4的碼值范圍是0-7000,因而數(shù)據(jù)區(qū)由 3X3構(gòu)成的碼點模塊的碼元的解碼范圍在0-7777之間。其中狀態(tài)標(biāo)識的初始位置和排序 順序可以根據(jù)實際算法優(yōu)選獲得。本發(fā)明的二維微型編碼是一種由更小的碼元圖像組成(組合碼特征,傳統(tǒng)點讀碼 沒有相關(guān)功能),又稱為微碼。1、2、4、9或16個碼元圖像皆可組成微碼,一個碼元由橫向 豎向都是7個點的黑白點矩陣組成,為了實現(xiàn)肉眼無法直接可視的功能,設(shè)計時二維微型 編碼的物體尺寸嚴(yán)格限制,傳統(tǒng)二維碼是體積較大的,面積一般為10毫米-30毫米邊長以 上的正方形區(qū)域,而微碼體積僅0. 5-0. 8mm邊長的正方形內(nèi)存在一個碼元,一個碼點僅為 0. 005-0. Olmm以下的尺寸(1200-2400dpi分辨率打印及印刷),難以被肉眼察覺。如圖1 可知優(yōu)選的7x7點矩陣的碼元圖像,每個黑白點不能連續(xù)排列,連續(xù)排列容易在碼批量排 列時形成一條連續(xù)的細線或類似一片較密的陰影(灰度圖形),或在有顏色的背景下,顯得 像更深的顏色(淺色的圖案加上黑色的陰影,等于顏色加深),反而容易被用戶察覺。因此 任意兩點之間還需要按固定的倍值插入空白間隙,確保肉眼無法有效察覺,或從視覺上被 欺騙。同時實際設(shè)計中微碼有補碼,補碼是一種有規(guī)則排列的“空白”圖案,是為了填充圖 案的空白區(qū)而涉及的,具有緩和視覺感官差異的作用,主要用于淺色背景和編碼圖案區(qū)之 間的柔和過渡,及對于不規(guī)則圖案的邊緣補碼。比如碼圖的排列往往與前景圖案大小不相 匹配,輸出時,容易在圖案區(qū)域周圍出現(xiàn)明顯的深淺有異的分界線。為了彌補視覺差異,需 要補碼設(shè)計(補碼計算為根據(jù)前景圖案,自動插補補碼點)。本發(fā)明的二維微型編碼用于快速解碼場合,編碼簡單且具有相對較強的儲存能 力,能在運算能力不強運算復(fù)雜度不高的硬件的平臺上運行,以確保識讀時的實時快速解 碼能力。二維微型編碼自身有校驗數(shù)據(jù)位,但編碼自身沒有冗余設(shè)計,如果碼遭到污損,無 法直接恢復(fù)數(shù)據(jù),微碼的冗余通過同一區(qū)域,同樣的碼值編碼圖案大量重復(fù)出現(xiàn),來規(guī)避上 述問題(即某一個碼無法被正常讀取校驗,僅需要讀取該圖像區(qū)域附近的編碼即可,冗余存放的圖案)。綜上所述,本發(fā)明的微碼最大碼元的組合為16,即4x4組合,邊長為2_3mm的正方 形面積,直徑12-15mm的識讀光學(xué)孔徑前,可以保證任何時候,都有6_9組最大模式組碼的 圖案落在識讀采集區(qū)之中,這樣的設(shè)計是用來彌補微碼設(shè)計中沒有冗余編碼設(shè)計的缺陷。微碼的設(shè)計是可以基于傳統(tǒng)可見光、紅外和紫外光的,特別是在紅外和紫外光波 段作用時,在保證識別率的前提下,可實現(xiàn)微碼在視覺上的更好的隱形,由于我們設(shè)計的采 集裝置,兼容多成像孔徑和多波段的光學(xué)圖像采集,在此基礎(chǔ)上,完全可以在一個可視區(qū)域 內(nèi),疊加三層編碼數(shù)據(jù)進行識別,而互不干擾,實現(xiàn)最大的空間利用率,如標(biāo)準(zhǔn)二維碼和微 碼的組合識別,以及數(shù)字水印圖像與微碼的組合識別,實現(xiàn)更多的應(yīng)用,如一種碼是長期固 定索引碼,一種碼是一次性使用即作廢的業(yè)務(wù)碼。微碼由于體積微小,波段范圍較大,不易被常規(guī)掃描儀掃描,或被肉眼識別。這樣 也可以達到部分防偽防復(fù)制的效果。圖2是根據(jù)本發(fā)明一種實施例的二維微型編碼的處理裝置的示意圖。如圖2所 示,該裝置包括預(yù)處理模塊22,用于采集圖像后對圖像進行解碼預(yù)處理以獲取碼元,碼元 可以包括定位標(biāo)識區(qū)、數(shù)據(jù)區(qū)、碼元類型識別區(qū)以及狀態(tài)標(biāo)識;解碼模塊24,用于對碼元進 行解碼得到圖像的解碼數(shù)據(jù);傳輸模塊26,用于輸出解碼數(shù)據(jù)。本發(fā)明實施例對圖1中所 示的二維微型編碼進行解碼,該解碼過程采用先校正再獲取解碼數(shù)據(jù)的流程,最終將有效 的解碼結(jié)果輸出。由于該二維微型編碼不復(fù)雜,因而解碼效率高,且存儲能力較大,由于編 碼自身沒有冗余設(shè)計,因而不會出現(xiàn)重復(fù)解碼的情況。從解碼的結(jié)果分析該二維微型編碼 容量大,不僅可以解碼得到整數(shù)而且可以獲得字符串。同時由于該微碼體積微小,波段范圍 較大,因而不易被常規(guī)掃描儀掃描或被肉眼識別,達到了部分防偽防復(fù)制的效果。優(yōu)選地,預(yù)處理模塊22可以包括定位模塊221,用于劃定圖像的中心區(qū)域,查詢 中心區(qū)域的碼元的定位標(biāo)識區(qū);矯正模塊223,用于根據(jù)碼元的定位標(biāo)識區(qū)的折型定位標(biāo) 矯正圖像;生成模塊225,用于提取矯正后的圖像的碼元數(shù)據(jù)。本發(fā)明實施例中在正式解碼 之前進行微碼的定位和校正,提高了解碼的正確率和效率。優(yōu)選地,解碼模塊24可以包括確認模塊241,用于根據(jù)碼元類型識別區(qū)的數(shù)據(jù) 確定碼元的類型,獲取不同類型的碼元的解碼數(shù)據(jù);單碼解碼模塊243,用于當(dāng)碼元是單碼 的情況下,將各個數(shù)據(jù)區(qū)的碼值累加獲得碼元的解碼數(shù)據(jù);組碼解碼模塊245,用于當(dāng)碼元 是組碼的情況下,根據(jù)組碼的序列號累加組碼中多個單碼的解碼數(shù)據(jù)以獲取組碼的解碼數(shù) 據(jù)。本發(fā)明分別對單碼和組碼進行解碼,單碼解碼得到整數(shù),組碼解碼得到字符串結(jié)果。優(yōu)選地,該二維微型編碼的處理裝置還包括校驗?zāi)K28,用于在輸出解碼數(shù)據(jù) 之后校驗解碼數(shù)據(jù)。在解碼完成之后通過對解碼結(jié)果進行校驗來提高解碼的正確率。圖3是根據(jù)本發(fā)明一種實施例的二維微型編碼的處理方法的流程圖。如圖3所示, 該方法包括如下的步驟S302至步驟S306 步驟S302,圖2中的預(yù)處理模塊22采集圖像后對圖像進行解碼預(yù)處理以獲取碼 元,碼元可以包括定位標(biāo)識區(qū)、數(shù)據(jù)區(qū)、碼元類型識別區(qū)以及狀態(tài)標(biāo)識,其中圖像中的碼元 如圖1所示;步驟S304,圖2中的解碼模塊24對碼元進行解碼得到圖像的解碼數(shù)據(jù);步驟 S306,圖2中的校驗?zāi)K28輸出解碼數(shù)據(jù)。其中,碼元包括定位標(biāo)識區(qū)、數(shù)據(jù)區(qū)、碼元類型 識別區(qū)以及狀態(tài)標(biāo)識。
本發(fā)明實施例識別圖像上的碼元數(shù)據(jù)對圖像進行解碼獲取數(shù)據(jù)區(qū)的整數(shù)值以及 該碼元的類型,以確認得到該圖像表示的整數(shù)值或者字符串,由于沒有冗余數(shù)值,該解碼過 程簡單且效率高,同時具有防偽防復(fù)制的效果。圖4是根據(jù)本發(fā)明另一種實施例的二維微型編碼的處理方法的流程圖。如圖4所 示該方法包括如下步驟步驟S401,原始圖像采集。步驟S402,識別系統(tǒng)對采集到的圖像進行單幀分離,以獲取解碼的最小單元。步驟S403,在獲取圖像之后對通過預(yù)處理模塊22對圖像進行預(yù)處理過程,包括圖 像矯正及“ ?!恢脵z索,在校正成功之后進入步驟S404,否則進入步驟S409結(jié)束解碼該 圖像等待新的圖像進行校正。步驟S404,圖2中的解碼模塊24對圖像找到解碼中心區(qū)域的單碼元。步驟S405,通過對該中心區(qū)域單碼碼元的解碼判定該碼元是單碼或者組碼。如果 是單碼元則得到該碼元的數(shù)據(jù),如果是組碼則以該碼元中心區(qū)域為準(zhǔn)延展開始解碼。步驟S406,單碼解碼成功后進行單碼數(shù)據(jù)驗證。采用重復(fù)一次解碼流程檢測結(jié)果。步驟S407,組碼解碼成功后進行組碼數(shù)據(jù)驗證,采用復(fù)雜組碼數(shù)據(jù)校驗,校驗完成 后進入步驟S408,如果組碼數(shù)據(jù)簡單則采用步驟S406按照單碼的校驗方法進行校驗處理。步驟S408,在完成該圖像數(shù)據(jù)解碼獲取完整的解碼結(jié)果之后輸出解碼數(shù)據(jù)。對圖像進行解碼預(yù)處理以獲取碼元數(shù)據(jù)的步驟包括劃定圖像的中心區(qū)域,查詢 中心區(qū)域的碼元的定位標(biāo)識區(qū);根據(jù)碼元的定位標(biāo)識區(qū)的折型定位標(biāo)矯正圖像;提取矯正 后的圖像的碼元數(shù)據(jù)。圖5是根據(jù)本發(fā)明圖3所示的實施例二維微型編碼的預(yù)處理方法的流程圖。如圖 5所示,該預(yù)處理方法包括如下步驟步驟S501,開始傳入影像數(shù)據(jù)。該步驟中通過圖2中的預(yù)處理模塊22接收該影像 數(shù)據(jù)。步驟S502,該步驟在圖2中的預(yù)處理模塊22劃定圖像的中心區(qū)域之前,通過影 像背景測定以及圖型二值化處理圖像用以提取多種類型的圖案,圖案包括正像或負像的圖 案。本發(fā)明實施例中影像背景測定及圖形二值化處理以利于圖像識別,剝離背景干擾信息, 該方法用以適應(yīng)不同的背景,保障從不同材質(zhì)的表面拾取正像或負像等多種類型的圖案。步驟S503,圖2中的預(yù)處理模塊22劃定中心區(qū)域開始尋找碼元標(biāo)識。該步驟按照 單碼元的定焦理論大小倍值劃定處理區(qū)域像素。步驟S504,預(yù)處理模塊22在找到碼元標(biāo)識之后進行圖形旋轉(zhuǎn)修正,校正圖像變形。步驟S505,在校正了變形的圖像之后重新從中心區(qū)域?qū)は裉崛≈行膮^(qū)域碼元圖案 數(shù)據(jù),并進行定位標(biāo)識識別為后續(xù)解碼過程做準(zhǔn)備。步驟S506,結(jié)束校正的步驟進入后續(xù)解碼流程。本發(fā)明實施例對碼元數(shù)據(jù)進行解碼得到圖像的解碼數(shù)據(jù)包括根據(jù)碼元類型識 別區(qū)的數(shù)據(jù)確定碼元的類型,獲取不同類型的碼元的解碼數(shù)據(jù),其中,當(dāng)碼元是單碼的情況 下,將各個數(shù)據(jù)區(qū)的碼值累加獲得碼元的解碼數(shù)據(jù);當(dāng)碼元是組碼的情況下,根據(jù)組碼的序 列號累加組碼中各個單碼的解碼數(shù)據(jù)以獲取組碼的解碼數(shù)據(jù)。
其中,當(dāng)碼元是單碼的情況下,將各個數(shù)據(jù)區(qū)的碼值累加獲得碼元的解碼數(shù)據(jù)包 括根據(jù)定位標(biāo)識區(qū)的折型定位標(biāo)和/或輔助定位標(biāo)獲取各個數(shù)據(jù)區(qū)的位權(quán)值;根據(jù)數(shù)據(jù) 區(qū)的狀態(tài)標(biāo)識獲取各個數(shù)據(jù)區(qū)的標(biāo)識數(shù)值;數(shù)據(jù)區(qū)的位權(quán)值與其對應(yīng)的標(biāo)識數(shù)值的積為數(shù) 據(jù)區(qū)的碼值;將各個碼值相加得到單碼的解碼數(shù)據(jù)。圖6是根據(jù)本發(fā)明圖3所示的實施例的單碼解碼的流程示意圖。如圖6所示,該 單碼解碼流程包括如下步驟步驟S601,開始獲取一個碼元數(shù)據(jù)。該步驟收到的碼元數(shù)據(jù)為已修正的完成校正 后的糾偏的一個碼元區(qū)域的二值圖像數(shù)據(jù)塊。步驟S602,在解碼之前尋找合法碼元符號。在定位標(biāo)識區(qū)A找合法的“廠”型標(biāo) 識,在查找“ ?!蜆?biāo)識對應(yīng)的碼元內(nèi)區(qū)位置的輔助定位標(biāo)A2,即“/”型標(biāo)識,如果未找到合 法的可識別的標(biāo)識則結(jié)束查尋過程,該碼元為空或者查尋出錯,如果找到合法“ ?!焙汀?” 的組合識別標(biāo)識則進入步驟S603。步驟S603,在找到合法完整的“廠”標(biāo)識和“/”標(biāo)識之后對標(biāo)準(zhǔn)數(shù)據(jù)區(qū)B的數(shù)據(jù)進 行解碼。其中如圖1的碼元所示,“ ?!睒?biāo)識與“/”標(biāo)識之間的數(shù)據(jù)區(qū)為Bl數(shù)據(jù)區(qū),按Bl數(shù) 據(jù)區(qū)規(guī)則進行解密(3bit) ;" ?!睒?biāo)識下側(cè)與“/”標(biāo)識左下角延長線上指示的數(shù)據(jù)區(qū)為B2 數(shù)據(jù)區(qū),按B2數(shù)據(jù)區(qū)規(guī)則進行解密(3bit) ;" ?!瘶?biāo)識右側(cè)與“/”標(biāo)識右上角延長線上指示 的數(shù)據(jù)區(qū)為B3數(shù)據(jù)區(qū),按B3數(shù)據(jù)區(qū)規(guī)則進行解密(3bit) ;“/”標(biāo)識右下側(cè)的數(shù)據(jù)區(qū)為B4 數(shù)據(jù)區(qū),按B4數(shù)據(jù)區(qū)規(guī)則進行解密(3bit)。上述步驟中各個數(shù)據(jù)區(qū)的解密規(guī)則是指獲取該數(shù)據(jù)區(qū)碼值的方法,碼值是“/”型 標(biāo)識上的碼點模塊所確定的位權(quán)值與該數(shù)據(jù)區(qū)上的狀態(tài)標(biāo)識所確定的碼點模塊的標(biāo)識數(shù) 值的積。各個數(shù)據(jù)區(qū)碼值的和為該碼元的解碼結(jié)果。步驟S604,在找到合法完整的“「”標(biāo)識和“/”標(biāo)識之后對碼元類型識別區(qū)C進 行解碼,即對反“ ?!苯M碼識別區(qū)進行解碼。如圖1的碼元所示,“ ?!睒?biāo)識與“/”標(biāo)識延長 線對稱的為反“ Γ’’區(qū)域,它們分別在碼元的相對的頂點上,對該碼元的反“ Γ"區(qū)域的數(shù) 據(jù)進行解碼(大于4bit,20種狀態(tài))。根據(jù)解碼步驟進入步驟S606,判斷該碼元是單碼還 是組碼,如果是單碼則進入步驟S607,否則進入步驟S609。該步驟S604中如果在反“ Γ’’組碼識別區(qū)中可以優(yōu)選的選擇四個碼點模塊進行 讀取過程,如果該四個碼點模塊為空值則該碼元為單碼,則獲取步驟S603的解碼結(jié)果,該 解碼過程結(jié)束進入結(jié)束步驟S608 ;如果該四個碼點模塊不為空值則該碼元為組碼,根據(jù)碼 點模塊的值可以獲得該組碼的字符串長度,以及當(dāng)前碼元在組碼中的序列號并且進入組碼 的解碼規(guī)則,結(jié)束當(dāng)前的單碼解碼流程。其中,四個碼點模塊優(yōu)選的可以以順時針或者逆時 針的方向可以分別設(shè)置為8、4、2和1,依據(jù)排列組合規(guī)則該組碼的字符串長度的范圍可以 是1-15共16位字長。上述步驟S603和步驟S604的操作步驟可以互換。步驟S605,在步驟S603完成之后可以獲得4x3Bit總共12Bit的數(shù)據(jù)。并轉(zhuǎn)入步 驟 S608。步驟S607,確定單碼類型,本發(fā)明實施例可以包括七種以上類型。步驟S608,結(jié)束解碼并輸出進入單碼校驗規(guī)則的步驟。步驟S609,結(jié)束解碼并輸出進入組碼解碼規(guī)則。
上述步驟中的單碼解碼過程是圖像被截取后,首先進行矯正(對比度調(diào)整、圖像 旋轉(zhuǎn)修正),然后進行定位標(biāo)識識別,再根據(jù)各區(qū)域編位權(quán)值進行累加得到最終數(shù)值。本發(fā)明實施例中,當(dāng)碼元是組碼的情況下,根據(jù)組碼的序列號累加組碼中多個單 碼的解碼數(shù)據(jù)以獲取組碼的解碼數(shù)據(jù)的步驟包括分解組碼得到組成組碼的單碼;根據(jù)碼 元類型識別區(qū)的數(shù)據(jù)確定組碼中的各個單碼的序列號;按照累加數(shù)據(jù)區(qū)的碼值的方法獲得 組碼中各個單碼的解碼數(shù)據(jù);在組碼字符表中查詢單碼的解碼數(shù)據(jù)對應(yīng)的字符;按照序列 號將字符排序獲得組碼的解碼數(shù)據(jù)。圖7是根據(jù)本發(fā)明圖3所示的實施例的組碼解碼的流程示意圖。如圖7所示,該 方法包括如下步驟步驟S701,開始接收圖6中傳入的組碼碼元解碼數(shù)據(jù)。步驟S702,解碼模塊24提取傳入的碼元數(shù)據(jù)和該碼的組碼值。步驟S703,解碼模塊24根據(jù)組碼值判斷組碼類型和長度。本實施例中如果組碼是 1x2組碼則進入步驟S704,如果是2x2/3x3/4x4組碼則進入步驟S707。步驟S704,系統(tǒng)按次序已該碼元的中心區(qū)域為標(biāo)準(zhǔn)從該碼元周邊碼組提取接續(xù)的 1組碼元區(qū)域圖像。步驟S705,對鄰接的一組碼元區(qū)域圖像數(shù)據(jù)并解碼,該解碼過程與圖6所示的單 碼解碼流程相同,即進行一次單碼元解碼。步驟S706,對該簡單組碼進行簡單的數(shù)據(jù)合并得到解碼數(shù)據(jù),進入步驟S714。步驟S707,在碼元類型識別區(qū)C獲取碼組標(biāo)識,根據(jù)組碼標(biāo)識計算鄰接圖像區(qū)域 位置。該步驟中在反“ ?!苯M碼識別區(qū)中完成四個碼點模塊的數(shù)據(jù)的讀取過程,其中,四個 碼點模塊優(yōu)選的可以以順時針或者逆時針的方向可以分別設(shè)置為8、4、2和1,依據(jù)排列組 合規(guī)則該組碼的字符串長度的范圍可以是1-15共16位字長,如果此時碼點模塊的值是 0401,則改碼元在字符串中的位置是第4+1位,它的臨接圖像位置是第3位和第5位的數(shù) 據(jù)。步驟S708,按該碼元類型識別區(qū)C獲取碼組標(biāo)識的序列號,按照該序列號的次序 從該碼元周邊碼組提取接續(xù)的3組、8組、15組碼元區(qū)域圖像。步驟S709,對上述區(qū)域圖像數(shù)據(jù)各自解碼,即進行多次單碼元解碼,詳細的單碼解 碼過程參見圖6的解碼過程。步驟S710,解碼完成后系統(tǒng)判斷該解碼結(jié)果是簡單碼還是全功能碼,如果是簡單 碼即如果組碼是2x2的組碼則進入步驟S706,如果是3x3/4x4組碼則進入步驟S711。步驟S711,對3x3/4x4組碼中前8組或前15組數(shù)據(jù)進行合并拼接組成96bit或 ISObit數(shù)據(jù)。不進行位循環(huán)校驗,節(jié)省了空間提高了運算效率。步驟S712,對3x3/4x4組碼中最后一組12bit數(shù)據(jù)進行位循環(huán)校驗。步驟S713,采用查表法解數(shù)據(jù)壓縮,還原成16-30字節(jié)的ASCII碼數(shù)據(jù),即根據(jù) 獲得的序列號以及數(shù)據(jù)區(qū)的數(shù)據(jù)代碼值在圖8中所示的組碼字符表中查到該數(shù)據(jù)代碼值 對應(yīng)的字符以得到實際的字符串。圖8是根據(jù)根發(fā)明實施例的組碼字符表,該表中數(shù)據(jù)代 碼值及其對應(yīng)的字符都可以根據(jù)研發(fā)人員或者客戶的需要進行修改,以符合不同用戶的需 求,提高用戶體驗。步驟S714,將查尋獲得的字符串?dāng)?shù)據(jù)輸出并結(jié)束組碼的解碼流程獲得32/48bit或64bit數(shù)字。字符串的數(shù)據(jù)范圍是16-30字節(jié)的字符串。該步驟中上位機完成混合碼和 簡單碼區(qū)分。上述組碼的解碼實施例中圖像被截取后,首先進行矯正(對比度調(diào)整、圖像旋轉(zhuǎn) 修正),然后進行定位標(biāo)識識別,再根據(jù)組碼序列號確定各編碼單元序列,之后各區(qū)域編位 權(quán)值進行累加得到數(shù)值,將數(shù)值按照組碼字符表得到各序列相應(yīng)的字符;字符相加得到最 終的字符串。本發(fā)明實施例在單碼解碼得到解碼數(shù)據(jù)后可以校驗解碼數(shù)據(jù),對單碼進行二次解 碼得到第一解碼數(shù)據(jù),解碼數(shù)據(jù)與第一解碼數(shù)據(jù)相同時,單碼解碼成功。在組碼解碼得到解碼數(shù)據(jù)后之后校驗解碼數(shù)據(jù),對組碼進行二次解碼得到第二解 碼數(shù)據(jù),第二解碼數(shù)據(jù)與解碼數(shù)據(jù)相同時,組碼解碼成功。也可以在組碼解碼得到解碼數(shù)據(jù) 后,對組碼中預(yù)定數(shù)量的單碼進行二次解碼得到第三解碼數(shù)據(jù),在解碼數(shù)據(jù)中包括與第三 解碼數(shù)據(jù)相同的部分時,組碼解碼成功。本實施例中,組碼解碼后進行二次解碼,兩次解碼按照序列號確定的序列位的累 加和進行比較,相等則字符串正確,反之則解碼錯誤。在累加的過程中可以依據(jù)組碼的復(fù)雜 度選擇性的進行二次解碼對比,提高解碼效率。同時本發(fā)明采用編碼冗余的方式,不斷重復(fù)編碼碼元,是微碼容錯的一個特點;微 碼肉眼不能分辨,在一定區(qū)域內(nèi)重復(fù)填充編碼碼元,在被裝置識讀時,一次性會采集大量相 同碼元,可以有效的防止因編碼載體部分破損、污染等現(xiàn)象造成的編碼不可識別問題。綜上所述本發(fā)明實施例的處理過程即識讀該二維微型編碼中數(shù)據(jù)區(qū)域的過程,點 讀筆的識讀頭在識讀面積只有3毫米左右直徑的圓空中成像。核心圖形識讀區(qū)內(nèi)可以看到 同樣排列的碼圖約9-12組(3x3,3x4),對其中一組成像即可。微碼的識讀頭,在同一光學(xué) 器件上需要實現(xiàn)對標(biāo)準(zhǔn)二維碼和微碼的識讀,識讀面積達到直徑12-15mm的圓型區(qū)域,在 微碼檢測時,由于識讀區(qū)相對變大,而微碼體積小,全面檢測整個圖像區(qū)域解碼會消耗大量 的系統(tǒng)資源,因此需要通過預(yù)處理模塊22從中心區(qū)域開始檢測向四角的圖像區(qū)域選點進 行檢索。實際應(yīng)用中,特別需要保持編碼規(guī)則不可攻擊性,以及編碼信息中除了節(jié)目索引信 息,還應(yīng)包含卡片唯一標(biāo)示,因此實際數(shù)據(jù)量需要至少保持在48bit以上。另外,作為互動 電視訪問引導(dǎo)手段,還應(yīng)該具備縮寫URL的作用,引導(dǎo)用戶更好的使用。長數(shù)據(jù)另外的好處 就是可以用來做充值卡的密碼應(yīng)用。從以上的描述中,可以看出,本發(fā)明實現(xiàn)了如下技術(shù)效果本發(fā)明比傳統(tǒng)微碼容量 更大,增加了組碼表示字符串的功能,有效區(qū)域更寬廣,可應(yīng)用于點讀機、點菜系統(tǒng)、輸入不 方便受限制的場合,如手機上網(wǎng)、電視、機頂盒上網(wǎng)類快捷操作應(yīng)用。需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的 計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不 同于此處的順序執(zhí)行所示出或描述的步驟。顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用 的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成 的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲 在存儲裝置中由計算裝置來執(zhí)行,或者將它們分別制作成各個集成電路模塊,或者將它們 中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。 以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技 術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修 改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
一種二維微型編碼,碼元由多個正方型的碼點模塊排列組成,其特征在于,所述碼元包括定位標(biāo)識區(qū),用于標(biāo)識所述碼元的位置,所述定位標(biāo)識區(qū)包括折型定位標(biāo)和輔助定位標(biāo);數(shù)據(jù)區(qū),用于標(biāo)識所述碼元的碼值,所述碼元包括多個數(shù)據(jù)區(qū),所述折型定位標(biāo)和/或所述輔助定位標(biāo)表征不同的所述數(shù)據(jù)區(qū)的位權(quán)值;碼元類型識別區(qū),用于標(biāo)識所述碼元的類型和序列號,所述碼元的類型包括單碼和組碼。
2.根據(jù)權(quán)利要求1所述的二維微型編碼,其特征在于,所述碼元是由所述碼點模塊構(gòu) 成的NXN點矩陣,其中,所述定位標(biāo)識區(qū)的所述折型定位標(biāo)位于所述碼元的第一頂點位置,呈等腰直角型分布;所述碼元類型識別區(qū)位于所述碼元的第二頂點位置,呈所述等腰直角型分布,所述第 一頂點位置與所述第二頂點位置相對對稱;所述輔助定位標(biāo)位于所述第一頂點位置與所述第二頂點位置之間,其上的每個所述碼 點模塊確定多個所述數(shù)據(jù)區(qū)中的一個所述數(shù)據(jù)區(qū)的位置及該數(shù)據(jù)區(qū)的位權(quán)值,每個所述數(shù) 據(jù)區(qū)相鄰分布。
3.根據(jù)權(quán)利要求2所述的二維微型編碼,其特征在于,所述碼元由所述碼點模塊構(gòu)成 的7X7點矩陣包括四個所述數(shù)據(jù)區(qū),所述折型定位標(biāo)和所述輔助定位標(biāo)上的第一碼點模 塊表征第一數(shù)據(jù)區(qū)的第一位權(quán)值,所述輔助定位標(biāo)上的第二碼點模塊表征第二數(shù)據(jù)區(qū)的第 二位權(quán)值,所述輔助定位標(biāo)上的第三碼點模塊表征第三數(shù)據(jù)區(qū)的第三位權(quán)值,所述輔助定 位標(biāo)上的第一碼點模塊表征第四數(shù)據(jù)區(qū)的第四位權(quán)值。
4.根據(jù)權(quán)利要求1-3中任一項所述的二維微型編碼,其特征在于,所述碼元還包括狀 態(tài)標(biāo)識,位于所述數(shù)據(jù)區(qū)上,不同的所述狀態(tài)標(biāo)識表征與其對應(yīng)的所述數(shù)據(jù)區(qū)的標(biāo)識數(shù)值, 該數(shù)據(jù)區(qū)的碼值是所述標(biāo)識數(shù)值與所述位權(quán)值的積。
5.根據(jù)權(quán)利要求4所述的二維微型編碼,其特征在于,每個所述數(shù)據(jù)區(qū)由3X3的所述 碼點模塊構(gòu)成,所述輔助定位標(biāo)位于所述數(shù)據(jù)區(qū)的頂點,所述狀態(tài)標(biāo)識的初始位置為所述 數(shù)據(jù)區(qū)上所述輔助定位標(biāo)的對角位置。
6.根據(jù)權(quán)利要求5所述的二維微型編碼,其特征在于,所述狀態(tài)標(biāo)識在所述初始位置 的基礎(chǔ)上,依據(jù)順時針或者逆時針的方向在所述3X3的所述碼點模塊中設(shè)置遞增的所述 標(biāo)識數(shù)值。
7.一種二維微型編碼的處理方法,其特征在于,包括采集圖像后對所述圖像進行解碼預(yù)處理以獲取碼元,所述碼元包括定位標(biāo)識區(qū)、數(shù)據(jù) 區(qū)、碼元類型識別區(qū)以及狀態(tài)標(biāo)識;對所述碼元進行解碼得到所述圖像的解碼數(shù)據(jù); 輸出所述解碼數(shù)據(jù)。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,對所述圖像進行解碼預(yù)處理以獲取碼元 的步驟包括劃定所述圖像的中心區(qū)域,查詢所述中心區(qū)域的所述碼元的所述定位標(biāo)識區(qū);根據(jù)所述碼元的所述定位標(biāo)識區(qū)的折型定位標(biāo)矯正所述圖像;提取矯正后的所述圖像的所述碼元數(shù)據(jù)。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,在劃定所述圖像的中心區(qū)域之前,所述方 法還包括通過影像背景測定以及圖型二值化處理所述圖像用以提取多種類型的圖案,所述 圖案包括正像或負像的所述圖案。
10.根據(jù)權(quán)利要求7-9中任一項所述的方法,其特征在于,對所述碼元進行解碼得到所 述圖像的解碼數(shù)據(jù)包括根據(jù)所述碼元類型識別區(qū)的數(shù)據(jù)確定所述碼元的類型,獲取不同類型的所述碼元的所 述解碼數(shù)據(jù),其中,當(dāng)所述碼元是單碼的情況下,將各個所述數(shù)據(jù)區(qū)的碼值累加獲得所述碼元的所述解碼 數(shù)據(jù);當(dāng)所述碼元是組碼的情況下,根據(jù)所述組碼的序列號累加所述組碼中各個單碼的所述 解碼數(shù)據(jù)以獲取所述組碼的所述解碼數(shù)據(jù)。
11.根據(jù)權(quán)利要求10所述的方法,其特征在于,當(dāng)所述碼元是單碼的情況下,將所述各 個所述數(shù)據(jù)區(qū)的碼值累加獲得所述碼元的解碼數(shù)據(jù)包括根據(jù)所述定位標(biāo)識區(qū)的所述折型定位標(biāo)和/或所述輔助定位標(biāo)獲取各個所述數(shù)據(jù)區(qū) 的位權(quán)值;根據(jù)所述數(shù)據(jù)區(qū)的狀態(tài)標(biāo)識獲取各個所述數(shù)據(jù)區(qū)的標(biāo)識數(shù)值;所述數(shù)據(jù)區(qū)的所述位權(quán)值與其對應(yīng)的所述標(biāo)識數(shù)值的積為所述數(shù)據(jù)區(qū)的碼值;將各個所述碼值相加得到所述單碼的所述解碼數(shù)據(jù)。
12.根據(jù)權(quán)利要求10所述的方法,其特征在于,當(dāng)所述碼元是組碼的情況下,根據(jù)所述 組碼的序列號累加所述組碼中多個單碼的所述解碼數(shù)據(jù)以獲取所述組碼的所述解碼數(shù)據(jù) 的步驟包括分解所述組碼得到組成所述組碼的單碼;根據(jù)所述碼元類型識別區(qū)的數(shù)據(jù)確定所述組碼中的各個所述單碼的所述序列號;按照累加所述數(shù)據(jù)區(qū)的所述碼值的方法獲得所述組碼中各個所述單碼的解碼數(shù)據(jù);在組碼字符表中查詢所述各個單碼的解碼數(shù)據(jù)所對應(yīng)的字符;按照所述序列號將所述字符排序獲得所述組碼的所述解碼數(shù)據(jù)。
13.根據(jù)權(quán)利要求11所述的方法,其特征在于,在輸出所述解碼數(shù)據(jù)之后校驗所述解 碼數(shù)據(jù),包括在所述單碼解碼得到所述解碼數(shù)據(jù)后,對所述單碼進行二次解碼得到第一解 碼數(shù)據(jù),所述解碼數(shù)據(jù)與所述第一解碼數(shù)據(jù)相同時,所述單碼解碼成功。
14.根據(jù)權(quán)利要求12所述的方法,其特征在于,在輸出所述解碼數(shù)據(jù)之后校驗所述解 碼數(shù)據(jù),包括在所述組碼解碼得到所述解碼數(shù)據(jù)后,對所述組碼進行二次解碼得到第二解 碼數(shù)據(jù),所述第二解碼數(shù)據(jù)與所述解碼數(shù)據(jù)相同時,所述組碼解碼成功。
15.根據(jù)權(quán)利要求12所述的方法,其特征在于,在輸出所述解碼數(shù)據(jù)之后校驗所述解 碼數(shù)據(jù),包括在所述組碼解碼得到所述解碼數(shù)據(jù)后,對所述組碼中預(yù)定數(shù)量的單碼進行二 次解碼得到第三解碼數(shù)據(jù),在所述解碼數(shù)據(jù)中包括與所述第三解碼數(shù)據(jù)相同的部分時,所 述組碼解碼成功。
16.一種二維微型編碼的處理裝置,其特征在于,包括預(yù)處理模塊,用于采集圖像后對所述圖像進行解碼預(yù)處理以獲取碼元,所述碼元包括 定位標(biāo)識區(qū)、數(shù)據(jù)區(qū)、碼元類型識別區(qū)以及狀態(tài)標(biāo)識;解碼模塊,用于對所述碼元進行解碼得到所述圖像的解碼數(shù)據(jù);傳輸模塊,用于輸出所述解碼數(shù)據(jù)。
17.根據(jù)權(quán)利要求16所述的裝置,其特征在于,所述預(yù)處理模塊包括定位模塊,用于劃定所述圖像的中心區(qū)域,查詢所述中心區(qū)域的所述碼元的所述定位 標(biāo)識區(qū);矯正模塊,用于根據(jù)所述碼元的所述定位標(biāo)識區(qū)的折型定位標(biāo)矯正所述圖像;生成模塊,用于提取矯正后的所述圖像的所述碼元數(shù)據(jù)。
18.根據(jù)權(quán)利要求16所述的裝置,其特征在于,所述解碼模塊包括確認模塊,用于根據(jù)所述碼元類型識別區(qū)的數(shù)據(jù)確定所述碼元的類型,獲取不同類型 的所述碼元的所述解碼數(shù)據(jù);單碼解碼模塊,用于當(dāng)所述碼元是單碼的情況下,將各個所述數(shù)據(jù)區(qū)的碼值累加獲得 所述碼元的所述解碼數(shù)據(jù);組碼解碼模塊,用于當(dāng)所述碼元是組碼的情況下,根據(jù)所述組碼的序列號累加所述組 碼中多個單碼的所述解碼數(shù)據(jù)以獲取所述組碼的所述解碼數(shù)據(jù)。
19.根據(jù)權(quán)利要求16所述的裝置,其特征在于,所述裝置還包括校驗?zāi)K,用于在輸 出所述解碼數(shù)據(jù)之后校驗所述解碼數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種二維微型編碼及其處理方法、裝置,其中,該碼元包括定位標(biāo)識區(qū),用于標(biāo)識碼元的位置,定位標(biāo)識區(qū)包括折型定位標(biāo)和輔助定位標(biāo);數(shù)據(jù)區(qū),用于標(biāo)識碼元的碼值,碼元包括多個數(shù)據(jù)區(qū),折型定位標(biāo)和/或輔助定位標(biāo)表征不同的數(shù)據(jù)區(qū)的位權(quán)值;碼元類型識別區(qū),用于標(biāo)識碼元的類型和序列號,碼元的類型包括單碼和組碼。通過本發(fā)明,能夠增加二維碼容量,提高二維碼應(yīng)用性,且該二維微型編碼成本低、易制作、持久耐用。
文檔編號G06K7/10GK101944187SQ201010276278
公開日2011年1月12日 申請日期2010年9月7日 優(yōu)先權(quán)日2010年9月7日
發(fā)明者龔湘明 申請人:龔湘明