RGB565的灰度处理
RGB565的灰度处理
我从摄像头取到了RGB565的16位的位图用如下程序做了灰度处理后生成的bmp图,为什么是1半的并且是绿色的呢?
for ( h = 0; h < height; h++) {
for ( w = 0; w < width; w++) {
pixel = *dataAddress;
dataAddress++;
pixelR = (u8_t)((pixel&0xF800)>>11);//5 bits
pixelG = (u8_t)((pixel&0x07E0)>>5);//6 bits
pixelB = (u8_t)(pixel&0x001F);//5 bits
pixel256 = (u8_t)((pixelR * 299 + pixelG * 587 + pixelB * 114) / 1000);
*(img256 + h*width + w) = pixel256;
}
}
生成的图片下半部分是绿色的图,上半部分有时是全黑的,有时是和下半部分一样绿色图。
...全文
赞 (0)