我在仅具有黑/白值的图像上使用以下代码,以便如果颜色为黑色则应计算,但不知何故,以下if语句不起作用。它是正确写的还是我只是在这里使用一个好的逻辑
for (int y = 0; y < image.Height; y++)
{ Color pixel = image.GetPixel(x, y);
if(pixel.R>0){
//some code here
}
}
答案 0 :(得分:4)
假设没有透明度,请尝试
if(pixel == Color.Black)
....
(pixel.R>0
只检查颜色的Red
组件。0
为Black
。)
对于条形码,最好使用一些阈值来区分颜色,例如:
int threshold = (255 + 255 + 255) / 2;
if (pixel.R + pixel.G + pixel.B < threshold)
....