Estoy desarrollando una barra de tareas para la 2da pantalla (algo así como displayfusion).obtener color promedio de bmp
Sin embargo, tengo dificultades para obtener el color correcto del icono. Por ejemplo, Google Chrome/Cuando lo coloco sobre la barra de tareas principal, el fondo se vuelve amarillo. Con mi código, se vuelve naranja/rojo.
Esto es lo que se ve ahora:
¿Cómo puedo obtener el color dominante/media verdad?
que utiliza este código para calcular el promedio de color:
public static Color getDominantColor(Bitmap bmp)
{
//Used for tally
int r = 0;
int g = 0;
int b = 0;
int total = 0;
for (int x = 0; x < bmp.Width; x++)
{
for (int y = 0; y < bmp.Height; y++)
{
Color clr = bmp.GetPixel(x, y);
r += clr.R;
g += clr.G;
b += clr.B;
total++;
}
}
//Calculate average
r /= total;
g /= total;
b /= total;
return Color.FromArgb(r, g, b);
}
Aquí es una pregunta similar: http://stackoverflow.com/questions/5823854/how-can-i-generate-a-palette-of-prominent -colors-from-an-image/5824104 # 5824104 –