2011-09-17 4 views
2

Bonjour J'ai du mal à trouver des informations sur la façon de lister les images par largeur ou hauteur de pixel avec Image Magick. ce que je veux faire est de filtrer les images qui sont inférieures à une taille spécifiée de largeur ou de hauteur de pixel. Ceci est fait à travers un script Perl et toute aide est appréciée.ImageMagick/Perl trier les images par Pixel width/height

Répondre

0

Utilise l'utilitaire identify de ImageMagick pour obtenir la largeur et la hauteur.

0
  1. Installer le module perl PerlMagick de http://www.imagemagick.org/script/perl-magick.php

  2. code d'utilisation similaire aux exemple de script exemples de cette page Web pour lire chaque image.

  3. Interrogez le nombre de lignes et de colonnes dans chaque image à l'aide $image->Get('rows') et $image->Get('columns') et sauter des images qui sont trop petites.

3

Basé sur un code-je utiliser pour d'autres choses:

use strict; 
use warnings; 

use Image::Magick; 
use Win32::Autoglob; 

my $max_cols = 640; 
my $max_rows = 480; 

IMAGE: 
for my $image_name (@ARGV) { 

    my $image = Image::Magick->new; 
    my $result = $image->Read($image_name); 
    die "Failed to read $image_name - $result" if $result; 

    my ($cols, $rows) = $image->Get('columns', 'rows'); 

    next IMAGE if $cols > $max_cols; 
    next IMAGE if $rows > $max_rows; 

    # your processing here... 

}