• May 28, 2023

【手機錄影怎麼虛化】手機App後製景深效果 |背景虛化 |iphone |

我之前撰寫關於手機雙攝虛化原理介紹文章發佈於此,關注這個問題朋友核心技術角度理解題目的問題。

如果你此有進一步問題,歡迎點下面鈕發起諮詢

很多人諮詢我,手機上有哪些計算攝影應用和技術。那麼接下來準備抽空寫一系列文章做一下介紹。

今天這一篇“人像模式”講起,因為不管你現在是Iphone,還是小米,華,OPPO, VIVO,以及其他所有品牌手機,能用這個功能了。我們來捋一捋,這個功能內部有哪些計算攝影技術支撐。

手機上人像模式,人們稱作“背景虛化”或 ”雙攝虛化“ 模式,稱為Bokeh模式,能夠保持畫面中指定人或物體同時,將其他背景掉。這樣,畫面主體部分會顯得突出,主觀上美感。

下面是另外一些我這邊團隊製作圖像(輸入是小米8手機拍攝,算法是我們自己算法):

我想,不用我做過多解釋,你看到這樣照片時能體會出其中吸引人處了。

這個功能帶入機領域,是2014上半年發佈HTC One M8, 當時它打出賣點是“拍照後焦”,效果現在標準看只能是不忍睹。但它確吸引了業界注意,有公司開始研究這個技術了。

我自己差不多是2014年下半年開始實際在工作中研究和開發這個算法。雖然那時候各家算法提供商,包括我們自己做得怎麼樣,但那時候,我們提出了這個功能一些關鍵評價維度。如下圖所示:

,這個功能於突出主體,所以焦平面所在主體要,不能有絲毫失焦。與此同時,還需要符合光學規律,需要景深範圍合理。比如焦平面多距離範圍內物體是,值得研究。 這一點,其實並那麼,待會我會提到。

能夠突出主體,景深範圍之外部分則需要光學規律。很多人以為只是對背景區域做個高斯能實現這種效果,然而並非如此。 要能逼近單反大光圈產生這種效果,需要考慮問題很多。這包括了畫面中每一個像素虛化程度、以及虛化方式設計,還需要能夠在手機這種計算量平台上實現。我們待會會看到多技術方面考量。

主體和背景、前景邊緣表現圖像美感和真實性影響。這裏我們要求是主體和位於其後背景邊緣要鋭利,會滲透和污染到方。

而如果焦主體遠離,位於其前方、靠近物體和主體邊緣恰恰相反,應該呈現出感:

正如上面説,我們希望畫面和之間變化是符合光學規律。於是非主體部分遠離焦平面,其程度應該是漸變。這顯然不是這些區域做一個高斯能做到,而是需要複雜渲染算法。

光學系統大光圈成像時,剛才提到主體之外,會某些高光像素處形成光斑,如下圖所示。 這些光斑焦平面距離,光軸距離,會呈現出透明度、尺寸、形態、顏色。

現在我們來看看,這種技術是如何實現。我文章31. 鏡頭、曝光,以及焦(上)中描述了”景深”概念

景深計算公式,景深是和光圈值大小成線性關係,光圈值,景深,反之。

物距成二次方關係,所以物距,景深

和焦距平方成反比,所以焦距,景深。焦鏡頭看到圖像背景。

CoC和光圈值之間是呈現一種倒數關係,正如wikipedia介紹:

下圖是一個形象例子,展示了Canon 5D Mark III到5m處物體時,CoC和場景中物距關係:

所以,能夠模擬出相機大光圈效果,我們需要當前場景計算出每個像素CoC——而這意味着我們知道每一個像素對應場景點鏡頭距離,或者這些場景點和焦平面之間距離。

獲取場景中任意一點和鏡頭之間距離,有很多方法。比如我之前52. 光飛行時間技術 (TOF系列2)中講到TOF技術,一種獲取場景深度方法。 TOF技術獲取深度,然而它有一些天然缺點。例如室外使用時易受幹擾,探測距離和功耗相關。 這麼幾年來,量產手機沒有採用TOF這類主動深度探測技術,而大多數是採用了動式雙目立體匹配技術。

我們看到下面左圖中, \pi 是成像平面,O是光心。 空間中P和Q點位於同一條穿過光心直線上,於是它們 \pi 平面上會投影到同一個點上——這使得已知投影點p或q,我們判斷它是空間中哪一點投影過來。

而如果我們採用兩個,如上面右圖所示。那麼左邊無法區分投影點p和q,卻可以右成像中區分出來。事實上,採用兩個相機時,空間中P、Q兩點,以及兩個相機和對應投影點之間幾何關係會謂“幾何約束”:

這事實上意味着我們能夠通過這種束關係,求出P、Q點相機之間距離!

讓這種計算、直接,圖像會進行校正,變成所謂標準形態,如下圖黃色部分所示:

