画像を圧縮するにはどうすればよいですか?


25

圧縮する必要がある5,000個の画像があります(私のWebサイトに表示するため)。

Ubuntuは初めてです。だから私は何をしますか?



@MostafaAhangarha:重複していません。私の回答askubuntu.com/a/781588/9598を読んで、この質問を閉じないように投票を再検討してください。それは良いものです。ありがとうございました!
Geppettvs D'Constanzo

回答:


21

私はTrimageを非常にシンプルに使用しています。

画像を追加するだけで、インストールするために圧縮されます:

sudo apt-get install trimage

ここに画像の説明を入力してください


2
私はそれが欲しいの圧縮方法を定義することが可能な任意の設定、ファイルサイズなどが表示されない
プエルトリコ

46

「圧縮」という言葉はこの質問で誤って解釈されているように見えますが、これを見たい文脈によってはまだ有効です。

景色

実際の実稼働環境で直接作業している場合、Webデザイナー、Web開発者、および/またはWebマスターは、イメージファイルを「圧縮」して、ホスティングにすばやくアップロードするのに十分な「軽量」にする必要があります。ローカルのテスト運用環境で作業している場合、これは影響しません。

答えの多くは他の事柄を参照しているように見えますが、その主な原因は、おそらくそのような景色に直面していないことです。それが私がこれを説明し始める理由です。

そう。答えが解決する必要があるものを理解しましょう:

  1. 写真は軽量でなければなりません
  2. 画像は失うのファイルサイズに順に「圧縮」が、この質問に複製を指摘し、別のユーザーによって参照さとして「rezised」であってはならないことをJPGバッチ圧縮&名前変更(-exec、xargsの、配管を見つけます?)
  3. 画像は、できればGUIを使用してバッチ圧縮する必要があります。

軽量画像

まず、「軽量の画像」がどうあるべきかを理解しましょう。

解像度が1024pxを超える高解像度画像のファイルサイズは大きい場合があります。このスクリーンショットに例を示します。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

ファイルプロパティウィンドウで、これが9.5 MBのファイルであることがわかります。これは、アップロードするのにかなりの遅延があり、Webサイトで公開されたときに画面にレンダリングするのにかなりの遅延があります。

それにもかかわらず、画像サイズとグリッド解像度は、高解像度印刷に本当に役立ちます。そのため、この説明では取り上げない別の風景です。

それで、アップロードするのに何年も待たずにウェブサイトでこの画像を使用し、私のウェブサイトにそれを表示するために他の年を待つことができますか?

ファイルを圧縮する必要があります。

そして、「圧縮」について話すとき、私たちが直面しているケースで使用できるようにするために、その品質を明示的に変更する必要があります。

それでは、ターミナルに次のものをドロップしましょう:

convert seminario-tabloide.png test.jpg

これにより、高解像度のPNG形式が「圧縮された」JPG形式に変換されます。9.5 MBから2.4 MBになります。

ここに画像の説明を入力してください

まだ大きい?

しかし、2.4 MBはまだ大きなファイルサイズです。ファイルサイズを小さくするために、他のImageMagick 変換コマンドをいくつか試してみましょう。

convert test.jpg -quality 50% test-50p.jpg

これは、画像を「圧縮」するために必要なことです。これにより、画像の品質が50%低下し、938.4 KB <===(注:メガバイトではなくKILOBYTES)ファイルサイズが提供されます。

次の方法で同じコマンドのパーセンテージを調整することで、さらに進んでファイルサイズを小さくすることができます。

convert test.jpg -quality 30% test-30p.jpg

この例では、画像のサイズではなく、ファイルの品質を低下させていることに留意してください。これにより、画面にレンダリングされたときに視覚的に影響されない圧縮ファイルが作成されますが、大きな用紙サイズ(レターよりも大きい)で印刷するとアーティファクトが表示されます。

サイズ変更+圧縮=超クール!

今。別のことができます。実際にいくつかのこと:最初に画像のサイズを変更してから圧縮を適用すると、元のファイルサイズよりもファイルサイズが小さくなり、画面にレンダリングするのに便利な画像が提供されますが、印刷にはあまり適していませんが、印刷されたバナーではなく画面に表示する必要がありますか?

それでは、これを実行しましょう。

convert seminario-tabloide.png -resize 1024x test-1024x.jpg

この指示では、アスペクト比を失わないために必要なピクセル数だけ幅1024ピクセルになるように画像のサイズを変更するように求めています。

さて...何だと思う?

ファイルサイズは9.5 MBから...に縮小されました(コンガ付きのサスペンスミュージックをお願いします)433.7キロバイト

このように最大圧縮ファイルを最大圧縮したい場合、ファイルに挿入されたオーバーヘッドデータに直面し、ファイルサイズが大きくなります。試してみることはお勧めしませんが、あなたが私に例を実行することを期待しているなら、OK ...ここに行きます!

convert test-1024x.jpg -quality 50% test-1024x-50p.jpg

