AI影片修復速度10倍提升,過曝變色也能逐幀搞掂|美圖國科大新算法

BlazeBVD團隊 投稿

量子位 | 公眾號 QbitAI

家人們,消除「影片閃爍」(比如畫面突然一白)有新招了!

回想一下,當你看一部老電影或者用手機拍攝的影片時,畫面偶爾會出現閃爍或顏色不一致等現象。

為了消除這些,來自美圖影像研究院、中國科學院大學,以及四川大學的研究人員提出了一種新算法

新算法「BlazeBVD」可以自動消除影片中的閃爍,而且處理速度非常快,據稱比現有方法快10倍

更妙的是!這種方法甚至無需事先知道影片閃爍的具體類型或程度。

換句話說,它是「盲」的,可以應用於各種不同的影片。

這下,即使拍攝環境光線變化,或者相機硬件跟不上也無需頭疼了。[doge]

目前相關論文已被計算機視覺頂會ECCV 2024接收。

感興趣的話,咱們接著康康~

BlazeBVD如何消除影片閃爍?

首先,受經典的STE(閃爍去除方法尺度時間均衡)啟發,BlazeBVD引入了直方圖輔助解決方案。

圖像直方圖被定義為像素值的分佈,它被廣泛應用於圖像處理,以調整圖像的亮度或對比度。

打個比方,圖像直方圖就像是一個統計表,它告訴我們在一張照片中,不同亮度的像素有多少。

△ 圖片由Claude 3.5 Sonnet生成 圖片由Claude 3.5 Sonnet生成

而STE通過分析影片中每一幀的直方圖,然後用一種叫做高斯濾波的方法來平滑這些直方圖,先初步矯正直方圖分佈突變的圖像幀,能夠讓畫面看起來更加穩定,減少閃爍。

雖然STE只對一些輕微的閃爍有效,但它驗證了

  • 直方圖比原始的像素數據更簡潔,能夠更有效地捕捉到影片中的亮度變化和閃爍。

  • 通過平滑直方圖,可以減少影片中的閃爍現象,讓影片看起來更穩定。

因此,利用STE和直方圖的提示來提高盲影片去閃爍的質量和速度是可行的。

具體而言,BlazeBVD包括三個階段。

BlazeBVD三階段詳解

就像醫生治病一樣,BlazeBVD會首先檢查影片的每一幀。

它引入了STE對影片幀在光照空間下的直方圖序列進行校正。

然後從處理過的幀中提取出重要信息,比如哪些幀閃爍最明顯(奇異幀集)、哪些地方光線需要調整(濾波後的光照圖),以及哪些地方曝光過度或不足(曝光圖)

接下來,BlazeBVD開始進行修復

一方面,BlazeBVD使用一個叫做全局閃爍去除模塊(GFRM)的工具,利用之前提取的光照圖來調整整個影片的光線,確保每一幀的亮度和顏色看起來都很自然。

另一方面,對於一些特別需要關注的局部區域,比如曝光過度或不足的地方,BlazeBVD會使用局部閃爍去除模塊(LFRM)。這個模塊會利用光流信息(就像追蹤物體在影片中的運動)來修復這些區域的細節。

完成這一步,BlazeBVD最後進行完善工作

它引入一個輕量級的時序網絡(TCM),這個網絡就像是影片的「美容師」,確保每一幀在視覺上都是平滑過渡的,沒有突兀的變化。

為了進一步提高影片的一致性,BlazeBVD設計了一種特殊的評分系統(自適應掩模加權損失)。這個系統會給每一幀打分,確保它們在視覺上的一致性,讓整個影片看起來更加流暢和自然。

至此,BlazeBVD完成了整個「診治」流程。

實驗結果

那麼,BlazeBVD究竟效果如何呢?

直接看已有方法與BlazeBVD在盲影片去閃爍任務上的結果對比:

其中Deflicker為已有方法,GT(Ground Truth)表示理想的無閃爍影片,而KL散度表示處理後的影片與理想無閃爍影片之間的差異。KL數值越大,差異越大。

可以看出,BlazeBVD能很好地恢復照明直方圖,同時避免出現顏色偽影和顏色失真(例如第二列男人的手臂)

再進一步和基線方法進行量化對比:

BlazeBVD在PSNR(峰值信噪比,數值越高表示影片質量越好)和SSIM(結構相似性指數,數值接近1表示影片質量越好)上得分較高,且在Ewarp(數值越低,影片越連貫一致)得分較低。

一句話,BlazeBVD超越了已有基線方法。

為了直觀展現這種差別,BlazeBVD與基線方法的可視化對比如下:

消融實驗也驗證了BlazeBVD所設計模塊的有效性:

概括而言,通過對合成影片、真實影片和生成影片的綜合實驗,BlazeBVD展現了優越的定性和定量結果,並且比最先進的模型推理速度快10倍。

目前相關論文已公開,感興趣可以進一步瞭解。

論文:

https://arxiv.org/html/2403.06243v1