賀大偉,高曉陽,2*,劉 佳,侯寶華,李紅嶺,2
(1甘肅農業大學工學院,蘭州 730070;2甘肅省干旱生境作物學重點實驗室,蘭州 730070)
基于ARM 11的圖像采集與傳輸系統設計與實現
賀大偉1,高曉陽1,2*,劉 佳1,侯寶華1,李紅嶺1,2
(1甘肅農業大學工學院,蘭州 730070;2甘肅省干旱生境作物學重點實驗室,蘭州 730070)
為實現大麥田間狀況的遠程監測和及時有效的農業生產管理,設計開發了一種基于ARM11微處理器和Linux操作系統的嵌入式無線遠程視頻監控系統。該系統選取S3C6410并構建Linux操作系統為采集節點,采用ZigBee構成田間信息采集無線局域網絡,選用OV9650攝像頭采集圖像,用Video4Linux調控和接收視頻,視頻通過研究改進的優化H.264編碼后,通過無線網橋傳送到接收端解碼存儲和顯示。結果表明:該無線視頻監控系統運行穩定,傳輸壓縮率高于93%,誤包率小于5%。
圖像采集;無線傳輸;視頻監控;Linux;ZigBee
農作物現場信息獲取是精細農業的關鍵技術。近年來,農業現場視頻監控和遠距離視頻傳輸問題的研究逐漸成為國內外專家學者研究的熱點。如:基于嵌入式Linux和圖像傳感器OV3640的視頻采集系統,采用ARM設備節點攝像頭監控,但沒有考慮通過遠程控制方式進行監控和傳輸[1];基于GPRS的遠程圖像傳輸系統,通信成本較高,且GPRS傳輸速率不能滿足視頻實時傳輸的需求[2];基于ZigBee和GPRS的農業圖像采集系統,其傳輸速率也難達到實時視頻傳輸的需求[3]。為獲取大麥田間生長信息和實現遠距離視頻傳輸,本研究提出了一種基于嵌入式Linux操作系統和ZigBee無線網以及無線網橋技術的大麥圖像采集無線傳輸系統。
1.1 大麥生長監控系統的結構設計
本系統采用韓國三星飛凌公司的S3C6410開發板進行大麥田間視頻采集節點設計開發,開發板移植的操作系統為Linux 3.0.1。選用OV9650攝像頭實現對視頻圖像的采集,各視頻采集功能節點以ZigBee構成無線局域網絡,各節點電源均由本項目研發的太陽能光伏供電系統提供,選用S3C6410處理器作為本系統的網絡協調器??紤]到試驗的環境和距離等影響因素,本研究選用以2.4 GHz的802.11 b無線網橋傳輸標準的室外網橋。由于本研究的試驗田與PC接收終端間有1—2 km的距離且中間有障礙物,故采用信號反射方案,在試驗田和PC終端處各放置一個無線網橋,采用一對12 dbi的定向天線建立起通信,采集到的數據通過所選無線網橋傳送到視頻監控終端PC機。
1.2 系統軟件的設計
本系統在ADS集成開發環境下進行軟件開發。其節點(協調器)軟件設計流程包括加載Bootloader引導程序、Linux系統內核和驅動程序移植以及應用層程序設計,其設備驅動包括Camera、Nand Flash和WiFi等驅動程序設計。本系統的應用軟件有視頻采集模塊、ZigBee模塊、WiFi模塊和MFC編碼模塊等。
本系統采用OV9650攝像頭實現對視頻圖像信號的采集,在Linux操作系統下,V4L驅動的Video設備節點路徑為/dev/video/中的VideoX,通過驅動程序V4L調用API接口函數,實現對視頻的采集和調控。視頻采集流程如圖1所示。此外,本視頻監控系統的主圖形顯示界面的主窗口和子窗口框架均通過調用相應函數實現。

圖1 視頻數據采集流程圖Fig.1 The flow chart of video date acquisition
3.1 大麥視頻H.264編碼程序設計
在不影響圖像質量的前提下,為有效減少編碼計算的復雜度,首先對編碼器進行優化,主要對編碼器的循環過程和數學運算實施了優化。在執行循環的過程中,當循環體內語句較少時,采用循環部分展開或循環展開;當進行數學運算時,按照不同計算方法進行優化,采用移位對乘法運算進行優化;采用乘法對除法運算進行優化;對于“+1”和“-1”的操作,使用自增和自減運算符。
本系統通過MFC模塊實現基于H.264的視頻編碼,由設備文件/dev/s3c-mfc對MFC模塊進行訪問,然后調用ioctl函數實現相關操作。H.264編碼流程如圖2所示。

