電子產業(yè)一站式賦能平臺

PCB聯(lián)盟網

搜索
查看: 2377|回復: 0
收起左側

華中科技大學智能與嵌入式計算_基于ARM的嵌入式無線視頻采集系統(tǒng)設計

[復制鏈接]

2607

主題

2607

帖子

7472

積分

高級會員

Rank: 5Rank: 5

積分
7472
跳轉到指定樓層
樓主
發(fā)表于 2020-7-30 14:49:18 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
華中科技大學智能與嵌入式計算_基于ARM的嵌入式無線視頻采集系統(tǒng)設計,   

  

  國內外市場上主要推出的是數字控制的模擬視頻監(jiān)控和數字視頻監(jiān)控兩類產品[1]。前者的技術發(fā)展已經非常成熟,產品性能穩(wěn)定,在實際工程中得到了廣泛應用。后者是新近崛起的以計算機技術及圖像視頻壓縮技術為核心的新型視頻監(jiān)控系統(tǒng),該系統(tǒng)在解決模擬視頻監(jiān)控系統(tǒng)的部分弊端的基礎上迅速崛起。在互聯(lián)網的普遍推廣和網絡帶寬逐漸提高的背景下,視頻監(jiān)控技術飛速發(fā)展,出現(xiàn)了集多媒體技術、網絡通信技術、嵌入式技術于一體的嵌入式網絡視頻監(jiān)控系統(tǒng)。

  目前國內嵌入式視頻監(jiān)控系統(tǒng)的研究有了很大的發(fā)展,但是國內對嵌入式無線視頻監(jiān)控系統(tǒng)的研究還比較少。本文介紹了自主開發(fā)的基于ARM的嵌入式無線視頻采集系統(tǒng)設計方案。該方案采用S3C2410嵌入式處理器和ARMLinux操作系統(tǒng),利用通過自行開發(fā)的視頻服務器軟件,通過3G無線上網卡完成客戶端與視頻服務器的通信。介紹了系統(tǒng)的硬件結構、服務器端軟件的總體結構、驅動程序的構建、圖像的采集和壓縮以及傳輸模塊的設計,并進行了測試。實驗結果表明,系統(tǒng)采用H.264編碼技術在保證視頻傳輸質量的同時具有良好的帶寬適應能力。



  1 系統(tǒng)總體結構



  本系統(tǒng)由監(jiān)控現(xiàn)場攝像頭、嵌入式視頻服務器、客戶端三部分組成。監(jiān)控現(xiàn)場的攝像頭實現(xiàn)圖像的采集,并把采集的圖像信息通過內部總線傳送給嵌入式視頻服務器。嵌入式遠程視頻監(jiān)控系統(tǒng)是一個基于S3C2410處理器、H.264壓縮、Web服務器和Linux操作系統(tǒng)的嵌入式系統(tǒng),它的主要功能是對攝像頭采集到的圖像進行H.264壓縮編碼,并對編碼后的圖像通過3G無線網絡進行傳輸?蛻舳酥饕瓿蓤D像的接收和解壓縮,用戶可以通過Web瀏覽器訪問嵌入式視頻服務器來觀看攝像頭采集到的圖像,從而實現(xiàn)遠程視頻監(jiān)控。嵌入式遠程視頻監(jiān)控系統(tǒng)總體結構如圖1所示。



    

圖1 嵌入式遠程視頻監(jiān)控系統(tǒng)總體框圖



  2 系統(tǒng)硬件結構



  系統(tǒng)硬件由圖像傳感器MI360、3G無線模塊MC8630、圖像壓縮芯片ZC0301、微處理器芯片S3C2410、以太網控制芯片、SDRAM等芯片組成。S3C2410具有低功耗、精簡而出色的全靜態(tài)設計等特點,具備MMU存儲器管理功能,擁有獨立的16 KB指令和16 KB數據緩存,在高性能和低功耗特性方面提供了可靠的性能。無線模塊選用中興3G模塊 MC8630,數據速率為前向:3.1 Mb/s max,反向:1.8 Mb/s max。

  為了降低成本,簡化設計,本方案選用中星微的ZC0301作為視頻壓縮編碼芯片,Vimicro ZC0301主要由系統(tǒng)控制、圖像信號處理、次取樣和水平掃描、JPEG編碼器和USB設備控制五大功能模塊組成。CMOS圖像傳感器選擇美光的 MI360,它采用VGA標準(30萬像素),感光面積為1/4英寸,有效像素649H×489H,采用低噪聲技術,噪聲等級達到CCD標準。MI360 和ZC0301壓縮編碼芯片完成視頻數據的采集、壓縮和編碼。系統(tǒng)硬件結構如圖2所示。



    

