[Cascavel-pm] [Spam] OCR

Gabriel Vieira gabriel.vieira em gmail.com
Quarta Junho 20 21:46:14 PDT 2007


De acordo com a documentação, quando o caractere não é reconhecido é imposto
a ele o valor "\x{fffd}". :)

On 6/21/07, Rafael Magalhães <rafaelmagalhaes em gmail.com> wrote:
>
> André,
>
> Noiteeee (festa junina é bom mesmo, quem não gosta? heheh),
>
> Fiz as modificações que você me passou e vou postar aqui as diferenças:
>
> Da maneira que tinha feito antes:
>
> ____________
> Código:
>
> #!/usr/bin/perl -w
>
> use OCR::PerfectCR;
> use GD;
>
> my $recognizer = OCR::PerfectCR->new;
> $recognizer->load_charmap_file("charmap");
> my $image = GD::Image->new("placa.jpg") or die "Can't open example.png:
> $!";
> my $string = $recognizer->recognize($image);
> $recognizer->save_charmap_file("charmap");
> Retorno:
>
> Background color at index 21 [240 239 221]
> Finding bounds starting at 0
> Character at (0, 0)-(144, 45)
> Finding bounds starting at 144
> ____________
>
>
> Da maneira que você sugeriu:
>
> ____________
> Código:
>
>
> #! /usr/bin/perl -w
>
> use strict;
> use OCR::PerfectCR;
> use GD;
> use Data::Dumper;
>
> my $recognizer = OCR::PerfectCR->new;
> $recognizer->load_charmap_file("charmap");
> my $image = GD::Image->new("viewImageMagic.jfif") or die "Can't open
> example.png: $!";
> my $string = $recognizer->recognize($image);
> print Dumper $string;
>
> $recognizer->save_charmap_file("charmap");
>
> Retorno:
>
> Background color at index 21 [240 239 221]
> Finding bounds starting at 0
> Character at (0, 0)-(144, 45)
> Finding bounds starting at 144
> $VAR1 = "\x{fffd}";
> ____________
>
>
> O que pode estar dando errado?
>
> Obrigado pela atenção e tenha otimas festas juninas, julhinhas, agostinas
> e todos os meses inas!!!! hehehe
>
> Em 20/06/07, André Garcia Carneiro <andre.garcia.carneir em terra.com.br>
> escreveu:
> >
> >
> >
> > Eu dei um
> >
> > > Boa tarde,
> >
> > Taarde!(desculpe, estou no modo de festas juninas, adoro essas coisas)
> > :D
> >
> > > Sou novo na lista, e depois de alguns anos estudando outras linguagens
> > (ASP,
> > > PHP, Java e .NET), encontrei um problema e por incentivo de um amigo
> > que é
> > > membro aqui da lista, resolvi voltar a estudar Perl.
> >
> > Sábia decisão
> >
> > > Estou fazendo um trabalho na faculdade e o nosso objeto de estudo é
> > uma rede
> > > de estacionamentos que pretende modernizar a entrada e saída de seus
> > > clientes que pagam mensalmente. Basicamente teriamos uma camera
> > posicionada,
> > > de forma que foque na placa do veículo e quando chegar até a cancela,
> > > registre uma foto e o sistema irá ler o numero da placa e verificar no
> > banco
> > > de dados se o cliente está em dias com as mensalidades, caso ele
> > esteja,
> > > libera a entrada / saída, caso contrário emite um aviso ao sistema
> > para
> > > lembrar ao cliente sobre o pagamento.
> > >
> > > Pensei em desenvolver com Java, existe umas bibliotecas pra isso, mas
> > só
> > > conheço bibliotecas pagas e como é um projeto acadêmico, preciso de
> > algo
> > > free e que funcione de verdade.
> >
> > É o que costuma acontecer quando se desenvolve com ASP e .NET...JAVA de
> > vez em quando...
> >
> > > Bem, voltei a estudar Perl e instalei o modulo "OCR::PerfectCR",
> > encontrei
> > > no CPAN. Infelizmente não encontrei muita documentação sobre ele e o
> > máximo
> > > que consegui foi executar o unico exemplo, que pegou a foto da placa
> > que
> > > testei no exemplo, extraiu todos os caracteres e salvou uma imagem com
> > cada
> > > um dos caracteres.
> > >
> > > O que quero é conseguir pegar esse texto e armazenar em uma variável
> > para
> > > que eu possa passar como parametro e checar em meu banco de dados, a
> > > situação daquele veículo.
> >
> > Hum... não cheguei a testar o código de exemplo que você testou, mas li
> > a documentação disponível, e o que mais
> > me chamou a atenção foi isso:
> >
> > Takes the image (a GD::Image object), and tries to convert it into text.
> > In list context, returns a list of
> > hashrefs, each having a str key, whose value is the string in the
> > charmap for that image.
> >
> > Logo, penso que de alguma forma deve ter um texto em alguma referência
> > para hash que tem a informação que você
> > quer. Sugiro que você use Data::Dumper nessas variáveis para verificar
> > seus valores. Como não tive tempo de
> > testar o seu código, e mesmo que tivesse, não posso testar isso no meu
> > trabalho, é o que eu posso fazer por
> > você por enquanto, peço que me desculpe.
> >
> > O teste seria algo do tipo
> >
> > <code>
> > #! /usr/bin/perl -w
> >
> > use strict; #Não se esqueça disso. Salvará a sua vida, pode acreditar!
> > use OCR::PerfectCR;
> > use GD;
> > use Data::Dumper;
> >
> > my $recognizer = OCR::PerfectCR->new;
> > $recognizer->load_charmap_file("charmap");
> > my $image = GD::Image->new("placa.jpg") or die "Can't open example.png:
> > $!";
> > my $string = $recognizer->recognize($image);
> >
> > print Dumper $string; # Não sei se é aqui que ele vai jogar o texto,
> > pelo exemplo é o que parece... É bem
> > provável que você ache sua string aqui. Pela documentação, ele vai criar
> > uma lista de hashrefs, no contexto de
> > lista, pelo que eu entendi...
> >
> > $recognizer->save_charmap_file("charmap");
> >
> > </code>
> >
> > Se alguém testar esse código, por favor poste na lista o resultado, por
> > gentileza. Fiquei curioso se funciona...
> >
> >
> >
> > Cheers!
> >
> > > O código abaixo é o que eu usei do exemplo do CPAN:
> > >
> > > ___________________________________________________
> > > #!/usr/bin/perl -w
> > >
> > > use OCR::PerfectCR;
> > > use GD;
> > >
> > > my $recognizer = OCR::PerfectCR->new;
> > > $recognizer->load_charmap_file("charmap");
> > > my $image = GD::Image->new(" placa.jpg") or die "Can't open
> > example.png: $!";
> > > my $string = $recognizer->recognize($image);
> > > $recognizer->save_charmap_file("charmap");
> > > ___________________________________________________
> > >
> > > Será que alguem pode me ajudar a resolver este problema? Um exemplo
> > que eu
> > > consiga capturar os caracteres na minha variável?
> > >
> > > Fico grato pela atenção de todos,
> > >
> > >
> > > Atenciosamente,
> > > Rafael Magalhães
> > >
> > > E-mail classificado pelo Identificador de Spam Inteligente Terra.
> > > Para alterar a categoria classificada, visite
> > >
> >
> > http://mail.terra.com.br/cgi-bin/imail.cgi?+_u=andre.garcia.carneir&_l=1,1182365641.515645.15733.tacamaca.hst.terra.com.br,8874,20031127114101,20031127114101
> > >
> > > Esta mensagem foi verificada pelo E-mail Protegido Terra.
> > > Scan engine: McAfee VirusScan / Atualizado em 20/06/2007 / Versão:
> > 5.1.00/5057
> > > Proteja o seu e-mail Terra: http://mail.terra.com.br/
> > >
> > >
> >
> > --
> > André Garcia Carneiro
> > Developer(Perl/PHP)
> > Member of "São Paulo Perl Mongers" - http://sao-paulo.pm.org
> >
> > _______________________________________________
> > Cascavel-pm mailing list
> > Cascavel-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/cascavel-pm
> >
>
>
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>



-- 
Gabriel Vieira
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070621/3203524e/attachment.html 


Mais detalhes sobre a lista de discussão Cascavel-pm