雖然雙攝手機已經(jīng)在市場上普及,其所帶來的人像模式、多倍變焦也成為了不少智能手機的「標配」,但仍然有廠商依然堅持用一個攝像頭的配置。
比如以軟件著稱的 Google,從 Pixel 手機的初代到今天的 Pixel 3 / 3XL,在往今的兩年時間里(初代 Pixel 于 2016 年發(fā)布),他們?nèi)詧猿植捎脝螖z配置。
有意思的是,Pixel 不但是 DxOMark 榜單前列的??停咕氨憩F(xiàn)長期吊打各旗艦, 而且還帶來了比雙攝出品更優(yōu)秀的人像模式出品。
這些其實都是要歸功于軟件算法和 AI 神經(jīng)網(wǎng)絡(luò)。昨天,Google 就在他們的 Google AI Blog 上解析了 Pixel 3「人像模式」(Portrait Mode)的算法原理。實際上,他們在這套算法上下了不少功夫。
Google 的算法原理
如果你對 Google 的相機算法陌生,不妨先來了解一下 Pixel 2 的人像算法原理。
去年,Google 通過 AI(神經(jīng)網(wǎng)絡(luò))算法,讓 Pixel 2 / 2XL 在僅一顆攝像頭的硬件條件下,拍出能與雙攝手機媲美的人像背景虛化照片。
▲ 圖片來自:Google
通過去年 Google公布的這組對比圖,我們能快速區(qū)分出左邊的 HDR+ 樣張和右邊 Portrait Mode「人像模式」下的樣張在背景虛化上的不同。
正如你所見那樣,在「人像模式」下,人像后的背景被進行了軟件虛化處理,與正常 HDR+ 對比看上去視覺沖擊更強,同時也避免了背景對拍攝主體的視覺干擾。
拍攝一張 HDR+ 照片
根據(jù) Google 去年在 AI Blog 的介紹,Pixel 2 的相機會先拍攝一組 HDR+ 照片,通過多幀合成,從而提升最終成片的動態(tài)范圍、細節(jié)保留、高光表現(xiàn)。
通過下面這組 HDR+ 的對比圖,我們能看到該功能在開啟前后的區(qū)別(注意右上角遠景曝光及地板線條細節(jié))。
▲ 左:HDR+ 前;右:HDR+ 后 圖片來自:Google
分割遠近景
如果你想拍攝一張「人像模式」照片,那么在得到一張 HDR+ 成片后,相機會使用 TensorFlow 的 AI 神經(jīng)網(wǎng)絡(luò)將人物像素點、物體的像素點、遠近物的像素點篩選出來。
Google 在 AI Blog 給出的這組對比圖能看到更直觀的展示效果:
左邊是 HDR+ 拍攝的原圖,右邊黑色部分是 AI 識別出來的背景部分,白色部分是被識別出來的主體人物輪廓(包括人物五官細節(jié)以及在該輪廓內(nèi)的物體)。
有意思的是,從最終成片中我們能看到,桌上的餅干在 AI 識別下是屬于「非人」部分,但最終這部分沒有被虛化。這是因為系統(tǒng)除了將主體和背景識別出來以外,還識別出了主體周邊的物體,因此 AI 最終沒有將人物下方的物體虛化。因為這部分雖然不屬于對焦主體,屬于近景,但是這種效果還不是最完美的。
得到深度優(yōu)化圖并合成最終成片
雖然去年的 Pixel 2 和今年的 Pixel 3 系列都沒有配置雙攝像頭,但 Google 似乎一直都不是以硬件取勝的公司,他們更擅長于用軟件和算法去解決問題。
▲ 圖片來自:Google
盡管沒有硬件上的雙攝,但 Pixel 的相機都配備了 PDAF 雙核相位對焦技術(shù),Google 便可以通過像素點劃分將一顆攝像頭「一分為二」:
鏡頭左側(cè)拍攝到的畫面會和右側(cè)的畫面約有 1mm 的不同視覺間距,如果是在縱向拍攝下,鏡頭則是分為上下兩部分排列。
在拍攝后,系統(tǒng)會并排兩側(cè)鏡頭拍攝到的像素。通過 Google 自家的 Jump Assembler 算法去得出立體演算的深度優(yōu)化圖,利用雙向求解器將深度圖轉(zhuǎn)變成高解析度。
▲ 圖 1 、2 為上半部分、下半部分相機拍攝,圖 3 動圖為前面兩圖區(qū)別 圖片來自:Google
上圖左邊是通過 PDAF 拍攝并演算得到的深度圖,白色部分越深,代表與鏡頭距離越近;右邊是決定像素模糊程度,黑色部分為「不需模糊」范圍,紅色部分為「需模糊范圍」,通過紅色的深淺,系統(tǒng)會自動判斷出背景虛化的力度。
▲ 最終效果圖
最后系統(tǒng)會將第 2 步驟分割出的背景圖和第 3 步驟得出的深度圖合并。在 AI 物體的判別下,系統(tǒng)能估算出近景的餅干和瓷盤到對焦(人物)主體的距離,并進行虛化。最終得到了比步驟 2 的初級處理更全面和自然的人像照片。
對比步驟 2 和步驟 3 最終的效果圖,你能看到位于近景的餅干也被適當虛化了。通過軟件算法,我們能將虛化范圍「捏造」成任何形狀。
Google 是怎樣訓練神經(jīng)網(wǎng)絡(luò)的?
了解了 Pixel 2 的人像模式原理,那么 Pixel 3 的優(yōu)化就不難理解了。
通過軟件算法,相機系統(tǒng)可大致估算出對焦主體和背景的距離,并對遠景進行虛化。但在手持拍攝時,手機難免會出現(xiàn)輕微的抖動,因而影響到最終虛化效果。正是如此,此前有不少用戶在 Pixel 2 系列上遇到了景深識別錯誤的問題。
據(jù) Google AI Blog 的介紹,基于神經(jīng)網(wǎng)絡(luò)學習的特性,在 Pixel 3 上,Google 正通過增加對 AI 系統(tǒng)的識別提示和訓練 AI 神經(jīng)網(wǎng)絡(luò)的算法,去修復(fù)「人像模式」中的識別誤差問題。
例如,通過像素點數(shù)量去判斷物體與鏡頭的遠近距離,得出給 AI 更精準的距離判斷結(jié)果;或者通過對焦點內(nèi)外的清晰情況,給 AI 提供散焦提示。
Franken Phone」是 Google 用于訓練由 TensorFlow 編寫的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的裝置,這套裝置由 5 臺 Pixel 3 和 WiFi 組成。
在測試時,Google 會用 Franken Phone 里的 5 臺手機在不同的角度同時拍攝,最終得出一張由多個角度、和立體算法合成的動態(tài)深度圖。從而達到模擬拍攝動態(tài)、在復(fù)雜場景下訓練神經(jīng)網(wǎng)絡(luò)精準識別出人物(近景)和背景(遠景)的目的。
▲ 圖一為 Google Franken Phone。圖片來自:Google
當然,如果您對 Google 這套算法感興趣,也可以自己動手去親自研究他們。Google AI Blog表示,在使用 Google Camera App 6.1 版本的「人像模式」拍攝后,通過 Google Photos 能查看照片的深度圖了。
或者,您也可以通過第三方軟件提取深度圖,去看看在 AI 神經(jīng)網(wǎng)絡(luò)優(yōu)化下識別方式。
-
智能手機
+關(guān)注
關(guān)注
66文章
18543瀏覽量
180868 -
Google
+關(guān)注
關(guān)注
5文章
1772瀏覽量
57739 -
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4779瀏覽量
101082
原文標題:通過 AI 自學習,Google 讓 Pixel 3 的人像模式更優(yōu)秀
文章出處:【微信號:worldofai,微信公眾號:worldofai】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論