mcpField
I
ImageMagick

ImageMagick

公式Agent-ready
github.comメディアツール17.8kmagick今日更新
リポジトリ公式サイト

ImageMagick について

ImageMagick はコマンドラインから画像の作成、編集、合成、変換ができるツールです。多くの画像形式に対応し、スクリプトで自動化できます。

主な機能

  1. 01画像のサイズ変更、トリミング、フォーマット変換
  2. 02画像のプロパティやメタデータを取得
  3. 03複数の画像を合成・変形

活用シーン

  1. 01ビルドパイプラインの画像処理を自動化
  2. 02バッチワークフローでメディア形式を変換
  3. 03コーディングエージェント用に画像データを処理

インストール

OS またはパッケージマネージャーを選び、コマンドをターミナルで実行します。

$
brew install imagemagick

インストール後にmagick --versionを実行して確認します。

コマンド例

よく使うコマンドを使う順に並べています。

01
magick input.png -resize 50% output.png
02
magick identify image.png

詳細

ImageMagick

Build Status Fuzzing Status Donate

ImageMagick ロゴ

ImageMagick®は、デジタル画像の編集や加工に使用される、無料のオープンソースソフトウェアスイートです。ビットマップ画像の作成、編集、合成、変換に使用でき、JPEG、PNG、GIF、TIFF、PDFなど、幅広いファイル形式に対応しています。

ImageMagickとは?

ImageMagickは、ウェブ開発、グラフィックデザイン、動画編集などの業界に加え、科学研究、医用画像、天文学でも広く使用されています。多用途でカスタマイズ可能な性質と堅牢な画像処理機能を備えており、幅広い画像関連タスクで人気の選択肢となっています。

ImageMagickには、複雑な画像処理タスクを実行するためのコマンドラインインターフェースのほか、その機能をソフトウェアアプリケーションに統合するためのAPIが含まれています。Cで記述されており、Linux、Windows、macOSなど、さまざまなオペレーティングシステムで使用できます。

ImageMagickのメインウェブサイトはhttps://imagemagick.orgです。このソフトウェアのソースコードには、リポジトリからアクセスできます。また、ImageMagickのレガシーバージョンであるバージョン6も提供しています。

ImageMagickを使用する前に、特定のローカル環境に適したセキュリティポリシーを作成することを強くお勧めします。このポリシーの設定方法については、ガイダンスをご覧ください。また、検証ツールを使用してポリシーを検証することも重要です。

機能と能力

ImageMagickの主な機能の1つは、スクリプトと自動化に対応していることです。これにより、ユーザーは手動で介入することなく自動実行できる、複雑な画像加工パイプラインを作成できます。大量の画像を処理する必要があるタスクや、定期的に実行する必要があるタスクで特に役立ちます。

ImageMagickは、画像加工の基本機能に加え、アニメーション、カラーマネジメント、画像レンダリングなど、さまざまな機能も備えています。これらの機能により、グラフィックデザイン、科学的な可視化、デジタルアートなど、幅広い画像関連タスクに対応する多用途のツールとなっています。

全体として、ImageMagickは画像ファイルの表示、変換、編集に対応した、強力で多用途なソフトウェアスイートです。スクリプトと自動化への対応に加え、その他の機能も備えているため、幅広い画像関連タスクで役立つツールです。

