計算機如何學會自動裁剪圖片(如何在電腦上裁剪圖片)
大家好,這是專欄《計算攝影》的第三篇文章,這一個專欄來自于計算機科學與攝影藝術的交叉學科。今天我們討論的問題是圖像的自動裁剪/自動構圖問題。
作者&編輯 | 言有三
1 自動構圖基礎
1.1 什么是構圖
自動裁剪用攝影的話語來說,就是自動構圖。構圖來源于繪畫,最初指繪畫時根據題材和主題思想的要求,把要表現的形象適當地組織起來,構成一個協調的完整的畫面。因此一種構圖方法一定要能夠表達作品的核心思想內容并有一定的藝術感染力。
我們在文章《 》中已經介紹過各種各樣的構圖,所以這里就不再介紹構圖,但是我們可以看看后期構圖對提升作品美學價值的作用。
上圖是一個框架式構圖案例,左圖是原圖,右圖是構圖調整后的圖。
圖中包含了兩個方面的修改,其一是圖像的裁剪,其二是色調的調整。原圖的大小是 6000×4000,高寬比為 2/3,調整后圖的大小是 3407×3824,高寬比為1.12,接近于 1:1,也就是正方形構圖。
在拍攝原圖的時候,筆者的重點是捕捉到舵手的神態與動作,同時在右側給出一定的留白顯示運動的方向,而在后期調整的時候筆者更想突出舵手的神態。因此將右側比較雜亂的背景剔除,利用船艙的邊緣從左上角至右下角進行了調整,利用船艙形成的框架來完成一個斜對角的框架式構圖的裁剪。同時,這是一幅紀實類的作品,因此筆者將其色調調整為黑白。
經過構圖調整后,作品更加干凈,主體更加得到了突出。
上圖是一個對比構圖案例,左圖是原圖,有圖是構圖調整后的圖。該圖包含了兩個方面的修改,其一是圖像的裁剪,其二是色調的調整。
原圖的大小是 6000×4000,高寬比為 2/3,調整后圖的大小是 4276×2455,高寬比為0.57,接近于 9:16,也就是電影寬屏的長寬比。
首先看裁剪,原圖的下半部基本被裁剪,右側也裁剪掉四分之一左右。經過裁剪后,圖像中的人物更大,而一些雜物已經被剔除。
再看色調調整,將原圖轉換為了黑白圖,此時整個圖像的對比度大大提升,藝術感和視覺沖擊力也增加。
經過構圖調整后,新的作品我將其命名為《獨行》,表現出了背著小包的人物行走在大背景下的渺小。
這里的兩個案例都是任意的長寬比,而實際上很多時候我們需要固定長寬比,常見的包括4:3,16:9,1:1等,如下圖展示了不同比例,大小,裁剪方式:
1.2 構圖的應用
自動構圖有許多的現實需求,如構圖推薦,圖像重匹配,縮略圖生成。
(1) 構圖推薦
學習基本的構圖原則雖然是很簡單的,但是也需要大量時間鍛煉,對于學習能力較差或者對新事物接受能力較慢的人來說,依然是一個難題。目前在索尼相機和一些攝影類軟件產品中會出現一個九宮格來輔助拍攝者進行構圖,如果有一款產品能夠在拍攝時指導拍攝者進行前后左右移動,相信會非常實用和受歡迎的。
(2) 圖像重匹配
很多的時候,我們需要將一個圖像,放到一個尺寸與其不匹配的地方,比如相機拍攝的照片,放置到各種移動設備,這需要改變分辨率、長寬比等,這個問題叫做圖像重匹配(Image Retargeting)。
在圖像重匹配的時候,我們會考慮兩個重要因素:
(1)原始圖像的重要信息必須要保留,重要主體不能被裁剪掉;
(2)要保存原始圖像的結構信息,如構圖風格,并且盡量保證目標比例。
(3) 縮略圖生成
所謂縮略圖即縮小尺寸的圖片或視頻,生成縮略圖通常是用于幫助識別和組織它們,在互聯網網頁中為圖像提供與普通文本索引相同的角色。縮略圖的生成可以看作是圖像重匹配問題的一種,如今在攝影App和視頻類App中都廣泛用于產生封面縮略圖。
下一節開始講述如何研究自動構圖這個問題,主要可以從兩個研究角度來看。一個是如何保留最重要的信息,所對應的問題就是顯著目標檢測。另一個是保留圖像的美學,所對應的問題就是基于美學的構圖。
2 基于顯著圖的自動構圖
首先我們來看基于顯著圖的自動構圖,包括數據集的特點以及研究方法。
2.1 顯著目標檢測數據集
所謂的顯著圖,就是一個 0~1的概率圖,其中亮度越大,代表該處的信息越重要,通常就是目標所在的位置。
有了顯著圖后,就可以基于顯著圖進行裁剪。如果將顯著圖的所有像素值的和當作能量,那設定一個閾值就可以裁剪出包含一定能量的最小外接矩形圖。
當前有許多的顯著目標數據集,其中 MIT300 數據集,Cat2000 數據集,SALICON 數據集比較經典,因為本質上差別不大,我們只介紹 MIT300 數據集。
MIT300 數據集是顯著目標檢測領域里非常通用的基準數據集,包括 300 張室內和室外場景圖,圖像最大尺寸是 1024px,最小尺寸是 457px,被采集者包括 39 個觀眾,年齡在 18-50 之間。采集時包括任意的視角,使用 ETL 400 ISCAN 以 240HZ 的頻率進行被采集者眼球的跟蹤,采集時間持續 3 秒。這個數據集只用于測試,因為沒有公開訓練標注文件。
上圖就是它的數據集示意圖,第一行是圖像,第二行是人眼注意力的地方,第三行就是轉換后的顯著圖標注。
2.2 顯著圖檢測方法
檢測顯著性區域的方法就被稱為視覺顯著性檢測(Visual Saliency Detection),這也算是一個比較成熟的領域了,早期的方法基于底層圖像特征,如Itti and Koch model。
現在則完全可以使用CNN模型來完成該任務,總體模型架構和圖像分割等任務相同,其中多尺度圖像和特征技術常被使用。
2.3 自動構圖方法
基于顯著圖的自動構圖方法是最早期用于自動構圖的方法,被稱為 Attention-Based的方法。它基于一個假設,圖像中最顯著的區域是照片中最重要的部分,我們應該保留這個最重要的部分而裁剪其他部分。
這類方法的目標就是研究如何用最小的剪裁窗口使得注意力(圖像顯著特性)總和最大化[1],注意力總和可以簡單定義為圖像所有像素值的和,它就是圖中的有效信息。
上圖展示了基于顯著圖的自動構圖標準流程,各類相關方法的差異主要在于如何獲得最小外接矩形,典型的見文[2],具體的方法本文不再贅述。
3 基于美學的自動構圖
接下來我們再看基于美學的自動構圖,包括數據集特點以及核心方法
3.1 數據集
(1) CUHK Cropping數據集
這個數據集由香港中文大學湯曉鷗實驗室發布,由經驗豐富的攝影師手動裁剪,共950張圖像。這 950 張圖像共包括 7 類圖像,其中animal(動物) 134 張,architecture(建筑) 136 張,human(人) 133 張,landscape(風景) 140 張,night(夜景) 136 張,plant(植物) 138 張,static(靜物) 133 張。
裁剪參數包括裁剪框的左上角和右下角的坐標,每一張圖有3個攝影師進行標注,一個標注案例如下。
animal\1116.jpg #文件名字
309 832 339 783 #第一個攝影師的裁剪,依次分別是左上角的x,y坐標,右下角的x,y坐標
1 1199 2 900 #第二個攝影師的裁剪,依次分別是左上角的x,y坐標,右下角的x,y坐標
157 1005 1 900 #第三個攝影師的裁剪,依次分別是左上角的x,y坐標,右下角的x,y坐標
下圖是一個原圖和裁剪案例。
(2) Flickr cropping數據集
研究人員首先從Flickr收集了31888張圖像,然后在亞馬遜標注平臺AMT上雇傭了工人來過濾掉不適當的圖像。剩下的圖像由一組攝影愛好者來進行裁剪,每一個圖像產生10個裁剪版本,然后送至AMT平臺供標注人員選擇好壞。
絕對的標注結果如下:
[
{
"url":"https://farm5.staticflickr.com/4096/4910188666_04cf9f487d_b.jpg",
"flickr_photo_id":4910188666,
"crop":[
266,
6,
757,
399
]
},
]
除此之外,還包含了相對的標注結果,也就是一張圖進行兩個裁剪標注,讓被試者選擇更喜歡哪一個,因此包括兩個標注crop0,crop1,vote_for_0和vote_for_1分別是被試者投票給第0個裁剪框和第1個裁剪框的結果,1表示有一個投票。
[
{
"url":"https://farm3.staticflickr.com/2946/15251367120_9bdca6b5c3_c.jpg",
"crops":[
{
"vote_for_1":1,
"vote_for_0":4,
"crop_1":[
171,
281,
300,
400
],
"crop_0":[
139,
234,
300,
400
]
},
],
"flickr_photo_id":15251367120
},
]
另外還有如CPCD數據集,感興趣讀者可以自行了解。
3.2 自動構圖方法
基于美學的構圖方法更加符合攝影師構圖的原理,它要求裁剪出美學質量分數更高的區域,因此關鍵就在于搜索區域的選擇,有幾個思路。
(1) 暴力搜索
暴力搜索法[3]是比較早的研究思路,它通過滑動窗口的方式獲取一系列的候選裁剪框,然后從中選擇美學分數最高的。這一類方法的問題就是效率太低,計算量太高,根本無法實際應用。
(2) 基于顯著圖預處理
暴力搜索的方法巨大的計算量來自于巨大的搜索空間以及后續帶來的美學評估的計算量,如果能夠減小搜索空間,減少不必要的美學評估的計算量,就可以大大提升效率。研究者提出與顯著圖檢測方法[4]進行融合就可以實現該目標,下圖是算法的基本流程。
首先訓練了一個顯著目標檢測網絡,使用它可以得到顯著目標區域的初始化框,在它的附近,就可以根據不同大小和比例得到一系列候選的裁剪框,然后用美學評分模塊進行評分。
(3) 基于強化學習的搜索法
候選框的選擇本質上是一個搜索問題,除了減小搜索空間,另一方面也可以使用更加高效的搜索方法,比如A2RL框架[5],使用增強學習更高效地搜索裁剪框。
相比上面的兩種方法,它需要更少的候選窗口與更少的運行時間,可以獲得任意尺度、位置、更精確的剪裁窗口。
[1] Ardizzone E, Bruno A, Mazzola G, et al. Saliency Based Image Cropping[C]. international conference on image analysis and processing, 2013: 773-782.
[2] Chen J, Bai G, Liang S, et al. Automatic Image Cropping: A Computational Complexity Study[C]// Computer Vision and Pattern Recognition. IEEE, 2016:507-515.
[3] Chen, Yi-Ling, Klopp, Jan, Sun, Min, et al. Learning to Compose with Professional Photographs on the Web[J].2017:37-45.
[4] Wang W, Shen J. Deep Cropping via Attention Box Prediction and Aesthetics Assessment[J]. 2017.
[5] Kaiqi Huang D L H W J Z. A2-RL: Aesthetics Aware Reinforcement Learning for Automatic Image Cropping[J].
構圖問題與美學問題一樣,雖然有一定的評判標準,但仍然是一個比較主觀的問題,不同的應用場景,不同的圖像類型,都有不同的研究維度,感興趣的讀者可以深入實踐。