相機都不能完成的事,為何手機能?
手持拍夜景,到底是什麼技術?

最近如果你留意過手機拍照方面的動作,聽得最多的可能就是「手持超級夜景」了,不僅最新的旗艦手機賣力宣傳,華為、小米等也把該技術紛紛下放,一些老機型都能通過固件更新獲得手持超級夜景功能。
目前支持手持超級夜景功能的手機不完全統計
華為系:
P20系列、Mate20系列、Nova3、Mate10、榮耀10、榮耀V10、榮耀Play、榮耀Magic 2等
小米系
小米MIX3、各版本小米8、小米MIX 2S等
其他:
OPPO R17 Pro、一加6 / 6T、谷歌Pixel 3等
什麼是手持超級夜景?
手持超級夜景這種模式,其實多年前就有了,最著名的當屬索尼Xperia旗艦機,它主要通過長曝光和多幀合成算法實現,但受制於當時手機運算能力有限,合成時間較長,很難不手抖,多數還是建議使用三腳架配合,所以推廣並不多。
這些年手機軟硬體上的技術提升,尤其是多幀合成算法已經有了長足的進步,再加上手機處理器性能早就過剩,因此可以更多分擔相機方面的運算需求。
最先搭載手持超級夜景的華為P20系列就是採用先進算法加強處理以及拍攝後重調白平衡等技術,通過拍攝多幀照片來合成最佳效果。

手持超級夜景之所以能「手持」,是因為它並不是簡單的長曝光,而是在那幾秒時間裡快速拍攝了很多張不同曝光值的照片,然後通過軟體算法後期快速堆棧,合成一張照片。
很多攝影玩家都玩過PS里的堆棧,拍攝不同曝光補償和測光的照片,然後再把這些照片通過PS堆疊在一起,合成得出一張暗部沒有一片死黑,亮部也沒有過曝,有細節的照片。手機只不過是把這些操作都自行處理了,最後看到的就是一張合成好的照片。

難的不是防抖而是對齊
為了實現手持不抖,華為搭載了AIS防抖技術,小米也號稱加入了AI防抖自動校準、手持狀態智能檢測以及AI智能測光等八項黑科技。
雖然叫法不同,但兩者防抖算法其實是差不多的,首先當點擊快門的瞬間,檢測到手持拍攝時,會進行智能測光,根據當前環境匹配幀數和每一幀照片所需的不同曝光。比如所拍攝的環境較亮時,曝光更短,幀數較少;當環境較暗時,曝光更長,幀數也更多。
華為的超級夜景拍攝幀數是不固定,會根據實際拍攝環境判斷幀數和曝光,而小米MIX 3是同時拍攝8張採用不同曝光方案的照片。
在進行圖像合成之前,還需要對這些幀進行篩選,將模糊不清晰的幀丟棄掉,並選取最為清晰的幀作為標準幀,然後將其他圖像與之進行自動圖像對齊。
拍攝過程當中因為是抖動的,每一幀都會與輕微差異,可想而知這個對齊的運算量是相當大的,這也是手持超級夜景技術的關鍵點。因為只有準確的對齊,邊界清晰匹配,才能夠同時實現降噪和防抖。
通常的做法是在一副圖像上進行特徵點檢測,比如小米MIX3是從每幀照片中智能選取100個關鍵特徵點進行識別比對,8幀就是800個。而這個特徵點的選取過程也需要經過一番計算,一副1000萬像素的圖像,計算量就高達百億。

尤其是低照度下圖像對齊挑戰非常大,因為暗光圖像本來就沒有太多可以用到的信息,很難提取特徵用於匹配。這個運算量不靠AI基本上是不可能實現的。
手持超級夜景就無敵了嗎?
雖然手持超級夜景的確很厲害,值得肯定,但它目前依然具有一定的局限性,也就是無法很好的應對運動場景,當碰到畫面中有運動物體時,由於多幀合成的特性,很難避免重影的偽象問題。
最大的困難是動態物體的判定,以及合成的可靠性、穩定性,包括偽象的判定和抑制。當然處理速度也非常關鍵,此前Pixel 2和iPhone X合成得都比較慢,很多國產大廠的手機都容易在拍攝動態物體時翻車,或者出現奇怪的合成效果。

所以,目前我們看到的很多手機廠商宣傳手持超級城市夜景的樣張都是靜止畫面,其實你架在腳架上拍建築和風光,整個幾十幀,什麼光比拿不下來?
手機有手持超級夜景固然是好的,但也不必把這個功能吹上天。當然,手機攝影的技術發展很快,相信偽像會有辦法消除的,還是很值得我們期待。
轉載請註明來源:今天頭條