调整图像亮度brightness,对比度contrast,饱和度saturation方法整理

本文整理了多种调整图像亮度、对比度和饱和度的方法,包括基于YUV数据格式的处理、使用CxImage库、DirectX像素着色器、DirectDraw色彩控制和GDI+的ColorMatrix。每种方案都有其优缺点,适用于不同的场景和技术背景。
摘要由CSDN通过智能技术生成
简单的实现方案
数据格式:YUV
参考链接2中采用CxImage(关于CxImage,参考:转贴 CxImage类库使用说明 - 走在路上 - 博客频道 - CSDN.NET)库提供的处理方法,采用查表法处理效率很高。粘贴部分处理代码

CxImage\ximadsp.cpp
/**
 * Changes the brightness and the contrast of the image.
 * \param brightness: can be from -255 to 255, if brightness is negative, the image becomes dark.
 * \param contrast: can be from -100 to 100, the neutral value is 0.
 * \return true if everything is ok
 */
bool CxImage ::Light (long brightness , long contrast )
{
       if (! pDib) return false;
       float c=(100 + contrast)/100.0f;
       brightness+=128;

       BYTE cTable[256]; //<nipper>
       
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值