Partage
  • Partager sur Facebook
  • Partager sur Twitter

Meilleur match d'image BDD >500k entrées?

[Deep learning][Computer vision][Python]

    17 mai 2017 à 21:46:18

    Hello la communauté,

    J'écris ce poste aujourd'hui car j'ai besoin d'aide pour m'orienter par rapport au vaste sujet qu'est le deep learning.

    En effet je réalise actuellement une application Android qui a pour but de trouver l'image la plus similaire à une autre dans une très grande base de donnée (>500k entrées). Prenons pour exemple une base de donnée contenant toutes les pochettes de jeux vidéo (en image avec des autres propriétés intéressantes) au monde. Le but serait que l'utilisateur prenne une photo avec son smartphone, envoi la photo vers une API et l'API se chargerait de trouver les pochettes les plus similaires dans sa base de donnée.

    De ce que j'en comprend, l'idée serait de traité en avant toutes les images de pochettes et en extraire des signatures (histogrammes,...). Une fois la photo prise, il suffirait de faire de même pour celle-ci et d'ensuite procéder à une recherche pour trouver la pochette qui à la signature la plus proche.

    Je regarde pour le moment du côté de Keras, Tensorflow, Theanos, OpenCV, Caffe,...


    Etant novice avec Computer vision et le deep learning, je ne sais pas trop vers quoi m'orienter. Le sujet étant très large et complexe, je fais appel a cette communauté pour gagner du temps en choisissant les sujets les plus pertinents.

    Si vous avez des conseilles à me donner voir un procédé exacte à suivre je vous serai très reconnaissant. Pour information, je travaille avec Python, l'API est en Django et l'application revoit déjà les photos.

    Merci! 

    -
    Edité par Elivard 19 mai 2017 à 16:28:23

    • Partager sur Facebook
    • Partager sur Twitter
      18 mai 2017 à 15:41:56

      Une technique simple est de dégrader les images et ensuite de comparer les formes obtenues, ces peut coûteux en ressources et "pas trop dur" à mettre en place, ensuite il te suffit de calculer le nombre de forme reconnus et leur position par rapport au donnée de ton images maître.

      Il s'agit de la technique du pauvre qui offre une qualité de reconnaissance moyenne.

      Après la reconnaissance d'image est quelque chose de très complexe, tu à peu de chance de trouver réponse sur OC.

      • Partager sur Facebook
      • Partager sur Twitter
        19 mai 2017 à 10:55:46

        Merci pour ta réponse et ton idée qui me semble avoir du sens (sauf pour les détails peut-être), je pense aussi que la communauté OC n'est peut être pas assez professionnelle que pour répondre à ce genre de question mais pense quand même qu'elle pourrait m'apporter un début de réponse/orientation avant de switcher vers un canal plus spécialisé comme Stackoverflow.
        • Partager sur Facebook
        • Partager sur Twitter
          22 mai 2017 à 10:14:11

          Il existe une autre alternative, mais dans ton cas de jaquette, je pense que cela ne sera pas vraisemblablement utilise, en gros cela reprend le principe au dessus, mais au lieu de juste détériorer l'image, tu propose un nombre de filtre paramétrable et un plusieurs algorithme de traitement et tu fait tester tout les variantes à ton programme pour l’entraîner et voir quelle combinaison de filtres et algorithmes, sont le plus enclin à traiter telle genre d'image.

          Après pour que cette solution fonctionne, il faut énormément de donner et le développement est assez complexe.

          Sinon tu peu voir de se coter:

          http://benjaminbillet.fr/blog/index.php?article1/detection-images-similaires

          • Partager sur Facebook
          • Partager sur Twitter
            22 mai 2017 à 12:54:47

            florent m a écrit:

            Il existe une autre alternative, mais dans ton cas de jaquette, je pense que cela ne sera pas vraisemblablement utilise, en gros cela reprend le principe au dessus, mais au lieu de juste détériorer l'image, tu propose un nombre de filtre paramétrable et un plusieurs algorithme de traitement et tu fait tester tout les variantes à ton programme pour l’entraîner et voir quelle combinaison de filtres et algorithmes, sont le plus enclin à traiter telle genre d'image.

            Après pour que cette solution fonctionne, il faut énormément de donner et le développement est assez complexe.

            Sinon tu peu voir de se coter:

            http://benjaminbillet.fr/blog/index.php?article1/detection-images-similaires


            Ca ressemble pas mal a la technique de Viola & Jones. Ils ont applique ça a la détection de visage et ça marche plutôt bien. Sinon ya les techniques de reconnaissance d’objet "classiques" comme SIFT et SURF. Les 3 algos sont disponible dans openCV, tu devrais donc avoir une bonne base de travail.
            • Partager sur Facebook
            • Partager sur Twitter

            Meilleur match d'image BDD >500k entrées?

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown