沈 秋, 李小凡, 嚴小樂, 孔繁鏘
(南京航空航天大學 航天學院, 南京 210016)
無人機視頻的分層表達與實時壓縮
沈 秋, 李小凡, 嚴小樂, 孔繁鏘
(南京航空航天大學 航天學院, 南京 210016)
為克服無人機視頻應用中計算能力和傳輸帶寬的限制,提出一種視頻分層表達方法,實現快速、高質量、靈活的視頻編碼. 將無人機視頻分為背景層和目標層,并分別采用基于全局運動估計和基于局部塊匹配的方法進行壓縮,壓縮后的碼流可以根據實際的網絡情況和應用需求進行單獨傳輸或組合傳輸. 實驗結果表明:在極低碼率如50 kbit/s時,H.264的PSNR低于28 dB,且圖像主觀質量超出可接受范圍,而采用分層表達中的背景層壓縮,可以在保證PSNR在28 dB以上,且圖像細節清晰、主觀質量較高;在碼率較高時,采用背景層和目標層結合,在同等碼率條件下,目標的細節比H.264更清晰;整個壓縮過程消耗的時間只有H.264的18%. 本文方法在不降低視頻質量的同時提高了壓縮效率,且碼流具備靈活性,適用于低延時、低帶寬、復雜的無人機應用.
視頻壓縮;無人機視頻;分層表達;全局運動估計;H.264
視頻作為無人機的眼睛在其任務執行中發揮著不可替代的作用,但卻因其數據量巨大一直是無線傳輸的挑戰,因此,視頻壓縮是無人機應用中非常重要的環節. H.264作為當前最成熟、穩定的編碼算法正廣泛應用于各個行業,也是無人機視頻壓縮的主流算法. 文獻[1-3]分別實現了基于H.264的無人機視頻壓縮的軟硬件系統,文獻[4-5]則針對無人機帶寬條件分別提出了碼率控制算法和抗干擾算法. 盡管如此,H.264復雜的編碼過程和無人機有限的計算、傳輸能力,使得無人機視頻傳輸仍然存在質量不高、延時較大等問題. 為了克服這些不足近幾年出現了一些非標準算法,如文獻[6-8]采用的圖像拼接方法,文獻[9-10]研究的全局運動估計算法,文獻[11]提出的基于感興趣區域的方法,都一定程度上提高了無人機視頻壓縮的效率和質量. 然而這些方法仍無法在壓縮質量、可靠性、復雜度、靈活性之間取得最優的綜合性能.
無人機視頻往往具有一定的特殊性:飛行高度遠大于地表的起伏程度,因此可以將視頻背景簡化為平面;視頻中背景的運動主要來自于無人機的運動,具有一致性;視頻中運動目標,則存在獨立的運動特點. 結合以上特征,本文提出一種視頻的分層表達方法,將獨立運動物體從背景中分割出來,分別構建背景層和目標層,并根據每層各自的特點設計有針對性的壓縮算法. 其中,背景層采用基于全局運動估計的方法,目標層則采用局部塊匹配的方法. 這樣不僅可以獲得更快的計算速度和更高的壓縮比,同時可以保留精確的運動信息和紋理信息,而且還可以根據實際應用場景的需求,靈活地選擇不同的碼流,提供更高效、可靠的視頻傳輸方案.
由于無人機機載設備的限制,所用運動估計算法復雜度不能太高,所以本文對原有的全局運動估計算法進行改進,具體流程如圖1所示. 將圖像劃分為固定數量的網格,并在網格中提取固定數量的特征點,這樣不僅降低了傳統特征點提取算法的復雜度,也避免了陷入局部最優. 為了適應旋轉和尺度變化并達到實時性要求,本文選用文獻[12]提出的ORB(ORiented Brief)進行特征點提取與匹配,采用文獻[13]提出的RANSAC(RANdom Sample Consensus)去除誤匹配,并使用最小二乘法得到視頻全局運動估計的初步結果. 因無人機視頻中獨立運動目標的存在會對視頻全局運動估計產生影響,接下來提取與全局運動不一致的區域,并進一步剔除其中的特征點,再重新進行全局運動參數的估算. 最后根據精確計算的全局運動參數,結合幀差法、形態學操作完成視頻中運動目標的分割.

