?

一種基于SOC的紅外視頻網絡傳輸系統設計與實現*

2017-02-09 09:52梁夢凡熊利祥馬德寶
計算機與數字工程 2017年1期
關鍵詞:瀏覽器嵌入式紅外

梁夢凡 熊利祥 馬德寶

(武漢華夏理工學院信息工程學院 武漢 430223)

?

一種基于SOC的紅外視頻網絡傳輸系統設計與實現*

梁夢凡 熊利祥 馬德寶

(武漢華夏理工學院信息工程學院 武漢 430223)

針對傳統紅外熱像儀數據無法及時歸總、不能在線實時監測問題,將紅外熱成像技術和網絡傳輸技術相結合,在以SOC為核心的硬件平臺上,設計并實現了一種紅外視頻的無壓縮網絡傳輸系統。該系統通過定制嵌入式Linux系統,編寫網絡傳輸軟件將紅外探測器采集的紅外視頻通過網絡無壓縮地發送至PC的瀏覽器顯示。實驗分析與測試結果表明該系統能以零丟幀率與強魯棒性在嵌入式Linux軟件平臺上實現紅外視頻的網絡傳輸。該系統能夠實現紅外圖像無壓縮網絡傳輸,并能保留圖像細節信息,為后續紅外圖像處理提供保證,具有一定的研究和應用價值。

紅外視頻; 網絡傳輸; SOC; 硬核處理器系統

Class Number TP391

1 引言

紅外成像技術[1~2]具有隱蔽性強、不容易自我暴露和抗干擾能力強的優點[3],在軍事和民用領域有著廣泛的應用[4~6]。在其發揮重要作用的視頻監控方面,傳統的紅外熱像儀存在數據無法及時歸總、不能在線實時監測的缺點,將它與現有的視頻傳輸技術相結合有助于進一步擴大其應用范圍。目前,現有的視頻傳輸方式有很多[7],并且各具特色,根據需求選擇合適的視頻傳輸方式是十分必要的。

具體到邊界入侵、電力設備和森林防火等應用需求,需要在被監控區域的重要監測點都安裝布置紅外攝像機。這種紅外監控項目,具有監控點位極其分散、視頻傳輸距離較遠的特點,傳輸成本低、組網靈活的網絡傳輸只需通過標準以太網接口,僅用一根網線就能實現視頻信息的監控和匯總,從而打破環境、區域和距離的限制。相比于其它視頻傳輸方法,選用網絡傳輸方法具有更大的優勢和更高的需求契合度。另外,從安防監控領域未來發展方向上來看,視頻監控系統總體上是朝著數字化、網絡化、智能化方向發展[8],隨著2015年國務院辦公廳出臺了關于高速網絡建設的指導意見,網絡傳輸技術將成為視頻信號傳輸的主流。

然而,現有基于紅外技術的網絡傳輸方案在傳輸過程中對圖像進行了壓縮處理,這種方案會丟失大量的圖像細節信息、影響監控效果和圖像后處理,所以無法滿足本課題需求,為此,本文研究并實現了一種新的紅外視頻網絡傳輸方案。該方案包含紅外圖像處理和網絡傳輸,在對兩部分的具體需求展開研究后,擬采用包含FPGA和ARM的SOC芯片作為硬件。因為紅外圖像的采集處理需要實時處理大量數據[9],FPGA較高的靈活性和可編程性,正好具有這一優點,所以將FPGA作為紅外圖像采集處理部分的底層硬件是非常合適的。網絡傳輸可選用DSP、ARM和SOC FPGA。DSP不能良好的支持操作系統,且控制不夠靈活;ARM支持嵌入式操作系統、適合實時控制,也適合紅外圖像的網絡傳輸;在FPGA架構中嵌入了基于ARM的硬核處理器系統(HPS)不僅具有FPGA+ARM雙芯片解決方案的優點,而且在以下方面表現更佳:性能更好;由于沒有外部I/O通路,功耗更低;電路板面積更小;PCB的布線、層數更少[10],所以最終確定了FPGA SOC硬件方案。另外,在網絡傳輸部分,選取嵌入式Linux作為底層軟件,并編寫基于Linux的應用程序實現紅外視頻的網絡傳輸。

