沒必要去在乎演算法如何調教的,所有的演算法調教,只是為了合理的去除硬體引數不足帶來的成像短板。實際上大多數演算法可以實現的功能和場景,專業的攝影師和作圖人員都可以使用專業的影象處理軟體來實現一致的效果。即便使用單反拍攝的照片,如果不在後期進行二次裁剪和修圖,也很難有人可以直接拍出一張好照片。
因此我們在聊攝影的時候只需要知道一件事情:攝影本身就是玩兒光的藝術。專業的攝影師,可以透過相機調節各種引數,通過後期軟體,透過輔助的手段使得最終得到的畫面按照自己的設想來走;而使用手機拍攝的消費者,大多數都只能聽從演算法的安排,演算法設定拍攝成什麼效果就是什麼效果。
那麼手機在不同的場景下如何來進行成像的判定呢?
我們這裡就舉例三個不同的場景來說:戶外、室內、夜晚。
在戶外Sunny充足的場景下拍照,使用最長見的就是HDR拍照模式。HDR指的就是“高動態範圍”,說人話就是:一張照片裡面,從最亮的地方到最暗的地方,都可以看清楚。也就是畫面中保留了最多的細節和顏色。這裡就與相機使用的曝光方式有關。
手機相機通常採用的是單點測光,也就是按照畫面中心位置的光線為基準來進行畫面亮度的調節,如果在晴天草坪上拍攝,就會出現一個問題:以草坪光線為曝光基準拍攝後,因為天空比草坪亮很多,因此看起來可能就是一片白色,而樹蔭下面卻又比草坪暗很多,因此看起來可能是一片黑色。也就是這張照片天空和樹蔭下的細節都丟失了。
那麼HDR功能開啟後,按下快門的一瞬間,鏡頭會同時拍攝三張照片,除了普通曝光的照片之外,還會按照最亮的天空為基準拍一張照片,這樣天空的細節就顯現出來;再按照最暗的樹蔭下為基準拍攝一張照片,樹蔭下的細節也就顯現出來了。三張照片進行堆疊處理,也就得到了一張從最亮到最暗部分都可以看清楚細節的高動態範圍照片。
HDR功能出現於十年前的智慧手機上,應該是第一個協助手機拍攝的演算法工具,如今已經是各個手機的標配功能。其實使用單反相機再手動匯入PS堆疊也可以實現這樣的功能。
那麼當我們來到室內的時候,由於光線環境下降,此時手機拍攝照片的方法又變了。在光線比較昏暗的場景下拍攝照片,手機相機通常有兩種解決方案:
第一種是長曝光後做影象堆疊。當你按下快門的時候,手機會提示你拿穩手機,會有十多秒甚至更長時間的曝光。這個時候首先會連續拍攝多張照片,主要用於構圖的定位,確定影象中各個物體的位置。然後會進行一段長時間的曝光,在光線不足,光圈無法更大的情況下,只能夠透過延長曝光時間的方式來增加進光量。一般手機在這個時候會拍攝9張以上的照片(都是後臺自動完成,使用者無法感知),堆疊之後,挨個挨個進行畫素級別的匹配,也就是在確保畫面物體輪廓清晰的情況下,再把長曝光得到的影象填充進去,讓照片的曝光可以達到甚至超越人眼看見的水準。最終就可以得到一張曝光充足的室內環境照片了。
第二種是畫素堆疊,簡單來講就是,長曝光帶啦的長時間,導致的問題就是畫面很容易模糊,因為人雙手是無法完全保持靜止的,跟別說數秒鐘的手持拍攝,即便是有光學防抖的情況下,曝光時間越長,就越有可能出現問題。這個時候還有另外一種方式就是在CMOS的畫素上面做文章。
舉例子比如說高畫素的CMOS感測器,三星的1.08億畫素感測器,實際上大家都知道很多時候壓根就不需要這麼高的畫素,那麼如果把相鄰9個畫素拆分,約等於拍攝一次,得到9張照片,然後進行堆疊處理得到一張1200W畫素的照片,但是會縮短曝光的時間。
又或者如果把相鄰的9個畫素合到一起,約等於得到一個1200W畫素,但是單個像素面積大了9倍的感測器,單個像素面積越大,拍攝出來的照片效果自然會更好一些。
無論是長曝光還是畫素堆疊,背後的主要動力是處理器晶片的運算能力大面積增加。目前這方面最好的是iPhone,得益於A13晶片強大的算力,可以是實現快速處理。
那麼最後我們就來到極端環境下......光線非常差的夜景模式下。
這種場景,對於相機玩家來說,能做的也只是把三腳架支起來,找一個快門線,防抖的同時進行超長的曝光。有多長呢?如果是建築物夜景也需要曝光十幾秒,如果是純黑色的星空,那就是幾十秒甚至幾分鐘的曝光了,然後還得後期堆疊做降噪和調色才可以看見銀河。這種情況對於手機來說,壓根就不可能做到。
那麼這種環境極差的情況下,如何來解決呢?這個時候就只能夠依靠演算法來實現。
如果說只能夠拍攝到一個大致的輪廓這麼辦?這個時候一方面需要依靠TOF鏡頭這樣的輔助工具來大概確定畫面中物體之間的位置關係。同時已經被訓練的演算法就會開始對畫面進行畫素級別的對比,:
首先是分離出畫面中的哪一塊是屬於哪一個物體,確定好位置關係。
然後識別是什麼東西,比如說拍攝黑夜下的人像,那麼就需要分辨出哪一塊是鼻子、嘴巴、眼睛、臉頰、脖子等等。
最後就是最重要的,演算法開始根據過去上千萬張照片訓練後得到的模型,開始把畫面“腦補”出來,不是隨意的P圖,而是合理的進行腦補。
這樣就得到一張看起來曝光非常正常的照片了......其中做得最好的是谷歌,大家可以去看看Pixel手機的拍攝樣張,什麼叫用最簡陋的硬體,拍出較好的照片。
其實看到這裡你應該能夠明白,演算法的使用,根本是基於光照不同的場景下來使用,讓手機可以順利記錄下清晰影像的方式。對於攝影師來說,可以採用人工干預的手段,但是現在,演算法也可以幫助普通使用者來干預光線的運用。
沒必要去在乎演算法如何調教的,所有的演算法調教,只是為了合理的去除硬體引數不足帶來的成像短板。實際上大多數演算法可以實現的功能和場景,專業的攝影師和作圖人員都可以使用專業的影象處理軟體來實現一致的效果。即便使用單反拍攝的照片,如果不在後期進行二次裁剪和修圖,也很難有人可以直接拍出一張好照片。
因此我們在聊攝影的時候只需要知道一件事情:攝影本身就是玩兒光的藝術。專業的攝影師,可以透過相機調節各種引數,通過後期軟體,透過輔助的手段使得最終得到的畫面按照自己的設想來走;而使用手機拍攝的消費者,大多數都只能聽從演算法的安排,演算法設定拍攝成什麼效果就是什麼效果。
那麼手機在不同的場景下如何來進行成像的判定呢?
我們這裡就舉例三個不同的場景來說:戶外、室內、夜晚。
戶外,爛大街的HDR在戶外Sunny充足的場景下拍照,使用最長見的就是HDR拍照模式。HDR指的就是“高動態範圍”,說人話就是:一張照片裡面,從最亮的地方到最暗的地方,都可以看清楚。也就是畫面中保留了最多的細節和顏色。這裡就與相機使用的曝光方式有關。
手機相機通常採用的是單點測光,也就是按照畫面中心位置的光線為基準來進行畫面亮度的調節,如果在晴天草坪上拍攝,就會出現一個問題:以草坪光線為曝光基準拍攝後,因為天空比草坪亮很多,因此看起來可能就是一片白色,而樹蔭下面卻又比草坪暗很多,因此看起來可能是一片黑色。也就是這張照片天空和樹蔭下的細節都丟失了。
那麼HDR功能開啟後,按下快門的一瞬間,鏡頭會同時拍攝三張照片,除了普通曝光的照片之外,還會按照最亮的天空為基準拍一張照片,這樣天空的細節就顯現出來;再按照最暗的樹蔭下為基準拍攝一張照片,樹蔭下的細節也就顯現出來了。三張照片進行堆疊處理,也就得到了一張從最亮到最暗部分都可以看清楚細節的高動態範圍照片。
HDR功能出現於十年前的智慧手機上,應該是第一個協助手機拍攝的演算法工具,如今已經是各個手機的標配功能。其實使用單反相機再手動匯入PS堆疊也可以實現這樣的功能。
室內,長曝光和畫素堆疊那麼當我們來到室內的時候,由於光線環境下降,此時手機拍攝照片的方法又變了。在光線比較昏暗的場景下拍攝照片,手機相機通常有兩種解決方案:
第一種是長曝光後做影象堆疊。當你按下快門的時候,手機會提示你拿穩手機,會有十多秒甚至更長時間的曝光。這個時候首先會連續拍攝多張照片,主要用於構圖的定位,確定影象中各個物體的位置。然後會進行一段長時間的曝光,在光線不足,光圈無法更大的情況下,只能夠透過延長曝光時間的方式來增加進光量。一般手機在這個時候會拍攝9張以上的照片(都是後臺自動完成,使用者無法感知),堆疊之後,挨個挨個進行畫素級別的匹配,也就是在確保畫面物體輪廓清晰的情況下,再把長曝光得到的影象填充進去,讓照片的曝光可以達到甚至超越人眼看見的水準。最終就可以得到一張曝光充足的室內環境照片了。
第二種是畫素堆疊,簡單來講就是,長曝光帶啦的長時間,導致的問題就是畫面很容易模糊,因為人雙手是無法完全保持靜止的,跟別說數秒鐘的手持拍攝,即便是有光學防抖的情況下,曝光時間越長,就越有可能出現問題。這個時候還有另外一種方式就是在CMOS的畫素上面做文章。
舉例子比如說高畫素的CMOS感測器,三星的1.08億畫素感測器,實際上大家都知道很多時候壓根就不需要這麼高的畫素,那麼如果把相鄰9個畫素拆分,約等於拍攝一次,得到9張照片,然後進行堆疊處理得到一張1200W畫素的照片,但是會縮短曝光的時間。
又或者如果把相鄰的9個畫素合到一起,約等於得到一個1200W畫素,但是單個像素面積大了9倍的感測器,單個像素面積越大,拍攝出來的照片效果自然會更好一些。
無論是長曝光還是畫素堆疊,背後的主要動力是處理器晶片的運算能力大面積增加。目前這方面最好的是iPhone,得益於A13晶片強大的算力,可以是實現快速處理。
夜景,語義渲染那麼最後我們就來到極端環境下......光線非常差的夜景模式下。
這種場景,對於相機玩家來說,能做的也只是把三腳架支起來,找一個快門線,防抖的同時進行超長的曝光。有多長呢?如果是建築物夜景也需要曝光十幾秒,如果是純黑色的星空,那就是幾十秒甚至幾分鐘的曝光了,然後還得後期堆疊做降噪和調色才可以看見銀河。這種情況對於手機來說,壓根就不可能做到。
那麼這種環境極差的情況下,如何來解決呢?這個時候就只能夠依靠演算法來實現。
如果說只能夠拍攝到一個大致的輪廓這麼辦?這個時候一方面需要依靠TOF鏡頭這樣的輔助工具來大概確定畫面中物體之間的位置關係。同時已經被訓練的演算法就會開始對畫面進行畫素級別的對比,:
首先是分離出畫面中的哪一塊是屬於哪一個物體,確定好位置關係。
然後識別是什麼東西,比如說拍攝黑夜下的人像,那麼就需要分辨出哪一塊是鼻子、嘴巴、眼睛、臉頰、脖子等等。
最後就是最重要的,演算法開始根據過去上千萬張照片訓練後得到的模型,開始把畫面“腦補”出來,不是隨意的P圖,而是合理的進行腦補。
這樣就得到一張看起來曝光非常正常的照片了......其中做得最好的是谷歌,大家可以去看看Pixel手機的拍攝樣張,什麼叫用最簡陋的硬體,拍出較好的照片。
其實看到這裡你應該能夠明白,演算法的使用,根本是基於光照不同的場景下來使用,讓手機可以順利記錄下清晰影像的方式。對於攝影師來說,可以採用人工干預的手段,但是現在,演算法也可以幫助普通使用者來干預光線的運用。