OCR avec Vision

Bonjour,
Je débute dans labview et dans le cadre de mon projet je dois réaliser un programme qui reconnaît des caractères a partir d'image acquise par caméra usb, j'ai presque réussis a réaliser le programme que je souhaite seulement je commence a bloquer.
Voilà mon problème, je souhaiterai savoir comment refaire mon programme pour pouvoir prendre une autre image à analyser après avoir analysé les caractères de la première sans arrêter le vi et le relancer car pour le moment ce .vi ne fonctionne que pour une seule image; et si possible lancer le fichier .abc dès le démarrage du .vi sans avoir a prendre l'image faire stop et aller le chercher dans son dossier.
J'espère avoir était clair
et merci d'avance pour toute aide apporté
Pièces jointes :
Vidéo et capture d'image.vi ‏62 KB
Liste 1.abc ‏173 KB

Bonjour,
Je n'ai pas le module Vision pour tester ton programme, mais déjà je peux voir plusieurs problèmes.
- Tout d'abord, quand tu dis qu'il ne fonctionne pas, si tu parles du fait qu'il ne soit pas exécutable, c'est tout à fait normal puisque tu as des tunnels en sortie de ta structure condition ui ne sont pas cablés.
- Ensuite, quelque chose qui m'intrigue, c'est que dans "saisie d'information", tu viens mettre ds la file d'attente "Selection de l'afficheur" et "reconnaissance des caractères", alors que lorsque tu passes dans l'une et l'autre de ces conditions, tu demandes à passer dans "Lecture de la mesure". ce qui veut dire que ton code va s'exécuter de cette manière : Selection afficheur>>reconnaissance des caractères>>Lecture de la mesure>> mais que l'appui sur fin de sélection de l'afficheur n'aura pas été vu.
- Egalement, dans l'état "Reinitialisation", tu ne viens pas initialiser grand chose mais récupérer les dernières valeurs des registres à décalage, je ne suis pas certain que ce soit la bonne solution.
J'espère que ces remarques t'aideront à avancer.
Cordialement,
Olivier L. | Certified LabVIEW Developer

