Vous n'êtes pas identifié(e).

  • Contributions :
  • Vos boîtes de messages privés sont vides.

Annonce

Faites un bond en avant avec la formation SEO Ranking Skills le 12 Avril 2017

#1 2014-03-15 12:27:47

Mention conquering_lion
Scout
Inscription : 2013-05-23
Messages : 176

Tuto : Ruby - décoder des captcha image

Allez, ca faisait longtemps que je n'avais pas posté un petit truc ici.. marche uniquement dans le cas de captcha hyper simple .. oubliez les modèles robustes. De toute manière c'est juste un tips, pas une solution prête à l'emploi .. bah oui quoi faut bosser des fois !!



les libs as usual :


require 'tesseract'
require 'RMagick'
 


les bases :


    file = 'captcha.png'
    photo = Magick::Image.read(file).first

    e = Tesseract::Engine.new {|e|
      e.language  = :eng
      e.blacklist = '|'
    }
 

on passe dans le bout de code ci-dessus l'image à la librairie RMagick et on lance une instance de Tesseract, un moteur de reconnaissance d'image bien connu ..



Et enfin la partie la plus intéressante :


    photo = photo.scale(3.0).write("#{file}-size.png")
    res = e.text_for(photo).strip    
    puts res
 

La première ligne applique un pré-traitement à l'image, une balance (scale). La ligne suivante décode le contenu du texte, et la dernière l'affiche.


Il y a déjà de quoi s'amuser dans le sens où la librairie RMagick contient un paquet de filtre à appliquer, donc vous pourrez prendre une image, la modifier dans tous les sens pour voir si un des filtres marche bien. De mon coté, et ca fera peut être l'objet d'un autre topic si ca intéresse, je bosse sur une solution de captcha audio big_smile (enfin pas que ca, mais entre autre).

edit : another tips dans la foulée, il faut agrandir l'image source pour une meilleure reconnaissance .. et sinon une petite recherche gg sur => captcha tesseract big_smile

tutoriel ruby

Dernière modification par conquering_lion (2014-03-15 15:32:30)

Hors ligne

#2 2014-04-18 13:22:38

Mention Jojo_le_haricot
Soldier
Inscription : 2014-04-18
Messages : 461

Re : Tuto : Ruby - décoder des captcha image

humm, interessant...
Tu obtient de bon % de resultat ?
Ou c'est juste pour le fun ?
Je connaissait pas tesseract, a tester


----
Chili con seo

Hors ligne

#3 2014-04-21 18:29:45

Mention conquering_lion
Scout
Inscription : 2013-05-23
Messages : 176

Re : Tuto : Ruby - décoder des captcha image

tu as aussi le logiciel eponyme tessercap .. sous windows

sinon j'ai testé rapidement sur des images contenant du texte simple et pas trop biscornu et ca marche pas mal .. mais faut inclure du pre traitement d'images pour que ca soit plus robuste

Hors ligne

Pied de page des forums