開発運用

Linux 画像編集 コマンド

Linux上での画像編集および操作をコマンドラインから行う方法について、完全かつ包括的なガイドを以下に示します。このガイドでは、画像編集の基本的な操作から高度な処理まで、コマンドラインツールを使用する方法を解説します。Linux環境で画像を効率よく操作するための知識を深めることができます。

1. コマンドラインツールのインストール

Linuxで画像を操作するためには、まず適切なツールをインストールする必要があります。以下のツールが特に有用です。

1.1 ImageMagick

ImageMagickは、画像の作成、編集、変換を行うための非常に強力なツールです。以下のコマンドでインストールできます。

bash
sudo apt-get install imagemagick # Debian/Ubuntu系 sudo yum install imagemagick # RHEL/CentOS系

ImageMagickは、画像のリサイズ、フォーマット変更、合成、色調整、テキストの追加など、幅広い操作をサポートします。

1.2 GraphicsMagick

GraphicsMagickは、ImageMagickと同様の機能を提供するツールで、より軽量で効率的です。以下のコマンドでインストールできます。

bash
sudo apt-get install graphicsmagick # Debian/Ubuntu系 sudo yum install graphicsmagick # RHEL/CentOS系

2. 画像のリサイズ

画像のリサイズは、最も基本的な操作の一つです。ImageMagickを使用して、以下のコマンドで画像をリサイズできます。

bash
convert input.jpg -resize 800x600 output.jpg

上記のコマンドでは、input.jpgという画像を800×600ピクセルにリサイズして、output.jpgという名前で保存します。アスペクト比を維持したい場合は、次のように指定します。

bash
convert input.jpg -resize 800x600\> output.jpg

800x600\>は、指定したサイズよりも大きい場合のみリサイズを適用することを意味します。

3. 画像のフォーマット変換

画像フォーマットの変換も非常に簡単です。ImageMagickを使用して、JPEG画像をPNGに変換するには、以下のコマンドを使用します。

bash
convert input.jpg output.png

また、複数の画像を一括で変換することも可能です。

bash
mogrify -format png *.jpg

このコマンドは、現在のディレクトリ内のすべてのJPEG画像をPNG形式に変換します。

4. 画像にテキストを追加

画像にテキストを追加する場合、convertコマンドを使用して簡単に実行できます。例えば、画像の中央にテキストを追加する場合は次のようにします。

bash
convert input.jpg -pointsize 24 -draw "text 100,100 'Hello World'" output.jpg

このコマンドでは、input.jpgに「Hello World」というテキストを座標(100,100)に追加し、結果をoutput.jpgとして保存します。-pointsizeでテキストのサイズを指定できます。

5. 画像の回転

画像の回転も簡単に行えます。例えば、90度回転させるには次のコマンドを使います。

bash
convert input.jpg -rotate 90 output.jpg

6. 画像のトリミング

画像の一部を切り取ることも可能です。例えば、左上から幅200px、高さ200pxの領域を切り取るには次のようにします。

bash
convert input.jpg -crop 200x200+0+0 output.jpg

ここで、200x200は切り取る領域の幅と高さ、+0+0は切り取る開始位置を指定します。

7. 画像のフィルタリング

画像にフィルタをかけることで、視覚的な効果を追加することができます。例えば、画像をぼかすには以下のコマンドを使用します。

bash
convert input.jpg -blur 0x8 output.jpg

0x8はぼかしの強度を指定します。

8. 画像の合成

複数の画像を重ね合わせることも可能です。例えば、2つの画像を重ね合わせる場合は次のコマンドを使用します。

bash
composite -gravity center overlay.png background.jpg output.jpg

このコマンドでは、overlay.pngbackground.jpgの中央に重ね合わせ、結果をoutput.jpgとして保存します。

9. 複数画像のバッチ処理

ImageMagickでは、複数の画像を一括で処理するためのスクリプトを書くことができます。例えば、すべてのJPEG画像をPNGに変換するバッチ処理を行うには、次のようなシェルスクリプトを使用します。

bash
for i in *.jpg; do convert "$i" "${i%.jpg}.png" done

このスクリプトは、現在のディレクトリ内のすべてのJPEGファイルをPNG形式に変換します。

10. 高度な画像処理

ImageMagickには高度な画像処理機能もあります。例えば、画像にグラデーションを追加したり、画像の色調を変更したりできます。例えば、画像の色合いを変更するには次のようにします。

bash
convert input.jpg -modulate 100,150,100 output.jpg

このコマンドでは、input.jpgの色合いを変更し、結果をoutput.jpgに保存します。

11. 画像の圧縮

画像の圧縮も重要な操作です。ImageMagickを使用して、JPEG画像を圧縮する場合、以下のコマンドを使います。

bash
convert input.jpg -quality 85 output.jpg

-qualityオプションで圧縮の品質を指定できます。ここでは85%の品質に設定しています。

まとめ

Linuxのコマンドラインツールを使って、画像編集を行う方法について詳しく解説しました。ImageMagickやGraphicsMagickを使用することで、リサイズ、フォーマット変換、トリミング、回転、テキスト追加など、さまざまな画像編集操作を効率的に行うことができます。バッチ処理や高度な画像処理にも対応しており、Linux環境での画像編集を強力にサポートします。

Back to top button