專利名稱:帶有可消除二維碼的記錄體的制作方法
本申請為07/851,505號申請的部分繼續(xù)申請,在此如同詳細提出一樣引用它作為參照。
本發(fā)明一般涉及記錄體及其制造系統(tǒng)與方法;更具體地涉及一種包含可消除或可擦除的機器可讀的數(shù)據(jù)表示的記錄體。
在某些類型的記錄體上使用編碼數(shù)據(jù)的優(yōu)點在于大量的信息可以放置在一個較小的區(qū)域中。此外,可對編碼信息加以保密并且只顯露給具有適當?shù)慕獯a裝置的人員。
本發(fā)明之前,僅有一種記錄體能夠最充分地利用放置在它們上面的編碼數(shù)據(jù)的裨益,在這種記錄體的整個使用期中,其數(shù)據(jù)并不改變;或者說在記錄體與這些編碼數(shù)據(jù)過期以前要經(jīng)過相當長的時間間隔。諸如標價簽、包裝標志或火車票之類的記錄體并不需要頻繁地更新數(shù)據(jù)。另一種選擇是將該記錄體制成大到足以容納額外的編碼數(shù)據(jù)表示來不時地補充信息。頻繁地更新編碼信息的必要性抵消了某些種類記錄體具有編碼數(shù)據(jù)的優(yōu)越性。例如,健康卡片與記錄最好包含編碼的數(shù)據(jù),因為它們需要大量的必要信息并且是要求保密的。每次購物以后最好用編碼數(shù)據(jù)將結余存款數(shù)印在記帳卡上。多次使用的入場券最好在券上包含已用過或尚未用過的次數(shù)的編碼數(shù)據(jù)。其中包括具有多次討論會的研討班入場券或者包含多次乘坐與演出的游樂場入場券。在上述所有場合下,頻繁地更新編碼信息地必要性或者導致過大而不方便的記錄體,或者頻繁地用具有更新的編碼數(shù)據(jù)的編碼數(shù)據(jù)的新的記錄體來代替舊的記錄體。
從而,本發(fā)明的一個目的為提供一種具有編碼數(shù)據(jù)的記錄體,其編碼數(shù)據(jù)可以更新而無須提供新的記錄體。
本發(fā)明的另一個目的為提供一種具有編碼數(shù)據(jù)的記錄體,該記錄體不需要額外的區(qū)域來增加更新的編碼數(shù)據(jù)。
本發(fā)明的又一個目的為提供制造記錄體的一個系統(tǒng)及其相關方法,每次要求改變該記錄體上的編碼數(shù)據(jù)時,不需要額外的區(qū)域或者制造一張新的記錄體。
本發(fā)明的其它目的與優(yōu)點一部分將在下面的說明中提及而一部分則是在說明中顯而易見的或者是可以通過實踐本發(fā)明而理解的。本發(fā)明的優(yōu)點可利用所附權利要求書中具體指明的手段與工具來實現(xiàn)與獲得。
為了達到這些目的并根據(jù)這里所體現(xiàn)與概括地描述的本發(fā)明的宗旨,按照本發(fā)明的一種記錄體包含一個位于記錄體上的印刷部分以及包含以一種可糾錯的機器可讀的格式編碼的可消除的信息的一個信息部分。
用于至少在其一個部分中包含文字的一種記錄體的按照本發(fā)明的一種打印機系統(tǒng),該系統(tǒng)包括用于接收待放置在該記錄體上的信息的輸入裝置;編碼裝置,耦合于該輸入裝置,用于以一種可糾錯的機器可讀的格式編碼所接收的信息;以及輸出裝置,耦合于該編碼裝置,包含消除記錄體上除所接受的信息以外的任何編碼信息的裝置,以及在該記錄體上可消除地放置編碼信息的裝置。
按照本發(fā)明的一種閱讀器系統(tǒng),用于具有包含以一種可糾錯的格式編碼的可消除的信息的信息區(qū)與文字的一種記錄體。該系統(tǒng)包括,從該信息區(qū)中抽取信息的閱讀裝置;糾錯裝置,耦合于該閱讀裝置,用于對可消除的信息執(zhí)行糾錯以糾正所抽取的信息與輸出中的一切錯誤。
結合在本說明書中并構成其一部分的附圖示出了本發(fā)明的一些實施例,并與一般性說明共同說明本發(fā)明的原理。
圖1A為根據(jù)本發(fā)明的一個實施例的與文字及照片聯(lián)合使用的帶有一種可擦除的二維條形碼的健康記錄體;
圖1B為根據(jù)本發(fā)明的第二個實施例的具有印刷在一個易于消除及涂覆的標簽上的編碼字的入場券。
圖1C為根據(jù)本發(fā)明的第二實施例的具有印刷在一個可取掉的標簽上的數(shù)據(jù)字的一張記帳卡;
圖2示出PDF417中一個碼字的例子;
圖3示出PDF417符號的整體結構;
圖4為列出PDF417中一個給定的安全級上糾錯碼字的數(shù)目的表;
圖5為印刷與閱讀包含一個圖象的碼的一種系統(tǒng)的方框圖;
圖5A為讀取、修改與重印一個記錄體或標簽的系統(tǒng)的方框圖;
圖5B為根據(jù)本發(fā)明的用于制造一個記錄體的打印機的示意圖;
圖5C為圖5B的打印機的操作流程圖;
圖6為圖5與5A中的系統(tǒng)的編碼裝置的立體圖;
圖7為圖5中的系統(tǒng)的識別裝置的立體圖;
圖7A示出以手槍形設備實現(xiàn)的用于讀取本發(fā)明的記錄體的一種條碼閱讀器;
圖8為數(shù)據(jù)輸入設備與閱讀器的立體圖,其中一個鍵可輸入來加密與解密數(shù)據(jù);
圖9為二維條形碼符號的低級解碼器所執(zhí)行的步驟的流程圖;
圖10為該低級解碼器在確定正在掃描的符號的尺寸與安全級時所執(zhí)行的步驟的流程圖;
圖11為該低級解碼器的一條掃描線上搜索一個起始或終止圖形時所執(zhí)行的步驟的流程圖;
圖12示出用于一個碼字的“t序列”的各種寬度度量;
圖13為該低級解碼器在將一條數(shù)據(jù)掃描線解碼成碼字值的一個矢量及它們的群集號時所執(zhí)行的步驟的流程圖;
圖14A、14B與14C示出一個碼字矢量的實例;
圖15為該低級解碼器從掃描線數(shù)據(jù)中解碼一個單個碼字值及其群集號時所執(zhí)行的步驟的流程圖;
圖16A與16B為該低級解碼器使用碼字矢量更新碼字矩陣時所執(zhí)行的步驟的流程圖。
現(xiàn)在詳細參照本發(fā)明的當前較佳實施例,它們的實例示出在附圖中。
在一個實施例中,記錄體上的編碼信息是用可擦除的印色印刷的。在圖1A中,健康卡16包含永久性地布置在其上的一張照片及人可讀的文字并帶有用可擦除的印色印刷在其上的一個二維代碼18。二維代碼的優(yōu)點在于a)它是緊湊的,b)它能包含大量數(shù)據(jù),c)它是可糾錯的,及d)它保持隱私性。該二維代碼,最好是下面要描述的PDF417碼,可包含涉及個人健康狀況的大量重要統(tǒng)計資料。在健康狀況改變時,便消除可擦除的印色,而在原先的二維代碼處代之以用可擦除的印色印刷的更新后的編碼信息。
代替可擦除的印色,編碼信息也可通過重印一個可取掉的標簽來更改。圖1B示出了包含一個標簽11的一張入場券17,在該標簽上具有包含與該記錄體相關聯(lián)的特權或者與持券人相關的編碼信息的一個二維圖形18。例如,如果入場券17是包含多次講座的研討會,標簽11中的信息可指明持券人容許參加哪些講座。當持券人參加一次講座時,便可讀取該入場券來確認持券人是否容許參加這一講座。然后,在該入場券上印刷并附上一個新標簽來反映持券人已參加過該講座這一事實。這一信息可用于純信息性目的或者用于防止多次授權參加同一講座(或展覽等)。
此外,如果入場券17是用于游樂場的,標簽11可包含該入場券可用于哪些娛樂項目的編碼數(shù)據(jù)。在進入一項娛樂項目時讀取該標簽,并在該入場券上印上一個新的標簽說明持券人不買一張新的入場券便不能再次參加這一娛樂項目。
上述實例只是示例性的,例如,帶有編碼信息的標簽的另一種用途便是用在圖1C中所示的記帳卡上??稍谟泿た?9上放置一個標簽21來指明代款限額。每次使用記帳卡時,讀取該標簽來判定這次購物是否在限額之內(nèi)。如果是在限額以內(nèi),便從該限額中減去這次購物的花費。并在該標簽上印上指明減少后的限額的新限額。帳單付清后,銀行會發(fā)給一張帶有新的消費限額的一個新標簽21。
在討論編碼與解碼諸如二維條形碼PDF417這樣的機器可讀圖形格式的數(shù)據(jù)的方法與裝置之前,對這種二維條形碼PDF417碼符號本身的結構有所了解是重要的。
每一個PDF417符號由一疊條形碼信息的行構成,符號中的各行包括一個起始圖形、若干稱作“碼字”的符號字符、以及一個終止圖形。一個碼字是編碼一個表示某些值、字母或其它符號或與它們相關聯(lián)的值的基本單位。各行中的碼字構成數(shù)據(jù)列。
PDF417符號的行數(shù)與數(shù)據(jù)列數(shù)都是可變的。符號至少具有三行但可多達九十行。同樣,每一行中的碼字或數(shù)據(jù)列數(shù)可在三至三十之間變化。
每一個PDF417碼字由17個模塊或單元構成。在每一個碼字中有四個條與四個間隔。單個的條或間隔的寬度可在一至六個模塊之間變化,但每一碼字的總寬度永遠是17個模塊。這樣,每一個碼字便可由一個八位的序列來定義,該序列表示碼字中四組相間的條與間隔的寬度。這稱作該碼字的“X序列”并可以用序列X0,X1,…X7來表示。例如,對于一個X序列“51111125”,第一個元素為5個模塊寬,跟隨著五個一個模塊寬的元素、一個兩個模塊寬的元素,而最后一個元素為五個模塊寬,這一實例示出在圖2中。
可能出現(xiàn)的碼字的集合進一步劃分成三個稱作“群集”的互斥的子集合。在PDF417符號中,每一行只用這三個群集中之一來編碼數(shù)據(jù),并且每一群集順序地每三行重復一次。由于任何相鄰的兩行使用不同的群集,解碼器便能在同一條掃描線中區(qū)分來自不同的行的碼字。
一個碼字的群集號可使用下式從其X序列中確定群集號=(X0-X2+X4-X6)mod 9其中“mod 9”為用9除后的余數(shù)。參見圖2中的碼字,其群集號可計算如下群集號=(5-1+1-2)mod9=3為了使錯誤概率為最小,雖然在數(shù)學上可能有九種群集號,但PDF417只采用了三個群集。這樣,每一行只采用三個群集0,3或6之一來編碼數(shù)據(jù),同一群集順序地每三行重復一次。例如,行0的碼字采用群集0,行1的碼字采用群集3,而行2則采用群集6,等等??傊?,群集號可從行號中確定如下群集號=((行號))mod3)·3。
在PDF417中定義3從0至928的929個碼字值。每一群集從不同的條-間隔圖形表示這929個可資利用的值,因此一個群集不會與另一群集混淆。
圖3為展示一個PDF417符號的整體結構的方框圖。該符號的每一行包含一個起始圖形、一個左端行標志碼字Li、數(shù)據(jù)碼字di或錯誤檢測/糾正碼字Ci、一個右端行標志碼字Ri及一個終止圖形。一行中最小的碼字數(shù)目為3,其中包括左端行標志碼字、至少一個數(shù)據(jù)碼字及右端行標志碼字。下面要進一步講座的右端與左端行標志碼字協(xié)助對該符號的結構進行同步。
起始與終止圖形標識符號的各行的起點與終點。PDF417采用唯一的起始與終止圖形。起始圖形,即各行的左側,具用唯一的圖形或X序列“81111113”。終止圖形,即各行的右側,具有唯一的X序列“711311121”。
每一個符號包含一個指明該符號中碼字總數(shù)的碼字(行0中的第一個數(shù)據(jù)碼字),以及至少兩個糾錯碼字C0與C1。這兩個糾錯碼字一起構成一個兩個碼字長的檢驗和。
一個PDF417符號還能編碼具有糾錯能力的數(shù)據(jù)。稱作“安全級”的糾錯能力的級別是由用戶選定的并具有0到8的范圍。例如,這意味著在級6上,總數(shù)為126個碼字可從丟失或受到破壞而仍能讀出與解碼整個符號。圖4為示出PDF417符號的安全級與糾錯碼字Ci的個數(shù)之間的關系的一張表。
除了糾正丟失或受到破壞的數(shù)據(jù)(稱作“疑符”)之外,PDF417還能復原碼字的錯誤解碼。由于它需要兩個碼字來復原一個錯誤解碼,一個用來檢測錯誤、一個用來糾正錯誤,一個給定的安全級只能支持它所能具有的未解碼的碼字的一半數(shù)目的錯誤解碼。
在PDF417格式的信息覆蓋在部分地擦除了編碼字上時,這一糾錯特性尤其有用。這種部分擦除可能導致未擦除的代碼部分使一部分編碼信息產(chǎn)生畸變。如果出現(xiàn)了這一情況,可用PDF417二維條形碼來糾正錯誤。
PDF417符號中的行標志碼字包含若干關鍵成分行號、行數(shù)、數(shù)據(jù)列數(shù)及安全級。但并不是每一個行標志包含有的成分。這些信息是分散在若干行中的,并且該圖每三行重復自己一次。在行標志碼字中編碼這些信息的圖形可示出如下行0L0(行號,行數(shù)) R0(行號,列數(shù))行1L1(行號,安全級) R1(行號,行數(shù))行2L2(行號,列數(shù)) R2(行號,安全級)行3L3(行號,行數(shù)) R3(行號,列數(shù))等等。
換言之,第一行0的左端行標志碼字L0包含行號(0)及該符號中的總行數(shù)。而行0的右端行標志碼字R0則包含行號(0)及該符號中的數(shù)據(jù)列的數(shù)目,以此類推。
將數(shù)據(jù)編碼或一個PDF417符號是典型的兩步過程。首先,將數(shù)據(jù)轉換成表示該數(shù)據(jù)的0到928的碼字值。這稱作“高級編碼”。然后將這些值用特定的條-間隔圖形物理地表示,這稱作“低級編碼”。
在07/851,505號美國參照申請中更全面地討論編碼器與解碼器。
現(xiàn)在參見附圖中圖5-7,圖5為從機器可讀的圖形圖象格式在一個記錄體上表示與識別數(shù)據(jù)的系統(tǒng)10的方框圖。系統(tǒng)10包括一個編碼裝置(總體上從參照數(shù)字12表示)。以及一個識別裝置(總體上以參照數(shù)字14表示)。編碼裝置12生產(chǎn)一個記錄體16(見圖1A),諸如一張健康卡、一張入場券17(見圖1B)或一張記帳卡19(見圖1C);其中每一張上包含文字與/或一張照片,與各記錄體的文字相關聯(lián)的可能有以一種二維圖形編碼的數(shù)據(jù)。識別裝置14識別該二維圖形以生成表示編碼在各圖形中的數(shù)據(jù)的輸出信號。
輸入裝置22將待編碼成記錄體16、17或19上的二維圖形中的數(shù)據(jù)輸入到編碼裝置12。輸入裝置22輸入的數(shù)據(jù)中包含待編碼在二維圖形18中的數(shù)據(jù)處理裝置24將該數(shù)據(jù)組編碼成一個二維圖形并生成控制將記號傳送到記錄體16、17或19上(如在這一情況中)的傳送驅動信號。雖然為了簡化說明,這里我們將不時地參照記錄體16,但應該理解的是,記錄體17、19或者任何其它種類的記錄體都可以受到上述處理。傳送裝置26檢測機器可讀的數(shù)據(jù)的存在并根據(jù)一個第一驅動信號將一種消隱液抹在記錄體上包含檢測到的表示的區(qū)域上來消除在記錄體或標簽上檢測到的數(shù)據(jù)。然后,傳送裝置26啟動一臺吹風機在一段預定的時間內(nèi)干燥所抹的消隱液。傳送裝置包括一臺打印機38,該打印機傳送一種對消隱液快速反應的與快干的傳統(tǒng)印色。需要時,也可將人可讀的數(shù)據(jù)傳關到該記錄體上。處理裝置24生成另一但傳送信號用于將人可讀的數(shù)據(jù)傳送到該記錄體上。所有待編碼的數(shù)據(jù)中的一部分及人可讀的數(shù)據(jù)可從處理裝置24的一個存儲器或其它計算機文件中傳送而不足用裝置22輸入。
識別裝置14包括將記錄體16、17或19上的圖象轉換成表示該記號的電信號的轉換裝置28。解碼裝置30將電信號解碼成32處指出的解碼器輸出信號,這些輸出信號表示編碼在二維圖形中的數(shù)據(jù)。
圖6為編碼裝置12的一個實施例的透視圖。圖6的實施例只是為了示例的目的,并不意在限制本發(fā)明的范圍。在本實施例中,圖5的輸入裝置22是以將字母數(shù)字型及圖形數(shù)據(jù)輸入到編碼裝置12的鍵盤32的形式示出的。輸入裝置22可采用鍵盤以外的形式,諸如直接從文件上掃描輸入到編碼裝置12中的數(shù)據(jù)的一種光學掃描裝置。
再參見圖6,圖5的處理裝置24是以一臺處理器及顯示器單元34的形式示出的。鍵盤32輸入的數(shù)據(jù)被傳輸給該處理器與顯示器單元34供存儲與處理之用。除了輸入數(shù)據(jù),鍵盤32還可用于輸入啟動處理器單元34的操作的控制命令。
鍵盤32輸入的數(shù)據(jù)最好顯示在顯示屏36上,并在輸入一條適當?shù)目刂泼顣r將它們存儲在存儲器中。待編碼成圖形18的數(shù)據(jù)存儲在處理器34中的一個第一存儲器中,而要以人可讀的格式傳送的數(shù)據(jù)(如果有的話)則存儲在一個第二存儲器中。兩種數(shù)據(jù)也可以存儲在一個單一的存儲器的獨立部分中。從鍵盤32輸入適當?shù)目刂泼顣r,處理器單元34將第一存儲器中的數(shù)據(jù)編碼成一個二維圖形,例如11,18或21,并生成表示存儲在第一存儲器中的數(shù)據(jù)的第一傳送驅動信號。處理器單元34還生成表示存儲在第二存儲器中的數(shù)據(jù)的第二傳送驅動信號。
處理器單元34在圖6中是示出為耦合于一臺打印機38的,該打印機是圖5的傳送裝置26的一種形式。對第一傳送驅動信號作出響應,打印機38在插入其中的一個記錄體上檢測是否存在機器可讀的數(shù)據(jù)。如果未檢測到機器可讀的數(shù)據(jù),則第一傳送驅動信號使打印機38用可擦除的印色將該二維圖形的一個圖象傳送到一個記錄體上或者位于該記錄體的編碼區(qū)域中的一個可取掉的標簽上,并對第二傳送驅動信號作出響應將第二組數(shù)據(jù)以人可讀的格式印在該記錄體上。例如,對于圖1A中的實施例,如果檢測到機器可讀的數(shù)據(jù),則在插入打印機中的記錄體上涂上消隱液來消除記錄體上檢測到的數(shù)據(jù)。檢測到的數(shù)據(jù)一經(jīng)消除,便啟動一臺吹風機來吹干相應的記錄體區(qū)域為印刷新的編碼數(shù)據(jù)作好準備,然后用可消除的印色將該二維圖形印在已消除了的部分中為了下一次更新編碼數(shù)據(jù)作準備。
現(xiàn)在參見圖7,識別裝置14包括一個讀卡機40,后者又包含圖5的轉換裝置28與解碼裝置30,使用與采用的特定數(shù)據(jù)編碼技術相對應的適當轉換裝置是本發(fā)明所仔細考慮的。
轉換裝置28可以是諸如317,433及317,533號美國專利申請中所公開的那種條形碼閱讀器,現(xiàn)將它們結合在這里作為參照,它們能夠讀出打印機38所用的印色。上述專利申請中公開的閱讀器為開放系統(tǒng)設備,它們是設計成讀取光學編碼的二維條形碼并將圖形反射的光轉換成表示該圖形記號的電信號的。
參見圖7A,轉換裝置的一個條形碼閱讀器的典型示例性實施例是以一種手槍形設備100實現(xiàn)的,它具有一個手槍柄型的把102。采用了一個手動式扳機開關104使用戶能夠啟動光束117與檢測器電路,這通常是在用戶將該設備放置在指向要讀取的符號的位置上以后才扣動扳機的。一個重量輕的塑料外殼166中包含一個激光源108、檢測器110、光學與信號處理電路及CPU112、以及一個電源或蓄電池114。在外殼166的前端上的一個透光窗口116容許向外的光束117射出及入射的反射光122進入。閱讀器100的設計是使用戶在離開符號(即不接觸符號或移動通過符號)的一個位置上將閱讀器瞄準在一個條碼符號上。通常,這種手持式條形碼閱讀器是規(guī)定為在數(shù)英寸或更遠的范圍內(nèi)工作的。
閱讀器100也可作為一臺便攜式計算機終端工作,并且在這種實施例中包括一個鍵盤與一臺顯示器,諸如在前面提到的4,409,470號美國專利中所描述的。
圖7A中還描繪了可使用一個適當?shù)耐哥R124(或多透鏡系統(tǒng))將掃描光束聚焦在一個適當?shù)膮⒄掌矫嫔系囊粋€掃描光斑上。諸如半導體激光二極管這樣的光源108將一個光束引導到透鏡124的軸上,并使光束通過一個部分鍍銀的反射鏡128及其它必要的透鏡或束成形結構。該光束被一面擺動的反射鏡130所反射,后者耦合在一臺掃描電機132上,該電機在扣動扳機104時被加電。如果光源108產(chǎn)生的光是勉強可見的,則可在該光學系統(tǒng)中加入一束瞄準光。瞄準光(如果需要)生成一個可見的光斑,該光斑可以是固定不動的,也可以是象激光束一樣地掃描的;用戶在扣動扳機以前利用這一可見光束將閱讀器單元瞄準在符號上。
返回到圖5A,解碼裝置30將電信號解碼或表示編碼在記錄體16上的數(shù)據(jù)的輸出信號。解碼器輸出信號從識別單元40輸出到各種輸出裝置42。圖7描繪了輸出設備的兩個實例,一個是顯示器單元44另一個是打印機46。顯示器單元44可以是任何適當?shù)娘@示器,諸如液晶顯示器或CRT(陽極射線管)。打印機46可從是任何打印設備,諸如點陣打印機、激光打印機等。
本系統(tǒng)最大限度地利用可獲得的空間來加密數(shù)據(jù)。對于一個二維條形碼符號,編碼數(shù)據(jù)的密度為在大約5英寸×1/2英寸的空間中可編碼至少約1600個字符。除了緊湊以外,本系統(tǒng)還在信息傳輸中提供高安全性。
雖然在圖5至7A中所示出的編碼裝置12與識別裝置14為分開的設備,它們也可以放在同一設備中。這在讀取與修改一個體時尤其有用。在這些情況中,將一個單一的單元用于兩種目的是有效的。
圖5A示出了與諸如16、17或19這樣的記錄體一起使用的一個系統(tǒng)10'的方框圖。系統(tǒng)10'中包括與圖5至7中所示的系統(tǒng)10的元件相對的元件。具體地說,系統(tǒng)10'包括一個轉換裝置28,該裝置將來自一個記錄體(諸如16、17或19)的編碼數(shù)據(jù)轉換成電信號,以及一個解碼這些信號的解碼裝置30。然后,處理裝置24讀取這些經(jīng)過解碼的信號并按照一定的準則令傳送裝置26印刷適當?shù)妮敵鲂盘枌⒂涗涹w16、17、19修改成記錄體16'、17'、19'。
可用多種方法確定新的信息。例如,如果該記錄體是一張記帳卡19,處理裝置24可以是一臺大型計算機或者一個計算機網(wǎng)絡,它掌握著貸款限額。
處理裝置24最好還包括用于定位記錄體16、17、19的選定的區(qū)域來讀取印刷物的對準裝置25。對準裝置25對標識各行及這些行中的特定的字的字段進行解釋。雖然對準裝置25是作為處理裝置24的一個部分示出的,但它也可從是轉換裝置28或者傳送裝置26兩者之一中的一臺微處理器。
數(shù)據(jù)也可以使用一種鍵控加密算法加以編碼,這種算法只能用一個加密鍵來進行訪問。如圖8所示,數(shù)據(jù)輸入裝置47中包含該鍵控算法,并在輸入鍵49時,數(shù)據(jù)便以一種獨特的配置編碼成一個二維圖形。這一獨特的配置只能被具有該獨特的算法的閱讀器48讀取,并且只當在閱讀器上輸入鍵49才能讀取。從而,使用鍵控加密實施例可以提供高度的的安全性。
本發(fā)明的另一個特征是使記錄體上的圖象成為一個“數(shù)字式的簽名”,它是以加密的格式嵌入PDF417條碼中的。建立這一二維數(shù)字信號的打印機這時使用一種只能用一個加密鍵訪問的鍵控加密算法。使用一個具有該鍵控算法的鍵盤或其它數(shù)據(jù)輸入裝置,并且在輸入該鍵時,在一個鍵盤上作為明文輸入的數(shù)據(jù)便將以一種獨特的解碼配置編碼成二維圖形。這一獨特的圖形或代碼配置只能被具有該算法的閱讀器解碼與讀取,且僅當在該閱讀器上輸入這一相同的鍵時才能解碼與讀取。這便為需要這種安全性的應用提供了高度的安全性。
將一個記錄體16、17、19送入轉換裝置28,在該裝置中讀取編碼數(shù)據(jù),并在30處解碼;并最好加以顯示。新的數(shù)據(jù)是在22處輸入的,它們修改或者全面地改變分別在28與30處讀取與解碼的數(shù)據(jù)。然后,新編碼的數(shù)據(jù)便在24處被處理;并由傳送裝置26傳送,傳送裝置26包括一臺諸如38'的打印機,該打印機可以將代碼直接涂覆在記錄體上或者涂在可取掉地貼在記錄體上的標簽上。
圖5B示出一臺打印機38',它是用常用的RAM(隨機存取儲器)式打印機38'改裝成示出的形式的。打印機38'包括一個基座部分314,該基座部分具有支承記錄體16的一個表面,該記錄體是眾一塊低導板320送入打印機的。
在打印機的入口處有一個具有吸附表面324的滾筒322,該表面將來自容器326的消隱液涂覆在記錄體16上。滾筒323可轉動地連接在容器326上,而后者又可擺動地連接在基座314上。彈簧328順射針方向將容器326偏轉到與電磁線圈330接合的位置上并使?jié)L筒324離開記錄體16。當傳感器332在記錄體16中檢測到機器可讀的數(shù)據(jù)時,電磁線圈330被激勵,而在送入記錄體時將容器與滾筒322轉動到消除位置上。在文件16繼續(xù)向前送向一個印刷滾筒336的途中,一臺風扇334被啟動來快速吹干記錄體的消除區(qū)域,滾筒336是可轉動地連接在基座314上的,它以機器可讀的數(shù)據(jù)格式將可消除的印色涂覆在記錄體16上。
存在著許多已知的可消除的印色,例如在4,097,290號美國專利中所提及的。這些可消除的印色可用含有脫色溶液的眾所周知的化學制品以公知的方法消除。雖然這里具體示出與描述的是應用消隱液;也可將帶有一個平坦的擦試表面的幾何形狀的合成橡膠部件放置在與記錄體的代碼相接觸的位置上并使之相對于記錄體振動來機械地與摩擦地擦除該代碼。此外,對于某些應用,還可將代碼放在一個張可取下的膠粘標簽上,從而在將其放入打印機之前可將整個標簽取下而代之以另一個空白的標簽,或者可用能擦除的印色來印刷一個可取掉的膠粘標簽。
圖5C為示出在一個記錄體或標簽上用可消除的印色印刷新的編碼信息時事件序列的流程圖。響應一個某一驅動信號,在步驟402啟動記錄體輸送將記錄體從一個槽或低導板慢速移動到打印機中。在判定步驟404中打印機判定記錄體上有無編碼數(shù)據(jù)。如果未檢測到數(shù)據(jù),則在步驟406加速傳遞記錄體的電機將該記錄體快速定位以便在步驟408印刷條形碼。如果檢測到了數(shù)據(jù),并在判定框410確定該數(shù)據(jù)是在一張標簽上;則在判定框411中判定該標簽是否要消除。如果在判定步驟410確定數(shù)據(jù)是印刷在一張可取掉的標簽上的并且該數(shù)據(jù)不需要消除,則在步驟406加速記錄體的輸送并在步驟408進行印刷。然而,如果在判定步驟410判定數(shù)據(jù)是直接印刷在記錄體上的,則在步驟412通過激勵電磁絲圈330來啟動消除滾筒324將消隱液涂覆在印刷的數(shù)據(jù)上。當在步驟414中不再檢測到數(shù)據(jù)時表明消除已經(jīng)完成,便在步驟416啟動吹風機334來加速干燥該記錄體。在步驟416中啟動吹風機后,經(jīng)過步驟420所示的幾秒鐘的延時以在步驟418關掉吹風機。然后在步驟408中在該記錄體的消除部分上印上一個二維條形碼。印刷以后在步驟422停止輸送記錄體;并可從打印機中取出帶有新的編碼數(shù)據(jù)的記錄體。
返到圖5A,一個低級解碼器可以包括在運行在與主計算機分開的微機上的一個計算機程序中。該低級解碼器最好是通過一個諸如RS-232這樣的標準接口連接到主計算機的,便于將解碼后的碼字值傳輸給該主計算機。此外,該低級解碼器可以全部實現(xiàn)在硬件中,或者在硬件與軟件的組合中,它可以在物理上位于掃描器本身或者主計算機中。
一個高級解碼器將來自低級解碼器的碼字值矩陣解碼成可用的數(shù)據(jù),該高級解碼器可以作為一個運行在主計算機上的獨立計算機程序實現(xiàn)。例如,PDF417具有三種規(guī)定的模式及九種保留模式。規(guī)定的模式為Binary(二進制)、EXC(交換碼)與Numeric(數(shù)字)。在Binary模式中,每一個碼字能編碼1.2個字節(jié)。在EXC模式中,字母數(shù)字型數(shù)據(jù)可以以雙密度(即每一個碼字兩個字符)編碼,而在Numeric模式中,數(shù)值型數(shù)據(jù)幾乎可以以三倍的密度壓縮。因此,主計算機112中的高級解碼器根據(jù)模式進一步解碼來自低級解碼器114的碼字值(0-928)以獲取包含在符號中的實際數(shù)據(jù)。這時,來自高級解碼器的解碼后的數(shù)據(jù)便可供也在主計算機112上運行的用戶應用程序使用了。
圖9為展示低級解碼器將一個二維條形碼符號(諸如PDF417)解碼成一個碼字值的矩陣時的的操作序列的流程圖。序列中的各步驟是在存儲在處理器34中并由其執(zhí)行的一個軟件計算機程序中實施的。
圖9中的第一步150中,低級解碼器初始化掃描器接口并啟動對符號的掃描。在這一步驟中所執(zhí)行的實際功能取決于掃描器的類型關包含各種與掃描器相關的例程來初始化掃描器接口及啟動掃描。
在步驟152中,低級解碼器試圖確定正在掃描的符號的尺寸及安全級。具體地說,這一步驟從左端與右端行標志碼字中確定該符號的行數(shù)、數(shù)據(jù)列數(shù)及安全級。然后用這些尺寸來初始化用于解碼該符號的一個二維碼字矩陣及其它有關參數(shù)。該矩陣中的每一個位置上包括一個碼字值及一個關聯(lián)的置信度權值。它們起初是設置為零或或空值的。如果確定不了該符號的尺寸及安全級,則中止掃描。這一步驟將在下面結合圖10更詳細地討論。
繼續(xù)參見圖9,步驟154是一個控制循環(huán)的第一步,在這一循環(huán)中重復掃描二維條碼符號的行并將碼字值填入碼字矩陣中。重復執(zhí)行該控制循環(huán)中的步驟直到矩陣中剩下的未能成功地解碼的碼字的數(shù)目小到可以用該符號的內(nèi)在的糾錯能力確定矩陣的其余部分為止。從而,如果未能成功地解碼的碼字的數(shù)目小于該符號根據(jù)其安全級的糾錯能力(見圖4),則在步驟154試圖利用糾錯碼字來糾正該矩陣。如果嘗試的糾錯是成功的,則在步驟156退出該控制循環(huán)并在步驟158結束掃描。否則,如果糾錯嘗試失敗,則執(zhí)行下面的步驟160-164試行解碼更多的碼字來填入該矩陣中。
首先,步驟160在來自存儲器的緩沖區(qū)中的一條數(shù)據(jù)掃描線中搜索一個起始或終止圖形。如果找到了一個起始或者終止圖形。則該低級解碼器在步驟162中試圖在該掃描線中解碼盡可能多的碼字。具體地說,將該數(shù)據(jù)掃描線剖析成單個的碼字,并將它們的值與群集號放置在準備結合進碼字矩陣中的一個碼字矢量中。下面將分別結合圖11與13更詳細地討論步驟160與162。
在步驟164中對步驟162生成的碼字矢量進行分析,并用它來更新碼字矩陣。具體地,步驟164根據(jù)每一個碼字的最接近的相鄰碼字是否也能被解碼來賦給該碼字值一個置信度權值。并且根據(jù)左端或右端行標志碼字及該碼字的對應群集號賦給每一個碼字值行號。如果掃描線越過一條行界線,可用碼字的群集號來確定每一單個碼字的正確行號。例如,如果一條解碼后的掃描線具有行號為2的一個左端行標志,而隨后的碼字的群集號則為6,0,0,3,則將這些碼字對應地放置在下列位置中(行2,列1);(行3,列2);(行3,列3);及(行4,列4)。這樣,在一條單一的數(shù)據(jù)掃描線中可包含來自一行以上的碼字,然后可將它們歸入碼字矩陣中的適當位置中。下面將結合圖16A與16B更詳細地討論這一步驟。
圖10為更詳細地展示上面圖9的步驟152中所涉及的確定一個符號的尺寸及安全級的步驟序列的流程圖。在圖10的第一步驟170中,低級解碼器在來自存儲器的緩沖區(qū)的一條數(shù)據(jù)掃描線中搜索一個起始或終止圖形。這一步驟與圖9中的步驟160相同并將在下面結合圖11更詳細地討論。
然后,步驟172解碼緊鄰在上一步驟中找到的起始或終止圖形的第一個碼字。如圖3所示,這一碼字將是包含行號以及符號的行數(shù)、數(shù)據(jù)列數(shù)、安全級三者之一的一個左端或者右端行標志碼字。如果起始與終止圖形都找到了,則對左端與右端行標志都進行解碼。解碼單個碼字的步驟序列在下面結合圖15進一步討論。
在圖10中繼續(xù)往下,在步驟174中從上一步驟172中所確定的碼字值及群集號中抽取編碼在該行標志中的特定尺寸或它全級。例如,對于群集號為0的一個左端行標志碼字,則從該碼字值中抽取行數(shù)。
賦給每一尺寸與安全級的置信度權值是初始設置為0的。步驟176-184以下述方法更新在上一步驟中抽取的尺寸或安全級的當前值與置信度權值。首先,將這一特定的參數(shù)(比如行數(shù))與在前面解碼中得到的行數(shù)的當前值進行比較。如果行數(shù)的當前值與新近解碼的值相等(如在步驟176中所判定的),則在步驟178中提高賦給該行數(shù)的置信度權值。然而如果當前值與新近解碼的值不等,則在步驟180中降低該置信度權值。如果在步驟182中判定賦給該特定參數(shù)的置信度權值降低到了零以下,則在步驟184中用新近解碼的值取代當前值并賦給該參數(shù)一個新的最小權值。
步驟186判定所有三個參數(shù),即行數(shù)、數(shù)據(jù)列數(shù)與安全級,的置信度權值都超過一個予定的閾值。如果是這樣,則在步驟188中根據(jù)行數(shù)與列數(shù)的當前值初始化二維碼字矩陣。同時可以按照圖4中的表從安全級的當前值中確定可糾正的錯誤數(shù)目。如果在步驟186中判定并非所有三個置信度權值都超過該閾值,則程序控制返回到步驟170,在一條新的線中開始搜索起始與終止圖形。重復執(zhí)行步驟170-184直到所有三個參數(shù)都成功地以高置信度解碼為止。
圖11為更詳細地展示在上面圖9的步驟160與圖10步驟170中所涉及的在一條數(shù)據(jù)掃描線中搜索一個起始或終止圖形的步驟序列的流程圖。簡單地說,搜索從存儲器的緩沖區(qū)得到的單一數(shù)據(jù)掃描線的第一個位置開始,并在順序的位置上重復進行直到找到一個匹配的圖形或者超過了該掃描線的長度為止。當找到一個匹配的圖形時,則為解碼鄰接的碼字而在緊隨該圖形之前或之后的一個位置上設置一個下標。
如圖11所示,第一步驟200將指向掃描線中的數(shù)據(jù)元素的位置的一個下標設置為“1”,指示該掃描線的第一個數(shù)據(jù)元素或整數(shù)值。這一下標是為了與起始與終止圖形進行比較而用于標識該掃描線中每一個八個元素的序列的第一個元素的。
步驟202是在掃描中從左至右搜索一個起始或終止圖形的一個迭代循環(huán)的第一個步驟。在這一步驟中,如果當前下標小于該掃描線的長度,則執(zhí)行剩下的步驟繼續(xù)搜索。然而,一旦該下標超過了掃描線的長度,便退出這一循環(huán)并返回一個指示說明搜索失敗并未找到一個起始或終止圖形。
低級解碼器不是使用碼字的X序列而是用“邊到相似邊”測量來補償印刷符號時出現(xiàn)的印色擴散以解碼一個符號的。這樣,在步驟204中,從該下標所指定的位置開始,將相連的兩個整數(shù)值逐對相加而從掃描行中得到一個原始的“t序列”。具體地說,對應于圖12所示的七個寬度測量值t1,t2,…t7的原始t序列可以通過將表示條與間隔的寬度的整數(shù)值X0,X1…t7中相連的兩個逐對相加而計算如下t1=X0+X1t2=X1+X2t3=X2+X3等等在步驟204中還通過求出八個整數(shù)值X0+X1+X7的和計算出整個碼字的寬度W。
例如,對于圖12中的碼字,表示條與間隔的寬度的來自掃描線的整數(shù)值序列可能是諸如43,19,21,19,22,18,103,96。這時原始t序列t1,t2,…t7為62,40,40,41,40,121,199而寬度W則為341。
在圖11的步驟206中,對步驟204中得出的原始t序列進行正則化并四舍五入成整數(shù)值。具體地說,首先將該碼字的寬度W除以每一個碼字的單元的總數(shù)求出該碼字的“模塊”或“單元”的值。在一個PDF417符號中,每一碼字為17個單元,所以將寬度W除以17求出碼字的單元。這樣,對于圖12中的實例,單元為(341/17)=20.0。然后將原始t序列的每一個值除以該單元并四舍五入成一個整數(shù)來正則化該t序列。圖12中的碼字的正則化t序列為3,2,2,2,2,6,10。
然后,在步驟208中將正則化的t序列與該碼的起始與終止圖形的t序列進行比較。如果掃描器是從左到右及從右到左兩個方向上進行掃描的,則該t序列必須在它們的正反兩個方向上與起始及終止圖形進行比較。
如果在步驟210中找到一個匹配圖形,則在步驟214中將下標設置為掃描線中緊隨一個起始圖形后面的一個位置或緊靠在一個終止圖形前面的一個位置。如果當前t序列既不匹配起始圖形又不配匹終止圖形,則在步驟212中將下標增加一并重復執(zhí)行步驟202至210直到找到一個匹配圖形或者超過了掃描線的長度為止。
圖13為更詳細地展示上面圖9的步驟162中所涉及的將一條數(shù)據(jù)掃描線解碼成一個碼字矢量及它們的群集的步驟序列的流程圖。從掃描線中解碼單個碼字值及群集號時,低級解碼器從起始或終止圖形開始解碼并解碼盡可能多的碼字。對于不能成功地解碼的那些碼字,則將碼字矢量中的碼字值設置為“BAD”(“壞”)。
在完成了圖13中所示的步驟序列時,在對應于成功地解碼的碼字的相應結果上,該碼字矢量將包含一定的碼字值與群集號。圖14A示出了碼字矢量的一個例子,其中十列中的八列上的碼字是成功地解碼的。列1與列10中的碼字值分別對應于行2(L2)中的左端行標志碼字與行1(R1)中的右端行標志碼字。列5與7中的碼字不能成功地解碼,所以在碼字矢量的這兩個位置上中用記號“BAD”指明。
返回到圖13的第一步驟220,將可以解碼的碼字數(shù)目的上限(“cwlimit”)設置為等于該碼字矩陣的列數(shù)。如果成功地解碼了這一數(shù)目的碼字,顯然當前掃描線的解碼過程業(yè)已完成。
如果掃描器是在從左至右及從右至左兩個方向上掃描的,則在步驟222中判定掃描方向。如在步驟222中判定這一次特定的掃描是從左至右的,則在步驟224中將第一個碼字的列號設置為“1”,并將每解碼一個相繼的碼字向增加的數(shù)值(“incr”)設置成“+1”。反之,若掃描是從右至左的,則在步驟226中,掃描線的第一個碼字的列號將為該碼字矩陣的最后一列,而增量值則設置為“-1”。
步驟228是一個控制循環(huán)的第一個步驟,在該循環(huán)中從數(shù)據(jù)掃描線中解碼單個的碼字值及其群集號。在步驟228中,檢測碼字限值是否仍大于零。如果不是,則該掃描線中的所有碼字都已解碼而退出該循環(huán)。
否則,步驟230從掃描線中得出下一個碼字值及其群集號。這一步驟將在下面結合圖15更詳細地討論。
如果在步驟232中判定上一步驟中解碼的碼字是一個合法的碼字,則在步驟234中將該碼字值及其群集號保存在碼字矢量中對應于該碼字的列的位置上。這樣放置在碼字矢量中碼字值已準備就緒加入到碼字矩陣中了。
然而,如果在步驟230中解碼的碼字不是一個合法的碼字,則在步驟236中將碼字矢量中對應于當前列的碼字值設置為“BAD”以指明這一碼字未能成功地解碼。一個“BAD”碼字最有可能出現(xiàn)在掃描線在該碼字中間跨越兩行間的界線時。
最后,在步驟238中,根據(jù)掃描的方向增加或者減小當前列號,并將碼字限值減少一。只要還想解碼該掃描線中所有的碼字,便重復執(zhí)行步驟228-236。
圖15為示出對應于圖13中步驟230及圖10中步驟172的步驟序列的流程圖,其中試圖從掃描線中解碼出單個碼字值及群集號。在第一步驟240中,從該掃描線中得出一個原始t序列及寬度W。同樣的步驟在前面已經(jīng)結合圖11中的步驟204討論過了。
在步驟242中,將假定為下一個碼字的八個元素的寬度W與前面解碼過的碼字的寬度進行比較。如果當前寬度W不在加減一個予定的差值(delta)的范圍之內(nèi),則在當前碼字中可能存在著一個分裂(少計算若干組兩個元素)或者合并(多計算若干組兩個元素)錯誤。不再對這一碼字進行解碼,而在步驟244中將其值與群集號都設置為“BAD”以指膽它是不能解碼的。
然后在步驟246中,以前一個碼字的寬度為基礎,找出一上其對應的寬度W落入一個碼字的期望寬度的一個給定的容差范圍內(nèi)的t序列,以此來試圖重新同步下一個碼字的邊界。如果當前寬度W明顯地大于該期望寬度而表明可能存在一個合并錯誤,則從t序列中丟棄最后兩個整數(shù)值直到它落入適當?shù)南拗捣秶鷥?nèi)為止。同樣,如果當前寬度W明顯地小于該期望寬度而指明可能存在一個分裂錯誤,則將該掃描線中后面兩個整數(shù)值加入到該t序列中直到它落入適當?shù)南拗捣秶鷥?nèi)為止。
如果在步驟242中判定當前寬度W是在期望寬度的一定容差范圍內(nèi),則試圖解碼這一碼字。在步驟248中,對原始t序列進行正則化,如上面結合圖11中步驟206所描述的。然后在步驟250中從正則化的t序列確定群集號。群集號可從t序列(與上述X序列不同)確定如下群集號=(T1-T2+T5-T6)mod9。
對PDF417碼字而言,合法的群集號為0,3與6。如在步驟252中判定的群集號不是0,3或6,則該碼字不是合法的。從而,在步驟254中將該群集號與值設置為“BAD”以指明該碼字無法解碼。
否則在步驟256中,利用正則化的t序列及其群集號在一張查找表中找出對應的碼字值。如果找不到該t序列的對應碼字值,則將該碼字值設置為“BAD”以指明它是無法解碼的。
最后,在步驟258中將“最后寬度”值更新為碼字的當前寬度W,供從該掃描線中解碼下一個碼字值時使用。
圖16A與16B一起構成為了用碼字矢量更新碼字矩陣,低級解碼器所執(zhí)行的步驟序列的流程圖。這兩張圖十分詳細地說明上面所討論的圖9中的步驟164。
圖16A的第一步驟260檢驗碼字矢量中的第一與最后的值是否為一個合法的行標志。如果碼字矢量中的第一與最后一個值都不是合法的行標志,則在步驟262中程序退出該例程并不再試圖用該碼字矢量去更新碼字矩陣。
然而,如果存在著一個合法的行標志,則在步驟264中賦給該碼字矢量中的每一個碼字值置信度權值。具體地,賦給每一個碼字的置信度權值是取決于該碼字的最接近的相鄰碼字及它們的群集是否也能解碼的。例如,如圖14B所示,賦給列1,2,3,9與10中的碼字值高置信度權值(“H”),因為它們的近鄰也已成功地解碼且具有相同的群集號。賦給列4與8中的碼字值中等置信度權值(“M”),因為它們的一個近鄰是成功地解碼的且具有相同的群集號,但另一個相鄰的碼字值則為“BAD”。賦給列3中的碼字值非常低的置信度權值(“L”),因為它的兩個鄰居都不是成功地解碼的。從而,碼字矢量中列i上的一個碼字值的置信度權值實質(zhì)上是列i-1,i與i+1上的碼字的群集號的一個函數(shù)。這一函數(shù)可用一張查找表來表示,該表的索引是從這三個碼字的群集號中計算出的。
在步驟266中,根據(jù)行標志碼字及群集號賦給字矢量量中的每一個碼字值一個行號。如圖14C中的例子所示,左端行標志碼字L2指出行號為2與群集號為6。列2-4中的碼字值的群集號也是6。因此,賦給該碼字矢量的前四列中的碼字值行號2。
同樣在圖14C的例子中,列6與8-10全部具有群集號3并且右端行標志碼字R1指明行號為1。因此,可從假定該掃描線跨越行2與行1的行界線而列6與8-10中的碼字值必須歸入行1中。
一旦賦給了碼字矢量中每一個碼字值置信度權值與行號,便逐個地更新碼字矩陣中的碼字。在步驟268中,將碼字矢量與碼字矩陣的列號C都初始地設置為“1”。步驟270是一個迭代循環(huán)的第一個步驟,該循環(huán)逐一通過碼字矢量中的碼字,并用它們來更新碼字矩陣中的對應碼字及其相關置信度權值。當列號C在步驟270中超過了列數(shù)時,則該碼字矢量中的所有碼字都已處理過了而該例程結束。
對于該碼字矢量中的每一個碼字,步驟272將碼字矩陣的行號R設置成在步驟266中賦給碼字矢量中位置C上的碼字的行號。這樣,對于該碼字矢量中的每一個碼字值便有一個碼字矩陣中位置R,C上的值與之對應。
在圖16B中繼續(xù)下去,步驟274判定碼字矩陣中位置R,C上的當前碼字值是否與碼字矢量中列C中的對應碼字值相同。如果這兩個值相同,則在步驟276中賦給矩陣位置R,C上的碼字值置信度權值上增加碼字矢最中對應的碼字值的置信度權值。如果不同,則在步驟278中從矩陣中的碼字值的置信度權值中減去矢量中的碼字值的置信度權值。
如果在步驟278中減小了置信度權值,則在步驟280中檢測該置信度權值是否降低到了零以下。如果該置信度權值小于零,則在步驟282中用碼字矢量中的碼字值來取代碼字矩陣中對應位置上的當前碼字值。并且在步驟284中將賦給矩陣中的碼字值的置信度權值改變成一個正的值。
最后,在步驟286中將列號C增加一去處理該碼字矢量中的下一個碼字值,同時程序控制返回到步驟270為該矢量中的所有列重復執(zhí)行步驟272至286。
簡單回顧一下圖9中的步驟154,在每一次用碼字值的新矢量填充碼字矩陣并更新了它們的置信度權值以后,便嘗試用該符號的內(nèi)在糾錯能力去填充矩陣的其余部分。尚未成功地解碼的碼字的數(shù)目與位置可以通過將賦給矩陣中的每一個碼字值的置信度權值與一個予定的閾值進行比較來確定。具有低于該并值的置信度權值的那些碼字值可以認為是尚未解碼的。如果尚未解碼的碼字的數(shù)目小于由安全級確定的該符號的糾錯能力,則嘗試去糾正該矩陣。
對于熟悉本技術的人員而言,顯而易見,可以在不脫離本發(fā)明的范圍或精神的條件下,在解碼方法與裝置中作出各種修改與變化。在仔細考慮過這里所公開的說明書與通過對本發(fā)明的實踐以后,本發(fā)明的其它實施例對于熟悉本技術的人員而言便是顯而易見的了。本說明書及實例只是旨在作為示例用的,而本發(fā)明的真正范圍與精神則是由以下的權利要求書確定的。
權利要求
1.一種打印機系統(tǒng),用于至少在其一個部分上包含標記的一種記錄體,該打印機系統(tǒng)包括輸入裝置,用于接收待放置在該記錄體上的信息;編碼裝置,耦合于該輸入裝置,用于以一種可糾錯的、機器可讀的格式編碼所接收的信息;輸出裝置,耦合于該編碼裝置,用于將所接收的信息印刷在該記錄體上,該輸出裝置包括用于從一個記錄體上消除所接收的信息以外的編碼信息的裝置,以及用于在消除了編碼信息以后在該記錄體上可消除地印刷所接收的信息的裝置。
2.權利要求1的打印機系統(tǒng),其中該編碼裝置包括用于以一種二維條形碼格式編碼所接收的信息的裝置。
3.權利要求2的打印機系統(tǒng),其中該用于以一種二維條形碼格式編碼所接收的信息的裝置包括用于以PDF417格式編碼所接收的信息的裝置。
4.權利要求1的打印機系統(tǒng),其中該輸出裝置包括用于以可消除的印色印刷該編碼信息的裝置。
5.權利要求1的打印機系統(tǒng),其中該輸出裝置包括用于干燥該記錄體上被消除的編碼信息下方的一個區(qū)域的裝置。
6.權利要求1的打印機系統(tǒng),其中該輸出裝置還包括用于檢測出現(xiàn)在該記錄體上的編碼信息的裝置;對所述檢測裝置作出響應,當該記錄體上沒有編碼信息時使所述消除裝置不工作的裝置。
7.權利要求1的打印機系統(tǒng),其中該輸出裝置包括用于在可取掉地地連接在該記錄體上的一個標簽上印刷該編碼信息的裝置。
8.權利要求1的打印機系統(tǒng),其中該記錄體具有帶信息字的行,并且其中該對準裝置包括用于按行定位該選擇的信息字的裝置。
9.權利要求1的打印機系統(tǒng),其中各行包含一個帶有一個行號的字段。
10.一種記錄體的閱讀器系統(tǒng),該記錄體具有一個包含以一種可糾錯的格式編碼的可消除的信息的信息區(qū)及文字,該閱讀器系統(tǒng)包括讀取裝置,用于從該信息部分中抽取信息;存儲器裝置,用于存儲所抽取的信息;糾正裝置,耦合于該讀取裝置,用于在該編碼信息上執(zhí)行糾錯來糾正所抽取的信息中的任何錯誤;輸出裝置,耦合于該糾正裝置,用于在執(zhí)行糾錯后輸出所抽取的信息。
11.權利要求10的閱讀器系統(tǒng),其中該讀取裝置包括掃描裝置,用于定位該信息區(qū)域;解碼裝置,耦合于該掃描裝置,用于從該信息部分中解碼該可消除的編碼信息。
12.一種記錄體,包括一個含有文字的印刷部分,以及一個含有以一種可糾錯的、機器可讀的格式編碼的可消除的信息的信息部分。
13.權利要求12的記錄體,其中該信息部分中的數(shù)據(jù)信息是以一種二維條形碼編碼的。
14.權利要求13的記錄體,其在該信息部分中的信息是以PDF 417格式編碼的。
15.權利要求12的記錄體,其中該記錄體為一個健康狀況記錄體。
16.權利要求12的記錄體,其中該信息部分中的信息包含有關所印刷的標記的信息。
17.權利要求12的記錄體,其中該信息部分包括一個可取掉的標簽,該標簽的寬度與長度的尺寸中至少有一個小于粘貼在其上的記錄體,并且該編碼信息是印刷在該可取掉的標簽上的。
18.權利要求12的記錄體,其中該編碼信息是用可消除的印色印刷在該記錄體的該信息部分上的。
19.權利要求12的記錄體,其中該記錄體是一張記帳卡,以及該可消除的編碼信息涉及結余的可利用貸款。
20.權利要求12的記錄體,其中該記錄體是一張多次使用的入場券、以及該可消除的編碼信息涉及尚未使用過的次數(shù)的標識。
21.權利要求12的記錄體,其中該記錄體是一個指定的個人的健康記錄體,并且該可消除的編碼信息涉及該指定的個人的健康狀況。
22.一種條形碼閱讀器系統(tǒng),包括一個閱讀器,包括一個內(nèi)裝符號檢測裝置的外殼,該符號檢測裝置用于生成一個指向記錄體上待讀取的一個符號的激光束,及用于接收這一符號的反射光而生成對應于該反射光的強度的電信號;一個記錄體,該記錄體具有一個包含從一種可糾錯的機器可讀的格式編碼的一個可消除的符號的信息部分的一個印刷部分,該可消除的符號位于所述激光束的路徑上供該閱讀器讀取。
23.權利要求22的條形碼閱讀器系統(tǒng),其中該記錄體的該信息部分中的信息是以二維條形碼編碼的。
24.權利要求22的條碼閱讀器系統(tǒng),其中該記錄體的該信息部分中的信息是以PDF417格式編碼的。
25.權利要求22的條形碼閱讀器系統(tǒng),其中該記錄體是一個健康狀況記錄體。
26.權利要求22的條形碼閱讀器系統(tǒng),其中該記錄體的該信息部分中的信息包含有關該印刷標記的信息。
27.權利要求22的條形碼閱讀器系統(tǒng),其中該記錄體的信息部分包括一個可取掉的標簽,該標簽的寬度與長度中至少有一個小于粘附在其上的該記錄體,并且該編碼信息是印刷在該可取掉的標簽上的。
28.權利要求22的條形碼閱讀器系統(tǒng),其中該編碼信息是用可消除的印色印刷在該記錄體的信息部分上的。
29.權利要求22的條形碼閱讀器系統(tǒng),其中該記錄體是一張記帳卡,并且該可消除的編碼信息涉及結余的可利用貸款。
30.權利要求22的條形碼閱讀器系統(tǒng),其中該記錄體是一張多次使用的入場券;以及該可消除的編碼信息涉及尚未使用的次數(shù)的標識。
31.權利要求22的條形碼閱讀器系統(tǒng),其中該記錄體是一個指定的個人的健康記錄體,以及該可消除的編碼信息涉及該指定的個人的健康狀況。
全文摘要
公開了一種編號與閱讀系統(tǒng),該系統(tǒng)帶有記錄體,該記錄體上具有二維可消除的條形碼或一張帶有一個二維條形碼的可取掉的標簽。該條形碼可以是PDF417。
文檔編號G06K19/18GK1092191SQ9310769
公開日1994年9月14日 申請日期1993年6月25日 優(yōu)先權日1992年6月25日
發(fā)明者王·P·延君, 杰羅姆·斯沃茨, 丹尼爾·R·麥克格林 申請人:歐林巴斯光學工業(yè)股份有限公司