2010-12-02 21 views
0

je veux connaître la méthode de la recherche d'images en fonction de la couleur de l'objet principal dans les images ou la couleur la plus utilisée dans l'image.Images recherche de moteur de recherche par la couleur principale dans l'image

Y at-il un tutoriel, ou même un produit pour l'acheter?

Je voudrais programmer un moteur de recherche fonctionne avec cette fonctionnalité.

donc, quelqu'un peut me aider

vous remercie.

Répondre

3

J'ai fait un travail similaire. Mon implémentation peut être trouvée ici http://code.google.com/p/hppg/. L'exemple en direct peut être trouvé sur la page d'accueil du projet. Ce moteur de recherche comporte également la recherche par mot-clé et couleurs en même temps. Toutes les informations détaillées et le code peuvent être trouvés sur la page d'accueil du projet. J'espère que ça aide :)

2

Chaque couleur a une valeur RVB, indiquant les niveaux de rouge, vert et bleu dans la couleur. Vous pouvez calculer la somme de toutes les valeurs RVB pour chaque pixel, puis diviser par le nombre de pixels, pour obtenir la couleur "moyenne" d'une image. Une autre façon de le faire est d'aplatir les couleurs (changer tous les derniers chiffres dans les valeurs RVB à 0, par exemple # F8824A devient # F08040) et ensuite trouver la plus grande surface dans l'image avec la même couleur. Imaginez une photo de quelqu'un devant un mur blanc. En utilisant la première méthode, vous obtiendrez un mélange de blanc et de vêtements et de visage de la personne. En utilisant la deuxième méthode, vous deviendrez blanc, à moins que la zone de «couleur constante» de la chemise de la personne ne soit plus grande que la partie visible du mur.

Il doit y avoir d'autres idées, mais cela devrait vous amener à penser à ce que vous voulez.

2

Une autre option consiste à convertir l'image en HSV space (Teinte, Saturation, Valeur) et de calculer la teinte moyenne. Si la teinte moyenne se situe dans une plage particulière, alors conservez l'image, sinon jetez-la. La plage particulière dépend de la couleur qui vous intéresse. Par exemple, pour les images vertes, vous devez choisir une teinte comprise entre 60 et 180 degrés. Voir le schéma ci-dessous HSV:

alt text

L'avantage de travailler dans HSV par opposition à RVB est que le HSV est connecté plus naturellement à la façon dont les humains perçoivent les couleurs. Le RVB est plus adapté pour afficher des informations dans un système de couleur additif, c'est-à-dire un moniteur d'ordinateur. En fonction du temps que vous êtes prêt à consacrer à cette tâche, vous n'êtes pas obligé de mettre en place votre propre moteur de recherche. Envoyez simplement votre requête à Google Image Search, explorez toutes les images du résultat et filtrez-les en utilisant la méthode ci-dessus (ou d'autres critères, comme deltreme suggéré ci-dessus). J'ai récemment fait quelque chose de similaire à récupérer des vidéos de garde-côtes maritimes de Youtube (heureusement, ceux que je voulais étaient principalement bleu).

Pour la partie de recherche, consultez Google's APIs. Je n'en ai pas utilisé un pour la recherche d'images, mais leur API Youtube a été très utile.