如何利用深度學習製作專業水準的照片?
文 / Google 機器感知軟體工程師 Hui Fang
機器學習 (ML) 在許多目標明確的領域都表現卓越。答案非對即錯的任務有助於訓練過程,也可使演算法實現其預期目標,無論是正確識別影象中的物體,還是將一種語言適當地翻譯成另一種語言。不過,有些領域並沒有客觀的評估標準。例如,一張照片是否美麗要按其美學價值進行衡量,而美學價值是一個非常主觀化的概念。
▲ 一張加拿大賈斯珀國家公園的專業照片
為了探究機器學習能否學習主觀性概念,我們引入了一個用於藝術內容創作的實驗性深度學習系統:
https://arxiv.org/abs/1707.03491
該系統可模仿一個專業攝影師的工作流程,瀏覽來自 Google 街景的全景照片,並搜尋最佳構圖,然後進行各種後期處理操作以製作一張具有美感的影象。我們的虛擬攝影師“瀏覽”了大約 4 萬張全景照片(拍攝地為阿爾卑斯山、加拿大班夫公園和賈斯珀國家公園、加利福尼亞州大蘇爾以及黃石公園等),並據此製作出令人印象深刻的照片,根據專業攝影師的評判,有些照片甚至接近專業水準。
訓練模型
儘管可使用 AVA 等資料集對美學進行建模,但單純用它來提升照片品質可能會使照片欠缺某些美感,如照片過度飽和。不過,利用監督式學習正確地學習美學的多個要素可能需要一個標註資料集,而該資料集很難收集。
我們的方法只依賴於專業品質的照片集,無需在之前/之後進行影象比對,也無需任何額外的標籤。該方法自動將美學分解成多個要素,每個要素都通過一個耦合的影象操作產生的反面示例進行單獨學習。通過使這些影象操作保持“半正交”,我們可以通過快速並且可分離的優化來改善照片的構圖、飽和度/HDR 水平及戲劇性光線。
▲ 一張全景照片 (a) 被剪裁成 (b),飽和度和 HDR 強度在 (c) 中得到提升,(d) 中則應用了戲劇性蒙版。每一步都根據所學習的一個美學要素完成。
傳統影象濾鏡可用於生成飽和度、HDR 細節和構圖的反面訓練示例。我們也引入了一個名為戲劇性蒙版的特殊操作,它是在學習戲劇性光線的概念時建立的。反面示例是通過應用一組影象濾鏡(隨機修改專業照片的亮度,降低照片質量)而生成的。我們使用生成式對抗網路 (GAN) 進行訓練,其中生成式模型建立一個蒙版來修復反面示例的光照,而判別式模型則設法區分已提升品質的照片和真正的專業水準照片。與固定形狀的濾鏡(如 vignette)不同,戲劇性蒙版可感知照片內容並據此相應地調節照片亮度。GAN 訓練的競爭特性將促使這些建議逐步改善。您可以閱讀我們的論文,瞭解此訓練的詳細資訊:
https://arxiv.org/abs/1707.03491
成果
下面展示了我們的系統通過 Google 街景製作的一些照片。正如您所看到的,通過應用經過訓練的美學濾鏡產生了一些戲劇性效果(包括本文開頭所使用的圖片!)
▲ 加拿大賈斯珀國家公園
▲ 瑞士因特拉肯
▲ 義大利 Park Parco delle Orobie Bergamasche。
▲ 加拿大賈斯珀國家公園
專業評估
為了判斷我們的演算法有多麼成功,我們設計了一個類似“圖靈測試”的實驗:我們將我們製作的照片與其他不同品質的照片混在一起,並將它們展示給多位專業攝影師。要求這些攝影師為每張照片的品質打分,評分標準如下:
1:隨手一拍的照片,根本不考慮構圖和光線等。
2:沒有攝影背景的普通大眾拍攝的好照片。沒有突出的藝術特色。
3:半專業水準。有明顯藝術性的優秀照片。拍照者正朝著專業攝影師發展。
4:專業水準。
下圖中,每條曲線分別顯示了專業攝影師給預測分數在特定範圍內的照片的評分。對於我們製作的預測分數很高的照片,約有 40% 的照片獲得的評分在“半專業水準”到“專業水準”之間。
▲ 專業攝影師為具有不同預測分數的照片給出的評分
未來工作
街景全景照片可作為我們專案的測試平臺。將來,這種技術甚至能夠幫助您在現實世界裡拍出更好的照片。我們編譯了一個照片展示平臺,用以展示令我們滿意的照片:
https://google.github.io/creatism
如果您看到您喜歡的照片,您點選它即可顯示附近街景的全景照片。假如您當時就在那裡舉著相機,您能拍出相同水準的照片嗎?
致謝
這項工作由 Google Research 的機器感知工程師 Hui Fang 和 Meng Zhang 合作完成。我們在此感謝 Vahid Kazemi,感謝他前期在使用 Inception 網路預測 AVA 分數方面的工作,也感謝 Sagarika Chalasani、Nick Beato、Bryan Klingner 和 Rupert Breheny,感謝他們在處理 Google 街景全景照片方面給予的幫助。同時我們要感謝 Peyman Milanfar、Tomas Izo、Christian Szegedy、Jon Barron 和 Sergey Ioffe,感謝他們建設性的評價和評論。最後我們萬分感謝匿名的專業攝影師們,感謝他們的無私奉獻!
檢視全文及文中連結,請點選文末“閱讀原文”。
推薦閱讀:
相關文章
- PTGui Pro for Mac:製作完美全景照片的專業工具GUIMac
- 如何利用深度學習分類Yelp上的商業圖片深度學習
- 如何利用深度學習寫詩歌深度學習
- 如何學習和利用深度學習演算法框架深度學習演算法框架
- 谷歌「虛擬攝影師」利用深度學習生成專業級攝影作品谷歌深度學習
- 為Apache Spark準備的深度學習ApacheSpark深度學習
- 工作學習中如何選擇作業系統?如何學習linux作業系統作業系統Linux
- 小白如何學習作業系統?作業系統
- Logic Pro:音樂製作的新標準,專業工具的代名詞
- 何謂深度定製作業系統?作業系統
- 第一次作業:深度學習基礎深度學習
- 實踐 | 如何使用深度學習為照片自動生成文字描述?深度學習
- 模切ERP系統智慧化提升企業製造業水準
- 學習作業
- 如何拯救無法「深度學習」的製造業,2019工業智慧靈魂10問深度學習
- 怎麼用PPT製作一個照片畫冊?PowerPoint製作照片畫冊教程
- 如何利用Posterino做出照片牆
- 基於深度學習的醫學影像配準學習筆記2深度學習筆記
- 如何製作專案管理列表專案管理
- 深度學習煉丹-資料標準化深度學習
- 向水學習
- 遊戲製作學習資料遊戲
- Node.js學習之路22——利用cheerio製作簡單的網頁爬蟲Node.js網頁爬蟲
- Markdown學習作業
- 專業音樂製作軟體
- 如何製作企業宣傳片:企業宣傳片製作之道
- 例項分享:深度學習與音樂製作的碰撞能產生怎樣的火花?深度學習
- 一起來學習如何用 Node 來製作 CLI
- 分享一下如何製作專業的手繪電子地圖地圖
- 百度王海峰:深度學習框架是智慧時代的作業系統深度學習框架作業系統
- 【深度學習】如何從零開始構建深度學習專案?這裡有一份詳細的教程深度學習
- 如何準備畢業論文寫作?
- 【教程】如何從零開始構建深度學習專案?深度學習
- 作業系統學習作業系統
- 想知道深度學習如何運作?這是所有工程師的快速指南深度學習工程師
- 遊戲角色製作行業標準? 快來看看吧遊戲行業
- 利用docker部署深度學習模型的一個最佳實踐Docker深度學習模型
- 【人工智慧】機器深度學習如何改變企業?人工智慧深度學習