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

OpenCV Discussion :

Reconaissance de code barre


Sujet :

OpenCV

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 55
    Par défaut Reconaissance de code barre
    Bonjour les développeurs!!!

    Actuellement je réalise un logiciel de reconnaissance de code barre par le biais de OpenCV.
    Pour l'instant nous rencontrons (mon équipe et moi) des problèmes avec OpenCV.

    Le problème se situe au niveau de la transformée de hough qui n'est pas très très précise, elle ne détecte pas les lignes en continu même si c'est une image générée et que les lignes sont bien droites (nous ne pouvons pas utiliser la première analyse pour cette raison).

    Pour l'instant nous avons 2 analyses possibles :
    * Première analyse
    - Capture de l'image
    - Passage en niveau de gris
    - Binarisation de l'image
    - Détection des lignes parallèles avec la transformée de Hough
    - Détection de la couleur des barres (aucune idée comment faire ...)
    - Conversion en binaire.
    - Conversion en décimal par le biais d'une table d'interprétation sémantique.

    * Deuxième analyse
    - Capture de l'image
    - Passage en niveau de gris
    - Binarisation de l'image
    - Recherche de l'angle avec la transformée de Hough (aucune prise en compte des éventuelles distorsions).
    - Rotation selon l'angle trouvée pour mettre le code barre droit.
    - Moyenne de plusieurs lignes pour la couleur des barres (noire ou blanche)
    - Conversion en binaire.
    - Conversion en décimal par le biais d'une table d'interprétation sémantique.

    Mes questions sont les suivantes :
    - Mes analyses sont-t'elles bonnes et exploitables?
    - Quelqu'un aurait-t'il déjà fait un travail similaire? (cela m'intéresse fortement)

    En utilisant notre deuxième méthode :
    Après nettoyage et rotation voilà ce que j'obtiens :




    Donc il me reste à faire le décodage du code barre.

    Pour faire la moyenne de plusieurs lignes je pense utiliser cette fonction :
    - CvScalar cvGet2D( const CvArr* arr, int idx0, int idx1 );
    Je sais que CvScalar est une structure contenant un tableau de 4 double. A quoi correspond exactement CvScalar? Et à quoi sert-t'il?
    CvArr correspond à l'image charger?
    idx0 et idx1 correspondent respectivement à x et y?


    Ensuite, peut-t'on changer la résolution de la caméra autrement qu'en compilant? (Nous avons une webcam de 2 MégaPixels et on aimerait l'exploiter)

    Merci

    Kurapix

  2. #2
    Membre éprouvé Avatar de hunta_kirua
    Profil pro
    Inscrit en
    Février 2008
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 110
    Par défaut
    Salut,

    Je n'ai pas travaillé sur les codes barres mais j'ai déjà utilisé la transformée de Hough et je trouve bizarre que la transformée de Hough ne soit pas "précise"( As-tu changé la résolution pour voir ?). Si tu as un problème au niveau des barres larges, essaie de récupérer leur squelette.
    Pour la couleur, si tu la connais à peu près, tu peux faire une quantification colorimétrique pour identifier tes objets.
    cvGet2D permet de récupérer la valeur du pixel à la position i (idx0 - ligne) et j (idx1 - colonne). Dans le cas d'une image à plusieurs plans, tu récupères la valeur de chaque plan avec ".val[n]" où n est ton plan. CvSize est en 4 double car OpenCV gère 4 plans (sauf erreur). Pour cvArray, il me semble qu'il s'agit soit d'une cvMat soit d'une IplImage*.

    A+,

    Hunta

  3. #3
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 55
    Par défaut
    Pour l'instant, vu que je ne code plus la partie de traitement d'image (j'ai l'interface graphique à encore peaufiner) bah celle-ci est repassée entre les mains de mon pote. Celui-ci ne maîtrisant pas trop bien le C et puis on trouvent OpenCV lourd à utiliser ... il allie OpenCV et Allegro ^^". Je verrais si j'ai le temps de convertir son algo pour qu'il fonctionne entièrement sous OpenCV mais ça m'étonnerais.

    Pour changer la résolution de la webcam il faut recompiler OpenCV ... on est s'attèle actuellement à résoudre ce problème >< .

    Si quelqu'un à déjà travailler sur les codes barres en utilisant OpenCV, je suis intéressé.

    (Notre soutenance est Vendredi, on a fini notre logiciel à 90%, il ne nous manque que le traitement d'image ... Ca fait peut-être 2 mois que mon pote cherche à résoudre le problème, je ne l'ai pas résolu non plus.)

    Kurapix

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 60
    Par défaut detection code barre
    salut!!!!

    moi aussi je travaille actuellement sur la détection de code barre

    a quoi ta servi la transfo de hough? car moi j'ai juste fait une coupe de mon code barre et évaluer la largeur et ca marche ...sur une image synthétique.

    par contre, comment tu arrive à automatiser la détection du début et de la fin de ton code barre ? car c'est ce qui me pose le plus de problème sur des images réelles donc imparfaites.

    Ton aide me sera bien précieuse! je te remercie

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 108
    Par défaut du nouveau en 2009?
    Bonjour, je suis actuellement à travailler à la reconnaissance de code à barre. Si vous avez réussit à accomplir quelque chose je serais intéressé à y jetter un coup d'oeil.

    Pour ce que j'ai d'accompli à ce jour : pratiquement rien (j'ai commencer hier ou peut-être avant-hier à utiliser OpenCV). Bien entendu, je ne veux pas de cadeau, je chercher à developper mes habiletés avec OpenCV.

    J'ai plusieurs projets autres à l'horizon, mais il faut commencer par quelque chose de simple.

    OpenCV me semble extrêmement puissant et intéresant.

    Alors, en espérant que vos projets ont avancé depuis l'an passé.

    Antoine

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 5
    Par défaut
    Un petit up et une petite contribution au passage :

    http://visualintelligence.fr/blog/in...OpenCV-et-Zbar

Discussions similaires

  1. Impression étiquettes codes barre ?
    Par donia dans le forum QuickReport
    Réponses: 4
    Dernier message: 14/03/2016, 10h20
  2. [CR8.5] Utilisation des codes barre
    Par Robert dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 20/01/2005, 16h13
  3. [HARDWARE] [Conseil] Lecteur code barre
    Par Ni(o dans le forum Périphériques
    Réponses: 4
    Dernier message: 22/06/2004, 19h14
  4. [CR 8.5] Impression Codes Barre
    Par Phy dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 14/10/2003, 12h18
  5. Réponses: 5
    Dernier message: 24/04/2003, 22h08

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