類似した色のすべてのピクセルを見つけようとしている場合、どの色空間を使用すればよいですか? 私はGrayScaleを使ってみて、それに接続されている類似のピクセルを見つけたい画像のポイントでDFSを実行しましたが、それは正しい方法ではないようです. どの色空間を使用すれば、画像のある点から接続されている類似した色のピクセルを見つけるのに役立ちますか。最初はRGB画像があります。
5 に答える
それはあなたにとって「似ている」が何を意味するかによります。コンピューターにとっては似たような色でも、人間にはまったく異なる色として認識されることがあります。
OTOH、HSVモデルは、非ロボットにとってかなり直感的であるため、かなりうまく適合する可能性があります.
Lab色空間を使用して色差を計算すると、良い結果が得られました (私には CIE76 で十分でした)。
ウィキペディアのリンクから:
RGB や CMYK カラー モデルとは異なり、Lab カラーは人間の視覚に近似するように設計されています。
したがって、類似の定義が「類似しているように見える」である場合、私は Lab を使用します。
このスレッドを確認してくださいPython - 似たような色を見つける、最善の方法
色空間 HSV(Hue, Saturation, Value or Brightness) を使用できます。
画像を HSV に変換した後、チャネルの彩度と値を 100 などの一般的な値または色を強調するその他の値に設定する必要があります。その変換により、色相は多少のバリエーションを持つ唯一のチャネルになり、これはバリエーションがほとんどない類似の色のみを表示するのに十分なはずです.
間隔を減らしたい場合は、必要な間隔でチャネル色相のヒストグラムを生成し、他のヒストグラムとの差を計算できます。その計算の結果は、色間の距離になります。
Lab は非常に優れた色空間ですが、その非線形性と一般性のために使用するのが少し難しいことは理解しています。
色相に関心があり、影や反射を簡単に除去したい画像を扱っている場合、HSV は非常に優れた色空間です。
YCrCb は、人間の視覚に近づけることに関心がある場合、非常に優れた (Lab ほど洗練されていない) 色空間です。人間の場合、R、G、および B コンポーネントがより強い刺激と弱い刺激を生成することを考慮に入れています。