格雷碼的編解碼

格雷碼的編解碼(以3位爲例)

1 編碼

從二進制碼轉換到格雷碼,從右到左以0~n-1編號,若二進制碼字第i位和第i+1位相同,則對應格雷碼第i位位0,否則爲1(異或),第n位認爲是0。

十進制 二進制碼 格雷碼
0 000 000
1 001 001
2 010 011
3 011 010
4 100 110
5 101 111
6 110 101
7 111 100

格雷碼好處:相鄰數只有1位變化,最大和最小數首位相連,能避免解碼錯誤。
將這23=82^3=8個格雷碼的同一位上的值取出,從高位到低位排列爲:

0000 1111 0011 1100 0110 0110

0對應0,1對應255,則可形成三幅格雷碼圖,即編碼後的圖像(陰影表示0)
在這裏插入圖片描述

2 解碼

通過生成的三幅格雷碼圖,一幅圖對應一位,最左邊的圖對應最高位,最右邊圖對應最低位,三幅圖一共能解出23=82^3=8種格雷碼
如上面三幅圖的第一位解出:111,第五位解出:000,第七位解出:011。

3 用途

結構光編碼,用於雙目視覺標定,三維重建中,對一個像素進行編碼後,將格雷碼圖集通過投影儀投射到物體上,再用相機採集圖像並對像素解碼,來求得物體點在投影儀圖像中的位置座標。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章