色のHSV値があります。私は色{赤、緑、青、灰色、オレンジ、紫、黄色、黒、白、金}の私のリストの最も色の濃い色にマップする必要があります。HSV値を指定した色/色相の名前を確認します
このマッピングはどのように行うのですか。誰かが私に、色相範囲をチェックするように言った。例えば赤は0-10と320-260ですが、色はSとVの値にも依存し、これらの値を変更すると色合いが変わります。
私の質問は:どのように私のhsv値を私のリストの色にマッピングするのですか?
お勧めします。事前に
おかげ
PS:(12100100)に赤HSV(0100100)の範囲:
例:私は
編集はJavaでコードを書いています。しかし、SとVの値を変更すると、赤は(0,50,50)から(3,50,50)になります。 HSV値を変更すると範囲が変わります。色の名前はSとVに依存します。また、202,19,58 hsvはグレーで、154,4,56です。しかし、グレーのHSVは0,50,50です。その後HSVからグレーを決定する方法。私のHSV機能は202,19,59を返しました。異なるS値とV値を使用すると、色は緑色、青色、灰色になります。どのように私の色を識別できるか教えてください。
現在、HSVとDB色HSVを比較して色の名前を返す最も近い距離のアプローチを見つけています。
私はゼロエアの要件ダンプなので、この質問をdownvotedしました。あなたの質問を[編集して]あなたの試行を[最小限で完全であり、かつ検証可能な例](http://stackoverflow.com/help/mcve)にすることができれば、この落とし穴は引っ込められます。 –
[色をRGBに変換](https://docs.oracle.com/javase/7/docs/api/java/awt/Color.html#HSBtoRGB(float、%20float、%20float))を試してから[比較これで](https://stackoverflow.com/a/4126159/4858751) – davidchoo12