Photoshop图像处理算法—对比度调整(老版功能)

前言:之前在公司做项目的用到photoshop颜色空间的一些相关方法,在此总结一下。下面原理部分是从我的总结文档里截取来的。需要复制的童鞋自己手写一下~

2、程序部分

1)Matlab实验程序

<span style="font-size:18px;">clc;clear;close all;
Image=imread('Fotor_LomoOrg.bmp');
figure(1);
imshow(Image);
Image=double(Image);

R=Image(:,:,1);
G=Image(:,:,2);
B=Image(:,:,3);

Average=127;
%调整参数[-100,100]
Contrast=50;

Contrast=Contrast/100*255;
Percent=Contrast/255;
if(Contrast>0)
    R = Average + (R - Average) * 1 / (1 - Percent) ;
    G = Average + (G - Average) * 1 / (1 - Percent) ;
    B = Average + (B - Average) * 1 / (1 - Percent) ;
else
    R= Average + (R - Average) * (1 + Percent);
    G= Average + (G - Average) * (1 + Percent);
    B= Average + (B - Average) * (1 + Percent);

end

img(:,:,1)=R;
img(:,:,2)=G;
img(:,:,3)=B;

figure(2);
imshow(uint8(img));</span><strong style="font-size: 18px;">
</strong>

2)C程序,此处只贴上关键处理部分,已经把图像变成了数组来处理。

<span style="font-size:18px;">void  ContrastAdjustRGB(unsigned char *pSrc, unsigned char *pDest, int nWidth, int nHeight,int nParameter)
{
	//局部变量声明
	int nAverage = 127;
	int i = 0;
	int nLength = nWidth * nHeight;
	double dTemp;

	//将参数范围由[-100,100]变换到[-1,1]
	double dPercent =static_cast<double>(nParameter) / 100;

	if(nParameter >= 0)
	{
	   for(i = 0;i < 3 * nLength;i++)
	   {
		   dTemp=nAverage + (pSrc[i] - nAverage) * 1/(1 - dPercent);
		   pDest[i] = CLIP8(static_cast<int>(dTemp));
	   }
	}
	else
	{
           for(i = 0;i < 3 * nLength;i++)
	   {
		   pDest[i] = nAverage + (pSrc[i] - nAverage) * (1 + dPercent);
	   }
	}
}</span>

3、实验结果,同photoshop处理结果

图1 原图

图2
参数为50结果

图3
参数为-50结果

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-28 17:11:11

Photoshop图像处理算法—对比度调整(老版功能)的相关文章

Photoshop图像处理算法—色阶调整

前言:之前在公司做项目的用到photoshop颜色空间的一些相关方法,在此总结一下.下面原理部分是从我的总结文档里截取来的.需要复制的童鞋自己手写一下~ 2.程序部分 1)Matlab实验程序. clc;clear;close all; Image=imread('Fotor_LomoOrg.bmp'); figure(1); imshow(Image); R=double(Image(:,:,1)); G=double(Image(:,:,2)); B=double(Image(:,:,3))

Photoshop图像处理算法—饱和度调整

前言:之前在公司做项目的用到photoshop颜色空间的一些相关方法,在此总结一下.下面原理部分是从我的总结文档里截取来的.需要复制的童鞋自己手写一下~ 2.程序部分 1)Matlab实验程序. <span style="font-size:18px;">clc;clear all;close all; Image=imread('Fotor_LomoOrg.bmp'); Image=double(Image); R=Image(:,:,1); G=Image(:,:,2)

PhotoShop 图像处理 算法 汇总

不定期更新 ...... 直接点标题即可链接到原文. 图层混合算法: PS图层混合算法之一(不透明度,正片叠底,颜色加深,颜色减淡) PS图层混合算法之二(线性加深,线性减淡,变亮,变暗) PS图层混合算法之三(滤色, 叠加, 柔光, 强光) PS图层混合算法之四(亮光, 点光, 线性光, 实色混合) PS图层混合算法之五(饱和度,色相,颜色,亮度) PS图层混合算法之六(差值,溶解, 排除) 图像调整算法: 色彩转换--RGB & HSV 色彩转换--RGB & HSL 色彩转换--RG

Photoshop图像处理算法实现—明度调整

前言:之前在公司做项目的用到photoshop颜色空间的一些相关方法,在此总结一下.下面原理部分是从我的总结文档里截取来的.需要复制的童鞋自己手写一下~ 2.程序部分 1)Matlab实验程序. clc;clear;close all; Image=imread('IMG_0950_cut.jpg'); figure(1); imshow(Image); R=double(Image(:,:,1)); G=double(Image(:,:,2)); B=double(Image(:,:,3));

Photoshop图像处理算法—自动对比度和自动色调(自动色阶)

1.原理部分 2.程序部分(matlab)  自动色调 clc;clear;close all; img=imread('IMG_0950_cut.jpg'); Image=double(img)/255; figure(1); imshow(Image); %% R=Image(:,:,1); G=Image(:,:,2); B=Image(:,:,3); percent=0.001; %% Image_out(:,:,1)=Auto_Tune(R, percent); Image_out(:

图像处理算法交流群群规和近期福利活动

作为一名资深的图像处理算法业余爱好者,为了方便同道中人交流学习,我特别建立了一个QQ群(群号:529549320),出于新人培训之目的,也为了免去我每次都重复群规之繁琐,更为了方便群活动之开展特借CSDN宝地发此贴,以做一劳永逸之举. 关于入群资质: 1)无论你是大神还是小白,我们都欢迎: 2)无论你是业界专家还是在校学子,我们都欢迎: 3)无论你是专业精英还是业余爱好者,我们都欢迎. 总之,"是故无贵无贱,无长无少,道之所存,师之所存也". 但是,为了防止你因为不慎而加错群,我们特别

排序算法总结(C语言版)

1.    插入排序 1.1     直接插入排序 1.2     Shell排序 2.    交换排序 2.1     冒泡排序 2.2     快速排序 3.    选择排序 3.1     直接选择排序 3.2     堆排序 4.    归并排序 4.1     二路归并排序 4.2     自然合并排序 5.    分布排序 5.1     基数排序 1.插入排序 1.1      直接插入排序 将已排好序的部分num[0]~num[i]后的一个元素num[i+1]插入到之前已排好序的

记录我第一次在Android开发图像处理算法的经历

大概是四月底的时候,有人加我QQ问我是否做能做一些基于图像皮肤检测的算法, 主要是实现对皮肤六项指标: 1.      水分 2.      有份 3.      痤疮与痘痘 4.      色斑与肤色 5.      皱纹 6.      毛孔 听到这些内容,我稍微思考了一下,心里有了点思路,跟他交流了一下,关于怎么 做的思路就更加清晰起来,于是我先基于JAVA语言实现了第一版,然后把它改到 android上面,发现android代码改动很小,就可以在android上运行我的测试程序 了,但是

C++图像处理 -- 图像色阶调整

阅读提示:     <C++图像处理>系列以代码清晰,可读性为主,全部使用C++代码.     <Delphi图像处理>系列以效率为侧重点,一般代码为PASCAL,核心代码采用BASM.     尽可能保持二者内容一致,可相互对照. 本文代码必须包括<C++图像处理 -- 数据类型及公用函数>文章中的BmpData.h头文件. 在Photoshop中,图像色阶调整应用很广泛,本文介绍的图像色阶调整过程与Photoshop处理效果基本一致. Photoshop的色阶调整分