馬境遠,王川銘
1(北郵感知技術研究院(江蘇)有限公司,江蘇 無錫 214115) 2(北京郵電大學 智能通信軟件與多媒體北京市實驗室,北京100876) E-mail:2219063829@qq.com
隨著生活水平的提升,人們對于視頻的觀看質(zhì)量要求越來越高.普通攝像設備拍攝的視頻幀速率有限,從而影響觀眾的特殊觀感體驗.因此,在視頻拍攝后對其進行適當?shù)暮筇幚?,也成了視頻制作中十分重要的一環(huán),視頻插幀就是其中關鍵技術.視頻插幀[1-9]目標是通過兩個連續(xù)的輸入視頻幀數(shù)據(jù),用以合成其中間幀的數(shù)據(jù).視頻插幀能夠有效地提高視頻播放的幀率,保證視頻中目標運動的連續(xù)性,減少用戶觀看時的卡頓感,提升用戶的觀看體驗,因此被廣泛應用于影視作品、體育比賽視頻精彩片段的慢動作回放[1]等方面.視頻插幀對幀率的改變也使得其能夠被用于視頻壓縮傳輸?shù)热蝿罩?此外,具有產(chǎn)生新圖像的特性也使得它能夠在視頻內(nèi)容編輯、多視角視頻合成等方面發(fā)揮作用.
如圖1所示,傳統(tǒng)的基于光流的視頻插幀方法[2,9]主要由以下兩個步驟組成:光流估計和中間幀合成.光流估計是指對兩個連續(xù)視頻幀圖像(I0、I1),分別估計它們與待生成中間幀的光流信息(Ft→0、Ft→1).中間幀合成指的是通過估計得到的光流信息,對視頻幀圖像對進行映射變換,得到最后的中間幀(It).其中,光流估計的效果對插幀結果有著關鍵的影響.但是,視頻插幀任務中光流估計十分具有挑戰(zhàn)性,與一般的光流估計任務存在本質(zhì)上的不同.一般的光流估計方法能夠獲得需要估計光流的兩張圖像,但是在視頻插幀任務中,需要被估計光流的圖像數(shù)據(jù)是不完整的,即其中一張圖像是要生成的目標圖像,因此只能利用可獲得的連續(xù)兩幅視頻幀圖像.
圖1 基于光流的視頻插幀方法Fig.1 Optical flow-based video interpolation method
為解決視頻插幀任務中光流估計難的問題,人們提出了一系列方法.這些方法圍繞著如何更準確地預測光流信息和如何更充分利用光流信息兩方面進行研究,但是它們往往需要兩次光流估計,嚴重降低了深度神經(jīng)網(wǎng)絡模型的運行效率,使得這些插幀方法很難應用于實時視頻分析任務中.
針對如何利用光流信息進行實時視頻插幀的難點問題,本文遵循當前的視頻插幀框架,提出一種基于多尺度光流預測與融合的實時視頻插幀方法.本文的方法由光流預測和中間幀合成兩部分組成,首先采用不損失信息的下采樣方法對圖像進行多規(guī)模的下采樣,獲得不同尺度的圖像數(shù)據(jù);之后通過帶有注意力機制的特征提取網(wǎng)絡來提取視頻幀對的特征,并根據(jù)該特征得到預測光流信息.因為輸入圖像是多尺度的,所以獲得的光流信息也具有不同的尺度信息,本文采用了一個光流融合網(wǎng)絡將這些多尺度的光流信息進行融合得到最后的結果用于圖像合成.
在大規(guī)模視頻插幀基準數(shù)據(jù)集上,對所提方法進行了訓練和測試,實驗結果表明本文的方法能夠?qū)崟r地生成高質(zhì)量的視頻插幀效果.同時將所提方法與當前的經(jīng)典方法進行了實驗對比,比較結果展示本文方法的優(yōu)越性.
視頻插幀任務,由于其廣泛的應用性,一直是計算機視覺與多媒體技術領域研究的熱點問題.傳統(tǒng)的視頻插幀方法往往都伴隨著視頻編碼策略的設計,目的也是為了優(yōu)化傳輸?shù)男?而近年來,隨著深度學習的日益發(fā)展,深度神經(jīng)網(wǎng)絡因其強大的特征提取能力,在諸多視覺任務上取得了很大突破.因此,現(xiàn)階段有一系列的方法期望通過深度學習技術來完成視頻插幀任務.
Liu[1]等受到自編碼器的啟發(fā),設計了一種基于神經(jīng)網(wǎng)絡編碼器-解碼器的模型去學習體素流,從而合成插幀圖像.但是對不同尺度的體素間關系的忽略導致了其不能較好處理不同體素移動速度不一致的問題.Jiang[2]等提出了一種雙向光流估計方法,通過神經(jīng)網(wǎng)絡梯度輸入圖像對之間的光流,再結合這種雙向光流,得到輸入圖像與待合成圖像的光流信息.但是,這種迭代估計的方法導致了光流估計的速度較慢,使得無法應用于實時視頻任務中.Bao[3]等除了光流信息,還設計了一個深度估計網(wǎng)絡來促進光流估計的結果.這種多信息融合的特性使得其估計得到的光流結果更加精確,從而合成更加高質(zhì)量的中間幀.但是,引入了深度估計模型同樣導致了該方法計算量的增加,從而降低了方法的運行速度.除了深度信息,Bao[4]等還提出了一個利用運動估計信息的視頻插幀方法,通過設計的運動估計和運動補償神經(jīng)網(wǎng)絡,生成更具有魯棒性的視頻插幀結果,但是同樣降低了方法的運行速度.
還有一部分方法探究如何更好地進行圖像合成操作.Niklaus[5]等通過預訓練后的光流估計模型得到光流估計,并將光流信息與圖像的深度特征進行結合,一同送入到一個合成網(wǎng)絡中,得到最后的結果.
除了基于光流的方法,還有一些方法使用深度神經(jīng)網(wǎng)絡直接生成中間幀的結果.SepConv[6]和AdapConv[7]是屬于此類的兩個典型方法,它們通過使用自適應卷積學習圖像對之間的移動變換和融合策略.但是沒有準確的移動指導信息,生成的結果缺乏了魯棒性.CAIN[8]利用通道注意力來增強網(wǎng)絡學習能力,實現(xiàn)端到端的視頻插幀.
光流估計的效果對于視頻插幀的質(zhì)量有著重大的影響,為了提升視頻插幀的性能,本文提出了一種多尺度光流預測與融合方法.整體框架如圖2所示,包括圖像下采樣、卷積操作、特征拼接、光流預測、光流融合等模塊.對于輸入的一對連續(xù)視頻幀,首先進行下采樣.不同階段的下采樣的尺度是不同的,圖像中使用Sk來進行表示.在下采樣之后,通過一個簡單的卷積模塊獨立地提取兩張圖像特征,再將兩組特征沿通道維度進行拼接.拼接得到的結果送入光流預測網(wǎng)絡中,得到當前尺度圖像的光流估計結果.對于該結果,一方面被用于將圖像進行映射變換,從而送入下一階段的模型,另一方面,與下一階段預測的光流進行融合,得到更細化的光流結果.本節(jié)詳細介紹下采樣方法、提取與光流預測方法和多尺度光流融合.
圖2 多尺度光流預測與融合框架Fig.2 Framework of multi-scale optical flow prediction and fusion
運動距離小的像素在小尺度的圖像中更易被忽略,而運動距離大的像素在小尺度的圖像中仍能被觀察到.基于這樣一種觀察,多尺度學習常被應用于視頻插幀任務中.圖像常被下采樣為不同的尺度,從而學習不同尺度下的光流信息.但是現(xiàn)階段方法,對于圖像的多尺度變化,通常采用的是圖像插值,導致了信息上的丟失.因此本文設計一種信息無損的多尺度下采樣方法.
圖3分別展示了基于插值的下采樣方法和本文使用的下采樣方法.對于基于插值的方法,下采樣只能產(chǎn)生一張圖像,而本文的方法會產(chǎn)生多張圖像,這些圖像是原始圖像的一種互補的分割表示,包含了原始圖像的全部信息.
圖3 不同下采樣方法的比較Fig.3 Comparison of different down-sampling methods
基于插值的下采樣方法勢必會導致部分信息的丟失.而本文采用的下采樣方法是將空間信息壓縮到通道維度上,因此沒有信息的損失,同時,這些子圖在細節(jié)上的不同也使得網(wǎng)絡能夠?qū)W習更加魯棒的光流信息.
對于3.2節(jié)中得到的輸入數(shù)據(jù),本文先通過一個簡單的卷積神經(jīng)網(wǎng)絡,對兩張圖像分別提取特征.該卷積神經(jīng)網(wǎng)絡由兩層組成,每層都包含一個卷積層和PReLU[10]層.之后將兩個圖像對應的特征沿通道維度進行拼接,得到光流預測模塊的輸入.
如圖4所示,光流預測網(wǎng)絡由多個殘差模塊和一個轉(zhuǎn)置卷積組成.其中殘差模塊由順序排列的卷積模塊和注意力模塊組成.卷積模塊與之前圖像特征提取網(wǎng)絡相同,都是由卷積核是3的卷積與PReLU層組成.而注意力模塊是由卷積核是1的卷積操作和通道注意力結合而成,其數(shù)學表達式為:
圖4 光流預測網(wǎng)絡結構Fig.4 Network of optical flow prediction
X′=C(X*π(F(θ(F(X)))))
(1)
其中X為特征,C是卷積核大小為1的卷積,θ是ReLU[11]函數(shù),π是Sigmoid函數(shù),F(xiàn)是線性層,*表示按元素相乘.與SENet[12]保持一致,本文也在FC中使用了縮減系數(shù)a來降低維度數(shù).在具體實現(xiàn)中,每個階段的卷積通道數(shù)目、縮減系數(shù)都有所不同,在實驗部分將詳細介紹這些參數(shù).最后,本文使用了一個卷積核為4,間隔為2的轉(zhuǎn)置卷積輸出預測的光流信息.因此,特征提取與光流預測的整體結構參數(shù)如表1所示.
表1 光流預測網(wǎng)絡結構Table 1 Network of optical prediction
Fi=D(∏j,U(F′j))
(2)
其中,U表示上采樣操作,將所有光流上采樣到固定的尺度.∏表示沿通道維度將上采樣后的光流進行拼接.D表示可變形卷積操作,其卷積核為3,間隔為1,填充為1.與傳統(tǒng)卷積相比,可變形卷積對每個通道都自適應地學習一個偏移量,通過該偏移量,可以捕獲不同尺度光流中更加相關性的部分,從而生成更加魯棒性的輸出信息.同時,可以看出,階段i的光流輸出,是對之前所有階段輸出光流的一個融合.
4.1.1 訓練數(shù)據(jù)
本文在Vimeo90K-Triplet[14]數(shù)據(jù)集上進行模型的訓練和測試.Vimeo90K-Triplet是專為視頻插幀任務構建的數(shù)據(jù)集,包含73,171個3幀連續(xù)序列的數(shù)據(jù)集,所有圖像分辨率都是448×256.
本文采用3幀中的第1和第3幀作為模型的輸入,而第2幀作為模型的真值.在訓練階段,隨機從原圖中裁剪224×224大小的圖像作為輸入,同時帶用了隨機水平翻轉(zhuǎn)、隨機垂直翻轉(zhuǎn)、隨機通道打亂、隨機時序翻轉(zhuǎn)等數(shù)據(jù)增強方法.而在測試階段,保持圖像的原始大小,不做數(shù)據(jù)增強.
此外,為了訓練模型對光流信息的預測的準確性,本文采用ListFlowNet[15]預先在數(shù)據(jù)集上生成所有的光流信息,作為模型訓練時的監(jiān)督信息.
如圖5所示,一個訓練樣本數(shù)據(jù)包含了3張連續(xù)的圖像I0,It,I1,以及光流圖Ft->0,Ft->1.為了更好地展示視頻幀之間的區(qū)別,本文將I0,I1結合,可以看到其差異性.
圖5 訓練數(shù)據(jù)可視化展示Fig.5 Visualization of training data
4.1.2 模型參數(shù)
對于光流估計模型,本文將階段數(shù)目設置為3,每個階段的光流預測網(wǎng)絡中殘差模塊數(shù)目為2,通道數(shù)分別是240,128和96.此外,下采樣層的尺度分別是4,2和1.對于注意力模塊,本文統(tǒng)一將下采樣系數(shù)設置為16.本文主要是提出了一種光流預測模型,因此,直接采用RIFE[9]方法中提出的上下文內(nèi)容提取與融合網(wǎng)絡作為圖像合成模型.此外,圖2中的映射變換,本文采用了在視頻插幀領域廣泛采用的“后向映射”方法,該方法具體細節(jié)可以參考RIFE[9].
4.1.3 訓練策略
在損失函數(shù)方面,對于光流預測結果,本文使用了在視頻插幀領域廣泛采用的L1范式損失作為優(yōu)化函數(shù):
(3)
其中fgt為光流真值,fpred為光流預測值.該損失將所有預測的光流都與光流真值計算損失并求和.此外,還使用了恢復損失函數(shù):
(4)
和統(tǒng)計損失函數(shù)[16]對預測圖像進行損失計算.最終將三者相加作為最終優(yōu)化損失.
本文采用AdamW[17]作為優(yōu)化器,將其衰減設置為1e-4,總共訓練300輪.每一批次數(shù)據(jù)的大小是48,學習率使用余弦函數(shù)進行調(diào)節(jié),從同一個1e-4逐漸降低到0.在測試方面,本文度量了峰值信噪比(PSNR,peak signal-to-noise ratio)和結構相似性(SSIM,structural similarity)兩個被廣泛使用的圖像質(zhì)量評價指標.在硬件配置方面,采用了TITAN XP (Pascal)GPU作為訓練和測試硬件.
本文與當前視頻插幀方法進行了比較,比較的方法有:DVF[1]、Slomo[2]、DAIN[3]、MEMC[4]、SepConv[6]、CAIN[8]、RIFE[9].其中,重新實現(xiàn)了RIFE,以達到公平比較的目的.表2展示了比較的結果,可以看出,本文的方法在PSNR和SSIM兩個方面都能取得很好的效果.
表2 不同方法的比較Table 2 Comparison with different methods
在圖6中,本文可視化了光流預測和插幀的結果.共有3組圖片,每一組圖片上面兩張分別是光流預測的結果和光流真值的可視化,而每組下面兩張圖像是視頻插幀的結果和真值圖像.可以看出,本文的方法較好地預測了光流信息,同時得到了魯棒的插幀結果圖像.
圖6 光流預測結果、真值與視頻插幀結果、真值的可視化Fig.6 Visualization of the prediction and ground truth for optical and video interpolation
為了證明方法中不同模塊的有效性,本文對其進行了消融實驗.實驗數(shù)據(jù)是基于640p的視頻幀計算得到的.本文將一個帶有6層卷積模塊的殘差網(wǎng)絡作為BaseNet,然后依次添加下采樣模塊(DS,Down-Sampling),注意力模塊(AM,Attention Module)和光流融合模塊(FM,F(xiàn)usion Module).實驗結果如表3所示,可以看出,所提模塊能夠有效地提升模型插幀結果的性能,同時在時間開銷上的增加較少,能夠良好地滿足算法實時性的要求.
表3 不同模塊對模型的影響Table 3 Effect of different components
視頻插幀因其廣泛應用性,很多學者進行了研究.但是現(xiàn)階段的方法運行效率較低,實時性難以保證.本文提出了一個多尺度光流預測和融合模型,利用輕量級神經(jīng)網(wǎng)絡,充分學習視頻中光流的變化,得到了較好的視頻插針效果.具體地,本文采用了信息無損的下采樣策略,基于注意力的特征提取和多尺度光流融合方法,達到了較好實時性和可靠性的平衡.在大規(guī)模視頻插幀基準數(shù)據(jù)集上的實驗也表明了方法的有效性.通過本文提出方法,視頻后處理可以更好地解決視頻慢動作回放問題,人們可以更清晰、生動地觀看到影視作品、體育比賽精彩視頻片段慢動作回放,并對其中細節(jié)進行分析利用.