1DVR的發(fā)展現(xiàn)狀及MPEG-4在嵌入式DVR中的優(yōu)勢
1. 1DVR的發(fā)展
DVR的發(fā)展大體上經(jīng)過了兩個階段:以PC為平臺的DVR和嵌入式DVR。傳統(tǒng)的以PC為平臺的DVR采用的是存儲在硬磁盤中的Windows操作系統(tǒng),這種開放式的系統(tǒng)有著用戶友好的圖形用戶接口GUI等優(yōu)點,但它也有如Windows固有的不穩(wěn)定性及支持CPU受到限制等缺點。嵌入式DVR采用能嵌入ROM/Flash存儲器中的實時操作系統(tǒng)RTOS,布控區(qū)域廣泛、可組成非常復(fù)雜的監(jiān)控網(wǎng)絡(luò)、性能穩(wěn)定可靠,從而很好地彌補了這種缺陷。
在嵌入式DVR中,視頻壓縮技術(shù)是其關(guān)鍵的核心技術(shù),現(xiàn)在DVR采用的壓縮技術(shù)的主流是MPEG-1。MPEG-1 的核心是離散余弦變換及雙向運動補償算法,主要思想是通過減少圖像間時間及空間的冗余性和相關(guān)性信息來減少數(shù)據(jù)量。MPEG-1在800kbps~2Mbps的傳輸速率下圖像能達到較好的清晰效果。但是采用MPEG-1的嵌入式DVR也有很多不利的地方: ①硬盤耗費量大; ②由于數(shù)據(jù)量大,不適合網(wǎng)絡(luò)傳輸; ③不夠靈活,適應(yīng)性差,不能根據(jù)網(wǎng)絡(luò)情況自適應(yīng)地調(diào)節(jié)傳輸率。而MPEG-4的出現(xiàn)克服了以上種種缺陷,是現(xiàn)代嵌入式DVR的發(fā)展趨勢。
1. 2MPEG-4在嵌入式DVR中的優(yōu)勢
MPEG-4在壓縮方法上遠遠優(yōu)于MPEG-1,MPEG-4基于場景描述和面向帶設(shè)計的要領(lǐng)使MPEG-4在視頻監(jiān)控錄像領(lǐng)域中在以下幾個方面具有巨大的優(yōu)勢:
(1)節(jié)約存儲空間。
(2)較高的錄像清晰度,盡管MPEG-4是瞄準在低帶寬上的音/視頻解決方案,但是它獨特的壓縮方式同樣也適合CIF或更高清晰度(768 ×576、640 ×480)的視頻壓縮。這樣它就有效突破了MPEG-1最大清晰度CIF(352 ×288)限制,獲得更好的視頻壓縮質(zhì)量。
(3)錄像幀率可調(diào)。
(4)比MPEG-1更利于網(wǎng)絡(luò)傳輸。MPEG-4優(yōu)越的視頻壓縮方式,也決定了其在低帶寬網(wǎng)上具有優(yōu)秀的表現(xiàn)。
2MPEG-4核心思想和關(guān)鍵技術(shù)在DVR中的應(yīng)用
MPEG-4代表了基于模型/對象的第二代壓縮編碼技術(shù),它充分利用了人眼視覺特性,抓住了圖像信息的本質(zhì),從輪廓、紋理思路出發(fā),支持基于視覺內(nèi)容的交互功能,適應(yīng)了多媒體信息的應(yīng)用由播放型轉(zhuǎn)向基于內(nèi)容的訪問、檢索及操作的發(fā)展趨勢,尤其適合應(yīng)用在嵌入式DVR中。
2.1 MPEG-4核心思想———基于對象編碼
AV對象(Audio Visual Object)是MPEG-4提出的重要概念,它是在一個場景中能夠訪問和操縱的實體,具體到一幅圖像中,對象是能表征有含義的實體的一組區(qū)域(Region) ,對象的劃分可以其獨特的紋理、運動、形狀、模型和高層語義為依據(jù)。MPEG-4的編碼就是基于AV對象的, AV對象是視聽內(nèi)容的表示單元,其基本單位是原始AV對象。原始AV對象可以是自然或者合成的聲音、圖像。它具有時域和空域的靈活性,可以根據(jù)對象重要性,進行比特的科學(xué)分配,從而使圖像的主觀質(zhì)量得到保證。因此,MPEG-4具有高效編碼、高效存儲和傳輸以及可交互操作的特性,AV對象編碼就是MPEG-4的核心思想。在DVR的應(yīng)用中,這種基于AV對象的編碼的高效壓縮必然能節(jié)省大量的存儲資源,也可以靈活地根據(jù)現(xiàn)場帶寬和誤碼率的客觀條件進行擴展,充分利用帶寬。從下面的MPEG-4采用的核心技術(shù)的分析中將會更加清楚地看到這種基于AV對象編碼所帶來的好處。
2. 2MPEG-4的關(guān)鍵技術(shù)
(1) 視頻對象的提取技術(shù)。MPEG-4實現(xiàn)基于內(nèi)容的編碼首先就要把視頻、圖像分割成一個個靜止的對象或運動的對象,然后針對不同對象采用相應(yīng)的編碼方法,以實現(xiàn)高效壓縮。目前視頻對象分割的一般步驟是: ①對原始視頻/圖像數(shù)據(jù)通過低通濾波、中值濾波、形態(tài)濾波等來進行簡化,以利于分割;②對視頻/圖像數(shù)據(jù)進行諸如顏色、紋理、運動、幀差、位移幀差和語義等特征提取; ③基于某種均勻性指標來確定分割決策;④進行相關(guān)的后處理,濾除噪聲并準確提取邊界。
運用于嵌入式DVR中的MPEG-4,視頻對象的提取相對比其他運用來說,簡單了許多,在嵌入式DVR的視頻/圖像中不會有太多太復(fù)雜的視頻內(nèi)容。基本上可分為一個靜止的對象:背景和若干個運動的對象。
(2) VOP (Video Object Plane)編碼技術(shù)。VOP是視頻對象(VO)在某一時刻的采樣,它也是MPEG-4視頻編碼的核心概念之一。MPEG-4在編碼過程中針對不同VO采用不同的編碼策略,即對前景VO的壓縮編碼盡可能保留細節(jié)和平滑;對背景VO則采用高壓縮率的編碼策略,甚至不予傳輸而在解碼端由其他背景拼接而成。這種基于對象的視頻編碼不僅克服了第一代視頻編碼中高壓縮率編碼所產(chǎn)生的方塊效應(yīng),而且使用戶可與場景交互,從而既提高了壓縮比,又實現(xiàn)了基于內(nèi)容的交互,為視頻編碼提供了廣闊的發(fā)展空間。而且MPEG-4支持任意形狀圖像與視頻的編解碼。對于任意形狀視頻對象,MPEG-4則采用VLBV (Very Low Bit rate Video,極低比特率視頻)核進行編碼。
在嵌入式DVR應(yīng)用的場合中有一個很大的特點:背景對象是靜止不動或者是極少運動的。因此對背景對象可以根據(jù)實際情況,或采取高壓縮率編碼,或只在較少的幀中出現(xiàn),這樣可以極大地降低對存儲和傳輸?shù)膲毫ΑI厦孢@種方法就是MPEG-4中的Sprite編碼思想, Sprite稱為鑲嵌圖或背景全景圖。一個Sprite是由一個視頻對象在視頻序列中所有出現(xiàn)部分經(jīng)拼接而成的一幅圖像。通過Sprite編碼,先將背景Sprite送到解碼端并生成背景圖,其后就只需要傳輸少量的參數(shù)即可,可以減少整個視頻傳輸過程中的數(shù)據(jù)量,實現(xiàn)高壓縮比。而且對于Sprite圖像為了減少延遲,還可以使用MPEG-4的分級傳輸功能,進行分層逐塊傳輸。
(3) 可擴展編碼技術(shù)。擴展性編碼也是可分級性編碼,視頻的可分級性( Scalability)是指碼率的可調(diào)整性,即視頻數(shù)據(jù)只壓縮一次,卻能根據(jù)實際情況以不同的幀率、空間分辨率或視頻質(zhì)量進行解碼,從而可支持多種不同的應(yīng)用要求。擴展性編碼分為空域擴展和時域擴展編碼。MPEG-4通過視頻對象層(VOL)數(shù)據(jù)結(jié)構(gòu)來實現(xiàn)分級編碼,在擴展性編碼中視頻序列分為兩層:基本層和增強層。基本層提供了視頻序列的基本信息,增強層提供了視頻序列更高的分辨率和細節(jié)。在嵌入式DVR中,采用MPEG-4的基于對象的分層傳輸思想,使用空域和時域的擴展編碼調(diào)節(jié)空間分辨率和幀率。這樣,一方面可以方便地實現(xiàn)碼率控制,可以很好地使網(wǎng)絡(luò)帶寬發(fā)生變化;另一方面,也可以實現(xiàn)用戶與DVR的交互性能,用戶可以方便地選擇分辨率和幀率,以得到滿意的視頻效果。
(4) 運動估計與運動補償技術(shù)。MPEG-4采用I幀、P幀和B幀三種幀格式來表征不同的運動補償類型。I幀使用幀內(nèi)壓縮,只利用空間相關(guān)性,不使用運動補償,所以不依賴于其他幀,是解碼的基準幀。I幀圖像周期性出現(xiàn)在圖像序列中。P幀和B幀圖像采用幀間編碼方式,同時利用了空間和時間上的相關(guān)性。P幀采用前向時間預(yù)測,可以提高壓縮效率和圖像質(zhì)量,B幀采用雙向時間預(yù)測,更大地提高壓縮倍數(shù),但是B幀不能作為其他圖像編碼的參考幀,不能進行隨機存取。因此,在嵌入式DVR的應(yīng)用中,當用戶可用帶寬比較低的情況下,可以只轉(zhuǎn)發(fā)I幀和盡可能少的P幀,可以降低傳輸?shù)拇a率,還可以得到可以接受的視頻質(zhì)量。
3基于MPEG-4的嵌入式DVR中的實現(xiàn)
3. 1硬件實現(xiàn)
基于MPEG-4的嵌入式DVR硬件實現(xiàn)如圖1所示,采用如下的方案:
(1) DSP選用TI公司推出的TMS320C6416,工作頻率達750MHz,運算速度可達到4000MIPS。
(2) ARM 板采用ARM 嵌入式系統(tǒng)擴展板( CY-ARM4510B) 。
(3) PCI接口板(CY-PCI2.2) 。
圖1硬件框圖
3. 2軟件實現(xiàn)
軟件部分用ANSI C編寫,用GNU Make-3.74或更高版本的GCC編譯器進行編譯。MPEG-4編解碼部分是在MPEG-4提供的框架下根據(jù)嵌入式DVR應(yīng)用的實際情況進行了一些簡化和優(yōu)化后實現(xiàn)的。主要從下面三個方面對代碼進行優(yōu)化:
(1)盡量降低代碼量,提高數(shù)據(jù)結(jié)構(gòu)的有效性。因此需要去除對DVR應(yīng)用中基本不用的結(jié)構(gòu)及處理部分。
(2)并且盡量是執(zhí)行控制趨于合理,減少不必要的存儲分配和釋放,盡量減少對外部存儲器的訪問。
(3)改進ME/MC ( FastMotion Estimation and Motion Compensation)來提高編碼效率。
程序分為三個部分:編解碼公用的部分、編碼部分和解碼部分。根據(jù)上面提到的優(yōu)化思想,我們對程序進行了優(yōu)化。經(jīng)過優(yōu)化后,VOP的結(jié)構(gòu)體進行了很大的改變,保留了基本的語法元素項,對Sp rite進行了一些簡化,定義如下:
struct vop
{
/* VOP的語法元素* /
Int p rediction_type; /* VOP類型* /
Intmod_time_base; /* VOP絕對基本時間* /
Float time_inc; /* VOP相對mod_time_base時間* /
Int vop_coded;
Int rounding_type;
Int width; /* VOP寬度* /
Int height; /* VOP高度* /
。
/* 運動估計元素* /
。
/* 部分從VOL中傳過來的sp rite coding元素* /
Int sp rite_hdim;
Int sp rite_vdim;
Int sp rite_left_edge;
Int sp rite_top_edge;
Int warp ing_accuracy; /3 變形精度(2, 4, 8, 16) 3 /
Int sp rite_usage; /3 0:不用; 1:靜態(tài); 3 /
Int no_of_sp rite_points;
/3 0:固定, 1:平移, 2:旋轉(zhuǎn)、縮放, 3:仿射, 4:透視畫法3 /
TrajPoint 3 ref_point_coord;
/3 position of reference points sp rite 3 /
TrajPoint 3 traj_point_coord;
/3 position of reference points aftermotion compensation 3 /
TrajPoint 3 difftraj_point_coord;
/3 ( dui, dvj) trajectory
coordinates, to be transmitted 3 /
Int brightness_change_in_sp rite;
Float brightness_change_factor;
Int low_latency_sp rite_enable;
/3 0:基本sp rite, 1:節(jié)省的sp rite 3 /
struct vop 3 rec_sp rite; /3 當前解碼sp rite指針3 /
Sp rite_motion 3 warp_param; /3 全局運動向量3 /
。..。..。
}
在VOP中, sprite _ usage為1則圖像中只處理靜態(tài)的Sprite; sprite_hdim、sprite_vdim與靜態(tài)的Sprite的像素相對應(yīng),它隨Macroblocks數(shù)的變化而作相應(yīng)的變化,對于一個環(huán)境穩(wěn)定的DVR 的應(yīng)用,它們可以有一個確定的值; n Number of Sprite Points當為o時zero運動。..。..。同時在image, sprite_motion, vol, video _object, motion等結(jié)構(gòu)體和編解碼的函數(shù)中也進行了相應(yīng)的類似的一些優(yōu)化,以適應(yīng)DVR的特點,提高編碼的效率。
(2) 軟件支持空域可擴展和空域可擴展,設(shè)置參數(shù)可支持五種類型: 0為時域擴展類型0; 1為空域擴展; 2為時域空域擴展; 3為時域擴展類型1; 4為時域擴展類型2對于空域擴展。
Enhanece P B B B 。 . 。
Base I P P P 。 . 。
對于時域擴展, base層的幀率變?yōu)?fps和enhance層的幀率也為5fps。支持三種類型:
Case0I-VOP在base層中周期出現(xiàn)和P-VOP在base層和enhance層中,而B-VOP不出現(xiàn)
Enhance layer P P P P P 。 . 。
Base layer I P P P P 。 . 。
Case1I-VOP和P-VOP在base層中編解碼, enhance層中只有B-VOP
Enhance layer B B B B B B 。 . 。
Base layer I P P P 。 . 。
Case3 base層中包含I-VOP, P-VOP和B-VOP, enhance層中只有B-VOP
Enhance layer P B B B B B 。 . 。
Base layer IB P B P B P 。 . 。
4結(jié)束語
MPEG-4基于內(nèi)容的壓縮,是信息處理的高級階段,更加向人自身的信息處理方式靠近。本文著重分析了將MPEG-4編碼方法應(yīng)用于嵌入式DVR的種種優(yōu)點,論述了這種DVR實現(xiàn)方法。實踐表明,這種應(yīng)用是對DVR是一次有效的優(yōu)化,能夠在多個方面提高DVR的性能,MPEG-4編碼必將是下一代DVR的發(fā)展趨勢。
責(zé)任編輯:gt
-
視頻監(jiān)控
+關(guān)注
關(guān)注
17文章
1711瀏覽量
64978 -
多媒體
+關(guān)注
關(guān)注
0文章
498瀏覽量
36988 -
編譯器
+關(guān)注
關(guān)注
1文章
1634瀏覽量
49132
發(fā)布評論請先 登錄
相關(guān)推薦
評論