圖2 基于MFC模塊的H264壓縮編碼流程圖Fig.2 The flowchar t of H264 encoding process based on MFC m odule

圖3 H.264解碼流程圖Fig.3 The flow chart of H.264 decoding
3.2 H.264解碼程序設計
H.264的解碼操作是通過開源的FFmpeg實現的,解碼得到的YUV420格式的圖像數據將會存儲在pFrame中。使用FFmpeg進行解碼主要步驟如圖3所示。
此外,本研究對解碼器軟件進行優化處理。由于本系統采用的是基于ARM11的嵌入式平臺和gcc編譯器,所以主要從編寫高質量的C語言程序上來實現解碼器的優化,如將變量類型char改成signed;在適當條件下展開循環體,如果循環體至少執行1次,優先選用do-while;將函數參數限制在4個以內,局部變量限制在12個以內等等。本系統選用開源FFmpeg進行解碼操作,由于FFmpeg參考代碼在CAVLC解碼部分存在所需空間過大的問題,采用分級映射方式來減少內存搬移的優化處理。首先定義一個最大長度碼字table_nb_bits(數值為8),如果大于最大長度碼字,則用碼字的高位做為偏移量計算并記為table_nb_bits-len(負數),然后,查找所有的table[][0],如果table_nb_bits-len為正數,則表明所有的碼字均已映射完畢。優化前,色度碼字最大長度為8,占用28B的空間,亮度碼字最大長度為16,占用216B。優化后,色度碼字占用的空間不變,亮度碼字占用28×2 B,減少了內存空間,降低了內存讀取次數,提高了解碼效率。
3.3 視頻傳輸程序設計
本系統中視頻數據的傳輸采用RTP/RTCP實時傳輸協議,實現RTP/RTCP協議的開源庫主要有LIBRTP、JRTPLIB、ORTP,本研究選用JRTPLIB開源庫來實現協議。利用JRTPLIB提供的接口函數實現視頻傳輸的流程如圖4所示。本研究選用地域范圍較小的村級試驗田,各攝像頭采集節點構成的ZigBee網絡采用星型結構,利用ZigBee構成無線局域網絡,其協調器節點將接收到的視頻數據通過無線網橋傳遞到遠端的PC終端。

圖4 視頻傳輸流程圖Fig.4 The flowchart of video transm ission
本研究在甘肅省武威市黃羊鎮農業科學院試驗站進行系統性能試驗。試驗時,大麥試驗田部署6個攝像頭節點依次循環采集視頻信息,采集完成后將數據包壓縮傳輸至協調器,再由協調器傳送至監控終端,依次輪流循環。試驗重復3次,本系統節點發送數據包耗時與數據包發送成功率統計結果如表1所示,采用ATKKPING網絡丟包率測試軟件檢測得到。
從表1可以看出,當視頻數據傳輸距離≤900 m時,數據包發送成功率為100%,并且耗時較短;當視頻數據傳輸距離≥1 000 m時,節點數據包發生丟包現象并且發送成功率也逐漸降低,耗時呈直線上升。分析表明,本系統能夠完成田間視頻數據的有效傳輸,并且耗時較短。

表1 數據包發送耗時與發送成功率(丟包率)Table1 The sending time and successive rate of date packets(packet loss)
本系統采集的圖像分辨率設置為320像素×240像素,采集到1幀視頻圖像轉換為H.264所支持的YUV4:2:0格式后的大小為115 200 B,視頻數據經過基于H.264標準的壓縮試驗如表2所示,壓縮率在93%—98%,經過壓縮明顯降低了網絡數據的傳輸量。本系統每秒所需傳輸帶寬約為1.84Mbps,11 M網絡帶寬完全滿足系統要求。