圖2 嵌入式監(jiān)控系統(tǒng)硬件結構



  3 系統(tǒng)軟件結構



  本嵌入式遠程視頻監(jiān)控系統(tǒng)軟件由攝像頭驅動模塊、圖像采集模塊、H.264圖像壓縮模塊、嵌入式Web服務器組成。攝像頭驅動模塊實現(xiàn)攝像頭在 Linux操作系統(tǒng)下的正常工作,并為應用程序提供接口。圖像采集程序獲取攝像頭傳送過來的圖像信息并進行暫存。H.264壓縮模塊完成對原始圖像的編碼處理。嵌入式Web服務器實現(xiàn)圖像數據處理與網絡傳輸。嵌入式Web服務器一般由5個主要模塊組成:嵌入式HTTP引擎、安全模塊、應用程序接口、文件系統(tǒng)和配置模塊[2]。由于開發(fā)平臺采用的嵌入式操作系統(tǒng)為ARMLinux,具有成熟的文件系統(tǒng),提供文件訪問的接口,可以直接使用文件系統(tǒng)提供的讀寫接口訪問嵌入式Web資源文件,不需要另外設計文件系統(tǒng)。嵌入式視頻監(jiān)控系統(tǒng)軟件體系結構如圖3所示。



    

圖3 嵌入式視頻監(jiān)控系統(tǒng)軟件體系結構



  3.1 攝像頭驅動程序設計

  圖像的采集工作由圖像傳感器MI360和視頻壓縮芯片ZC0301完成,ZC0301通過USB接口和S3C2410相連,因此驅動程序主要是對 Linux下USB驅動程序的開發(fā),ZC0301的驅動獨立開發(fā)難度較大,主要是既要考慮圖像采集芯片的驅動,還要考慮USB的驅動,且Vimicro沒有公布ZC0301的詳細技術資料。Linux下ZC0301的驅動程序有開源代碼,根據本系統(tǒng)的開發(fā)平臺進行修改、移植、重新編譯內核等操作可以完成 ZC0301的驅動程序。

  3.2 圖像采集模塊設計

  Video4linux(V4L)是Linux的影像串流系統(tǒng)與嵌入式影像系統(tǒng)的基礎,是Linux Kernel中支持影像設備的一組APIs,配合適當的視頻采集卡與視頻采集卡驅動程序,可以實現(xiàn)影像采集、AM/FM無線廣播、影像CODEC、視頻切換等功能。Video4linux為二層式架構,上層為Video4linux驅動程序本身,下層架構則是影像設備的驅動程序。這里用到的是 Video4linux的上層驅動程序,即Video4linux本身所提供給程序開發(fā)人員的APIs[3]。Video4linux視頻圖像采集流程如圖4所示。

  

  

