ImageMagickのインストール(WSL環境)

  • 2020.05.10 Sunday
  • 14:01

●ImageMagickとは

 ImageMagickは、この分野の現役ライブラリーでは最も古くかつ今でもメジャーなものの一つで、画像処理として考えられる機能はほぼ完全網羅しています。

ファイルフォーマット変換(この点ではたぶん世界No.1、一覧はhttps://imagemagick.org/script/formats.phpを参照)

画像変換(基本、応用すべて)

サイズ変更、切り取り、拡大縮小、回転、反転、変形、色彩調整(明暗、コントラスト、RGBAlpha, etc.)、各種描画(外枠、文字列、図形等)、様々な特殊効果、アニメーション、モーフィング、ディザー処理、フーリエ変換、etc.これ以外にも山ほど(以下略)

画像変換で何ができるかは次を見るとよいでしょう。

http://www.imagemagick.org/script/examples.php

主要カメラメーカーのraw image (Canon, Kodak, Nikon, Olympus, Sony/Minolta, etc.)

SVG(読み込んでビットマップに変換できます)

画像ライブラリーとして考えられることはほぼ全て対応しており、特に画像を高画質で処理するのに適しています。

 ただし、ImageMagickは様々な画像フォーマットに対応しているため、脆弱性に関して問題があることは否めません。外部より様々な画像を受け取って処理するプログラムとして利用するには向いていないかも知れませんが、逆に言えば、これ程様々なフォーマットに対応していて、階調などのビット精度を正しく処理してくれるプログラムはありません。個人的には、研究開発に用いていて、会社や学校などの内部でフォーマット変換やちょっとした画像処理を行うのには、セキュリティのリスクは少ないのではないかと思っていますが、その辺はフリーソフトの宿命、あくまでも自己責任でお使いください。

 ImageMagickには、convertdisplayanimateなどのプログラムがあり、LinuxUnix系) terminalxtermやコマンドプロンプトなどから動かします。アプリなどのGUIで操作するソフトが一般的には主流なのですが、GUIは最初に使い始める時はマニュアルやヘルプを読まなくても使うことが出来、便利なのですが、動画の処理や同じことを繰り返して操作する時はかえって不便です。ImageMagickはターミナルからコマンドで操作出来るので、後に説明するスクリプトと組み合わせ使うことによって、動画や大量の画像処理にはとても便利です。

 

ステップ1:ImageMagickのインストール

 まずはWSL(Ubuntu)のコンソールからImageMagickがインストールされているか確認し、インストールされていないようならインストールします。

$display

 

Command 'display' not found, but can be installed with:

 

sudo apt install imagemagick-6.q16

sudo apt install graphicsmagick-imagemagick-compat

sudo apt install imagemagick-6.q16hdri

 

$ sudo apt install imagemagick-6.q16

[sudo] <ユーザー名> のパスワード:”のようにパスワードを要求してくるときはパスワードを入力し、続行しますか? [Y/n]”と聞かれたら“y” 続けます。

 Ubuntuはコマンドを打って、無ければどのパッケージをインストールすれば良いか教えてくれます。この辺は便利ですね。

 もう一度、“display”とタイプして見ます。

$display

 次のようなImageMagickの起動画面が現れたら、X Serverは正常に動作しています。

 

ステップ2:convertを使って見る

 ImageMagickの凄いところは、そのサポートしているフォーマットの多さと、いろいろな画像処理コマンドオプションが用意されていることです。windowsのアプリなどでフォーマット変換が行えるビューアー等もあるのですが、ほとんどのアプリは8bitに切り捨てられてしまいます。8bit以上のデータを保持しながらフォーマット変換するためには、ImageMagick以外は本格的な編集ソフトを使うしか無いようです。

 まずはフォーマット変換してみましょう。convertは、画像を変換・合成する際、以下のように<変換前の画像>のファイル形式と、<変換後の画像>のファイル形式を異なる形式にすることにより、ImageMagickが画像の拡張子を自動判別しファイル形式を変換してくれます。

1.ワークディレクトリを作成し、変換前の画像ファイルを入れて置きます。

 Ubuntuのホームディレクトリーは階層が深く、Windowsからは扱いにくいので、D:ドライブにworkというディレクトリーをWindowsのエクスプローラーで作って置きます。そのworkディレクトリーの中に、ここではkimono.pngというPNGフォーマットの画像ファイルを入れて置くことにします。なお、Windowsでは大文字/小文字を区別しませんが、UbuntuLinux)は大文字/小文字をしますので注意してください。

 

