Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: Using Perl and the GIMP to compare images

by Anonymous Monk
on Feb 06, 2006 at 14:08 UTC ( [id://528242]=note: print w/replies, xml ) Need Help??


in reply to Using Perl and the GIMP to compare images

I have done something very similar under windows, but used ImageMagick instead of GIMP. ImageMagick has code built in for the comparison part. Here are some code snippets to give you some ideas:
# http://www.imagemagick.com/ use Image::Magick; use Win32::Screenshot; # to capture screenshots directly into image +magick bjects: sub Capture_Screen { @$image = (); $image = CaptureScreen( ); die "FAILED: Capture-Screen\n" unless ( defined $image ); # my ($w, $h) = $image->Get('columns','rows'); print "Captured: $ +w,$h\n"; $image->Set(matte=>'False'); # $image->Write('captured_scr.bmp'); } sub Capture_Area { $image2 = CaptureRect( 10,730,190,11 ); die "FAILED: Capture-Screen\n" unless ( defined $image2 ); } sub Get_Predefined_Images { # reading predefined images from disk into a hash: for my $nm ( qw( )) { $dsk_img{$nm} = Image::Magick->new(magick=>'bmp'); my $bmp_nm = "IMG_" . $nm . '.bmp'; $x = $dsk_img{$nm}->Read($bmp_nm); warn "$x" if "$x"; } } sub Compare_Area { my $wca_img = CaptureRect( $x,$y,35,13 ); die "FAILED: capture-rectangle\n" unless ( defined $wca_img ); # $cmp_img is image to compare against. $xx = $wca_img->Compare( image => $cmp_img ); warn "Status_Img: $xx" if "$xx"; my $result = $wca_img->Get('mean-error'); # $result is 0 or near zero when images match. return(1) if $result == 0; }

Replies are listed 'Best First'.
Re^2: Using Perl and the GIMP to compare images
by sailortailorson (Scribe) on Feb 06, 2006 at 22:47 UTC

    Thanks,

    This is more or less the kind of thing I was looking for (first, to know that it is do-able, and to avoid looking in the wrong places).
    This part will come a little later in the project, but I will start to gather some resources, starting with your snippets now.

    Thank you Anonymous Monk.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://528242]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others goofing around in the Monastery: (3)
As of 2024-12-06 16:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Which IDE have you been most impressed by?













    Results (44 votes). Check out past polls.