色空間とビット深度の違いは何ですか?


13

色空間にはさまざまな種類があり、sRGBが最も一般的であることを知っています。ビット深度は、カラーチャネルのバリエーションを定義します。8ビットおよび/または16ビットが最も一般的です。

まったく違うと言う人もいれば、相互に排他的ではないと言う人もいます。

誰でも違いを説明できますか?ビット深度を増やすと、なぜ色空間も増えないのですか?

回答:


15

基本的に、生活色情報はチョコレートクレヨンの箱のようなものです...

色情報は、アナログ値ではなく整数で保存されます。特定のビット深度で記述できる離散的なカウント可能な色数があります。

色空間を異なる色のクレヨンの箱のように考えてください。色空間は、利用可能なクレヨンの種類を表します。「太字」、「パステル」などを考えてください。ビット深度はクレヨンのを表します。

これは、2つの異なるクレヨンボックスの例です。

クレヨンボックス

どちらにも16個のクレヨンがありますが、色の範囲は異なります。具体的には、下のセットは赤にまで達していません。16色があるため、これは4ビットの色深度です(2⁴= 16)。

「実際の」色空間は3次元であり、これには1つの次元しかありません。(つまり、色相です。)しかし、それは私が役立つことを願うモデルを作ります。上部の「ボックス」には、極端な部分で非常に赤い「原色」の色空間があり、下部の部分は赤みがかったオレンジ色にまで広がっています。

上部の色空間は、最初は明らかに優れているように見えますが(底部の色空間では赤いものさえ描けません!)、空、水、木々のある風景を描いている状況を考えてください。クレヨンの一番下のセットは、緑と青の微妙な色合いを表すのに「ビット」をより多く使用するため、実際にははるかに優れている場合があります。

代わりに。64クレヨンセットで同じ色の範囲を購入した場合、既存のクレヨンの間に3つの新しいクレヨンがあります。下のセットには青と緑のオプションがまだありますが、新しいクレヨンのために、上のセットには16クレヨンセットよりも多くの選択肢があります。上のセットも赤をカバーしているので、クレヨンが十分にあれば客観的には良くなります。

ただし、両方のボックスに何か不足している選択肢を想像できます。ここで実際のsRGB(テレビまたは消費者レベルのコンピューターモニターとして)と標準の「SWOP」CMYKインクのもう少し複雑な視覚化を行った場合、それがどのようになるかを見るのは少し簡単です。

CMYK SWOP vs RGB —私による画像、線は近似

ここでは、CMYK SWOPカラースペース¹が、sRGBで表現できるよりもシアン、マゼンタ/パープル、イエローにまで広がっていることがわかります。使用可能な区別可能なステップを区別するためにさらにビットを追加しても、色空間によってborderが決定されます。同様に、CMYK表現にさらにビットを追加しても、sRGBで覆われた赤、緑、青の隅を表すのに役立ちません。(もちろん、それらはすべて、人間の視覚の外見で表現された貧弱な表現です。緑のデジタル写真を自然に見せるのがなぜ難しいのか疑問に思ったことがあるなら、これは物語の一部です。 !)

実際には、24ビットカラースペース(チャネルごとに8ビット)で、1680万色を使用できます。それは一般的には問題なく、人間の目で見分けられるより多くの色であると広く考えられていますが、色空間が本当に大きい場合、真ん中の個々の色の間のジャンプが理想よりも大きいという同じ効果が実際にあります。特定の状況で顕著になること。

実際、ProPhoto RGBのような一部の「広い」色空間には、人間の視覚の何にも対応しない色が空間の端にあります。それらは、色空間を機能させる理論上の「想像上の」色ですが、効果的に無駄になります。少数のクレヨン(低ビット深度)でそのような色空間を使用すると、実際に有用な色のオプションが少なくなり、ステップの欠落が問題になる可能性が高くなります。sRGBのようなものは遠くのシアンとグリーンをカバーできません(上記のセットで不足しているレッドのように)が、引き換えに、ブルーとパープルとレッド(およびそこにあるグリーン)をより細かく区別できます。

チャネルあたり16ビット(合計48ビット)に移動すると、ボックス内のすべてのシェードの間に1680万の「クレヨン」が追加されます。これは完全にやり過ぎです(人間がおそらく区別できるものと、画面または印刷でその微妙な違いを表現する実際的な現実の両方)が、そのやり過ぎは、スムーズな移行が常に利用可能であることを保証します。実際の生活の中で、色空間は全ておおよそ人間の視覚を(彼らは正確にラインアップしていない場合でも)をカバーするように設計されているので、あなたが本当にあなたの色空間が赤い持っていないような状況に遭遇していないすべてのをそれだけかもしれません-それほど深くも微妙でもない。