ImageMagickでできることの例をいくつかご紹介します。

  • アニメーション:非線形で、エッジを保持し、ノイズを低減する平滑化フィルターです。
  • バイラテラルぼかし:非線形で、エッジを保持し、ノイズを低減する平滑化フィルターです。
  • カラーマネジメント:カラープロファイルによる正確なカラーマネジメント、またはカラースペースに応じて必要となる内蔵ガンマ圧縮・拡張を行います。
  • カラーしきい値処理:指定した色範囲内のすべてのピクセルを白にし、それ以外を黒にします。
  • コマンドライン処理:コマンドラインから ImageMagick を使用します。
  • 複雑なテキストレイアウト:双方向テキストのサポートとシェーピングに対応します。
  • 合成:ある画像を別の画像に重ねます。
  • 連結成分ラベリング:画像内の連結領域に個別のラベルを付けます。
  • 凸包:画像の前景オブジェクトを含む最小面積の凸多角形を求めます。さらに、最小境界ボックスと回転補正角度も生成します。
  • 装飾:画像に境界線またはフレームを追加します。
  • 画像特徴の輪郭検出:Canny エッジ検出、平均シフト、Hough 変換による直線検出を行います。
  • 離散フーリエ変換:順変換および逆変換の DFT を実装しています。
  • 分散ピクセルキャッシュ:中間ピクセルデータの保存を、1 台以上のリモートサーバーにオフロードします。
  • 描画:画像に図形やテキストを追加します。
  • 画像の暗号化・復号:通常の画像を判読不能なデータに変換し、元に戻します。
  • 形式変換:画像をある 形式 から別の形式(例:PNG から JPEG)に変換します。
  • 一般化ピクセル歪み:遠近法を含む画像の歪みを補正、または発生させます。
  • 異種分散処理:一部のアルゴリズムは OpenCL に対応しており、CPU、GPU、その他のプロセッサで構成される異種プラットフォーム間で連携実行することで高速化できます。
  • ハイダイナミックレンジ画像:直射日光の最も明るい部分から最も暗い影まで、実際のシーンに見られる幅広い輝度レベルを正確に表現します。
  • ヒストグラム平坦化:適応型ヒストグラム平坦化を使用して画像のコントラストを改善します。
  • 画像キャッシュ:画像、画像シーケンス、動画、音声、メタデータをローカルフォルダーにキャッシュするための、安全な方法とツールです。
  • 画像計算機:画像または画像チャンネルに数学式を適用します。
  • 画像グラデーション:水平、垂直、円形、楕円形のいずれかの形状で、1 色を徐々にブレンドします。
  • 画像情報の識別:画像の形式と属性を説明します。
  • iPhone 上の ImageMagick:iPhone で画像を変換、編集、合成します。
  • 大容量画像のサポート:メガピクセル、ギガピクセル、テラピクセルサイズの画像を読み込み、処理、書き出しします。
  • モンタージュ:画像キャンバス上に画像のサムネイルを並べます。
  • 形状のモルフォロジー:画像から特徴を抽出し、形状を記述し、パターンを認識します。
  • 動画のサポート:デジタル映像制作で一般的に使用される画像形式を読み込み、書き出します。
  • マルチスペクトル画像:最大 64 バンドのマルチスペクトル画像をサポートします。
  • ノイズと色の低減:Kuwahara フィルター、平均シフトに対応します。
  • 知覚ハッシュ:視覚的に同一の画像に同じ、または類似したハッシュを割り当てます。画像検索、認証、インデックス作成、コピー検出、デジタル透かしに役立ちます。
  • 特殊効果:画像をぼかす、シャープにする、しきい値処理する、または色合いを加えます。
  • テキストとコメント:説明用または装飾用のテキストを画像に挿入します。
  • スレッド実行のサポート:ImageMagick はスレッドセーフであり、内部アルゴリズムの大部分は OpenMP に対応しているため、マルチコアプロセッサーによる高速化を活用できます。
  • 変換:画像のサイズ変更、回転、傾き補正、切り抜き、反転、トリミングを行います。
  • 透明度:画像の一部を見えなくします。
  • 仮想ピクセルのサポート:画像領域外のピクセルに簡単にアクセスできます。 ImageMagick の使用例では、さまざまな効果を実現するために、コマンドラインからソフトウェアを使用する方法を紹介しています。また、ウェブサイトにはFred's ImageMagick Scriptsというスクリプト集もあり、幾何学変換、画像のぼかしやシャープ化、ノイズ除去などの操作に使用できます。さらに、システムにソフトウェアをインストールせずに ImageMagick の機能を利用できるツール、Magick.NETもあります。最後に、Windows システムで ImageMagick を使用するためのヒントや例をまとめたクックブックもウェブサイトに掲載されています。

ニュース

ImageMagick を使用する前に、特定のローカル環境に適したセキュリティポリシーを作成することを強くお勧めします。このポリシーの設定方法については、こちらをご覧ください。また、検証ツールを使用してポリシーを検証することも重要です。ImageMagick バージョン 7.1.1-16 以降では、次のセキュリティポリシーから選択し、カスタマイズできます:Open、Limited、Secure、Websafe。

デフォルトでは、ImageMagick は最大 32 チャンネルをサポートしています。ImageMagick バージョン 7.1.1-16 以降では、Linux の configure ビルドスクリプトに --enable-64bit-channel-masks オプションを追加することで、最大 64 チャンネルを有効にできます。Windows では自動的に有効になります。

ImageMagick のパフォーマンスをさらに高めたい場合は、次のオプションをお試しください:

これらのオプションを利用するのが難しい場合は、画像の品質を下げることができます。デフォルトのビルドは Q16 HDRI です。HDRIを無効にすると、メモリ使用量が半分になり、主に浮動小数点演算を行う代わりに、一般に効率の高い整数演算を使用します。その代わり、精度が低下し、範囲外のピクセル値(負の値など)を処理できなくなります。ImageMagick を Q8 非 HDRI 版としてビルドすると、メモリ要件はさらに半分になりますが、精度がさらに低下し、範囲外のピクセル値を扱えなくなります。ImageMagick を Q8 非 HDRI ビルドするには、次の configure スクリプトオプションを使用します:--with-quantum-depth=8 --disable-hdri。

コメント