表2 傳送圖像數據的壓縮率Table 2 Compression rate of transm itted im age data
本研究提出了一種大麥田間視頻采集與無線傳輸系統,并進行了設計實現和調試試驗。針對大麥田間圖像采集與無線網絡傳輸實際需求,進行了軟件、硬件以及編碼優化的設計。經試驗測試,本系統采集一幀攝像頭拍攝的分辨率為320像素×240像素的圖像,數據經H.264硬編碼后約為7 kB。試驗結果表明:系統每秒可傳輸30幀圖像,圖像數據傳輸穩定、失幀率較小、耗時短、傳輸距離長,可滿足實時傳輸視頻的要求。本研究為農業過程監控提供了一種新型技術方法,在農業生產監控領域中具有一定推廣實用價值。
但本系統的固定攝像頭使田間監控范圍較小,在今后研究中若選用具有變焦且帶有云臺的攝像頭將會進一步提高監控效果。
[1]肖德琴,黃順彬,殷建軍,等.基于嵌入式應用的高分辨率農業圖像采集節點設計[J].農業機械學報,2014,45(2):276-281.
[2]王明磊,高曉陽,楊建青,等.大麥田間視頻采集與無線傳輸系統設計[J].中國農業大學學報,2015,20(5):256-261.
[3]毛紅玉,高曉陽,李紅嶺,等.基于ARM和WIFI技術的大麥田間監控系統設計[J].甘肅農業大學學報,2014,49(1):156-160.
[4]趙春江,屈利華,陳明,等.基于ZigBee的溫室環境監測圖像傳感器節點設計[J].農業機械學報,2012,43(11):192-196.
[5]PARK D,PARK J.Wireless sensor network-based greenhouse environment monitoring and automatic control system for dew condensation prevention[J].Sensors,2011,11(4):3640-3651.
[6]毛劍飛,張杰,蔣莉,等.基于改進的H.264的視頻監控系統[J].計算機系統應用,2014,23(4):84-90.
[7]辛長春,婁小平,呂乃光,等.基于FFmpeg的遠程視頻監控系統編解碼[J].電子技術研發,2013,1(2):3-5.
[8]林海東,余強.基于H264的網絡視頻監控系統設計與實現[J].西華大學學報(自然科學版),2014,33(2):22-26.
(責任編輯:閆其濤)
農業生產有問題 三農熱線來幫你 遇到問題怎么辦 專家為你找答案
情系三農 服務三農
上海12316三農服務熱線由上海市農業委員會主辦的一條公益性服務熱線,提供農業生產技術、農產品市場信息、支農惠農和農村集體“三資”政策等方面的咨詢服務。
熱線以電話咨詢、“農民一點通”視頻咨詢、網上問答、短信咨詢、書信回復等方式,免費為全國農民提供咨詢服務。全年365天,每天早8點至晚8點專家值班,晚8點至次日早8點電話留言。歡迎廣大農民朋友來電、來信、來訪咨詢。
上海三農服務熱線管理中心地址:上海市仙霞西路779號3號樓3115室 郵編:200335
上海三農服務熱線E-mail:12316@shac.gov.cn
上海農業網:www.shac.gov.cn(網上提問請至“互動中心”欄目)
歡迎撥打:021-12316
Design and implementation of image acquisition and transmission system based on ARM11
HE Da-wei1,GAO Xiao-yang1,2*,LIU Jia1,HOU Bao-hua1,LIHong-ling1,2
(1College of Engineering,Gɑnsu Agriculturɑl University,Lɑnzhou 730070,Chinɑ;2Gɑnsu Provinciɑl Key
Lɑborɑtory of Aridlɑnd Crop Science,Lɑnzhou 730070,Chinɑ)
In order to realize remotemonitoring and effective agricultural production management in barley field,the paper presents a video acquisition and wireless transmission system for barley growth surveillance based on ARM11 and Linux operating system.In this system camera OV9650 was selected as image acquisition device,S3C6410 as a key processor to build a Linux operating system platform in which V4L was used for barley image acquisition and control.The imageswere transferred to a far terminal receiver by coded with H264,where ZigBee network was consisted of coordinator and accessing nodes and a pair of wireless bridges were used for communication.The paper also presents H.264 coded optimization project.The results showed that this wireless image monitoring platform run well and the compression rate of transmission is higher than 93%,the packeterror rate is less than 5%.
Video acquisition;Wireless transmission;Video surveillance;Linux;ZigBee
S126
A
1000-3924(2017)01-155-05
2016-06-27
國家自然科學基金項目(61164001)
賀大偉(1989—),男,在讀碩士,主要從事農業電氣化與自動化研究。E-mail:837962053@qq.com,Tel:15095371787
*通信作者,高曉陽(1962—),男,博士,教授,主要從事農業信息檢測與智能控制技術及系統研究。E-mail:gaoxiao1081@sina.com,Tel:13993105097