3

画像の最適化を探している同様の質問は見つかりませんでした。

アップロードされた画像を Facebook がどれだけ最適化できるかをテストしました。

980KB --> 77KB

846KB --> 62.1KB

私が発見したことによると、上記のテストのように、Facebook は画像を最大 10 倍まで最適化することができますが、それでもある程度の最小限の画質が維持されます。

では、ユーザーがアップロードした画像を最適化するために実装した最善の方法を誰か共有できますか?

インターネットで検索すると、画像最適化の有料サービスを提供しているウェブサイトがいくつか見られました。ただし、現段階では画像最適化の有料サービスには加入しないことをお勧めします。

Google App Engine 環境内で Python 言語を使用してプロジェクトを開発しています。そうするために、Python ライブラリや Google App Engine ライブラリから再利用できる部分はありますか?

4

4 に答える 4

5

pngcrush のような機能を AppEngine 画像 API に追加するには、おそらくこの問題にスターを付ける必要があります。

于 2012-06-10T22:14:21.723 に答える
3

基本的な最適化は次のように要約されます。

  1. 画像に適切な形式を選択します (通常、写真には jpeg です。画質を気にしない場合は全面的に jpeg を使用できますが、そうでない場合はスクリーンショットなどに png を使用するのが賢明かもしれません)。

  2. アプリケーションに適した最小解像度に画像を縮小する

  3. 品質基準を維持しながら、圧縮レベルを可能な限り最高レベルに上げます

余分なメタデータを取り除くことでニッチピッキングすることもできますが、それは通常不要であり、望ましくありません。

これらすべてを自動化したい場合は、標準のフォーマットと圧縮レベルを全面的に設定し、それがすべての場合に完璧ではないことを受け入れる必要があります。プログラムで画像に適したものにします (アップロード時にユーザーに直接尋ねない限り、これは非常に困難です)。

通常、このタスクには PythonMagick バインディングを介して ImageMagick を使用しますが、Google Apps Engine では実行できない場合があります。その場合は、おそらくPython Imaging Libraryを見てください。

于 2012-06-10T17:59:31.367 に答える
2

残念ながら、PythonMagick は使用できません。ただし、Python Imaging Libraryをインストールすることはできます。使用方法については、Google Imaging Serviceを参照してください。

特効薬の facebookesque 最適化はありません。必要な基準を満たす独自の開発を試みる必要があります。最近のほとんどの画像は 5mp 以上で、ウェブサイトでは 1280x720 以下にサイズ変更するのが普通です。サイズを変更する前に、不要な画像をトリミングする機能も必要です。

于 2012-06-11T05:07:17.900 に答える