FPGA+DSP實時三維圖像信息處理系統
發布時間:2008/6/16 0:00:00 訪問次數:464
三維圖像信息處理一直是圖像視頻處理領域的熱點和難點,目前國內外成熟的三維信息處理系統不多,已有的系統主要依賴高性能通用pc完成圖像采集、預處理、重建、構型等囊括底層和高層的處理工作。三維圖像處理數據量特別大、運算復雜,單純依靠通用pc很難達到實時性要求,不能滿足現行高速三維圖像處理應用。
本系統中,采用fpga實現底層的信號預處理算法,其處理數據量很大,處理速度高,但算法結構相對比較簡單,可同時兼顧速度和靈活性。高層處理算法數據量較少、算法結構復雜,可采用運算速度快、尋址方式靈活、通信機制強大的dsp實現。
1 三維圖像處理系統組成
1.1 硬件系統構成
ccd攝像機采集的多路模擬視頻信號經max440按需要選定后,送入模數視頻轉換器saa7111a將攝像機輸出的模擬全電視信號cvbs轉換成數字視頻信號;之后視頻信號流入圖像預處理器spartan xc3s400,經過提取中心顏色線、提取激光標志線和物體輪廓線的預處理后,配送到兩片ts201進行定標參數計算、坐標計算、三維重建、數據融合以及三維構型的核心運算;最后將dxf文件數據經由pci接口傳送到pc,完成三維圖像變換和顯示等最終處理;整個系統的邏輯連接和控制以及部分數據交換由另一片fpga來完成。
在體系結構設計上,fpga處理器采用simd結構,在一個控制單元產生的控制信號下,數據通路中的三個算法并行運行。由于該系統要求處理速度較高,因而在數據通路中采用了流水線技術以提高速度。此外,本系統中為圖像存儲采用了許多大容量高速fifo,以達到減少地址線,簡化控制的目的。
1.2 處理器芯片
為滿足系統大數據量快速處理的要求,三款核心芯片均為最新高性能產品,其硬件方面的特點給系統設計帶來極大的方便,其優異的運算性能可確保系統的快速實時性。
fpga芯片采用xilinx公司近期推出的采用90nm工藝的spartan3系列的xc3s400,該系列芯片是目前為止工藝最先進、價格較低、單位成本內i/o管腳最多的平臺級可編程邏輯器件。xc3s400芯片內部時鐘頻率可達326mhz,信號擺幅1.14v和3.45v,i/o口支持622mbps的數據傳輸率,具有高性能selectram內部存儲器,多達4個數字時鐘管理器模塊和8個全局時鐘多路復用緩沖器。
dsp采用adi公司的最新款基于并行處理設計、具有海量片內ram的tigersharc adsp ts201。其內部集成的ram容量高達24mbit,核心速度最高達600mhz。內設雙運算模塊,每個包含一個alu、mul、64bit移位寄存器、32個32bit寄存器組和一個128bit通信邏輯單元,相關的數據對齊緩沖器;雙整數alu,各有獨立的寄存器組,提供數據尋址和指針操作;4個128bit寬度內部總線,每個都連接到6個4mbit的內部存儲器塊;提供與主機處理器、多處理器空間、片外存儲器映射外設、外部sram和sdram相連的外部端口;14通道dma控制器;4個全雙工低電壓差分信號輸入的link port;具有片內仲裁總線,用于多dsp無縫的連接。
數字化器采用了philips公司的增強視頻輸入處理器(evip)——saa7111a模數轉換器。該產品廣泛應用于個人視頻、多媒體、數字電視、可視電話、圖像處理、實時監控等領域,純3.3v cmos工藝的模擬視頻前端和數字視頻編碼器,能夠將pal/tsc/ecam視頻信號解碼為與ccir-601相兼容的多種數字視頻格式,支持tv或vtr信號源的cvbs或s-video視頻信號,最高圖像分辨率可達720×576,支持24位真彩色,可以通過串行總線動態配置saa7111a模數轉換器的工作方式和各種參數。
2 模塊設計
2.1 視頻采集與數字化模塊
由于模擬攝像機采集的是pal制的復合視頻信號(cvbs),所以必須先將其數字化才能開始后繼數字視頻處理。視頻采集與數字化模塊主要包括一片視頻多路復用器max440、一片saa7111a、一片i2c接口控制器pcf8584和一些連接邏輯。max440用來快速切換來自不同模擬輸入端的模擬視頻流,saa7111a模數轉換器是該模塊的核心,它采集模擬視頻,將其數字化為720×576的rgb(8,8,8)真彩色信號格式的數字視頻,其輸出的rgb真彩色信號為16位,其中高字節和低字節數據周期分別為74ns和37ns,即低字節的頻率是高字節的1倍。這樣就要利用觸發器和兩個分別為13.5mhz和27mhz的時鐘信號,將輸入數據格式轉換為24位、周期均為74ns的rgb真彩色信號,此外,它還為整個硬件系統提供必要的時鐘和同步信號;pci接口控制器通過pcf8584來配置和控制saa7111a,連接邏輯由fpga實現。
2.2 fpga圖像預處理模塊
預處理從巨大的視頻信息中提取極少量的對三維重建有用的信息傳送至dsp后處理。該模塊包括主處理fpga芯片和高速fifo,負責實時采集視頻信號并對采集到的無壓縮的視頻信息進行預處理,包括提取激光中心線、提取輪廓線、提取中心顏色線三個部分。
為了提高視頻采集的整體性能,更重要的是為預處理提供相鄰的有激光幀和無激光幀,必須通過視頻幀緩存首先暫存無激光幀
三維圖像信息處理一直是圖像視頻處理領域的熱點和難點,目前國內外成熟的三維信息處理系統不多,已有的系統主要依賴高性能通用pc完成圖像采集、預處理、重建、構型等囊括底層和高層的處理工作。三維圖像處理數據量特別大、運算復雜,單純依靠通用pc很難達到實時性要求,不能滿足現行高速三維圖像處理應用。
本系統中,采用fpga實現底層的信號預處理算法,其處理數據量很大,處理速度高,但算法結構相對比較簡單,可同時兼顧速度和靈活性。高層處理算法數據量較少、算法結構復雜,可采用運算速度快、尋址方式靈活、通信機制強大的dsp實現。
1 三維圖像處理系統組成
1.1 硬件系統構成
ccd攝像機采集的多路模擬視頻信號經max440按需要選定后,送入模數視頻轉換器saa7111a將攝像機輸出的模擬全電視信號cvbs轉換成數字視頻信號;之后視頻信號流入圖像預處理器spartan xc3s400,經過提取中心顏色線、提取激光標志線和物體輪廓線的預處理后,配送到兩片ts201進行定標參數計算、坐標計算、三維重建、數據融合以及三維構型的核心運算;最后將dxf文件數據經由pci接口傳送到pc,完成三維圖像變換和顯示等最終處理;整個系統的邏輯連接和控制以及部分數據交換由另一片fpga來完成。
在體系結構設計上,fpga處理器采用simd結構,在一個控制單元產生的控制信號下,數據通路中的三個算法并行運行。由于該系統要求處理速度較高,因而在數據通路中采用了流水線技術以提高速度。此外,本系統中為圖像存儲采用了許多大容量高速fifo,以達到減少地址線,簡化控制的目的。
1.2 處理器芯片
為滿足系統大數據量快速處理的要求,三款核心芯片均為最新高性能產品,其硬件方面的特點給系統設計帶來極大的方便,其優異的運算性能可確保系統的快速實時性。
fpga芯片采用xilinx公司近期推出的采用90nm工藝的spartan3系列的xc3s400,該系列芯片是目前為止工藝最先進、價格較低、單位成本內i/o管腳最多的平臺級可編程邏輯器件。xc3s400芯片內部時鐘頻率可達326mhz,信號擺幅1.14v和3.45v,i/o口支持622mbps的數據傳輸率,具有高性能selectram內部存儲器,多達4個數字時鐘管理器模塊和8個全局時鐘多路復用緩沖器。
dsp采用adi公司的最新款基于并行處理設計、具有海量片內ram的tigersharc adsp ts201。其內部集成的ram容量高達24mbit,核心速度最高達600mhz。內設雙運算模塊,每個包含一個alu、mul、64bit移位寄存器、32個32bit寄存器組和一個128bit通信邏輯單元,相關的數據對齊緩沖器;雙整數alu,各有獨立的寄存器組,提供數據尋址和指針操作;4個128bit寬度內部總線,每個都連接到6個4mbit的內部存儲器塊;提供與主機處理器、多處理器空間、片外存儲器映射外設、外部sram和sdram相連的外部端口;14通道dma控制器;4個全雙工低電壓差分信號輸入的link port;具有片內仲裁總線,用于多dsp無縫的連接。
數字化器采用了philips公司的增強視頻輸入處理器(evip)——saa7111a模數轉換器。該產品廣泛應用于個人視頻、多媒體、數字電視、可視電話、圖像處理、實時監控等領域,純3.3v cmos工藝的模擬視頻前端和數字視頻編碼器,能夠將pal/tsc/ecam視頻信號解碼為與ccir-601相兼容的多種數字視頻格式,支持tv或vtr信號源的cvbs或s-video視頻信號,最高圖像分辨率可達720×576,支持24位真彩色,可以通過串行總線動態配置saa7111a模數轉換器的工作方式和各種參數。
2 模塊設計
2.1 視頻采集與數字化模塊
由于模擬攝像機采集的是pal制的復合視頻信號(cvbs),所以必須先將其數字化才能開始后繼數字視頻處理。視頻采集與數字化模塊主要包括一片視頻多路復用器max440、一片saa7111a、一片i2c接口控制器pcf8584和一些連接邏輯。max440用來快速切換來自不同模擬輸入端的模擬視頻流,saa7111a模數轉換器是該模塊的核心,它采集模擬視頻,將其數字化為720×576的rgb(8,8,8)真彩色信號格式的數字視頻,其輸出的rgb真彩色信號為16位,其中高字節和低字節數據周期分別為74ns和37ns,即低字節的頻率是高字節的1倍。這樣就要利用觸發器和兩個分別為13.5mhz和27mhz的時鐘信號,將輸入數據格式轉換為24位、周期均為74ns的rgb真彩色信號,此外,它還為整個硬件系統提供必要的時鐘和同步信號;pci接口控制器通過pcf8584來配置和控制saa7111a,連接邏輯由fpga實現。
2.2 fpga圖像預處理模塊
預處理從巨大的視頻信息中提取極少量的對三維重建有用的信息傳送至dsp后處理。該模塊包括主處理fpga芯片和高速fifo,負責實時采集視頻信號并對采集到的無壓縮的視頻信息進行預處理,包括提取激光中心線、提取輪廓線、提取中心顏色線三個部分。
為了提高視頻采集的整體性能,更重要的是為預處理提供相鄰的有激光幀和無激光幀,必須通過視頻幀緩存首先暫存無激光幀
上一篇:FPGA器件選型研究