數位視覺穩定技術坐鎮 行動裝置視訊告別晃動失真

在行動平台上配備攝影機的需求正不斷上升。智慧型手機、便攜式裝置、汽車和無人機使用較高解析度和較高影格率(Frame Rate)的攝影機的情況日趨增多。在上述所有情況中,擷取的視訊存在全域運動抖動和捲簾式快門失真的問題,因此實現穩定是大勢所趨。
將內嵌視訊穩定解決方案整合到產品的成像管道中,這給客戶帶來重要的價值。此技術提升視訊的整體品質,與此同時視訊壓縮得以改善並且物件識別特徵更加強大,從而可以完成較高層級的電腦視覺任務。以下將深入研究電腦視覺視訊的穩定方法。

行動影像需求日增 穩定器良窳差別甚鉅

穩定器須要將許多挑戰解決後,才可制定出完美的穩定解決方案。首先,解決方案必須具有調適性,並且可在多種情況下執行,例如手持智慧型手機裝置時走路或跑步、透過汽車內安裝的攝影機擷取視訊,或透過無人機裝置錄製視訊。在開發穩定軟體時收集涵蓋所有上述運動類型的大量測試場景是至關重要的步驟。

第二項挑戰是辨別需要的動作和不需要的動作。只要保留須要擷取的動作,消除掉任何不需要的抖動和變形。這些抖動和變形通常是由攝影機內部系統(例如金屬氧化物半導體場效電晶體(CMOS)感應器的捲簾式快門機制)和攝影機持放(例如手持或安裝在汽車或無人機中)的方式而造成的。要準確估計和校正這種複雜的動作,在估計和校正階段均須要使用六軸攝影機運動模型(X、Y、Z、俯仰角、翻滾角和偏航角)。此類型的模型通常需要更多的輸入資料並消耗更多的電能和中央處理器(CPU)負載。

隨著視訊品質的提升,一項優良的解決方案也要能夠處理高資料速率的解析度和影格率,最高達4K解析度和每秒60個影格(fps)。以上各項必須在保持低功耗的同時全部實現,這樣才可用於內嵌的應用程式。例如,在系統層級,可以實現低功耗解決方案,方法為將頻寬消耗階段相結合,如金字塔圖建立和特徵偵測階段。同時處理多個特徵(以分散聚集模式)可以減少額外負荷,並且進一步實現核心最佳化。

目前用於穩定視訊的兩種主要策略為機械式如光學影像穩定系統(OIS)以及數位式如電子影像穩定系統(EIS)或數位視訊穩定器(DVS)。

機械式或數位式 解決方案各有利弊

OIS的優勢在於它可減少運動模糊,基於真實攝影機運動進行校正並最大程度地降低高頻振動。但是,此方法的缺點是成本高、功耗高、攝影機內須配備其他元件,並且由於機械系統結構導致運動範圍和自由度(DoF)受限。

EIS的優勢在於它可最大程度地降低中低頻振動、校正複雜和大範圍的運動並且靈活性高、功耗低、成本低。此策略亦有以下不足之處:減少運動模糊的能力受限,而且僅透過視覺提示估計攝影機運動。這與OIS相反,OIS是基於真實的攝影機運動。

儘管上述兩種策略均有其優劣勢,但是數位EIS方法的功耗低、成本低和具有靈活性的特點使其更加適合大眾市場。對於必須節能的輕量、可攜式裝置尤為如此。關於這點,可透過研究數位方法將電腦視覺用於穩定技術。

善用電腦視覺技術 實現視訊穩定成果

視訊穩定可細分為兩個主要部分:攝影機運動估計和攝影機運動校正。每一個部分均包括三個階段。估計階段包括特徵偵測、特徵追蹤或匹配以及運動模型估計,而校正階段包括運動平滑處理、捲簾式快門校正以及影格翹曲。

特徵偵測

第一個挑戰將是如何選擇一個最適合的特徵偵測器。偵測器的種類繁多,例如Harris-Corner、Shi-Thomas、FAST和DoG(Differences of Gaussians)等等。那麼該如何選擇最佳的偵測器呢?若要回答這個問題,必須先了解優質偵測所需的特性。

根據以往的經驗,最為重要的需求是選擇性、重複性、敏感性和不變性。選擇性是指演算法回應角而非邊緣的能力。具有良好的選擇性對於強大的特徵追蹤至關重要。第二個需求是重複性,換言之,即對不同的影格保持一致回應。重複性對於成功的特徵匹配非常重要。

第三個需求是偵測器的敏感度。需要偵測器具有足夠的敏感度,從而可以利用特徵涵蓋整個影格,但不需要過於敏感;否則,將回應邊緣,甚至是噪音。這個特性對於準確的全域運動估計尤為重要。最後,則須要在平移、旋轉、縮放和深度變更時具有不變性。

了解上述需求和如何調整偵測器以滿足這些需求,以及為下一階段選擇正確的特徵,對於整體選擇成功的穩定器至關重要。

追蹤/匹配

