ImageMagick® は、デジタル画像の編集および操作に使用される、フリーのオープンソースソフトウェアスイートです。ビットマップ画像の作成、編集、合成、変換に使用でき、JPEG、PNG、GIF、TIFF、Ultra HDRなど、幅広いファイル形式をサポートしています。
ImageMagickは、Web開発、グラフィックデザイン、ビデオ編集などの業界だけでなく、科学研究、医療画像、天文学でも広く使用されています。その汎用性とカスタマイズ性、および堅牢な画像処理機能により、幅広い画像関連タスクで人気のある選択肢となっています。
ImageMagickには、複雑な画像処理タスクを実行するためのコマンドラインインターフェースと、その機能をソフトウェアアプリケーションに統合するためのAPIが含まれています。C言語で記述されており、Linux、Windows、macOSなど、さまざまなオペレーティングシステムで使用できます。
ImageMagickのメインウェブサイトはhttps://imagemagick.dokyumento.jpにあります。利用可能な最新バージョンはImageMagick 7.1.1-38です。このソフトウェアのソースコードは、リポジトリを通じてアクセスできます。さらに、ImageMagickのレガシーバージョンであるバージョン6も維持しています。
ImageMagickを使用する前に、特定のローカル環境に適合するセキュリティポリシーを作成することを強くお勧めします。このポリシーの設定に関するガイダンスはこちらにあります。また、検証ツールを使用してポリシーを検証することが重要です。
機能と能力
ImageMagickの重要な機能の1つは、スクリプトと自動化のサポートです。これにより、ユーザーは手動での介入を必要とせずに自動的に実行できる複雑な画像操作パイプラインを作成できます。これは、多数の画像を処理する必要があるタスクや、定期的に実行する必要があるタスクに特に役立ちます。
ImageMagickには、コアの画像操作機能に加えて、アニメーション、カラーマネジメント、画像レンダリングなどの他の多くの機能も含まれています。これらの機能により、グラフィックデザイン、科学的視覚化、デジタルアートなど、幅広い画像関連タスクに対応できる汎用性の高いツールとなっています。
全体として、ImageMagickは、画像ファイルの表示、変換、編集のための強力で汎用性の高いソフトウェアスイートです。スクリプトと自動化のサポートに加えて、その他の機能も備えており、幅広い画像関連タスクに役立つツールです。
ImageMagickでできることの例をいくつか紹介します。
アニメーション | 画像のグループからGIFアニメーションシーケンスを作成します。 |
バイラテラルぼかし | 非線形で、エッジを保持し、ノイズを低減するスムージングフィルターです。 |
カラーマネジメント | カラープロファイルを使用した正確なカラーマネジメント、または代わりに、色空間で要求される組み込みのガンマ圧縮または拡張。 |
カラー閾値処理 | カラー範囲内のすべてのピクセルを強制的に白にし、それ以外は黒にします。 |
コマンドライン処理 | コマンドラインからImageMagickを利用します。 |
複雑なテキストレイアウト | 双方向テキストのサポートとシェーピング。 |
合成 | ある画像を別の画像に重ねます。 |
連結成分ラベリング | 画像内の連結領域に一意のラベルを付けます。 |
凸包 | 画像の前景オブジェクトを含む最小面積の凸多角形。さらに、最小外接矩形と回転しない角度も生成されます。 |
装飾 | 画像に境界線またはフレームを追加します。 |
画像の特徴の描写 | Cannyエッジ検出、Hough線。 |
離散フーリエ変換 | 順方向および逆方向のDFTを実装します。 |
分散ピクセルキャッシュ | 中間ピクセルストレージを1つ以上のリモートサーバーにオフロードします。 |
描画 | 画像に図形やテキストを追加します。 |
画像の暗号化または復号化 | 通常の画像を判読不能な文字化けに変換し、元に戻します。 |
形式変換 | 画像をある形式から別の形式に変換します(例:PNGからJPEG)。 |
一般化されたピクセル歪み | 遠近感を含む画像の歪みを修正または誘発します。 |
異種分散処理 | 特定のアルゴリズムは、CPU、GPU、その他のプロセッサで構成される異種プラットフォーム間で連携して実行することにより提供される高速化を利用するためにOpenCL対応になっています。 |
ハイダイナミックレンジ画像 | 最も明るい直射日光から最も暗い影まで、実際のシーンで見られる幅広い強度レベルを正確に表現します。 |
ヒストグラム平坦化 | 適応ヒストグラム平坦化を使用して、画像のコントラストを改善します。 |
イメージキャッシュ | ローカルフォルダーに画像、画像シーケンス、ビデオ、オーディオ、またはメタデータをキャッシュするための安全な方法とツール。 |
画像計算 | 画像、画像シーケンス、または画像チャネルに数式を適用します。 |
画像グラデーション | 水平、垂直、円形、または楕円形の形状を持つ2つの色の段階的なブレンドを作成します。 |
画像識別 | 画像の形式と属性を記述します。 |
iPhoneでのImageMagick | iOSデバイス(iPhoneやiPadなど)で画像を変換、編集、または合成します。 |
大画像サポート | メガ、ギガ、テラピクセルの画像サイズを読み取り、処理、または書き込みます。 |
モンタージュ | 画像キャンバスに画像のサムネイルを並べます。 |
図形の形態 | 画像内の特徴を抽出し、図形を記述し、パターンを認識します。 |
動画サポート | デジタルフィルムワークで使用される一般的な画像形式を読み書きします。 |
マルチスペクトル画像 | 最大32バンドのマルチスペクトル画像(うち22バンドはメタチャネル)をサポートします。 |
ノイズと色の削減 | 桑原フィルター、平均シフト。 |
知覚ハッシュ | 視覚的に同一の画像を同じまたは類似のハッシュにマッピングします。これは、デジタル透かしだけでなく、画像検索、認証、インデックス作成、またはコピー検出に役立ちます。 |
特殊効果 | 画像をぼかしたり、シャープにしたり、閾値処理したり、色付けしたりします。 |
テキストとコメント | 画像に説明文または芸術的なテキストを挿入します。 |
実行スレッドのサポート | ImageMagickはスレッドセーフであり、ほとんどの内部アルゴリズムは並列に実行され、マルチコアプロセッサチップによって提供される高速化を利用します。 |
変換 | 画像のサイズ変更、回転、傾き補正、トリミング、反転、または切り抜きを行います。 |
透明度 | 画像の一部を不可視にします。 |
仮想ピクセルサポート | 画像境界外のピクセルへの便利なアクセス。 |
ImageMagickの使用例では、コマンドラインからソフトウェアを使用してさまざまな効果を実現する方法を示しています。ウェブサイトには、Fred's ImageMagick Scriptsと呼ばれるいくつかのスクリプトも用意されており、これを使用して幾何学的変換、画像のぼかしとシャープ化、ノイズの除去、およびその他の操作を実行できます。さらに、Magick.NETというツールを使用すると、ユーザーは自分のシステムにソフトウェアをインストールしなくてもImageMagickの機能にアクセスできます。最後に、ウェブサイトには、WindowsシステムでImageMagickを使用するためのヒントと例をまとめたクックブックも含まれています。
コミュニティ
ディスカッションサービスに参加して、ImageMagickコミュニティに参加してください。ここでは、他のImageMagickユーザーから寄せられた質問への回答を見つけたり、自分の質問をしたりできます。技術的な質問、改善の提案、またはバグの修正がある場合は、コミュニティからヘルプを得るためにイシューを開くこともできます。