写点什么

深度学习自动构图研究报告

  • 2019-09-11
  • 本文字数:1803 字

    阅读完需:约 6 分钟

深度学习自动构图研究报告


今天带来基于深度学习的图像构图的研究报告,主要涉及了基于 CNN 的图像剪裁方法的研究现状、数据集的发展、以及现有应用。

什么是自动切图

我们在拍摄照片后,第一步要做的就是图像裁剪,也称为后期构图。构图,用于合理安排画面中的元素分布,提升照片的美感。


构图的自动化【1】既可以用于拍摄之前的构图推荐,也可以用于拍摄之后的自动调整,在许多的缩略图自动裁剪中也有用处,甚至用于自动拍照。


我在公众号和知乎的专栏中已经多次讲过计算机美学了,也介绍过现有的产品,所以这里不再过多赘述。下面我们说说计算机构图的原理。

计算机构图的研究方法

接下来我们从这 2 个方面来讲讲计算机构图算法的原理。

1.1 显著目标方法

【2-3】也称之为 Attention-Based 的方法,它基于一个假设,图像中最显著的区域即照片中最相关的部分,因此我们应该保留最相关的部分,而裁剪其他部分。



如上面左图 1,2 是显著目标概率图,裁剪的时候就在保留显著目标的同时,裁剪掉了其他部分。


这类方法的目标就是研究如何用最小的剪裁窗口使得注意力(图像显著特性)总和最大化,它缺少对图像构图准则以及美学质量的考量,可能会导致剪裁出来的图像不美观。因为已经不是主流研究方法,就不细细说明了。

1.2 美学方法

基于显著目标的方法不是现在的主流,而基于美学的方法更加符合摄影师构图的原理,它要求裁剪出美学质量分数更高的区域。



上图文【4】是比较早的研究思路,它通过滑动窗口的方法获取一系列的候选裁剪框,然后从中选择美学分数最高的。这一类方法的问题就是效率太低,计算量太高,根本无法实用。



文【5】提供了不同的思路,如上图。它训练了一个显著目标检测网络,可以得到显著目标区域的初始化框,在它的附近,就可以采用不同的大小和比例,获取一系列候选的裁剪框,网络如下。



训练了另一个美学评估网络,用于选取美学分数更高的裁剪框。由于这个方法,只需要 1 次特征提取,且两个网络共享了若干神经网络卷积层,大大提高了剪裁窗口获取的效率,网络如下。



文【6】使用增强学习来更高效地搜索裁剪框,网络结构如下。



相比上面的两种方法,它需要更少的候选窗口与更少的运行时间,可以获得任意尺度位置更精确的剪裁窗口。


最新的研究来自于 adode 2018 年[7]的文章。该文章包含了两个网络,一个是 view proposal network,用于提取候选框。另一个是 view evaluation net,用于从候选框中选择美学价值最高的,网络如下。



该文另一个贡献是整理了一个大型高质量的数据集,因为现有的数据集太小是限制研究的最主要原因。

数据集

下面介绍两个主要的数据集。

1.1 FCDB

FCDB【1】数据集是一个专门为图像剪裁而设计构建的数据集。这个数据集一共包含 1743 张经过人工标记剪裁窗口的图片与 34130 张与原始图像相匹配的剪裁图像对。数据集里的每张照片都从专业摄影照片分享社区 Flickr 上下载后经人工筛选得到,具有较高的美学特征与较好的构图。

1.2 CPC[7]

这是 adobe 整理的,包含 10800 张图,超过 1 million 的图像对,每一个图像对就是原图和它的裁剪图,他们会有相对美学的标注。为了保证分布的广泛性,不仅选择了专业的图片,也选择了日常生活中的图片。


另外还有一些小的数据集,不一一列举。

优化目标

怎么评估一个自动裁剪算法的好坏呢?下面介绍两个。

3.1 IoU


平均交叉区域 average intersection-over-union,这也是目标检测中使用的优化目标。上式中 N 为输入图片的总数,wig 为第 i 幅输入图像 ground truth 的窗口,wic 为不同方法剪裁出的第 i 幅输入图像的最优窗口,IoU 的值越大说明剪裁的最优窗口与 ground truth 的窗口越接近,即剪裁的效果越好。

3.2 平均边界位移


平均边界位移 average boundary displacement。上式中 N 为输入图片的总数,


big(l,r,u,d)为第 i 幅输入图像 ground truth 的窗口 4 条边与原图像对应边的距离,bic(l,r,u,d)为不同方法剪裁出的第 i 幅输入图像的最优窗口 4 条边与原图像对应边的距离,Disp 的值越小说明剪裁的最优窗口与 ground truth 的窗口越接近,即剪裁的效果越好。

