web-dev-qa-db-ja.com

「JPG」/「JPEG」/「PNG」/「BMP」/「GIF」/「TIFF」画像の違いは何ですか?

私は多くの種類の画像拡張を見てきましたが、それらの本当の違いを理解したことはありません。それらの違いを明確に説明するリンクはありますか?

アプリケーションで使用する特定の種類の画像を選択する際に考慮すべき基準はありますか? Webアプリケーションには何を使用しますか?

98
MOZILLA

はい。これらは異なるファイル形式(およびそのファイル拡張子)です。

各形式のウィキペディアのエントリは、かなりの情報を提供します。

  • JPEG (または、ファイル拡張子の場合はJPG、Joint Photographic Experts Group)
  • PNG (ポータブルネットワークグラフィックス)
  • BMP (ビットマップ)
  • GIF (グラフィックス交換フォーマット)
  • TIFF (またはファイル拡張子の場合はTIF、Tagged Image File Format)

画像形式は、次の3つの大きなカテゴリに分類できます。

  • 非可逆圧縮、
  • ロスレス圧縮、
  • 非圧縮、

非圧縮形式は、ほとんどのデータを使用しますが、画像の正確な表現です。 BMPなどのビットマップ形式は一般に圧縮されていませんが、圧縮されたBMPファイルもあります。

非可逆圧縮 形式は一般的に写真に適しています。 圧縮アーティファクト 画像の圧縮が際立つため、イラスト、図面、テキストには適していません。その名前が示すように、非可逆圧縮はファイルのすべての情報をエンコードしないため、イメージに復元された場合、元の正確な表現にはなりません。ただし、特定の情報を破棄するため、ロスレス形式と比較して非常に効果的に画像を圧縮できます。非可逆圧縮形式の代表的な例はJPEGです。

ロスレス圧縮 形式は、非可逆圧縮で圧縮すると見栄えの悪いイラスト、図面、テキスト、およびその他の素材に適しています。名前が示すように、可逆圧縮は元の情報をすべてエンコードするため、画像が解凍されると、元の正確な表現になります。可逆圧縮では情報の損失がないため、ほとんどの場合、非可逆圧縮ほど高い圧縮を達成することはできません。ロスレス画像圧縮の例は、PNGおよびGIFです。 (GIFは8ビット画像のみを許可します。)

TIFFとBMPは両方とも「ラッパー」形式です。内部のデータは使用される圧縮技術に依存する可能性があるためです。圧縮画像と非圧縮画像の両方を含めることができます。

特定の画像圧縮形式をいつ使用するかは、圧縮対象によって異なります。

関連質問: Web用の大きな画像を容赦なく圧縮

85
coobird

いくつかの重要な要素に注意する必要があります...

最初に、2つのタイプの圧縮があります: Lossless および Lossy

Losslessは、画像が小さくなりますが、品質を損なうことはありません。 Lossyは、画像が(偶数)小さくなりますが、品質が低下することを意味します。画像をLossy形式で何度も保存すると、画質は次第に悪化します。

異なる色深度(パレット)もあります: インデックス付きカラー および 直接カラー

Indexedを使用すると、画像作成者が選択した限られた数の色(通常は256)のみを画像に保存でき、Directこれは、著者が選択していない何千もの色を保存できることを意味します。


BMP-Lossless/Indexed and Direct

これは古い形式です。ロスレスです(保存時に画像データは失われません)が、圧縮もほとんどないため、BMPとして保存するとファイルサイズが非常に大きくなります。 IndexedとDirectの両方のパレットを持つことができますが、それは小さな慰めです。ファイルのサイズが不必要に大きいため、この形式を実際に使用する人はいません。

用途:本当にありません。 BMPが優れているものはありません。また、他の形式では改善されていません。

BMP vs GIF


GIF-ロスレス/インデックスのみ

GIFはロスレス圧縮を使用します。つまり、画像を何度も保存でき、データを失うことはありません。適切な圧縮が実際に使用されるため、ファイルサイズはBMPよりもはるかに小さくなりますが、インデックスパレットのみを保存できます。つまり、ファイルには最大256の異なる色しか含めることができません。それはかなり少量のように聞こえますが、そうです。

GIFイメージもアニメーション化でき、透明度があります。

用途:ロゴ、線画、および小さくする必要があるその他のシンプルな画像。 Webサイトにのみ実際に使用されます。

GIF vs JPEG


JPEG-Lossy/Direct

