亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于產(chǎn)生和解碼視覺明顯的條形碼的方法和裝置的制作方法

文檔序號:6552891閱讀:272來源:國知局
專利名稱:用于產(chǎn)生和解碼視覺明顯的條形碼的方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般涉及條形碼,特別涉及一種用于產(chǎn)生和解碼視覺明顯的條形碼的方法和裝置。
條形碼是載有用于方便和可靠地自動檢索的圖案的信息。最普通的條形碼被稱為一維條碼。其圖案在一個維度(例如,水平方向)上變化,并且在一個維度(例如,垂直方向)保持恒定。一維條碼用于低信息量的應(yīng)用中,例如產(chǎn)品索引登記(例如,自動價格標(biāo)簽和存貨管理),或者序列號登記(例如,在自動醫(yī)藥測試中的試管標(biāo)簽)。一維條碼的一般例子是附加或打印于在超市或商店購買的商品包裝上的條形碼。這些條形碼一般僅僅可以編碼有限的信息,例如商品品的價格和制造商。具有務(wù)形碼的商品在收款臺掃描,以便于結(jié)算總收據(jù)。
為了在同樣的表面面積上傳達更多的信息,人們開發(fā)了二維條碼。二維條碼涉及復(fù)雜的圖案,該圖案在水平和垂直方向上變化。二維條碼用于需要更多信息內(nèi)容的應(yīng)用中。例如,二維條碼可以用于編碼郵件地址,用于自動郵件讀取和分發(fā)系統(tǒng)。郵遞公司可以把二維條碼用于郵遞包裹上,以編碼托運人信息、收件人信息、跟蹤信息,等等。在另一個例子中,二維條碼可以用于編碼打印頁的壓縮內(nèi)容,以免除在接收端需要進行光字符識別。
美國專利第5,060,980、5,486,686和5,459,307號示出一種二維條碼系統(tǒng)的例子。該系統(tǒng)采用具有正向方向和反向方向(例如,條碼相對于一個參考基準(zhǔn)定位在45%或135%位置處)的短黑條塊來形成該條形碼。該條塊的兩個可能方向(例如,1或0)被編碼。該系統(tǒng)在短黑條塊的外觀上比傳統(tǒng)的二維條形碼具有有限的改進,而且比傳統(tǒng)的二維條形碼更加不引人注意。從而,這些專利宣稱利用這些條塊的條形碼可以置于文檔的背景中,而不明顯地分散閱讀該文檔的人的注意力。
不幸的是,該二維條碼的不明顯的外觀使得那些用于非個人化的商業(yè)和工業(yè)設(shè)置而不管條形碼是否更加不引人注意的條形碼被排除,并且可以包含到文檔的背景中。例如,在許多客戶的應(yīng)用中,當(dāng)前視覺上無意義的條形碼圖案被禁止使用,因為用戶一般更加傾向于寧可不用該應(yīng)用的好處,也不愿把條形碼包含到他們的信頭上。
在設(shè)計和使用二維條形碼上的另一個挑戰(zhàn)是能夠利用辦公設(shè)備(例如,打印機)產(chǎn)生條形碼,隨后還可以用辦公設(shè)備(例如,掃描儀)讀出。例如,該二維條形碼系統(tǒng)可以處理打印機和掃描儀的失真,該失真隨著辦公設(shè)備的類型和制造商的不同而不同。人們希望二維條碼能夠被可靠地產(chǎn)生和掃描,而與該機器的類型和制造商無關(guān)。并且希望條形碼能夠被復(fù)印(即,從一個條形碼原件的復(fù)印件能夠掃描條形碼并且解碼其中的信息)。
相應(yīng)地,還需要視覺明顯的二維條形碼不受紙張扭曲的影響,并且能夠克服上述缺點。
本發(fā)明的一個目的是提供一種產(chǎn)生和解碼視覺明顯的條形碼的方法。
本發(fā)明的另一個目的是提供一種視覺明顯能夠穩(wěn)定地連續(xù)復(fù)印并且不受一般辦公文檔的老化影響的條形碼圖案。
本發(fā)明的另一個目的是提供一種視覺明顯并能夠由標(biāo)準(zhǔn)的辦公設(shè)備打印和讀出的條形碼圖案。
本發(fā)明的條形碼系統(tǒng)包括用于接收消息和標(biāo)記并且根據(jù)這些輸入產(chǎn)生視覺明顯的條形碼的編碼模塊。解碼模塊還被提供用于接收視覺明顯的條形碼的后續(xù)獲得版本,該版本已經(jīng)在一般的文檔處理過程(例如,通過打印、掃描或復(fù)印處理中)失真,并且用于恢復(fù)由視覺明顯的條形碼所表示的信息。


圖1為示出辦公環(huán)境的方框圖,其中可以采用不接受用戶輸入的本發(fā)明的視覺明顯條形碼系統(tǒng)的一個實施例。
圖2為示出辦公環(huán)境的方框圖,其中可以采用接受用戶輸入的本發(fā)明的視覺明顯條形碼系統(tǒng)的另一個實施例。
圖3示出沒有任何用戶輸入特征的圖案的標(biāo)記以及具有用戶輸入特征的圖案的標(biāo)記。
圖4A為示出辦公機器的方框圖,其中可以采用圖1或圖2的視覺明顯的條形碼系統(tǒng)。圖4B為示出計算機可讀介質(zhì)的方框圖,其中采用圖1或圖2的視覺明顯的條形碼系統(tǒng)。
圖5為更加具體示出圖1或圖2的編碼模塊和解碼模塊的方框圖。
圖6示出把信息編碼到根據(jù)本發(fā)明一個實施例的視覺明顯的條形碼內(nèi)的方法。
圖7A示出根據(jù)本發(fā)明一個實施例應(yīng)用圖6的編碼步驟的例子。
圖7B示出根據(jù)本發(fā)明的一個實施例可以用于圖7A的編碼方案中的圖案矩陣。
圖8示出解碼根據(jù)本發(fā)明一個實施例的視覺明顯的條形碼的方法。
圖9示出由本發(fā)明的編碼方法所產(chǎn)生的示例標(biāo)記圖案和相應(yīng)的視覺明顯的條形碼。
圖10示出可以用于圖6的解碼方法中來定位條形碼區(qū)域的之字形掃描。
詳細描述下面將參照下文給出的多個細節(jié)描述本發(fā)明,并且該附圖將說明本發(fā)明。下文的描述和附圖用于說明本發(fā)明而不是對本發(fā)明的限制。各種具體細節(jié)用于提供對本發(fā)明的完整理解。但是,在特定的例子中,不描述眾所周知或公知細節(jié),以避免對本發(fā)明造成不必要的混淆。在附圖中,相同的部件采用相同的參考標(biāo)號。
視覺明顯的條形碼系統(tǒng)10圖1為示出一個辦公環(huán)境的方框圖,其中可以采用不接收用戶輸入的本發(fā)明的視覺明顯的條形碼系統(tǒng)(VSBCS)10。視覺明顯的條形碼系統(tǒng)(VSBCS)10包括通過利用編碼技術(shù)產(chǎn)生視覺明顯的條形碼(VSBC)20的編碼模塊14,以及用于解碼包含視覺明顯的條形碼(VSBC)的硬拷貝的獲得版本48(例如,第一硬拷貝38、第一硬拷貝38的拷貝或者第二硬拷貝56)并且用于恢復(fù)在所獲得版本48中包含的信息60。VSBC20可以通過利用解碼技術(shù)而獲得,這是本領(lǐng)域內(nèi)的普通技術(shù)人員所公知的。在一個實施例中,VSBC20通過利用半色調(diào)算法來產(chǎn)生半色調(diào)的VSBC20而獲得。
系統(tǒng)10可以與驅(qū)動程序15進行通信,用于提供標(biāo)記16和消息18,并且還與驅(qū)動程序70通信,用于把所恢復(fù)信息48用于特定應(yīng)用中。
編碼模塊14包括用于接收標(biāo)記16的第一輸入、用于接收消息18的第二輸入、以及用于產(chǎn)生視覺明顯的條形碼(VSBC)20的一個輸入。消息18可以是系統(tǒng)設(shè)計人指定的任何消息。
標(biāo)記16可以是任何視覺明顯的圖案,其與不被當(dāng)作圖案本身的以前的二維條形碼形成明顯對比。例如,標(biāo)記16可以包括實際的標(biāo)記、圖形、相片、文字、文本框、圖像、或者任何其它視覺明顯的圖案,但不限于此。標(biāo)記的例子可以包括公司標(biāo)記、應(yīng)用標(biāo)記或行為標(biāo)記。圖形的例子可以是框、按鍵標(biāo)記或者背景。文本的例子是具有“該框中包含重要數(shù)據(jù)!”這幾個字的文本框。VSBC可以是嵌入在文本、相片、圖像、邊框或文檔背景的圖案設(shè)計中的條形碼圖案。
VSBC圖案可以是由編碼模塊14所產(chǎn)生的二進制圖案(例如,黑白點陣圖案)、多色階圖案(例如,灰度級圖案)、或者多色級彩色圖案。編碼模塊14在下文中參照圖5更加具體的描述。
辦公環(huán)境一般包括辦公設(shè)備,例如,個人計算機(PC)(未示出)、具有打印引擎34的打印機30、具有掃描引擎44的掃描儀40、傳真機(未示出)、以及用于制作文檔副本(例如,復(fù)印件54)的復(fù)印機50。打印引擎34從來源(例如編碼模塊14)接收圖像(例如,半色調(diào)圖像),并且用這些圖像產(chǎn)生硬拷貝,例如具有第一VSBC(L1)的硬拷貝。掃描引擎44接收硬拷貝(例如,具有第一VSBC(L1)的硬拷貝38或54或者具有第二VSBC(L2)的第二硬拷貝56),產(chǎn)生所接收硬拷貝的獲得版本48(例如,掃描版本),并且把所獲得版本48提供給應(yīng)用設(shè)備,例如解碼模塊24。應(yīng)當(dāng)注意,掃描儀40可以用用于獲得視覺明顯的條形碼版本的數(shù)碼相機來代替。另外,掃描引擎44可以是任何用來獲得VSBC并且提供VSBC的獲取版本(例如,數(shù)字表示)的獲取引擎。這些辦公機器和它們各個部件的操作和構(gòu)成是本領(lǐng)域內(nèi)的普通技術(shù)人員所共知的,并且不在此做描述。
在典型的文檔處理路徑中,VSBC與文檔的其它內(nèi)容一同被提供給打印機,例如打印機30。然后,打印機30利用打印引擎34來產(chǎn)生第一硬拷貝38,其中包括第一VSBC(L1)。硬拷貝38然后被直接提供給掃描儀,例如,掃描儀44,以產(chǎn)生掃描版本48。另外,硬拷貝38可以首先利用復(fù)印機(例如復(fù)印機50)復(fù)印一次或多次。然后,復(fù)印版本(例如,副本54)可以提供給掃描儀44以產(chǎn)生掃描版本48。請注意,第二硬拷貝(例如,硬拷貝56)可以通過利用作為辦公室的一部分的打印機30不同的另一個打印機(未示出)來產(chǎn)生(例如,打印或復(fù)制)。并且,應(yīng)當(dāng)注意標(biāo)記16可以隨著應(yīng)用不同而不同(例如,第一VSBC(L1)或第二VSBC(L2)),并且可以由系統(tǒng)設(shè)計人所指定。
解碼模塊24接收所獲得版本48,并且恢復(fù)在所獲得版本48中編碼的信息60。例如,如果所獲得版本對應(yīng)于第一硬拷貝38或副本54,則在第一VSBC(L1)中的信息被恢復(fù)為信息60。另外,如果所獲得版本對應(yīng)于第二硬拷貝56或者其復(fù)印件,則在第二VSBC(L2)中的信息被恢復(fù)為信息60。然后信息60被提供給執(zhí)行一個或多個預(yù)定功能或任務(wù)的被驅(qū)動應(yīng)用程序70,其例子在下文中參照圖3更加具體的描述。
圖2為示出辦公環(huán)境的方框圖,其中可以采用接受用戶輸入的本發(fā)明的視覺明顯的條形碼系統(tǒng)10A的另一個實施例。該視覺明顯的條形碼系統(tǒng)10B類似于圖1中所示的系統(tǒng)10A,除了該系統(tǒng)10A被設(shè)計為接受用戶輸入。用戶可以通過利用寫入工具(例如,鉛筆或鋼筆)以標(biāo)記形式把信息輸入到第一硬拷貝38,副本54或第二硬拷貝56中,這將在下文參照圖3進一步具體說明。系統(tǒng)10A包括用于解碼用戶輸入的用戶輸入解碼模塊26,例如(1)可以提供到硬拷貝38的用戶輸入64;或者(2)可以提供到副本54或第二硬拷貝56的用戶輸入65。應(yīng)當(dāng)指出,如圖所示,用戶輸入解碼模塊26可以與解碼模塊24相集成或者與解碼模塊24相分離。
在該實施例中,解碼的用戶輸入66和由所獲得圖像48指定的信息60被提供到根據(jù)用戶輸入66和信息60產(chǎn)生一個或多個信號的判定模塊68。這些信號可以從由該信息提供的一個或多個選項中產(chǎn)生。這些信息然后被提供到一個或多個執(zhí)行預(yù)定任務(wù)或功能的驅(qū)動程序或應(yīng)用程序70,或者控制其它應(yīng)用程序來執(zhí)行預(yù)定任務(wù)。這種任何的例子在下文中參照圖3進行描述。
應(yīng)當(dāng)指出,驅(qū)動應(yīng)用程序15和被驅(qū)動應(yīng)用程序70可以是相同或不同的應(yīng)用程序。另外,驅(qū)動應(yīng)用程序15和被驅(qū)動應(yīng)用程序70可以包含到視覺明顯的條形碼系統(tǒng)(VSBCS)10中,或者與VSBC系統(tǒng)10相分離。
圖3示出沒有任何用戶輸入特征的圖像304A的標(biāo)記304和具有用戶輸入特征的圖像的標(biāo)記304B。文檔300(例如,文檔38、54或56)包括無標(biāo)記部分302(例如,文本、圖像、圖案等等)以及標(biāo)記部分304(例如,第一VSBC(L1)或第二VSBC(L2)),其可以是VSBC20。應(yīng)當(dāng)指出VSBC20與無標(biāo)記部分一同提供,使得打印機(例如,打印機30)可以形成整個文檔300。由于文檔的編碼和解碼無標(biāo)記部分是本領(lǐng)域內(nèi)的普通技術(shù)人員所公知的,因此不描述這些操作。
標(biāo)記304可以是沒有任何用戶輸入特征的圖像304A或者具有用戶輸入特征的圖像304B。在這兩種情況下,圖像(304A或304B)包括編碼信息308,該編碼信息可以是互聯(lián)網(wǎng)地址(例如,WWW網(wǎng)址)、電子郵件地址、認證信息(例如,數(shù)字簽名或文檔的作者或發(fā)送者)、文件名或文件位置、用于“傳真回復(fù)”應(yīng)用的傳真號、或者其組合,但不限于此。
本發(fā)明的一個方面是提供VSBC來增加文檔的價值,并且產(chǎn)生“活文檔(living documents)”?;钗臋n是比眼睛所看到的文檔具有更多信息(例如,編碼信息)的文檔?;钗臋n具有以VSBC形式的編碼信息,其可以被用于動態(tài)檢索附加信息(例如,文檔的更新版本),以減少人的介入,增加方便性,提高辦公效率,增加文檔發(fā)布的保密性,增加生產(chǎn)率以及便于辦公室中人員之間的交流。
具有許多使用上述的一種或多種信息類型,并且把這些信息類型編碼到文檔中的應(yīng)用程序。應(yīng)當(dāng)指出在此有許多其它類型的消息或信息可以編碼到文檔中以及許多與此相關(guān)的應(yīng)用。這些應(yīng)用之間的基礎(chǔ)是本發(fā)明的VSBCS。
例如,本發(fā)明的一個應(yīng)用是使用VSBC來存儲文件名和文件位置(例如,訪問服務(wù)器上的文檔、網(wǎng)址等等的路徑)。當(dāng)具有包含文件和文件位置信息的VSBC的文檔被掃描到個人計算機中或者用其它方式由個人計算機所獲得,則最近文檔應(yīng)用程序可以利用該信息來訪問該文檔的最近或更新電子版本,并且通過使用字處理應(yīng)用程序來打開該文檔。
顯而易見,本發(fā)明比通過一些類型的OCR(光字符識別)來把掃描版本轉(zhuǎn)換為文字可編輯版本的現(xiàn)有技術(shù)的方法具有明顯改進。OCR方法在識別過程中容易產(chǎn)生許多誤差和錯誤。另外,不管采用如何準(zhǔn)確的OCR方法,僅僅可以獲得在實際文檔上所示出的版本。如果該文檔隨后被改動,則沒有方法能夠檢索最新版本。該應(yīng)用程序即使當(dāng)該文檔具有不適合用現(xiàn)有OCR方法識別的較差文字質(zhì)量,也可以檢索出最新的電子版本,因為文件名和文件路徑被編碼在VSBC中。
類似地,文檔的原始電子版本的編碼名稱和位置使得復(fù)印機能夠利用原始文檔作為副件原本,而不依賴于具有VSBC的手頭文檔,該文檔可能已經(jīng)在一般的文件處理過程中嚴重老化。這是一個是從電子版本復(fù)制應(yīng)用的例子。
保密應(yīng)用可以利用在VSBC中編碼的認證信息用于認證或其它保密通信功能。例如,數(shù)字簽名可以被編碼到VSBC中,使得文檔的來源可以得到認證。
在另一個實施例中,傳真號被編碼在VSBC內(nèi),使得當(dāng)文檔被送進傳真機時,自動傳真回復(fù)應(yīng)用程序可以利用編碼的傳真號來自動撥號,而不需要用戶的干預(yù)。另外,電子郵件地址可以編碼在VSBC內(nèi),使得自動電子郵件回復(fù)應(yīng)用程序可以利用編碼的電子郵件地址通過電子郵件把更多的信息(例如,回應(yīng))發(fā)送到文檔的作者。
具有用戶輸入特征的圖像304B包括一個或多個用戶輸入表格。例如,復(fù)選框表格314可以提供使用戶通過簡單地選擇應(yīng)當(dāng)?shù)姆娇?,從幾個選項中選擇一個。文本消息框“選擇適當(dāng)?shù)姆娇颉?15可以是一個視覺明顯的條形碼。在另一個實施例中,圓圈選擇表格318可以被提供使得用戶通過簡單地圈住適當(dāng)?shù)倪x項從幾個選項中選擇一個。文本消息框“圈住所需選項”318可以是一個視覺明顯的條形碼。在另一個實施例中,填充表格324可以被提供使得用戶填入該表格所需的信息。文本消息框“填入”325可以是一個視覺明顯的條形碼。
這些表格需要用戶輸入330,例如選擇標(biāo)記、圓圈或文本輸入。然后用戶輸入330可以由用戶輸入解碼模塊26所解碼,以恢復(fù)用戶輸入。然后,判定模塊68利用用戶輸入與恢復(fù)的信息相結(jié)合來選擇幾個可用功能或任務(wù)中的一個,并且被驅(qū)動應(yīng)用程序70用于執(zhí)行可以啟動的所選擇任務(wù)。例如,用戶輸入可以被利用來在與不同視覺明顯的文本框中編碼的不同信息之間進行判定。在自動電子郵件回復(fù)應(yīng)用程序中,用戶輸入和不同的視覺明顯的文本框可以被用于(1)僅僅回復(fù)發(fā)送者或者(2)回復(fù)包括發(fā)送者在內(nèi)的所有接收者。
VSBC系統(tǒng)10或10A可以體現(xiàn)在包含于辦公設(shè)備(例如,個人計算機(PC)、打印機、傳真機、掃描儀、復(fù)印機、全能機器,等等)中或與辦公設(shè)備相分離的介質(zhì)上。當(dāng)包含于辦公設(shè)備中時,具有VSBC系統(tǒng)10或10A的介質(zhì)可以是存儲器的形式(例如,隨機存取存儲器(RAM)、只讀存儲器(ROM),等等)。當(dāng)與辦公設(shè)備相分離時,具有VSBC系統(tǒng)10或10A的介質(zhì)可以是計算機可讀介質(zhì)的形式,例如軟盤、壓縮光盤(CD),等等。
圖4A為示出其中可以采用VSBC系統(tǒng)10或10A的辦公機器400的方框圖。該辦公機器400包括存儲器410,其中存儲有本發(fā)明的VSBCS10或10A。辦公機器400可以是個人計算機(PC)。如果是這種情況,該PC連接到打印機、掃描儀、全能機器或者其它外圍機器。請注意,VSBCS10或10A可能以與其中一個外圍機器相關(guān)的驅(qū)動程序的形式駐留在PC內(nèi),或者可以存儲在位于外圍機器中的存儲器內(nèi)。
另外,辦公機器可以是一個全能辦公機器(例如,集成的掃描儀、打印機和傳真機)或者任何繪制機器。
圖4B為示出計算機可讀介質(zhì)420的方框圖,其中可以采用本發(fā)明的VSBC系統(tǒng)10或10A。計算機可讀介質(zhì)420可以是軟盤440、壓縮光盤(CD)430、或者其它計算機可讀介質(zhì),等等??梢钥闯?,能夠以各種其它方式以及通常能夠在辦公環(huán)境中找到的各種其它部件來實現(xiàn)VSBC系統(tǒng)10或10A。
圖5為更加具體示出圖1和圖2的編碼模塊14和解碼模塊24的方框圖。編碼模塊14包括用于接收消息18以及根據(jù)消息18產(chǎn)生解碼信息504的編碼器500。編碼14還包括圖形調(diào)制單元510,用于接收標(biāo)記16和編碼信息504,并根據(jù)該標(biāo)記和信息產(chǎn)生VSBC20。VSBC20可以是特定的圖案。在信道514中,VSBC20可以直接印在文檔上或者包含到文檔中并且印在上面。
最好,本發(fā)明的視覺明顯的二維條碼是由點所組成的圖案,但通常不是必需的。本發(fā)明的視覺明顯的條形碼是使用雙色調(diào)點(例如,在白背景上的黑點來形成,并且占據(jù)矩形的面積,但是這通常不是必需的。視覺明顯的條形碼可以包含各種記錄和基準(zhǔn)標(biāo)志,這通常是本領(lǐng)域內(nèi)的技術(shù)人員所公知的,用于能夠進行自動識別以及精確地條形碼記錄,這可能以任意方向讀出。另外,本發(fā)明的視覺明顯的條形碼系統(tǒng)可以采用幾種糾錯碼,這是本領(lǐng)域內(nèi)的不同技術(shù)人員所公知的,用于可靠地進行自動條形碼檢索。
由編碼模塊14所執(zhí)行用于處理消息18和標(biāo)記16來產(chǎn)生VSBC20的步驟在下文中參照圖6更加具體地描述。
信道514表示用于由標(biāo)準(zhǔn)的辦公設(shè)備對硬拷貝處理的一般文檔處理路徑。例如,硬拷貝可以被打印、復(fù)印和掃描。應(yīng)當(dāng)知道一個或多個標(biāo)準(zhǔn)的辦公處理步驟可以由多功能的設(shè)備所執(zhí)行。由于條形碼圖像在信道514中受到噪聲和辦公文檔質(zhì)量下降(例如,折疊、污漬、標(biāo)記和戳印),可以采用標(biāo)準(zhǔn)的清理程序來處理噪聲和條形碼圖案的質(zhì)量下降。
由解碼模塊24所執(zhí)行以從所獲得圖像48中恢復(fù)信息60的步驟在下文中參照圖8更加具體地描述。
產(chǎn)生VSBC20圖6示出把消息18編碼為根據(jù)本發(fā)明一個實施例的視覺明顯的條形碼20的方法。在步驟600中,接收消息18和標(biāo)記16。消息18還可以在該步驟中通過利用眾所周知的壓縮技術(shù)來壓縮。對于特定的應(yīng)用,例如統(tǒng)一資源定位符(URL),最好采用定制的壓縮方案。
在步驟610中,壓縮的信息通過利用具有輸出字符L的糾錯碼來編碼,來產(chǎn)生編碼于一系列Q符號中的消息。該編碼步驟對信道514中的錯誤具有穩(wěn)健性。例如,可以使用糾正3個錯誤的標(biāo)準(zhǔn)16->31位BCH編碼,其中L=4(2位)。
在步驟620中,可以是M×N像素圖案的標(biāo)記16被分為多個圖像矩陣。在一個實例中,K等于2,M和N(即,標(biāo)記16的尺寸)是偶數(shù)值(例如,N=80以及M=40)。K、M和N的數(shù)值可以改變并且由系統(tǒng)設(shè)計員預(yù)定以適合特定的應(yīng)用。
在步驟630中,對應(yīng)于R標(biāo)記矩陣的圖像面積被用于預(yù)定的基準(zhǔn)標(biāo)志。例如,圖像的4個角可以被保留用于基準(zhǔn)標(biāo)志,在每個角,4×4像素(2×2矩陣)的面積可以設(shè)計用于基準(zhǔn)標(biāo)志?;鶞?zhǔn)標(biāo)志可以是白色的整個區(qū)域,只是在每個角有一個黑色的隔離位置用于與相鄰的矩陣相分離。上左角的基準(zhǔn)標(biāo)志例如除了上左像素為黑色之外可以是全白的。最好用于基準(zhǔn)標(biāo)志的圖案盡可能地穩(wěn)健(robust),以抵抗信道噪聲。由于信道514中的噪聲使得點陣可能模糊或者相對移動,該圖案保證黑色的基準(zhǔn)點不與相鄰的點混合,并且仍然在白色背景中清楚地突出??梢愿鶕?jù)在特定信道中的特定類型的噪聲而利用各種其它基準(zhǔn)圖案。
在步驟640中,通過利用一組預(yù)定L獨特映射(例如,半色調(diào)算法)根據(jù)在編碼中的對應(yīng)符號把剩余的標(biāo)記矩陣(即,P=M×N/(K×K)-R標(biāo)記矩陣)被轉(zhuǎn)換為K×K二進制條形碼矩陣。在一個例子中,具有能夠以光柵掃描排序的784個剩余圖像矩陣(根據(jù)N=80和M=40)。784個圖像矩陣比25組的31矩陣組略多(Q=25×31=775)。應(yīng)當(dāng)注意P要大于Q。每組被編碼為16個輸入位的兩組(1)一組用于BCH MS數(shù)位,(2)另一組用于BCH LS數(shù)位。因此,對于上述規(guī)定的參數(shù),條形碼可以編碼25×16×2=800位的信息。
圖7A示出根據(jù)本發(fā)明一個實施例的圖6中的編碼步驟640的一個實例。標(biāo)記16包括具有兩個不同灰度級25%和75%中一個灰度的多個像素。例如,像素704、706具有25%的灰度級,像素708具有75%的灰度級。
參照圖7B,對于在具有25%灰度級的標(biāo)記16中的這些像素,在第一行中的4個條形碼矩陣中的一個被根據(jù)要編碼的數(shù)據(jù)而形成。例如,如果要編碼的數(shù)據(jù)是“11”,像素704通過利用條形碼矩陣710形成。類似地,如果要編碼的數(shù)據(jù)是“01”,則像素706通過利用條形碼矩陣730形成。類似地,對于具有75%灰度級的標(biāo)記16中的那些像素,在第二行中的4個條形碼矩陣中的一個被根據(jù)要編碼的數(shù)據(jù)而形成的。例如,如果要編碼的數(shù)據(jù)是“00”,則通過利用條形碼矩陣720形成像素708。
盡管該例子采用兩個灰度級,25%和75%,但是應(yīng)當(dāng)注意本發(fā)明可以擴展為包括多個灰度級可以用于適合特定的應(yīng)用。另外,本發(fā)明可以擴展為不同顏色的像素。
另外,剩余的圖像矩陣可以用本領(lǐng)域內(nèi)所公知的交織方法來排序,以提供除了污漬、標(biāo)記或者系統(tǒng)打印機/掃描儀失真之外對脈沖型失真的穩(wěn)健性。K×K二進制條形碼矩陣然后被發(fā)送到打印機,用于打印到硬拷貝上,例如一張紙上。
在此由許多表現(xiàn)方法,從這些方法可以選擇L獨特映射。例如,當(dāng)半色調(diào)算法被選擇作為L獨特映射時,由許多種半色調(diào)方法以選擇。在一個實例中,采用固定半色調(diào)圖案的半色調(diào)方法。該方法規(guī)定該圖案為2色調(diào)的圖案。如果黑色為0,白色為1,亮色調(diào)b,以及暗色調(diào)d使得d=1-b。并且,L半色調(diào)算法對應(yīng)于L獨特K×K圖案矩陣,其中每個圖案矩陣在白色背景上包括b·K×K個黑點。但是,應(yīng)當(dāng)注意可以利用其它已知的半色調(diào)方法,例如聚合抖動,分散抖動(例如,藍噪聲),以及誤差擴散分法。當(dāng)采用誤差擴散算法時,可以從多種不同方法來選擇一種方法擴散該誤差。類似地,當(dāng)采用分散抖動算法時,可以從多種方法選擇一種方法來確定各種尺寸的抖動矩陣(也稱為網(wǎng)格)。
給定標(biāo)記矩陣和選擇的圖案矩陣,結(jié)果的條形碼矩陣在對應(yīng)于標(biāo)記矩陣中的亮像素的位置包含圖案矩陣值,否則包含其互補數(shù)值。
在該實施例中,該點最好表現(xiàn)為在12點/英寸(dpi)的方點。請注意較大點對信道的失真更加具有穩(wěn)健性,但是較小的點可以在相同的紙張面前上包含更多的信息。該點可以用高于120dpi的分辨率形成,只要能夠保證可接受的誤差彈性范圍。
應(yīng)當(dāng)注意該點的尺寸根據(jù)密度而變化。根據(jù)密度變化點的尺寸的例子是使得黑點比白點略大。應(yīng)當(dāng)注意點的尺寸被根據(jù)相鄰點而變化。點的尺寸根據(jù)相鄰點而變化的例子是使得少數(shù)有色點更大。
圖9示出用于通過本發(fā)明的編碼方法產(chǎn)生相應(yīng)的VSBC20的示例標(biāo)記16和消息18。
編碼的所獲得條形碼圖案48由掃描儀40所獲得并且導(dǎo)入解碼模塊24的圖像48是原始條形碼圖案的降級版本。這些降級是由于信道514造成的,即,打印和掃描處理,以及潛在的辦公類型的降級,例如復(fù)印、污漬、折疊、戳印和標(biāo)記。
圖8示出根據(jù)本發(fā)明一個實施例解碼視覺明顯的條形碼的方法。在步驟800中,所獲得圖像例如從掃描儀接收。在步驟810中,條形碼圖像位于所接收圖像中。例如所接收圖像可以是一整頁信息,其中條形碼圖像可以限于條形碼區(qū)域,其可以是整頁的一部分。在一個實施例中,條形碼大體上位于與所獲得圖像中的相同預(yù)定位置處,并且由白色像素所環(huán)繞。該預(yù)定位置在此被稱為條形碼區(qū)域。另外,條形碼可以置于一頁的變化位置上,作為背景或者作為該頁的一邊框。當(dāng)條形碼以這種方式放置時,條形碼定位處理可以用于在該頁上定位條形碼圖案。
在步驟820中,檢測基準(zhǔn)標(biāo)志。這些基準(zhǔn)標(biāo)志的結(jié)構(gòu)表示由信道所引入的整體信息的類型。在一個實施例中,基準(zhǔn)標(biāo)志通過利用之字形掃描而檢測。
圖10示出可以在步驟820中用于檢測基準(zhǔn)標(biāo)志的之字型掃描1000。之字形掃描1000在上左角1010開始。每次掃描的第一個暗像素1020(需要一個閾值)被檢測并且被認為是相應(yīng)的基準(zhǔn)像素的一部分。第一暗像素1020還被用作為用于該標(biāo)記(在圖5中的紅點)的定位像素。接著,用本領(lǐng)域內(nèi)所公知的填充算法來定位連接到這些定位像素的所有暗像素1030?;鶞?zhǔn)標(biāo)志的中央1040然后被計算為每個標(biāo)記的像素的平均值(重心)。之字形掃描的優(yōu)點是即使在存在嚴重的旋轉(zhuǎn)也可以確定的檢測出定位點。該掃描可以在條形碼的每個角處重復(fù)進行。
在步驟830中,觀察的變形失真(例如,平移、旋轉(zhuǎn)和仿射)被糾正。通過把坐標(biāo)系的中心設(shè)置為10個像素在上方,并且10個像素在上左基準(zhǔn)標(biāo)志的中部的左側(cè),則可以消除平移問題。然后確定上左基準(zhǔn)標(biāo)志的中心的相對旋轉(zhuǎn),并且把圖像相應(yīng)地回旋。
接著,確定傾斜因子,傾斜因子是下方標(biāo)記的中心的水平平移相對于上方標(biāo)記的中心的水平平移。如果檢測到傾斜,則對該圖像糾正所檢測的傾斜。這些變形處理可以用在計算機和圖像處理領(lǐng)域內(nèi)所公知的標(biāo)準(zhǔn)程序來實現(xiàn)。
在一個實施例中,采用雙線型插值,但是也可以使用其它內(nèi)插器。應(yīng)當(dāng)注意,可以利用單個仿射變換來糾正旋轉(zhuǎn)和傾斜。
四個基準(zhǔn)標(biāo)志能夠糾正8個自由度的整體變形。在該實施例中,有4個自由度(兩個是平移,一個旋轉(zhuǎn)以及一個傾斜)。
在步驟840中,所獲得條形碼圖像被分為多個子圖像,其可以排列在矩形矩陣中,每個子圖像對應(yīng)于單個條形碼矩陣。步驟830提供一個矩形圖像。在一個實施例中,分區(qū)所獲得的條形碼圖像的步驟包括測量該圖像以及把該圖像分為矩形子圖像的步驟。在這種情況下,M/=20,并且N/K=40,因此每個矩形子圖像具有20×40的大小。
在步驟850中,每個子圖像與L可能的條形碼矩陣組相比較(即,給出對應(yīng)圖像的L獨特映射(例如,半色調(diào)算法)的輸出。當(dāng)使用圖7B的半色調(diào)圖案時,需要標(biāo)記設(shè)計在每個標(biāo)記矩陣中具有恒定的亮度。4個矢量乘法可以用于每個子圖像。4個矢量是高斯分布,每個分布以子圖像的一個象限的中心為中心。對于暗的子圖像,圖7B的圖案對應(yīng)于具有最大值的象限,并且對于亮的子圖像,圖案對應(yīng)于具有最小值的象限。在圖像處理領(lǐng)域,該方法被稱為匹配濾波方法。
在步驟860中,最佳匹配被選擇來表示在{1,2,…,L}上的一系列P符號中的子圖像,請注意任何最大可能性類型的檢測器或者任何其它匹配的估算器被用于確定L可能映射(例如,半色調(diào))最可能產(chǎn)生相應(yīng)的子圖像。最好,對于一組子圖像執(zhí)行最佳匹配。
在步驟870中,最初用糾錯碼編碼的(最可能錯誤)序列被解碼,從而消除由于信道的降級而造成可能誤差。相應(yīng)的標(biāo)準(zhǔn)BCH錯誤糾正可以在適當(dāng)?shù)臄?shù)位重新排序之后執(zhí)行。
在步驟880中,該序列被解壓縮以給出原始信息。
本發(fā)明提供一種視覺明顯的條形碼圖像,從而增加其被接受程度并且用于商業(yè)環(huán)境甚至于家庭環(huán)境。而現(xiàn)有的條形碼限于非個人的商業(yè)和工業(yè)應(yīng)用,本發(fā)明的視覺明顯的條形碼圖案把在更多個人化的條形碼使用中所附帶的感情色彩從不情愿變?yōu)榍樵浮?br> 另外,不同的應(yīng)用可以容易的包含在本發(fā)明的視覺明顯的條形碼圖案及其不同變形(例如,不同的標(biāo)記或其它圖案),從而使得用戶能夠定制或個人化該條形碼圖案。
另外,本發(fā)明采用各種技術(shù),例如糾錯和基準(zhǔn)標(biāo)志的使用,使得本發(fā)明的視覺明顯的條形碼圖案更加能夠抵制硬拷貝處理信道中的缺陷和噪聲。例如,本發(fā)明的條形碼圖案能夠用普通的辦公復(fù)印機(例如,模擬和數(shù)字復(fù)印機)來連續(xù)復(fù)印。并且,本發(fā)明的條形碼圖案對普通的辦公文檔老化,例如折疊、污漬、標(biāo)記和戳印具有適應(yīng)性。
另外,本發(fā)明的視覺明顯的條形碼可以通過標(biāo)準(zhǔn)辦公設(shè)備,例如打印機、掃描儀、復(fù)印機和多功能設(shè)備來打印和讀取。
上文描述提供了本發(fā)明的多個實施例。應(yīng)當(dāng)注意各種可以對這些實施例做出變形和改變而不脫離所附權(quán)利要求中提出的本發(fā)明的較寬范圍。
權(quán)利要求
1.一種視覺明顯的條形碼系統(tǒng)(10)包括編碼模塊(14),用于接收消息(18)和標(biāo)記(16),并且根據(jù)該信息和標(biāo)記產(chǎn)生具有編碼的信息的視覺明顯的條形碼(20)。
2.根據(jù)權(quán)利要求1所述的視覺明顯的條形碼系統(tǒng),其中還包括連接到編碼模塊的打印引擎(34),用于接收視覺明顯的條形碼并且根據(jù)該條形碼形成視覺明顯的條形碼的硬拷貝。
3.根據(jù)權(quán)利要求2所述的視覺明顯的條形碼系統(tǒng),其特征在于打印引擎利用半色調(diào)算法來形成視覺明顯的條形碼的硬拷貝。
4.根據(jù)權(quán)利要求1所述的視覺明顯的條形碼系統(tǒng),其中還包括解碼模塊(24),用于接收視覺明顯的條形碼的所獲得版本(48),并且根據(jù)該版本恢復(fù)編碼于其中的信息(60)。
5.根據(jù)權(quán)利要求4所述的視覺明顯的條形碼系統(tǒng),其中還包括連接到解碼模塊的獲取引擎(44),用于接收具有視覺明顯的條形碼的硬拷貝,并且根據(jù)該硬拷貝產(chǎn)生視覺明顯的條形碼的所獲得版本。
6.根據(jù)權(quán)利要求4所述的條形碼系統(tǒng),其特征在于編碼模塊和解碼模塊包含在一個介質(zhì)中。
7.根據(jù)權(quán)利要求6所述的條形碼系統(tǒng),其特征在于該介質(zhì)以存儲器的形式包含在辦公機器中。
8.一種用于產(chǎn)生視覺明顯條形碼的方法,其中包括接收M×N像素圖像(600);接收具有多個字段的消息(600);把M×N像素圖像分為多個K×K圖像矩陣(620);以及通過利用預(yù)定組的L獨特映射中的一個把K×K圖像矩陣K×K條形碼矩陣,其中特定映射的選擇是根據(jù)信息的對應(yīng)字段選擇的(640)。
9.一種用于解碼視覺明顯的條形碼的方法,其中包括接收條形碼圖案(800);把條形碼分為多個子圖案(840);把每個子圖案與一組L可能的條形碼矩陣相比較(850);以及根據(jù)每個子圖像的匹配估計把一條信息解碼為在(1,2,…,L}上的一系列P符號的每個L可能的條形碼矩陣(860)。
全文摘要
一種用于產(chǎn)生和解碼視覺明顯的條形碼的條形碼系統(tǒng)(10)。本發(fā)明的條形碼系統(tǒng)(10)包括用于接收消息(18)和標(biāo)記(16)并且根據(jù)這些輸入產(chǎn)生視覺明顯的條形碼(20)的編碼模塊(14)。解碼模塊(24)還被提供用于接收視覺明顯的條形碼的后續(xù)獲得版本(48),該版本已經(jīng)在一般的文檔處理過程(例如,通過打印、掃描或復(fù)印處理中)失真,并且用于恢復(fù)由視覺明顯的條形碼所表示的信息(60)。
文檔編號G06K19/06GK1326165SQ0111202
公開日2001年12月12日 申請日期2001年3月26日 優(yōu)先權(quán)日2000年5月25日
發(fā)明者I·巴哈拉夫, C·赫爾利, Y·徐, J·殷, T·哈里森, D·沙克德, A·萊維, A·K·漢森, T·P·馬霍尼 申請人:惠普公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1