欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

糾錯編碼方法

文檔序號:7539101閱讀:194來源:國知局
專利名稱:糾錯編碼方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種糾錯編碼方法,尤其是一種降低糾錯算法復(fù)雜性的糾錯編碼方法。
背景技術(shù)
條碼是一組規(guī)則排列的條、空、及其對應(yīng)字符組成的標記,用以表達一定信息,由于其攜帶方便、容量大等特點,在眾多領(lǐng)域得到了廣泛應(yīng)用。例如商場將商品的編號、價格、廠商等信息制作成二維條碼附著在商品上,以便于結(jié)帳、查詢等。一維條碼、二維條碼在傳輸?shù)倪^程中,不可避免地會出現(xiàn)磨損和镲傷等情況,這樣就會導(dǎo)致條碼信息的錯誤,從而降低條碼識讀的成功率或者導(dǎo)致條碼無法被正確地識讀。為了能夠檢測傳輸、儲存的條碼是否出現(xiàn)錯誤,在對原始數(shù)據(jù)(也稱信源編碼或者數(shù)據(jù)碼字)編碼時,向其中增加一些用于檢測是否出現(xiàn)誤碼的檢測碼字,若還希望進一步糾正誤碼,則還需要在編碼時另外增加一些用于糾錯的糾錯碼字,將檢測碼字與糾錯碼字統(tǒng)稱為監(jiān)督碼元,并建立數(shù)字碼字與監(jiān)督碼元之間的映射關(guān)系,在數(shù)據(jù)碼字出現(xiàn)誤碼時,根據(jù)數(shù)字碼字與監(jiān)督碼元之間的映射關(guān)系來檢測是否出現(xiàn)誤碼或者實現(xiàn)糾錯發(fā)信端增加監(jiān)督碼元并建立映射關(guān)系的過程稱為誤碼控制編碼或者糾錯編碼;收信端利用監(jiān)督碼元根據(jù)映射關(guān)系檢測數(shù)據(jù)碼字在傳輸過程中是否出現(xiàn)錯誤、以及在出現(xiàn)錯誤的情況下對接收到的數(shù)據(jù)碼字進行糾錯的過程稱為糾錯譯碼或者糾錯解碼。
Reed-Solomon糾錯算法(簡稱RS糾錯算法)是1960年由Reed-Solomon共同提出的,它是已知的代數(shù)編碼糾錯方式中糾錯能力最強的數(shù)編碼方式,為具有糾錯功能的條碼提供了不同的糾錯等級,是一種本領(lǐng)域技術(shù)人員熟知的標準算法,該算法可以通過軟件或除法電路實現(xiàn)。利用RS算法計算糾錯碼字的步驟如下步驟1,建立數(shù)據(jù)碼字多項式C(x)=Cn-1xn-1+Cn-2xn-2+...+C1x+C0,其中,系數(shù)Cn-1、Cn-2、......、C0為數(shù)據(jù)碼字,最高次項的系數(shù)Cn-1為第一個數(shù)據(jù)碼字,依次類推,最低次項的系數(shù)為最后一個碼字,n為數(shù)據(jù)碼字的個數(shù);步驟2,建立糾錯碼字的生成多項式g(x)=xt+gt-1xt-1+...+g1x+g0,其中,t為糾錯碼字的個數(shù);步驟3,對數(shù)據(jù)碼字多項式C(x)與糾錯碼字的生成多項式g(x)進行代數(shù)運算求得糾錯碼字。
利用RS糾錯算法糾錯譯碼時,計算的復(fù)雜性隨著糾錯碼字數(shù)量的增加而增大,同時,當糾錯碼字的個數(shù)大于32時,利用RS糾錯算法糾錯譯碼所耗用的時間將呈指數(shù)級遞增。實際應(yīng)用中,制作條碼的數(shù)據(jù)碼字的信息日益豐富,其數(shù)量也日益增加,相應(yīng)的,糾錯碼字的數(shù)量也逐漸增加,其值經(jīng)常會出現(xiàn)大于32的情況,因此,在收信端糾錯譯碼的算法非常復(fù)雜,且計算需要的時間長,影響了收信端的工作效率,降低了其工作性能。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于,針對現(xiàn)有技術(shù)在糾錯編碼的過程中,當糾錯碼字的數(shù)量大于32時,糾錯譯碼的算法復(fù)雜且耗用時間長的缺陷與不足,提供一種糾錯編碼方法,以克服上述缺陷與不足。
為解決上述技術(shù)問題,本發(fā)明提供的一種糾錯編碼方法,包括以下步驟步驟1,根據(jù)數(shù)據(jù)碼字的數(shù)量及糾錯等級計算糾錯碼字的數(shù)量;步驟2,判斷糾錯碼字的數(shù)量是否大于32,是,執(zhí)行步驟3;否則,執(zhí)行步驟4;步驟3,根據(jù)預(yù)先設(shè)定的分塊表對所述數(shù)據(jù)碼字及糾錯碼字進行分塊;步驟4,建立數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式,并對該數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式進行代數(shù)運算,獲得糾錯碼字;
步驟5、根據(jù)數(shù)據(jù)碼字及相應(yīng)的糾錯碼字進行糾錯編碼。
上述技術(shù)方案中,所述步驟1具體為選擇糾錯等級,以及在該糾錯等級下有效信息容量不小于所述數(shù)據(jù)碼字的數(shù)量的最小漢信碼版本;由所述最小漢信碼版本的總?cè)萘颗c所述有效信息容量計算所述糾錯碼字的數(shù)量。
所述步驟3中,對所述數(shù)據(jù)碼字及所述糾錯碼字進行分塊具體是查詢預(yù)先設(shè)定的漢信碼的分塊表,獲取該分塊表中與所述最小漢信碼版本及所述糾錯等級對應(yīng)的分塊參數(shù),按照該分塊參數(shù)對所述數(shù)據(jù)碼字及所述糾錯碼字進行分塊。
所述步驟4中,對數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式進行代數(shù)運算具體為采用Reed-Solomon糾錯算法對數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式進行代數(shù)運算。
基于上述技術(shù)方案,本發(fā)明具有以下有益的技術(shù)效果糾錯編碼時,在糾錯碼字的數(shù)量大于32的情況下,按照預(yù)先設(shè)定的分塊表對數(shù)據(jù)碼字及其糾錯碼字進行分塊,使各分塊中糾錯碼字的數(shù)量小于32,并分別針對各分塊建立數(shù)據(jù)碼字的多項式及其相應(yīng)的糾錯碼字的生成多項式,據(jù)此計算出糾錯碼字并實現(xiàn)糾錯編碼,從而減小糾錯譯碼的計算量,降低糾錯譯碼算法的復(fù)雜度,節(jié)省糾錯譯碼的時間,提高收信端的工作效率,提高其工作性能。
下面通過附圖和實施例,對本發(fā)明的技術(shù)方案做進一步的詳細描述。


圖1為本發(fā)明實施例的流程圖。
具體實施例方式
本發(fā)明是一種解決在對數(shù)據(jù)碼字進行糾錯譯碼時,當糾錯碼字的數(shù)量大于32時存在的糾錯算法復(fù)雜性高、計算時間長問題的方法,其核心思想是在糾錯編碼時,對數(shù)據(jù)碼字及其相應(yīng)的糾錯碼字進行分塊,使糾錯碼字的數(shù)量小于或者等于32,針對分塊后的各組數(shù)據(jù)碼字及糾錯碼字分別進行糾錯編碼。
一維條碼作為一種廉價、簡單、快捷、準確的數(shù)字信息傳遞方式,僅僅通過在水平方向上排列的條、空表達信息,在垂直方向不表達信息,因此,攜帶、存儲的信息量小。相比之下,二維條碼在垂直方向也能表達信息,除了保持了一維條碼所具有的印刷簡便,制造成本低,具有優(yōu)秀的抗磁場、抗輻射能力等優(yōu)點以外,其存儲的信息量比一維條碼大大增加,并且在采用了Reed-Solomon糾錯算法之后,其抗磨損和擦傷的能力大大提高,在許多領(lǐng)域得到了廣泛的應(yīng)用,目前常見的二維條碼主要有PDF417、QR、Datastrip和Data matrix等。同時,在我國,漢信碼是第一個形成國家標準的自主研發(fā)的二維條碼,其碼圖為正方形,由設(shè)置在一個矩形區(qū)域四角處的尋像圖形、分布于矩形區(qū)域內(nèi)部的折線形校正圖形等功能圖形以及分布于功能圖形間隔的數(shù)據(jù)碼字、糾錯碼字構(gòu)成,能夠?qū)?shù)字、字符、國標18030漢字集、二進制信息等進行編碼,提供4級糾錯能力,最大可糾30%的數(shù)據(jù)區(qū)錯誤。漢信碼能夠?qū)崿F(xiàn)對漢字的最高效編碼,且具有最高的抗功能圖形破損能力,是目前唯一能夠容忍兩個尋像圖形毀損的二維條碼。因此,本發(fā)明中,以對將漢信碼編碼為二維條碼時的糾錯編碼為例,來說明本發(fā)明的糾錯編碼方法。
圖1所示為本發(fā)明的糾錯編碼方法實施例的流程圖,假設(shè)以二進制表示的待編碼的數(shù)據(jù)為110000100001001101111000100111110000110001011111010100100111110001111001110000110001000110101110000101011001100011110011100011110010100000001110010100000111010011001010100100101111111001011101000100111100111010010111,該數(shù)據(jù)的長度是216位,擬采用GF(28)的RS糾錯編碼方法進行糾錯編碼,將該信息按照8位歸組,轉(zhuǎn)化為27個以十進制表示的0~255之間表示為整數(shù)的數(shù)據(jù)碼字194,19,120,159,12,95,82,124,121,195,17,174,21,152,243,143,40,14,80,116,202,146,254,93,19,206,151。對該數(shù)據(jù)碼字進行糾錯編碼方法包括以下步驟步驟101,根據(jù)實際需要選擇糾錯等級L,根據(jù)糾錯等級L與糾錯率p之間的關(guān)系,選擇有效信息容量不小于上述數(shù)據(jù)碼字的數(shù)量的漢信碼版本。漢信碼按照其信息容量的大小分為1、2、3、......、84共84個版本,版本越小,其信息容量越小,版本越大,信息容量也越大。由于二維條碼圖片容量的限制,為了充分利用二維碼圖片的容量,最好選擇可容納該信息的最小漢信碼版本。如下表1所示為糾錯等級L與糾錯率p之間的對應(yīng)關(guān)系表。
表1

