Je veux trouver une matrice de convolution pour un certain noyau 2D .
Par exemple, pour une image de taille , je veux (en MATALB):Img
T * Img = reshape(conv2(Img, H, 'same'), [], 1);
Où T
est la matrice de convolution et same
signifie que la forme de convolution (taille de sortie) correspond à la taille d'entrée.
Théoriquement, H devrait être converti en matrice toeplitz, j'utilise la fonction MATLAB convmtx2()
:
T = convmtx2(H, m, n);
Pourtant, il T
est de taille car MATLAB génère une matrice de convolution qui correspond à la forme de convolution de .convmtx2
full
Existe-t-il un moyen de générer la matrice de convolution qui correspond à l'utilisation conv2()
avec le same
paramètre de forme de convolution?