亮度
来源:互联网 发布:网络机房设备清单 编辑:程序博客网 时间:2024/04/30 11:11
亮度平衡
int CImgProcesser::BalanceColor(char *iplImage_,unsigned char desColor)
{
int i,j;
IplImage *iplImage=(IplImage*)iplImage_;
unsigned long cn;//总灰度
short diff;//灰度差
unsigned char edgeL,edgeH;
//统计平均灰度
cn=0;
for(i=0;i<iplImage->height ;i++)
{
for (j=0;j<iplImage->width ;j++)
{
cn+=(unsigned char)iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+0];
cn+=(unsigned char)iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+1];
cn+=(unsigned char)iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+2];
}
}
cn/=(iplImage->width *iplImage->height*3);
//调教到目标平均灰度
diff=cn-desColor;
for(i=0;i<iplImage->height ;i++)
{
for (j=0;j<iplImage->width ;j++)
{
unsigned char *c1=(unsigned char*)&iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+0];
unsigned char *c2=(unsigned char*)&iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+1];
unsigned char *c3=(unsigned char*)&iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+2];
//调较到目标平均灰度
if(*c1-diff>255)
*c1=255;
else if(*c1-diff<0)
*c1=0;
else
*c1-=diff;
if(*c2-diff>255)
*c2=255;
else if(*c2-diff<0)
*c2=0;
else
*c2-=diff;
if(*c3-diff>255)
*c3=255;
else if(*c3-diff<0)
*c3=0;
else
*c3-=diff;
}
}
return 0;
}
int CImgProcesser::BalanceColor(char *iplImage_,unsigned char desColor)
{
int i,j;
IplImage *iplImage=(IplImage*)iplImage_;
unsigned long cn;//总灰度
short diff;//灰度差
unsigned char edgeL,edgeH;
//统计平均灰度
cn=0;
for(i=0;i<iplImage->height ;i++)
{
for (j=0;j<iplImage->width ;j++)
{
cn+=(unsigned char)iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+0];
cn+=(unsigned char)iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+1];
cn+=(unsigned char)iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+2];
}
}
cn/=(iplImage->width *iplImage->height*3);
//调教到目标平均灰度
diff=cn-desColor;
for(i=0;i<iplImage->height ;i++)
{
for (j=0;j<iplImage->width ;j++)
{
unsigned char *c1=(unsigned char*)&iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+0];
unsigned char *c2=(unsigned char*)&iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+1];
unsigned char *c3=(unsigned char*)&iplImage->imageDataOrigin[i*iplImage->widthStep +j*3+2];
//调较到目标平均灰度
if(*c1-diff>255)
*c1=255;
else if(*c1-diff<0)
*c1=0;
else
*c1-=diff;
if(*c2-diff>255)
*c2=255;
else if(*c2-diff<0)
*c2=0;
else
*c2-=diff;
if(*c3-diff>255)
*c3=255;
else if(*c3-diff<0)
*c3=0;
else
*c3-=diff;
}
}
return 0;
}
- 亮度
- 像素亮度
- 亮度单位
- 屏幕亮度
- Ubuntu亮度
- 图片亮度
- 修改应用亮度和系统亮度
- 亮度调节及自动亮度开关
- ubuntu PC屏幕亮度保存(背光亮度)
- iOS 亮度传感器 获取屏幕亮度值
- CE中的亮度控制
- Ubuntu 屏幕亮度设置
- Linux调节显示屏亮度
- 笔记本亮度如何保存
- 屏幕亮度和分辨率
- 对比度和亮度
- 图像亮度、对比度调节
- 线性调整亮度
- 转:秋天的树~
- 键盘ctrl+enter键触发事件
- showModalDialog()、showModelessDialog()方法使用详解
- 使用信号量管理多线程
- asp.net + sql server 面试宝典
- 亮度
- dll定义和调用的一般概念
- 网站策划,网站建设的重中之重
- 哈希表
- C语言中的指针和内存泄漏
- Hibernate中1对多关联使用中容易犯错误的一个问题
- 汇编ring3下实现HOOK API
- 解决AJAX传送中文会导致乱码的问题
- Linux下的多线程编程