teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2017/07/10 05:58

投稿

KSwordOfHaste
KSwordOfHaste

スコア18404

answer CHANGED
@@ -1,3 +1,18 @@
1
+ 追記:pashango2さんの回答とコメントを拝見して「なるほど」と思ったので追記します。
2
+ HSVは以下のように白色光成分Wと一番強い光成分Vの比率がSaturationで白色光以外の2つの色だけが突出した部分hの2色の割合でHueが決まります。自分の回答は「目でみた色味の違い」ではなく「計算を単純化した大雑把な判定方法」でしかありません。
3
+
4
+ ```
5
+ 0.0................1.0
6
+ R |****|**********
7
+ G |****|
8
+ B |****|**
9
+ <-W-><----h---->
10
+ <------V------->
11
+ ```
12
+
13
+ R,G,Bを直接用いて判定したとしても意味的に大雑把さに大した違いはなさそうに思います。「色空間上の特定の色と同じとみなせるか」といった判断ではどのような空間を使うにせよ基準の色との距離をなんらかの計算で求めて「近い」「遠い」を判断しますが、大雑把な計算ではなく「目で見る色味の違い」に配慮するなら、pashango2さんコメントにあるl*a*b空間での色距離で判断するのが合理的に思えます。しかしそうまで厳密に考えるのではなく「大雑把」でよいならRGBやHSVで「適当に範囲を決めて」計算するというのでも「それはそれで一つの方法」だと思います。
14
+
15
+ ---
1
16
  「ほぼ赤」「ほぼ青」「ほぼ緑」「それ以外」のようなファジーな判定をしたいということかと思います。
2
17
 
3
18
  > S(彩度)とV(明度)の考慮の仕方がわかりません。