用Hough投票做物体检测(续)

[论文阅读]VoteNet——基于深度 Hough 投票法的点云3D目标检测 VoteNet论文阅读 阅读详情

文献: Object Detection using a Max-Margin Hough Transform, CVPR 2009.

用最大化margin的方法学习出参与投票的部分的权重, 用优化工具CVX求解。流程图如下:

用Hough投票做物体检测(续) - 淮静 - 淮静的博客
 

文献:  Recognition using Regions, CVPR 09.

内容简介:提出了一个用区域来做物体检测、分割和分类的统一框架。具体地:对每幅图像产生a robust bag of overlaid regions,每个region用一系列特征表示;学习出每个region的权重;用a generalized Hough voting scheme来预测物体的位置、大小和类别,在做验证和分割。Bag of regions的示意图:

用Hough投票做物体检测(续) - 淮静 - 淮静的博客
 

 

投票,验证和分割过程的示意图:

用Hough投票做物体检测(续) - 淮静 - 淮静的博客

文献:Voting by Grouping Dependent Parts,ECCV 10。

内容简介:Hough投票方法的主要弱点是,用相互依赖的局部观测来独立的对物体的全局特征进行投票。也就是说忽略了特征之间的依赖关系。本文通过将依赖的部分分到一组来投票,解决这个问题。示意图:

创新点:

提出一个目标函数把相关的三个问题结合在一起:

Grouping: 把相互依赖的部分分到一组;

Correspondences: 相互依赖部分的对应问题(查询图像的特征和训练图像的特征之间的相似度);

Voting:用分好的组来找到一致的物体的假设。

算法细节:

算法流程和代价函数的三项

    如上图(a)示,算法流程为:计算边缘图像——在边缘图像上均匀采样,提取特征(geometric blur features)——把每个特征映射到训练集中与之相似的特征——把相关的点分到一个组,由整个组(而不是独立的点)来对物体的假设进行估计。

为了较好的分组,提出了三个代价函数,分别表征:训练图像和查询图像特征之间的一致性,分组变换的一致性,分组后投票的一致性。目标是让这三个代价函数的加权和最小。

代价函数的定义

Correspondences:通过最小化查询图像的第i个部分和训练图像的第j个码本的差异:

    表示第i个查询部分跟第j个训练码本匹配。采用K近邻,即一个查询特征对于很多训练特征,。

        Grouping:找到一个变换来最小化组内每个部分的失真度:

        Voting:惩罚组内投票的分散度:

(?)

        代价函数组合:

        所以,所有的查询部分i属于v组,并且与第j个训练部分相关的代价是:

联合优化和组的hough投票

我们使所有组的代价之和最小,来求解最好的分组方式,对应关系,变换,即:

联合优化和组的hough投票算法为:

其中式(14)为:

(?)

初始化分组的方法:如果边缘上的两点在同一个区域的边界上,则为一组。

验证:HOG特征的SVM分类器,用pyramid match kernels(PMK)。

 

————————————————————————————————————————————————————

文献:Discriminative Learning of Contour Fragments for Object Detection,BMVC 11。

内容简介:有判别性的学习轮廓片段描述子来做物体检测。

创新点:

    提出了新的形状片段描述子,把边缘上的点之间的关系用一个角度矩阵描述。

    判别性的学习:主要用hough 森林。

算法细节:

物体检测方法简介:用hough森林来判别性的训练局部边缘片段(分别代表新的片段描述矩阵,中心投票向量,类别);测试阶段匹配的描述子向特定的物体中心投票。

图1

片段的判别学习

  边缘检测和连接:用Berkeley edge detector检测边缘,并把边缘连接起来,组成一系列点的集合。由于边缘的连接方式对片段的获取影响很大。所以本文中,记:所有的点集为边缘(edges),所有提取出的边缘部分为片段(fragments)。定义所有的片段长度相同,有N个点。

  形状片段描述子:一个独立边缘包含一系列点,共个(而且),表示为:,所以这个边缘有 个片段描述子。每个片段我们定义N*N的描述矩阵,每个元素定义为点组成的线和与(这个片段的bounding box的左上角的点)组成的线的夹角:

  该描述子的优点:有判别性(类内方差小,类间方差大,见下图),减少了噪声(考虑多个点之间的关系而不是单独考虑各个点),对尺度变化的不变性、包含了方向信息,高效(事先计算像素之间所有可能的组合,存储在一个查询表——lookup-table,这个查询表的大小为,可以在常数时间内查询。)。  

 

 

 

 

 

                                           图2

  判别性的片段学习:用hough森林学习。

建树时,训练样本表示为(分别代表片段描述矩阵,类别,偏移向量),正例样本是bounding box内所有的边缘。二值测试时随机的减少类别不确定性和偏移量不确定性。

检测过程中,提取出边缘,计算它的个片段描述子,并且分类到特定树的叶子节点。

投票时,每个叶子节点都有中心投票向量 ,类别概率,在hough图像中对应位置增加 。最后对hough图像做高斯滤波,取局部最大作为物体中心。

  排序和确认

用已有的方法pyramid matching kernel (PMK),选择HOG特征,对图像中候选的一些位置排序,做确认。

问题

    1. 图1是不是只选择有弯曲的轮廓片段投票?

在描述子中并没有区别直线轮廓和弯曲轮廓。之所以弯曲轮廓投票,主要跟后面的hough森林有关。

理论上,如果一个特征能够走到叶子节点,并且该节点的类别纯度是1,则它一定来自物体,所以很具有判别性,应该投票。实际中,受噪声影响,可能还得考虑这个特征占总特征的比例。如果叶子节点的纯度高,并且走到该叶子节点的特征比例大,则这些特征就很具有判别性。

所以,图1中所画的弯曲轮廓应该是很具有判别性的轮廓片段,而直线轮廓则不太有判别性。

 

2. 该描述子对旋转变化不鲁棒。因为同一个边缘旋转后,它的bounding box 会发生变化,那么就会变。

 

3. 为什么本文的描述子效果好,后面hough投票时用hough 森林有什么好处?(本文的核心)

当一个fragment上的两点i和j比较近时,该描述子与链码(chain codes)没有本质区别。当i,j比较远时,该描述子很好的描述了点之间的空间关系,从而很好的描述了边缘的形状信息。

因为描述子遍历了fragment上的所有点,即把一个长度为N的fragment用一个N*N的矩阵进行描述,肯定有冗余。后面再用hough 森林投票,经过多个节点判别,实质上是起到了降维的作用。

VoteNet 的 Hough voting 是怎么产生的 前言 VoteNet 是一个3D 点云目标检测的一个模型,其中涉及Hough voting的概念,困惑了我好久,这里记录下我的理解。 如有错误,欢迎指正。 在VoteNet的源码中,涉及Hough voting的计算有两处: 在点云数据的label产生中,计算Hough voting的真实值 在网络的正向传播过程中,计算Hough voting的预测值 以下将通过这两个部分讲解Hough voting。 一、Hough voting真实值的计算 其源代码在votenet/sunrgbd/sun 阅读详情

相关推荐

Hough变换检测原理

1.前言 霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,它通过一种投票算法检测具有特定形状的物体。该过程在一个参数空间中通过计算累计结果的局部最大值得到一个符合该特定形状的集合作为霍夫变换结果。霍夫变换于1962年由Paul Hough 首次提出,后于1972年由Richard Duda和Peter Hart推广使用,经典霍夫变换用来检测图像中的直线,后来霍夫变换

沈春旭的博客 1万+

霍夫投票直观理解

聚合的作用可类比上文中的直线交点,即聚合空间中的点投票给了同一个目标。如果以顶点参数为做一条直线,即将这些直线变换到参数空间,那么这个定点对应参数空间中的一条直线。如果在参数空间中有两条直线相交于同一个点,那么说明对应的两个定点在同一条直线上。交点处直线越多,则原始空间中处于同一条直线的点的数量越多。位置得票越多,说明投票给这个位置的定点越多,并且这些定点处于同一条直线上。在参数空间中,坐标实际上与直线的斜率和截距一一对应,因此,参数空间中的每一个位置点都对应了原坐标空间中的一条直线。