検討する価値のあるもう1つのことは、sRGBは人間の視覚に適切に一致するように設計されているだけでなく、ほとんどの民生用デバイス表現できるように設計されていることです。つまり、sRGBを使用している場合、使用している「クレヨン」が視聴者のデバイスが使用している「クレヨン」に対応する可能性が最も高くなります。そのため、Webの表示と共有のためsRGBに保存することをお勧めします—ビット深度を高くすることは一般的なオプションではありません。また、ほとんどの人は、お好みのクレヨンを交換することはできません。(うまくいけば、これは将来良くなるでしょうが、それは消費者機器メーカーにとっては優先事項ではないようです。3Dと4Kのフープラが落ち着くと、「深みのある色」(より高いビット深度消費者ディスプレイ。

(これのいくつかは、sRGBやAdobe RGBのような色空間どのように重複するかについての以前の回答から借りたものです。


脚注

1.この特定の例は、CMYK画像の実際の表現やその他の詳細を単純化しすぎたものであり、詳細な説明です。ただし、ほとんどの実際の色空間は可能な限り重なるように設計されており、これは不一致のあるものを示しているため、良い例になります。


OK。それで、上の色空間(クレヨンの上の行)は、下の色のビット深度が2倍になっているとしましょう。理論的には、下の色としてすべての色/色合いをカバーできますか?ただし、両方のビット深度が同じ場合、いいえ。同じ色/色合いをカバーすることはできません。色空間を変更していなくても、(色空間の)ビット深度を増やすと、異なる色空間と同じ色をカバーできる可能性がありますか?
BBking

@BBkingさて、それはクレヨンの例が与える一次元の線ではなく、三次元ですが、どちらの場合も、カバレッジの問題は基本的に両極端に関係しています。2行目を見てください。ビットを追加しても、赤の極端な部分は追加されません。しかし、逆に言えば、はい、私はそれを構築した方法のために、上部のビットが多くなると、より多くの色をカバーできるようになります-まったく同じ色にはなりませんが、それでも滑らかなグラデーションになります。2xを超える場合、上の行は下の行のスーパーセットになります。
プロファイルをお読みください

1
しかし、私は可能性があり、それは-それはトップ行がカバーしていない方向に延びるように、下の行を構築している可能性が極端に重ならないこと、及び追加ビットのいかなる量がそれを変更しないであろう。(詳細については、[重複する質問を参照し
ください

そうですか。今、私はあなたの答えを答えに変えるべきかどうかわかりません...:/
BBking

@BBkingさて、もっと明確にできることを教えてください!:)
プロファイルをお読みください

11

ビット深度と色空間は同じものではなく、相互に排他的でもありません。それらは同時に存在する異なるものです。特に簡単な説明:

  • ビット深度は、それぞれの異なる色がグレーディングれる細かさを決定します。

  • 色空間は、それらの色が分布する範囲を決定します。

色空間としてsRGBとAdobeRGBを、ビット深度として8ビットと16ビットの色を取りましょう。sRGBは小さな色空間ですが、AdobeRGBは大きな色空間です。色空間、つまり色域は、人間の目に見える色の全範囲から色を選択できる範囲を定義します(または、ProPhotoRGBまたはいくつかの新しい10 bpcの場合のように、その範囲を超えて選択できます)テレビの色域)。「純粋な緑」の色をsRGBにマッピングすると、その色は実際には数値的に純粋な緑になりますが、最も知覚的に正確な純粋な緑ではない場合があります。同じ色のマップ「ピュアグリーン」はAdobeRGBであり、数値的には同じグリーンですが、AdobeRGBでマップすると、より飽和して鮮やかになります。(さらに、ProPhotoRGBで同じ色をマッピングすると、AdobeRGBよりもさらに彩度が高くなります...もちろん、

さて、ビット深度が入ります。8ビットと16ビットのピュアグリーンの違いは、0,255,0対0,65535,0です。8ビット色よりも16ビット色の方がはるかに大きい数値を使用して、緑のチャネルを純粋な緑で表します。ミディアムグリーンを持ち込む場合、8ビットの値は0,128,0ですが、16ビットの値は0,32768,0です。同じ色ですが、ピュアグリーンとミディアムグリーンの間のグレードの異なる色の数は、16ビットカラーではるかに多くなっています。16ビットではこれらの2つのレベルの間に合計32768の異なるレベルの緑がありますが、8ビットではわずか128の異なるレベルです。明るい緑、たとえば8ビットで0,192,0を選択するとします。同じ色は16ビットで0,49152,0になります。潜在的な異なる色のこの増加は、より高いビット深度を使用すると、グラデーションがかなり滑らかになり、よりきめ細かく描写されることを意味します。

最後に、ビット深度と色空間はどのように連携しますか?sRGBのような狭い色域では、異なる色をマッピングするための色空間が制限されています。sRGBおよび8ビットカラーでは、0,1,0から0,128,0から0,255,0までのすべてのグリーンを通過するときに、各カラーが本当に明確になります。sRGB空間に16ビット画像がある場合はどうなりますか?数値的には、画像には280兆以上の異なる色を表現する機能があります(16 + 16 + 16ビットは合計48ビット、2 ^ 48は281.5兆)。知覚的に...数値のRGB値が色域制限色にマッピングされると、280兆色のかなりの量が色空間内のまったく同じ「色座標」にマッピングされてしまいます。画像ファイルにはまだ完全な精度の色データが含まれていますが、画面にレンダリングされる(または印刷される)場合、

AdobeRGBに移行すると、色域が拡大し、より大きな色空間になり、そのため、より多くの異なるカラーマッピングを包含することができます。8ビットの色深度では、この大きな色域にまばらにマッピングすることになります。技術的に言えば、色域は、ビット深度で参照できるよりも多くの色を表現できます。これで制限要因が入れ替わりました...色域が制限される代わりに、ビット深度が制限されます。AdobeRGBカラースペースで16ビットカラーを使用する場合、280兆個の潜在的なカラーが個別のカラーを参照する余地があります。複数の色が引き続きAdobeRGB空間の同じ実際の座標にマッピングされる可能性がありますが、この大きな空間での衝突はsRGBよりもはるかに少なくなります。

そのため、色空間/色域とビット深度は別個のものですが、相互に関連しています。より高いビット深度を使用して画像データを保存する場合、より広い色域を使用する必要はありませんが、その高いビット深度を最大限に活用することをお勧めします。逆に、ビット深度の低い画像を保存している場合、sRGB以外の画像を使用してこれらの画像をレンダリングすることの価値は低いことがよくあります。

画像ファイル内の高ビット深度の色情報を十分に活用するには、より大きな色域と、それらの色域を実際に表示できるより優れた画面を同時に使用することが重要になります。テレビまたはコンピューター画面で10、12、および16ビットカラーをレンダリングするには、人間の視覚を最大限に活用するために、AdobeRGBよりも大きく、さらにはProPhotoRGBよりも大きい色域が必要になることがよくあります。私たちの目は素晴らしいデバイスであり、信じられないほどのダイナミックレンジと非常に広い色感度が可能です。12、14、および16ビットのハードウェアLUT(3Dカラールックアップテーブル)を備えた現代の10ビットスクリーンは、合計687億(12ビット)、4.4兆から選択された10億7,000万色を同時に表示できます。 (14ビット)または281.5兆(16ビット)色は、LUTによって非常に正確に記述されます。


2
「8ビットと16ビットのピュアグリーンの違いは、0,255,0対0,65535,0です。」パーフェクト!それは私に多くをよりよく理解させました。
BBking

1
色空間は単なる「範囲」(色域)ではありません。空間内の色のトポロジ全体を網羅しています。等YUV、HSL(しばしば代わりに立方体のシリンダとして表される)、CMYK(4次元空間)、非RGB色空間を考える
ジェイソンC

@Jason:「エクステント」という用語は、3次元の空間オブジェクトに対して機能します。これは、Labスペースの完全な明るさ/彩度のプロットの上部に重ねられた三角形などの2次元の範囲だけを意味するものではありません。エクステント全体手段エクステント色空間を、3つのすべての次元において、範囲はかかるかかわらず、実際の形状のこと。また、sRGB、AdobeRGBなどはカラースペースであり、RGB、YUV、HSL、CMYKなどはカラースペースではなくカラーモデルであると述べたいと思います。色空間は3Dですが、一般的に奇妙なマッシュドダイヤモンド形状を持ち、決して円筒形や立方体ではありません。
jrista

1
数値の観点から、はい。レンダリングの観点からは、色空間に依存します。;)
jrista

1
マットの例の色を使用すると、おそらく最も明るい実行可能なオプションであるため、明るい黄色(255,255,0)になります。(255,0,0)を意味する場合、オレンジ色になります。数値のカラー値を色空間座標にマッピングするときに使用できるさまざまなレンダリングインテントがあります:絶対、相対、彩度、知覚。意図に応じて、正確な色の結果(「レンダリングされた」色)はわずかに(または多分、色空間とICCプロファイルに大きく依存する)異なります。
jrista

3

これらは独立したものです。色空間はすべての可能な色を表し、連続した空間です。デジタルデバイスには、スペースの離散化が必要です。つまり、それぞれのステップは、色空間の色を表すことができます。

ここに簡単な例えがあります:2つの床の間の高さを色空間として考える。それが床の間のスペースです。これで、下の階から上の階まで階段を建てるのに何ステップ必要ですか?答えは、ステップのサイズに依存します。それがビット深度です。

ファイル形式で使用されるビット深度について話すとき、すべてのステップがサイズであるわけではないため、状況はより複雑です。これは、ビット深度が線形の意味で均一に分布していないためです。場合によっては、手順は知覚ベースの曲線、ガンマ曲線、または対数曲線に従うことがあります。

通常、ビット深度を増やすと、色空間内でより多くのグラデーションが得られますが、その境界は同じままです。ただし、浮動小数点値または固定小数点値を使用するHDRファイル形式があります。これらの値は、特殊な色空間の外側の色を表すために負になる場合もあります。


私はまだ同じレベルの理解をしていると思います。あなたの建物の例えは、私をさらに混乱させました。カラースペースは建物内のレベルの量(各レベルが色を表す)に似ていると言っていたのに、建物内のステップはビット深度になる場合があります。そのため、同じ色空間内で異なるビット深度を持つことができます。建物が8ビットステップのsRGBである場合、16ビットステップのsRGB建物よりも色の詳細が少なくなります。ただし、ビット深度を大きくすると、建物のサイズが大きくなります。したがって、色空間を変更します(ただし、大きくはしません)。
BBキング

2
@BBking:それはまったく正しくありません。2つはそのようにリンクされていません。16ステップに移動しても、建物のサイズを変更する必要はありません。8ステップしかない場合よりも、ステップを近づけることができるからです。ビット深度はステップの近さであり、色空間は建物のサイズです。役立つ答えを追加しました。
jrista

1
色空間は本質的にすべての可能な色を表すわけではなく、ほとんどの色は表しません。または、「Xの色空間はXの可能な色のセットを表します」のようなことを言いたいですか?
フレネル

2

簡単な例を試してみましょう。「虹」と呼ばれる色空間があるとしましょう。虹の色が含まれているため、赤、オレンジ、黄色、緑、青、紫で構成されています。色空間は、色域でカバーされる色の範囲を表します。

一方、ビット深度は、そのスペース内で作成できる個別の色の数を定義します。数ビットしかない場合は、虹の基本色しか表現できませんが、ビット数が多い場合は、濃い赤や明るい赤、中程度の赤などを作成できます。より一意の値を定義してより多くの色を使用できますが、それらはすべて赤、オレンジ、黄色、緑、青、紫の色合いのままです。

これが、実際に、より高いビット深度でより狭い範囲の色を表現することが可能である理由です。カバーされる色の範囲内ではるかに正確になります。

より技術的には、ビットレートは色空間内の色の粒度を定義し、色空間は色の最小値と最大値(および場合によっては空間に応じて他のものも)を定義しますが、それらの値の間のステップ。

カバーする色空間を拡張したり、色空間内の色をより細かく制御したり、2つの組み合わせを行うための追加ビット。


1

そのようなことを考える簡単な方法は、色空間がコンテナであることです。これらには、作成された色空間の色の値が含まれます。RGBカラースペースの場合、値は各チャネルでRGB-0-255です。CMYK 0-100値の場合。

色空間のボリュームが変化しても、これらの値は変化しません。色空間のボリュームを変更するのは、その空間を定義するCIEXYZ値です。通常、より大きなボリュームカラースペースには、より彩度の高い色を含めることができます。その例として、sRGBはボリュームごとの小さなカラースペース、ProPhotoはボリュームごとの大きなカラースペースです。PhotoshopでsRGB画像を開くと、期待どおりの結果が得られますが、ProPhoto ICCプロファイルを割り当てると、画像の色が大幅に変更され、より彩度が高くなりますが、RGB値は変更されません。CIELabとの関係だけです。色空間のボリュームを定義するこれらのCIEXYZ値は、CIELabに変換されてから、目的の空間に変換されます。

ビット深度は、ピクセルで利用可能な色情報の量です。のは非常によく説明することをここに写真やデジタル画像に適用されるビット深度が高いほど、各ピクセルでより多くの画像情報を使用できます。この高いビット深度により、シャドウを開いたり、ハイライトの詳細を戻したりする際の調整性が向上します。ピクセルのビット深度がキャプチャされたビット深度ではなくレンダリングされることを忘れないでください。ビットまたは色空間がいったん縮小されると、拡大できないことに注意してください。8ビットの画像を16ビットにすると、ピクセルあたりのビット数が増えず、単に8ビットのピクセルのビットが2倍になります。色空間についても同じことが言えます。画像がsRGBにレンダリングされ、元の画像の明るい色をすべて大域プリンタで印刷したい場合は、そのsRGB画像にはこれらの色が存在しないことにご注意ください。最初からやり直し、それらのピクセルをより大きな色空間にレンダリングします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.