Détection de couleur à l'aide d'une caméra Android

Actuellement en train d'entreprendre un projet concernant les caméras Android qui nécessiterait que je détecte certaines couleurs lors de l'affichage en direct ou après la prise de vue.

J'ai réussi à configurer avec succès la caméra avec un aperçu en direct et tout, mais je suis actuellement coincé pour détecter les couleurs. Par exemple, je voudrais détecter la couleur verte lors de l'aperçu en direct de l'appareil photo et envoyer un commentaire à l'utilisateur. Il n'a pas nécessairement besoin d'être fait lors d'un aperçu en direct, car je pense que l'impression d'une photo, alors la détection des couleurs pourrait être effectuée de manière plus simple.

Je suis un débutant complet sur la programmation Android, donc tout type de direction concernant la façon de coder l'algorithme de détection des couleurs serait grandement appréciée!

  • Camera.Parameters.setRecordingHint et le rapport d'aspect
  • Réglage ISO de l'appareil photo / vitesse d'obturation
  • Quel est l'équivalent de Camera2 API de setDisplayOrientation ()?
  • Compatibilité de la version de l'API Android
  • L'orientation de la photo capturée change dans Android
  • Comment capturer une image et la stocker avec la caméra Android native
  • Comment faire fonctionner la lumière de l'appareil photo dans une séquence spécifique?
  • Comment cartographier les coordonnées du cadre sur Superposition en vision
  • 3 Solutions collect form web for “Détection de couleur à l'aide d'une caméra Android”

    Si vous souhaitez passer une méthode simple, obtenez l'image bitmap de la caméra et utilisez bitmap.getpixel(int x,int y) pour obtenir la couleur et comparer les pixels avec la couleur souhaitée

    Vous devriez essayer ceci où x et y est la position du pixel

     int frameHeight = camera.getParameters().getPreviewSize().height; int frameWidth = camera.getParameters().getPreviewSize().width; int rgb[] = new int[frameWidth * frameHeight]; decodeYUV420SP(rgb, data, frameWidth, frameHeight); Bitmap bmp = Bitmap.createBitmap(rgb, frameWidth, frameHeight, Config.ARGB_8888); int pixel = bmp.getPixel( x,y ); int redValue = Color.red(pixel); int blueValue = Color.blue(pixel); int greenValue = Color.green(pixel); int thiscolor = Color.rgb(redValue, greenValue, blueValue); 

    "Color Grab" est une application Android qui fait ce dont vous avez besoin. L'application possède le meilleur algorithme de détection / reconnaissance de couleur et fonctionne parfaitement. Vous pouvez vérifier la marche à suivre.

    Graveur de couleur sur Google Play

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.