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

Java Discussion :

Proximité entre deux images


Sujet :

Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Points : 121
    Points
    121
    Par défaut Proximité entre deux images
    Bonjour,

    Je recherche une librairie en Java qui permettent d'avoir la proximité entre deux images. Sachant que les images peuvent être centrées de manière différentes.

    Merci

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Qu'est-ce que tu appelles la proximité entre 2 images au juste ? Pour moi, la proximité est liée à une notion de position relative dans l'espace (ou le temps) : 2 images indépendantes n'ont pas (vraiment) de position, ou alors c'est 2 images dans une autre image.

    Est-ce que par proximité tu entends, une notion d'images qui se "ressemblent", c'est-à-dire qui représentent la même chose ? Encore faudrait-il définir cette notion de ressemblance (ce qui nous semble évident à nous humain n'a pas de sens pour une machine à qui il faut définir des critères (des fonctions) qui déterminent si ça se ressemble et à quel taux...).

    Pour le traitement et l'analyse d'images il y a ImageJ, mais ce n'est qu'un ensemble d'outils : je ne connais que de nom, mais je ne pense pas qu'il y ait une fonction toute faite qui permettrait de savoir si 2 images se ressemblent, justement parce qu'on peut définir beaucoup de critères différents de ressemblance (déjà par la notion de centrage dont tu parles, il y a un critère : se ressemble à une translation près (mais on considère que tous les pixels sont exactement les mêmes à la translation près). Mais ça peut être à une rotation ou une symétrie près, à une déformation particulière près, à un seuil de différence de couleur près, parce qu'il peut y avoir des différences de couleurs de pixels (en particulier si les images sont des photos) qui pour un test d'égalité donnera toujours false, alors que peut-être que si 10% des pixels ont une couleur différentes à moins de 3%, on considère que les images sont identiques, par exemple, etc. Mais on peut également définir que la ressemblance est validée si on a les mêmes objets sur les 2 images, mais pas avec la même couleur. Imagines même une comparaison de 2 photos d'une même personne, prise avec un fond différent : les images se ressemblent-elles ou pas ? Inversement, si tu regardes la fonction de recherche d'images de google, on peut avoir des résultats assez étonnant, à cause du choix des critères qui ont été faits pour ce moteur.

    Il est également nécessaire de définir quel type d'images : s'il s'agit de faire de la reconnaissance d'écriture, il existe des algorithmes plus ou moins efficaces (OCR) selon le type de caractères et d'écriture, et des APIs, mais s'il s'agit de photos, c'est un domaine différent (il y a même des APis spécialisées dans la reconnaissance de visage).

    Si c'est cette notion de ressemblance que tu cheches, peut-être que ce lien pourrait t'intéresser : http://www.lac.inpe.br/JIPCookbook/6050-howto-compareimages.jsp
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Points : 121
    Points
    121
    Par défaut
    Merci pour ta réponse, je vais préciser :
    C'est pour de la proximité entre des images d'articles politiques. Concrètement, un photographe officiel prend une photo et c'est après repris par des blogs, des journaux, etc. Le soucis c'est que certains les recadrent. Par contre il n'y a pas de rotation ou de déformation. Je dirais que parfois les passage JPG->PNG altèrent quelques caractéristiques mais ça n'est pas grand chose. Il me faudrait une proximité des images à partir du moment où on trouve un moyen de les superposer au mieux. L'idéal pour moi serais que l'algorithme sorte une note de proximité plutôt qu'un booléen.

    En tout cas je ne cherche pas à faire des trucs compliqués comme de la reconnaissance de visage ou d'écriture, une simple comparaisons de la couleurs des pixels est suffisantes mais sachant que j'ai tout de même cette problématique de la superposition incomplète.

    ImageJ a l'air très complet mais je ne vois rien qui puisse m'aider. L'article que tu m'as montré est pas mal mais le soucis est que le code est très simple (boucle for sur chaque pixel) et que compilatoirement ça va m’exposer mon truc. Je recherche plutôt une librairie ou une méthode qui fait cette opération de manière un peu maline et bien faite.

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Ceubex Voir le message
    ...que compilatoirement ça va m’exposer mon truc...
    Qu'est-ce que tu veux dire par là ?
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Points : 121
    Points
    121
    Par défaut
    Ben si je traite pixel par pixel mes 1000 images et que je les compare pixel par pixel à 1000 autres images, ça en fait des boucles. Ca prend longtemps quoi.
    Il doit y avoir des méthodes plus intelligentes pour ça

Discussions similaires

  1. [FLASH MX] Fondu entre deux images
    Par yanng dans le forum EDI/Outils
    Réponses: 4
    Dernier message: 06/04/2010, 09h33
  2. Calcul erreur entre deux images noir et blanc
    Par b4sols dans le forum Images
    Réponses: 1
    Dernier message: 22/03/2007, 08h59
  3. Compter pixels différents entre deux images
    Par hiccup dans le forum OpenGL
    Réponses: 5
    Dernier message: 13/03/2007, 14h26
  4. Différence entre deux images
    Par Mookie dans le forum 2D
    Réponses: 3
    Dernier message: 13/04/2006, 15h46
  5. [PIL] Difference entre deux images
    Par t_om84 dans le forum Calcul scientifique
    Réponses: 4
    Dernier message: 26/12/2005, 12h45

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