了解多尺度哈里斯角检测器中的积分尺度

信息处理 局部特征 哈里斯 角落 检测
2022-02-11 22:55:27

我想通过添加更多尺度来改进简单的哈里斯角检测器。

不需要尺度不变的兴趣点,只是为了通过处理更多尺度来检测更多点。

维基百科说有两个 sigma 涉及:一个衍生规模 σD整合规模 σI.

因此,在给定级别计算衍生图像后,我使用大小为高斯滤波器对它们进行平滑处理σD,然后对于每个位置(x,y)在图像中我有矩阵:

H(x,y)=(Ix2IxIyIxIyIy2)

在哪里IxIy是平滑的图像(与σD)在各自的位置。

如何应用集成量表σI现在?

我是否必须存储单独的图像Ix2,Iy2IxIy并用σI在计算矩阵和哈里斯角响应之前?

1个回答

我认为第一次平滑,由σD, 仅用于获得更稳定的导数,而在第二步中,高斯卷积与σI完成以建立应用运算符的“比例空间”。

忽略σD,这在 Matlab 中看起来像这样:

dx = [-1 0 1; -1 0 1; -1 0 1];  % Simple mask for derivative 
Ix = conv2(im, dx, 'same');     % Convolve against image
Iy = conv2(im, dx', 'same');    % Again for y-direction with transposed mask

% Gaussian filter, as defined by Kovesi
% www.csse.uwa.edu.au/~pk/Research/MatlabFns/index.html
sigma = 1;
g = fspecial('gaussian', max(1, fix(6*sigma)), sigma);  

% Determine smoothed squared image derivatives via convolution
Ix2 = conv2(Ix.^2, g, 'same'); 
Iy2 = conv2(Iy.^2, g, 'same');
Ixy = conv2(Ix.*Iy, g, 'same');

% Metric to define the corner score
cim = (Ix2.*Iy2 - Ixy.^2) - k*(Ix2 + Iy2).^2;    % Original measure
cim = (Ix2.*Iy2 - Ixy.^2)./(Ix2 + Iy2 + eps);    % Kovesi measure