烙印碼及其構(gòu)建方法、裝置的制造方法
【專利摘要】本發(fā)明屬于自動識別技術(shù)領(lǐng)域,提供了一種烙印碼及其構(gòu)建方法、裝置。本發(fā)明的烙印碼構(gòu)建方法包括:將原始數(shù)據(jù)轉(zhuǎn)換為數(shù)據(jù)碼字;根據(jù)所述數(shù)據(jù)碼字的長度確定版本號;根據(jù)所述數(shù)據(jù)碼字和所述版本號使用Reed?Solomon算法生成校驗碼字;根據(jù)所述版本號創(chuàng)建矩陣,并將所述數(shù)據(jù)碼字和所述校驗碼字映射到矩陣中;在所述矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù);根據(jù)所述版本號在所述矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù);根據(jù)所述矩陣生成烙印碼。本發(fā)明的烙印碼構(gòu)建方法,提高了烙印碼在解碼過程中版本判斷的正確率。
【專利說明】
烙印碼及其構(gòu)建方法、裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及自動識別技術(shù)領(lǐng)域,具體涉及一種烙印碼及其構(gòu)建方法、裝置。
【背景技術(shù)】
[0002]二維碼研究起始于20世紀80年代末,目前已有QR Code、Datamatrix、PDF417、漢信碼等多種碼制。相比于一維碼,二維碼信息密度高,印刷面積小,攜帶信息量大等特點,且具有自動糾錯能力,已在很多領(lǐng)域廣泛應(yīng)用。
[0003]DPM(Direct Part Mark,直接零部件標識)是一種特殊的標識技術(shù),它在零部件表面直接做標記而不借助于標簽等載體。與其他常見二維碼相比,Datamatrix具有數(shù)據(jù)密度大、信息安全性高等特點,適合應(yīng)用在條碼容易受損的場所,表示相同信息量時Datamatrix所需尺寸更小?;谝陨显颍I(yè)上多用Datamatrix為零部件做標識。
[0004]每個Datamatrix符號由規(guī)則排列的方形模塊構(gòu)成的資料區(qū)組成,資料區(qū)的四周由定位圖形所包圍,定位圖形的四周則由空白區(qū)包圍。定位圖形的兩條鄰邊為暗實線,主要用于限定尺寸,另外兩條鄰邊由交替的深色和淺色模組組成,主要用于限定符號的單元結(jié)構(gòu)。目前,通過定位圖形中深色和淺色模組的個數(shù)判斷Datamatrix的版本號,受工業(yè)復(fù)雜環(huán)境影響,這種判斷方法很容易出現(xiàn)版本號判斷錯誤的情況,這會直接導(dǎo)致解碼失敗,無法讀取資料區(qū)的數(shù)據(jù)。
【發(fā)明內(nèi)容】
[0005]針對現(xiàn)有技術(shù)中的缺陷,本發(fā)明提供了一種烙印碼及其構(gòu)建方法、裝置,以提高烙印碼在解碼過程中版本判斷的正確率。
[0006]第一方面,本發(fā)明提供的烙印碼構(gòu)建方法,包括:將原始數(shù)據(jù)轉(zhuǎn)換為數(shù)據(jù)碼字;根據(jù)所述數(shù)據(jù)碼字的長度確定版本號;根據(jù)所述數(shù)據(jù)碼字和所述版本號使用Reed-Solomon算法生成校驗碼字;根據(jù)所述版本號創(chuàng)建矩陣,并將所述數(shù)據(jù)碼字和所述校驗碼字映射到矩陣中;在所述矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù);根據(jù)所述版本號在所述矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù);根據(jù)所述矩陣生成烙印碼。
[0007]可選地,將所述數(shù)據(jù)碼字和所述校驗碼字映射到矩陣中,包括:將所述數(shù)據(jù)碼字和所述校驗碼字轉(zhuǎn)換為比特流數(shù)據(jù),按照預(yù)定順序映射到矩陣中。
[0008]可選地,所述根據(jù)所述版本號在所述矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù),包括:根據(jù)所述版本號確定所述矩陣的第一行和最后一列為I的個數(shù)及位置。
[0009]可選地,所述在所述矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù),包括:所述矩陣的最后一行和第一列全部置I。
[0010]可選地,所述根據(jù)數(shù)據(jù)碼字的長度確定版本號,包括:選取能容納所述數(shù)據(jù)碼字的長度的數(shù)據(jù)且版本號最小的版本。
[0011]本發(fā)明實提供的烙印碼構(gòu)建方法,提高了解碼時烙印碼版本判斷的正確率,使得通過本方法得到的烙印碼降低了烙印碼版本判斷的難度,能更好地適應(yīng)復(fù)雜的工業(yè)環(huán)境,抗干擾能力更強。
[0012]第二方面,本發(fā)明提供的烙印碼構(gòu)建裝置,包括:數(shù)據(jù)轉(zhuǎn)換模塊,用于將原始數(shù)據(jù)轉(zhuǎn)換為數(shù)據(jù)碼字;版本確定模塊,用于根據(jù)所述數(shù)據(jù)碼字的長度確定版本號;校驗生成模塊,用于根據(jù)所述數(shù)據(jù)碼字和所述版本號使用Reed-Solomon算法生成校驗碼字;數(shù)據(jù)添加模塊,用于根據(jù)所述版本號創(chuàng)建矩陣,并將所述數(shù)據(jù)碼字和所述校驗碼字映射到矩陣中;定位圖形添加模塊,用于在所述矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù);版本偵測圖形添加模塊,用于根據(jù)所述版本號在所述矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù);烙印碼生成模塊,用于根據(jù)所述矩陣生成烙印碼。
[0013]可選地,所述矩陣映射模塊具體用于:根據(jù)所述版本號創(chuàng)建矩陣,并將所述數(shù)據(jù)碼字和所述校驗碼字轉(zhuǎn)換為比特流數(shù)據(jù),按照預(yù)定順序映射到矩陣中。
[0014]可選地,所述版本偵測圖形添加模塊具體用于:根據(jù)所述版本號確定所述矩陣的第一行和最后一列為I的個數(shù)及位置。
[0015]可選地,所述定位圖形添加模塊具體用于:所述矩陣的最后一行和第一列全部置
1
[0016]本發(fā)明提供的烙印碼構(gòu)建裝置,提高了解碼時烙印碼版本判斷的正確率,使得通過本裝置得到的烙印碼降低了烙印碼版本判斷的難度,能更好地適應(yīng)復(fù)雜的工業(yè)環(huán)境,抗干擾能力更強。
[0017]第三方面,本發(fā)明提供的烙印碼,包括碼圖和空白區(qū)域,所述碼圖包括:位于所述碼圖中間區(qū)域的數(shù)據(jù)圖形,所述數(shù)據(jù)圖形通過在矩陣中設(shè)定位置添加數(shù)據(jù)碼字和校驗碼字對應(yīng)的數(shù)據(jù)確定,所述數(shù)據(jù)碼字是通過對原始數(shù)據(jù)進行數(shù)據(jù)轉(zhuǎn)換得到,所述版本號根據(jù)所述數(shù)據(jù)碼字的長度確定,所述校驗碼字是根據(jù)所述數(shù)據(jù)碼字和所述版本號使用Reed-Solomon算法確定,所述矩陣是根據(jù)版本號確定的;位于所述碼圖的左邊界和下邊界的定位圖形,所述定位圖形通過在矩陣中設(shè)定位置添加對應(yīng)的數(shù)據(jù)確定的;位于所述碼圖的上邊界和右邊界的版本偵測圖形,所述版本偵測圖形通過在矩陣中設(shè)定位置添加對應(yīng)的數(shù)據(jù)確定。
[0018]本發(fā)明提供的烙印碼,提高了解碼時烙印碼版本判斷的正確率,能更好地適應(yīng)復(fù)雜的工業(yè)環(huán)境,抗干擾能力更強。
【附圖說明】
[0019]圖1示出了本發(fā)明實施例所提供的烙印碼構(gòu)建方法的流程圖;
[0020]圖2示出了本發(fā)明實施例所提供的烙印碼構(gòu)建裝置的流程圖;
[0021 ]圖3示出了本發(fā)明實施例所提供的烙印碼示意圖;
[0022]圖4示出了本發(fā)明實施例所提供的五個版本的烙印碼示意圖。
[0023]附圖中,1-定位圖形;2-版本偵測圖形;3-數(shù)據(jù)圖形。
【具體實施方式】
[0024]下面將結(jié)合附圖對本發(fā)明技術(shù)方案的實施例進行詳細的描述。以下實施例僅用于更加清楚地說明本發(fā)明的技術(shù)方案,因此只是作為示例,而不能以此來限制本發(fā)明的保護范圍。
[0025]需要注意的是,除非另有說明,本申請使用的技術(shù)術(shù)語或者科學術(shù)語應(yīng)當為本發(fā)明所屬領(lǐng)域技術(shù)人員所理解的通常意義。
[0026]如圖3所示,烙印碼包括碼圖和空白區(qū)域,其中碼圖包括:定位圖形1、版本偵測圖形2和數(shù)據(jù)區(qū)域3。
[0027]如圖1所示,本實施例提供的烙印碼構(gòu)建方法,包括:
[0028]步驟SlOl,將原始數(shù)據(jù)轉(zhuǎn)換為數(shù)據(jù)碼字。
[0029]其中,轉(zhuǎn)換方法采用Datamatrix的數(shù)據(jù)轉(zhuǎn)換方法,具體可參見IS016022:2006-
5.2.9.2ο
[0030]步驟S102,根據(jù)數(shù)據(jù)碼字的長度確定版本號。
[0031]其中,為使最終得到的烙印碼的圖像尺寸最小,在確定版本號時,應(yīng)選取能容納數(shù)據(jù)碼字長度的數(shù)據(jù),并且版本號最小的一個版本,此處尺寸指單元模塊的個數(shù)。如圖4所示,給出了烙印碼的五個版本:¥1、¥2、¥3、¥4、¥5,其中¥1包含14114個單元模塊,¥2包含16116個單元模塊,V3包含18x18個單元模塊,V4包含20x20個單元模塊,V5包含22x22個單元模塊,版本號越大單元模塊個數(shù)越多,相應(yīng)的能容納的數(shù)據(jù)量越大。
[0032]步驟S103,根據(jù)數(shù)據(jù)碼字和版本號使用Reed-Solomon算法生成校驗碼字。
[0033]實際使用中,烙印碼會出現(xiàn)污損、破損等現(xiàn)象,另外,掃描烙印碼時因光照等問題可能會產(chǎn)生對某些位的誤讀。使用Reed-Solomon算法對數(shù)據(jù)碼字編碼,生成校驗碼字并附加在數(shù)據(jù)碼字之后,解碼時在一定范圍內(nèi)可使用Reed-Solomon算法糾正讀取錯誤。另外,Reed-Solomon算法會根據(jù)不同的版本號生成不同級別的校驗碼字。
[0034]利用Reed-Solomon算法生成校驗碼屬于本領(lǐng)域技術(shù)人員都熟知的技術(shù)方式,在此不做贅述。
[0035]步驟S104,根據(jù)版本號創(chuàng)建矩陣,并將數(shù)據(jù)碼字和校驗碼字映射到矩陣中。
[0036]其中,創(chuàng)建的矩陣的元素由“O”和“I”組成。
[0037]其中,將數(shù)據(jù)碼字和校驗碼字轉(zhuǎn)換為比特流數(shù)據(jù),按照預(yù)定順序映射到矩陣中。
[0038]步驟S105,在矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù)。
[0039]如圖3所示,定位圖形位于碼圖的左邊界和下邊界,呈“L”型,全部由黑色模塊構(gòu)成,對應(yīng)的,在矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù)的方法是:將矩陣的最第一列和最后一行全部置I。在對烙印碼掃描的過程中,圖像不可避免地會存在傾斜,給識別帶來困難,因此解碼前必須對圖像進行傾斜校正,通過定位圖形即可對烙印碼進行傾斜校正,保證后續(xù)解碼的順利進行。
[0040]步驟S106,根據(jù)版本號在矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù)。
[0041]如圖3所示,版本偵測圖形位于碼圖的上邊界和右邊界,根據(jù)版本號確定上邊界和右邊界黑色模塊的個數(shù),實際生成烙印碼時,使邊界的黑色模塊盡量均勻分布。對應(yīng)的,在矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù)的方法是:據(jù)版本號確定矩陣的第一行和最后一列為I的個數(shù)及位置。
[0042]步驟S107,根據(jù)矩陣生成烙印碼。
[0043]根據(jù)要生成的烙印碼的物理尺寸大小,計算單元模塊占用像素數(shù),然后根據(jù)矩陣生成烙印碼,矩陣中I代表黑色模塊,O代表白色模塊。
[0044]本實施例提供的烙印碼構(gòu)建方法,提高了解碼時烙印碼版本判斷的正確率,使得通過本方法得到的烙印碼降低了烙印碼版本判斷的難度,能更好地適應(yīng)復(fù)雜的工業(yè)環(huán)境,抗干擾能力更強。
[0045]如圖2所示,本實施例提供了與上述烙印碼構(gòu)建方法對應(yīng)的烙印碼構(gòu)建裝置,包括:數(shù)據(jù)轉(zhuǎn)換模塊101,用于將原始數(shù)據(jù)轉(zhuǎn)換為數(shù)據(jù)碼字;版本確定模塊102,用于根據(jù)數(shù)據(jù)碼字的長度確定版本號;校驗生成模塊103,用于根據(jù)數(shù)據(jù)碼字和版本號使用Reed-Solomon算法生成校驗碼字;數(shù)據(jù)添加模塊104,用于根據(jù)版本號創(chuàng)建矩陣,并將數(shù)據(jù)碼字和校驗碼字映射到矩陣中;定位圖形添加模塊105,用于在矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù);版本偵測圖形添加模塊106,用于根據(jù)版本號在矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù);烙印碼生成模塊107,用于根據(jù)矩陣生成烙印碼。
[0046]其中,矩陣映射模塊具體用于:根據(jù)版本號創(chuàng)建矩陣,并將數(shù)據(jù)碼字和校驗碼字轉(zhuǎn)換為比特流數(shù)據(jù),按照預(yù)定順序映射到矩陣中。
[0047]其中,版本偵測圖形添加模塊具體用于:根據(jù)版本號確定矩陣的第一行和最后一列為I的個數(shù)及位置。
[0048]其中,定位圖形添加模塊具體用于:矩陣的最后一行和第一列全部置I。
[0049]本實施例提供的烙印碼構(gòu)建裝置,提高了解碼時烙印碼版本判斷的正確率,使得通過本裝置得到的烙印碼降低了烙印碼版本判斷的難度,能更好地適應(yīng)復(fù)雜的工業(yè)環(huán)境,抗干擾能力更強。
[0050]如圖3所示,根據(jù)上述烙印碼構(gòu)建方法得到的烙印碼,包括碼圖和空白區(qū)域,其中碼圖包括:位于所述碼圖中間區(qū)域的數(shù)據(jù)圖形3,所述數(shù)據(jù)圖形3通過在矩陣中設(shè)定位置添加數(shù)據(jù)碼字和校驗碼字對應(yīng)的數(shù)據(jù)確定,所述數(shù)據(jù)碼字是通過對原始數(shù)據(jù)進行數(shù)據(jù)轉(zhuǎn)換得至IJ,所述版本號根據(jù)所述數(shù)據(jù)碼字的長度確定,所述校驗碼字是根據(jù)所述數(shù)據(jù)碼字和所述版本號使用Reed-Solomon算法確定,所述矩陣是根據(jù)版本號確定的;位于所述碼圖的左邊界和下邊界的定位圖形I,所述定位圖形I通過在矩陣中設(shè)定位置添加對應(yīng)的數(shù)據(jù)確定的;位于所述碼圖的上邊界和右邊界的版本偵測圖形2,所述版本偵測圖形2通過在矩陣中設(shè)定位置添加對應(yīng)的數(shù)據(jù)確定。
[0051]其中,定位圖形I呈“L”型,位于碼圖的左邊界與下邊界,全部由黑色模塊構(gòu)成。
[0052]其中,版本偵測圖形2位于碼圖的上邊界和右邊界,由黑白相間的單元模塊構(gòu)成。通過上邊界黑色模塊數(shù)與右邊界黑色模塊比例數(shù)確定烙印碼的版本號,針對每個版本號,都有固定的糾錯級別。
[0053]其中,數(shù)據(jù)圖形位3于定位圖形和版本偵測圖形圍成的邊界內(nèi)部,用于存儲烙印碼的數(shù)據(jù)碼字和校驗碼字對應(yīng)的數(shù)據(jù)。
[0054]本實施例提供的烙印碼,提高了解碼時烙印碼版本判斷的正確率,能更好地適應(yīng)復(fù)雜的工業(yè)環(huán)境,抗干擾能力更強。
[0055]最后應(yīng)說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求和說明書的范圍當中。
【主權(quán)項】
1.一種烙印碼構(gòu)建方法,其特征在于,包括: 將原始數(shù)據(jù)轉(zhuǎn)換為數(shù)據(jù)碼字; 根據(jù)所述數(shù)據(jù)碼字的長度確定版本號; 根據(jù)所述數(shù)據(jù)碼字和所述版本號使用Reed-Solomon算法生成校驗碼字; 根據(jù)所述版本號創(chuàng)建矩陣,并將所述數(shù)據(jù)碼字和所述校驗碼字映射到矩陣中; 在所述矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù); 根據(jù)所述版本號在所述矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù); 根據(jù)所述矩陣生成烙印碼。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,將所述數(shù)據(jù)碼字和所述校驗碼字映射到矩陣中,包括:將所述數(shù)據(jù)碼字和所述校驗碼字轉(zhuǎn)換為比特流數(shù)據(jù),按照預(yù)定順序映射到矩陣中。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述版本號在所述矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù),包括:根據(jù)所述版本號確定所述矩陣的第一行和最后一列為I的個數(shù)及位置。4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在所述矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù),包括:所述矩陣的最后一行和第一列全部置I。5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)數(shù)據(jù)碼字的長度確定版本號,包括:選取能容納所述數(shù)據(jù)碼字的長度的數(shù)據(jù)且版本號最小的版本。6.一種烙印碼構(gòu)建裝置,其特征在于,包括: 數(shù)據(jù)轉(zhuǎn)換模塊,用于將原始數(shù)據(jù)轉(zhuǎn)換為數(shù)據(jù)碼字; 版本確定模塊,用于根據(jù)所述數(shù)據(jù)碼字的長度確定版本號; 校驗生成模塊,用于根據(jù)所述數(shù)據(jù)碼字和所述版本號使用Reed-Solomon算法生成校驗碼字; 數(shù)據(jù)添加模塊,用于根據(jù)所述版本號創(chuàng)建矩陣,并將所述數(shù)據(jù)碼字和所述校驗碼字映射到矩陣中; 定位圖形添加模塊,用于在所述矩陣中設(shè)定位置添加定位圖形對應(yīng)的數(shù)據(jù); 版本偵測圖形添加模塊,用于根據(jù)所述版本號在所述矩陣中設(shè)定位置添加版本偵測圖形對應(yīng)的數(shù)據(jù); 烙印碼生成模塊,用于根據(jù)所述矩陣生成烙印碼。7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述矩陣映射模塊具體用于:根據(jù)所述版本號創(chuàng)建矩陣,并將所述數(shù)據(jù)碼字和所述校驗碼字轉(zhuǎn)換為比特流數(shù)據(jù),按照預(yù)定順序映射到矩陣中。8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述版本偵測圖形添加模塊具體用于:根據(jù)所述版本號確定所述矩陣的第一行和最后一列為I的個數(shù)及位置。9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述定位圖形添加模塊具體用于:所述矩陣的最后一行和第一列全部置I。10.—種烙印碼,包括碼圖和空白區(qū)域,其特征在于,所述碼圖包括: 位于所述碼圖中間區(qū)域的數(shù)據(jù)圖形,所述數(shù)據(jù)圖形通過在矩陣中設(shè)定位置添加數(shù)據(jù)碼字和校驗碼字對應(yīng)的數(shù)據(jù)確定,所述數(shù)據(jù)碼字是通過對原始數(shù)據(jù)進行數(shù)據(jù)轉(zhuǎn)換得到,所述版本號根據(jù)所述數(shù)據(jù)碼字的長度確定,所述校驗碼字是根據(jù)所述數(shù)據(jù)碼字和所述版本號使用Reed-Solomon算法確定,所述矩陣是根據(jù)版本號確定的; 位于所述碼圖的左邊界和下邊界的定位圖形,所述定位圖形通過在矩陣中設(shè)定位置添加對應(yīng)的數(shù)據(jù)確定的; 位于所述碼圖的上邊界和右邊界的版本偵測圖形,所述版本偵測圖形通過在矩陣中設(shè)定位置添加對應(yīng)的數(shù)據(jù)確定。
【文檔編號】G06K19/06GK106067052SQ201610356606
【公開日】2016年11月2日
【申請日】2016年5月25日 公開號201610356606.8, CN 106067052 A, CN 106067052A, CN 201610356606, CN-A-106067052, CN106067052 A, CN106067052A, CN201610356606, CN201610356606.8
【發(fā)明人】胡海波, 姜新波, 薛寧, 崔太彬, 李天平
【申請人】濟南通商條碼技術(shù)有限公司