论文链接:http://www.zijunwei.org/papers/cvpr18-photo-composition.pdf

代码及数据集链接:https://www3.cs.stonybrook.edu/~cvl/projects/wei2018goods/VPN_CVPR2018s.html

本文贡献

1.建立了一个大型数据集——Comparative Photo Composition (CPC) dataset;

2.提出了一个新颖的知识转移框架来训练基于锚框的实时VPN模型(view proposal model);

首先使用Siamese架构在视图对上训练一个视图评估模型,然后我们将这个模型作为一个老师来对各种图像上的候选锚盒进行评分,这些教师评分将视VPN训练为学生模型,以输出相同的锚框评分排名。为了训练学生,我们提出了平均两两误差(MPSE)损失。

VPN模型:以图像作为输入,并输出与预定义锚框列表相对应的分数。

训练View Proposal Networks

本文提出一个知识转移框架,在教师模型VEN(View Evaluation Net)的监督下将View Proposal Net(VPN)训练为学生模型。 VEN,它需要一个视图作为输入,并预测组成的分数,因此这可以直接在我们的CPC数据集训练。 为了转移知识,我们在给定图像的锚点框上运行VEN,然后使用预测的分数、新颖的平均成对平方误差(MPSE)损失训练VPN。

VPN:SSD+MultiBox

骨干网络是基于SSD(Conv9之后被截)的,在骨干网的顶部,我们添加了一个卷积层、一个平均池化层和一个全连接层,输出N个分数,对应于N个预定义的锚盒。我们通过在不同比例和长宽比的标准化图像上密集滑动来预先定义锚盒集,结果得到一组N = 895个预定义锚盒。

VEN:Siamese结构

我们采用Siamese结构训练VEN,Siamese结构是由两个共享权重的VEN组成,每个输出输入图像对中对应图像的分数。本文VEN是基于VGG16(在最后一个最大池化层之后截断)的,其中包含两个新的全连接(FC)层和一个新的输出层。由于我们的模型只输出一个排名分数,而不是1000多个类的概率分布,所以我们将FC层的通道分别减少到1024和512。

论文学习——《Good View Hunting: Learning Photo Composition from Dense View Pairs》的更多相关文章

  1. 深度学习概述教程--Deep Learning Overview

          引言         深度学习,即Deep Learning,是一种学习算法(Learning algorithm),亦是人工智能领域的一个重要分支.从快速发展到实际应用,短短几年时间里, ...

  2. 论文笔记(1):Deep Learning.

    论文笔记1:Deep Learning         2015年,深度学习三位大牛(Yann LeCun,Yoshua Bengio & Geoffrey Hinton),合作在Nature ...

  3. 强化学习之 免模型学习(model-free based learning)

    强化学习之 免模型学习(model-free based learning) ------ 蒙特卡罗强化学习 与 时序查分学习 ------ 部分节选自周志华老师的教材<机器学习> 由于现 ...

  4. Android(java)学习笔记95:Android原理揭秘系列之View、ViewGroup

    作过Android 应用开发的朋友都知道,Android的UI界面都是由View和ViewGroup及其派生类组合而成的.其中,View是所有UI组件的基类,而ViewGroup是容纳这些组件的容器, ...

  5. Python学习入门基础教程(learning Python)--5.6 Python读文件操作高级

    前文5.2节和5.4节分别就Python下读文件操作做了基础性讲述和提升性介绍,但是仍有些问题,比如在5.4节里涉及到一个多次读文件的问题,实际上我们还没有完全阐述完毕,下面这个图片的问题在哪呢? 问 ...

  6. 读论文系列:Deep transfer learning person re-identification

    读论文系列:Deep transfer learning person re-identification arxiv 2016 by Mengyue Geng, Yaowei Wang, Tao X ...

  7. 贝叶斯深度学习(bayesian deep learning)

      本文简单介绍什么是贝叶斯深度学习(bayesian deep learning),贝叶斯深度学习如何用来预测,贝叶斯深度学习和深度学习有什么区别.对于贝叶斯深度学习如何训练,本文只能大致给个介绍. ...

  8. Qt 学习之路 2(41):model/view 架构

    Qt 学习之路 2(41):model/view 架构 豆子 2013年1月23日 Qt 学习之路 2 50条评论 有时,我们的系统需要显示大量数据,比如从数据库中读取数据,以自己的方式显示在自己的应 ...

  9. Qt 学习之路 2(30):Graphics View Framework

    Qt 学习之路 2(30):Graphics View Framework 豆子 2012年12月11日 Qt 学习之路 2 27条评论 Graphics View 提供了一种接口,用于管理大量自定义 ...

随机推荐

  1. Python变量空间

    a==b的时候a和b指向同一个ID,然后a重新赋值后a指向另一个ID 那么这样的话,变量(a...)不就是数据空间"123"的引用了吗(其实在Python中这才是正确的说法)

  2. call和apply实现的继承

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  3. js异步处理

    一.什么是异步? 我们一般喜欢把异步和同步.并行拿出来比较,我以前的理解总是很模糊,总是生硬地记着“同步就是排队执行,异步就是一起执行”,现在一看,当初简直就是傻,所以我们第一步先把这三个概念搞清楚, ...

  4. 关于Puppeteer的那些事儿

    最近开始上手一个自动化测试工具Puppeteer,来谈一谈关于它的一些事儿. Puppeteer中文文档:https://zhaoqize.github.io/puppeteer-api-zh_CN/ ...

  5. offset 、 client 和 scroll - PC端网页特效

    1.元素偏移量  offset 系列 1.1 offset 就是偏移量,使用 offset 系列相关属性可以 动态 得到该元素的位置(偏移).大小等. 注意: 1.获得元素距离带有定位父元素的位置 2 ...

  6. 怎么进行代码审查(Code Review)

    代码审查的重要性 代码审查是熟悉软件架构,了解软件业务逻辑的好方法.学习代码是需要切入点的,一个上百万行代码的系统,从哪里开始着手?只能一个模块一个模块,一个组件一个组件的来熟悉,掌握.实现一个比较大 ...

  7. AtCoder ABC 131F Must Be Rectangular!

    题目链接:https://atcoder.jp/contests/abc131/tasks/abc131_f 转自博客:https://blog.csdn.net/qq_37656398/articl ...

  8. Qt 【遍历文件夹文件,为listwidgetItem设置图标】

    效果图如上,通过qt本身的api去获取文件夹中文件的信息并且将其显示到listwidget上.只遍历当前文件夹的文件, 若文件夹中的子文件夹含有符合筛选器的文件那么并不会一同筛选出来 参考百度:htt ...

  9. vue 实现分页

    1 新建 pager.js 文件 /** * [pagination 分页组件] * @param {Number} total [数据总条数] * @param {Number} display [ ...

  10. 八年技术加持,性能提升10倍,阿里云HBase 2.0首发商用

    摘要: 早在2010年开始,阿里巴巴集团开始研究并把HBase投入生产环境使用,从最初的淘宝历史交易记录,到蚂蚁安全风控数据存储,HBase在几代阿里专家的不懈努力下,已经表现得运行更稳定.性能更高效 ...