这个模型思想很直观(有误),但是写的源码太难懂了(看的是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模型简单记录的更多相关文章

  1. [Django]模型学习记录篇--基础

    模型学习记录篇,仅仅自己学习时做的记录!!! 实现模型变更的三个步骤: 修改你的模型(在models.py文件中). 运行python manage.py makemigrations ,为这些修改创 ...

  2. JSP简单记录

    JSP,全称是Java Server Page,是运行在服务器端的页面,是建立在Servlet规范的动态网页技术,JSP文件在第一次请求时,会被编译成Servlet,所以JSP也可以看成是运行中的Se ...

  3. 【FLUENT案例】02:DPM模型

    1 引子1.1 案例描述1.2 学习目标1.3 模拟内容2 启动FLUENT并导入网格3 材料设置4 Cell Zones Conditions5 Calculate6 定义Injecions7 定义 ...

  4. OSG模型简单控制

    OSG模型简单控制 转自:http://milkcu.sintune.net/blog/archives/1392673560.html 结点基本操作 添加结点 OSG中使用osg::Node和osg ...

  5. OpenCV安装配置的简单记录

    在ubuntu16.04下安装OpenCV 2.4.11的简单记录 1. 安装cmake,执行$apt-get install cmake即可,cmake -version验证 2. 下载OpenCV ...

  6. 图像切割之(五)活动轮廓模型之Snake模型简单介绍

    图像切割之(五)活动轮廓模型之Snake模型简单介绍 zouxy09@qq.com http://blog.csdn.net/zouxy09 在"图像切割之(一)概述"中咱们简单了 ...

  7. asp.net 简单记录请求的客户端和服务端 处理时间

    最近项目需要简单记录一下 ajax客户端和服务端处理时间,服务端时间的思路是借用BeginRequest和EndRequest事件,为了不影响现有接口返回的数据格式,因此服务处理时间放在respons ...

  8. PHP 版本简单记录

    PHP 版本简单记录 PHP 博物馆         http://museum.php.net/php5/ PHP 版本发布       https://secure.php.net/release ...

  9. 简单记录一次注入到shell

    0x00 前言 帮朋友之前拿的一个站,有点久了没有完整截图,简单记录一下. 0x01 基础信息 操作系统:win 集成环境:phpstudy 端口开放:82,3306,3389 有phpmyadmin ...

随机推荐

  1. 实现下来ScrollView放大轮播图

    创建工程,创建一个UIScrollView属性,并遵循其协议: #define kWidth self.view.frame.size.width//屏幕宽 #define kHeight self. ...

  2. IT菜鸟的生存指南(三)流行还是经典

    经常被刚入行的新人请教,想学一门开发语言,最好又简单工资又高又有发展前途.那门语言最好这个话题能在程序员群里吵一下午,所以我也就不掀起战争了. 个人建议如下: 工资高不高不在于学那门语言,而在于你的行 ...

  3. Intellij idea 和android studio 代码给混淆

    Intellij idea 和android studio 代码给混淆 一.指令说明-optimizationpasses 5 # 指定代码的压缩级别 -dontusemixedcaseclassna ...

  4. 【代码笔记】iOS-验证手机号,邮箱,车牌号是否合法

    一,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. ...

  5. 1.2 - C#语言习惯 - 用运行时常量readonly而不是编译期常量const

    C#中有两种类型的常量:编译期常量和运行时常量.二者有着截然不同的行为,使用不当将会带来性能上或正确性上的问题. 这两个问题最好都不要发生,不过若难以同时避免的话,那么一个略微慢一些但能保证正确的程序 ...

  6. mysql select日期格式

    mysql表中datatime类型存储为2016-01-10,C#直接select 后,在datatable里面看,变成01/10/2016,需要还原回去,使用select DATE_FORMAT(列 ...

  7. Tensorflow 官方版教程中文版

    2015年11月9日,Google发布人工智能系统TensorFlow并宣布开源,同日,极客学院组织在线TensorFlow中文文档翻译.一个月后,30章文档全部翻译校对完成,上线并提供电子书下载,该 ...

  8. 【码在江湖】前端少侠的json故事(中)ng的json

    ng的json 正所谓"人在江湖,身不由己",在开发之路上前端少侠dk遇到过种种困难,尤其在与后端进行数据对接的时候,不得不逼迫自己以极快的速度去学习和掌握一些奇招怪式,正当他以为 ...

  9. 【转】XenServer架构之XAPI的调用流程

    XAPI 调用是使用XML-RPC协议通过网络发送到安装有XenServer 的主机上.XAPI对象的引用不保证对象的永久标识符,引用不允许对象进行相等比较.对同一物体的两个引用,不保证是文本相同的. ...

  10. 图像处理中任意核卷积(matlab中conv2函数)的快速实现。

    卷积其实是图像处理中最基本的操作,我们常见的一些算法比如:均值模糊.高斯模糊.锐化.Sobel.拉普拉斯.prewitt边缘检测等等一些和领域相关的算法,都可以通过卷积算法实现.只不过由于这些算法的卷 ...