叶子的博客 5028

【论文阅读】【三维目标检测】VoteNet:Deep Hough Voting for 3D Object Detection in Point Clouds

文章目录Hough VotingVoteNet网络结构Voting in Point CloudsObject Proposal and Classification from Votes实验思考 文章:Deep Hough Voting for 3D Object Detection in Point Clouds 2019CVPR Charles R. Qi 与 Kaiming He两位大佬的...

麒麒哈尔的博客 1万+

【毕业课题学习】6DOF物体识别及抓取-PCL点云处理(四)---Hough voting详解

#【毕业课题学习】6DOF物体识别及抓取-PCL点云处理(四)—Hough voting详解

qq_39139736的博客 6447

Hough变换 理解 & 直线检测、圆圈检测代码

Hough Transform:图像处理中的一种特征提取技术,它通过一种投票算法检测具有特定形状的物体。 Hough 变换于1962年由Paul Hough 首次提出,后于1972年由Richard Duda和Peter Hart推广使用。 经典霍夫变换用来检测图像中的直线,后来霍夫变换扩展到任意形状物体的识别,多为圆和椭圆。 Hough 变换运用两个坐标空间之间的变换,将在一个空间中具有相同形状的直线(或者曲线)映射到另一个坐标空间的一个点上形成峰值,从而把检测任意形状的问题转化为统计峰值问题。

今天你学习了吗? 942

MATLAB源代码:高效检测圆形物体基于Hough变换

在计算机视觉和图像处理领域,噪声是一种普遍存在的问题,它会严重影响图像质量和后续处理的准确性。因此,在进行圆形检测之前,图像去噪是不可或缺的预处理步骤。常见的去噪算法包括中值滤波、高斯滤波和双边滤波等。中值滤波通过将图像中的每个像素值替换为其邻域内所有像素值的中值来去除噪声。它特别适合去除椒盐噪声,对图像的边缘信息保护较好。然而,中值滤波可能无法完全去除高斯噪声,尤其是当噪声水平较高时。高斯滤波基于图像的高斯分布特性,通过卷积操作对图像进行平滑处理。

weixin_30951515的博客 1005

用Hough投票做物体检测的3篇文献

文献1:Combined Object Categorization and Segmentation with an Implicit Shape Model,ECCV 04 Workshop。 内容简介:用隐形状模型(Implicit Shape Model, ISM)把物体的检测和分割结合起来。 创新点: 用隐形状模型把物体的识别和分割结合起来,整合到同一个概率框架

chlele0105的专栏 1万+

图像处理之Hough变换检测直线

霍夫变换是一种特征检测(feature extraction),被广泛应用在图像分析(image analysis)、计算机视觉(computer vision)以及数位影像处理(digital image processing)。由RichardDuda和PeterHart在公元1972年发明,并称之为广义霍夫变换(generalizedHoughtransform),广义霍夫变换和更早前1962年的PaulHough的专利有关。

weixin_42491648的博客 2534

霍夫投票 Hough Voting

它源于经典的霍夫变换,通过建立“局部特征”与“全局属性”之间的映射关系,将一个困难的全局检测问题分解为许多简单的局部投票行为。理解霍夫投票,不仅是学习一个经典算法,更是掌握一种解决复杂问题的根本性思维工具。霍夫投票的思想被广泛应用于基于部件的物体检测模型中,其中最著名的就是 Felzenszwalb 提出的。本文将带你从经典的霍夫变换出发,逐步深入理解霍夫投票的原理、工作机制及其在现代计算机视觉中的应用。(部件的相对位置对不对)融合在了一起,最终在根物体的投票空间中产生一个高置信度的检测结果。

2401_83026894的博客 1036

PCL Houghing(霍夫投票)算法的实现

通过霍夫投票算法获得旋转平移矩阵

从原理图到GDSII:Virtuoso+Pcell实战避坑指南(以TSMC65nm振荡器为例)

