2017-08-29 74 views
0

今天我試圖檢查一個顏色是否類似於另一個在CSharp從BitMap。這是代碼,我使用的是什麼:比較顏色與容忍

Color blah = screenshot.GetPixel(x, y); 
if (blah == Color.Red) { 
... 

的問題是,我從來沒有true,因爲顏色有一點點不同的色調。有什麼方法可以比較這種顏色與一些寬容嗎?

謝謝!

回答

3

您可以檢查defince一個tolarance值,並檢查它們的差值小於:

Color blah = screenshot.GetPixel(x, y); 
    if (Math.Abs(Color.Red.GetHue() - blah.GetHue()) <= tolorance) 
    { 
     // ... 
    }