• Python: PS 图像调整--饱和度调整
千次阅读
2019-08-05 17:46:29

本文用 Python 实现 PS 图像调整中的饱和度调整算法，具体的算法原理和效果可以参考之前的博客：

http://blog.csdn.net/matrix_space/article/details/22992961

import matplotlib.pyplot as plt
from skimage import io

file_name = 'D:/Visual Effects/PS Algorithm/4.jpg'

img = img * 1.0
img_out = img * 1.0

# -1 ~ 1
Increment = 0.5

img_min = img.min(axis=2)
img_max = img.max(axis=2)

Delta = (img_max - img_min) / 255.0
value = (img_max + img_min) / 255.0
L = value/2.0

s1 = Delta/(value + 0.001)
s2 = Delta/(2 - value + 0.001)

if Increment >= 0 :
temp = Increment + s
alpha_1 = s
alpha_2 = s * 0 + 1 - Increment
alpha = 1/(alpha + 0.001) -1
img_out[:, :, 0] = img[:, :, 0] + (img[:, :, 0] - L * 255.0) * alpha
img_out[:, :, 1] = img[:, :, 1] + (img[:, :, 1] - L * 255.0) * alpha
img_out[:, :, 2] = img[:, :, 2] + (img[:, :, 2] - L * 255.0) * alpha

else:
alpha = Increment
img_out[:, :, 0] = L * 255.0 + (img[:, :, 0] - L * 255.0) * (1 + alpha)
img_out[:, :, 1] = L * 255.0 + (img[:, :, 1] - L * 255.0) * (1 + alpha)
img_out[:, :, 2] = L * 255.0 + (img[:, :, 2] - L * 255.0) * (1 + alpha)

img_out = img_out/255.0

# 饱和处理

plt.figure()
plt.imshow(img/255.0)
plt.axis('off')

plt.figure(2)
plt.imshow(img_out)
plt.axis('off')

plt.show()
---------------------
作者：Matrix_11
来源：CSDN
原文：https://blog.csdn.net/matrix_space/article/details/78345444
版权声明：本文为博主原创文章，转载请附上博文链接！

更多相关内容
• Matlab实现图像色度饱和度变换,含GUI界面 代码仅供参考、交流
• C++ 调节图像饱和度

千次阅读 2019-07-14 06:18:58
BYTE bySaturationMap[256*256]; //滚动条0-255 //...... CreateSaturationMap(m_saturationctl.GetPos()); //...... void CreateSaturationMap(BYTE value) { int nTmp; for (int g=0; g&...

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

展开全文
• matlab实现调整图片的饱和度

千次阅读 2020-04-27 10:07:54
%src为rgb图像，saturation为调节的饱和度值，调节范围为【-100，100】 function Image_new = SaturationAdjustment(src,saturation) Image=src; Image=double(Image); R=Image(:,:,1); G=Image(:,:,2); B=Image(:,:...
%src为rgb图像，saturation为调节的饱和度值，调节范围为【-100，100】
Image=src;
Image=double(Image);
R=Image(:,:,1);
G=Image(:,:,2);
B=Image(:,:,3);
[row, col] = size(R);
R_new=R;
G_new=G;
B_new=B;
%%%% Increment, 饱和度调整增量（-100,100）photoshop的范围
Increment=saturation;

%换算成调整比率
Increment=Increment/100;

%利用HSL模式求得颜色的S和L
for i=1:row
for j=1:col
rgbMax=max(R(i,j),max(G(i,j),B(i,j)));
rgbMin=min(R(i,j),min(G(i,j),B(i,j)));
Delta=(rgbMax-rgbMin)/255;

if(Delta==0)                              %如果delta=0，则饱和度S=0，所以不能调整饱和度
continue;
end
value = (rgbMax + rgbMin)/255;
L=value/2;                                %Lightness

if(L<0.5)                                 %根据明度L计算饱和度S
S=Delta/value;
else
S =Delta/(2 - value);
end
%具体的饱和度调整，Increment为饱和度增减量
if (Increment>=0)
if((Increment+S)>=1)
alpha=S;
else
alpha=1-Increment;
end
alpha=1/alpha-1;
R_new(i,j) = R(i,j) + (R(i,j) - L * 255) * alpha;
G_new(i,j) = G(i,j) + (G(i,j) - L * 255) * alpha;
B_new(i,j) = B(i,j) + (B(i,j) - L * 255) * alpha;
else
alpha=Increment;
R_new(i,j) = L*255 + (R(i,j) - L * 255) * (1+alpha);
G_new(i,j) = L*255 + (G(i,j) - L * 255) * (1+alpha);
B_new(i,j) = L*255 + (B(i,j) - L * 255) * (1+alpha);
end
end
end
Image_new(:,:,1)=R_new;
Image_new(:,:,2)=G_new;
Image_new(:,:,3)=B_new;
end

展开全文
• matlab增强图像饱和度

千次阅读 2021-04-22 05:58:44
关键词 遥感 MATLAB 彩色增强 直方图 色调 饱和度 II 图像色彩增强技术毕业论文 Abstract Satellite remote sensing technology has a wide application and plays an......缺省值 0.05 给图像增加高斯白噪声: B = ...

关键词 遥感 MATLAB 彩色增强 直方图 色调 饱和度 II 图像色彩增强技术毕业论文 Abstract Satellite remote sensing technology has a wide application and plays an......

缺省值 0.05 给图像增加高斯白噪声: B = imnoise(A, ‘gaussian’ , m, v); m 为白色密度,默认 0,v 是噪声密度,默认 0.01 e) matlab 编程实现 A ......