圖1 基于全局運動估計的運動目標分割流程圖
本文提出的分層表達主要包括兩層(如圖2所示):第一層為背景層,由靜止的地面背景組成,在視頻中的運動主要來自于相機運動,因此可以通過建立全局運動模型來刻畫背景的運動;第二層為目標層,由實際運動的物體組成,在視頻中體現出來的運動是由相機運動和物體運動共同組成,無法通過簡單的運動模型來刻畫. 因此,表達中的每一層應采用不同的方法進行壓縮.
基于分層表達的無人機視頻壓縮算法主要由兩部分組成(如圖3所示),分別為目標分割和分層壓縮. 在目標分割部分,先對輸入視頻進行預處理以消除噪聲對目標分割的影響,再采用第1節描述的基于全局運動估計的方法來進行分割;在分層壓縮部分,根據各自的特征,背景層采用結合全局運動估計的方法,目標層則采用基于局部塊匹配的方法,兩者結合起來得到最終編碼碼流.

圖2 視頻的分層表達結構

圖3 視頻分層表達編碼框架圖
2.1 背景層壓縮
背景層壓縮算法是在H.264基礎上實現的,通過在運動估計部分增加全局運動估計實現低復雜度的背景層壓縮算法,如圖4虛線框所示. 通過判斷當前幀中每個宏塊的位置,決定該宏塊采用全局運動估計還是H.264的基于宏塊的運動估計.

圖4 背景層壓縮算法編碼框圖
具體實現步驟如下(假設一個圖像組由N幀組成):
1)關鍵幀的選擇. 關鍵幀是背景層中要編碼的第一幀,隨后的幀根據全局運動參數映射到前一幀坐標系中,如圖5所示.

3)當映射后的宏塊坐標超過參考幀的范圍時,被標識為未曾出現區域(圖中斜線區域),使用非skip模式編碼;而運動目標出現的區域(圖中灰色區域)也使用非skip模式編碼;其余宏塊(圖中白色區域)使用skip模式編碼. 映射參數將在補充增強信息(SEI)中編碼.

圖5 背景層編碼模式判定
2.2 目標層壓縮
運動目標構成目標層,采用基于局部塊匹配的方式進行編碼. 圖6是目標層編碼模式判定示意圖,背景黑色表示像素值為0. 具體過程為:
1) 利用運動目標分割的結果,得到運動目標整體在圖像坐標系中位于左上角的坐標Ptl(xmin,ymin)
和右下角的坐標Pbr(xmax,ymax).
2) 運動目標所在區域為以宏塊為單位的包括Ptl(xmin,ymin)和Pbr(xmax,ymax)的最小矩形框.
3) 目標區域的宏塊采用H.264幀間預測模式進行編碼,而非運動目標區域采用H.264的skip模式編碼. 通過這種方式,可以使編碼速度大大增加,同時編碼性能也得以提高.

圖6 目標層編碼模式判定
實驗分為仿真視頻和實際航拍視頻兩組,限于篇幅,每組只選擇一個視頻進行展示. 實驗的硬件平臺為HP Z820圖形工作站(主頻2.3 GHz、內存14 G),軟件平臺為Win7操作系統+ Microsoft Visual Studio 2010、OpenCV2.3.1以及H.264壓縮標準參考軟件平臺JM12.1.
3.1 仿真視頻實驗
仿真視頻是利用谷歌地球的飛行模擬器從一定海拔高度,以一定的速度和航線對地面垂直俯拍所得,視頻信息如表1所示,并且仿真視頻中沒有運動目標.

表1 仿真視頻參數信息
對該視頻分別采用本文提出的背景層壓縮算法和H.264進行編碼,得到的R-D(Rate-Distortion,率失真)曲線如圖7所示. 當碼率小于75 kbit/s時,本文提出的算法不需要將運動矢量及模式選擇信息寫入到碼流中,因而可以以很低的碼率得到較好的壓縮質量. 但隨著碼率的增加,本文算法的PSNR卻沒有像H.264一樣較大幅度的提高,主要原因是:一方面,H.264壓縮算法的運動搜索采用1/4像素精度,高于本文使用的基于特征匹配的全局運動估計;另一方面,以較少的全局運動參數代替所有宏塊的運動參數一定存在微小的誤差,這些誤差導致重建的圖像與原始圖像會有1個像素左右的位移,這雖然不影響視頻的主觀質量,但以像素為單位進行計算的PSNR值卻會受到極大的影響. 圖8給出了兩種方法的在不同碼率下重建圖像的局部細節,可見無論在低碼率還是高碼率的情況下,本文算法的重建圖像的主觀質量都高于H.264.

圖7 低碼率區間編碼率失真曲線對比

圖8 不同碼率下的主觀質量對比
本文算法相比于H.264的最大優勢在于計算效率,從表2可以看出,本文方法因采用全局運動估計代替了H.264中最耗時的基于宏塊的運動估計和模式選擇,大大減少了編碼時間.

