论文链接: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. 学习笔记-es5新增的一些数组的API(不全)-字符串-字符串API(不全)

    ### es5新增的数组的api + indexOf() 搜索数组中的元素,并返回它所在的位置. arr.indexOf(str,index) 参数: str为要查找的字符串 index为开始查找的下 ...

  2. Android多线程:深入分析 Handler机制源码(二)

    前言 在Android开发的多线程应用场景中,Handler机制十分常用 接下来,深入分析 Handler机制的源码,希望加深理解 目录 1. Handler 机制简介 定义一套 Android 消息 ...

  3. 【知识强化】第五章 输入/输出(I/O)管理 5.2 I/O核心子系统I

    学习I/O核心子系统相关的一系列功能. 设备独立性软件.设备驱动程序.中断处理程序这三层其实是属于操作系统的内核部分的,所以它们也称作“I/O核心子系统”,又可以简称为“I/O系统”.在考研当中我们需 ...

  4. Android蓝牙自动配对Demo,亲测好使!!!(转)

    蓝牙自动配对,即搜索到其它蓝牙设备之后直接进行配对,不需要弹出配对确认框或者密钥输入框. 转载请注明出处http://blog.csdn.net/qq_25827845/article/details ...

  5. koa 中间件 koa-art-template 的使用

    例子 const Koa = require('koa'); const render =require('koa-art-template'); const path= require('path' ...

  6. CF566E Restoring Map

    题意:乱序给你树上的每一个节点与之相距<=2的节点集合(并不知道这具体是哪个节点). 还原整棵树. 标程: #include<bits/stdc++.h> #define P pai ...

  7. spring 结合 redis 例子 (转)

    好了费话不多说了,介绍下spring 结合redis是怎么操作数据的 这里我用了maven管理,由于简单嘛,依赖下包就行了..不用单独去依赖包,成了我的习惯 好了,下面是pom的代码 <proj ...

  8. springcloud feign增加熔断器Hystrix

    1.依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>s ...

  9. HTML5 原生API input file 来实现多图上传,并大图预览

    闲来无事,突然想用原生来实现图片的多图上传. 一.效果图大致如下: 1.上传时可以选择多图 2.上传之后缩略图下过图如下: 3.点击缩略图,大图展示当前所点击的图片,并可以左右滑动查看其它的缩略图对应 ...

  10. Vue学习笔记【19】——Vue中的动画(使用第三方 CSS 动画库)

    导入动画类库:  <link rel="stylesheet" type="text/css" href="./lib/animate.css& ...