ImageMagick v7 インストール・コマンド・オプション一覧

投稿: 2025/9/28
Webサイト

ImageMagickはコマンドラインで画像の変換・圧縮・リサイズ・合成などを一括処理できる強力なツールです。本記事は「初めて使う方向け」に、インストール方法、よく使うコマンドを表で一覧化、用語のやさしい解説、注意点、FAQ、トラブルシューティングまでをひとまとめにしました。

ImageMagick v7 以降では、すべてのコマンド操作の先頭に magick を付けて実行します(例: magick input.jpg ... output.jpg)。これは「magick」というコマンド(プレフィックス)を使うことで、ImageMagick の各種機能(変換・加工・情報取得など)を一貫して呼び出せる仕組みです。
特に Windows では、従来の convert コマンドが OS 標準のファイル変換コマンドと名前が重複するため、必ず magick を使うのが安全です。

ImageMagickとは?

  • 画像の「変換(JPEG→PNG など)」「サイズ変更」「切り抜き」「回転」「合成(透かし・ロゴ)」「最適化(圧縮)」などをコマンドで実行可能。

  • バッチ処理(大量ファイルの一括処理)に強く、再現性が高い(同じコマンドを流せば同じ結果)。

  • Mac / Linux / Windows で利用可。

ImageMagickのインストール

macOS (Homebrewを使うのが一般的で簡単)

  1. Homebrewをインストール (※未インストールの人のみ)

  2. Homebrewでimagemagickをインストール(ターミナルを開いて以下コマンドを実行)

zsh

brew install imagemagick

3.バージョン確認

zsh

magick -version

すぐ使える「頻出コマンド」一覧