表2 仿真視頻運動估計時間及壓縮編碼時間比較Tab.2 Comparison of time consuming of motion estimation and encoding
3.2 實際航拍視頻實驗
該視頻于2015年6月7日在南京市江寧區一處農田附近使用大疆精靈3無人機拍攝,視頻中有2輛并行行駛的汽車以及行人等運動目標. 無人機對地俯拍,行人在視頻影像中所占像素數量相對于汽車而言可以忽略不計,屬于極微小的運動目標. 本文為簡化處理,認為視頻中獨立運動目標數量為2個,分割出的運動目標也為2個.
獲取的視頻信息如表3所示. 由于背景層與原始視頻相比缺少了運動目標,無法進行客觀質量的評價,在相似碼率下比較本文方法的背景層壓縮和H.264壓縮的主觀質量,圖9給出了背景部分的局部放大圖. 可見本文算法在rate = 134.3 kbit/s時背景部分邊緣清晰、紋理詳細,而H.264在rate=158.8 kbit/s時壓縮后的背景部分非常模糊.

表3 實際航拍視頻參數信息

(a)本文方法(134.3 kbit/s) (b)H.264(158.8 kbit/s)
目標層壓縮實驗用于比較本文提出的目標層壓縮算法和H.264標準壓縮算法壓縮目標層的效率和性能. 如圖10所示,兩者R-D曲線非常接近,甚至目標層編碼略高于H.264. 而在壓縮效率方面,由于目標層壓縮是大部分的宏塊直接采用skip模式編碼,不需再進行復雜的模式選擇,編碼所需時間僅相當于H.264的6%左右(如表4所示).

圖10 目標層壓縮R-D曲線對比
表4 目標層壓縮時間對比
Tab.4 Coding time comparison of object layer with H.264

壓縮方式壓縮編碼時間/s壓縮編碼時間比目標層壓縮H.26443.27734.751∶16.98
為了達到更好的壓縮效果,本文提出的視頻的分層表達可以實現對背景層和目標層采用不同壓縮方法和壓縮質量,從而適應不同的帶寬條件和應用需求. 一方面,在極低碼率時,無法提供運動目標的細節,則可以只傳輸背景層碼流,使接收方對視頻的整體內容有更好的體驗,并且背景層碼流還可以通過全局運動補償實現快速的全景圖拼接;另一方面,在一般碼率條件下,本文方法可以為背景層和目標層設置不同的量化參數,充分保證目標層的質量. 圖11為在rate=203.89 kbit/s時,背景層采用量化參數QP=42,而目標層采用量化參數QP=35時編碼重建幀的主觀圖. 可見本文算法重建幀中背景和目標的清晰度不同,目標區域更加清晰,而背景區域相對目標而言較模糊,從而實現了對目標區域的感興趣編碼,并且在相似碼率下,本文算法背景部分和目標部分都比H.264標準壓縮算法重建幀更清晰. 此外,從表5可知,本文算法的編碼時間也遠遠小于H.264.

圖11 實際航拍視頻壓縮后主觀質量對比
表5 實際航拍視頻壓縮編碼時間比較
Tab.5 Coding time comparison of aerial video

