基于ARM9的嵌入式3G無線視頻監(jiān)控系統(tǒng)設(shè)計(jì)
圖3 嵌入式視頻監(jiān)控系統(tǒng)軟件體系結(jié)構(gòu)
3.1 攝像頭驅(qū)動(dòng)程序設(shè)計(jì)
圖像的采集工作由圖像傳感器MI360 和視頻壓縮芯片ZC0301 完成,ZC0301 通過USB 接口和S3C2410 相連,因此驅(qū)動(dòng)程序主要是對Linux 下USB 驅(qū)動(dòng)程序的開發(fā),ZC0301 的驅(qū)動(dòng)獨(dú)立開發(fā)難度較大, 主要是既要考慮圖像采集芯片的驅(qū)動(dòng), 還要考慮USB 的驅(qū)動(dòng), 且Vimicro 沒有公布ZC0301 的詳細(xì)技術(shù)資料。Linux 下ZC0301 的驅(qū)動(dòng)程序有開源代碼, 根據(jù)本系統(tǒng)的開發(fā)平臺進(jìn)行修改、移植、重新編譯內(nèi)核等操作可以完成ZC0301 的驅(qū)動(dòng)程序。
3.2 圖像采集模塊設(shè)計(jì)
Video4linux(V4L) 是Linux 的影像串流系統(tǒng)與嵌入式影像系統(tǒng)的基礎(chǔ),是Linux Kernel 中支持影像設(shè)備的一組APIs , 配合適當(dāng)?shù)囊曨l采集卡與視頻采集卡驅(qū)動(dòng)程序,可以實(shí)現(xiàn)影像采集、AM/FM 無線廣播、影像CODEC、視頻切換等功能。Video4linux 為二層式架構(gòu), 上層為Video4linux 驅(qū)動(dòng)程序本身, 下層架構(gòu)則是影像設(shè)備的驅(qū)動(dòng)程序。這里用到的是Video4linux 的上層驅(qū)動(dòng)程序, 即Video4linux 本身所提供給程序開發(fā)人員的APIs 。
Video4linux 視頻圖像采集流程如圖4 所示。
圖4 Video4linux 視頻圖像采集流程圖
3.3 H.264 圖像壓縮模塊設(shè)計(jì)
H.264 是ITU-T 視頻編碼專家組(VCEG) 和ISO/IEC活動(dòng)圖像編碼專家組(MPEG) 的聯(lián)合視頻組(JVT) 開發(fā)的一個(gè)新的數(shù)字視頻編碼標(biāo)準(zhǔn)。在技術(shù)上,H.264 標(biāo)準(zhǔn)有很多優(yōu)勢,如統(tǒng)一的VLC 符號編碼,高精度、多模式的位移估計(jì),基于4×4 塊的整數(shù)變換、分層的編碼語法等。這些措施使得H.264 算法具有很高的編碼效率, 在相同的重建圖像質(zhì)量下能夠比H.263 降低50%左右的碼率。
H.264 的碼流結(jié)構(gòu)網(wǎng)絡(luò)適應(yīng)性強(qiáng), 增加了差錯(cuò)恢復(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)。
評論