Определение цвету по значениям пикселя - C#
Формулировка задачи:
Вопрос наверное не совсем про программирование, но по нахождению алгоритм:
У меня есть программа, которая кушает картинку и поочередно считывает пиксели и представляет их в виде 3 чисел 0-255 в зависимости цвета в палитре RGB
Как правильно описать алгоритм определения цвета, т.е. чтобы по 3 значениям он мне выдал - Это зеленый/красный/синий
UPD: Пробовал ставить условие типа:
то определяет так-же и всякие фиолетовые/белые как "Green"
то всеравно всякие светлые оттенки(пофакту - белый) считает зеленым
for (int x = 0; x < width; ++x)
{
for (int y = 0; y < height; ++y)
{
PixelData pixel = bitmap.GetPixel(x, y);
listBox1.Items.Add(string.Format("pixel.red = {0} ;pixel.green = {1}; pixel.blue = {2} ", pixel.red, pixel.green, pixel.blue));
}
}if ( pixel.green > 50)
{
string color = "Green";
}
если дополнительно ставить что
if ( pixel.green > 50 && pixel.green>pixel.red && pixel.green>pixel.blue )
{
string color = "Green";
}Решение задачи: «Определение цвету по значениям пикселя»
textual
Листинг программы
Color pixelColor = myBitmap.GetPixel(50, 50);