Similar Messages

  • How to train OCR using VISION ASSISTANT for multiple character recognition

    Sir I have tried training OCR using Vision Assistant for character recognition. For the process i have used a fixed focus camera but the character i had trained were undetectable. So sir please provide me a liable solution to the problem.
    Thank you.
    I have attached my project description and also the .vi file of my work towards it.
    Attachments:
    Project phase I.vi ‏138 KB
    WP_20140814_17_27_38_Pro.jpg ‏1444 KB

    Can you post a real jpg instead of renaming a bmp to jpg?

  • Apprentissage de caractère avec vision

    Bonjour,
    comme presque toutes les personnes qui poste ici j'ai un léger soucis ^^ je souhaite faire l'apprentissage de caractères sous labview pour un programme d'ocr sans passer par l'assistant vision mais directement dans le programme
    j'ai fais un premier programme qui marche bien mais le second ne fais absolument rien lorsque je le lance, si quelqu'un peut me dire ou est l'erreur je lui en serais grandement reconnaissant
    Merci d'avance
    Ci joint les deux programmes
    Pièces jointes :
    OCR vidéo.vi ‏59 KB
    OCR vidéo.vi ‏65 KB
    Liste 1.abc ‏155 KB

    bonjour,
    je suppose que le plus simple des 2 VIs est celui qui fonctionne et l'autre pas. correct?
    apparemment tu es parti depuis un exemple LabVIEW, c'est une bonne idée!
    si j'ai bien compris ce que tu essaies de faire dans l'autre, chaque fois qu'un nouveau texte est dans la ROI définie à l'image tu fais un snap et ensuite tu ajoutes le texte au fichier abc, c'est bien ça?
    pour que ton VI soit plus lisible, je pense que tu devrais supprimer la stack sequence du haut et créer une machine à état (state machine), ce sera ensuite plus facile de faire évoluer le VI et d'ajouter des fonctions.
    je te laisse essayer ça et poser plus de question si tu rencontres des problèmes.
    Bonne chance!
    When my feet touch the ground each morning the devil thinks "bloody hell... He's up again!"

  • Reading ocr characters

    I am reading characters from lcd  by using ocr. in vision assistant......I can train only small lcd segment values properly..for bigger lcd the segments has been divided into 2 to 3 search area...so i cant  able to read properly

    I hate yelling but please STICK TO ONE THREAD.  Pick one of the three links below and reply there, there is no need to make new threads when the topic is the same, and related to what others have been trying to help you with.
    http://forums.ni.com/t5/LabVIEW/Lcd-read/m-p/2905790
    http://forums.ni.com/t5/LabVIEW/extract-numbers-from-image/m-p/2890212
    http://forums.ni.com/t5/LabVIEW/reading-values-from-lcd-using-vision/m-p/2904064
    Unofficial Forum Rules and Guidelines - Hooovahh - LabVIEW Overlord
    If 10 out of 10 experts in any field say something is bad, you should probably take their opinion seriously.

  • Comment commander un moteur CC avec Labview

    Bonjour,
    Je suis étudiant en mécanique et dans le cadre d'un projet, je dois créer un programme labview qui:
    - en entrée utilise les image provenant d'un caméra qui film une goutte sur un tapis
    - traiter cette image avec Vision Assistant (étape déjà faite)
    - générer une tension proportionnelle à la position du barycentre de la goutte (trouvé par le traitement précédent) par rapport au centre de l'image (avance ou retard).
    Le problème réside dans la génération de cette tension.
    Je voudrais faire varier la vitesse de rotation d'un moteur CC d'essuie-glace 12V ( Valéo, modèle voiture 406). Pour celà, je sais que je dois envoyer une tension générée depuis mon ordinateur jusqu'à une carte moteur (je pensais à une carte Sabertooth 2*12) mais je dois envoyer l'information par du RS 232. Est-il possible de générer ce type de tension à partir de Labview? Si oui, comment puis-je adapter une génération à la suite de mon programme en remplacement du signal simulé? (Dois-je utiliser VISA?)
    Est-t-il également possible de choisir une carte du type NI USB-6008, de communiquer avec elle et de la connecter à mon moteur? Car je m'aperçois que la sortie analogique n'est que de 5V maxi, donc cela nécessiterai une amplification supplémentaire?
    (Je joins au message la doc de la carte Saberttoth et le programme que j'ai commencé ainsi que l'image sur laquelle je travaille).
    Merci d'avance pour votre aide!
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    test_ouverture_fichier2.vi ‏153 KB
    Carte_moteur_Sabertooth.pdf ‏1314 KB
    goutte test.png ‏249 KB

    Bonjour,
    Si j'ai pu aider. Dans tous les cas, tu auras besoin de ta carte Sabertooth pour servir d'interface de puissance. Par contre, entre le RS232 et l'analogique pour la piloter c'est à toi de voir. Je pense que le 0-5 V fournit par une 6008 est plus imple à mettre en oeuvre, tu auras a mon vis la sortie 0-12V proportionnelle à l'entrée 0-5V. De toute façon, tu ne pourrais pas piloter le moteur en direct, il faut du matériel dédié (comme ta carte), car sinon, une 6008 ne founit pas de puissance, juste une tension.
    L'utilisation en RS232 peut être un peu plus compliqué à mettre en oeuvre au début, masi je pense que tu auras plus de souplesse et de possibilité pour le pilotage du moteur.
    Bonne continuation.
    Pense a marquer le forum comme résolu et à donner des compliments aux personnes qui ont répondu.
    Merci
    .mesLeft{float:left} .mesInfo{border-left:solid 1px #989898;font-size:x-small;color:#989898} .mesLogo{float:right;opacity:0.18} .mesLogo:hover{opacity:0.9}
    Maxime R.  
      CLD - Certified LabVIEW Developer / Développeur LabVIEW Certifié  
      CLAD - Certified LabVIEW Associate Developer   

  • Lien Inter-PDF

    Bonjour,
    J'ai réalisé un PDF contenant différents liens qui pointent vers d'autres PDF, TIFF ou dossiers....
    Lorsque je clic sur un lien, le document s'ouvre systématiquement avec mon navigateur web par défaut.
    J'aimerais pouvoir ouvrir les différents documents avec les logiciels adéquats
         PDF avec Adobe Reader ou Acrobat
         Tif avec visionneuse Windows
         Dossiers avec l'explorateur Windows
    Dans l'attente de vos réponses,
    Merci d'avance !
    Jason

    Cela fonctionne parfaitement avec le logiciel Foxit reader, donc je pense que cela vient de la configuration d'adobe reader ou acrobat.
    A mon avis c'est l'inverse, c'est Foxit qui met la zone…
    Pourquoi ne pas créer simplement un "porte document" dans Acrobat ? C'est une fonction ancienne qui marche bien et qui a l'avantage d'être personnalisante (logo, background,…)
    Un porte-document PDF requiert Adobe Reader (ou Acrobat) + Flash player.
    Donc ça ne fonctionne sur aucun périphérique mobile ni dans les entreprises dont le S.I. a banni Flash player. Ca ne fonctionne pas sur Linux/Unix non plus.
    D'autre part, les porte-documents PDF utilisent des technologies qui ne font pas partie de la norme ISO 32000*, alias PDF 1.7*, et qui donc ne peuvent pas être considérées comme pérennes.
    * voir : http://abracadabrapdf.net/format_pdf/normes_iso_et_pdf/pdf17-iso-32000/

  • Comment adapter une structure evenementielle sur des sorties rafraichies par polling?

    Bonjour
    Je suis en train de programmer avec vision. J'utilise la fonction "IMAQ count objects" pour detecter les personnes en mouvement sur une camera. et je retourne des booleens selon la zone de la camera ou les gens passent.
    Je dois ensuite traiter le flux de personnes selon l'etat de ces booleens. Le plus simple serait que j'utilise de la programmation evenementielle afin de verifier l'etat de tous les booleens lorsque l'un d'eux change de valeur.
    Probleme: Mon programme fait de la scrutation et donc les booleens sont rafraichis en permanence. La structure evenement ne fonctionne qu'avec les commandes, mais pas par des indicateurs. et meme si je triche en reecrivant le booleen dans une commande par noeud de propriete "valeur(sign)", la structure evenement s'enclenche a chaque reecriture, y compris si la valeur reste la meme.
    Y a t il donc un autre moyen d'adapter une programmation evenementielle a un programme fonctionnant par scrutation, via les sorties booleens ou la fonction IMAQ count objects?
    Merci d'avance pour votre reponse.
    bonne journée.
    Résolu !
    Accéder à la solution.

    Ton explication est probablement hermétique pour certains.
    Un morceau de code (la solution dont tu parles) aurait été un "plus" pour le forum.

  • Utilisation d'une camera Gig E via swich sous Labview 2011

    Bonjour,
    J’ai besoin d'acquérir des photos grâce a une camera Baumer Gig E sous labview.
    J’ai plusieurs composant connecter a mon ordinateur en Ethernet (Carte DAC, Camera, Moteur...) et j'utilise donc un Switch.
    Problème: la camera n'est pas reconnue a travers le Switch, Pourquoi? (elle fonctionne très bien lorsque elle est directement relier a l'ordinateur).
    Merci de votre aide.
    P.S j'utilise labview 2011 avec vision acquisition et vision développement

    Bonjour,
    Tout d'abord, je vous confirme bien que c'est faisable, c'est même spécifié dans une de nos documentations.
    Je ne sais pas quels sont vos réglagles mais votre switch supporte-t'il les jumbo frames ?
    Voyez-vous toujours vos autres périphériques ?
    Quand vous parlez de non reconnaissance, est-ce dans MAX ou directement dans LabVIEW ?
    Cordialement,
    Mathieu P. | Certified LabVIEW Associate Developer
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Journées techniques : des fondamentaux aux dernières technologies pour la mesure et le contrôle/comm...

  • Utilisation d'une carte Blackmagic intensity pro avec NI vision

    Bonjour,
    Je dois utiliser une carte Blackmagic intensity pro avec NI Vision. Carte compatible directshow, mais en résolution 1920*1080 (1080p) à 25 fps, l'image reçue est bizzare, elle ressemble à de l'entrelacée, mais il n'en est rien. J'ai contacté le support Blackmagic qui m'annonce que le mode full HD n'est pas supporté avec DirectShow, mais seulement avec le SDK fournit, uniquement du C++.
    Y'a t'il une solution afin de l'utiliser tout de même avec Labview ?
    Ma première idée, créer une DLL en C++ qui récupère l'image pour la transférer via TCP à l'adresse 127.0.0.1 afin de la récupérer dans Labview, solution qui fonctionne déjà dans un autre projet, mais seulement à 10 fps avec une résolution de 640*480. Là, impossible vu la quantité de donnée à 25 fps.
    Quelqu'un a t'il une idée afin de pouvoir tenir le 1080p à 25fps avec NI Vision ?
    Merci, Julien.

    Bonjour juju21,
    Je crains que l'idée de l'utilisation de la DLL soit la meilleure pour utiliser du C++. Si vous n'obtenez pas de performance satisfaisantes par ce biais, je ne peux que vous guider vers des cartes d'aquisition NI.
    Cordialement,
    Mathieu P. | Certified LabVIEW Associate Developer
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Journées techniques : des fondamentaux aux dernières technologies pour la mesure et le contrôle/comm...

  • Problem with advanced threshold in OCR - Vision Assistant 2013

    I'm facing a problem with Vision Assistant 2013
    The OCR charter set file advanced threshold data is always fixed at 255 upper value and optimize for speed is checked.
    I edit them and reopen the file but no change.
    anyone facing the same problem ?
    Attachments:
    Untitled.png ‏7 KB

    Hi Paolo,
    Thanks for your answer. Yeah I have seen the examples and I´m familiar with the use of the OCR VI. I have use it a couple of time already with good results.
    My problem came last week. While I was trying to run OCR on my image in my LabVIEW code. The algorithm did not detected what I was expecting.
    I decided to run the test on the vision assistant and it worked perfectly. I assumed my code had different parameters, so I decided to generate a VI from the vision asssistant and run it on LabVIEW for the same image to verify.
    I did not change anything on the VI (all parameters are the same), and used the same image. Surprinsingly the results are different between the assistant and the VI. That strikes me a lot!
    I´ll start a new thread as you recommended. Hope to find the solution soon. Thanks  
    Regards,
    Esteban

  • Vision Assistant 2014 (and DLL inside of LV) repeatedly crashes while reading multiline OCR

    I am working on an OCR application. With certain files (not all) the multiline function just crashes. No questions asked.  I set the ROI area to the targeted text and without fail it causes a crash.
    Is anyone aware of this problem, and if so is there a solution?
    Additional information:  My .abc file is from scratch with default settings and trained characters. Nothing in it should be causing the crash.  Images are simple scanned jpg files.
    Edit: I tested it. Crash still happens without any character set loaded, and no changes to threshold, size, or read options.

    I cut out an offending section of one of the files. It is attached.  To replicate the error:
    1. Load image
    2. Identification -> OCR/OCV
    3. New Character Set File...
    4. Select entire text.
    NI Vision Assistant 2014, 64 bit. 
    Edit: Posted this before I saw your request   On the "Full sized" image, it crashes always - even when it is called from inside of LabVIEW (the DLL crashes then).  It is how I noticed the bug - my program kept crashing.  Tor this image, it seems to only crash for me inside of the training assistant, but is again reliable.
    Attachments:
    crash.png ‏731 KB

  • Vision OCR memory leakage

    Hi guys!
    I have a "problem" with simple OCR vi's made with Vision Assistant in NI Vision 2011.
    When I create a simple script, that only uses the OCR, and then create a .vi from it, the vi leaves the OCR session open. This results to huge leakage of RAM memory.
    You cannot even get the OCR session out from the .vi automatically when creationg the vi, so that it could be disposed outside of the .vi! So only solution I could figure out was to actually modify the .vi and build it inside there. Also the .abc file for the OCR have to be built, because it's not necessary in the same drive or base path, and Vision Assistant uses the whole path e.g. "D:\Labview Projects\OCR\... ...fonts.abc".
    It wouldn't be a problem unless I and especially others wouldn't be creating those OCR -vi's all the time. Now every vi have to be manually changed to dispose the session AND to take the .abc -file path in reference to the executable path.
    If somebody knows any solutions for this, please don't hesitate to tell me Thanks!

    Hi,
    System.gc() only suggests the objects are removed but there is no obligation for the JVM to do so.
    The implementation of different JVM's will approach this event in different ways. For example an embedded JVM might be designed to nearly alwaya remove objects that have no reference left.
    Anyway this is not strictly speaking memory leakage because if the JVM decides to it CAN remove the object.
    Real memory leakage is where a series of object references are created and not destroyed and so they persist in time because they cannot be GC'ed.
    A typical example is to create an object, stick it in an array of objects for some processing and then set the original object reference to null, thinking the object can now be GC'ed. But it can't unless the object reference in the array(which is a copy of the original object reference) is also set to null.
    Hope that helps,

  • Why do the results between the OCR in the Vision Assistant and OCR in a VI generated from the vision assistant might defer?

    Hi everybody,
    I had a problem while I was trying to run OCR on my image in my LabVIEW code. The algorithm did not detected what I was expecting on the image.
    I decided to run the test on the vision assistant and it worked perfectly: I got the expected results.#
    I assumed then that my code had different parameters, so I decided to generate a VI from the vision asssistant and run it on LabVIEW for the same image, just to verify.I did not change anything on the VI (all parameters are the same), and I used the same image. Surprinsingly the results are different between the assistant and the VI. That strikes me a lot! I have checked alll possible configurable parameters and they have the same values as in the Vision assistant. Does anybody have an idea about what could be the reason of this behaviour?  Thanks
    Regards,
    Esteban

    Esteban,
    do you use the same images for OCR? Or do you take a new snap shot before running the OCR?
    What steps of debugging did you use in LV?
    Norbert
    CEO: What exactly is stopping us from doing this?
    Expert: Geometry
    Marketing Manager: Just ignore it.

  • Why do the results between the OCR in the Vision Assistant and a VI generated from the vision assistant might defer?

    Hi everybody,
    I had a problem while I was trying to run OCR on my image in my LabVIEW code. The algorithm did not detected what I was expecting on the image.
    I decided to run the test on the vision assistant and it worked perfectly: I got the expected results.#
    I assumed then that my code had different parameters, so I decided to generate a VI from the vision asssistant and run it on LabVIEW for the same image, just to verify.I did not change anything on the VI (all parameters are the same), and I used the same image. Surprinsingly the results are different between the assistant and the VI. That strikes me a lot! I have checked alll possible configurable parameters and they have the same values as in the Vision assistant. Does anybody have an idea about what could be the reason of this behaviour?  Thanks
    Regards,
    Esteban

    Hi Peter, 
    Strange. It runs here. Attached the screeshot you requested.
    Regards,
    Esteban
    Attachments:
    Capture.png ‏135 KB

  • Lire l écran LCD avec Labview(NI Vision)

    Salut,
    je suis étudiante et en faite nouvelle dans le traitement de l image avec labview. Dans mon Projet a l' uni je dois pouvoir lire les chiffres qui s affiche sur un écran (la photo est en pièce jointe) et qui change après 5 minutes. Après recherche j ai trouve un exemple dans les Exemples propose par Labview qui pourrait peut être m aider mais la différence avec mon image c est les chiffres dans l exemples sont en segment et les miens sont composes de points. Mes Problèmes sont les suivants:
    - j aimerai tout d abord remédier aux distorsion de non linéarité qui apparaissent sur l image
    - ensuite adapter l exemple LCD ou Classification a mon problème de manière a pouvoir lire les chiffres de tous les nombres possible (allant de 000-999).
    - enfin j aimerai aussi un tutoriel qui détail comment les exemples cités plus haut ont été construit.
    Bien de choses à vous
    Carine
    Pièces jointes :
    display.JPG ‏187 KB
    LCD Example.vi ‏57 KB
    Classification.llb ‏120 KB

    Bonjour,
    Je vous conseille d'utiliser NI Vision Assistant pour voir quelles sont les différentes étapes pour améliorer le contraste de votre image.
    Voici le lien vers la documentation (elle n'est pas à jour mais les fonctionnalités sont presques les mêmes)
    http://www.ni.com/pdf/manuals/372228h.pdf
    Cordialement
    David S.| Certified LabVIEW Associate Developer
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Journées Techniques LabVIEW 2012 : du 27 septembre au 22 novembre
    2 sessions en parallèle : Débuter a...

Maybe you are looking for

  • IP address on MP keeps resetting

    *H/W Involved:* '06 MP (connected to an Airport Express via Ethernet. APX is set up as remote) '08 MBP '09 MBP '09 Airport Extreme (dual band model, set up with independent dual bands, DCHP) OS: 10.6.2 Problem: periodically my MP will display 2 messa

  • Production Time Issues on IDOC---File Scenario

    Hi All, We have done all the IDOC--File scenarios Successfully in DEV System. Now its time to Production and Go-Live. Q1) Assume If Bulk messages are Failed in RWB-----Receiver CC Due to some error, Then how to Handle these Error messages Regards Sum

  • How to get the current IR filter in form pagination?

    Hi, In the 'Get Next or Previous Primary Key Value' process (form pagination) of a page there is an option to set an 'Optional WHERE clause'. Is there an easy way to get and set the current interactive report filter in the form pagination optional wh

  • Invoice for two deliveries

    when i choose T-code VF04 to make billing documents with two deliveries ,i entered sold to party account number and i selected deliveries then execute button ,i got a message : the list is incomplete due to missing authorization i click  enter there

  • Configuring BPM-BW Connectivity

    Hi all We're trying to connect BW with BPM. I've read that an RFC Destination is needed to do so, but I'm not sure about how to configure it. I'm on TCODE SM59, configuring a TCP/IP type destination. Checked on "Registered Server Program" following m