コンポーネントが等しいかどうかを塗りつぶした色で比較したい次のアルゴリズムを実行し、次のようにRGBの平均化を行います
double avg1 =(comp[0].Red+comp[0].Blue+comp[0].Green)/3;
double avg2 =(comp[1].Red+comp[1].Blue+comp[1].Green)/3;
次に、次のように比較します
double ratio = avg1/avg2 ;
if(ratio > 0.8 && ratio < 1.2){} //then they are supposed to be equal
しかし、この方法はまったく正確ではありません
検索した後、画像をHSL空間に変換して比較するのが最善の方法であることがわかりましたが、2つの色を比較する方法がわかりません?!! ここ
言い換えれば、画像をHSL空間に変換した後、何ができますか?!
助けてください !!
より明確にするための質問への変更私はコンポーネント(ポイントのシーケンス)を意味するので、平均化ステップで実際にすべてのポイントを再訪し、各ピクセルのrgbの平均の合計を計算し、ポイントの総数を平均化します