6

HSI(Hue Saturation and Intensity)には2つの色の値があり、2つの色の視覚的な違いを表す数値が必要です。色相は0から360までの数値です。彩度は0から1で、強度は0から1です。

たとえば、彩度が100%、強度が100%の赤と青を考えてみましょう。 このウェブサイトでは、次のテキストを入力して色を表示する方法があります。

赤は:hsv 0、100%、100%

青は:hsv 240、100%、100%

ここに画像の説明を入力してください

明らかにこれらは2つの非常に異なる色であるため、色の違いを計算する簡単な方法は、色相コンポーネントを使用して、色相の絶対差を計算することです。これは、360も等しいため120(360-240)になります。色相は0です。

問題は、彩度または強度が非常に暗いまたは明るい場合に発生します。非常に暗い赤と青を考慮してください。

濃い赤は:hsv 0、100%、20%

ダークブルーは:hsv 240、100%20%

ここに画像の説明を入力してください

明らかに、これら2つの色の視覚的な違いは、違いを比較するように求められた場合に人間が述べるように、明るい赤と青の色よりも小さくなります。ここで私が言いたいのは、友達に「どの色のペアが最も違うのか」と尋ねることです。彼らはおそらくトップの明るい赤青を言うでしょう。

私は人間が気付くように2つの色の違いを計算しようとしています。人間が2色のaとb、次に2色のcとdを見ると、どちらが最も異なっているかに気付くことができます。まず、色が明るい(ただし明るすぎない)場合、違いは色相に基づいています。色が白などの明るすぎる場合、または黒や灰色などの暗すぎる場合は、差が小さくなります。

x = diff(a、b)およびy = diff(c、d)がxとyを生成する関数diffを持つことができるはずです。また、xとyを使用して違いを比較し、最も異なる色を見つけることができます。最小の異なる色。

4

2 に答える 2

2

WCAG2.0 と 1.0 のガイドラインはどちらも、色の違いの認識に関するさまざまな式を参照しています。

  1. コントラスト比 (http: //www.w3.org/TR/2008/REC-WCAG20-20081211/Overview.html#contrast-ratiodef)

  2. 明るさの違いと3. 色の違い( http://www.w3.org/TR/AERT#color-contrast )。

Delta-e法(http://colormine.org/delta-e-calculator/)を試してみましたが、準計量なので2色を通す順番によって差の測り方が変わる場合があります。あなたの例で、 diff(a,b) が常に diff(b,a) に等しいと予想される場合、これはあなたが望むものではありません(この名前の下に準メトリックではない異なるアルゴリズムがあるかもしれませんが、私はそれを調べていません)そのサイトを過ぎて)。

色差測定基準は、色差測定に対する私の期待に最も近いものだと思います。あなたの例では、 diff(a,b) > diff(c,d) が得られます

この Web サイトのツールを使用して、自分でテストできます: http://www.dasplankton.de/ContrastA/

于 2015-01-25T00:07:19.687 に答える
1
于 2012-12-21T14:46:15.053 に答える