2 系統總體設計

系統使用紅外探測器采集幀頻為50、分辨率為384×288的紅外圖像,經過一系列的紅外圖像算法處理后,通過網絡點對點的傳輸至瀏覽器顯示。根據SOC FPGA的硬件方案,本文選取DE1-SOC作為硬件平臺。

如圖1所示,系統總體上可以分為兩部分:紅外圖像的采集處理和網絡傳輸,其框圖如圖1所示。DE1-SOC的FPGA部分不斷地從紅外探測器獲取紅外圖像,并完成圖像數據的處理工作,然后通過SOC芯片的內部總線傳輸到HPS;HPS部分搭建嵌入式操作系統Linux,編寫基于Socket的網絡傳輸軟件將圖像數據發送至網絡;在PC瀏覽器的地址欄輸入目標板的IP地址,成功連接視頻服務器后,會顯示服務器中已經編寫好的HTML頁面,然后就能清晰的觀看到實時的紅外視頻。

圖1 系統整體框圖

3 網絡傳輸實現

紅外圖像的獲取與處理主要由FPGA實現。FPGA通過紅外探測器采集模擬圖像數據,經過A/D轉換后變成數字圖像數據,然后對每一幀圖像進行一系列的算法處理,再經過SOC芯片內部的AXI總線[11]傳輸到HPS。紅外視頻網絡傳輸的主要工作集中在SOC的HPS部分。Altera基于ARM的硬核處理器系統(Hard Processor System,HPS)包含處理器、外設和存儲器接口,通過傳輸速度高達125Gb/s的內部AXI Bridge與FPGA硬件部分無縫連接。硬核處理器系統的硬件資源有:雙核ARM處理器、1GB DDR3 SDRAM、千兆以太網口、2端口USB Host、SD卡插口、UART to USB和復位鍵等。HPS整個軟件的設計可以分為兩大塊:底層系統軟件Linux的搭建和網絡傳輸軟件的編寫。

3.1 嵌入式Linux搭建

HPS的啟動流程是一個多階段的過程,分為Boot ROM、Preloader[12]、U-boot、Linux系統和應用程序,其中只有Boot ROM固化在HPS內部,其他幾個階段都需要自行定制。

Altera的SoC FPGA是一種應用級處理器解決方案,用戶可以在Qsys工具中配置和刪減ARM端外設,還可以添加與FPGA相連的組件。這些自定義的設定在經過Qsys系統產生和Quartus編譯后生成相關配置文件,并傳遞給軟件,BSP編輯器可以使用該文件產生Preloader源代碼與makefile文件。然后在Altera公司的嵌入式系統設計套件(SOC EDS)安裝目錄的Shell窗口下,執行命令可生成Preloader和U-boot的鏡像文件。編譯Linux內核時首先從rocketboards的git倉庫中獲取Linux內核源碼,然后使用內核中針對socfpga的默認配置進行編譯,即可得到內核鏡像文件zImage。

接下來就是根文件系統的制作,文件系統中需要包含的目錄有:bin,存放基本命令;sbin,存放超級用戶才能使用的命令;etc,存放各種配置文件;lib,存放常用庫文件:dev,存放設備文件,等等。所謂根文件系統的制作就是創建文件系統中的目錄,并在目錄中創建各種文件[13],其制作步驟為:首先下載Busybox源碼包,編譯安裝成功后,新建lib文件夾,并將官方提供的庫文件全部拷貝進去。繼續在安裝目錄下新建etc、dev、proc、tmp、home、mnt、sys、var、media目錄。在dev中創建必需的console和null設備,etc中創建inittab、fstab、profile文件,在etc目錄下新建init.d/rcS文件,并往這些文件中填充內容。至此,一個根文件系統就制作成功。最后,將Preloader、U-boot、內核、文件系統分別寫入SD卡,將SD卡插入到SOC板,上電即可啟動。

3.2 網絡傳輸軟件

在嵌入式Linux平臺上,開展了網絡傳輸軟件的設計。傳輸軟件主要包括三個模塊:視頻獲取模塊,網絡傳輸模塊和瀏覽器顯示模塊。

傳輸軟件的數據流向如圖2所示。FPGA將一幀一幀紅外圖像數據寫到HPS的物理地址上,該物理地址和內核中的虛擬地址實現了一致性映射[14],FPGA讀寫物理地址就是操作Linux內核虛擬地址。HPS的視頻獲取模塊獲取紅外圖像數據后拷貝到全局緩沖區。網絡傳輸模塊將圖像數據從全局緩沖區拷貝后通過HTTP協議發送給前端頁面顯示。

圖2 數據流向圖

視頻獲取模塊通過AXI Bridge完成FPGA與HPS數據交互功能,具體流程圖如圖3所示。紅外圖像數據的內部傳輸方案:HPS開辟一塊物理內存,并將其地址通知FPGA。FPGA將紅外圖像數據往該地址上寫,HPS通過字符驅動,將物理內存的數據映射到用戶空間的字符設備上,應用程序通過普通的文件操作函數將圖像數據從字符設備中讀取出來,然后將每一幀無格式的圖像數據包裝成一幅完整的圖像,拷貝到全局緩沖區,對于一幀紅外圖像的處理就結束了。

圖3 HPS與FPGA數據交互

網絡傳輸模塊采用基于TCP協議的Socket程序框架[15],并使用HTTP協議的服務器推送技術完成紅外圖像網絡發送功能。同時,也能夠解析瀏覽器發送給服務器的包含控制命令的HTTP報文字符串,然后執行相應的控制命令。

處理瀏覽器請求的服務器線程流程圖如圖4所示,該服務器是一個支持并發的多線程視頻服務器。當多個瀏覽器同時訪問時,程序會新建多個服務器線程分別對每一個瀏覽器請求進行處理。在主線程中,socket函數創建一個套接字,bind函數指定套接字使用的地址和端口,listen函數做好傾聽準備,最后調用accept函數使服務器線程阻塞等待連接。瀏覽器有HTTP請求到達時,服務器線程會新建一個子線程來處理,而主線程本身會繼續阻塞等待下一個HTTP請求。在子線程中,首先讀取套接字中的HTTP請求報文,然后解析請求類型然后執行相應的動作。

圖4 服務器線程流程圖

瀏覽器顯示模塊采用HTML、CSS、JavaScript和Ajax編寫:HTML編寫頁面內容,CSS進行頁面布局,JavaScript定義網頁的行為,Ajax實現網頁與服務器的交互。整個瀏覽器頁面分為兩大部分:圖像顯示部分和控制部分,如圖5所示。

圖5 前端顯示頁面

瀏覽器頁面中的顯示部分負責接收和顯示服務器通過網絡發送過來的紅外圖像數據;控制頁面上含有功能開關和串口命令,在點擊按鈕之后,瀏覽器會向服務器發送相應的命令,實現對服務器的控制。

系統首先完成了FPGA紅外圖像采集處理工程的設計,然后在HPS部分根據FPGA工程文件生成Preloader和U-boot文件,編譯內核和制作根文件系統,并將四個部分依次寫入SD卡,從而搭建了一個可啟動的嵌入式Linux系統。在嵌入式Linux平臺上,通過實現視頻獲取模塊,網絡傳輸模塊和瀏覽器顯示模塊完成了網絡傳輸軟件的設計。

4 實驗結果與分析

搭建硬件環境,將程序編譯后拷貝到目標平臺,對系統進行測試。在瀏覽器的地址欄輸入目標板的IP地址,即可看到前端顯示頁面。如圖6所示,其中圖(a)是原始的紅外圖像,(b)是FPGA調用了兩點校正、盲元校正和圖像增強算法之后的紅外圖像,(c)是紅外圖像全屏顯示的效果。通過實驗和分析可知,系統針對幀頻為50、分辨率為384×288紅外視頻,網絡傳輸過程中沒有出現丟幀現象。

表1 服務器性能測試

為了進一步驗證視頻服務器的性能,分別對幀頻為100和200、分辨率為384×288的紅外偽數據進行測試,測試結果如表1所示,從表中可以看出,在采用百兆網口的電腦上會出現丟幀現象,在千兆網口的電腦上未出現丟幀現象。根據計算可得,每幀紅外圖像的數據量為109.05K,幀頻為100的紅外視頻,每秒鐘的數據量為:10905K,幀頻為200的紅外視頻,每秒鐘的數據量為:21810K。百兆網口的峰值帶寬為12800K,幀頻為100和200的紅外視頻每秒數據量過大,在使用百兆網口傳輸時丟幀是必然的;而千兆網口的峰值帶寬為128000K,遠大于幀頻為100和200的紅外視頻每秒數據量,所以沒有傳輸過程未丟幀。另一方面,視頻服務器長時間運行時,未出現瀏覽器畫面卡死和系統死機現象,說明服務器同樣具有較好的穩定性。

圖6 前端顯示效果

5 結語

本文針對邊界入侵、電力設備和森林防火等重點看護場合的紅外視頻監控需求,對紅外視頻監控系統中的網絡傳輸技術展開研究,設計了一種基于FPGA+HPS架構的紅外視頻網絡傳輸方案,FPGA完成紅外圖像的采集處理,HPS實現網絡傳輸。最終,本文設計的網絡傳輸方法成功將分辨率為384 × 288的紅外探測器獲取的圖像數據,通過網絡發送至瀏覽器頁面顯示。實驗測試表明,本文設計的方法能以零丟幀率與強魯棒性在嵌入式Linux軟件平臺上實現紅外視頻的網絡傳輸,并且工作穩定、可靠,滿足系統需求,為今后的紅外監控系統提供了一種新的視頻傳輸方案,具有一定的應用前景。

[1] 代少升,李季碧,張天騏,等.紅外焦平面陣列成像及其非均勻性校正技術[M].北京:科學出版社,2015:1-9. DAI Shaoshen, LI Jibi, ZHANG Tianqi, et al. Infrared Focal Plane Array Imaging and Non-uniformity Correction Technique[M]. Beijing: Science Press,2005:1-9.

[2] 蔡毅,湯錦亞.對紅外熱成像技術發展的幾點看法[J].紅外技術,2000,22(2):2-6. CAI Yi, TANG Jinya. Some Opinions on the Development of Infrared Thermal Imaging Technology[J]. Infrared Technology,2000,22(2):2-6.

[3] 代具亭,湯心溢,王世勇,等.掃描型紅外焦平面探測器圖像實時傳輸系統[J].激光與紅外,2016,46(4):476-480. DAI Juting, TANG Xinyi, WANG Shiyong, et al. Real-time image transmission system of scanning IRFPA[J]. Laser & Infrared,2016,46(4):476-480.

[4] 雷鳴,李璐.基于PBS的遠程火光紅外探測系統研究[J].計算機與數字工程,2016(2):264-372. LEI Ming, LI Lu. Remote Fire Infrared Detection System Based on PBS[J]. Computer & Digital Engineering,2016(2):264-372.

[5] 樊爭奇.紅外警戒設備對外接口檢測儀設計[J].計算機與數字工程,2013,41(3):499-501. FAN Zhengqi. Design of the Infrared Warning Device External Interface Detection Instrument[J]. Computer & Digital Engineering,2013,41(3):499-501.

[6] Kun Liang, Yong Ma, Yue Xie, et al. A new adaptive contrast enhancement algorithm for infrared images based on double plateaus histogram equalization[J]. Infrared Physics & Technology,2012,55(4):309-315.

[7] 汪光華.智能安防——視頻監控全面解析與實例分析[M].北京:機械工業出版社,2012:189-196. WANG Guanghua. Intelligent Security — A Comprehensive Analysis and Case Analysis of Video Surveillance[M]. Beijing: Mechanical Industry Press,2012:189-196.

[8] 劉鑫,楊鑫.視頻監控系統的應用現狀與發展趨勢[J].信息通信,2015(9):178-178. LIU Xin, YANG Xin. Application and Development Trend of the Video Surveillance System[J]. Information & Communication,2015(9):178-178.

[9] 唐京城,胡海.基于SOPC的實時紅外圖像處理系統[J].計算機與數字工程,2006,34(7):168-171. TANG Jingcheng, HU Hai. SOPC-based Real-time Infrared Image Processing System[J]. Computer & Digital Engineering,2006,34(7):168-171.

[10] 任愛鋒,羅豐,宋士權,等.基于FPGA的嵌入式系統設計[M].西安:西安電子科技大學出版社,2014. REN Aifeng, LUO Feng, SONG Shiquan, et al. Design of Embedded System based on FPGA[M]. Xi’an: Xi’an Electronic and Science University Press,2014.

[11] 蔣周良,權進國,林孝康.AMBA總線新一代標準AXI分析和應用[J].微計算機信息,2006,22(29):275-277. JIANG Zhouliang, QUAN Jinguo, LIN Xiaokang. Analys is and Application of New Generation AMBA 3 AXI Protocol[J]. Control & Automation,2006,22(29):275-277.

[12] 王鑫.基于Cyclone V的紅外熱像儀嵌入式系統研究[D].南京:南京理工大學,2015. WANG Xin. Research on Embedded System of Infrared Thermal Imaging System based on Cyclone V[D]. Nanjing: Nanjing University of Science and Technology,2015.

[13] 韋東山.嵌入式Linux應用開發完全手冊[M].北京:人民郵電出版社,2015:335-339. WEI Dongshan. Embedded Linux application development complete manual[M]. Beijing: People’s Posts and Telecommunications Publishing House,2015:335-339.

[14] 宋寶華.Linux設備驅動開發詳解[M].北京:人民郵電出版社,2008:230-234. SONG Baohua. The Explanation of Development of Linux Device Driver[M]. Beijing: People’s Posts and Telecommunications Publishing House,2008:230-234.

[15] 楊水清,張劍,施云飛.精通ARM嵌入式Linux系統開發[M].北京:電子工業出版社,2012:476-489. YONG Shuiqing, ZHANG Jian, SHI Yunfei. Proficient in ARM Embedded Linux System Development[J]. Beijing: Publishing House of Electronics Industry,2012:476-489.

Design and Implementation of An Infrared Video Network Transmission System Based on SOC

LIANG Mengfan XIONG Lixiang MA Debao

(Information Engineering College, Wuhan Huaxia University of Technology, Wuhan 430223)

Aiming at the problem of traditional infrared thermal imager that data cannot be timely collected and cannot be online real-time monitoring, with the combination of infrared thermal imaging technology and network transmission technology, an infrared video transmission system without compression is designed based on the SOC hardware platform. The system transfers infrared video without compression which is collected by infrared detectors to PC browser through the network, and this is completed by customizing the embedded Linux system, developing the network transmission software. The experimental analysis and test results show that the system can transmit infrared videos over network on the embedded Linux system with no frame loss and a strong robustness. This system can transfer the infrared image without compression through network, and keep the image detail information, also can provide guarantee for the follow-up infrared image processing, have certain research and application value.

infrared video, network transmission, SOC, HPS

2016年7月10日,

2016年8月26日

2014年度湖北省教育廳科學技術研究項目(編號:B2014279);武漢華夏理工學院科研基金項目(編號:13016)資助。

梁夢凡,女,碩士研究生,講師,研究方向:無線網絡通信。熊利祥,男,碩士研究生,講師,研究方向:信號處理與分析。馬德寶,男,博士研究生,教授,研究方向:空間信號獲取與分析。

TP391

10.3969/j.issn.1672-9722.2017.01.019

猜你喜歡
瀏覽器嵌入式紅外
網紅外賣
Focal&Naim同框發布1000系列嵌入式揚聲器及全新Uniti Atmos流媒體一體機
閃亮的中國紅外『芯』
微軟發布新Edge瀏覽器預覽版下載換裝Chrome內核
反瀏覽器指紋追蹤
8路紅外遙控電路
TS系列紅外傳感器在嵌入式控制系統中的應用
嵌入式PLC的設計與研究
嵌入式單片機在電機控制系統中的應用探討
瀏覽器
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合