Showing posts with label imagemagick. Show all posts
Showing posts with label imagemagick. Show all posts

Monday, December 14, 2015

IMAGEMAGICK INTRODUCTION

ImageMagick is an open source utility that supports a huge selection of robust and sophisticated image editing methods. Its source code download site is:

http://www.imagemagick.org/download/

Users may find it convenient to download the executable binaries, for their specific operating system, from:

http://www.imagemagick.org/script/binary-releases.php

Hundreds of ImageMagick methods are described in detail, and useful examples are provided, at:

http://www.imagemagick.org/Usage/

There are several things you should know about ImageMagick:

1. Unlike the commercial image processing applications, ImageMagick has no graphic user interface. ImageMagick is intended to serve as a command line utility.

2. ImageMagick is powerful. There are hundreds of available methods for creating and modifying images.

3. ImageMagick can be called from Python, Perl, or Ruby via system calls or via language-specific ImageMagick interface modules (i.e., PerlMagick, PythonMagick, or RMagick)

Here is one example of a command line that can be launched from your system prompt, after you've installed the ImageMagick software:

c:\>convert -size 750x500 gradient:gray90-black gradient.png

produces gradient.png, as shown:



Simple, small, graded images are pleasing to the eye and make excellent background images and textures that do not detract from any information that you might want to add to the image.

I'll be posting additional ImageMagick command lines that you might find useful.

© 2008 Jules Berman

As with all of my scripts, lists, web sites, and blog entries, the following disclaimer applies. This material is provided by its creator, Jules J. Berman, "as is", without warranty of any kind, expressed or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. in no event shall the author or copyright holder be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the material or the use or other dealings.
key words: imagemagick, image, command line, open source, background

Sunday, December 13, 2015

Greyscale Batch Conversion of Image Files

Using ImageMagick, it's easy to convert all the image files in a directory to black and white. Here are short scripts implemented in Perl, Python, and Ruby that open the current directory, parse through all the filenames in the directory, to create greyscale versions of jpg, gif, bmp, or png images. Each greyscale copy of an image file is provided with a new filename consisting of "_bw" appended to the filename prefix (e.g., dog.png is copied as the greyscale file, dog_bw.png)
#!/usr/bin/perl
opendir(FILES, ".") || die ("Unable to open directory");
@in_files = readdir(FILES);
closedir(FILES);
foreach $filename (@in_files)
   {
   if ($filename =~ /([a-z0-9\_]+)(\.[gifbmpjpgn]{3}) *$/i)
     {
     $out_file = $1 . "_bw" . $2;
     system("convert ${filename} -set colorspace Gray -separate -average ${out_file}");
     }
   }
exit;

#!/usr/local/bin/python
import os, re, string
filelist = os.listdir(".")
for file in filelist:
  if ".jpg" in file or ".bmp" in file or ".gif" in file or ".png" in file: 
    outfile = "bw_" + file 
    command = "convert " + file + " -set colorspace Gray -separate -average " + outfile
    os.system(command)
    #print command
exit

#!/usr/local/bin/ruby
filelist = Dir.glob("*.*")
filelist.each do
 |file|
 if file =~ /([a-z0-9\_]+)(\.[gifbmpjpgn]{3}) *$/i
    out_file = $1 + "_bw" + $2
    system("convert " + file + " -set colorspace Gray -separate -average " + out_file)
  end
end
exit
© 2008 Jules Berman

As with all of my scripts, lists, web sites, and blog entries, the following disclaimer applies. This material is provided by its creator, Jules J. Berman, "as is", without warranty of any kind, expressed or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. in no event shall the author or copyright holder be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the material or the use or other dealings.