// I = 0.299R + 0.587G + 0.114B for(int i = 0; i < (width*height); i++) { ((uint8 *)data)[i] = (uint8)((0.299 * (colordata[i].r)) + (0.587 * (colordata[i].g)) + (0.114 * (colordata[i].b))); }