基于ML86500的網(wǎng)絡攝像機方案設計
1 引 言
近年來,隨著數(shù)字圖像處理技術、多媒體技術、嵌入式系統(tǒng)軟硬件技術的高速發(fā)展以及寬帶網(wǎng)絡的不斷普及,視頻監(jiān)控已逐漸走近了人們的生活。與傳統(tǒng)的模擬監(jiān)控相比,IP視頻監(jiān)控克服了模擬閉路電視監(jiān)控的局限性:首先,數(shù)字化視頻可以在計算機網(wǎng)絡(局域網(wǎng)或廣域網(wǎng))上傳輸圖像數(shù)據(jù),基本上不受距離限制,信號不易受干擾,可大幅度提高圖像品質和穩(wěn)定性;其次,數(shù)字視頻利用現(xiàn)有的計算機互聯(lián)網(wǎng)絡,無須重復布線,安裝方便靈活;最后,數(shù)字化存儲成為可能,經(jīng)過壓縮的視頻數(shù)據(jù)可直接存儲,查詢簡便快捷。
目前,網(wǎng)絡攝像機方案多數(shù)采用了CPU+DSP的組合,CPU完成控制、通訊等功能,而DSP則主要完成音頻、視頻信號的編碼處理,但此類方案一般成本較高。本文設計的基于ML86500的網(wǎng)絡攝像機方案具有高壓縮率、低帶寬占用、高圖像質量以及低成本等優(yōu)勢。
2 系統(tǒng)硬件設計
2.1 硬件總體方案
網(wǎng)絡攝像機硬件總體方案如圖1所示。
網(wǎng)絡攝像機的基本原理為:CCD傳感器將光線轉變成電荷,并輸出CVBS模擬視頻信號給視頻解碼芯片(TW9910);視頻解碼芯片將CVBS模擬視頻信號模數(shù)轉換(A/D)成YUV 4:2:2格式的數(shù)字信號,并輸出給視頻編碼芯片——ML86500;ML86500對視頻信息進行編碼壓縮處理,生成MPEG4數(shù)據(jù)流;MPEG4數(shù)據(jù)流經(jīng)RTP協(xié)議封裝經(jīng)過網(wǎng)絡發(fā)送到遠程客戶機(PC),遠程客戶機解碼還原視頻信息進行播放。
2.2 MPEG4實時編碼器電路
ML86500是OKI公司開發(fā)的實時MPEG4圖像壓縮(編碼)處理單芯片產品,該芯片靈活運用了OKI獨創(chuàng)算法及專用加速器,低成本實現(xiàn)了高畫質,其設計目標就是面向監(jiān)視攝像機、網(wǎng)絡攝像機等圖像監(jiān)控設備。因此本網(wǎng)絡攝像機方案中的視頻編碼芯片選用ML86500。
ML86500內部的原理見圖2。
ML86500主要技術指標:
視頻編碼方式:MPEG4 SP/ASP;
支持的視頻方式:NTSC@29.97 f/s,PAL@25 f/s,VGA,QVGA;
數(shù)據(jù)格式:亮度信號8 b、色度信號8 b(4:2:2);
支持隔行掃描視頻(NTSC/PAL);
變換輸入幀率;
碼流編碼模式:CBR/VBR;
通用8/16位主機CPU接口;
電源電壓:3.3 V±0.3 V(IO),1.5 V±0.15 V(CORE,PLL);
封裝:144管腳塑料LQFP。
ML86500的實時編碼器電路參見圖3。
ML86500的內棱使用1.5 V電源供電,PLL電路亦使用1.5 V電源供電,考慮到PLL電路可能會干擾內核電路,因此PLL電路通過一個π型低通濾波器供電,消除高頻于擾。
ML86500使用27 MHz有源晶振作為時鐘,考慮到防止27 MHz有源晶振對系統(tǒng)電源產生干擾,為27 MHz有源晶振的電源供電設計了π型低通濾波器。
ML86500需要外接一塊32 b數(shù)據(jù)總線寬度的SDRAM作為數(shù)據(jù)緩存。
3 系統(tǒng)軟件設計
3.1 軟件總體方案
軟件總體方案參見圖4。
在本軟件總體設計方案中,采用了分層模塊化設計,各層之間是一種弱耦合關系,這樣各功能模塊獨立,便于開發(fā)和維護,該系統(tǒng)具有良好的移植性。RTOS操作系統(tǒng)與應用程序之間增加Free OS API層,減少了操作系統(tǒng)變更時軟件移植的工作量。
TCP/IP協(xié)議棧為雙協(xié)議棧,不僅支持現(xiàn)有的IPv4協(xié)議,而且能夠支持下一代的互聯(lián)網(wǎng)協(xié)議IPv6;提供HTTP Server功能,用戶可能通過IE訪問IP-Camera,進行媒體播放、查看和設置參數(shù);提供FTP功能,便于用戶傳輸文件,進行程序升級;提供SNTP功能,保證IP-Camera的時間能與標準時間服務器同步;提供DDNS功能,能夠讓用戶通過動態(tài)域名方式訪問IP-Camera;提供SIP功能,使得IP-Camera能夠與SIP電話通信,使得視頻監(jiān)控更加便捷靈活;媒體數(shù)據(jù)傳輸采用RTP協(xié)議,保證圖像的實時性;文件系統(tǒng)支持FAT16和FAT32格式。
3.2 MPEG4編碼開始及停止流程
MPEG4編碼開始的主要作用是按照設定的參數(shù)初始化視頻解碼芯片、視頻編碼芯片,開始視頻編碼,同時創(chuàng)建MPEG4 TASK,用于讀取視頻數(shù)據(jù)流,發(fā)送數(shù)據(jù)。
MPEG4編碼停止的主要作用是停止視頻解碼芯片、視頻編碼芯片工作,停止MPEG4 TASK。MPEG4編碼開始及停止流程圖如圖5所示。
MPEG4 TASK主要用于讀取視頻數(shù)據(jù)流,發(fā)送數(shù)據(jù),其主要流程圖如圖6所示。MPEG4 TASK運行后,將等待信號量,將自己掛起。當ML86500產生一幀數(shù)據(jù)時,會產生中斷,在中斷服務程序中會發(fā)送信號給MPEG4 TASK,MPEG4 TASK重新運行,并且讀取MPEG4視頻數(shù)據(jù)流,然后使用RTP協(xié)議通過網(wǎng)絡發(fā)送數(shù)據(jù)給客戶端(PC)。
4 結 語
本方案已經(jīng)過實際測試,能夠支持PAL/NTSC制式的視頻信號輸入,支持D1(N制720*480/P制720*576)、VGA(640*480)、QVGA(320*240)等多種分辨率輸出,網(wǎng)絡傳輸帶寬支持20 kb/s~6 Mb/s,低成本實現(xiàn)了高畫質,并且圖像實時性好,可廣泛應用于倉庫、商場、交通、家庭等多種視頻監(jiān)控場合,非常具有市場競爭力。
?
評論
查看更多