总结

随着研究人员的活跃和数据集的增长,自动构图算法一定会在这几年得到快速的发展。


作者介绍


言有三,真名龙鹏,曾先后就职于奇虎 360AI 研究院、陌陌深度学习实验室,6 年多计算机视觉从业经验,拥有丰富的传统图像算法和深度学习图像项目经验,拥有技术公众号《有三 AI》,著有书籍《深度学习之图像识别:核心技术与案例实战》。


原文链接


https://mp.weixin.qq.com/s/eyIeLaBZ0f_EsxglsUuH8A


2019-09-11 20:313084

评论

发布
暂无评论
发现更多内容

使用 Vagrant + VirtualBox 虚拟机搭建TiDB v5.4 实验环境

TiDB 社区干货传送门

安装 & 部署

TiDB 6.1 新特性解读 | TiDB 6.1 MPP 实现窗口函数框架

TiDB 社区干货传送门

新版本/特性解读 6.x 实践

利用odbc连接oracle与tidb

TiDB 社区干货传送门

迁移 实践案例 数据库架构选型 应用适配 数据库连接

TiCDC 6.0 原理之 Sorter 演进

TiDB 社区干货传送门

TiDB 源码解读 6.x 实践

带你全面了解compaction 的13个问题

TiDB 社区干货传送门

TiDB 底层架构 数据库架构设计

Spring Cloud源码分析之Eureka篇第八章:服务注册名称的来历

程序员欣宸

Java spring SpringCloud Eureka 7月月更

OLTP 负载性能优化实践

TiDB 社区干货传送门

性能调优 OLTP 场景实践

TIDB监控升级解决panic的漫漫探索之路

TiDB 社区干货传送门

监控 实践案例 集群管理 故障排查/诊断 扩/缩容

让秒杀狂欢更从容:大促背后的数据库(下篇)

TiDB 社区干货传送门

ORACLE进阶(十三)using实现简化连接查询

No Silver Bullet

oracle 7月月更 using

MFC|自绘Static控件

中国好公民st

c++ 7月月更

TiDB VS MySQL

TiDB 社区干货传送门

分布式数据库 TiDB 6.0 集群保姆级安装手册

TiDB 社区干货传送门

6.x 实践

TiDB 之 TiCDC6.0 初体验

TiDB 社区干货传送门

迁移 安装 & 部署 6.x 实践

iOS中的多态

NewBoy

ios 前端 移动端 iOS 知识体系 7月月更

TiDB v6.0.0 DMR 源码阅读——缓存表

TiDB 社区干货传送门

TiDB 源码解读 新版本/特性解读 6.x 实践

Python|数据可视化——超星学习通助手后台数据的可视化处理

AXYZdong

Python 7月月更

TiSpark 3.0.0 新特性实践

TiDB 社区干货传送门

实践案例 新版本/特性发布 HTAP 场景实践 大数据场景实践

TiDB 6.1 单机环境 On openEular 2003 SP3

TiDB 社区干货传送门

实践案例 版本测评 应用适配 6.x 实践

TiDB 性能分析和优化

TiDB 社区干货传送门

性能调优

TiSpark v2.5 开发入门实践及 TiSpark v3.0.0 新功能解读

TiDB 社区干货传送门

6.x 实践

TiFlash 面向编译器的自动向量化加速

TiDB 社区干货传送门

性能调优 应用适配

麒麟v10上部署TiDBv5.1.2生产环境的最佳实践

TiDB 社区干货传送门

实践案例 安装 & 部署

Performance Overview 面板重要监控指标详解

TiDB 社区干货传送门

监控

基于 TiDB 场景式技术架构过程 - 理论篇

TiDB 社区干货传送门

数据库架构选型 数据库架构设计

TiFlash 源码解读(四) | TiFlash DDL 模块设计及实现分析

TiDB 社区干货传送门

文盘Rust -- 给程序加个日志

TiDB 社区干货传送门

开发语言

作用域与作用域链

是乃德也是Ned

JavaScript 前端 7月月更

TiDB 性能优化概述

TiDB 社区干货传送门

性能调优

tidb-dm报警DM_sync_process_exists_with_error排查

TiDB 社区干货传送门

故障排查/诊断

避坑指南 生产环境TiKV的IO-Util趋近100%问题定位

TiDB 社区干货传送门

集群管理 管理与运维 TiKV 底层架构

深度学习自动构图研究报告_AI&大模型_言有三_InfoQ精选文章