新聞中心

        EEPW首頁 > 消費電子 > 設計應用 > 基于MPEG-4的視頻監控應用系統的軟件實現

        基于MPEG-4的視頻監控應用系統的軟件實現

        作者: 時間:2012-06-21 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/165399.htm

        3.2 Sprite 編碼
        Sprite 編碼是新一代的編碼技術,它利用全局運動估計生成視頻段背景的Sprite 圖像(全景圖),然后將這個Sprite 圖像編碼,以后各幀的背景編碼都只是對該幀相對于Sprite 圖像的運動參數進行編碼。背景的平滑和紋理相關性大的特點,對Sprite 全景圖的編碼采用一種直接空間預測方法,篇幅限制,這里不作介紹,可參考[2]。Sprite 編碼包括兩部分,一是Sprite 的生成,使用全局運動估計來生成;二是Sprite 編碼。Sprite 在最初的VOP 編碼之前建立, 標準中定義了兩種類型的Sprite:靜態Sprite 和動態Sprite。在這里選用動態Sprite,因此我們僅討論動態Sprite 的生成與編碼。

        動態Sprite 的編碼如圖2 所示:視頻序列的第一幀采用I-VOP 方法編碼,而第一幀的重構圖像在編碼端和解碼端建立相同的初始Sprite 圖像;第二幀用全局運動估計算法估計當前VOP 與前一幀VOP 之間的全局運動,用參考點的軌跡描述兩個VOP 之間的運動。采用P-VOP 方法編碼第二幀的紋理,不同的是編碼該VOP 各個宏塊時,運動補償的方式除了宏塊和塊運動補償外,還可以用Sprite圖像為參考進行運動補償,此時宏塊的運動補償為全局運動補償。解碼器的解碼參考點的軌跡得到全局運動參數,然后解碼紋理信息得到第二幀的重構圖像,根據全局運動參數和第二幀重構圖像更新Sprite 圖像。同樣的方法用來編碼序列后面的VOP。

        圖2 動態Sprite 編碼框圖

        3.3 可擴展編碼
        根據的特點,當傳輸圖像的分辨率和幀率不是很高時,仍能達到一般要求下的監控效果。因此我們可以采用對象的分層傳輸思想,使用空域分級功能調節空間分辨率,使用時域分級功能調節幀率。這樣做一方面可以方便地碼率控制,對網絡帶寬的變化具有很好的自適應性,另一方面,用戶可以通過交互功能選擇分辨率和幀率,以得到更好的視頻效果或獲得某一對象局部的細節。 定義了一種通用的可分級擴展框架來空間和時間可分級擴展,如圖3 所示。

        圖3 MPEG-4 通用的可分級擴展框架圖

        當用于空域擴展時,可擴展預處理器對輸入的VOP 下采樣,得到由VOP編碼器處理的基本層VOP。中間處理器處理重建的基本層VOP,并對其進行上采樣,原始VOP 與中間處理器輸出的差作為增強層編碼器的輸入。在增強層中的編碼是以P-VOP 或B-VOP 方式編碼的。通過反復接器可以分別訪問基本層和增強層解碼器對應的基本層和增強層碼流,解碼器端的中間處理器與編碼端執行相同的操作,擴展后處理器執行必要的轉換工作。
        當擴展編碼使用時域擴展編碼時,可擴展預處理器在時域上將一個VO 分解成VOP 的兩個子流,其中一個被輸入到基本層編碼器中,另一個輸入到增強層編碼器中。在這種情況下,不需要中間處理器,而是簡單地將解碼的VOP 基本層輸入到VOP 增強層編碼器,增強層編碼器將使用它們進行時域預測。可擴展后處理器只是簡單地輸出基本層的VOP,并不進行任何轉換,但是在時域上混合基本層和增強層VOP,以產生更高時域分辨率的增強輸出。

        3.4 普通VOP 的形狀、運動、紋理編碼
        形狀編碼是其他的編碼標準中所沒有的,編碼的信息有兩類:二值形狀信息(binary shapeinformation)和灰度級形狀信息(gray scale shape information)。二值形狀信息就是用0、1 的方法表示編碼的VOP 的形狀,0 表示非VOP 區域,1 表示VOP 的區域;灰度級形狀信息可取值0~255,類似于圖形學中的α 平面的概念,0 表示非VOP 區域(即透明區域),1~255 表示VOP 區域透明程度的不同,255 表示完全不透明。灰度級形狀信息的引入主要是為了使前景物體疊加到背景上時不至于界太明顯、太生硬,進行一下模糊處理。這里二值形狀采用基于上下文的算術編碼方法[4],整個編碼過程可分為以下五步:①對于給定VOP 的二值形狀圖重新確定形狀邊界,并將它分為若干個16×16 二值α塊(Binary Alpha Block,縮寫為BAB)。②對即將編碼的BAB 塊進行運動估計,得到運動矢量MVs(MV for shape 縮寫為MVs)。③對該VOP 中待編碼的BAB 塊確定編碼方式。④對待編碼的BAB 塊確定分辨率。⑤對BAB 塊進行編碼。灰度級編碼形狀編碼與此類似。對普通視頻對象,MPEG-4 編碼算法支持三種類型的VOP:I-VOP、P-VOP、B-VOP。在MPEG-4 中運動預測和運動補償可以是基于16×16 宏塊,也可以為8×8 塊。如果宏塊完全位于VOP 內,運動估計使用一般的方法進行;倘若宏塊位于VOP 邊界,則使用圖像填充技術給VOP 外的像素指定值。然后利用這些值計算SAD。對于P-VOP 和B-VOP,運動矢量首先被差分編碼,然后再用可變長編碼運動矢量。

        視頻對象的紋理信息用亮度Y 和兩個色差分量Cb、Cr 表示,對于I-VOP,紋理信息直接包含在亮度和色差分量中,在有運動補償的情況下,紋理信息用運動補償后的殘差表示。紋理信息的編碼使用了標準的8*8 的DCT。紋理編碼中,幀內VOP 和運動補償后的殘差數據都用相同的8×8 塊DCT 方案編碼,對亮度和色度分別做DCT。對于VOP 之內的宏塊用與H.263 相同的技術編碼,對位于VOP 形狀邊緣的宏塊,有兩種選擇,一是用圖像填充技術填滿宏塊中VOP 以外的部分,另一種是用形狀自適應DCT 編碼的方法。后者只對VOP 內部的像素編碼,從而在比特率相同的情況下有較高的質量,代價是應用的復雜度稍高,考慮到的實時要求,選用了圖像填充技術中的低通外推(Low PassExtrapolotion)方法。接著再做DCT。對DCT 后的數據量化、掃描與可變長編碼操作類似于MPEG- 2 和H.263,在此就不詳述了。

        4 小結
        本文根據圖像監控系統的特點,吸取MPEG-4 編碼標準的思想,提出了用MPEG-4 在應用中的編碼的主要框架,相較目前使用較多的硬件方案,更能貼近實際應用的要求,具有很好的靈活性和可升級性,又可降低成本。但由于MPEG-4 的編碼非常復雜,加上其技術上還不是很完善,所以實現上有一定的難度尤其如何保持其實時性能上難度更大。隨著高速處理芯片的不斷出現及MPEG-4 在技術上的發展完善,這些問題將迎刃而解。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 得荣县| 察雅县| 河津市| 黑水县| 南和县| 宁陵县| 郸城县| 梁山县| 青川县| 临邑县| 丹阳市| 平乡县| 麻城市| 壶关县| 麻栗坡县| 淮阳县| 栾城县| 永靖县| 宜黄县| 融水| 兴宁市| 城固县| 梅河口市| 洞口县| 林周县| 于田县| 霸州市| 临颍县| 泸溪县| 绥江县| 富宁县| 乐都县| 绿春县| 美姑县| 合山市| 遂川县| 巴彦县| 互助| 衡南县| 清流县| 连南|