對於特徵追蹤,可使用KLT(Kanade-Lucas-Tomasi)演算法。此演算法的優勢是準確、局部且提供持續回應。此外,它無法回應大規模運動和照明度變更。為防止這種情況發生,可以透過使用縮放金字塔擴充運動範圍(圖1)。若要最佳化效能,此金字塔可以在特徵偵測階段建立。

圖1 由粗到精光流使用縮放金字塔

對追蹤長度(即特徵「實現」所需的影格數量)和影格空間覆蓋之間的權衡,這一點很重要。如果傾向於追蹤長度,可採用持續時間較長的強大特徵。但是,若喜歡影格覆蓋,則傾向採用不是很強大但均勻的特徵。

特徵匹配使用二進位描述元(如BRIEF或FREAK)實施,其優勢為可以處理任意大規模的運動,並且在光照度和幾何結構變更時具有良好的不變性,而其主要缺點是無法良好處理重複的紋理。

以圖2為例,透過兩個影格進行的特徵匹配已列印於影像中。可以清楚看到上面的部分存在大量的匹配(某些匹配是噪音,但多數是有效匹配),但下面的部分沒有任何匹配。

這可透過特徵匹配器的工作原理解釋:如果匹配器獲得具有相似描述元的特徵數量達到兩個以上,它將會將其全部清除。因為圖2中的地板有重複紋理,所有特徵分享同一描述元,因此匹配過程清除所有特徵。 若要讓此過程加速,可以過濾進行特徵匹配的候選項。此過濾可以基於位置、規模或方向。加速的另一個方法是將慣性感應器資料作為粗略的預測,用於下一個影格中的特徵位置。

圖2 具有重複紋理影像的二進位元匹配結果

在內嵌裝置中,特徵追蹤和匹配必須極其高效。一個良好的內嵌解決方案應使用單指令多資料(SIMD)運算而對資料平行加以利用。可使用分散聚集模式而非補塊模式最佳化核心,利用此模式,多補塊將從影像的隨意位置載入,並且在相同週期內處理。此方法透過減少函數調用的數量,以及最大程度地降低已進入和現有內部迴圈的額外開銷動態提升效能。

可將專用運算用於平行卷積,並使用平行算術運算處理同一週期內不同補塊上的資料。透過利用固定點實施,可以實現更好的效能,與此同視訊穩定仍具有足夠的穩定性。

在了解視訊穩定已成為多款不同攝影機應用程式必備功能後,將重點研究穩定過程前兩個階段的詳細資料:特徵偵測和特徵追蹤/匹配。先探究運動模型估計(即運動估計部分的最後一個階段),並重溫運動校正階段:運動平滑處理、捲簾式快門校正和影格翹曲。

接著將探究轉換模型、相似模型及單應性模型等三種運動模型,每種模型說明不同自由度個數的場景或攝影機運動。隨著DoF個數的增加,運動估計將更加精準,而且整體穩定過程將達到更好的效果。

運動模型估計

轉換模型僅使用X軸和Y軸,即兩個DoF。相似模型則說明了X和Y軸方向的轉換、等分標度和旋轉,共有四個DoF。而單應性模型提供三維(3D)攝影機運動條件下最完整的場景轉換詳情,共有八個DoF。

與所預期的結果一樣,如果想透過更多DoF精準估計場景轉換,系統需要更多資料,反過來也就需要更多記憶體,而且將對處理器產生更大的負載。為了在性能和處理負載之間達到一個最佳權衡,而採用類似模型進行運動平滑處理。稍後內容也會說明捲簾式快門校正須要借助於單應性模型。

透過採用隨機抽樣一致性(RANSAC)演算法,根據在最後一步(特徵追蹤/匹配)中產生的一對特徵對影格對影格的攝影機運動模型進行估計。該演算法是一種著名的迭代法,可將模型擬合到一組包括異常點的觀測資料中。在此種情況中,正常點是表示全域運動(或後台運動)的一個特徵對,而異常點是表示局部運動和測量噪音的其他特徵對。假設可以根據最大的一組正常點(在此階段忽略捲簾式快門失真)估計全域運動。 為精準估計攝影機運動,開發人員須要確保特徵均勻分布在每個影格上。可透過調整偵測器實現這一點,而且即使特徵分布在紋理不顯著的影格區域內,追蹤器/匹配器也非常敏感,足以做出有效的響應。

運動平滑處理

建立影格對影格運動模型後,對結果進行匯總即可建立估計的攝影機路徑。在此階段,路徑中將存在噪音和抖動。為了使路徑平滑,將採用Kalman篩選器。該演算法根據一系列測量結果的變數產生一個聯合概率分布統計,然後依據該統計的推斷和估計結果對噪音進行篩選。

這種演算法為遞歸演算,分預測和更新兩步進行。對於每個測量結果,均會根據給定的狀態轉換模型,在當前狀態的基礎上做出預測。然後,根據新的測量結果更新狀態,但同時還須考慮測量的不確定因素。單獨篩選每個運動元件,包括X軸上的轉換、Y軸上的轉換、標度和旋轉。