此時,一對圖像中對應着同一個空間位置投影點,會變成位於同一條水平線上:

其對應幾何關係會變得了,如下圖所示P空間中一點,它和兩個焦距f相機距離Z,它兩個成像平面上投影點是p和p’,其橫座標 X_R 和 X_T 。

通過相似三角形計算,你知道這個距離Z

這裏面, d = X_R – X_T叫做視差,而b是兩個距離, f是焦距。 這樣,求取空間點和相機之間距離關鍵變成了求取其投影點視了。而整個圖像上所有點視差構成了圖像,這個圖像叫做視差圖,如下所示:

而通過校正後一對圖像獲取到視差圖過程,叫做立體匹配,它有點像玩遊戲:計算機輸入圖像,指定左圖上某個點,要求算法右圖上找到它對應投影點,然後兩個點橫座標相減得到該點視差。

聽起來,是吧?然而,這個看起來直接想法現實中會遇到很多問題。例如:

我所帶團隊,目前開發出了基於深度學習立體匹配,能夠極端挑戰場景獲取到視差圖。下面展示一些例子,並和OpenCV自帶SGBM運行結果做了比:

視差圖:(左:OpenCV中SGBM結果, 右: 我們算法結果)

注意看我方視差圖中貓鬍子,以及貓身視差及一致性

視差圖:(左:OpenCV中SGBM結果, 右: 我們算法結果)

注意看我方視差圖中貓鬍子,以及貓身視差及一致性

視差圖:(左:OpenCV中SGBM結果, 右: 我們算法結果)

這些圖片來於Holopix50k, 如果你立體匹配感興趣,可以從下面鏈接查看我放入上面幾張原始圖片文件,還可以和我們算法PK一把 :

説到這裏,你可能會產生一個問題:説過雙攝像頭拍攝圖片普通形態轉換成標準立體形態(如下圖黃色所示),是如何做到呢? 這提到標定和立體校正了。

我們看到上圖中,兩個拍攝圖像,以及實際場景點,是對極幾何約束下。 進行立體校正時,圖像上對應點pp’, qq’兩個圖像同一行上。而標準立體形態p和p’,q及q’則需要同一行上。做到這點,需要獲取到兩個相機空間幾何關係,這包括了兩個相機三維旋轉角度,以及兩個相機空間平移。與此同時,標準形態要求圖像是沒有畸變,這説我們需要兩個相機焦距、圖像中心、畸變參數等用於去畸變,以及兩個轉換到同一個座標系中。

而獲取這些參數過程,叫做雙目標定。而現在標定方法是“張正友標定法”,它要求拍攝距離、角度幾十張下面這種棋盤格照片,然後通過優化迭代求解,獲取到內外參數。

這種標定方法,配合到高精度棋盤格,可以獲取到標定結果。然而在手機生產過程中,它是現實,因為、速度慢——你想想自己拿着手機拍十張角度、距離棋盤格圖片需要多久。

我舉個實際例子,2021年5月21日,小米手機通過官方博正式宣佈,小米11系列全球銷量突破300萬台。這只是一個廠家一款手機,所有手機廠商同一段時間需要工廠生產手機何止千萬台,如果需要採用這種複雜標定方式,那麼無論哪個工廠產能會爆倉。於是,算法提供商一個工作,張正友標定法作出改進,保證精度基礎上提高效率,現在我瞭解手機生產工廠可以達到10到15秒時間內標定兩台手機速度。

延伸閱讀…

虛化!iphone 影片馬賽克App三步驟後製模糊效果

手機攝影如何虛化背景?

我們剛才講述內容總結如下圖紅框所示,後一步COC計算得到結果會送入到圖像渲染模塊,渲染出人像模式下背景虛化圖像。

然而,即便是有了COC圖,圖像渲染部分會遇到很多困難。比如:

提升美觀性,是通過CoC尺寸生成足夠逼真核,然後圖像進行卷積操作來得到。基礎做法是圓形核:

雖然這樣足以得到還算OK渲染圖像,然而單反核有一些特點,無法用圓形核來模擬:

另外,卷積渲染得到圖像會主體和背景交界處,產生一種顏色泄漏現象,如下圖所示,看。這是因為卷積操作將位於主體和背景像素加權到一起導致。

當用物體深度基礎計算加權權重後,問題可以得到解決,這帶來了計算量:

剛才提到了速度,我們知道一個基本卷積操作,其計算量可以表示O(W*H*m*n),其中W圖像,H圖像高,而m和n卷積核的,所以其計算量是。於是有很多學者研究了各種各樣方法來保持情況下,提升速度。我參考資料中放了一篇這方面綜述,供你參考。

正如我上面講到,一個消費者來説看起來簡功能(很多人忽視功能),其中卻包含了幾個和基礎計算攝影組件。

一開始HTC One M8,到現在華米OV以及蘋果旗艦機器,產業界各個角色致力於人像模式

