Dans le cadre d'un devoir, nous implémentons le filtre inverse. Dégrade une image puis récupère avec un filtre inverse.
Je convolue l'image dans le domaine spatial avec un filtre box 5x5. Je FFT le filtre, FFT l'image dégradée, puis divise l'image dégradée par le filtre. Inverse FFT le résultat dans une image et je reçois des ordures.
Si je FFT l'image, FFT le filtre, multipliez les deux, divisez ce résultat par le filtre FFT, évidemment je me rapproche beaucoup de l'image d'origine. ((X * Y) / Y ~ == X)
J'ai une idée que les maths ne sont pas aussi simples que "multiplication spatialement convoquée == FFT".
Quelle est la bonne façon d'utiliser le filtre inverse? J'ai le noyau exact utilisé dégrader l'image. Je n'ajoute aucun bruit.
Le manuel de Bovik, The Essential Guide to Image Processing, rejette presque complètement le filtre inverse. Gonzalez & Woods est un peu plus optimiste mais passe presque immédiatement au filtre Wiener.
J'ai une question similaire sur stackoverflow.com /programming/7930803/inverse-filter-of-spatially-convolved-versus-frequency-convolved-image
(Ces questions devraient également être étiquetées [devoirs] mais la balise n'existe pas encore et je n'ai pas le représentant pour la créer.)
ÉDITER. Pour quelques-unes des excellentes suggestions ci-dessous. @ dipan-mehta Avant de faire un FFT, je remplis le noyau de convolution à la même taille que l'image. Je mets le noyau en haut à gauche. Je ifft (ifftshift ()) puis enregistre sur une image et j'obtiens un bon résultat. J'ai fait l'ifft (ifftshift ()) sur le noyau et l'image. Bons résultats (ish). (Les images sont dans ma /programming/7930803/inverse-filter-of-spatially-convolved-versus-frequency-convolved-image question.)
@ jason-r est probablement correct. Je ne comprends pas les mathématiques de la convolution + transformation sous-jacente. "Déconvolution" était un nouveau mot pour moi. J'ai encore beaucoup à apprendre. Merci pour l'aide!
Ma solution pour le devoir est de tout faire dans le domaine fréquentiel. J'ai parlé avec le professeur. Je rendais la tâche plus difficile que nécessaire. Elle voulait que nous ajoutions du bruit, puis essayions le filtre inverse, le filtre de Wiener et le filtre des moindres carrés contraints. Le but de l'exercice était de voir comment les filtres géraient le bruit.