概述
BYTE bySaturationMap[256*256]; //滚动条0-255 //...... CreateSaturationMap(m_saturationctl.GetPos()); //...... void CreateSaturationMap(BYTE value) { int nTmp; for (int g=0; g<256; ++g) { for (int i=0; i<256; ++i) { nTmp = g+ value*(i-g)/128; nTmp = min(255, max(0, nTmp)); bySaturationMap[g*256+i] = nTmp; } } } void Img_ISP(BYTE* pData, int wid, int hei) { int g, r, b; BYTE *pNode = NULL; pNode = pData; for (int j=0; j<hei; j++) { for (int i=0; i<wid; i++) { r = *pNode; g = *(pNode+1); b = *(pNode+2); *pNode = bySaturationMap[g*256+r]; *(pNode+2) = bySaturationMap[g*256+b]; pNode = pNode+3; } } }
转载于:https://www.cnblogs.com/youfal/p/3833483.html
最后
以上就是呆萌冰棍为你收集整理的C++ 调节图像饱和度的全部内容,希望文章能够帮你解决C++ 调节图像饱和度所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复