在计算特征点的亚像素尺度时,有下面的两行代码,好久才理解
feat->scl = sigma * pow( 2.0, ddata->octv + intvl / intvls );
ddata->scl_octv = sigma * pow( 2.0, intvl / intvls );
ddata->scl_octv = sigma * pow( 2.0, intvl / intvls );
因为k=pow(2.0,1.0/intvls),
则两个octave之间的sigma刚好相差2的一次方,因此有pow( 2.0, ddata->octv + intvl / intvls );
sigma在计算gaussian金字塔的时候用到。寻找极值是在dog金字塔中的1..intvls层,注意不是0开始。
sigma在计算gaussian金字塔的时候用到。寻找极值是在dog金字塔中的1..intvls层,注意不是0开始。
这些地方视乎和Lowe论文中,k和sigma是实验取得的不完全一样。不过lingberg好像有篇论文讲的是如果自动选择scale,不知道是否和这个有关。
14万+

被折叠的 条评论
为什么被折叠?