假設(shè)選擇糾錯等級L為4,即糾錯率p為30%,計算在該糾錯率下,第5版本漢信碼的有效信息容量K。因為第5版本的二維碼圖片可容納555位二進制碼,采用GF(28)的RS糾錯碼時,其總的信息容量N為555/8=69個碼字,在糾錯等級L為4的情況下,可容納的有效信息容量K為N*(1-2*p)=69×(1-60%)=27,由于該有效信息容量剛好等于待編碼的數(shù)據(jù)碼字的數(shù)量,因此,選擇第5版本來對數(shù)據(jù)碼字進行編碼。
步驟102,計算在糾錯等級L為4的情況下,第5版本漢信碼的數(shù)據(jù)碼字的數(shù)量。由于第5版本漢信碼的總的信息容量N為69,有效信息容量K為27,因此,糾錯碼字的數(shù)量t=N-K=69-27=42。
步驟103,判斷數(shù)據(jù)碼字的數(shù)量是否大于32,是,執(zhí)行步驟104;否則,執(zhí)行步驟105。
步驟104,查詢預(yù)先定制的漢信碼的分塊表,獲取該分塊表中與選擇的漢信碼版本及糾錯等級L對應(yīng)的分塊參數(shù)(N,K,t),按照該分塊參數(shù)對待編碼的數(shù)據(jù)碼字及糾錯碼字進行分塊。如下表2所示為本實施例所用的部分漢信碼的分塊表。表中的參數(shù)包括漢信碼的版本號、糾錯等級、該版本號寄糾錯等級下的數(shù)據(jù)碼字以應(yīng)分成的塊數(shù)以及該塊數(shù)的總的信息容量N、有效信息容量K與糾錯碼字的數(shù)量t。由于數(shù)據(jù)碼字的數(shù)量為42,大于32,因此,根據(jù)分塊表,將上述數(shù)據(jù)碼字及分塊碼字分為2塊RS(34,14,10)和RS(35,13,11)。
表2