度图 格式 2灰 度图 50 100 150 200 250 100 200 300 50 100 150 200 250 100 200 300 6 、灰度图像→索引图像 【格式 1 】 1 、 [ X, m a p......

基于彩色图像包含丰富的信息,介绍了如何利用图像处理工具 MATLAB 来进行彩色图像增强来是有用信息加强,获得更用价值的图片和更 好的视觉效果。分别从伪彩色图像增强......

Matlab数字图像处理-02_幼儿读物_幼儿教育_教育专区。/5、频率域图像增强 一、傅里叶变换 I=fft2(x);%快速傅里叶变换 I=fft2(x,m,n); x为输入图像;m和......

? HSI色彩模型将强度成分与色调和饱和度等描述彩色的属 性分离开来,是根据人对色彩的自然描述处理彩色图像的 理想模型。 ? 从RGB模型到HSI模型: 16 HSI色彩模型......

Matlab 数字图像处理函数 图像增强 1.直方图均衡化的 Matlab 实现 直方图均衡化的 1.1 imhist 函数 功能:计算和显示图像的色彩直方图 格式:imhist(I,n),imhist(......

Matlab 的实现: I=imread('C:\\Users\\fanjinfei\\Desktop\\baby.bmp');%读入图像 I=im2double(I); %对比度变大的图像 I1=2*I-55/255; subplot(4,4,1)......

基于matlab图像识别_数学_自然科学_专业资料。基于matlab的语音图像特征分析第7讲 图像模式识别引言 水果的识别 指纹识别技术 基于matlab的语音图像特征分析引言 ? ...

Matlab 的实现: I=imread('C:\\Users\\fanjinfei\\Desktop\\baby.bmp');%读入图像 I=im2double(I); %对比度变大的图像 I1=2*I-55/255; subplot(4,4,1)......

? 对彩色图像信息的感知觉就是人类的彩色视觉, 彩色视觉是一种明视觉,常用亮度、色调、饱和 度三个基本特性量来描述,称为彩色三要素。 . ? 亮度是指彩色光所......

自 2019 年 12 月 9 日至 2019 年 12 月 13 日共 1 周 设计依据、要求及主要内容: 一、课程设计依据在掌握数字图像处理基本算法的基础上,利用 MATLAB、VC......

(Hue)、饱和度 S(Saturation)、强度 I(Intensity)分量合 并成 hsi 色彩空间矩阵 subplot(121),imshow(hsi),title('rgb 转 hsi');%显示结果图像 H=hsi(:,......

17 基于matlab的语音图像特征分析 边缘提取 ? 使用索贝尔算子得到的边缘图像 取反后的边缘图像 18 基于matlab的语音图像特征分析 4.数学形态学处理 ? 上图的二值......

第3章 MATLAB图像处 理基础 ? 本章主要介绍利用MATLAB来实现数字图像处理的基本操作,主 要包括以下几个方面的内容:MATLAB图像处理工具箱,图像类 型的转换,图像......

龙源期刊网 基于 Matlab 的图像自动标注 作者:张轩 臧淼 李金泉 来源:《现代电子技术》2014 年第 03 期摘要: 图像自动标注在检索......

基于matlab图像识别_数学_自然科学_专业资料。第7讲 图像模式识别 引言 水果的识别 指纹识别技术 引言 ? 模式识别就是分析图像内容,找出图像中有 哪些东西。 ? ...

本章中主要介绍 MATLAB图象工具箱中的一些基本函数的应用 和图象格式基本知识,并结合具体实践进行不 同格式图象的打开和各种图象格式之间的转 换,为进一步开展图象......

数字图像处理及MATLAB实现7_数学_自然科学_专业资料。7.1 概述(Introduction) 7.2 无失真图像压缩编码(Lossless image compression) 7.3 有限失真图像压缩编码(......

12 基于 MATLAB 的图像处理的课程设计一、课程设计目的 1、提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法。 2、熟悉掌握一门计算机......

展开全文
• 问题如何调整彩色图像的饱和度和亮度解决思路详细步骤：将RGB图像值归一化到[0, 1]然后使用函数cvtColor进行色彩空间的转换接下来可以根据处理灰度图像对比度增强伽马变换或者线性变换调整饱和度和亮度分量最后转换...
• 针对溶解气驱油藏渗流方程的强非线性,在前人定义两相拟压力函数基础上,采用Boltzmann变换对方程进行求解,得到一种形式简单而精度较高的压力与饱和度的近似关系式。此方法虽然是从一维线性渗流模型导出的,它同样适用...
• //饱和度矩阵 ColorMatrix saturationMatrix = new ColorMatrix(); saturationMatrix.setSaturation(saturation); //亮度矩阵 ColorMatrix lumMatrix = new ColorMatrix(); lumMatrix.setScale(lum, ...
• 一、图片的对比和亮度调整 1、原理： f(row, col)：原始图像的像素。 g(row, col)：调整后图像的像素。 a(a>0：称为增益（gain），常常被用来控制图像的对比，其取值范围一般为0.0-3.0 b：称为偏置（bias）...
• 主要涉及Brightness/Contrast/Color 调用流程为创建图像增强对象之后，调用对应的enhance函数 from PIL import Image, ImageEnhance img = Image.open("test.jpg") bright_enhancer = ImageEnhance.Brightness(img...
• 代码： import cv2 import imutils import numpy as np def l_s_b(arg): # 图像归一化，且转换为浮点型, 颜色空间... # HLS空间，三个通道分别是: Hue色相、lightness明度、saturation饱和度 # 通道0是色相、通道
• ,:,1]和hlsCopy[:,:,2]中大于1的全部截取 hlsCopy[:, :, 1] = (1.0 + l / float(MAX_VALUE)) * hlsCopy[:, :, 1] hlsCopy[:, :, 1][hlsCopy[:, :, 1] > 1] = 1 #HLS空间通道2是饱和度，对饱和度进行线性变换，...
• 系统设计中介绍了一种基于TI(Texas Instruments)AFE4400 集成芯片的血氧模拟采集电路,并以TivaTM Cortex-M4为处理器的脉搏血氧饱和度检测系统的设计方案。采用AFE4400简化了电路设计、降低了系统功耗、减小了电路...
• 流行的强度-色相饱和度（IHS）泛锐化方法可以在遭受某些光谱失真的同时提供较高的空间质量，这主要是因为它无法估计准确的强度图像来替代IHS空间中的原始强度图像。 为了克服这一缺点，本文特别采用变分互补数据融合...
• 在Photoshop里也可以做到批量修改图片的亮度和饱和度，但是很多人都没有条件使用Photoshop，此外，Photoshop里的批量修改其实很耗性能，而且使用起来并不是很方便。 那我们能不能用Python做一个小工具，先找到合适的...
• BGR2HSV)#色彩空间转化 image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) return image def adjust_saturation(self, image, factor): """ 调整图片的饱和度 """ image[..., 1] = np.clip(image[..., 1] * factor, 0...
• 本文章会详细的介绍RGB颜色空间与RGB三色中色调、饱和度、亮度之间的关系，最后会介绍HSV颜色空间！ 一．RGB颜色空间 1.起源 RGB三原色起源于上世纪初1809年ThomasYoung提出视觉的三原色学说，随后Helmholtz在...
• 什么是HSV/HSB/HSL 首先理解 HSV/HSB/HSL 都是什么 我理解： HSV : Hue, Saturate, Value HSB : Hue, Saturate, Brightness ...HSL : Hue, Saturate, ...Saturate : 饱和度 其中的Value、Brightness、Lightness...
• 针对灰度可见光和红外图像的融合图像缺乏色彩信息、图像的高阶信息在变换域中统计独立性不足的缺陷, 提出一种基于独立分量分析和IHS (亮度-色度-饱和度) 变换域的融合方法. 该方法利用IHS 变换域能够有效分离图像...
• 随着图像像素坐标的变换，色调的值、饱和度的值按一定规律变化即可 —> 利用循环，随着像素坐标变化，赋予不同 的色调，饱和度的值 PIL的ImageDraw模块中的point函数可以对图像单个像素赋予hsl形式的值，使用的...
• 调整亮度（线性变换) hlsImg[:, :, 1] = (1.0 + lightness / float(MAX_VALUE)) * hlsImg[:, :, 1] hlsImg[:, :, 1][hlsImg[:, :, 1] > 1] = 1 # 饱和度 hlsImg[:, :, 2] = (1.0 + saturation / float(MAX_VALUE...
• 针对遥感图像影像分辨率低的问题，提出了一种新的基于HIS和小波变换的低分辨多光谱和高分辨全色图像的融合方法。该方法通过对高分辨全色图像小波分解后的低频分量进行低通滤波，将全色图像的低频信息中的高频分量...
• 通过两组仿真试验将该算法与IHS融合法、基于IHS变换和小波变换相结合的融合方法进行了比较，定性和定量的评价分析表明，提出的融合方法获得了基于IHS变换与小波变换相结合的融合方法相同甚至更好的融合效果，但算法...
• 亮度代表了图像的明暗程度，颜色代表了图像的色度，它包含了色调和饱和度。这个代码可以自动对这三个参数进行调整。
• 参考博客 色调饱和度值 HueSaturationValue 随机更改输入图像的色相，饱和度和值 系数名 解释 hue_shift_limit ((int, int) or int) range for changing hue. If hue_shift_limit is a single int, the rangewill be...
• 通过随机调整图像亮度／对比度／饱和度／色相，可以衍生出更多的训练样本，减小识别物体不同的大小／方位／色彩等无关因素对图像识别模型的影响．且调整顺序不同可以得到不同的处理结果． 实例： #!/usr/bin/...

...