计算机如何学会自动裁剪图片(如何在电脑上裁剪图片)

小编:小丢 更新时间:2022-08-14

大家好,这是专栏《计算摄影》的第三篇文章,这一个专栏来自于计算机科学与摄影艺术的交叉学科。今天我们讨论的问题是图像的自动裁剪/自动构图问题。

作者&编辑 | 言有三

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].

总结

构图问题与美学问题一样,虽然有一定的评判标准,但仍然是一个比较主观的问题,不同的应用场景,不同的图像类型,都有不同的研究维度,感兴趣的读者可以深入实践。