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 :

Démarquage sur des images


Sujet :

Traitement d'images

  1. #1
    Membre éclairé Avatar de nicolas66
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 326
    Par défaut Démarquage sur des images
    Bonjour,

    Je possède un ensemble d'images JPEG auxquelles a été rajouté un grand masque presque transparent composé d'une lettre entourée. Le masque est à la même position sur l'ensemble des images.

    Mon problème est de trouver la fonction de mélange du masque (lettre noire entourée d'un cercle noir sur fond blanc) et de l'image originale. Une fois la fonction trouvée, il me faut trouver les bons paramètres afin de retrouver l'image originale.

    Par intuition, je me suis tout de suite dirigé vers un mélange linéaire de ce style : R(i, j) = a * A(i, j) + b * B(i, j). Sur une image, j'ai réussi à peu près à reconstruire le masque et revenir sur l'image originale. Mais mes résultats étaient plus mitigés sur d'autres images. Cela est aussi peut-être dû au format JPEG.

    D'où mes questions :
    * Par quelle(s) technique(s) puis-je trouver la fonction de mélange ?
    * Comment puis-je approximer au mieux les paramètres de la fonction de mélange ?
    * Comment quantifier le résultat sur l'image finale reconstruite ?

    Merci d'avance

  2. #2
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Par défaut
    Bonjour,

    Citation Envoyé par nicolas66 Voir le message
    Par intuition, je me suis tout de suite dirigé vers un mélange linéaire de ce style : R(i, j) = a * A(i, j) + b * B(i, j). Sur une image, j'ai réussi à peu près à reconstruire le masque et revenir sur l'image originale. Mais mes résultats étaient plus mitigés sur d'autres images. Cela est aussi peut-être dû au format JPEG.
    Cette formule ne vaut que si la fonction de mélange est bien linéaire !!! Il est probable que ce soit le cas, mais sans plus d'informations... Une fonction de mélange non linéaire pourrait expliquer que tu as des résultats mitigés.


    Citation Envoyé par nicolas66 Voir le message
    D'où mes questions :
    * Par quelle(s) technique(s) puis-je trouver la fonction de mélange ?
    * Comment puis-je approximer au mieux les paramètres de la fonction de mélange ?
    * Comment quantifier le résultat sur l'image finale reconstruite ?
    * 1 - Miroir oh mon beau miroir, dis moi...
    * 2 - Supposons que la fonction soit bien linéaire :pour chaque pixel où il y a le masque, tu as la formule R(i, j) = a * I(i, j) + b * M(i, j), or tu connais R(i,j) et M(i,j), il te reste donc à trouver les trois dernière valeurs I, a, b. Si ton masque fait N*N pixels, tu as un système sur-contraint de N*N équations à trois inconnues. Je te conseille d'utiliser les moindres carrés pour résoudre le problème.
    * 3 Tu viens de déterminer a, b, I, tu peux alors essayer de calculer le taux d'erreur : Somme{(i,j) dans Masque} |R(i,j) - a * I(i, j) + b * M(i, j)|. La somme des erreurs peut te donner une indication sur la qualité du résultat.
    Elle pourrat aussi et surtout te dire si la fonction de mélange est linéaire. Si tu vois que les erreurs sont trop grande, il est fort probable implique que la fonction de mélange n'est pas linéaire... Ce qui ne répond pas entièrement à la question 1, mais qui t'apporte des indications.
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

  3. #3
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par nicolas66 Voir le message
    Mais mes résultats étaient plus mitigés sur d'autres images. Cela est aussi peut-être dû au format JPEG.
    Oui, il y a des chances que la compression JPEG altere l'image.

    La pose du marquage a sans doute été faite sur l'image d'origine (png, bmp ou autre) puis convertie en JPEG. Donc, meme si la fonction de melange était linéaire, la conversion en JPEG a apportée des modifications en particulier dans les endroits avec un fort gradient (limite texte/fond).

    Tu peux nous poster une image "démarquée" qui pose probleme ?
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  4. #4
    Membre éclairé Avatar de nicolas66
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 326
    Par défaut
    @ToTo13
    Cette formule ne vaut que si la fonction de mélange est bien linéaire !!! Il est probable que ce soit le cas, mais sans plus d'informations... Une fonction de mélange non linéaire pourrait expliquer que tu as des résultats mitigés.
    Effectivement, j'avais pris pour hypothèse d'être dans un mélange linéaire. Mes résultats mitigés pourraient être expliqués par le fait que la fonction de mélange soit non linéaire mais aussi par le format des images et l'imprécision du paramètre a (en fait b est directement déductible et vaut b = 1 - a).

    * 1 - Miroir oh mon beau miroir, dis moi...
    Arf mince ca aurait été trop beau

    * 2 - Supposons que la fonction soit bien linéaire :pour chaque pixel où il y a le masque, tu as la formule R(i, j) = a * I(i, j) + b * M(i, j), or tu connais R(i,j) et M(i,j), il te reste donc à trouver les trois dernière valeurs I, a, b. Si ton masque fait N*N pixels, tu as un système sur-contraint de N*N équations à trois inconnues. Je te conseille d'utiliser les moindres carrés pour résoudre le problème.
    Je comprends que le système est surcontraint et possède N * M équations. En revanche, je ne comprends pas bien comment tu poses ton système pour pouvoir ensuite le résoudre par la méthode des moindres carrés.

    * 3 Tu viens de déterminer a, b, I, tu peux alors essayer de calculer le taux d'erreur : Somme{(i,j) dans Masque} |R(i,j) - a * I(i, j) + b * M(i, j)|.
    D'où vient le signe '-' ?

    La somme des erreurs peut te donner une indication sur la qualité du résultat. Elle pourrat aussi et surtout te dire si la fonction de mélange est linéaire. Si tu vois que les erreurs sont trop grande, il est fort probable implique que la fonction de mélange n'est pas linéaire... Ce qui ne répond pas entièrement à la question 1, mais qui t'apporte des indications.
    Ok donc si par hasard le mélange n'est pas linéaire, je devrai m'orienter vers d'autres fonctions, les tester et trouver les paramètres.


    @pseudocode
    Tu peux nous poster une image "démarquée" qui pose probleme ?
    Malheureusement non, les images sur lesquelles je travaille font parties d'un projet privé :/

  5. #5
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par nicolas66 Voir le message
    @pseudocode
    Malheureusement non, les images sur lesquelles je travaille font parties d'un projet privé :/
    Et tu peux pas nous en fabriquer une qui aurait les memes problemes ?

    Est-ce qu'on pourrait corriger les defauts restant après le démarquage par un simple inpainting ?
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  6. #6
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Par défaut
    bonjour,

    autant pour moi, il y a une erreur dans cette formule : Somme{(i,j) dans Masque} |R(i,j) - a * I(i, j) + b * M(i, j)|.
    La bonne formule est Somme{(i,j) dans Masque} |R(i,j) - (a * I(i, j) + b * M(i, j))| qui est l'ecart entre l'image résultat et l'interpolation.

    Pour les moindres carrés, si tu regardes la formules, tu t'apperçois que tu as deux possibilités pour les appliquer :
    - En faisant varier directement les coefficients et tu ajustes en fonction de l'erreur au "Moindres carrés", mais c'est un peu long et il faut souvent optimiser.
    - Tu utilises la forme matricielle des moindres carrés. De mémoire, tu considère ton système comme une matrice, tu la multiplie par sa transposée et tu résouds le système carré qu'il en résulte : http://lumimath.univ-mrs.fr/~jlm/cou...um/node32.html
    J'ai utilisé cette forme pour un problème de reconnaissance de forme et nous avons eus de bons résultats. Pour résoudre ton système il y a le pivot de Gauss, mais cela les coefficients, il est souvent un peu "léger", il faut alors utiliser une autre forme de résolution (dont j'ai malheureusement oublié le nom, mais en reposant la question dans le forum, ...). Voilà le lien vers le travail de TER que j'ai réalisé avec cette méthode : http://guillaume.thibault.perso.esil...echerches.html
    Ne regarde pas la forme générale du rapport, car c'était mon tout premier e avec le recul je le trouve mauvais, mais en revanche la méthode est dedans.


    Bonne continuation...
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

Discussions similaires

  1. superposition et action sur des images
    Par hamham dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 13/04/2007, 15h05
  2. Problèmes de droits sur des images
    Par bedford dans le forum Sécurité
    Réponses: 2
    Dernier message: 11/08/2006, 09h26
  3. Script sur des images
    Par philippe du web dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 07/06/2006, 22h50
  4. Histogramme sur des images 32 bits
    Par xxiemeciel dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 27/01/2006, 14h17
  5. Débutant travailler sur des images
    Par doud dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 15/08/2005, 15h47

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