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

Algorithmes et structures de données Discussion :

Doublons dans les photos


Sujet :

Algorithmes et structures de données

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2002
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 23
    Points : 18
    Points
    18
    Par défaut Doublons dans les photos
    Bonjour,

    je suis à la recherche d'un algorithme ou d'une méthode qui me permette de détecter des doublons de photos dans une liste de photos en sachant que comme les Exif et IPTC on été changés, on ne peut pas se baser sur la taille de l'image.

    Pour le moment, j'aimerais déjà traiter les images 100% identiques, ensuite, les images qui ont juste été pivotées et enfin, si c'est possible, les images qui ont retouchées, redimensionner, ...

    Il existe un vieux soft qui fait ça -> mais il n'est vraiment pas ergonomique : pictagent.

    Merci d'avance pour vos réponses.

    A+

    Junior76

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    717
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 717
    Points : 858
    Points
    858
    Par défaut
    DupDetector fonctionne pas trop mal.

  3. #3
    Membre éclairé
    Avatar de mamelouk
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    867
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2005
    Messages : 867
    Points : 810
    Points
    810
    Par défaut
    salut,

    tu peut regarder du coté de l'indice Structural SIMilarity (SSIM), qui donne un pourcentage de ressemblance entre deux images. Après il comparer comparer chaque image à chaque autre, c'est donc factoriel! mais je ne vois pas comment faire autrement de toute facon

  4. #4
    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 : 45
    Localisation : Etats-Unis

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

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

    pour les images 100% identiques, une comparaison pixel à pixel doit marcher :p.

    Pour les autre, je me laisserai tenté par la signature polaire.
    Selon le type d'image, les gradients et transformé de Hough devraient également fonctionné.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2002
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 23
    Points : 18
    Points
    18
    Par défaut
    Merci pour vos réponse.

    J'ai regardé au niveau du SSIM, j'ai trouvé ça : http://l3iexp.univ-lr.fr/madonne/pub...drier2005a.pdf
    -> le pb, c'est qu'avec 10000 images ou plus on en finit plus.

    Je n'ai rien trouvé sur la signature polaire ?? Kesako ?

    La piste que j'ai : http://www.eisti.fr/~ga/download/TiPoly.pdf ne me mene pas bien lien pour la définition de l'algo.

    A+

    Junior76

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 118
    Points : 111
    Points
    111
    Par défaut
    Tu ptet aussi voir au niveau de la distance de Hausdorff. C'est une méthode qui compare deux ensembles de points. C'est donc à effectuer sur les contours de tes images. Ca marche pas trop mal, ça repère des formes semblables sans qu'elles soient identiques, et il est possible d'ajouter le redimensionnement et l'orientation, mais c'est assez couteux en calcul.

  7. #7
    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 : 45
    Localisation : Etats-Unis

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

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

    pour ce qui est signature polaire, regardes ces articles :
    - A New Template Matching Method for Vertebrae Contours Detection in X-ray Images : de M. Benjelloun and H. Téllez and S. Mahmoudi en 2006 dans Visualization, Imaging, and Image Processing
    - Classification des images ISAR pour la reconnaissance des cibles : de Abdelmalek Toumi and Brigitte Hoeltzener and Ali Khenchaf en 2006 dans XIIIème Rencontres de la Société Francophone de Classification (SFC)
    - Contribution à l'élargissement du champ applicatif des asservissements visuels 2D : de Christophe Collewet en 1999 , thèse de doctorat
    - Shape Descriptor using Polar Plot for Shape Recognition : de Brijesh Pillai.

    bon courage...

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 26
    Points : 29
    Points
    29
    Par défaut
    Des choses simples peuvent plus ou moins fonctionner aussi, comme par exemple la couleur moyenne de tous les pixels.

  9. #9
    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 : 45
    Localisation : Etats-Unis

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

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

    Citation Envoyé par PulkoMandy
    Des choses simples peuvent plus ou moins fonctionner aussi, comme par exemple la couleur moyenne de tous les pixels.
    C'est très risqué comme méthode et pas vraiment fiable car c'est au moins sensible au bruit. Il faudrait que les images soient vraiment toute identiques.

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 26
    Points : 29
    Points
    29
    Par défaut
    On peut au moins arriver à faire un pré-tri rapide avant d'envoyer les 10000 photos dans un vrai algo... avec une marge de tolérance suffisnte sur les couleurs trouvées bien sur
    Par contre ça risque de ne pas détecter deux images identiques si l'une est en couleurs et l'autre en niveaux de gris ...

  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
    Je pense, en quelques secondes de réflexion (par manque de temps je ne peux pas tester) à un détecteur de coins (Harris) associé à un test de texture.
    J'explique :
    1. Détecter les coins dans l'image I1 et dans l'image I2
    2. Pour chaque image, construire la matrice de co-occurence de la zone "encadrant" ce coin (par exemple, un carré 11x11 de centre le coin)
    3. Calculer le coefficient de corrélation sur ces zones (et la moyenne/variance)
    4. Si la différence est minime pour tout les coins (à définir), alors elles sont identiques


    Quelques précisions :
    La matrice de co-occurence sur l'image complète serait bien trop complexe à calculer (déjà, là, c'est pas de la tarte), mais calculer le coefficient de corrélation à partir de là est assez simple (pourquoi on ne peut pas mettre du code LaTeX dans ce forum ^_^).
    La condition évidente, est que le nombre de coin doit être le même dans les deux images. Ceci dit, si l'une des deux est très bruitée, on peut imaginer avoir un nombre différent, et à partir d'un bruit trop important, on n'y arrivera pas.
    Je suppose donc (c'est mon a priori) que les images sont issues d'un appareil numérique, et sont visuellement identiques pour nous (l'application étant la suppression de doublons photos).
    A partir de là, vérifier autour de ces coins que l'on a la même chose parait suffisant (eu égard à l'hypothèse ci-dessus).

    Il faut tester, je n'ai pas le temps.
    Ca me parait relativement peu coûteux, et assez robuste, à voir .

Discussions similaires

  1. [Débutant] - ManyToMany - Doublons dans les tables
    Par Hammer dans le forum Hibernate
    Réponses: 2
    Dernier message: 21/04/2010, 14h57
  2. Problème de doublons dans les librairies !
    Par saymon dans le forum ASP.NET
    Réponses: 5
    Dernier message: 24/03/2010, 13h24
  3. Eviter les doublons dans les aléatoires
    Par Gunner4902 dans le forum Langage
    Réponses: 4
    Dernier message: 13/12/2007, 13h49
  4. Ne pas obtenir de doublons dans les résultats.
    Par Premium dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 26/06/2007, 15h58
  5. [CR] doublon dans les valeurs
    Par Gaëtane dans le forum SAP Crystal Reports
    Réponses: 5
    Dernier message: 02/06/2004, 16h25

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