本文以TSMC65nm工艺下的振荡器设计为例,详细解析了Virtuoso环境中Pcell的最佳实践方案,涵盖变量管理、版图设计、Calibre验证等关键环节。通过实战案例和避坑指南,帮助工程师高效完成从原理图到GDSII的转化,特别针对LVS验证和参数化单元设计提供了实用解决方案。

fff88的博客 899

9.霍夫变换:圆——介绍、用Hough检测圆、圆的Hough变换_1

目录 介绍 用Hough检测圆 圆的Hough变换 介绍 画好直线之后,记住,线是参数模型最简单的形式,现在我们来看看更复杂的东西,也就是圆。 这是圆的方程,其中 a 和 b 是中心,r 是半径: 现在我们假设半径已知。我们只需要找到这些点的位置。 这里有一个圆,在这个圆上有三个点,这里的蓝点: 那么,霍夫空间是什么呢? 因为通常有三个未知数,a b r,但是我告诉过你...

Tom的专栏 1万+

Windows 24H2下eNSP AR_40启动失败的终极修复指南

本文针对Windows 11 24H2更新后eNSP AR_40路由器启动失败的问题,提供了终极修复方案。核心在于解决系统强制虚拟化安全(VBS/Hyper-V)与老版模拟软件的兼容性冲突。指南详细介绍了安装关键系统更新KB5053656、精细调整Windows虚拟化功能以及后续排错步骤,帮助用户在24H2系统上稳定运行eNSP进行网络实验。

weixin_29233333的博客 507

图像的直线检测——霍夫变换(Hough transform)

定义: 霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,它将图像空间中的特征点映射到参数空间进行投票,通过检测累计结果的局部极值点得到一个符合某特定形状的点的集合。经典霍夫变换用来检测图像中的直线,后来霍夫变换扩展到任意形状物体的识别,多为圆和椭圆。它的抗噪声、抗形变能力较强。另一种直线提取的方法是对图像边缘点进行链码追踪,在得到的链码串中提取直线。 霍夫变换将在一个

ChuanjieZhu 3万+

AppStore逆向分析:从网络抓包到自动化模拟的完整实践

在移动应用生态中,理解客户端与服务器之间的通信协议是进行自动化测试、数据分析和系统集成的关键技术基础。通过分析网络请求与响应,可以深入理解认证、会话管理和数据交换的原理,这对于构建稳定的自动化流程至关重要。其技术价值在于能够实现合法场景下的流程模拟,例如应用元数据监控、沙盒环境测试或内部工具开发。在实际应用场景中,开发者常需处理登录态维持、请求签名验证及风控策略应对等挑战。本文聚焦于AppStore这一封闭生态,详细拆解了其登录、查询等核心环节的通信机制,并探讨了使用Python结合抓包工具进行安全逆向分析

weixin_42524171的博客 926

从零到一:3D-ResNet50在医学影像中的实战陷阱与避坑指南

本文深入探讨了3D-ResNet50在医学影像分类中的实战应用,重点解析了NIFTI数据预处理、小样本迁移学习陷阱及GPU显存优化等关键问题。通过分块加载、混合精度训练等技巧,有效解决了医学影像处理中的内存管理和性能挑战,为开发者提供了实用的避坑指南和优化策略。

weixin_29038345的博客 390

17. 直线检测、圆检测-hough变换

1.概述 Hough 变换(Hough Transform , HT)是由 Paul Hough 在 1962 年提出,通过将图像坐标变换到参数空间,来实现直线的拟合。其利用点和线之间的对偶特性,将图像坐标中的像素点通过空间转换关系变换到参数空间坐标系中。图像空间中一条直线上的所有点映射到参数空间中对应一个峰值点,通过统计参数空间中峰值点的坐标来代替图像中直线检测问题。 2. 原理 霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,它通过一种投票算法检测具有特定形状的物体。该过

sckobe的博客 1876

零基础入门篇③ PyCharm使用指南(个性化设置、开发必备插件、常用快捷键)

Python从入门到精通👉零基础入门篇③

hacker707的博客 4374
上一篇: 用Hough投票做物体检测的3篇文献
下一篇: 图像处理-线性滤波-1 基础(相关算子、卷积算子、边缘效应)
Savitch
博客等级 码龄16年 84粉丝 130原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值