#!/usr/bin/perl -w
###########################################
# Mike Schilli, 2007 (
[email protected])
###########################################
use strict;
use Log::Log4perl qw(:easy);
use LCDOCR;
use Getopt::Std;
getopts("vd", \my %opts);
Log::Log4perl->easy_init($opts{v} ?
$DEBUG : $ERROR);
my($file, $x1, $y1, $x2, $y2) = @ARGV;
die "usage: $0 file x1 y1 x2 y2\n" unless
defined $y2;
my $i = Imager->new();
$i->read(file => $file, type => "jpeg") or
die "Can't read $file";
my $gr = Imager::Color->new(0, 255,0);
$i->circle(color=>$gr,r=>1,x=>$x1, y=>$y1);
$i->circle(color=>$gr,r=>1,x=>$x2, y=>$y2);
my $ocr = LCDOCR->new(
name => 'RSA1',
x1_ref => $x1, y1_ref => $y1,
x2_ref => $x2, y2_ref => $y2,
image => $i,
debug => ($opts{v}||0));
my $digits = $ocr->reco();
if($opts{v}) {
my $font = Imager::Font->new(file =>
"/usr/X11R6/lib/X11/fonts/TTF/Vera.ttf");
$i->string(x => 50, y => 50,
string => "Reco: @$digits",
font => $font, color => "white",
size => 30);
$i->write(file => "out1.jpg",
type => "jpeg");
system("xv out1.jpg") if $opts{d};
}
print join('', @$digits), "\n";