そして、1つのコマンドで433.7 KBから176.2 KBになりました。この例は成功しましたが、それでも演習によってファイルサイズが小さくなるとは思わないでください。しかし、この種のエクササイズを実行するとき、あなたは多くの楽しみを持つことができます。

バッチ処理

ああ!しかし、私はほとんどニーズを忘れています。このプロセスを多くの写真に簡単に適用することです。

そのために、2つのプロセスでそれを行うことができます。

ターミナル

これはより高速で簡単です。したがって、ディレクトリ内のすべてのファイルで同じ命令を実行する必要があることを端末に伝えましょう。その後、他の命令について説明します。

すべてを1024pxに変換します(任意のピクセル量を使用できます)

for i in *; do convert $i -resize 1024x $i-1024x.jpg; done;

ここでは、選択しやすくするために、ディレクトリ内のすべてのファイルに対して同じ命令を実行し、変換を適用し、異なる名前のコピーをドロップするようにコマンドに要求しています。

ディレクトリ内のすべての画像の品質をパーセンテージで下げます(必要に応じて任意のパーセンテージを使用します)。

for i in *-1024x.jpg; do convert $i -quality 50% $i-50p.jpg; done;

ここでは、ファイルサイズを小さくするために、サイズを変更した画像の品質を下げるように求めています。

これらのコマンドを使用して、結果を確認できます。数時間楽しんだ後、あなたは専門家になります。

ノーチラススクリプト

2015年4月20日、元の質問のような状況に直面したため、いくつかの調査を行い、質問について助けを求める必要がありました。それが今、私がこれをたくさん知っている理由です。私がこの知識を持って生まれたとは思わない、男。

端末に慣れていない場合、および/または単にファイルのグループを選択して変換を適用するためにGUIを使用する場合は、独自のNautilusアクションスクリプトを作成して、ファイルのグループを右クリックして選択するだけですコンテキストメニューのオプション。

そのようなことを行う方法については、質問、回答、コメントの両方を読んでください:JPG画像をバッチ処理してNautilus-Actionsで品質を変更するには?

がんばろう!


1
これが「魚を教えて」という答えです。ImageMagickのconvertコマンドラインスキルは素晴らしいものです。
チャーニーケイ

固体!Sublime Textテキストエディターをマルチカーソルモードで使用して、一連のコマンドを一度にすばやく変更して、一連の写真の「バッチ」圧縮を行いました。convert photo.jpg -quality 70% photo_compressed.jpgコマンド形式を使用しただけで、うまくいきました!圧縮を元の品質の70%に設定しただけでも、x軸とy軸の両方に効果が拡大されるため、写真サイズは元の〜37%に減少しました。
ガブリエルステープルズ

しばしば誤解される概念の素晴らしい説明。完全を期すために、バッチ処理の場合、結果を保持するフォルダーを作成してから、そのフォルダーに処理するだけでなく、物事を整理するImageMagickのmogrifyを使用することもできます。例えばmogrify -resize 1600 -path dir_name -format JPG -quality 90 *.tif
デニス・

0

jpegイメージを参照している場合、事実上の圧縮はできません。jpegは定義により圧縮ファイル形式であるため(すべてのノイズと不要なピクセルは既に削除されています)。圧縮しても問題ありませんが、合計サイズはほぼ同じままです。jpegで知っている唯一の高度な圧縮アルゴリズムはzipxです。ただし、zipxはWinzip独自のものであり、最大値を保証します。サイズを30%削減(zipxアーカイブモード)。

ウェブ上に画像を表示するには、最初に画像のサイズを変更し(各画像につき1MB未満)、必要に応じてPNGファイル形式に変換する必要があります。PNG(= portable network graphics)は、高速なWeb転送と高速な表示のために特別に最適化されています。上級ユーザーは、これらの画像をwebp形式(Googleの写真用形式、最速読み込みアルゴリズム)に変換することもできます。

XnConvertで画像をバッチ変換してから、XnViewで画像のサイズをバッチで変更できます。ここからdebパッケージをダウンロードします:http : //www.xnview.com/de/xnviewmp/#downloads、それを右クリックしてGnome Softwareで開きます。

ネットワークの読み込み速度を気にせず、品質を気にする場合は、画像に手を加えずにデジタルライブラリを作成する必要があります。おそらくそれらを公開サーバー(Yahoo、Googleなど)にアップロードしてください。


3
jpeg圧縮/品質のさまざまなオプションに言及することもできます。圧縮率を上げることで(したがって品質を下げることで)jpegイメージのファイルサイズを小さくすることができます。
ニックワインバーグ

1
圧縮についての私の理解は、同じ品質を維持しながら不要なピクセルを排除することを意味します。品質の低下は圧縮ではなく、単にダウンサイジングまたはダウンサンプリングです。バーストレス写真に最適なzipx形式を使用すると、ロスレス圧縮が可能です。Webページの.cssファイルに似た別のレイヤーですべての2倍ピクセルが平坦化される、似たような写真のある種の重ねられた/重ねられた山を作成します。繰り返しピクセルは、アーカイブ内の個別のエンティティとして定義されます。
ipseリュート
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.