FPGA+DSP核心架構的實時三維圖像信息處理
3 軟件設計與實現(xiàn)
3.1 圖像預處理算法
如圖3,激光帶預處理算法的實現(xiàn)[2]為:由于有激光幀和無激光幀是依次交替產(chǎn)生的,因此首先要保存一幀有激光幀,在其下一幀,即無激光幀到來時,將保存的有激光幀和當前無激光幀的相同行、列的點相減,再對結果進行亮度提取,處理完成后的數(shù)據(jù)存入目標緩存。
如圖4,實現(xiàn)提取輪廓線算法分為三個部分[3],首先由計算比較模塊對輸入像素點的值與預先計算好的閾值進行比較,判斷其是否為目標像素;然后利用一個序列檢測模塊進行一維尺度濾波以去除某些噪聲點;再經(jīng)過一個邊緣檢測模塊,提取出每行的第一個目標像素作為目標的左邊緣點;完成后將此點所對應的列地址數(shù)據(jù)存入目標緩存。在某些情況下,可能整行都檢測不到邊緣點,這時將0存入目標緩存作為無邊緣點的標識。
提取中心線算法實現(xiàn)比較簡單,只需對目標緩存的寫允許信號加以控制,使RGB數(shù)據(jù)只能在每行的中心點處寫入目標緩存即可。
3.2 三維重建和構型
如圖5所示,高速DSP將根據(jù)預處理信息得到的激光標志線、輪廓線和中心顏色線數(shù)據(jù)與源數(shù)字化圖像結合起來進行三維重建。首先根據(jù)獲取的圖像標志點數(shù)據(jù)結合控制點三維坐標數(shù)據(jù)計算出系統(tǒng)定標數(shù)據(jù);其次根據(jù)輪廓線計算物體外表面展開圖,再依據(jù)定標數(shù)據(jù)結合展開圖和機械參數(shù)對圖像中的坐標點進行計算,給出數(shù)據(jù)集,輸出深度數(shù)據(jù)文件;最后對多次掃描的數(shù)據(jù)進行融合,將離散點構型成立體模型(或立體彩色模型),將模型生成DXF、STL等數(shù)據(jù)文件傳入PC機,使用后端處理軟件進行顯示[3]。
3.3 算法實現(xiàn)
圖像預處理算法設計使用Verilog HDL在Xilinx公司的ISE8.1集成編譯環(huán)境下成功實現(xiàn);FPGA開發(fā)流程不再贅述。
DSP三維重建算法已使用C語言在ADI公司Visual DSP++環(huán)境下成功實現(xiàn)[4]。算法實現(xiàn)步驟如下:①用C語言編程實現(xiàn)算法。②使用Visual DSP++編譯器將源程序編譯成目標文件。③根據(jù)產(chǎn)生的目標文件,分析結果及源程序結構并優(yōu)化源代碼。④應用TigerSHARC 201評估板進行運算時間評估。⑤重復上述步驟直至達到系統(tǒng)實時性要求,最后下載到目標板。
整個系統(tǒng)聯(lián)機運行穩(wěn)定,滿足設計要求,實時性好。
實時三維圖像信息處理以其數(shù)據(jù)量大、速度要求高、處理過程復雜的特點使其難以使用集成電路實現(xiàn)。本文研究的以目前最新高性能處理器的FPGA+DSP為核心架構的三維圖像處理系統(tǒng)精心設計了算法的硬件實現(xiàn),充分利用了兩種處理器的長處。實驗表明,該系統(tǒng)有著良好的性能,對實現(xiàn)基于網(wǎng)絡的實時三維掃描應用,如三維傳真、機械遠程加工、快速成型和虛擬現(xiàn)實,有著重要的意義。
參考文獻
[1] LEI HAIJUN,LI DEHUA.High-Speed aerial image processing system based on DSP,In neural nerwork and distributed processing,Proceedings of SPIE Vol.4555,2001:131-136
[2] 雷海軍,李德華,王建永等.一種結構光條紋中心快速檢測方法[J].華中科技大學學報,2003,31(1):74-76.
[3] 金 剛.三維掃描儀中三維信息獲取理論與技術研究[D].華中科技大學博士學位論文,2002,(3)
[4] 陸海東,吳明贊.基于FPGA+DSP結構的小波圖像處理系統(tǒng)設計[J],電子技術應用,2006,(3)93-95
評論