Je travaille sur une application de traitement d'image qui utilise une transformée de Fourier discrète pour implémenter le flou / la netteté. L'application fonctionne plus ou moins, mais quelque chose sur la mécanique me dérange toujours.
En particulier, c'est ainsi que se déroule le processus de centrage des fréquences nulles.
L'exemple que j'ai vu pré-traite l'image d'entrée (d'intensités de niveaux de gris) en la multipliant avec une matrice de taille égale à l'image d'entrée, dont les valeurs sont , où est la ligne, est la colonne, donc un motif alternant et
Selon les notes, cela équivaut à permuter les quadrants de la matrice en inversant les axes et .
Je comprends pourquoi cela est fait, et je tiens à souligner que je comprends que mon code / Fourier fonctionne, je ne comprends tout simplement pas pourquoi la multiplication de la matrice d'entrée par 1 / -1 finit par centrer la composante de fréquence zéro autour de 0.
Merci
. Sa transformée de Fourier ressemble à:
), il en résulte un seul point à droite au centre de la transformée de Fourier: 
. (Rappelons que nous n'avons pas encore fait notre rotation, donc le centre de la transformée de Fourier est toujours les hautes fréquences et les basses fréquences aux coins.) Mais c'est le "noyau de rotation!" La convolution avec ce noyau de rotation déplace tout vers le bas et vers la droite (mais les choses qui tombent en bas à droite tournent vers le haut à gauche.)
alors que la convolution image avec transformée de Fourier du noyau de rotation (dans le domaine de fréquence) vous donne: 
.
, qui a une transformée de Fourier: