Je venais d'apprendre sur le domaine de fréquence dans les images.
Je peux comprendre le spectre de fréquences en cas de vagues. Il indique quelles fréquences sont présentes dans une onde. Si nous dessinons le spectre de fréquence de , nous obtenons un signal d’impulsion à et . Et nous pouvons utiliser les filtres correspondants pour extraire des informations particulières.- f + f
Mais que signifie spectre de fréquence dans le cas d'images? Lorsque nous prenons la FFT d'une image dans OpenCV, nous obtenons une image étrange. Que dénote cette image? Et quelle est son application?
J'ai lu des livres, mais ils donnent beaucoup d'équations mathématiques plutôt que leur implication physique. Quelqu'un peut-il donc fournir une explication simple du domaine fréquentiel dans les images avec une application simple dans le traitement d'images?
la source
Réponses:
Les "équations mathématiques" sont importantes, alors ne les sautez pas complètement. Mais la FFT 2d a aussi une interprétation intuitive. À titre d’illustration, j’ai calculé la FFT inverse de quelques exemples d’images:
Comme vous pouvez le constater, un seul pixel est défini dans le domaine de fréquence. Le résultat dans le domaine de l'image (je n'ai affiché que la partie réelle) est un "motif de cosinus en rotation" (la partie imaginaire serait le sinus correspondant).
Si je mets un pixel différent dans le domaine fréquentiel (à la bordure gauche):
Je reçois un modèle de fréquence 2d différent.
Si je mets plus d'un pixel dans le domaine de fréquence:
vous obtenez la somme de deux cosinus.
Donc, comme une onde 1d, qui peut être représentée comme une somme de sinus et de cosinus, toute image 2d peut être représentée (en termes généraux) comme une somme de "sinus et cosinus tournés", comme indiqué ci-dessus.
Il dénote les amplitudes et les fréquences des sinus / cosinus qui, une fois ajoutés, vous donneront l'image d'origine.
Il y en a vraiment trop pour les nommer tous. La corrélation et la convolution peuvent être calculées très efficacement à l'aide d'une FFT, mais il s'agit davantage d'une optimisation, vous ne "regardez" pas le résultat de la FFT pour cela. Il est utilisé pour la compression d'image, car les composants haute fréquence ne sont généralement que du bruit.
la source
InverseFourier
fonction de Mathematica . Octave / Matlab ne fait-il pas deifft2
même?Je pense que cela a été très bien présenté dans le bien connu "guide DSP" ( chapitre 24, section 5 ):
Il existe donc bien sûr une structure et une signification derrière le motif apparemment aléatoire obtenu en prenant la TFD d’une image typique (comme dans l’exemple ci-dessous), mais le cerveau humain n’est pas sous une forme que le cerveau est prêt à comprendre de manière intuitive. au moins en ce qui concerne la perception visuelle.
Voici un autre exposé intéressant et assez lisible de ce qui est contenu dans une transformation de Fourier d’une image et de la façon dont elle peut être interprétée. Il contient une série d’images qui montrent clairement la correspondance entre l’image transformée de Fourier et l’image originale.
edit: jetez également un coup d'oeil à cette page , qui montre - à la fin - comment la plupart des informations importantes sur le plan perceptuel d'une image sont stockées dans la composante phase (angle) de la représentation en fréquence.
Edit 2: un autre exemple de signification de phase et de magnitude dans la représentation de Fourier: "La section 3.4.1, Importance de la phase et de la magnitude" du manuel de la TU Delft " Principes de base du traitement de l'image " le montre bien:
la source
L'onde est une onde unidimensionnelle. cela ne dépend que de . L'onde est une onde bidimensionnelle. Cela dépend de et . Comme vous le voyez, vous avez deux fréquences, dans les deux sens.f(t)=cos(ωt) t f(x,y)=cos(ωx+ψy) x y
Par conséquent, la transformée de Fourier (FFT) de vous donnera , tout comme la FFT de vous donne . Et si votre entrée est une fonction qui additionne les cosinus 2D, votre FFT 2D correspond à la somme des fréquences de ces cosinus - encore une fois, un analogue direct de la FFT 1D.cos(ωx+ψy) ω,ψ cos(ωx) ω
la source
Il convient de noter que l’analyse de Fourier est un cas particulier d’un concept appelé fonctions orthogonales . L'idée de base est que vous décomposez un signal compliqué en une superposition linéaire de fonctions "de base" plus simples. Vous pouvez effectuer votre traitement ou votre analyse sur les fonctions de base, puis additionner les résultats des fonctions de base pour obtenir le résultat du signal d'origine.
Pour que cela fonctionne, il existe certaines exigences mathématiques pour les fonctions de base, c'est-à-dire qu'elles forment idéalement une base orthonormée. Dans le cas de la transformation de Fourier, les fonctions de base sont des exponentielles complexes. Cependant, de nombreuses autres fonctions peuvent également être utilisées.
la source
Dans les images, l'augmentation de la fréquence est associée à des transitions plus brusques de luminosité ou de couleur. De plus, le bruit est généralement intégré dans la partie haute du spectre, ce qui permet d'utiliser le filtrage passe-bas pour réduire le bruit.
la source
dans ce contexte une très belle démo: http://bigwww.epfl.ch/demo/basisfft/index.html
la source