DPM模型简单记录
这个模型思想很直观(有误),但是写的源码太难懂了(看的是release-3的版本,最接近Object Detection with Discriminatively Trained Part Based Models论文的实现)其实相似的论文还有一篇8页的A Discriminatively Trained, Multiscale, Deformable Part Model,建议先看8页的。参考博客1的格式,结合源码写写我对论文的理解(不一定对)。
Introduction
1.We describe an object detection system that represents highly variable objects using mixtures of multiscale deformable part models.
这句话就总结了算法的几个特点,mixtures指的是在代码中作者根据bounding box的长宽比进行均分,每一区间的长宽比的bbox训练出来的模型就是一个component。论文中提到两个概念叫rootfilter和partfilter感觉就是两个检测窗口的权重,更加具体来说root就是一个人,part可能是他的手、身体、头、肩膀等部分。partfilter是在图像进行放大下提取的HOG特征每维的权重,而rootfilter是原始尺寸下提取的HOG特征每维的权重,文中这样做是说rootfilter是捕捉全局的信息,而partfilter捕捉局部的信息。deformable指的是,文中对partfilter的位置有要求,比如要在rootfilter周边不能太远,甚至有上下文的要求,如果违背这些要求会带来变形上的cost。而整个score是由rootfilter的特征得分+partfilter的特征得分-变形cost。
2.Consider the problem of modeling the appearance of bicycles in photographs. People build bicycles of different types(e.g, mountain bike......) and view them in various pose(frontal versus side views).
这句话是作者说为什么要提出mixture models的原因。
3.

混合模型的得分是components的最大值。
Related Work
1.

这里说论文用了动态规划和distance transform来搜索part的位置,我的思想就是先根据VOC的bbox训练一个rootfilter,然后先检测出root的位置,再在root的周边搜索最优的part,具体怎么做还需要看看代码。
2.


这篇论文使用了hinge-loss即max(0, 1-yf(x)),分析这个函数时会发现:
当yf(x) >= 1: 1-yf(x) < 0, loss = 0
发现在这个优化目的下,优化是会往这个方向走,就是loss等于0的方向:此时y=1正例会有f(x) >= 1,当y=-1负例会有f(x) <= -1
然而在看代码的时候发现优化的方法是随机梯度下降,和SVM的SMO优化方法并没什么关系。这里就不明白,SVM是有约束的问题,而这篇论文我并没有看到约束条件,而且使用的优化方法是无约束的优化方法随机梯度下降。所以感觉作者应该是用这种marginal的形式去mining hard negatives,作者认为在 yf(x) < 1的那些难分的样本,需要移除容易分的样本加入难分的样本继续迭代。
1.什么是filter?

其实filter就是HOG特征的每一维的权重,如果不明白w和h和HOG的特征提取请看博客 http://mccormickml.com/2013/05/09/hog-person-detector-tutorial/
2.什么是Deformable Part Models


anchor的具体实现还等再看看代码。
博客1:http://zhangliliang.com/2014/09/01/paper-note-dpm/
http://stackoverflow.com/questions/32155724/gcc-c-c-mex-matlab-r2015-mac-os-x-with-openmp-doesnt-work
DPM模型简单记录的更多相关文章
- [Django]模型学习记录篇--基础
模型学习记录篇,仅仅自己学习时做的记录!!! 实现模型变更的三个步骤: 修改你的模型(在models.py文件中). 运行python manage.py makemigrations ,为这些修改创 ...
- JSP简单记录
JSP,全称是Java Server Page,是运行在服务器端的页面,是建立在Servlet规范的动态网页技术,JSP文件在第一次请求时,会被编译成Servlet,所以JSP也可以看成是运行中的Se ...
- 【FLUENT案例】02:DPM模型
1 引子1.1 案例描述1.2 学习目标1.3 模拟内容2 启动FLUENT并导入网格3 材料设置4 Cell Zones Conditions5 Calculate6 定义Injecions7 定义 ...
- OSG模型简单控制
OSG模型简单控制 转自:http://milkcu.sintune.net/blog/archives/1392673560.html 结点基本操作 添加结点 OSG中使用osg::Node和osg ...
- OpenCV安装配置的简单记录
在ubuntu16.04下安装OpenCV 2.4.11的简单记录 1. 安装cmake,执行$apt-get install cmake即可,cmake -version验证 2. 下载OpenCV ...
- 图像切割之(五)活动轮廓模型之Snake模型简单介绍
图像切割之(五)活动轮廓模型之Snake模型简单介绍 zouxy09@qq.com http://blog.csdn.net/zouxy09 在"图像切割之(一)概述"中咱们简单了 ...
- asp.net 简单记录请求的客户端和服务端 处理时间
最近项目需要简单记录一下 ajax客户端和服务端处理时间,服务端时间的思路是借用BeginRequest和EndRequest事件,为了不影响现有接口返回的数据格式,因此服务处理时间放在respons ...
- PHP 版本简单记录
PHP 版本简单记录 PHP 博物馆 http://museum.php.net/php5/ PHP 版本发布 https://secure.php.net/release ...
- 简单记录一次注入到shell
0x00 前言 帮朋友之前拿的一个站,有点久了没有完整截图,简单记录一下. 0x01 基础信息 操作系统:win 集成环境:phpstudy 端口开放:82,3306,3389 有phpmyadmin ...
随机推荐
- Android中webView和网页的交互
Android中webView和网页的交互 Android中webView跟网页的交互式通过JavaScript进行的.具体步骤: 1.创建JavaScript,在点击的时候调用JavaScript ...
- A new comer playing with Raspberry Pi 3B
there are some things to do for raspberry pi 3b for the first time: 1, connect pi with monitor/KB/mo ...
- VS2015 出现 .NETSystem.Runtime.Remoting.RemotingException: TCP 错误
错误内容: 界面显示内容为: .NET�������������System.Runtime.Remoting.RemotingException: TCP 淇¢亾鍗忚鍐茬獊: 搴斾负鎶ュご銆� 鍦 ...
- EZchip将推全球首款100核64位ARM A-53芯片
EZchip将推全球首款100核64位ARM A-53芯片 2015-02-25 16:32:03 来源:互联网 关键字: 将推 全球 64位 arm EZchip日前表示,将准备开发 ...
- vim 学习积累(一)
首先是简单的认识了三种状态(大家公认的说法是模式),分别是:插入,视图,和一般. 进入vim之后默认的是一般模式,这时直接使用'a', 'i', 'o'(也就是进入vim之后直接按下a/i/o键均可进 ...
- Unity3D 利用欧拉角实现实体的旋转
本文系作者原创,转载请注明出处 刚刚入门U3D,也是很多东西搞不懂,最先接触的就是自己尝试去获取键盘上的GetPress之类的事件了吧 官方的API DOC也是帮了不少忙,到处吸收了各位博主的文章也是 ...
- Docker--在Docker中运行应用
Docker--在Docker中运行应用 一个交互式的容器 既然在Docker提供的是一个容器,底层支撑着一个基本的操作系统环境,那我们就可以通过Docker进入到容器内部与系统进行交互. 据我理解: ...
- Laravel与Repository Pattern(仓库模式)
为什么要学习Repository Pattern(仓库模式) Repository 模式主要思想是建立一个数据操作代理层,把controller里的数据操作剥离出来,这样做有几个好处: 把数据处理逻辑 ...
- redux-observable笔记
欢迎指导与讨论:) 前言 本文不涉及深入的知识,只是在概念层面和一个简单的例子解释redux-observable的工作原理. redux-observable,是redux的一个中间件库.它能够自动 ...
- 微信H5中的一些坑
最近在写微信公众号H5页面 遇到了一些坑,在这里记录一下 记录一下signature的计算 // 首先找到hex_sha1的加密算法,ticket 是后端提供的 var url_local = loc ...