劉志超



摘? 要:視頻預測一直以來都是計算機視覺領域的熱點問題,由于其廣泛的實用價值和理論價值,引起了研究人員的廣泛關注。該文對主流的視頻幀預測算法進行了研究,首先介紹了視頻預測領域的常見問題,并由基本架構對視頻預測算法進行了分類,接下來介紹了該領域常用的數據集并給予評價,最后從視頻預測算法的運行流程和最新的論文角度上,總結該領域算法的發展方向。
關鍵詞: 視頻幀預測;長短時記憶網絡 ;自編碼器 ;生成對抗網絡;注意力機制;強化學習
中圖分類號:TP391? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)10-0249-03
Abstract:Video prediction has always been a key issue in the computer vision field.Because of its extensive pratical and theoratical values,the video prediction technique has attracted attentions of many researchers.This paper reviews the main video prediction algorithms.Firstly,this paper introduce the common problems in video prediction,and classify many famous video prediction algorithms according to basic architectures.Then,the common datasets of video prediction are introduced and evaluated.Finally,on the basis of the process of the algorithms and the latest papers,this paper summarize the development of algorithms in this field.
Key words:video prediction; long short-term memory network; autoencoder; generative adversarial net; attention mechanism;? reinforcement learning
視頻幀預測(video predictin)是指通過對視頻中的歷史圖像幀序列進行學習,從而生成未來的圖像幀。在自動駕駛技術日趨成熟的今天,能夠預測圖象的未來幀序列變得越來越重要。目前視頻預測已經在無人駕駛、機器人導航、人機交互等廣泛的應用領域取得了一定的成功,如預測未來的活動和事件[1]、目標的位置預測、交通中行人的軌跡預測、自動駕駛等。
軌跡預測是視頻中運動預測的關鍵,預測系統不僅需要知道目標周圍對象的當前狀態,還需要知道它們未來可能的狀態。在視頻預測研究興起之前,物體運動軌跡預測更加受學術界關注。二者的區別與聯系在于:運動預測一般是指從靜態圖像或視頻前幾幀中推斷出人體動作、物體移動軌跡等動態信息;而視頻預測是從靜態圖片或視頻前幾幀中直接預測未來圖像。目前的,針對視頻預測算法的常用評價指標為均方誤差(MSE)、絕對誤差(MAE)、峰值信噪比(PSNR)和結構相似性(SSIM)。前兩者越小越好,后兩者越大越好。
本文由常見的視頻預測基本架構作為分類準則,按時間順序回顧了現有的視頻預測算法。具體結構如下:首先簡要介紹視頻預測領域常見的問題;之后對視頻幀預測領域中的算法按照上文提及的基準進行分類;其次介紹該領域常用的數據集,并評價其特點;最后介紹改善該領域算法的新方向和視頻預測算法的下一步發展與展望。
1 視頻預測的常見問題
視頻幀預測技術的性能在近幾年逐漸改善,但是由于視頻數據中存在大量的復雜信息,同時相鄰的視頻幀間具有較強的相關性,而傳統的機器學習算法在自動標注特征信息和根據歷史幀序列生成預測幀的能力方面有所欠缺,因此視頻預測領域仍然存在很大的挑戰,面臨的挑戰主要如下:
1)模糊的預測。這個問題一般是誤差在循環模型中的傳播造成的,而這與視頻預測的固有不確定性有關。對于之前給定的一系列先前幀,存在多個平行的未來。如果不加以限制,就會產生一個模糊的預測,同時這預測結果會影響后續幀傳播回網絡的信息,產生更大的誤差。
2)高內存消耗。伴隨著視頻預測技術的發展,神經網絡的深度逐漸增加,模型高內存消耗的特點逐漸凸顯。而這一特點極大地限制了他們的應用場景和降低預測效率。
3)預測的長期性。由于復雜的動力學和背景外觀的變化,在模型架構生成較為遙遠的未來幀時,由于存儲單元記憶能力的限制和長期預測中主要由遮擋、照明條件變化和攝像機運動等因素造成的視覺外觀可變性,未來幀可能出現與現實情況不符甚至不合理的結果。
4)無法捕捉全部分布。在上文中提到視頻數據高復雜性的特點,而這直接導致了當目標對象的運動場景較為復雜時,會導致模型架構對視頻前后幀間部分復雜關系的疏漏。
2 基本的算法架構
在視頻預測的研究過程中,我們發現了各種架構和計算單元所組成的算法,而這些所產生的算法主要是依據以下三種基本神經網絡架構發展得到的:基于自動編碼器(Auto-Encoder, AE)的方法、基于生成對抗神經網絡(Generate Adversarial Network, GAN)的方法,以及基于長短時記憶神經網絡(Long Short-Term Memory, LSTM)的方法,如圖1。
2.1 自編碼器
2.1.1 自編碼器思想
傳統的自編碼器模型主要由編碼器和解碼器兩部分構成,通過將視頻幀序列編碼成為一個潛在變量,然后再利用潛在變量生成視頻幀序列。
2.1.2 基于AE結構的改進
Patraucean團隊通過將一種具有長短時記憶功能的卷積模塊加入編碼器的架構中而提出一種新的時空視頻自動編碼器[2],與早期的編碼器和短時性記憶模塊的簡單連接,該模型所需的參數更少;而DeBrabandere等提出的方案中,卷積模塊是用來融入編碼器架構來產生濾波器生成網絡[3],最終達到在模型參數不會過度增加的前提下進行自適應特征提取。同時,由于視頻數據的時序特性,其算法架構大多會使用循環結構,而Lotter等人基于對循環結構中誤差的傳遞考慮,提出了PredNet,該網絡通過將預測信息與實際信息相對比來產生誤差信息,再將誤差信息自下而上傳遞回去來更新預測信息,最終減小誤差信息對于預測的影響。Villegas等人提出MCnet網絡,該網絡在基礎架構中融入了ConvLstm,創新性地將視頻預測的輸入分成了兩個易識別的組成,即內容組和運動組。該網絡可以通過從運動組編碼空間區域的局部動態和從內容組編碼圖像的空間布局信息,最終實現將提取出來的內容信息和動作信息加入未來幀,來簡化預測的工作量。與MCnet算法的拆分思想類似,Hsieh等人結合結構化概率模型和深層網絡架構提出了DDPAE,將預測的高維視頻拆分為組件,并將每個組件拆分為低維時間動態來進行預測,從而對視頻進行良好的分解和理解,最終達到降低預測工作的復雜性的目的。FAN等人提出分層自動編碼器(HRPAE),則是利用編碼器編碼成不同層次的卷積特征,并使用ConvLSTMs對這些特征分別建模。同時,在該架構下,編碼器和解碼器之間的特征信息更容易共享。
2.2 生成對抗網絡
2.2.1 生成對抗網絡思想
生成對抗網絡的核心思想在于以零和博弈的方式進行交替訓練。該網絡由一個生成器(generator,G)和一個判別器(discriminator,D)組成。在視頻預測中,生成器在鑒別器網絡的指導下,基于輸入像素的聯合分布模型而無需進行任何其他獨立假設來生成未來幀。
2.2.2 基于GAN結構的改進
基于生成對抗網絡的方法通常是利用GAN中的生成器作為預測模型來實現對未來視頻幀的預測。Liang等為了使生成的未來幀與視頻序列中的像素流一致,提出了一種雙重運動生成對抗網絡模型[4],來通過雙重學習機制來學習預測未來幀。在該學習機制下,原始的未來幀預測和后續的未來流預測形成一個閉環來反過來糾正現實數據,來使生成的信息相互反饋,從而實現更有效的預測。這類方法中,由于其融入的對抗思想,能夠較為清晰地預測未來的視頻幀,但是處于長期預測的任務中時,視頻幀質量會迅速下滑。而Xiong等人提出運用多個階段GAN來生成和細化原始幀。類似的思想還有,Bhattacharjee等人基于對時間維度上的考慮,提出了兩個基于歸一化互相關和成對對比散度的目標函數和一個多階段生成對抗框架,并通過兩個階段的生成對抗網絡來生成清晰的未來幀。Lee等人提出的隨機對抗生成網絡(SAVP),通過結合對抗性損失和潛在變量等方法來進行預測,在GAN架構的基礎上加入變分自編碼器來觀察真實的視頻幀潛在編碼,最后結合ConvLstm來進行視頻幀預測。Ying等人[5]提出差異導向的生成對抗網絡,通過引入雙路徑網絡的方式,來盡可能地保留未來幀的細節信息。一條路徑生成未來幀的粗略結果,另一條路徑則是用來生成歷史幀和預測幀之間的差異圖像。該模型的特點在于擺脫了從隨機噪聲中生成圖像的局限性,而創新性地從對相鄰幀之間的差異得到靈感,從而以歷史幀序列的分布為基準進行像素偏移。其價值在于在未來幀的SSIM等指標合適的前提下,使生成的幀可以具有精細的細節。
2.3 長短時記憶網絡
2.3.1? Lstm的思想
Lstm模型通過有選擇性地丟失存儲的信息,并將選擇出來的信息與后續輸入的時序信息相結合來完成對時間序列數據的處理與分析,同時也由于視頻數據的特點,許多視頻幀預測算法都是在該模型上發展而來的。
2.3.2 基于Lstm結構的改進
早期,由Lotter等人將卷積模塊與傳統的LSTM模型結合,而提出了預測神經網絡[6],該網絡能夠對每一層都進行局部預測,并且將預測的偏差向后傳遞,最終實現對視頻序列進行預測。Oliu[7]等人創新性地提出了GRU計算單元和一種遞歸結構,通過疊加多層ConvGRU結構形成一個具有雙重門控循環單元的循環自動編碼器。同時,由于編碼器和解碼器的權重共享,減少了計算成本,并且達到了較好的預測效果。與Oliu的信息共享思想類似的,Wang等人先提出PredRNN,其架構中的每一個LSTM單元的記憶狀態并不獨有且允許不同單元的內存狀態跨層,其信息可以垂直和水平地穿過所有的RNN堆疊層,同時該網絡可以同時提取和記憶空間信息和時間信息,后來在該算法的基礎上提出了一個梯度公路單元,來緩解梯度傳播的困難。接著,Wang等人提出了MIM模塊來利用相鄰循環狀態之間差分信息,最終實現處理時空動力學的非平穩和近似平穩變量。對于之前提到的架構,雖然都可以進行較長的時間預測,但是由于架構內部的計算單元提取特征能力較弱而受一定局限。最近,Wang等人利提出將3D-Conv單元集成到循環神經網絡,來使網絡更好地感知運動,同時,存儲更好的短期特征。該網絡通過門控自我注意模塊來提升其長期記憶的能力,并得以在多個時間點回憶存儲記憶,所以對于長時間的干擾有著很好的糾正能力。
3 常用數據集
由于常見的視頻預測算法所需要的輸入大多是一系列有著連續變化關系的視頻幀,所以數據之間有著邏輯關系的數據集大多比較適合作為該領域的使用數據,例如人的運動姿態、汽車行駛鳥瞰圖、3維彈球運動等。
KTH數據集記錄了一個演員在相同背景下進行運動的視頻數據。該數據集包含包括2391個平均持續時間為4秒的視頻序列,視頻序列中演員的動作可以分為6種。分辨率下采樣至160 × 120像素。
移動數字數據集為一個人工合成數據集。其記錄的數據為兩個不同的阿拉伯數字伴隨著時間的推移,在同質的黑色背景下各自進行連續運動的視頻序列。該數據集的分辨率為64×64像素。
Kitti數據集是一個移動機器人和自動駕駛數據集。該數據集有151個視頻序列,采樣至1392×512像素。他是由數小時的交通場景組成,用各種傳感器記錄得到的,例如RGB、3D激光掃描儀等。
彈跳球數據集記錄的是三個彈球在盒子中跳動的情況,它是生成高維序列模型的通用測試集。同時,該數據集共同包含4000個視頻序列,其采樣分辨率為150×150。
4 視頻幀預測算法改進方向
從上文中,可以看出在改善視頻預測網絡結構的方向上,學者已經做出了許多成果,并取得不錯的成效。這一章節,將介紹有別于之前專注于改善模型架構的算法提升方向。
自然語言任務轉換模型(Transformer),近年來在計算機視覺領域取得了許多令人興奮的結果。該模型由于利用了注意力機制來編碼輸入中的依賴關系而得到了很高的表達能力。同時由于編碼特征的一般化,該模型在視頻預測、動作識別、圖像超分辨率等領域都得到了廣泛的應用。Zhong等人提出的基于行為條件的未來幀預測模型,該學習框架通過將強化學習與視頻預測模型融合來解開可控對象,其特點在于利用行為條件進行未來幀預測,并使用行為信息來學習可控對象的解開。其模型的運行方式為將預測任分為了三部分,分別是預測相關動作信息、圖像的背景信息和掩模圖像信息,最終達到生成未來幀的目的。Kim等人提出了一種檢測任意對象的關鍵點算法,該算法被訓練成以無監督方式檢測任意對象的關鍵點。然后,在此算法的基礎上,提出了一種新的從輸入上進行處理的視頻預測算法。其缺陷也十分明顯,由于該算法是基于關鍵點展開的,所以它的目標對象更適合于在運動時會產生關鍵點的人等對象。Lin等人提出SA-ConvLstm模型,其特點在于提出了一種新的自我注意記憶(SAM)來記憶時空領域的長期特征。較之于之前的算法模型,在MSE等指標上有了突破。Lange等人[8]同樣在算法中加入注意力機制,而提出了SAAConvLstm和TAALSTM,來解決視頻預測過程中的移動對象顯著模糊和消失的問題。
5 結論
通過本文的討論,未來的研究方向可以從以下幾個方面來進行,具體如圖2所示:
在視頻幀的輸入端上,為了捕捉視頻數據中復雜且長期的空間關系,可以從預先處理輸入數據開始,例如上文提到的關鍵點和注意力層面,未來可以研究如何針對不同的運動對象和應用場景來創造合適的視頻數據預處理方法;視頻預測的架構是視頻預測領域一直著力研究的方向,未來學者可以提出更加合理的計算單元來生成準確率更高的未來幀;融入其他計算機視覺領域算法到視頻幀預測領域也是未來發展的前景,上文中提到的transformer模型本為自然語言處理領域提出的算法,但由于其良好的泛化能力,在眾多CV方向得到了廣泛應用。本研究團隊未來欲將強化學習的知識運用到視頻預測領域,期待產生更加驚喜的效果。
參考文獻:
[1] Hoai M,de la Torre F.Max-margin early event detectors[J].International Journal of Computer Vision,2014,107(2):191-202.
[2] PATRAUCEAN V, HANDA A, CIPOLLA R. Spatio-temporal video autoencoder with differentiable memory[C].ICLR,San Juan, Puerto Rico,2016.
[3] Brabandere B D,Jia X,Tuytelaars T,et al.Dynamic filter networks[EB/OL].2016.
[4] Liang X D,Lee L,Dai W,et al.Dual motion GAN for future-flow embedded video prediction[C]//2017 IEEE International Conference on Computer Vision (ICCV).October 22-29,2017,Venice,Italy.IEEE,2017:1762-1770.
[5] Ying G H,Zou Y T,Wan L,et al.Better guider predicts future better:difference guided generative adversarial networks[EB/OL].2019.
[6] LOTTER W, KREIMAN G, COX D. Deep predictive coding networks for video prediction and unsupervised learning[C] ICLR., Toulon, French.
[7] Oliu M,Selva J,Escalera S.Folded recurrent neural networks for future video prediction[C]//Computer Vision - ECCV,2018: 745-761.
[8] Lange B,Itkina M,Kochenderfer M J.Attention augmented ConvLSTM forEnvironment prediction[EB/OL].2020.
【通聯編輯:唐一東】