壓縮方式壓縮編碼時間/s壓縮編碼時間比背景層+目標層壓縮H.264134.11766.211∶5.71
本文針對無人機視頻的特征和特定需求,提出一種新的視頻壓縮編碼方法,通過分層表達對視頻進行分解和壓縮,從而提供了更高效、快速、靈活的無人機視頻傳輸方案. 一方面,該算法在大部分碼率條件下都可以得到高于H.264的壓縮質量,同時需要的計算時間只有H.264的18%左右;另一方面,這種分層的表達形式可以根據實際的傳輸條件,選擇不同的碼流,具有更好的適應性. 本文算法的不足在于:在高碼率時PSNR值較低,體現為整體畫面可能與實際存在微小的位置偏移;當無人機飛行高度低,背景不能被視為平面的情況時,壓縮效果將降低. 因此下一步的研究重點是進一步借鑒更新的編碼算法,優化編碼步驟,建立更精確的運動模型,提高算法的適用性和有效性.
[1] 李楓. 基于H.264的航拍視頻實時壓縮系統[D].北京:北京理工大學,2011.
LI Feng.System of real-time compression of aerial video based on H.264[D]. Beijing: Beijing Institute of Technology, 2011.
[2] 郭昕.微型無人機視頻壓縮的研究[D].天津:天津大學,2012.
GUO Xin.Research of video compression on micro-UAV[D]. Tianjin: Tianjin University, 2012.
[3] 吳笑天,魯劍鋒,王宇慶,等. 基于DM368的無人機視頻壓縮系統的設計[J]. 液晶與顯示,2014,29(6):1117-1123.
WU Xiaotian, LU Jianfeng, Wang Yuqing, et al. Design of UAV video encoding system based on DM368[J]. Chinese Journal of Liquid Crystals & Displays, 2014, 29(6):1117-1123.
[4] 趙春蕾,戴明,尹傳歷.無人機機載偵察視頻的高效視頻碼率控制[J].光學精密工程,2015,23(12):3500-3508.
ZHAO Chunlei, DAI Ming, YIN Chuanli. HEVC rate control for unmanned aerial vehicle airborne reconnaissance[J]. Optics & Precision Engineering, 2015, 23(12):3500-3508.
[5] 張露.無人機低時延抗誤碼音視頻編解碼系統軟件設計[D].杭州:浙江大學,2016.
ZHANG Lu. Software design of low-latency error-resilient audio-video codec system for UAV[D]. Hangzhou: Zhejiang University, 2016.
[6] KRUTZ A, GLANTZ A, SIKORA T. Recent advances in video coding using static background models[C]//Picture Coding Symposium (PCS) . Nagoya: IEEE, 2010: 462-465.
[7] 謝清鵬.無人機序列圖像壓縮方法研究[D].武漢:華中科技大學,2005.
XIE Qingpeng.Research on compression methods of unmanned aerial vehicle’s image sequence[D]. Wuhan: Huazhong University of Science and Technology, 2005.
[8] KANG C B, DING W R, YUAN Y X, et al. Integrated compression coding method for UAV reconnaissance video and still image[M]. Foundations of Intelligent Systems. Berlin,Heidelberg:Springer, 2014: 1067-1075.
[9] 王云麗,張鑫,高超,等.航拍視頻拼圖中基于特征匹配的全局運動估計方法[J].航空學報, 2008, 29(5): 1218-1225.
WANG Yunli, ZHANG Xin, GAO Chao,et al. Feature matching based global motion estimation in aerial video mosaicing[J]. Acta Aeronautica et Astronautica Sinica, 2008, 29(5): 022.
[10]沈秋,李小凡,孔繁鏘,等.基于仿射模型的無人機視頻實時壓縮算法[J].電子與信息學報, 2014,36(12): 2855-2860.
SHEN Qiu, LI Xiaofan, KONG Fanqiang,et al. A real-time video compression for UAV based on affine model[J]. Journal of Electronics & Information Technology, 2014, 36(12): 010.
[11]BHASKARANAND M, GIBSON J D. Low-complexity video encoding for UAV reconnaissance and surveillance[C]//Military Communications Conference, MILCOM 2011. Baltimore: IEEE, 2011: 1633-1638.
[12]RUBLEE E, RABAUD V, KONOLIGE K, et al. ORB: an efficient alternative to SIFT or SURF[C]//2011 IEEE International Conference on Computer Vision (ICCV). Barcelona:IEEE, 2011: 2564-2571.
[13]張波,羅海勇,劉冀偉,等.視覺傳感器網絡中基于RANSAC的頑健定位算法[J].通信學報,2013,34(8): 62-69.
ZHANG Bo, LUO Haiyong, LIU Jiwei, et al. RANSAC based robust localization algorithm for visual sensor network[J]. Journal on Communications, 2013, 34(8):62-69.
(編輯 王小唯, 苗秀芝)
Hierarchical description and real-time compression for UAV video
SHEN Qiu, LI Xiaofan, YAN Xiaole, KONG Fanqiang
(College of Astronautics, Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China)
To overcome the limitations of compute capability and bandwidth in UAV (Unmanned Aerial Vehicle) video, this paper proposes a novel video compression algorithm based on hierarchical description. The video is split into background layer and object layer. Background layer is encoded with global motion estimation, while object layer is encoded with local block matching. The experimental results demonstrate that, when bandwidth is narrow e.g. 50 kbit/s, using background layer encoding can achieve higher PSNR than H.264, and the subjective quality is much more acceptable; in most cases, combining background and object layer can give more details than H.264 with the same bitrate; the consuming time is only 18% of H.264’s. Additionally, alternative bitstream can be extracted for different bandwidth. Consequently, the proposed algorithm is suitable for low latency and complexity applications in UAV video due to its good performance, high efficiency and flexibility.
video compression; UAV videos; hierarchical description; global motion estimation; H.264
10.11918/j.issn.0367-6234.201610081
2016-10-21
國家自然科學基金( 61201365, 61401200); 江蘇省普通高校研究生科研創新計劃項目(SJLX15_0138); 中央高?;究蒲袠I務費專項資金資助
沈 秋(1982—),女,博士,講師
沈 秋,shenqiu@nuaa.edu.cn
TN919.81
A
0367-6234(2017)05-0068-05