| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> fhog学习笔记 -> 正文阅读 |
|
[人工智能]fhog学习笔记 |
fhog详解fhog是在hog基础上进行的优化。 假设F是一个大小为 w ? h w*h w?h 图像的像素级特征映射, k > 0 k>0 k>0是定义的 c e l l cell cell 的大小。通过像素级特征映射的空间聚合来得到基于 c e l l cell cell 的特征映射 C C C,记为: C ( i , j ) C(i,j) C(i,j)。其中 { 0 ≤ i ≤ [ ( w ? 1 ) / k ] } \{0\leq i\leq[(w-1)/k]\} {0≤i≤[(w?1)/k]}, { 0 ≤ j ≤ [ ( h ? 1 ) / k ] } \{0\leq j\leq[(h-1)/k]\} {0≤j≤[(h?1)/k]} 这种聚合可以使特征具有对微小形变的不变性,并可以减少特征映射尺寸。 最简单的聚合特征的方法是将像素 ( x , y ) (x,y) (x,y)映射到一个 c e l l cell cell 中( [ x / k ] , [ y / k ] [x/k], [y/k] [x/k],[y/k]),比如 k = 4 , x = 20 , y = 60 , x k = 5 , y k = 12 k=4,x=20,y=60,\frac{x}{k}=5,\frac{y}{k}=12 k=4,x=20,y=60,kx?=5,ky?=12,则像素 ( x , y ) (x,y) (x,y) 映射到 c e l l ( 5 , 12 ) cell(5,12) cell(5,12) 当中。 像素梯度幅值的统计办法以下图为例,图像左图是一个 3 × 3 3\times 3 3×3 个cell,假设每个cell是由 4 × 4 4\times 4 4×4 个像素组成。假设每个像素梯度幅值为 r ( i , j ) r(i,j) r(i,j)。但是论文中这个像素的梯度幅值,并不是直接等于这个像素位置计算出来的幅值,而是在相邻的四个cell对应位置按照影响按权重计算得来。此处的理解可以参考:opencv 学习笔记-入门(21)之三线性插值-hog(二)。比如下图,统计中间深棕色cell的网格状阴影像素梯度时,要就算它周围相邻cell对应位置上梯度,并做加权处理,才是此处的梯度。同理,斜纹阴影的四个像素的梯度幅值也是如此计算。 假如当前cell要计算的像素特征梯度为
r
(
i
+
0
,
j
+
1
)
r(i+0,j+1)
r(i+0,j+1) ,加号前面的值是该像素所在cell的坐标,简记为
r
i
,
j
r_{i,j}
ri,j?,周围相邻的四个cell对应位置像素梯度值记为
r
i
?
1
,
j
?
1
r_{i-1,j-1}
ri?1,j?1?,
r
i
?
1
,
j
r_{i-1,j}
ri?1,j?,
r
i
,
j
?
1
r_{i,j-1}
ri,j?1?。加权后,最后的像素梯度特征为:
w
1
?
r
i
?
1
,
j
?
1
+
w
2
?
r
i
?
1
,
j
?
w
2
?
r
i
,
j
?
1
?
w
2
?
r
i
,
j
w_1\cdot r_{i-1,j-1}+w_2\cdot r_{i-1,j}-w_2\cdot r_{i,j-1}-w_2\cdot r_{i,j}
w1??ri?1,j?1?+w2??ri?1,j??w2??ri,j?1??w2??ri,j?。 填充cell特征向量根据梯度幅角,填充cell特征向量。假设将 [ 0 ? π ] [0-\pi] [0?π] 区间分成9份,区间间隔 20°。每个cell有9维方向不敏感的维度值,再将 [ 0 ? 2 π ] [0-2\pi] [0?2π] 分成18份,区间间隔还是20°,分下来,每个cell又有18维方向敏感的维度值。这两者加起来,共有27个维度。设 cell 标记为 C ( i , j ) C(i,j) C(i,j) ,是一个9+27维特征向量,如上图。 1.3 Normalization and Truncation梯度对偏置改变具有不变性,这种不变性是通过归一化获得的。 作者使用了四种不同的归一化因子,记为:
N
δ
,
r
(
i
,
j
)
N_{\delta ,r}(i,j)
Nδ,r?(i,j) 其中
δ
,
r
?
{
?
1
,
1
}
\delta ,r \quad\epsilon\begin{Bmatrix} -1,1\end{Bmatrix}
δ,r?{?1,1?},定义如下:
[
N
?
1
,
?
1
(
i
,
j
)
=
(
∣
∣
C
(
i
,
j
)
∣
∣
2
+
∣
∣
C
(
i
?
1
,
j
)
∣
∣
2
+
∣
∣
C
(
i
?
1
,
j
?
1
)
∣
∣
2
+
∣
∣
C
(
i
,
j
?
1
)
∣
∣
2
)
1
/
2
N
+
1
,
?
1
(
i
,
j
)
=
(
∣
∣
C
(
i
,
j
)
∣
∣
2
+
∣
∣
C
(
i
+
1
,
j
)
∣
∣
2
+
∣
∣
C
(
i
+
1
,
j
?
1
)
∣
∣
2
+
∣
∣
C
(
i
,
j
?
1
)
∣
∣
2
)
1
/
2
N
+
1
,
+
1
(
i
,
j
)
=
(
∣
∣
C
(
i
,
j
)
∣
∣
2
+
∣
∣
C
(
i
+
1
,
j
)
∣
∣
2
+
∣
∣
C
(
i
+
1
,
j
+
1
)
∣
∣
2
+
∣
∣
C
(
i
,
j
+
1
)
∣
∣
2
)
1
/
2
N
?
1
,
+
1
(
i
,
j
)
=
(
∣
∣
C
(
i
,
j
)
∣
∣
2
+
∣
∣
C
(
i
?
1
,
j
)
∣
∣
2
+
∣
∣
C
(
i
?
1
,
j
+
1
)
∣
∣
2
+
∣
∣
C
(
i
,
j
+
1
)
∣
∣
2
)
1
/
2
]
\begin{bmatrix}N_{-1 ,-1}(i,j)=(||C(i,j)||^2+||C(i-1,j)||^2+||C(i-1,j-1)||^2+||C(i,j-1)||^2)^{1/2}\\N_{+1 ,-1}(i,j)=(||C(i,j)||^2+||C(i+1,j)||^2+||C(i+1,j-1)||^2+||C(i,j-1)||^2)^{1/2}\\N_{+1 ,+1}(i,j)=(||C(i,j)||^2+||C(i+1,j)||^2+||C(i+1,j+1)||^2+||C(i,j+1)||^2)^{1/2}\\N_{-1 ,+1}(i,j)=(||C(i,j)||^2+||C(i-1,j)||^2+||C(i-1,j+1)||^2+||C(i,j+1)||^2)^{1/2}\end{bmatrix}
?????N?1,?1?(i,j)=(∣∣C(i,j)∣∣2+∣∣C(i?1,j)∣∣2+∣∣C(i?1,j?1)∣∣2+∣∣C(i,j?1)∣∣2)1/2N+1,?1?(i,j)=(∣∣C(i,j)∣∣2+∣∣C(i+1,j)∣∣2+∣∣C(i+1,j?1)∣∣2+∣∣C(i,j?1)∣∣2)1/2N+1,+1?(i,j)=(∣∣C(i,j)∣∣2+∣∣C(i+1,j)∣∣2+∣∣C(i+1,j+1)∣∣2+∣∣C(i,j+1)∣∣2)1/2N?1,+1?(i,j)=(∣∣C(i,j)∣∣2+∣∣C(i?1,j)∣∣2+∣∣C(i?1,j+1)∣∣2+∣∣C(i,j+1)∣∣2)1/2??????
H ( i , j ) H(i,j) H(i,j) 的形式如下(左图)所示,右图为将各列串联起来,形成一条长向量(36维)。 图像可以转化成如下图所示,正面窗格表示一个cell。整幅图像根据cell大小,分为 m × n m\times n m×n 个cell,图像维度为: m × n × 36 m\times n\times 36 m×n×36: 一幅图像,可以看成是 m × n m\times n m×n 个36维向量,整体向量维度还是很大,所以要通过PCA进行降维处理。 PCA的解释可以参考:【机器学习】降维——PCA(非常详细) 将36维数据组成的矩阵中,找到若干个(小于36维)向量可以表示这36维数据,而整体的损失还比较小。 这里,原论文的作者通过大量的图片试验,发现大概取前11(也有说12)特征向量,就可以表示所有的36维数据。 这个图就是将原有的36维数据,按PCA方法处理后,生成36个特征向量,按特征值从大到小排列的特征向量如下: 前面几个特征值大的特征向量,其形状有固定规律,都是由横条或者竖条组成。横条或竖条上的点,数值基本相近,因此作者提出用性质相近的点求和后,作为特征向量的一维,因此生成了横向和4个,纵向和9个,共13个数,这13个数排成一列,组成了新的向量。作者认为,这样生成的13维向量,可以代表特征值最大的前几个特征向量,进而可以表示整个数据。所以数据由36维降到了13维,如下图所示 假设这个36维向量为
X
=
[
x
1
,
?
?
,
x
3
6
]
T
X=[x_1,\cdots,x_36]^T
X=[x1?,?,x3?6]T,转成13维向量方式如下: fhog特征融合入相关滤波之中这段是参考 FHOG 无论是训练还是检测都用到核相关矩阵,所以hog特征的融合主要是在这个过程中进行的。 ④ 然后在用和相关矩阵的计算公式进行计算 :
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 18:31:36- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |