Linuxターミナルから画像をリサイズして最適化する方法

Linuxユーザーで、他のグラフィカルアプリケーションよりもターミナルを好む場合、ImageMagickを使用してターミナルから直接画像をリサイズ、変換、最適化できることを知って嬉しいでしょう。ImageMagickは、コマンドラインから画像を操作するためのLinux用ツールのスイートです。また、多くのグラフィック関連アプリケーションの背後にある画像処理プログラムでもあります。ここでは、ターミナルから画像をリサイズする方法を示します。
目次
- ImageMagickのインストール
- 画像情報の表示
- 画像のリサイズ
- 画像フォーマットの変更
- 画像品質の低下
- 画像の回転
- GIFファイルの作成
- 画像にウォーターマークを追加
- 画像からExifデータを削除
こちらもお読みください: XnConvertを使用して画像をバッチリサイズする方法
ImageMagickのインストール
始める前に、まずシステムにImageMagickをインストールする必要があります。
UbuntuまたはDebianベースのディストリビューションの場合:
sudo apt install imagemagickFedoraの場合:
sudo dnf install ImageMagickArch Linuxの場合
sudo pacman -S imagemagick画像情報の表示
ImageMagickがインストールされたので、これを使用して画像に関するすべての情報を表示できます。
identify -verbose たとえば、画像の元の寸法を確認するには、次のコマンドを使用します:
identify -format "%wx%h" 
写真の場合、Exifデータも表示できます:
identify -verbose | grep exif 画像のリサイズ
さて、600X300pxにリサイズしてみましょう。コマンドは次のとおりです:
convert -resize 600x300 
画像を特定のパーセンテージにリサイズすることもできます。たとえば、「Maketecheasier.png」を50%縮小するには、次のコマンドを使用します:
convert -resize 50% ここでのリサイズ方法は、縮小に制限されません。画像を拡大するためにも使用できます。たとえば、画像のサイズを2倍にするには:
convert -resize 200% 元の画像を上書きしたい場合は、代わりにmogrifyコマンドを使用できます。これはconvertコマンドに似ていますが、使いやすく、元のファイルを上書きします。
mogrify -resize 400x200 フォルダ内のすべての画像をバッチリサイズ
特定のディレクトリ内のすべての画像を簡単にリサイズできます。これにより、画像を特定の寸法に一括リサイズできます。たとえば、「Screenshots」ディレクトリに5つの画像があり、これらの画像のサイズを50%リサイズしたい場合、次のコマンドを実行します:
cd ~/Screenshots
for img in *.jpg; do
convert -resize 50% "$img" "Resized_$img"; done注意: JPG以外の画像フォーマットを扱っている場合は、上記のコマンドの画像フォーマットを変更してください。

画像フォーマットの変更
画像のフォーマットを変更したい場合は、出力名を新しいフォーマットに変更するだけです。たとえば、「Maketecheasier.png」を「Maketecheasier.jpg」に変換するには、次のコマンドを使用します:
convert Maketecheasier.png Maketecheasier.jpg画像品質の低下
ImageMagickを使用して画像の品質を変更することもできます。たとえば、システムでスクリーンショットを撮ると、通常は大きなサイズのpngファイルとしてキャプチャされます。サイズを減らすために、スクリーンショットの品質を下げてjpgファイルに変換できます:
convert screenshot.png -quality 80 screenshot-new.jpg画像の回転
画像を回転させるには、-rotateオプションと回転させたい度数を使用するだけです。たとえば、次のコマンドは90度回転した「screenshot.jpg」を作成します:
convert screenshot.jpg -rotate 90 screenshot.jpgGIFファイルの作成
jpgファイルがたくさんあり、アニメーションGIFを作成したい場合、ImageMagickもそれを行うことができます。すべてのjpgファイルを読み込んで、gifとして出力するだけです:
cd Screenshots
convert *.jpg animated.gif画像にウォーターマークを追加
時には、既存の画像にテキストやロゴ/グラフィックを追加する必要があるかもしれません。これには、-appendオプションを使用します。この例では、画像の下部に内容に関するメモを追加するバーを追加しています。
convert tux.jpg -background Khaki label:'これはTuxです!' -gravity Center -append tux_annotated.jpg画像からExifデータを削除
プライバシー対策として、JPEG写真からすべてのExifデータを削除することが有用な場合があります。mogrifyコマンドを使用してこれを行うことができます:
mogrify -strip IMG_0123.JPGよくある質問
ImageMagickはまだメンテナンスされていますか?
はい、ImageMagickは1990年代から利用可能で、現在も定期的にメンテナンスされています。ImageMagickの新しい安定版アップデートは2022年6月20日にリリースされ、このツールのスイートには最新のリリースで改善するためのアクティブなアップデートポリシーがあります。
画像を品質を損なわずにリサイズできますか?
いいえ、画像をリサイズすると常に品質が低下します。画像のサイズを350pxから250pxに縮小すると、元のサイズに戻したときに画像は不明瞭になります。
ImageMagickのグラフィカルアプリケーションはありますか?
ImageMagickは主にコマンドラインツールであり、開発者はGUIツールを作成していません。ただし、ImageMagickをバックエンドとして使用するサードパーティ製ソフトウェアは多数あります。例としては、FotoKilofがあります。
ImageMagickは安全ですか?
最初はImageMagickにいくつかのセキュリティ関連の問題がありましたが、現在は安全に使用できます。ImageMagickにはユーザーのために安全性を高めるための厳格なセキュリティポリシーがあります。開発者はプライバシー問題を引き起こしていたバグも修正しました。