圖4 視頻圖像采集流程圖



  3.3 H.264圖像壓縮模塊設計

  H.264是ITU-T視頻編碼專家組(VCEG)和ISO/IEC活動圖像編碼專家組(MPEG)的聯(lián)合視頻組(JVT)開發(fā)的一個新的數字視頻編碼標準[4]。在技術上,H.264標準有很多優(yōu)勢,如統(tǒng)一的VLC符號編碼,高精度、多模式的位移估計,基于4×4塊的整數變換、分層的編碼語法等。這些措施使得H.264算法具有很高的編碼效率,在相同的重建圖像質量下能夠比H.263降低50%左右的碼率。

  H.264的碼流結構網絡適應性強,增加了差錯恢復能力,能夠很好地適應IP和無線網絡[5]。H.264能以較低的數據速率傳送基于IP的視頻流,在視頻質量、壓縮效率和數據包恢復丟失等方面,超越了現(xiàn)有的MPEG-2、MPEG-4和H.26x視頻通信標準,更適合窄帶傳輸,是目前監(jiān)控系統(tǒng)最為理想的信源壓縮編碼標準。

  相對于有線網絡而言,無線網絡狀況更不穩(wěn)定,除去網絡流量所造成的傳輸速率的波動外,設備的移動速度和所在位置也會嚴重地影響到傳輸速率。其次,無線信道的環(huán)境也要比有線信道惡劣得多,數據的誤碼率也要高許多,而高壓縮的碼流對傳輸錯誤非常敏感,還會造成錯誤向后面的圖像擴散,因此無線流媒體在信源和信道編碼上需要很好的容錯技術。錯誤恢復的工具隨著視頻壓縮編碼技術的提高在不斷改進。舊的標準(H.261、H.263、MPEG-2的第二部分)中,使用片和宏塊組的劃分、幀內編碼宏塊、幀內編碼片和幀內編碼圖像來防止錯誤的擴散。之后改進的標準(H.263+,MPEG-4)中,使用多幀參考和數據分割技術來恢復錯誤。H.264標準在以前的基礎上提出了三種關鍵技術來進行錯誤的恢復,分別是參數集合、靈活的宏塊次序(FMO)和冗余片(RS)。 FMO是H.264的一大特色,可以是一幀中的宏塊順序分割,使分割后的片的尺寸小于無線網絡的MTU尺寸,避免在網絡層再進行一次數據分割,降低了數據傳輸的額外開銷。

  3.4 嵌入式Web服務器設計

  本系統(tǒng)選用適合嵌入式系統(tǒng)的Boa服務器,它是單任務HTTP服務器,占用空間小,另外支持動態(tài)Web技術的CGI技術,源代碼開放,性能高。嵌入式Boa服務器移植到Linux系統(tǒng)中的網上相關資料很多,不再贅述。下面重點介紹應用程序接口CGI程序設計。

  公共網關接口CGI是HTTP服務器與其他機器上的程序進行“交談”的一種工具[6],其程序須運行在網絡服務器上。CGI是一個用于Web服務器與外部程序之間通信方式的標準,使得外部程序能生成HTML、圖像或其他內容,而服務器處理的方式與那些非外部程序生成的HTML、圖像或其他內容的處理方式是相同的。使用CGI的原因在于它是一個定義良好并被廣泛支持的標準,沒有CGI就不可能實現(xiàn)動態(tài)的Web頁面,除非使用一些服務器中提供的特殊方法。

  CGI程序入口為main()函數,函數首先執(zhí)行初始化用到的變量,然后根據提供的環(huán)境變量Environmentv獲取當前訪問用戶的用戶名,判斷用戶的訪問權限,然后根據REQUESM得到用戶的請求方法。如果是POST,則根據Contentl獲取用戶請求內容并分析;如果是GET,則根據 Querys獲取信息并分析請求內容,最后根據用戶權限做出相應的處理;如果是其他的請求方法,則返回錯誤,不支持該請求方法。流程圖如圖5所示。



    

圖5 CGI程序處理流程圖



  S3C2410憑借其高性價比、豐富的接口以及對網絡的強大支持,使其非常適合做網絡視頻監(jiān)控系統(tǒng)的Web視頻服務器的處理器。H.264算法具有很高的編碼效率,在相同的重建圖像質量下,能夠比H.263降低50%左右的碼率。H.264的碼流結構網絡適應性強,增加了差錯恢復能力,能夠很好地適應IP 和無線網絡。本系統(tǒng)支持動態(tài)IP,可以直接連入以太網,能夠即插即看。通過局域網(100 Mb/s以太網)內部測試,可以達到25幀/秒CIF圖像(320×240)要求,傳輸延遲0.6 s以內,編碼后的碼率150 Kbit/s,由客戶端軟件解碼恢復后的視頻圖像清晰、流暢、沒有抖動現(xiàn)象,能獲得較好的視頻質量。



  參考文獻

 。1] 劉富強。數字視頻監(jiān)控系統(tǒng)開發(fā)及應用[M]。北京:機械工業(yè)出版社,2003.

 。2] 饒鳴。網絡攝像頭中嵌入式Web服務器的設計與性能分析[D]。華中科技大學,2007:10-12.

 。3] 陳俊宏.Embedded Linux嵌入式系統(tǒng)原理與實務[M]。北京:中國鐵道出版社,2004.

 。4] 夏祥;谇度胧絎eb技術的視頻監(jiān)控系統(tǒng)的構建[D]。 復旦大學,2008:22-23.

 。5] 胡書衛(wèi),陸培倫。一種基于Linux的嵌入式視頻監(jiān)控系統(tǒng)實現(xiàn)[J]。安防系統(tǒng)設計,2009(1):38-40.

 。6] 王旭輝,謝蕾;诒倔w的多模式Web服務發(fā)現(xiàn)研究[J]。計算機工程與設計,2009,30(16):3868-3871.
回復

使用道具 舉報

發(fā)表回復

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關注微信 下載APP 返回頂部 返回列表