作者:崔毅博,湯仁東,邢大軍,王雋,李尚生
01??引言
光流計算作為計算機視覺的一個長期基本任務,其重要性顯而易見。由于運動視覺處理的特殊性,光流作為后面高級視覺處理的輸入,對其準確度、實時性都有著極高的要求,光流計算的性能會直接影響其后的高級視覺處理。
光流計算技術在計算機視覺的各主要研究方向如檢測、分割、導航、位姿估計、3維重建等領域中都有著重要的應用,其相關算法在更上層的應用場景如自動駕駛、氣象預報、雷達信息處理、衛(wèi)星及航空影像分析、同步定位與地圖構(gòu)建( SLAM)、視覺神經(jīng)科學相關領域以及軍事應用領域等前沿熱點方向更是有著重要的研究價值與應用價值。由此可見光流計算技術的發(fā)展對于計算機視覺領域的重要意義。
本文按照傳統(tǒng)光流計算技術的主要發(fā)展過程(第2節(jié))、基于深度學習的光流計算技術發(fā)展過程(第3節(jié))、光流測試相關數(shù)據(jù)集和性能評價指標(第4節(jié))、光流計算技術的具體應用(第5節(jié))、總結(jié)及光流計算技術未來發(fā)展趨勢展望(第6節(jié))的順序安排各節(jié)內(nèi)容。
02??傳統(tǒng)光流計算技術的主要發(fā)展過程
通過圖像計算光流,自20世紀80年代興起,其中具有代表性的經(jīng)典算法為Horn等人[1]提出的HS(Horn-Schunck)光流算法與Lucas等人[2]提出的LK(Lucas-Kanade)光流算法,而后基于這兩種算法的各種改進版本有許多。其中HS算法是基于變分法求解光流,LK算法是基于差分法求解光流,但二者都基于兩個共同的假設:
假設1 亮度恒定假設:同一目標在不同幀間運動時,其亮度不會發(fā)生改變。
假設2 小運動假設:短時間像素的位置不會劇烈變化,即相鄰幀之間像素距離變化較小。
用數(shù)學模型說明如下:若表示t時刻位置的像素在圖像上的亮度,則根據(jù)假設1和假設2得到
若,分別為像素沿x與y軸的速度,對式(1)進行泰勒展開,忽略高階無窮小后對t求導,而后代入,則可得
式(2)就是由光流的基本假設推出的光流基本方程。在其基礎上通過加入不同的約束、改變求解方式,得到像素的值即圖像相鄰幀之間的光流。
2.1 HS光流算法
HS光流算法是一種優(yōu)化算法,通過在假設1、假設2的基礎上加入全局平滑約束條件,即假設值小范圍內(nèi)變化很小,其加入的全局平滑約束項為
此約束項表征光流的連續(xù)性即平滑(其為0時代表光流在任意方向無變化),結(jié)合光流基本方程建立平滑約束下光流優(yōu)化方程(也稱能量函數(shù))
其中,是平滑項的權(quán)重,根據(jù)假設最小化此方程,利用歐拉-拉格朗日(Euler-Lagrange)方程求解,經(jīng)迭代至收斂得到光流信息。此類優(yōu)化方法易陷入局部極值,其初始值很重要,而實際使用時往往無法獲得初始值,這就導致此類算法在新場景下會有一段不穩(wěn)定期。
2.2 LK光流算法
LK光流在假設1和假設2的基礎上增加假設3:
假設3 空間一致性:某一個小窗口內(nèi)的像素短時間內(nèi)具有相同的運動(即相同)。
若小窗口為,則其中有個像素,則可根據(jù)式(2)列出超定方程并用最小二乘法解此方程即可求出這個窗口的光流值。由于此類方法在大窗口下無法保證相同運動方向和假設2這個微分條件的成立,需利用圖像金字塔技術[3]把圖像分層壓縮到低分辨率,把大位移運動變成了高層金字塔的小位移運動,進而配合插值算法逐層應用此方法求解光流。
在以上兩種算法的基礎上,針對光流的不同問題有相應的改進方法,如:為解決算法易陷入局部極值問題而提出的前后向光流法[4],為解決遮擋問題而融合卡爾曼濾波運動預測的LK改進算法[5],以及各類通過改進定位角點準確度與匹配準確度來提升光流準確性的改進方法等。
隨著深度學習的興起,利用卷積神經(jīng)網(wǎng)絡來進行光流估計已經(jīng)成為一種重要方法,與計算機視覺其他領域橫向比較,基于深度學習的光流計算方法在準確度、魯棒性、實時性等方面有著天然的優(yōu)勢。因此基于深度學習的光流計算通常被認為是有別于經(jīng)典算法的一種新模式,也是一個極具發(fā)展前景的技術方向。
03??基于深度學習的光流計算技術發(fā)展
有別于傳統(tǒng)人工設計的方法來求解光流,深度學習從數(shù)據(jù)的角度出發(fā),利用數(shù)據(jù)訓練相關模型,從而得到可以準確進行光流估計的模型,并利用此模型在應用場景中對光流進行估計。隨著GPU以及計算機算力的不斷發(fā)展,目前基于深度學習的光流計算無論在準確度還是實時性上都已經(jīng)超過經(jīng)典算法。
Dosovitskiy等人[6]在2015年首次提出的基于卷積神經(jīng)網(wǎng)絡(Convolutional Neural Networks, CNN)的FlowNet實現(xiàn)了利用卷積神經(jīng)網(wǎng)絡進行光流的估計(第1代監(jiān)督模型),為訓練所提出的模型同時開發(fā)了Flying Chairs數(shù)據(jù)集,F(xiàn)lowNet的提出表明了完全基于卷積神經(jīng)網(wǎng)絡端到端的架構(gòu)有能力解決光流估計的相關問題。此后基于深度學習的模型逐步在性能上趕超經(jīng)典算法。其中主要可以分為兩個大類:基于監(jiān)督學習的光流估計模型和自監(jiān)督學習的光流估計模型。下面分別進行介紹。
3.1 基于監(jiān)督學習的光流估計模型
監(jiān)督學習模型往往需要結(jié)合相關領域知識,利用監(jiān)督學習的方式來對模型進行訓練,其中結(jié)合領域知識方面主要有兩種途徑:
第1種是結(jié)合數(shù)據(jù)相關知識。普遍的做法就是通過把領域知識制作成光流相關數(shù)據(jù)集,使得神經(jīng)網(wǎng)絡可以利用這類數(shù)據(jù)集進行訓練和評估,從而使得訓練出的深度學習模型可以進行光流估計。相關數(shù)據(jù)集介紹詳見第4節(jié)。
第2種是借鑒之前已有經(jīng)典算法的約束條件與計算框架。結(jié)合卷積神經(jīng)網(wǎng)絡可以提取圖像高維度特征以及可以進行并行計算的特點,進而得到光流在準確率和實時性上的提升,其中比較有代表性的就是 DCflow[7],上述兩種領域知識結(jié)合方法在監(jiān)督學習中可以同時使用。
DCflow參考FullFlow[8]提出的代價體(cost volume)以及由粗糙到精細的(Coarse-To-Fine, CTF)范式,這種CTF范式結(jié)構(gòu)主要分為4步:特征提取(features)、構(gòu)建代價體(cost volume)、代價體處理與光流后處理。
CTF范式的主要計算量在計算和優(yōu)化代價體以及后處理上,代價體表示了每個位置提取出的高維特征之間的聯(lián)系,在FlowNet2.0[9](把FlowNetS/C相關模塊進行了組合堆疊實驗)中作者也支持顯示地構(gòu)建代價體,稱其往往比隱式的效果要好。繼FlowNet2.0之后,深度學習算法在實時性和精度上都開始超越經(jīng)典算法,其中較為重要的借鑒經(jīng)典算法結(jié)構(gòu)的深度卷積網(wǎng)絡模型是基于CTF范式的PWC-Net(Pyramid, Warping, and Cost volume, PWC)[10](第2代監(jiān)督模型),其框架如圖1所示。
圖1 傳統(tǒng)框架與PWC-Net框架圖對比圖(圖片改繪自文獻[10])
PWC-Net相較于FlowNet2.0,準確率更高且速度更快,改進了FlowNet2.0模型參數(shù)量大且訓練繁瑣的問題(速度快2倍參數(shù)量下降17倍)。其主要結(jié)構(gòu)借鑒傳統(tǒng)基于能量最小化的CTF光流計算框架(如圖1),與傳統(tǒng)方法不同的是,其先利用卷積層進行圖像金字塔計算;再利用warp層模仿warp算法把第2幀圖像利用上一幀光流扭曲(warp)到第1幀;然后對金字塔每一層利用卷積提取的特征(features)構(gòu)建代價體(cost volume)找到特征之間的關系,把第1幀圖像的特征、代價體、上一幀的光流輸入到光流估計層得到光流估計;對應傳統(tǒng)光流計算的后處理模塊,最后用基于空洞卷積的上下文網(wǎng)絡進行后處理,這個網(wǎng)絡輸入上一層的光流估計值和光流估計值的倒數(shù)第2層特征,可以優(yōu)化并把光流放大到所需大小,類似經(jīng)典算法結(jié)構(gòu)的深度學習光流模型還有許多[11]。對PWC-Net進行改進效果較好的是利用迭代殘差細化(Iterative Residual Refinement,IRR)方法的IRR-PWC模型[12],這種方法可以在維持參數(shù)數(shù)量的情況下提高準確率,在附加去遮擋模塊后,可以對遮擋情況下的光流預測更加準確。PWC-Net整體架構(gòu)如圖1所示。
圖1(b)中warp層的數(shù)學表達式為
其中,代表t時刻圖像在圖像金字塔第層的特征,是像素坐標(包括橫縱坐標),是層的光流,是對應位置上采樣的層的光流,式(5)表達的意思是如果光流估計準確,則在處特征應與在處特征相同。
代價體(cost volume)的數(shù)學表達式可以表示為
其中,為超參,表征最大相關距離。這部分就是利用向量點積來進行特征相關性計算,從而計算出特征之間的相似性,代價體即表征這種特征之間相似性的映射。
在監(jiān)督模型中,RAFT(Recurrent All-pairs Field Transforms for optical flow)[13]是十分重要的模型(第3代監(jiān)督模型),其框架如圖2所示。這個模型實現(xiàn)了整個網(wǎng)絡端到端訓練的同時,在效果上超過了PWC-Net和IRR-PWC,且實現(xiàn)了模型的輕量化。其主要思路是利用卷積提取兩幀圖像的特征,而后對特征做內(nèi)積得到4D代價體(4D cost volumes)作為兩個特征之間相似性的度量空間,有別于其他算法,光流會通過一個門控循環(huán)單元(Gated Recurrent Unit, GRU)的一個輸出,在4D 代價體空間內(nèi)進行查詢,查詢結(jié)果將用來更新GRU進行迭代細化,這樣就可以有效利用上下文信息,通過GRU最終輸出精細化后的光流,最后通過利用周圍像素上采樣恢復光流到原圖像分辨率。RAFT模型表明了端到端的深度學習模型在性能上可以超越人為模塊化設計的模型,并且截至本文成稿時間,仍是深度學習模型性能進行比較的一個基準。
圖2 RATF模型框架圖(圖片改繪自文獻[13])
以PWC-Net, RATF為代表的這種CTF范式的神經(jīng)網(wǎng)絡模型可以提高性能的主要途徑是優(yōu)化后3步,以減少計算量、提高精度及其抗噪性能。當然還有借鑒其他范式的模型,如經(jīng)典算法EpicFlow[14]的由稀疏到稠密(Sparse-To-Dense, STD)范式,其主要步驟為:計算稀疏匹配集、計算光流稀疏到稠密的插值、后處理以及優(yōu)化得到光流。
另一種光流計算重要范式是STD。如PatchBatch[15]在經(jīng)典EpicFlow的基礎上利用神經(jīng)網(wǎng)絡提取高維度特征來計算稀疏匹配集,提高了匹配集的質(zhì)量,結(jié)合EpicFlow的稠密插值最終得到光流。FTDM(Fully-Trainable Deep Matching)[16]通過訓練一個u型拓撲的CNN來等效深度匹配(Deep Matching, DM)算法,從而計算出稀疏匹配集,而后利用EpicFlow稠密插值得到光流。此類方法主要改進方向在于計算稀疏匹配集、計算稀疏到稠密的插值這兩個步驟上,即如何在低算力的情況下找到質(zhì)量更高的稀疏匹配集,以及如何進行更好的插值計算。
以上兩種框架都是基于CNN的,而也有部分方法致力于改進CNN卷積模型本身性能,使其更適用于光流估計任務,從而在本質(zhì)上提高光流估計的性能,如模型PPAC-HD3[17],利用概率像素自適應卷積提高模型性能,優(yōu)化光流的邊緣及精度。
隨著深度學習模型的性能不斷提升,目前基于Transformer的模型在語言、圖像以及多模態(tài)處理方面表現(xiàn)出了突出的性能。截至2022年10月KITTI數(shù)據(jù)集上表現(xiàn)最優(yōu)的純視覺光流估計模型是基于Transformer的GMFlow (Global Matching, GM)[18]作為第4代監(jiān)督模型,其框架如圖3所示,其改進版GMFlow+實現(xiàn)了多模態(tài)處理。GMFlow主要利用attention技術優(yōu)化了利用卷積處理代價體自帶的局部局限性問題,可以做到全局匹配,所以在處理大位移上優(yōu)勢明顯,其基于Transformer架構(gòu)的處理方法是短期內(nèi)的主流方向。
圖3 GMFlow的框架圖(圖片改繪自文獻[18])
Transformer等利用self-attention技術的深度學習模型,其核心公式表示為
其中,為基于圖像的嵌入向量,是K的維度,self-attntion其本質(zhì)是找到相關特征,并有針對性地強化高維特征向量,從而使得所需相關特征突出出來,與代價體本質(zhì)一致但不會受到距離限制,利用深度學習框架并行計算的優(yōu)勢在計算速度上相較于代價體更快。
除主要創(chuàng)新及作為行業(yè)基準的模型外,每年還有大量基于以上模型的改進模型。近3年基于RAFT的改進居多,效果也日益增強,基于Transfomer架構(gòu)的模型也逐步體現(xiàn)出其優(yōu)勢,結(jié)合圖神經(jīng)網(wǎng)絡技術解決卷積固有的相關缺陷是未來發(fā)展的主要方向之一。各類模型主要解決的問題和特點詳見表1,其中淺灰色為CTF范式模型,淺藍色為STD范式模型,加粗字體為行業(yè)廣泛認可的基準模型。
表1 光流估計監(jiān)督模型匯總
由于域差(domain gap),以及制作光流訓練的數(shù)據(jù)集本身成本與技術難度很高,除監(jiān)督學習外深度學習光流模型的另一種主要模式是自監(jiān)督學習模型,不利用人工標注的數(shù)據(jù)集進行學習,可以極大降低訓練模型的成本,若可以直接利用真實數(shù)據(jù)進行自監(jiān)督訓練,則可有效避免數(shù)據(jù)集與真實數(shù)據(jù)之間域差問題。
3.2 基于自監(jiān)督學習的光流估計模型
在2016年Long等人[23]利用簡單的編碼解碼器(Encoder-Decoder)神經(jīng)網(wǎng)絡MIND來對前后兩幀之間的關聯(lián)關系進行學習,并認為光流估計是這種求解關聯(lián)關系的一個子問題,其方法就是取視頻流前后3幀圖像,利用第1幀和第3幀來對第2幀進行估計,并用夏博尼爾損失(Charbonnier loss)()作為損失函數(shù)(Loss)進行訓練,成功表明了自監(jiān)督學習可以有效學習前后兩幀之間的關聯(lián)關系。
同年,Yu等人[24]提出了基于光度誤差(photometric loss,用以衡量經(jīng)推測的光流扭曲(warp)后的第2幀和第1幀的差異)與平滑誤差(smoothness loss,衡量空間相鄰光流預測之間的差異)類似FlowNet的端到端自監(jiān)督訓練模型UnsupervisedFlowNet,并達到了當時KITTI數(shù)據(jù)集的最佳效果。UnFlow[25]在其誤差計算的基礎上,利用交換前后兩幀順序,送入CNN預測前后雙向光流并計算誤差的方法(理論上這兩個光流方向是相反的),進一步提高了訓練模型的預測精度。DDFlow[26]在UnFlow的基礎上,采用了知識蒸餾結(jié)構(gòu),其中老師網(wǎng)絡與UnFlow類似,但在學生網(wǎng)絡中增加了對遮擋相關的損失函數(shù)(Loss),可以對遮擋進行學習,而非簡單剔除。對于遮擋問題, SelFlow[27]在PWC-Net的基礎上結(jié)合光度誤差,提出了一個自監(jiān)督的模型,其主要思想是首先訓練一個無遮擋情況下光流預測的CNN,而后對圖像進行超像素分割(防止分割形式單一)并按分割隨機分配噪聲遮擋,用第1個CNN對光流的預測結(jié)果來指導第2個有遮擋情況下的CNN訓練,從而提高第2個模塊的抗遮擋能力。
UFlow[28]綜合了之前所提出的各類方法,并對各類方法中所有組件進行了評估測試,從而選擇出最優(yōu)組合,并通過總結(jié)得到了4種模型優(yōu)化方法:代價體歸一化、遮擋梯度停止、同級流分辨率下應用平滑度、調(diào)整圖像大小用以自監(jiān)督訓練,從而提高了模型性能。在UFlow的基礎上, UPFlow[29]通過把傳統(tǒng)上采樣用到的雙線性插值優(yōu)化為可學習的雙線性插值,降低了以往CTF模式上采樣造成的誤差,合并其提出的模型蒸餾損失,使得光流預測的邊緣更加清晰。直到目前較新的SMURF[30]實現(xiàn)了RAFT架構(gòu)自監(jiān)督的方法,自監(jiān)督光流性能已經(jīng)超越之前監(jiān)督模型的基準(PWC-Net和FlowNet2)。自監(jiān)督模型相關進展總結(jié)如表2,其中加粗字體為基準模型。
表2 光流估計自監(jiān)督模型匯總
除監(jiān)督與自監(jiān)督模型之外,還有半監(jiān)督模型,這類模型可以充分利用監(jiān)督數(shù)據(jù)提高模型的精度,同時擁有自監(jiān)督模型訓練數(shù)據(jù)易于獲取的優(yōu)點,但從另一個角度看,這類模型也同時有著這兩類模型的缺點。其中比較有代表性的是SSFlow(Semi-Supervised, SS)[33],其主要思想是利用生成對抗神經(jīng)網(wǎng)絡(Generative Adversative Nets, GAN),通過真實數(shù)據(jù)和合成數(shù)據(jù)同時訓練,GAN的判斷模塊可以學習到合成數(shù)據(jù)與真實數(shù)據(jù)之間的域差(domain gap),從而指導生成器生成的光流更加準確,但GAN模型往往難以訓練。
以上是基于深度學習的光流計算技術的大致發(fā)展過程,基于深度學習的模型很大程度上解決了經(jīng)典算法中不滿足假設1和假設2的相關的問題,例如遮擋或物體存在變形的情況下,則亮度恒定假設無法保證;物體位移較大的情況下,光流變化無法滿足假設2,因此傳統(tǒng)基于變分與優(yōu)化的方法無法滿足微分條件等。而且由于計算機分布式計算性能的提升,基于深度學習的方法在實時性上往往優(yōu)于經(jīng)典算法,所以在2017年后深度學習逐漸成為光流估計方面的主流算法。
04??光流測試相關數(shù)據(jù)集和性能評價指標
數(shù)據(jù)集對于訓練深度學習模型非常重要,深度學習也可以認為是由數(shù)據(jù)驅(qū)動的一種算法,數(shù)據(jù)集的質(zhì)量直接影響訓練出的模型的性能,常用的用于訓練和測試的公開數(shù)據(jù)集包括:簡單但實用、利用椅子模型和隨機圖像生成的合成光流數(shù)據(jù)集(FlowNet驗證過的)FlyingChairs[6],主要用于車輛自動駕駛方面包含激光雷達和真實場景光流的KITTI Flow數(shù)據(jù)集[34,35],城市自動駕駛數(shù)據(jù)集HD1K,廣為使用的合成動畫數(shù)據(jù)集MPI-Sintel[36],密集小目標行人運動數(shù)據(jù)集Crowd-Flow[37],可以根據(jù)需求生成虛擬數(shù)據(jù)集的無人機模擬平臺AirSim以及基于動畫引擎Unreal Engine 4生成的高質(zhì)量虛擬駕駛場景的模擬平臺Carla。光流數(shù)據(jù)集的發(fā)展促進了光流相關算法的發(fā)展,相關模型與算法的性能可以在數(shù)據(jù)集上得到驗證,在公開數(shù)據(jù)集上的測試結(jié)果往往作為評價光流算法與模型效果的重要參考。
常用的評估數(shù)據(jù)集,也是公認的模型評價標準,通常有以下幾個(見表3)。
表3 光流估計模型評估公開數(shù)據(jù)集
在光流計算性能指標上,5個最重要的指標分別是端點誤差(End-Point Error, EPE)、平均端點誤差(Average End-Point Error, AEPE)、每秒幀速率(Frame Per Second,FPS)、角度誤差(Angular Error,AE)和平均角度誤差(Average Angular Error,AAE)。其中EPE為估計光流和真實光流之間的歐氏距離,用來衡量光流估計的準確程度,AE常用于評估角度誤差,二者是互補的,AE對小幅度運動誤差敏感,EPE對大幅度運動誤差敏感。其定義分別為
其中,表示第個像素的估計光流值,表示第個像素光流真值,為總像素個數(shù)。AEPE與AAE越小說明估計的光流值與標準值誤差越小,即越準確。FPS則是衡量實時性能的指標,其值越大代表方法的實時性越強,也常用1/FPS(即處理每一幀所用時間)來衡量此項性能。
在上述指標中EPE, AEPE是最常用的比較算法準確度的性能指標,在所有數(shù)據(jù)集上通用,可以對模型整體性能進行評估,但無法衡量在某單一方面的性能。目前模型評估普遍利用的是KITTI2012, KITTI2015, Sintel Clean, Sintel Final 4個數(shù)據(jù)集。由于不同數(shù)據(jù)集數(shù)據(jù)分布以及對光流的衡量指標不一致,同一模型在不同數(shù)據(jù)集的性能也不同,但整體與表格所列順序正相關。詳細信息以及各類模型與算法準確度排名各類數(shù)據(jù)集官網(wǎng)都有實時更新,僅以本文介紹的部分模型及其改進型為例,準確率以Sintel 與KITTI數(shù)據(jù)集官網(wǎng)截至成稿時公布數(shù)據(jù)為準,其性能如表4所示。
表4 部分模型在Sintel及KITTI數(shù)據(jù)集上的性能(截至2023年3月)
05??光流計算技術的具體應用
光流計算技術在實際應用時,常作為一個單獨模塊來使用,也可以和其他模塊組合使用,準確的光流可以提供物體有效的運動、結(jié)構(gòu)等信息。
在視頻處理方面,常常直接利用光流信息。如在視頻檢測領域,常利用光流信息來進行特征聚合以及特征在非關鍵幀之間傳播;在視頻跟蹤領域,比較經(jīng)典的跟蹤-學習-檢測(Tracking-Learning-Detection, TLD)算法[42]分為跟蹤模塊、學習模塊、檢測模塊3大部分,其中的跟蹤模塊最早就是基于光流計算技術的經(jīng)典LK算法來估計物體運動的,隨著光流計算技術的發(fā)展,此框架下的光流模塊也可以被更先進的模塊替換;基于雙流框架的視頻檢測與行為識別也常利用光流作為輸入之一,以光流提供的物體運動信息來輔助進行行為識別;基于光流的運動信息,也可以為人面部表情識別、手勢識別、動作識別等相關技術提供有效信息等。
光流在視頻跟蹤技術的具體應用場景也有很多,在交通監(jiān)控上,對車輛、行人的異常行為進行檢測,用以檢測可疑滯留物、人群異常聚集、突發(fā)火情等;在體育比賽中,可以利用此項技術進行運動員跟蹤;在軍事領域,目標的鎖定與跟蹤應用更加廣泛,各類基于視頻的武器平臺與彈藥的導引頭都需要視頻跟蹤技術,尤其是目前許多國家出現(xiàn)了智能化的無人武器平臺,其中利用視頻進行檢測跟蹤鎖定目標已經(jīng)是此類武器平臺的重要組件之一。
基于光流的動作識別技術的應用場景也很廣泛,如在安防監(jiān)控領域,可以利用動作識別來預防公共場所的突發(fā)事件,若利用人工監(jiān)控,則往往成本高、效率低;在視頻檢索中應用動作識別,根據(jù)視頻動作分析其視頻行為,進而對相關視頻進行檢索與推薦;在人機交互領域用動作識別技術完成人機對話,目前已經(jīng)在許多游戲中廣泛使用等。
在實時定位與地圖構(gòu)建(SLAM)中,可以利用光流信息配合相機模型的3維運動約束,經(jīng)過優(yōu)化算法,可以從光流中得到相機的3維位姿進而確定與其連接的物體的位姿,這種基于光流的位姿測量技術常被用于無人機、自動駕駛等領域,許多基于視覺導航的機器人也是利用此項技術進行實時導航,尤其是在紋理豐富的室內(nèi)場景較為常用,與基于慣導與GPS的導航不同,基于計算機視覺的導航無需接受其他任何信號且沒有慣導那種累積誤差,在軍事領域的具體應用場景有無人飛行器自動著陸、導彈精確導航、基于光流的目標鎖定跟蹤技術、爆炸云分析、與陀螺儀結(jié)合進行彈體高度估計等應用也比較普遍等。視覺SLAM定位及點云生成效果如圖4所示。
圖4 光流SLAM效果圖(圖片出自文獻[43])
與此技術相關的還有基于光流的3維重建技術,其基本原理也是通過光流解算相機位姿,而后基于不同視角的相機位姿利用幾何約束生成點云以實現(xiàn)物體的3維重建等,此項技術的具體應用場景包括文物3D數(shù)據(jù)錄入、3D動畫建模、醫(yī)療影像、3D光流(場景流)、軍事戰(zhàn)場測繪等領域。
此外,在氣象預報方面,基于雷達數(shù)據(jù)的雷暴識別追蹤和外推預報技術,可以利用光流替代交叉相關法,對云團等進行外推預報,提高天氣預報的準確度;在醫(yī)學上,3維光流可以用于器官運動估計,以及基于光流場的圖像配準等應用;由于光流相關算法部分基于變分優(yōu)化,在紅外圖像配準方面也有相關算法的應用;在軍事應用方面基于光流的目標鎖定跟蹤技術、爆炸云分析、與陀螺儀結(jié)合進行彈體高度估計等應用也比較普遍;在火災煙霧預防檢測等領域,光流法也有著重要的應用;自動駕駛領域光流與激光雷達的組合達到了KITTI數(shù)據(jù)集光流最佳效果,這種多傳感器融合也是光流計算技術應用的一個重要方面等等。
光流計算技術的進展與腦科學視覺運動感知等領域既相互交叉也相互啟發(fā),大腦對視覺進行編碼的過程在某些方面與深度神經(jīng)網(wǎng)絡類似。如Mountcastle (1957), Hubel(1962)以及 Wiesel (1963)等人研究發(fā)現(xiàn),在大腦皮層若干區(qū)域,反應特性上表現(xiàn)出相似選擇性的細胞聚集在一起,這與卷積神經(jīng)網(wǎng)絡中卷積核提取某一高維特征的特點類似。通過和其他動物實驗數(shù)據(jù)比對發(fā)現(xiàn),不同物種和皮質(zhì)區(qū)域的組織類型的相似性表明存在著將方向和旋轉(zhuǎn)域映射到皮層表面的普遍原則(即運動感知),而光流計算技術可以認為是對這種映射原則的一種模擬。
除上述外光流的應用場景可以覆蓋基于計算機視覺技術的大部分領域,相關算法在其他場景的應用也很多。作為計算機視覺的基本問題之一,光流計算技術的發(fā)展有助于其所覆蓋相關領域的技術進步與性能提高。
06??總結(jié)與發(fā)展趨勢展望
本文介紹了光流相關的基礎知識,總結(jié)了光流計算技術主要的技術發(fā)展路線,對技術發(fā)展過程中比較典型的算法與模型進行了簡要的闡述,對相關算法的核心創(chuàng)新點與思路進行了歸納,對光流評估數(shù)據(jù)集與指標方面做了簡要分析,并對光流的應用場景進行了簡要總結(jié)。
光流計算技術結(jié)合深度學習是目前光流計算的主要發(fā)展趨勢,其主要的技術方向是獲得一種可以適用于任何場景快速且精確的光流估計方法,個人認為其中主流技術的發(fā)展趨勢是利用更加先進的深度學習架構(gòu)如圖神經(jīng)網(wǎng)絡、transformer架構(gòu)、3D卷積模型等,提高模型預測的準確度,強化模型的泛化能力和推理能力,解決諸如遮擋、小目標、大位移、光照、邊界模糊、形變、噪聲等方向的光流計算問題。
從目前光流計算的發(fā)展來看,利用深度學習模型來進行更準確、實時性更好的光流預測依舊是光流計算發(fā)展的長期目標;在基于現(xiàn)有深度學習的模型上進行優(yōu)化,在保證精度的同時加強實時性與降低模型參數(shù)的規(guī)模,這也是基于深度學習的光流模型可以繼續(xù)優(yōu)化的方向;2D光流相關算法可以結(jié)合深度信息,向3D光流(場景流)方向發(fā)展,加強動態(tài)環(huán)境中對3D運動的理解;隨著腦科學的發(fā)展,人類視覺機制將被進一步解析,利用仿生模擬人類視覺過程,如利用神經(jīng)動力學模型結(jié)合深度學習對物體運動進行預測,也是目前重要的發(fā)展方向之一;生物視覺具有高穩(wěn)定性、高適應性和低功耗等特點,是下一代人工智能算法開發(fā)的重要參考借鑒對象,生物視覺系統(tǒng)中存在專門處理運動信息的神經(jīng)元和神經(jīng)環(huán)路[44,45],相關神經(jīng)機制也得到了初步解析[46,47],如何借鑒相關機制,開發(fā)出性能更優(yōu)的類腦算法,將是光流計算領域極具潛力的發(fā)展方向之一。
編輯:黃飛
?
評論
查看更多