Eu quero encontrar uma matriz de convolução para um determinado 2D do kernel .
Por exemplo, para imagem Img
de tamanho , desejo (em MATALB):
T * Img = reshape(conv2(Img, H, 'same'), [], 1);
Onde T
está a matriz de convolução e same
significa que a Forma da convolução (tamanho da saída) corresponde ao tamanho da entrada.
Teoricamente, H deve ser convertido em uma matriz toeplitz, estou usando a função MATLAB convmtx2()
:
T = convmtx2(H, m, n);
No entanto, T
é de tamanho pois o MATLAB convmtx2
gera uma matriz de convolução que corresponde à Forma de Convolução de full
.
Existe uma maneira de gerar a matriz de convolução que corresponda ao uso conv2()
com o same
parâmetro de forma de convolução?