JPEG画像は、人間の目が気付かない情報を削除することにより、詳細な写真画像をできるだけ小さくするように設計されました。その結果、それは損失の多い形式であり、同じファイルを何度も保存すると、より多くのデータが時間の経過とともに失われます。何千もの色のパレットがあり、写真には最適ですが、非可逆圧縮はロゴや線画に悪いことを意味します:あいまいに見えるだけでなく、そのような画像はGIFに比べてファイルサイズも大きくなります!

用途:写真。また、グラデーション。

JPEG vs GIF


PNG-8-ロスレス/インデックス付き

PNGは新しい形式であり、PNG-8(PNGのインデックス付きバージョン)は、実際にはGIFに代わるものです。ただし、残念ながら、いくつかの欠点があります。まず、GIFのようなアニメーションをサポートできません(できますが、すべてのブラウザーでサポートされているGIFアニメーションとは異なり、Firefoxのみがサポートしているようです)。第二に、IE6のような古いブラウザーでいくつかのサポートの問題があります。第三に、Photoshopのような重要なソフトウェアの形式の実装は非常に貧弱です。 (Adobeを失礼します!)PNG-8は、GIFなど256色しか保存できません。

目的:PNG-8がGIFより優れている主なことは、アルファ透明度をサポートしていることです。

PNG-8 vs GIF

重要な注意:PhotoshopはPNG-8ファイルのアルファ透明度をサポートしていません。 (Photoshop!)透明度を保持したままPhotoshop PNG-24ファイルをPNG-8ファイルに変換する方法があります。 1つの方法は PNGQuant で、別の方法は Fireworks でファイルを保存することです。


PNG-24-ロスレス/ダイレクト

PNG-24は、ロスレスエンコーディングとダイレクトカラー(JPEGのような数千色)を組み合わせた優れた形式です。この点でBMPに非常によく似ていますが、PNGは実際に画像を圧縮するため、ファイルは非常に小さくなります。残念ながら、PNG-24ファイルはJPEG、GIF、PNG-8よりもはるかに大きいため、実際に使用するかどうかを検討する必要があります。

PNG-24は、圧縮時に数千色を許可しますが、JPEG画像を置き換えるものではありません。 PNG-24として保存された写真は、同等のJPEG画像よりも少なくとも5倍大きい可能性が高く、目に見える品質の改善はほとんどありません。 (もちろん、ファイルサイズを気にせず、できる限り最高品質の画像を取得したい場合、これは望ましい結果になるかもしれません。)

PNG-8と同様に、PNG-24もアルファ透明度をサポートしています。

それがお役に立てば幸いです!

74
Chuck Le Butt

通常、これらは次のいずれかです。

ロスレス圧縮 可逆圧縮アルゴリズムは、画質を損なうことなくファイルサイズを削減しますが、非可逆圧縮ファイルほど小さなファイルには圧縮されません。画質がファイルサイズよりも高く評価される場合、通常、ロスレスアルゴリズムが選択されます。

非可逆圧縮 非可逆圧縮アルゴリズムは、人間の目の固有の制限を活用し、目に見えない情報を破棄します。ほとんどの非可逆圧縮アルゴリズムでは、さまざまな品質レベル(圧縮)が許可されており、これらのレベルが上がるとファイルサイズが小さくなります。最高の圧縮レベルでは、画像の劣化が「圧縮アーチファクト」として顕著になります。以下の画像は、非可逆圧縮アルゴリズムの顕著なアーチファクトを示しています。フルサイズバージョンを表示するには、サムネイル画像を選択します。

以下に説明するように、各形式は異なります。

JPEG JPEG(Joint Photographic Experts Group)ファイルは(ほとんどの場合)非可逆形式です。 DOSファイル名拡張子はJPGです(他のOSはJPEGを使用する場合があります)。ほとんどすべてのデジタルカメラは、JPEG形式で画像を保存できます。JPEG形式では、色ごとに8ビット(赤、緑、青)をサポートし、合計24ビットで、比較的小さなファイルを生成します。大きすぎない場合、圧縮によって画像の品質が著しく低下することはありませんが、JPEGファイルを繰り返し編集および保存すると、世代が低下します。写真画像は、再編集される場合、または小さな「アーティファクト」(JPEGの圧縮アルゴリズムに起因する欠陥)が受け入れられない場合、ロスレス非JPEG形式でより適切に保存される場合があります。 JPEG形式は、多くのAdobe PDFファイルの画像圧縮アルゴリズムとしても使用されます。

TIFF TIFF(タグ付き画像ファイル形式)は、TIFFまたはTIFファイル名のいずれかを使用して、通常、それぞれ24ビットおよび48ビットの合計で色ごとに8ビットまたは16ビット(赤、緑、青)を保存する柔軟な形式です。 TIFFの柔軟性は、祝福と呪いの両方です。単一のリーダーがすべてのタイプのTIFFファイルを読み取ることはないためです。 TIFFは損失があり、損失がありません。いくつかは、バイレベル(白黒)画像に対して比較的良いロスレス圧縮を提供します。一部のデジタルカメラは、ロスレスストレージ用のLZW圧縮アルゴリズムを使用して、TIFF形式で保存できます。 TIFF画像形式は、Webブラウザで広くサポートされていません。 TIFFは、印刷ビジネスの写真ファイル標準として広く受け入れられています。 TIFFは、特定の印刷機インクのセットによって定義されたCMYKなど、デバイス固有の色空間を処理できます。

PNG PNG(Portable Network Graphics)ファイル形式は、GIFの無料のオープンソースの後継として作成されました。 PNGファイル形式はトゥルーカラー(1600万色)をサポートしていますが、GIFは256色しかサポートしていません。 PNGファイルは、画像に大きな均一な色の領域がある場合に優れています。 JPGファイルはPNGファイルよりも小さいため、ロスレスPNG形式は写真の編集に最適で、JPGなどの非可逆形式は写真画像の最終配布に最適です。現在、多くの古いブラウザーはPNGファイル形式をサポートしていませんが、Internet Explorer 7では、すべての最新のWebブラウザーがPNG形式を完全にサポートしています。 Adam7インターレースでは、画像データのほんの一部が送信された場合でも、早期のプレビューが可能です。

GIF GIF(Graphics Interchange Format)は、8ビットパレットまたは256色に制限されています。これにより、GIF形式は、単純な図、形状、ロゴ、漫画スタイルの画像など、比較的少ない色のグラフィックの保存に適しています。 GIF形式はアニメーションをサポートし、画像アニメーション効果を提供するためにまだ広く使用されています。また、大きな領域が単色である場合により効果的であり、詳細な画像やディザリングされた画像には効果がないロスレス圧縮を使用します。

BMP BMPファイル形式(Windowsビットマップ)は、Microsoft Windows OS内のグラフィックファイルを処理します。通常、BMPファイルは圧縮されていないため、サイズが大きくなります。利点は、そのシンプルさ、幅広い受け入れ、およびWindowsプログラムでの使用です。

Webページ/ Webアプリケーションに使用

以下は、これらの画像形式をWebページ/アプリケーションで使用する場合の簡単な概要です。

  • PNGはIE6以降に最適です(透過性を適切に機能させるには、小さなCSSパッチが必要です)。イラストや写真に最適です。
  • JPGはオンラインの写真に最適です
  • GIFは、PNGに移行したくない場合のイラストに適しています
  • Webページ内でBMPをオンラインで使用しないでください-帯域幅を浪費します


  • ソース: 画像ファイル形式

    27
    Luke

    他の人が違いをカバーしているので、私は用途を見つけます。

    TIFFは通常、スキャナーで使用されます。それは巨大なファイルを作成し、アプリケーションで実際には使用されません。

    BMPは非圧縮であり、巨大なファイルも作成します。また、実際にはアプリケーションでは使用されません。

    GIFは以前はWeb全体に使用されていましたが、限られた数の色のみをサポートし、特許を取得しているため、好まれなくなりました。

    JPG/JPEGは、テキストではなく、主に写真品質のものに使用されます。使用される非可逆圧縮は、シャープな線を損なう傾向があります。

    PNGはJPEGほど小さくはありませんが、ロスレスなので、シャープな線のある画像に適しています。現在、Webで一般的に使用されています。

    個人的に、私は通常、可能な限りどこでもPNGを使用します。これはJPGとGIFの間の良い妥協点です。

    5
    Dana Robinson

    JPG>共同写真専門家グループ

    1枚のJPG画像は1600万色をサポートし、写真や複雑なグラフィックに最適

    2 JPGは透明度をサポートしません。

    PNG>ポータブルネットワークグラフィックス

    1 GIFテクノロジーが著作権で保護されており、使用許可が必要な場合、GIFファイル形式の代替として使用されます。

    2つのPNGでは、GIFよりも5〜25%高い圧縮が可能で、色の範囲も広くなっています。 PNGは2次元のインターレースを使用するため、GIF画像の2倍の速度でロードされます。」

    3多くの色を持つ画像、または高度な可変透明度が必要な画像。PNGが推奨されるファイルタイプです。

    GIF>グラフィックス交換形式

    1画像の色数を256に減らします。

    2 GIFは透明度もサポートします。

    3 GIFには、アニメーションGIFと呼ばれる、ビデオに似た一連の画像を表示する独自の機能があります。

    4画像の色が少なく、高度なアルファ透明効果を必要としない場合、GIFが最適です。

    SVG>スケーラブルベクターグラフィックス

    1 SVGは、静的な画像とアニメーションの両方を2次元で記述するXMLに基づくWeb標準です。

    2 SVGを使用すると、サイズが増減しても細部を失わない、非常に高品質のグラフィックとアニメーションを作成できます。

    2
    Dev

    これらの名前は、ピクセル画像データをエンコードするさまざまな方法を指します(JPGとJPEGは同じもので、TIFFは追加のメタデータでjpegを囲むだけです)。

    これらの画像形式は、異なる圧縮アルゴリズム、異なる色表現、画像自体以外の追加データを運ぶ異なる機能などを使用する場合があります。

    Webアプリケーションの場合、jpegまたはgifで十分だと思います。 Jpegは圧縮率が高いために頻繁に使用され、gifは通常、フラッシュ(または同様のもの)が過剰なキルである軽量アニメーション、または透明な背景が必要な場所に使用されます。 PNGも使用できますが、あまり経験がありません。 BMPおよびTIFFは、おそらくWebアプリケーションの候補としては適切ではありません。

    1
    PolyThinker

    クーズバードとジェラルドが言ったこと。

    さらに、JPEGはファイル形式名です。 JPGは、以前のWindowsシステム用に3文字のファイル拡張子が必要であったため、この形式では一般的に省略されたファイル拡張子として使用されます。 TIFFおよびTIFでも同様です。

    現時点のWebブラウザでは、JPEG、PNG、およびGIFファイルのみが表示されます。したがって、これらはWebページに表示できるものです。

    1
    Gnudiff

    PNGはアルファチャンネルの透明度をサポートしています。

    TIFFには拡張オプション、つまり ジオリファレンスGIS アプリケーション用。

    写真にはJPEGのみを使用し、クリップアート、ロゴ、テキスト、図、ラインアートなどの画像には決して使用しないことをお勧めします。

    PNGを優先します。

    1
    Roger Nelson

    名前の付いたものはすべてラスターグラフィックですが、そのほかに、ますます重要なベクターグラフィックを忘れないでください。圧縮型と非圧縮型があります(多少なりとも)が、それらはすべて無損失です。最も重要なのは:

    1
    Xn0vv3r

    ファイル拡張子は、画像の保存方法を示します。これらの形式の中には、ビットをそのまま保存するものもあれば、可逆方式や非可逆方式など、さまざまな方法で画像を圧縮するものもあります。 Webはあなたにそれを伝えることができますが、私は患者レスポンダーの何人かがここでそれらを概説することを知っています。

    Webは、主にgif、jpg、およびpngを好みます。 JPEGはjpgと同じ(または非常に近い)です。

    0
    gbarry

    さまざまな画像形式間の指定された違いと使用法については、すでに上記で十分な議論があります。

    ただし、写真をキャプチャして保存するプロセス全体に何かを追加したいと思います。

    キャプチャプロセス

    または、コンストラクトプロセスと言うこともできます(現在、コンピューターで絵を描いたり作ったりできます)。カメラで写真を撮る場合は、すでに多くのセンサー(CCDまたはCMOS)とアルゴリズム(バイエルパターンフィルター、サブサンプリング、量子化など)を使用しています。また、Pixel FormatColor Spaceのようなものもあります。基本的なピクセル情報を取得したら、それらを保存する方法が必要です。

    基本的な画像ファイル構造

    ピクセル情報をファイルに保存するには、規則と関連するアルゴリズムが必要です。スペースを節約するために圧縮がありますが、基本的に問題はピクセルをバイトにエンコードし、表示するためにバイトをピクセルにデコードすることです。

    典型的な画像ファイルは、いくつかの部分、基本的には2つの部分で構成されます:meta data or file headerpixel data sectionmeta dataは、画像自体、おそらくheightおよびwidthfile formatなどを示します。また、pixel data sectionは、real pictureを処理する実際のsectionです。

    保存と表示

    前述したように、ファイルはハードディスクに保存され、バイト/ビット単位です。したがって、画像ファイルには優先順位はありませんが、実際にはバイトストリームもあります。表示するために、モニターがどのように機能するかを知る必要があります。一般的なPCモニターは、表示にRGBモデルを使用します。

    お役に立てれば:-)

    0
    Lihang Li