我刚开始使用SS2优化图像处理,但是对于3通道24位彩色图像却一无所知。我的像素数据由 BGR BGR BGR ... ,unsigned char 8-bi 排列,所以如果我想用 SSE2/SSE3/SSE4 的指令 C/C++ fun 实现 Color2Gray,我该怎么办?我的像素数据需要对齐(4/8/16)吗?我读过文章:http ://supercomputingblog.com/windows/image-processing-with-sse/ 但它是 ARGB 4 通道 32 位颜色,每次准确处理 4 色像素数据。谢谢!
//Assume the original pixel:
unsigned char* pDataColor=(unsigned char*)malloc(src.width*src.height*3);//3
//init pDataColor every pix val
// The dst pixel:
unsigned char* pDataGray=(unsigned char*)malloc(src.width*src.height*1);//1
//RGB->灰色:Y=0.212671*R + 0.715160*G + 0.072169*B