この質問は「未解決の質問」である可能性があり、多くの人はそれをクローズしたいと考えているかもしれませんが、そうしないでください。説明させてください。
ご存知のように、JPEG には 2 種類の圧縮があります (少なくとも Photoshop の保存ダイアログでは)。
- 最適化され、画像が行単位のようにロードされました
- プログレッシブ、画像が最初にロードされたモザイクのように、元の解像度まで次第に良くなります
私は以前に多くの PNG/JPEG 最適化の記事を読みましたが、ワイルド ランダムな Google 画像検索から、この素晴らしい第 3 種の圧縮に遭遇しました。問題のJPEGはこれ
http://storage.googleapis.com/marc-pres/boston-event-1012/images/google-data-center.jpg
Chrome/Firefox でリンクをロードしてみてください (IE/Safari では、画像が完全にロードされてから表示されるまでのみ)
あなたは観察することができます:
- 画像は最初に白黒でロードされました
- その後、ロードされた赤チャンネルのように見えます
- 次にロードされたグリーンチャンネル
- 最後にロードされたBlueチャンネル
エミュレートされた非常に低速な接続で再度読み込みを試みたところ、JPEG がチャネル順に読み込まれるだけでなく、プログレッシブな方法でも読み込まれることがわかりました。したがって、最初にロードされた画像は白と黒のモザイク、次に緑がかったモザイク、そして徐々にフルカラーのモザイク、最後にフル解像度とフルカラーの画像です。
これは驚くべきテクノロジです。たとえば、各ページにたくさんの写真が掲載されている電子雑誌を作成していて、ユーザーがページをすばやくめくって閲覧できるようにしたいとします。この種の画像がまさに最適です。プレビューを高速化するには、空白と白のサムネイルを読み込みます。ユーザーが残っている場合は、元の画像を完全に読み込みます。
私の質問は次のとおりです。Python Pillow や ImageMagick、またはその他のオープン ソースソフトウェアを使用して、このようなイメージを生成するにはどうすればよいですか?
この質問が不適切だと思われる場合は、コメントしてください。閉じないでください。
更新 1:
Google がこの技術をすべての JPEG 画像で使用していることが判明しました1 , 2たとえば、これ
更新 2: 別の手がかりを見つけました