IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Traitement d'images Discussion :

Retrouver une matrice de convolution ?


Sujet :

Traitement d'images

  1. #1
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut Retrouver une matrice de convolution ?
    Salut à tous...
    J'ai une image, dégradée, et j'ai l'image originale. Ma question est simple, peut-on retrouver la matrice ayant dégradée l'image originale ?

    Merci d'avance de votre réponse

  2. #2
    Membre actif Avatar de ronan99999
    Inscrit en
    Juillet 2003
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Juillet 2003
    Messages : 279
    Points : 299
    Points
    299
    Par défaut
    Tu peux regarder à:
    Déconvolution
    Déconvolution et chaine de markov
    Filtre de Wiener je pense que ton cas c'est le plus adapté....

    Au fait au vu de tes précédents postes c'est pour un "deblocking filter"?

  3. #3
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    C'est vrai que tu as les 2 images, donc tu peux faire une transformée de Fourier sur les 2 car Y = H * X - l'image d'arrivée est la convolution de H et de l'image originale -, donc fY = fH fX - multiplication - et ça, c'est "assez" facile à récupérer

  4. #4
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    Disons que le filtre de Wiener était l'idée première que j'avais !
    Oui, en quelque sorte c'est pour un "deblocking filter", en fait, c'est pour améliorer une image qui contient des lignes rouges/bleues après numérisation.

    Le truc, c'est que j'essaie de trouver une matrice de correction, mais je crois que je vais devoir tâtonner...

    La TF, ouep, pourquoi pas, mais en dernier ressort

  5. #5
    Membre actif Avatar de ronan99999
    Inscrit en
    Juillet 2003
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Juillet 2003
    Messages : 279
    Points : 299
    Points
    299
    Par défaut
    Pour Wiener j'ai un lien pas mal:
    http://www4.utc.fr/~bm06/cours/5-filwien.pdf

    Sinon, on ne peut jamais se ramener à une déconvolution brute, ce serait considerer que la transformée de l'image de départ ne s'annule jamais.

    On se raméne en théorie toujours à un probléme de minimisation,
    on cherche f telque MIN(|conv(f,i)-j|²) sur le plan spatial <=> MIN(|F*I-J|²) sur le plan fréquentiel.

  6. #6
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Si le bruit est nul et que la matrice de convolution est correcte, on peut.

  7. #7
    Membre actif Avatar de ronan99999
    Inscrit en
    Juillet 2003
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Juillet 2003
    Messages : 279
    Points : 299
    Points
    299
    Par défaut
    Miles Peux-tu me donner plus de précision sur les conditions à poser sur f ça peut m'intéresser.

    Moi j'en suis rester à:
    //i image de départ
    //f ton filtre
    //j ton image bruitée
    conv(f,i) = j en fréquence F*I = J
    en considérant que I ne s'annule jamais F = J/I tu es obligé de poser E (epsilon), tel que E + I <> 0 , tu as F = J/(I+E).
    et du coup reformuler le probléme sous forme de minimisation.

  8. #8
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Dans un autre post, je me suis dit qu'il fallait que je réfléchisse un peu plus parfois, donc je sors, et je reviens
    Bon, naturellement, tu as raison, c'est pas sur F la condition

  9. #9
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    Du coup, j'ai une autre question, annexe, qui ne mérite probablement pas d'ouvrir une discussion...
    Comment mesurer objectivement la qualité d'une image ?
    Je sais qu'on peut le faire avec le rapport signal/bruit, mais pour cela, il faut avoir l'image sans bruit/déformation.

    Y a-t-il une autre mesure ?

  10. #10
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    La qualité d'une image ? Déjà là, c'est subjectif
    Il faut avoir un critère, le rapport signal/bruit en est un.

  11. #11
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    Disons, détecter de la distortion par exemple ?

  12. #12
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    Le plus dur, c'est de trouver des critères!!!!
    Certains critère simples donnent de bons résultats : l'histogramme
    * son étalement
    * ses variations d'amplitude...

    Pour le bruit,
    Certains bruits sont irréversibles : poivre et sel, filtrage médian... Donc c'est très difficile de remonter à la matrice!

  13. #13
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Citation Envoyé par progfou
    Disons, détecter de la distortion par exemple ?
    Compliqué aussi, comment tu définis un degré de distortion ?

  14. #14
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    Ce qui m'intéresse, dans un deuxième temps, c'est d'exploiter une image, retouchée de manière automatique pour éliminer des lignes gênantes (cf. un post je ne sais plus où dans le forum algo ), et vérifier, de manière automatique, qu'elle est visuellement acceptable.

    Si je fais l'intercorrélation entre l'image d'origine et l'image retouchée, quelle information j'obtiens ?

  15. #15
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    Citation Envoyé par progfou
    Si je fais l'intercorrélation entre l'image d'origine et l'image retouchée, quelle information j'obtiens ?
    Franchement??? Rien du tout !
    Sans connaissance en traitement du signal, ça va être difficile d'obtenir ce que tu veux...
    Surtout que tu t'attaques pas au plus simple!

  16. #16
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    J'ai des connaissances, mais en 1D surtout.
    Si j'en avais pas, je ne parlerais pas de corrélation .
    Je demande, ça m'évite de partir sur un truc qui sert à rien .

    Mais bon, ça ne résoud pas mon problème...

  17. #17
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    La corrélation ne va te donner qu'une information du type est-ce que les 2 images sont proches.

  18. #18
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    Ouep, c'est ce que je pense aussi, mais comme l'image de départ a juste des trucs "en trop", ça me permet de savoir si j'en suis loin...
    Et je je "floute" l'image obtenue après traitement, je sais qu'elle est presque meilleure.
    Mais bon, c'est flou .
    Est-ce que je peux me rapprocher de l'image "optimale" en utilisant ça ?
    En gros, l'image qui est entre l'image "juste" traitée et l'image traitée et floue ?

    J'essaie de m'expliquer, mais ce n'est pas simple...

  19. #19
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    En 1D, celà marcherait!!!!
    Le problème est comme tu le dis en 2D. Là ça va rien donner...
    Pourquoi? Parce que si ton image est en 8bits, tu vas trouver un produit sur toute l'image pour chaque pixel...
    A moins d'avoir fai tun seuillage avant, pour que les valeurs soient 0 ou 1, ça ne marchera pas...

    Si tu fais une autocorrélation entre deux images seuillées, tu vas trouver un pic à la valeur max en (0,0) (ou au centre de l'image ça dépend), et le reste va rester faible (ça dépend encore de l'image, car le produit d'une image par son image décalée n'est généralement pas 0). Autrement dit, tu n'as pas de relation d 'indépendance entre tes pixels!

    Faire une différence entre la somme de tous les pixels d'une autocorrélation et la somme de tous les pixels d'une intercoorélation te donnera peut être quelque chose, mais j'ai jamais éssayé!!!!

  20. #20
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    Citation Envoyé par Miles
    La corrélation ne va te donner qu'une information du type est-ce que les 2 images sont proches.
    Ben en fait non
    Moi aussi je pensais ça, mais c'est pas vrai en 2D...

    Si tu fais une corrélation entre une image blanche (255 partout en 8bits) et ton image de départ, tu vas trouver une très grande valeur de pic...

    Ce qu'il faut voir aussi, c'est la décroissance du pic (vers le dirac...).

    Celà dit, l'intercorrélation peut fournir quelques explications

Discussions similaires

  1. [PL/SQL] définir une matrice
    Par lalystar dans le forum Oracle
    Réponses: 5
    Dernier message: 22/02/2005, 16h27
  2. [JTable] remplir avec une matrice
    Par ybdz dans le forum Composants
    Réponses: 3
    Dernier message: 08/12/2004, 22h03
  3. Recherche des coefficients d'une matrice 3x3
    Par colorid dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 25/11/2004, 17h52
  4. Réponses: 3
    Dernier message: 03/02/2004, 18h34
  5. Déclarer une matrice
    Par joy dans le forum C
    Réponses: 7
    Dernier message: 09/12/2002, 01h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo