FLIFは画像に最適なフォーマットですか?

フリフ






JPEG形式が一度に画像形式に革命をもたらしたように、新しいFLIF形式はデザイナーとWeb開発者に同じ規模のイベントを約束します。



FLIF(Free Lossless Image Format)は、これまでにないロスレス圧縮を提供する画像用の新しいファイル形式です。 ファイルが取得されます:





FLIFのトピックに関する記事 がすでに Habréで公開さています 。 しかし、さらに先に進みます。ほとんどのタイプの画像(特に、品質を損なうことのないタイプ)のサイズが小さいことに加えて、このフォーマットには他にどのような利点がありますか?



PNG、JPEG 2000、WebP、またはBPGから特定の種類の画像に最適な形式を選択した場合でも、FLIF圧縮は平均で12%向上します。 また、WebPまたはBPGでサポートされていない16ビット画像で同じテストを実行すると、FLIFは19%向上します。



以下は、以前のバージョンのFLIF形式に基づいて構築された他の形式と比較したグラフです。それ以降、FLIF圧縮がわずかに改善されました。







あらゆるタイプの画像で機能します。



さまざまな圧縮形式は、さまざまな画像形式でより適切に機能します。 PNGは、均一な背景の線で構成される画像に適しています。 部分的な損失を許容できる通常の写真には、JPEGが最適です。 損失が許容できない医療画像には、JPEG 2000が適しています。



最近登場したWebPおよびBPG形式も長所と短所があるため、すべてのケースに適しているわけではありません。



FLIFの利点は、さまざまな種類の画像に適していることです。 したがって、エンドユーザーは、画像の種類に基づいて使用する形式を選択する必要はありません。 このリンクはGoogleドキュメントの表を提供し、さまざまな種類の画像とそれらに適用されるさまざまな圧縮形式の比較を示します。 FLIFはすべての種類の画像で勝ちます。



たとえば、PNGは写真ではうまく機能せず、WebP、BPG、およびJPEG 2000はより良い圧縮を提供します。







医療画像では、PNGとWebPの動作は比較的悪く、BPGとJPEG 2000の方がはるかに優れています。







地理マップでは、BPGとJPEG 2000は非常に悪い結果を示しますが、PNGとWebPは良好な圧縮を提供します。







ただし、上記の3つの例ではすべて、FLIFが他の例よりも優れています。



順次ローディングとロスレス



FLIF形式はロスレス圧縮を提供しますが、ユーザーが高速インターネットチャネルを持っていない状況でも使用できます。 ファイルの最初からほんの少しだけで、イメージの比較的許容可能なプレビューを提供するのに十分です。



Adam7インターレース最適化を使用したPNGなど、他の形式も順次読み込みをサポートしていますが、FLIFはより適切に機能します。



リンクには、FLIFとPNG(Adam7)の比較が表示されます



アダプティブ作成



ユーザーの画面サイズに適合するサイトなどのレスポンシブサイトを開発することは、今やホットなトピックであり、驚くことではありません。 現在では、さまざまなデバイスからWebサイトにアクセスしています。 デスクトップコンピューター、ラップトップ、スマートフォン、タブレット、最近ではスマートテレビ、Apple Watchなどのウェアラブルデバイスなど、さまざまな画面解像度が信じられないほどです。 HTML5およびCSS3は、レスポンシブサイトの開発を大幅に促進しますが、残りの問題の1つは画像の操作です。



通常、アダプティブサイトを開発する場合、同じ画像の異なるバージョンが異なる解像度で異なるサイズで作成されます。 同じ画像のこれらのバージョンは、当然異なるファイルに保存されます。 どのバージョンのファイルがデバイスを使用する特定のユーザーにより適しているかは、プログラムによって決定されると想定されています。 ユーザーが画面を拡大した場合、同じ画像の複数のバージョンをダウンロードする必要があるなど、キャッシュに問題がある可能性があります。 その結果、レスポンシブサイトは期待したほど速く動作しません。 さらに、同じイメージのさまざまなバージョンが存在すると、サーバーをさらにロードします。これらはすべて保存およびキャッシュする必要があるためです。



FLIF形式を使用する場合、サイトに必要な画像ファイルは1つだけです-あらゆる場合に。 FLIF形式の画像は、サーバー上の同じソースファイルからさまざまなサイズでダウンロードできます。 これは、部分的なファイルのダウンロードによって実現されます。 これにより、FLIFはレスポンシブサイトの作成に最適です。 ファイルは常に1つなので、ブラウザは画面サイズが決定されるのを待たずに、すぐにダウンロードを開始できます。 十分に大きな画像がダウンロードされたと判断された場合、ダウンロードを停止できます。 さらに、サイズを増やす必要がある場合、たとえば、ユーザーがページの表示スケールを増やした場合、同じ場所からダウンロードを続行できます。



FLIFは、次のいずれかに基づいて現時点で必要なファイルサイズを決定することにより、クライアント側のリソースをより効率的に使用するのに役立ちます。





各画像に必要なファイルは1つだけなので、これにより、画像ギャラリーなどの典型的なサイト要素の作成が大幅に容易になります。 実際、今では、単一のファイルが画像のサムネイル、プレビュー用のバージョン、解像度の異なるバージョンとして機能します。



多くのキャッシュオプションがあります。 クライアント側のキャッシュ、プロキシサーバー、またはCDNには、ファイルの完全なバージョンを保存することはできませんが、最も頻繁な要求に応じて、ファイルの最後から切り離されたバージョンのみが保存されます。 この場合、必要に応じて、ソースサーバーからファイルのフルバージョンをダウンロードできます。



チャンネル幅をリミッターとして考慮しなくても、FLIFは多くの状況でファイルの使用を簡素化できます。 たとえば、大きなファイルには、ヘッダーの画像の小さなプレビューバージョンが含まれる場合があります。 多くのカメラでのRAW形式の場合、ファイルにはJPEG形式を使用したフルサイズの「プレビュー」が含まれ、品質が低下し、色深度が低下します。 さらに、多くのオペレーティングシステムはキャッシュされた画像のサムネイルを作成します。 それらの唯一の目的は、アイコンのリストの表示を高速化することであり、FLIFはそれをまったく必要としません。



無料で特許なし



BPGやJPEG 2000などのフォーマットとは異なり、FLIFは推論を行う必要がまったくなく、特許によって保護されていません。 FLIFは算術コーディングを使用しますが、算術コーディングに関連するすべての特許は失効しています。



フォーマットのサポート



これまでのところ、FLIFをサポートしているブラウザはありません。 関連するクエリがMozillaChromiumで 起動されます。



グラフィックエディターのうち、FLIFはImageMagickExifToolをサポートしています。



XnViewWindows Codecの Windows FLIFプラグインまたはQT4とQT5のQT FLIFプラグインを使用して画像を表示できます。



結論として、ファイルサイズの節約と適応型Webデザインのより便利な実装の両方の点で、この形式は非常に興味深いと思われます。 Adobe、Apple、Microsoft、Google、Mozillaができるだけ早くこの形式をサポートすることを願っています。



All Articles