一種圖形化編解碼系統及方法
【技術領域】
[0001]本發明涉及數字信號處理的技術領域,特別是涉及一種圖形化編解碼系統及方法。
【背景技術】
[0002]在數字信道中傳輸計算機數據時,要對計算機中的數字信號重新編碼以進行基帶傳輸,并在接收端進行解碼以得到原始數據。
[0003]現有技術中,通常將數據通過二進制編碼、曼徹斯特編碼等處理來得到相應的數字碼流。其中,二進制編碼采用兩種不同的電聯分別表示“I”和“O”。曼徹斯特編碼(Manchester Encoding),也叫做相位編碼(Phase Encode,PE),是一個同步時鐘編碼技術,被物理層使用來編碼一個同步位流的時鐘和數據。它在以太網媒介系統中的應用屬于數據通信中的兩種位同步方法里的自同步法,即接收方利用包含有同步信號的特殊編碼從信號自身提取同步信號來鎖定自己的時鐘脈沖頻率,達到同步目的。
[0004]在數字信號的傳輸過程中,由于二進制碼流的過大,需要對二進制數據進行壓縮編碼處理,然后再在接收端進行解碼以得到原始的二進制數據。
[0005]然而,現有的數字編碼解碼算法的復雜度高,有些算法甚至需要相關的硬件配合才能實現,導致成本過高,不利于廣泛使用。
【發明內容】
[0006]鑒于以上所述現有技術的缺點,本發明的目的在于提供一種圖形化編解碼系統及方法,利用雪花圖案作為編碼和解碼的中間媒介,來實現數字的圖形化編解碼,其算法簡單,適用性強。
[0007]為實現上述目的及其他相關目的,本發明提供一種圖形化編解碼方法,包括編碼方法和解碼方法;所述編碼方法包括以下步驟:步驟S11、將原始數據編碼為二進制數據;步驟S12、設定雪花圖形包括M個分支且左右對稱,每個分支的葉子層數為N ;步驟S13、取與葉子個數相同個數的二進制數據,并將二進制數據依次劃分為N個數據串,每個數據串包含2M個數據;步驟S14、從雪花圖形固定位置處的分支開始,按照一定順序將第一組2M個二進制數據生成雪花圖形的第一層葉子,其中O表示此處無葉子,I表示此處有葉子;步驟S15、按照步驟S14的方式,將剩余的二進制數據依次生成雪花圖形的其他層葉子,從而將二進制數據編碼為雪花圖形;所述解碼方法包括以下步驟:步驟S21、對于接收到的包含與葉子個數相同個數的二進制數據的雪花圖形,從雪花圖形固定位置處的分支開始按照一定順序解析出雪花圖形的第一層葉子在每一條分支上的有無情況,生成第一組2M個二進制數據,其中O表示此處無葉子,I表示此處有葉子;步驟S22、按照步驟S21的方式,由外到內逐層解析雪花圖形的其它層葉子在每一條分支上的有無情況,生成N-1個的2M個二進制數據串;
[0008]步驟S23、按照生成的先后順序,將N個的2M個二進制數據串組合為二進制數據;步驟S24、將二進制數據解碼為原始數據。
[0009]根據上述的圖形化編解碼方法,其中:所述步驟S21中雪花圖形的解析順序與所述步驟14中雪花圖形的生成順序一致。
[0010]同時,本發明提供一種圖形化編解碼系統,包括編碼系統和解碼系統;
[0011]所述編碼系統包括原始數據轉換模塊、雪花圖形設定模塊、二進制數據劃分模塊和雪花圖形生成模塊;
[0012]所述原始數據轉換模塊用于將原始數據編碼為二進制數據;
[0013]所述雪花圖形設定模塊用于設定雪花圖形包括M個分支且左右對稱,每個分支的葉子層數為N ;
[0014]所述二進制數據劃分模塊用于取與葉子個數相同個數的二進制數據,并將二進制數據依次劃分為N個數據串,每個數據串包含2M個數據;
[0015]所述雪花圖形生成模塊用于從雪花圖形固定位置處的分支開始,按照一定順序將第一組2M個二進制數據生成雪花圖形的第一層葉子,其中O表示此處無葉子,I表示此處有葉子;然后按照同樣方式將剩余的二進制數據依次生成雪花圖形的其他層葉子,從而將二進制數據編碼為雪花圖形;
[0016]所述解碼系統包括雪花圖形解析模塊、二進制數據生成模塊和二進制數據轉換模塊;
[0017]所述雪花圖形解析模塊用于對于接收到的包含與葉子個數相同個數的二進制數據的雪花圖形,從雪花圖形固定位置處的分支開始按照一定順序解析出雪花圖形的第一層葉子在每一條分支上的有無情況,生成第一組2M個二進制數據,其中O表示此處無葉子,I表示此處有葉子;然后按照同樣方式由外到內逐層解析雪花圖形的其它層葉子在每一條分支上的有無情況,生成N-1個的2M個二進制數據串;
[0018]所述二進制數據生成模塊用于按照生成的先后順序,將N個的2M個二進制數據串組合為二進制數據;
[0019]所述二進制數據轉換模塊用于將二進制數據解碼為原始數據。
[0020]根據上述的圖形化編解碼系統,其中:所述雪花圖形解析模塊中雪花圖形的解析順序與所述雪花圖形生成模塊中雪花圖形的生成順序一致。
[0021]同時,本發明還提供一種圖形化編碼方法,包括以下步驟:
[0022]步驟S11、將原始數據編碼為二進制數據;
[0023]步驟S12、設定雪花圖形包括M個分支且左右對稱,每個分支的葉子層數為N ;
[0024]步驟S13、取與葉子個數相同個數的二進制數據,并將二進制數據依次劃分為N個數據串,每個數據串包含2M個數據;
[0025]步驟S14、從雪花圖形固定位置處的分支開始,按照一定順序將第一組2M個二進制數據生成雪花圖形的第一層葉子,其中O表示此處無葉子,I表示此處有葉子;
[0026]步驟S15、按照步驟S14的方式,將剩余的二進制數據依次生成雪花圖形的其他層葉子,從而將二進制數據編碼為雪花圖形。
[0027]根據上述的圖形化編碼方法,其中:M取值為6。
[0028]相應地,本發明還提供一種圖形化編碼系統,包括原始數據轉換模塊、雪花圖形設定模塊、二進制數據劃分模塊和雪花圖形生成模塊;
[0029]所述原始數據轉換模塊用于將原始數據編碼為二進制數據;
[0030]所述雪花圖形設定模塊用于設定雪花圖形包括M個分支且左右對稱,每個分支的葉子層數為N ;
[0031]所述二進制數據劃分模塊用于取與葉子個數相同個數的二進制數據,并將二進制數據依次劃分為N個數據串,每個數據串包含2M個數據;
[0032]所述雪花圖形生成模塊用于從雪花圖形固定位置處的分支開始,按照一定順序將第一組2M個二進制數據生成雪花圖形的第一層葉子,其中O表示此處無葉子,I表示此處有葉子;然后按照同樣方式將剩余的二進制數據依次生成雪花圖形的其他層葉子,從而將二進制數據編碼為雪花圖形。
[0033]同時,本發明還提供一種圖形化解碼方法,雪花圖形包括M個分支且左右對稱,每個分支的葉子層數為N,二進制數據從雪花圖形固定位置處的分支開始按照一定順序由外到內依次生成雪花圖形的所有層的葉子,其中O表示此處無葉子,I表示此處有葉子;
[0034]所述解碼方法包括以下步驟:
[0035]步驟S21、對于接收到的包含與葉子個數相同個數的二進制數據的雪花圖形,從雪花圖形固定位置處的分支開始按照一定順序解析出雪花圖形的第一層葉子在每一條分支上的有無情況,生成第一組2M個二進制數據;
[0036]步驟S22、按照步驟S21的方式,由外到內逐層解析雪花圖形的其它層葉子在每一條分支上的有無情況,生成N-1個的2M個二進制數據串;
[0037]步驟S23、按照生成的先后順序,將N個的2M個二進制數據串組合為二進制數據;
[0038]步驟S24、將二進制數據解碼為原始數據。
[0039]根據上述的圖形化解碼方法,其中:M取值為6。
[0040]相應地,本發明還提供一種圖形化解碼系統,雪花圖形包括M個分支且左右對稱,每個分支的葉子層數為N,二進制數據從雪花圖形固定位置處的分支開始按照一定順序由外到內依次生成雪花圖形的所有層的葉子,其中O表示此處無葉子,I表示此處有葉子;
[0041]所述解碼系統包括雪花圖形解析模塊、二進制數據生成模塊和二進制數據轉換模塊;
[0042]所述雪花圖形解析模塊用于對于接收到的包含與葉子個數相同個數的二進制數據的雪花圖形,從雪花圖形固定位置處的分支開始按照一定順序解析出雪花圖形的第一層葉子在每一條分支上的有無情況,生成第一組2M個二進制數據;然后按照同樣方式由外到內逐層解析雪花圖形的其它層葉子在每一條分支上的有無情況,生成N-1個的2M個二進制數據串;
[0043]所述二進制數據生成模塊用于按照生成