關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 光柵式結構光傳感器原理分析

        光柵式結構光傳感器原理分析

        作者: 時間:2012-03-27 來源:網絡 收藏

        對經過二進制編碼的光平面識別是簡便的。首先,對攝像機接受到的光條進行處理,根據光條的寬窄將光條譯成由二進制碼組成的序列,然后根據編碼規則將得到的序列分解成組,最后識別出每一個具體的光平面。需要指出的是,由于被測物體表面尺寸和攝像機視場的限制,攝象機獲得的光條數一般來說總是小于投射器投射的光平面數。

        本文引用地址:http://www.104case.com/article/160894.htm

        例如,采用二位二進制碼對攝像機接受的光條處理后得到“001101”,按二位一組對該序列進行分組,只可能有兩種結果:“00”“11”“01”和“0”“01”“10”“1”。前者對應的分組序號為0、1、3這顯然是與編碼規則相矛盾的。后者對應的分組序號為未知、1、2、未知,這是符合編碼規則的。據此可得到前面的未知光條為0分組第二根光條,后面的未知光條為3分組第一根光條??梢姡晥鲋械拿扛鈼l都可以有效地識別出來。

        對于表面法向基本不變或變化很小的物體,由文獻[1]可知,將寬窄光條的寬度比做成2:1,即可以非常有效地將寬窄光條區分開來。記threshold1=1.5,threshold2=0.6。則若Δ1/Δ2>threshold1=1.5,可判斷1為寬光條,2為窄光條;若Δ1/Δ2Δ1/Δ2的值,直到出現前兩種情況,我們就可以判斷出光條到底為寬或窄。(Δ1/Δ2分別為光條1、2在象面投影的寬度)。

        3.2偽隨機序列編碼方法

        前面講的n位二進制編碼方法可以對n.n2個光條進行編碼。當n增大時,能夠編碼的光條數增加很快。但是,我們衡量一種編碼方法優劣的主要標準是解碼所需信息的多少,解碼所需的信息量越少越好。

        在n位二進制編碼中,為確保能夠正確譯碼,至少需要接受到3n-1個連續的光條。對于n=4的情況,能對64個光條進行編碼。但要正確譯碼,則至少需要接收到連續11個光條。現在我們要考慮的問題是能否盡量減少譯碼所需的光條數。研究發現:M序列[7]能夠使譯碼所需的信息減少。

        下面先來講述M序列的構成。設一無限長二元序列各元素之間存在下列關系:

        Xi=a1Xi-1a2Xi-2…apXi-p(2)

        其中:i=p+1,p+2,…,系數a1,a2,……,ap-1取值0或1,系數ap總和為1,表示模2的和。

        只要適當地選擇系數a1,a2,……,ap,就可以使序列以(2p-1)bit的最長周期循環。這種最長周期的二值序列就稱為M序列。

        取X4=1,X3=0,X2=1,X1=0,

        令Xi=Xi-3Xi-4則可得X15,X14,……X1如下:111100010011010。我們發現對于任意連續的4個x,其二進制值均不相同,故只要知道了任意連續的4個x,即可知道這組x在序列中所處的位置,從而進行有效的譯碼。

        對M序列譯碼所需的信息比n位二進制碼少,當p=6時,可以對63根光條進行編碼,這時在視場中只要看到連續的6根光條即可進行譯碼;而對于n位二進制編碼如果對64根光條進行了編碼,譯碼則需要11根光條。

        用二維數組a[15][4]存放每相鄰4根光條的編號。例如,第12、11、10、9根光條其二進制表示為1000,則a[8]={12,11,10,9};第8、7、6、5根光條,其二進制表示為1001,則a[9]={8,7,6,5}。假設我們得到連續的4根光條二進制表示為1001,則通過查數組a的第9行,得到這4根光條的序號分別是8、7、6、5譯碼完成。

        可見,通過的編碼在一定程度上解決了光條的識別問題,提高了的使用范圍。若物體的表面有些地方法向變化非常劇烈,按照上面的方法需將寬窄光條的比值做得很大,而為了保證光條中心的計算精度窄光條又不能做得太窄,若單單通過提高寬窄光條的比值,必然導致視場中的光條急劇減少。由于法向變化非常劇烈的地方是很少的,通過糾錯編碼技術就可以將光條的寬度局部反轉的地方糾正過來,使問題得到解決。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 望江县| 合川市| 堆龙德庆县| 丰县| 平罗县| 廊坊市| 漳州市| 西乌| 高雄县| 东莞市| 西华县| 肇庆市| 和田县| 德江县| 霍山县| 阿巴嘎旗| 昂仁县| 老河口市| 沧源| 沙洋县| 正宁县| 连平县| 江城| 黄石市| 府谷县| 永吉县| 通山县| 罗江县| 昌宁县| 竹北市| 赤城县| 黄浦区| 石屏县| 紫云| 贺兰县| 冷水江市| 平邑县| 孙吴县| 靖州| 长寿区| 铁岭县|