基于ARM的嵌入式無線視頻采集系統(tǒng)設(shè)計方案
3 系統(tǒng)軟件結(jié)構(gòu)
本嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)軟件由攝像頭驅(qū)動模塊、圖像采集模塊、H.264圖像壓縮模塊、嵌入式Web服務(wù)器組成。攝像頭驅(qū)動模塊實現(xiàn)攝像頭在Linux操作系統(tǒng)下的正常工作,并為應(yīng)用程序提供接口。圖像采集程序獲取攝像頭傳送過來的圖像信息并進行暫存。H.264壓縮模塊完成對原始圖像的編碼處理。嵌入式Web服務(wù)器實現(xiàn)圖像數(shù)據(jù)處理與網(wǎng)絡(luò)傳輸。嵌入式Web服務(wù)器一般由5個主要模塊組成:嵌入式HTTP引擎、安全模塊、應(yīng)用程序接口、文件系統(tǒng)和配置模塊。由于開發(fā)平臺采用的嵌入式操作系統(tǒng)為ARMLinux,具有成熟的文件系統(tǒng),提供文件訪問的接口,可以直接使用文件系統(tǒng)提供的讀寫接口訪問嵌入式Web資源文件,不需要另外設(shè)計文件系統(tǒng)。嵌入式視頻監(jiān)控系統(tǒng)軟件體系結(jié)構(gòu)如圖3所示。
圖3 嵌入式視頻監(jiān)控系統(tǒng)軟件體系結(jié)構(gòu)
3.1 攝像頭驅(qū)動程序設(shè)計
圖像的采集工作由圖像傳感器MI360和視頻壓縮芯片ZC0301完成,ZC0301通過USB接口和S3C2410相連,因此驅(qū)動程序主要是對Linux下USB驅(qū)動程序的開發(fā),ZC0301的驅(qū)動獨立開發(fā)難度較大,主要是既要考慮圖像采集芯片的驅(qū)動,還要考慮USB的驅(qū)動,且Vimicro沒有公布ZC0301的詳細(xì)技術(shù)資料。Linux下ZC0301的驅(qū)動程序有開源代碼,根據(jù)本系統(tǒng)的開發(fā)平臺進行修改、移植、重新編譯內(nèi)核等操作可以完成ZC0301的驅(qū)動程序。
3.2 圖像采集模塊設(shè)計
Video4linux(V4L)是Linux的影像串流系統(tǒng)與嵌入式影像系統(tǒng)的基礎(chǔ),是LinuxKernel中支持影像設(shè)備的一組APIs,配合適當(dāng)?shù)囊曨l采集卡與視頻采集卡驅(qū)動程序,可以實現(xiàn)影像采集、AM/FM無線廣播、影像CODEC、視頻切換等功能。Video4linux為二層式架構(gòu),上層為Video4linux驅(qū)動程序本身,下層架構(gòu)則是影像設(shè)備的驅(qū)動程序。這里用到的是Video4linux的上層驅(qū)動程序,即Video4linux本身所提供給程序開發(fā)人員的APIs。
Video4linux視頻圖像采集流程如圖4所示。
圖4 Video4linux視頻圖像采集流程圖
3.3 H.264圖像壓縮模塊設(shè)計
H.264是ITU-T視頻編碼專家組(VCEG)和ISO/IEC活動圖像編碼專家組(MPEG)的聯(lián)合視頻組(JVT)開發(fā)的一個新的數(shù)字視頻編碼標(biāo)準(zhǔn)。在技術(shù)上,H.264標(biāo)準(zhǔn)有很多優(yōu)勢,如統(tǒng)一的VLC符號編碼,高精度、多模式的位移估計,基于4×4塊的整數(shù)變換、分層的編碼語法等。這些措施使得H.264算法具有很高的編碼效率,在相同的重建圖像質(zhì)量下能夠比H.263降低50%左右的碼率。
H.264的碼流結(jié)構(gòu)網(wǎng)絡(luò)適應(yīng)性強,增加了差錯恢復(fù)能力,能夠很好地適應(yīng)IP和無線網(wǎng)絡(luò)。H.264能以較低的數(shù)據(jù)速率傳送基于IP的視頻流,在視頻質(zhì)量、壓縮效率和數(shù)據(jù)包恢復(fù)丟失等方面,超越了現(xiàn)有的MPEG-2、MPEG-4和H.26x視頻通信標(biāo)準(zhǔn),更適合窄帶傳輸,是目前監(jiān)控系統(tǒng)最為理想的信源壓縮編碼標(biāo)準(zhǔn)。
評論