平滑處理階段的精準性,在很大程度上取決於根據預期的噪音特徵和優選的平滑路徑配置Kalman篩選器的情況。須要調整的三個主要參數是狀態轉換模型、過程噪音的共變數以及觀察噪音的共變數。

對於第一個參數,這裡使用一個等速度模型:每個元件(X軸、Y軸、標度和旋轉)的狀態包括位置和速度值。在每一步中,使用前一個位置和速度預測位置。對於過程和觀察噪音共變數矩陣,透過對這兩個參數進行調整以達到特定的運動和噪音類型。

在行走、駕駛車輛過程中拍攝的視訊,或無人機裝置拍攝的視訊會產生不同的運動類型和運動噪音(抖動),而且其頻率分布也不同。透過對多種不同運動和噪音類型進行研究得出一些參數,這些參數不僅能產生良好的拍攝效果,而且還能讓使用者感受到一種平滑的觀影體驗(圖3)。

圖3 攝影機隨時間的移動插圖。運動平滑處理產生影格對影格的運動模型(由實線箭頭表示),篩選出噪音,從而產生一個平滑運動路徑(由虛線表示)。

捲簾式快門校正

目前擷取數位影像最流行的技術是CMOS影像感應技術。CMOS影像感應器透過一次曝光和讀取一個畫素線擷取影像。該方法的結果是如果在掃描整個影像的過程中出現運動,所擷取的影像就會失真。

此運動可能由攝影機、場景或兩者的移動造成,可將這種現象稱為捲簾式快門效應或捲簾式快門失真。在數位視訊中,低頻率運動將產生拉伸或歪斜失真,高頻率運動將產生擺動,通常將其稱為果凍效應(圖4)。 在以上的方法中,校正失真的第一步是將影格劃分為水準條帶,然後估計每個條帶的單應性模型。下一步是透過單應性模型參數的空間插值,將垂直方向上的界限調整到最佳狀態。

圖4 高頻率運動將產生擺動,稱之為果凍效應。

影格翹曲

穩定過程的最後一個階段是影格翹曲。在此階段,將根據預先定義的感興趣區域(ROI)裁剪影像部分。也可根據運動強度動態選擇ROI。運動強度越大,剪裁的力度將越大。通常影像邊緣大約10%的部分被裁剪掉。如須最大程度發揮校正不必要運動的功能,最好的辦法是使ROI盡可能地靠近影格中心。

共有仿射模型、單應性模型、映射模型等三種相關翹曲模型。仿射模型足以用於穩定和校正緩慢運動引起的捲簾式快門失真。這種模式的效果固然好,但還不是最佳之選。如果想獲取更加精準的效果,就須要使用一個更加複雜的模型。

雖然單應性模型可對穩定和緩慢運動捲簾式快門校正產生非常理想的效果,但如果處理高速捲簾式快門(例如無人機馬達導致的振動)失真,還需要更加複雜的模型。而在映射模型中,將輸出影格內的每個畫素顯示映射到輸入影格中的畫素中。該模型是計算最密集型的模型,但可以產生最精準的效果,同時還可處理所有類型或運動引起的捲簾式快門失真。在此模型中,可在同一階段處理變焦失真校正,而且無須再進行其他處理。

權衡問題解決 找出最適辦法

如大家所見,視訊穩定是一個複雜的問題,具有多個階段和參數。每個階段又包含多種處理方法,而且每個方法又各具不同的優點和缺點。關於此過程的其中一個重要因素就是其包括多種不同的權衡,例如性能與能耗、品質與計算時間、高頻率或低頻率運動目標等。因此,只有穩定軟體的具體應用程式可以確定該過程的最佳方法。即便如此,可以得出了以下幾個具體結論:

.利用大量的測試場景

開發軟體視訊穩定解決方案時,收集涵蓋各種運動類型的大量測試場景至關重要。

.RANSAC並不完美

雖然RANSAC是一項非常強大的技術,但其也有不足。原因是特徵偵測和追蹤/匹配階段的空間影像覆蓋對精準的運動估計至關重要。

.特徵匹配完美至上

可透過特徵追蹤或特徵匹配開展運動估計的第二個階段。雖然每個方法有其優點也有其不足,但由經驗得知,在一般情況下,就精準性和穩定性而言,特徵匹配優於特徵追蹤。

.固定點和浮動點缺一不可

雖然固定點精準性對於特徵追蹤階段已足夠,但浮動點精準性對運動模型估計和平滑處理必不可少。

.平滑處理舉足輕重

雖然運動平滑處理演算法的複雜度相對較低,但其對整個影像品質發揮舉足輕重的作用。

.單應性可獲取最佳效果

模型越簡單,計算速度就越快,所需的記憶體和電量也就越少,但是如果需要獲得最佳的視覺效果,單應性運動模型就必不可少。

.影格翹曲的計算量最大

在整個過程中,計算最密集的部分是影格翹曲階段,而且整個視訊穩定性演算法的性能通常由此階段決定。

(本文作者任職於CEVA,Yury Schwarzman為影像和電腦視覺組負責人/Ben Weiss為影像和電腦視覺開發人員)

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!