HOG算法实验

  • 实验目的  

(1)能阐述方向梯度直方图的算法流程。

(2)能根据算法流程实现方向梯度直方图算法,并了解其原理。

(3)能应用方向梯度直方图算法进行行人检测。

  • 实验内容

概述:本实验将通过实现方向梯度直方图(HOG)算法来进行行人检测

具体内容如下

  1. 导入相关库并初始化
  2. 图像读取与预处理
  3. 生成特征向量descriptor
  4. 行人检测
  5. 检测结果显示

  • 实验器材

一台计算机具备基本图像处理能力,推荐配置为4GB RAM及以上

  • 实验步骤与结果

(需包含关键步骤及代码)

1.导入相关库并初始化

2. 图像读取与预处理

3. 生成特征向量descriptor

4. 行人检测

5. 检测结果显示

  • 实验总结
  1. 为什么要将图片转换为灰度图后再提取 HOG 特征?

灰度图只包含亮度信息,每个像素用一个值表示,而彩色图像(如RGB)需要三个值(R、G、B)。使用灰度图可以降低计算复杂度,因为HOG特征提取主要关注形状和边缘,而不是颜色信息。灰度图转换减少了处理的数据量,从而提升了特征提取的速度和效率

  1. cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 和 cv2.COLOR_RGB2GRAY 有什么区别?为什么选择 BGR?

cv2.COLOR_BGR2GRAY 是将BGR(蓝-绿-红)格式的图像转换为灰度图,而cv2.COLOR_RGB2GRAY 则是将RGB(红-绿-蓝)格式的图像转换为灰度图

选择 BGR 的原因:在OpenCV中,图像读取后的默认颜色格式为BGR

  1. winSize、blockSize、blockStride、cellSize 分别代表什么?它们之间有什么数学关系?

winSize:滑动窗口的大小,blockSize:一个块的大小,blockStride:块滑动的步长,cellSize:单个单元的大小;blockSize 必须大于 cellSize,而且 blockSize 应能被 cellSize 整除

  1. 尝试将 blockStride 从 (8,8) 改为 (16,16),观察特征维度有何变化?为什么?

会导致提取到的HOG特征数量减少,因为滑动窗口在图像上移动的距离更大,从而导致生成的块数减少,最终特征的维度也随之减少

较大的步长意味着特征计算区域不再重叠,减少了捕捉细节和特征的机会,从而导致较少的HOG特征被提取

5、如果将 nbins 改为 18(将梯度方向划分更细),会发生什么?特征量会变多还是变少?

梯度方向的划分将变得更细,特征量会增加

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值