步驟105,針對各分塊,若未分塊,則針對原始的數(shù)據(jù)碼字及糾錯碼字,建立數(shù)據(jù)碼字的多項式C(x)及糾錯碼字的生成多項式g(x),并采用RS糾錯算法對該數(shù)據(jù)碼字的多項式C(x)及糾錯碼字的生成多項式g(x)進行代數(shù)運算,獲得糾錯碼字。
針對分塊RS(34,14,10),建立數(shù)據(jù)碼字的多項式C(x1)=C13x113+C12x112+...+C1x1+C0,其中,系數(shù)C13、C12、......、C0分別為第一個、第二個、......第十四個數(shù)據(jù)碼字;建立糾錯碼字的生成多項式g(x1)=x120+g19x119+...+g1x1+g0,其中,1、g19、......、g0分別為第一個、第二個、......第二十個糾錯碼字。采用RS糾錯算法對C(x1)及g(x1)進行代數(shù)運算,得到以十進制表示的糾錯碼字229,98,30,205,121,178,57,40,7,224,221,117,50,174,214,152,150,142,38,40。
針對分塊RS(35,13,11),建立數(shù)據(jù)碼字多項式C(x2)=C12x212+C11x211+...+C1x2+C0,其中,系數(shù)C12、C11、......、C0分別為第一個、第二個、......第十三個數(shù)據(jù)碼字;建立糾錯碼字的生成多項式g(x2)=x222+g21x221+...+g1x2+g0,其中,1、g22、...、g0分別為第一個、第二個、......第二十二個數(shù)據(jù)碼字。采用RS糾錯算法對C(x2)及g(x2)進行代數(shù)運算,得到以十進制表示的糾錯碼字85,202,84,48,10,212,69,255,31,0,251,110,167,29,118,178,1,107,38,173,55,180。將數(shù)據(jù)碼字及糾錯碼字分為兩塊后,每一塊的糾錯碼字的數(shù)量均小于32,并分別針對分塊RS(34,14,10)和RS(35,13,11)建立數(shù)據(jù)碼字的多項式及其相應(yīng)的糾錯碼字的生成多項式,據(jù)此計算出糾錯碼字并實現(xiàn)糾錯編碼,與不分塊時相比,可以大大減小糾錯譯碼時的計算量,降低糾錯譯碼算法的復(fù)雜度,節(jié)省糾錯譯碼的時間,提高了收信端的工作效率,提高其工作性能。
步驟106,對數(shù)據(jù)碼字及相應(yīng)的糾錯碼字進行糾錯編碼。將糾錯碼字229,98,30,205,121,178,57,40,7,224,221,117,50,174,214,152,150,142,38,40寫在相應(yīng)的數(shù)據(jù)碼字194,19,120,159,12,95,82,124,121,195,17,174,21,152后,將糾錯碼字85,202,84,48,10,212,69,255,31,0,251,110,167,29,118,178,1,107,38,173,55,180寫在相應(yīng)的數(shù)據(jù)碼字243,143,40,14,80,116,202,146,254,93,19,206,151后,并將第一分塊RS(34,14,10)與第二分塊RS(35,13,11)順序合并,得到編碼后的信息194,19,120,159,12,95,82,124,121,195,17,174,21,152,229,98,30,205,121,178,57,40,7,224,221,117,50,174,214,152,150,142,38,40,243,143,40,14,80,116,202,146,254,93,19,206,151,85,202,84,48,10,212,69,255,31,0,251,110,167,29,118,178,1,107,38,173,55,180,并將其轉(zhuǎn)換為二進制形式110000100001001101111000100111110000110001011111010100100111110001111001110000110001000110101110000101011001100011100101011000100001111011001101011110011011001000111001001010000000011111100000110111010111010100110010101011101101011010011000100101101000111000100110001010001111001110001111001010000000111001010000011101001100101010010010111111100101110100010011110011101001011101010101110010100101010000110000000010101101010001000101111111110001111100000000111110110110111010100111000111010111011010110010000000010110101100100110101011010011011110110100。
為了使編碼后得到的二維條碼在以后可能發(fā)生的隨機錯誤盡量分散,使得RS糾錯效果最優(yōu),在步驟104中分塊時,在分塊表中有多種可供選擇的分塊方式時,盡可能使分塊的信息量均勻,即將數(shù)據(jù)碼字及糾錯碼字分為|N1-N2|+|K1-K2|+|t1-t2|盡可能小的塊。
最后所應(yīng)說明的是以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對本發(fā)明作限制性理解。盡管參照上述較佳實施例對本發(fā)明進行了詳細說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解其依然可以對本發(fā)明的技術(shù)方案進行修改或者等同替換,而這種修改或者等同替換并不脫離本發(fā)明技術(shù)方案的精神和范圍。
權(quán)利要求
1.一種糾錯編碼方法,其中,包括以下步驟步驟1,根據(jù)數(shù)據(jù)碼字的數(shù)量及糾錯等級計算糾錯碼字的數(shù)量;步驟2,判斷糾錯碼字的數(shù)量是否大于32,是,執(zhí)行步驟3;否則,執(zhí)行步驟4;步驟3,根據(jù)預(yù)先設(shè)定的分塊表對所述數(shù)據(jù)碼字及糾錯碼字進行分塊;步驟4,建立數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式,并對該數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式進行代數(shù)運算,獲得糾錯碼字;步驟5、根據(jù)數(shù)據(jù)碼字及相應(yīng)的糾錯碼字進行糾錯編碼。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述步驟1具體為選擇糾錯等級,以及在該糾錯等級下有效信息容量不小于所述數(shù)據(jù)碼字的數(shù)量的最小漢信碼版本;由所述最小漢信碼版本的總?cè)萘颗c所述有效信息容量計算所述糾錯碼字的數(shù)量。
3.根據(jù)權(quán)利要求2所述的方法,其中,所述步驟3中,對所述數(shù)據(jù)碼字及所述糾錯碼字進行分塊具體是查詢預(yù)先設(shè)定的漢信碼的分塊表,獲取該分塊表中與所述最小漢信碼版本及所述糾錯等級對應(yīng)的分塊參數(shù),按照該分塊參數(shù)對所述數(shù)據(jù)碼字及所述糾錯碼字進行分塊。
4.根據(jù)權(quán)利要求1-3任意一項所述的方法,其中,所述步驟4中,對數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式進行代數(shù)運算具體為采用Reed-Solomon算法對數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式進行代數(shù)運算。
全文摘要
本發(fā)明公開了一種糾錯編碼方法,包括步驟1,根據(jù)數(shù)據(jù)碼字的數(shù)量及糾錯等級計算糾錯碼字的數(shù)量;步驟2,判斷糾錯碼字的數(shù)量是否大于32,是,執(zhí)行步驟3;否則,執(zhí)行步驟4;步驟3,根據(jù)預(yù)先設(shè)定的分塊表對所述數(shù)據(jù)碼字及糾錯碼字進行分塊;步驟4,建立數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式,并對該數(shù)據(jù)碼字的多項式及糾錯碼字的生成多項式進行代數(shù)運算,獲得糾錯碼字;步驟5、根據(jù)數(shù)據(jù)碼字及相應(yīng)的糾錯碼字進行糾錯編碼。采用本發(fā)明,可以大大減小糾錯譯碼時的計算量,降低糾錯算法的復(fù)雜度,節(jié)省糾錯譯碼的時間,提高收信端的工作效率,提高其工作性能。
文檔編號H03M13/00GK1885725SQ20061009859
公開日2006年12月27日 申請日期2006年7月12日 優(yōu)先權(quán)日2006年7月12日
發(fā)明者張成海, 羅秋科, 王毅, 黃燕濱, 張鐸, 施煜 申請人:中國物品編碼中心
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
巴林右旗| 忻州市| 拜城县| 屏山县| 威远县| 平舆县| 彭山县| 阜南县| 五峰| 南漳县| 涞水县| 涞水县| 崇信县| 永昌县| 林州市| 宁远县| 上饶县| 洛扎县| 西乌| 泸定县| 苏尼特左旗| 东兴市| 孟村| 巨鹿县| 休宁县| 鹤庆县| 独山县| 安达市| 湘阴县| 山丹县| 丹棱县| 阳朔县| 扎兰屯市| 灌南县| 宽城| 隆昌县| 姚安县| 金坛市| 比如县| 九龙城区| 哈尔滨市|