模式越做越,越做越實用。這裏面包括了很多人不懈努力:手機廠商作為客户努力提出貼近用户要求,算法公司努力給出、解決方案,鏡頭模組廠努力生產有利於效果雙攝模組,手機生產工廠提升標定準確度和效率。我作為算法公司一員,參與到了整個產業界零開始精益求精打磨這個功能過程中——某種意義上講,這體現出來了所有這些組織和個人工匠精神

相信很多朋友喜歡這種主體而背景效果(淺景深效果)!這種效果不僅可以使畫面看起來乾,而且可以讓你主體突出!這是什麼很多人會覺得反拍出畫面會看。

那麼問題來了,是不是只有反才可以拍出這種景深效果(虛化效果)?手機可以通過哪些方法來實現景深效果?

我們要理解什麼叫做景深?理解拍攝物體成像時範圍。那麼理解淺景深,畫面中拍攝物體範圍,即背景虛化效果!

接下來和大家一起一下,我們手機可以通過哪些方法來讓背景看起虛化呢?影響一張照片景深要素有哪些?

1,靠近點拍

這,想要得到虛化效果,辦法可以對焦情況下,儘量靠近拍攝物體,是拍攝一些景物時,如小花小草,小動物。

2,讓攝物體離背景遠一些

延伸閱讀…

手機如何拍出背景虛化效果?

在iPhone 上編輯「電影級」模式的影片

要想讓背景虛化效果,我們可以讓拍攝物體離背景遠一些,儘量創造出空間感。是條件允許情況下(拍攝主體是可以移動)

3,長焦距可以得到虛化效果

玩過反朋友肯定知道,其他參數不變情況下只是改變焦距,我們可以得到效果景深,長焦距時可以得到景深效果。因為我們使用手機鏡頭是廣角鏡頭(30mm左右焦段),所以掌握技巧拍攝出淺景深效果。

我們可以通過購買手機外置焦鏡頭來達到攝和景深效果。但是要注意長焦距攝鏡頭對焦距離(靠會出現沒辦法現象),所以它適合拍攝物體離情況下。補充説:現在果7Plus設計了雙背面攝像頭,一顆28mm廣角鏡頭,另一顆56mm中焦人像鏡頭。這樣選擇人像模式情況下相當於是更長焦段拍攝,所以虛化效果。

4,使用具有光圈功能手機

於景深效果來説,光圈才是王道。光圈可以得到美麗且過渡景深效果。

現在市面上有很多手機具有光圈功能了。例如: oppo r9s,金立s8,vivox9一些國產手機光圈達到f2.0,有”果7″光圈達到了f1.8。這樣可以解決我們環境下拍照光線問題有今天我們講實現景深問題。

上面幾點可以總結為影響照片景深三要素:1,距離(手機到拍攝物體距離以及拍攝物體到背景距離); 2,焦距;3,光圈。

5,雙鏡頭手機可以得到景深效果

iPhone 13 和 iPhone 14 機型上,「電影級」模式會套用景深效果,讓影片主體保持,同時讓前景和背景產生效果。「照片」App 中,你可以更改套用效果對焦主體,並調整「電影級」模式影片中背景程度或景深。你可以關閉效果。

安裝 iOS 15 或以上版本 iPhone XS、iPhone XR 和後續機型上,可編輯 iPhone 13 機型和 iPhone 14 機型錄製「電影級」模式影片。

「照片」中,打開「電影級」模式錄製影片,然後點一下「編輯」。

點一下螢幕上方「電影級」,然後點一下「完成」。

「電影級」模式下錄製時,會動識焦位置,並且識別到拍攝主體時會自動更改焦點。你可以手動更改焦主體。

「照片」中,打開「電影級」模式錄製影片,然後點一下「編輯」。

播放影片,或影格檢視器中白色直桿滑動到你想要更改焦點位置。

影格檢視器下方會出現一個黃點,表示焦點更改。

若要移除手動焦點,請點一下影格檢視器下方黃點,然後點一下 。

儲存動後,若你喜歡做編輯,可以將「電影級」模式影片恢復成原始影片。打開影片,點一下「編輯」,然後點一下「回復」。

「照片」中,打開「電影級」模式錄製影片,然後點一下「編輯」。

向左或向右拖移滑桿來調整景深效果,然後點一下「完成」。

若要儲存後原更動,請打開影片,點一下「編輯」,然後點一下「回復」。

你可以使用 AirDrop 將「電影級」模式影片(具有景深和後設資料)從 iPhone 傳送到 Mac,以便其他 App 中進行編輯。

【注意】 iPhone XR 上,只有前置支援「自然光」、「攝影棚燈光」和「輪廓光」。

若要儲存後「人像光線」效果,請點一下「編輯」,然後點一下「回復」來回復原始光線。

【注意】若要照片移除「人像」效果,請點一下螢幕上方「人像」。