RMagickで画像情報取得

Filed under Ruby
Tagged as ,

ローカル環境にある大量にある画像の情報を取得してみたくて、どうしようかと悩み、RMagickを使うことにしたときのメモです。

他のライブラリについて

結論から言うと、ImageMagick + RMagickというRubyライブラリを使うことで問題は解決したのですが、そこにたどり着くまでの経緯をメモしておきます。
まず、検討している作業環境はWindowsなのですが、Rubyをかまして処理したくて、あれこれとライブラリを検討してみました。
最初に悩んだのはライブラリ。画像処理ライブラリをあれこれ探してみたら、だいたいがLinux系のライブラリの情報が見つかります。それに惑わされ、imlib2、GDという2つのライブラリを入れようとしていましたが、どうにもその後のrubyライブラリを入れるところで躓き、なかなか環境が構築できませんでした。

Windowsインストーラが素晴らしいImageMagick

最後に試したのがImageMagick
これはWindows版のインストーラもきちんとあり、DLLも配置してパスまで通してくれるので、これが一番でした。
インストーラも上記サイトで公開されているのですが、Ruby(RMagick)で使いたい人はダウンロードをちょっと待ってください。

RMagickサイコー!

私の場合Rubyで処理をしたくて、次に悩んだのが、RubyのImageMagickラッパーライブラリの選択。
gemで探してみるといくつか見つかりますが、最初に試したのがquick_magick。しかし、動作がおかしくてあきらめました。
次に試したのが、RMagick
まず、Windows版のインストーラですが、このページの下部の「rmagick-win32」というところにあります。
RMagick-2.12.0-ImageMagick-6.5.6-8-Q8.zip」というファイルをダウンロードすると、その中にWindows版のImageMagickのインストーラも入っています
このバージョンでしか整合性がとれないよ、ということなのですが、こうしてインストーラまで含めておいてもらえると助かりますね!この気配りは、他のライブラリではあまり見たことない形式だったのでちょっとうれしかったです。
インストール手順ですが、そのImageMagickをインストールし、その後、下記のようなコマンドでファイルに含まれているgemファイルを実行して、RMagickをインストールします。
gem install rmagick-2.12.0-x86-mswin32.gem

RMagickのサンプルコード

画像を読み込み、その縦横サイズを出力するサンプルコードを載せておきます。
[ruby]
require ‘RMagick’
include Magick # ライブラリの初期化.

filename=”C:/test/ruby/test.png”
i = Image.read(filename).first
print filename+”:["+i.columns.to_s+"x"+i.rows.to_s+"]”
[/ruby]

RMagickのHTMLヘルプ

RMagickのライブラリリファレンスですが、微妙に見にくかったりするので、2nd lifeさんがつくられたHTMLヘルプ(.chm)が便利です。3年前のモノですが、私のようなRMagick初心者には十分使えるものとなっています。


[AD]

↓日本語の解説書。

ImageMagick逆引きコマンドリファレンス

著者/訳者:クーガー株式会社 石井 敦

出版社:インプレスジャパン( 2008-11-28 )

定価:¥ 3,780

Amazon価格:¥ 3,780

大型本 ( 308 ページ )

ISBN-10 : 4844326473

ISBN-13 : 9784844326472


↓洋書ですが、良さそうな雰囲気。

Imagemagick Tricks: Web Image Effects from the Command Line And Php

著者/訳者:Sohail Salehi

出版社:Packt Publishing( 2006-06-30 )

定価:¥ 2,805

Amazon価格:¥ 3,020

ペーパーバック ( 232 ページ )

ISBN-10 : 1904811868

ISBN-13 : 9781904811862


Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*