谷歌為何對(duì)Pixel 3單攝有信心?看看拍照實(shí)現(xiàn)過程就知道了
在進(jìn)行處理后,連拍中手掌震顫的結(jié)果
為了利用手部抖動(dòng)的優(yōu)勢(shì),我們首先需要將高速連拍的照片排列在一起,我們選擇高速連拍圖像中的單個(gè)圖像作為“基”或參考幀,并對(duì)齊與之相關(guān)的所有其他幀。對(duì)齊后,這些圖像大致結(jié)合在一起。當(dāng)然,手部運(yùn)動(dòng)不太可能將圖像精確地移動(dòng)單個(gè)像素,因此我們需要在每個(gè)新捕獲的幀中插入相鄰像素,然后將顏色注入基幀的像素網(wǎng)格中。
當(dāng)由于設(shè)備是完全穩(wěn)定的(例如放置在三腳架上)而沒有出現(xiàn)手部運(yùn)動(dòng)時(shí),我們?nèi)匀豢梢酝ㄟ^故意“抖動(dòng)”相機(jī)來達(dá)到模擬自然手部運(yùn)動(dòng)的目的,通過強(qiáng)迫OIS模塊在鏡頭之間輕微移動(dòng)。這個(gè)移動(dòng)非常小,選擇的時(shí)候不會(huì)干擾正常的照片——但是你可以在Pixel 3上自己觀察它,你可以把手機(jī)完全固定,比如把它按在窗口上,或者最大限度地縮放取景器。如下圖所示,可以觀察遠(yuǎn)處物體微小但連續(xù)的橢圓運(yùn)動(dòng)。
克服超分辨率的挑戰(zhàn)
以上是我們對(duì)理想過程的描述,聽起來很簡(jiǎn)單,但是要實(shí)現(xiàn)超分辨率并不是那么容易。有很多原因?qū)е聸]有被廣泛應(yīng)用到手機(jī)等消費(fèi)產(chǎn)品中,例如其需要大量的算法創(chuàng)新。挑戰(zhàn)可以包括:
即使在良好的光照條件下,連拍的單個(gè)圖像也是有噪聲的。一個(gè)實(shí)用的超分辨率算法需要意識(shí)到這種噪音,并正確工作。我們不想只得到更高分辨率的噪聲圖像——我們的目標(biāo)是既提高分辨率,又能產(chǎn)生更小的噪聲。
左:在良好的光照條件下拍攝的單幀圖像,由于曝光不足,仍然可能包含大量的噪聲。右:連拍處理后合并多幀的結(jié)果。
在連拍的圖像之間的運(yùn)動(dòng)不僅僅局限于相機(jī)的運(yùn)動(dòng),可能有復(fù)雜的場(chǎng)景中運(yùn)動(dòng)如風(fēng)吹動(dòng)的樹葉、水面漣漪、汽車、人的面部變化、火焰的閃爍——甚至一些不能被視為獨(dú)立運(yùn)動(dòng)的如吸煙。一般來說,完全可靠和局部對(duì)準(zhǔn)是不可能的,因此即使運(yùn)動(dòng)估計(jì)不完美,一個(gè)好的超分辨率算法也要能用。
因?yàn)榇蠖鄶?shù)運(yùn)動(dòng)是隨機(jī)的,即使有良好的對(duì)齊,數(shù)據(jù)可能在圖像的某些區(qū)域密集,而在其他區(qū)域稀疏。超分辨率的關(guān)鍵是一個(gè)復(fù)雜的插值問題,因此數(shù)據(jù)的不規(guī)則傳播使得在網(wǎng)格的各個(gè)部分生成更高分辨率的圖像具有挑戰(zhàn)性。
以上所有的挑戰(zhàn)似乎都使得超分辨率在實(shí)踐中不可行,或者充其量只能局限于靜態(tài)場(chǎng)景和放在三腳架上的相機(jī)。利用Pixel 3上的Super Res Room,我們開發(fā)了一種穩(wěn)定、精確的連拍分辨率增強(qiáng)方法,它使用自然的手部運(yùn)動(dòng),并且足夠強(qiáng)大,可以部署在手機(jī)上。
以下是我們解決上述挑戰(zhàn)的方法:
為了在高速連拍(Burst Photography)情況下有效地合并幀,并為每個(gè)像素生成一個(gè)紅色、綠色和藍(lán)色的值,而不需要進(jìn)行除噪,我們開發(fā)了一種跨幀集成信息的方法,該方法考慮了圖像的邊緣,并相應(yīng)地進(jìn)行了調(diào)整。具體地說,我們分析輸入幀并調(diào)整我們?nèi)绾螌⑺鼈兘M合在一起,權(quán)衡增加的細(xì)節(jié),分辨率,噪聲抑制和平滑。我們通過沿著明顯邊緣的方向合并像素,而不是跨越它們來實(shí)現(xiàn)這一點(diǎn)。效果是我們的多幀方法提供了噪音減少和細(xì)節(jié)的增強(qiáng)之間的最佳平衡。
為了使算法能夠可靠地處理復(fù)雜的局部運(yùn)動(dòng)場(chǎng)景(人、車、水或樹葉移動(dòng)),我們開發(fā)了一個(gè)魯棒性模型來檢測(cè)和減輕對(duì)齊誤差。我們選擇一幀作為“參考圖像”,并只有當(dāng)我們確信我們找到了正確的對(duì)應(yīng)特征才將來自其他幀的信息合并到它。通過這種方式,我們可以避免像“重影”或運(yùn)動(dòng)模糊,或者是錯(cuò)誤地合并圖像的部分。
一輛快速行駛的公共汽車的連拍圖像。左:沒有魯棒性模型下合并。右:有魯棒模型下合并
推動(dòng)移動(dòng)攝影技術(shù)的發(fā)展
去年谷歌推出的人像模式(Portrait mode),以及之前HDR+ pipeline都展示了移動(dòng)攝影的優(yōu)越性。今年,我們從變焦下手。Super Res Room能提高計(jì)算機(jī)攝影技術(shù)水平,同時(shí)縮小移動(dòng)攝影和數(shù)碼單反之間的質(zhì)量差距。
超分辨率的概念比智能手機(jī)的出現(xiàn)早了至少10年。在幾乎同樣長的時(shí)間里,它也通過電影和電視在公眾的想象中存在,它也是學(xué)術(shù)期刊和學(xué)術(shù)會(huì)議上成千上萬篇論文的主題?,F(xiàn)在,在你手掌中的Pixel 3里,超分辨率真實(shí)存在。
如何最大限度地利用Super Res Room?
這里有一些關(guān)于如何在Pixel 3的手機(jī)上使用Super Res Room的技巧:
縮放再縮放,或者使用+按鈕增加縮放的離散步驟。
雙擊預(yù)覽以快速切換縮放和縮小。
Super Res可以在所有縮放系數(shù)下工作,不過出于性能原因,它只激活了1.2倍以上。
Pixel的廣角攝像機(jī)的光學(xué)分辨率有基本的限制。因此,為了最大限度地利用縮放,請(qǐng)保持放大系數(shù)適中。
避免快速移動(dòng)的物體。Super Res Room能正確捕捉它們,但你不可能得到更高的分辨率。