コマンド目的・説明よく使うオプション(説明)使用例
magick画像変換・加工の基本コマンド(v7)-resize:画像サイズ変更-quality:圧縮率・画質指定-strip:メタデータ削除-auto-orient:EXIF情報に基づき自動回転-background:背景色指定-gravity:基準位置指定(中央・右下など)-extent:キャンバス拡張・切り抜きmagick in.jpg -auto-orient -resize 1200x -quality 85 -strip out.jpg → 画像を自動回転し、横幅1200pxにリサイズ・圧縮・メタデータ削除して保存
magick identify画像情報の表示-format:表示フォーマット指定(%m:形式, %w:幅, %h:高さ など)magick identify -format "%m %wx%h %r\n" in.jpg → 画像形式・サイズ・色深度などを表示
magick mogrify破壊的に上書きする一括処理-path:出力先ディレクトリ指定-format:出力形式指定-resize:リサイズ-quality:画質指定magick mogrify -path dist -format jpg -resize 1200x -quality 85 src/*.png → PNG画像を一括でJPEG変換・リサイズし、distフォルダに保存
magick montage画像をタイル状に並べて1枚に-tile:並べる行列数指定(例: 3x)-geometry:各画像のサイズ・間隔-background:背景色指定magick montage a.jpg b.jpg c.jpg -tile 3x -geometry 400x400+10+10 -background white out.jpg → 3枚の画像を横3列で並べて1枚の画像に合成
magick composite合成(重ね合わせ、透かし)-gravity:合成位置指定(例: southeast=右下)-geometry:位置調整(+X+Y)-dissolve:透過率指定magick composite -gravity southeast -geometry +20+20 -dissolve 30 wm.png in.jpg out.jpg → in.jpgの右下にwm.pngを30%の透過で重ねる
magick compare2画像の比較(差分出力/評価)-metric PSNR/MSE/AE:比較指標(PSNR=画質, MSE=誤差, AE=差分ピクセル数)-fuzz:許容誤差(色の近似判定)magick compare -metric AE a.jpg b.jpg diff.png → a.jpgとb.jpgの差分をdiff.pngに出力し、差分ピクセル数を表示
magick -crop切り抜き-gravity:切り抜き基準位置+repage:余白情報リセットmagick in.jpg -gravity center -crop 800x800+0+0 +repage out.jpg → 画像の中央を800x800で切り抜く
magick -rotate回転/自動回転-auto-orient:EXIF情報で自動回転-rotate:指定角度で回転magick in.jpg -auto-orient -rotate 90 out.jpg → 画像をEXIF情報で自動回転後、さらに90度回転
magick -colorspace色変換(例: グレースケール)-colorspace Gray:グレースケール変換-profile:ICCプロファイル適用・変換magick in.jpg -colorspace Gray out.jpg → 画像をグレースケール(白黒)に変換
magick -thumbnailサムネイル作成(高速)-thumbnail:高速リサイズ-strip:メタデータ削除-extent:キャンバス拡張・切り抜きmagick in.jpg -thumbnail 400x400^ -gravity center -extent 400x400 -strip thumb.jpg → 400x400の正方形サムネイルを中央トリミングで作成
magick -annotateテキスト描画-font:フォント指定-pointsize:文字サイズ-fill:文字色-annotate:描画位置・内容指定magick in.jpg -font Arial -pointsize 48 -fill white -gravity south -annotate +0+30 "Sample" out.jpg → 画像下部に白文字で「Sample」と描画
magickGIF最適化 アニメGIFの容量削減-coalesce:各フレームを完全画像化-fuzz:色の近似合成-layers Optimize:最適化処理magick in.gif -coalesce -fuzz 5% -layers Optimize out.gif → アニメGIFを最適化してファイルサイズを削減

ヒント: ImageMagick は「引数の順序が結果に影響」します。基本は「入力 → 処理 → 出力」の順で書き、加工オプションは入力の後・出力の前に置きましょう。


代表的なオプション早見表

機能オプション例・説明
リサイズ-resize 1600x(長辺を 1600px に) / -resize 800x800^(短辺基準ではみ出しトリミング前提)
切り抜き-crop 800x800+X+Y / 中央なら -gravity center -crop 800x800+0+0 +repage
画質/圧縮-quality 75..85(JPEG)、-quality 75..85 -alpha quality=90(WebP)
色空間-colorspace sRGB / グレー化 -colorspace Gray
メタデータ削除-strip
自動回転-auto-orient
テキスト-font -pointsize -fill -annotate +x+y "TEXT"
透過処理PNG→JPG で白背景 -background white -alpha remove -alpha off

よく使う実用レシピ(コピペで使える)

画像のリサイズ(縦横比を維持)

magick in.jpg -auto-orient -resize 1600x -quality 85 -strip out.jpg

正方形サムネイル(中央トリミング)

magick in.jpg -thumbnail 400x400^ -gravity center -extent 400x400 -strip thumb.jpg

透かし(右下にロゴを30%で重ねる)

magick composite -gravity southeast -geometry +20+20 -dissolve 30 logo.png in.jpg out.jpg

まとめて WebP に変換(圧縮率高・高画質)

magick mogrify -path webp -format webp -quality 80 -resize 1600x -strip *.jpg

PDF の1ページ目だけを画像にする(高解像度)

magick -density 200 input.pdf[0] -quality 90 -strip page1.jpg

グレースケール化 + 軽量化

magick in.jpg -colorspace Gray -quality 75 -strip out.jpg

初心者向け 用語のやさしい解説

  • DPI(解像度): 印刷解像度の指標。Web では主に画素(px)が重要で、DPI は見た目に直接影響しないことが多い。
  • 画素数(ピクセル寸法): 画像の横幅×縦幅。ファイルサイズや見た目に直結。
  • 色空間(sRGB/AdobeRGB など): 色の表現範囲。Web なら sRGB が無難。異なる色空間は色転びの原因に。
  • EXIF/メタデータ: 撮影日時やカメラ情報、位置情報など。-strip で削除でき、プライバシー対策や軽量化に有効。
  • ICC プロファイル: モニタや色空間の特性を記述。-profile で適用/変換。
  • アルファチャンネル: 透明度の情報。PNG などで背景透過に使われる。
  • デリゲート(delegate): HEIC/WebP/PDF など特定形式を扱うための外部ライブラリ群。未導入だと読み書きできない場合がある。

使用時の注意事項・ベストプラクティス

  • 破壊的コマンドに注意: mogrify は上書きします。元データ保護のため -path で出力先を分けるか、magick input output 形式を推奨。

  • -quality は「画質%」ではない: 主に JPEG の量子化強度。一般的に 75–85 で十分高画質・小容量のバランス。

  • 色が変わる問題: 入出力で色空間が違うと色転びします。Web 目的なら -colorspace sRGB か、-profile sRGB.icc を明示。

  • HEIC/WebP/PDF の対応: 環境に libheif, webp, ghostscript が必要。未導入だと「delegate がない」エラーに。

  • メモリ/ディスク制限: 超高解像度の一括処理では -limit memory 1GiB -limit map 2GiB などの制限指定を検討。

  • ファイル名の扱い: 空白や日本語を含む場合は引用符で囲む(例: "magick \"入力 画像.jpg\" ...")。

  • Windows は convert 禁止: OS の convert と衝突します。必ず magick を使用。

  • オプション順序: 入力 → 加工 → 出力の順で。順序を変えると結果が変わるのが ImageMagick の特徴。

  • メタデータの取扱い: 公開用途は -strip で EXIF を落としてプライバシー保護・軽量化。


よくある質問(FAQ)

QA
v6 と v7 の違いは? どう書けばいい?v7 では magick プレフィックスが基本。従来の convert は互換として magick convert の形で利用可能。Windows では convert が別用途と衝突するため magick 一択。
画質を保ったまま容量を減らしたい。JPEG は -quality 75..85 -strip -auto-orient が定番。さらに -resize で画素を減らすと効果大。WebP なら -format webp -quality 75..85 が有効。
EXIF を残したい/消したい。残す場合は何もしない。消す場合は -strip を指定。
画像の色が変わって見える。入力の色空間や ICC プロファイルが原因。-colorspace sRGB で統一、または -profile sRGB.icc を適用。
透過 PNG を JPEG にすると背景が黒/グレーになる。JPEG は透過非対応。白などに敷く: magick in.png -background white -alpha remove -alpha off out.jpg
バッチでフォルダ内の画像を一括リサイズしたい。magick mogrify -path dist -resize 1200x -quality 85 -strip src/*.jpg のように実行。-path で元画像の破壊を回避。

トラブルシューティング

エラー・現象対処
エラー: command not foundインストールや PATH を確認。mac は brew install imagemagick 後に magick -version
エラー: no decode delegate for this image format対応ライブラリ(HEIC→libheif, WebP→webp, PDF→ghostscript)を導入し、再度確認。
エラー: not authorized に関する PDF/PS の読み込み制限セキュリティポリシー(policy.xml)や ghostscript の導入を確認。安全に配慮の上、許可設定を調整。
エラー: insufficient memory(メモリ不足)-limit memory 1GiB -limit map 2GiB 等で制限調整、解像度を下げる、一時ディスクの空き確保。
出力がおかしい/処理されないオプション順序を見直す(入力→加工→出力)。magick identify で入力情報を把握してから処理。
Windows で convert が別コマンドになるかならず magick を使う。


まとめ

  • まずは **magick** を使い、入力→加工→出力の順序を意識。

  • 表のコマンドとレシピをそのまま試し、慣れたら mogrify で一括化。

  • 色空間・メタデータ・-quality の意味を押さえると、画質と容量の最適化が一気に進みます。

誤りや不足に気付いたら、必要なライブラリ(ghostscript, libheif, webp など)の導入、オプション順序の見直し、色空間の明示を追加すれば精度が上がります。