2Ubuntuアイコンをダブルクリックして、Ubuntuを起動します。

 

3D:ドライブのworkworkという名前のシンボリックリンクを貼ります。

 Ubuntuでの“D:ドライブ”は“/mnt/d”になります。シンボリックリンク(Windowsのショートカットのような機能)を張ることにより簡単にディレクトリーを移動できるようになります。

$ ln -s /mnt/d/work work

ls

work

$

 

4.シンボリックリンクのworkディレクトリーに移動します。

$ cd work

$ ls

kimono.png

$

 

5.convert  <変換前の画像名> <変換後の画像名>⏎とタイプしてフォーマット変換します。

$ convert kimono.png kimono.bmp

$ls

kimono.bmp

kimono.png

$

 

6. bitmapのファイルが出来ているのが分かります。

 次に、convertはフォーマット変換以外でも、様々な画像処理をオプションで行うことが出来ます。こちらも日本語で全て書いてあるサイトは無いので本家のサイト(https://imagemagick.org/script/convert.php)を参考してみてください。ここでは、よく使いそうな拡大・縮小のオプションについて紹介します。

 

7. convert <変換前の画像名> -resize (percent)% <変換後の画像名>⏎とタイプして拡大・縮小の処理を行います。

$ convert kimono.bmp -resize 200% kimono_x2.bmp

$ls

kimono.bmp

kimono.png

kimono_x2.bmp

$

 

8. kimono_x2.bmpというファイルが出来ているのが分かります。

 

 ヘルプの見方は、

9. convert⏎で英文ヘルプを見ることが出来ます。

$ convert

Version: ImageMagick 6.9.10-11 Q16 x86_64 2018-09-08 https://www.imagemagick.org

Copyright: © 1999-2018 ImageMagick Studio LLC

License: https://www.imagemagick.org/script/license.php

Features: Cipher DPC OpenMP

Delegates (built-in): autotrace bzlib cairo fftw fontconfig fpx freetype gslib jbig jng jp2 jpeg lcms lzma pangocairo png ps rsvg tiff webp x xml zlib

Usage: convert [options ...] file [ [options ...] file ...] [options ...] file

 

Image Settings:

  -adjoin              join images into a single multi-image file

  -affine matrix       affine transform matrix

  -alpha option        activate, deactivate, reset, or set the alpha channel

  -antialias           remove pixel-aliasing

  -authenticate password

                       decipher image with this password

  -attenuate value     lessen (or intensify) when adding noise to an image

  -background color    background color

  -bias value          add bias when convolving an image

  -black-point-compensation

                       use black point compensation

  -blue-primary point  chromaticity blue primary point

  -bordercolor color   border color

       

       

ステップ3:displayを使って見る

 次に変換した画像を見るためにImageMagickのビューアーdisplayを使って見ましょう。

 

1.Ubuntuのターミナルからdisplay <画像名>⏎とタイプすると、下図のようにdisplayが起動します。

$ display kimono_x2.bmp

 

2Commansメニューは画面をマウスで左ボタンをクリックすれば現れ、閉じます。こちらメニューからもいろいろな処理や操作が出来ますので試して見てください。

 

3.画面でescキーまたは右上の×印をクリックして終了です。

 

ステップ4:animateを使って見る

 続いてanimateを使ってみます。animatemp4などのmpegや、何より連番ファイルにも対応しているので非圧縮画像を動画で見ることが出来、画像処理アルゴリズムの評価に使えます。

 

1workディレクトリーに動画ファイルを用意して置きます。

 ここでは、xxxxx.MP4というMP4のファイルを用意しています。

 

2.Ubuntuのターミナルからanimate <画像名>⏎とタイプすると、下のようにanimateが起動します。なお、長いファイルは起動に時間がかかり、メモリを沢山使うので注意してください。非圧縮も扱る1〜2秒程度のクリップ用の動画ビューアーと思っていた方が良いと思います。

$ animate xxxxx.MP4

連番ファイルの場合は、

$ animete example*.bmp

 

3Commansメニューは画面をマウスで左ボタンをクリックすれば現れ、閉じます。こちらメニューからもいろいろな処理や操作が出来ますので試してみてください。

 

4.画面でescキーまたは右上の×印をクリックして終了です。

コメント
コメントする








    

calendar

S M T W T F S
     12
3456789
10111213141516
17181920212223
24252627282930
31      
<< May 2020 >>

selected entries

categories

archives

links

profile

search this site.

others

mobile

qrcode

powered

無料ブログ作成サービス JUGEM