matlab实现PS算法之渐变
%{
色调分离的原理就是将R, G, B每个通道 0-255
的色调区间进行强制划分到给定的区间里去,
所以色调会合并,最终的图像看起来颜色就是一块一块的。
%}
clear,clc;
[filename,pathname] = uigetfile('*.jpg;*.bmp','选择图片','E:\pictures\For_Project\Matlab');
imgaepath = strcat(pathname,filename);
Image = imread(imgaepath);
figure,imshow(Image);size_info=size(Image);
height=size_info(1);
width=size_info(2); % 图像转为灰度图
Gray_Img=rgb2gray(Image);% 建立 lookup table
row=50;
col=256;
Color(:,:,1)=rand(row,col);
Color(:,:,2)=rand(row,col);
Color(:,:,3)=rand(row,col);for index=1:colval=index/col;% color 1
% % % Color(:,index,1)=3*(val);
% % % Color(:,index,2)=3*(val)-1;
% % % Color(:,index,3)=3*(val)-1;% color 2Color(:,index,1)=sin(val);Color(:,index,2)=sin(val/2);Color(:,index,3)=sin(val/3);% color 3
% % % Color(:,index,1)=val;
% % % Color(:,index,2)=val;
% % % Color(:,index,3)=0;
endfigure, imshow(Color);% 以灰度值为索引,映射得到相应的颜色值。
Image_new=double(Image);for ii=1:heightfor jj=1:widthindex=Gray_Img(ii,jj);Image_new(ii,jj,:)=Color(1, index+1, :);end
endfigure, imshow(Image_new);
%{
先设置一个遮罩层,然后用遮罩层与原图进
行相乘,遮罩层不同,图像最后呈现的渐变效
果也不一样。
%}
clear,clc;
[filename,pathname] = uigetfile('*.jpg;*.bmp','选择图片','E:\pictures\For_Project\Matlab');
imgaepath = strcat(pathname,filename);
Image = imread(imgaepath);
figure,imshow(Image);Image=double(Image)/255;
size_info=size(Image);
height=size_info(1);
width=size_info(2); % 设置遮罩层
Map=zeros(height, width);
for i=1:widthMap(:, i)=(1-abs(i*2/width-1))*0.8;
end% 遮罩层与原图相乘
Img_new=Image;
for kk=1:3Img_new(:,:,kk)=Image(:,:,kk).*Map;
end
figure, imshow(Img_new);
matlab实现PS算法之渐变相关推荐
- matlab 老照片处理,matlab实现PS算法之百叶窗、老照片
%{ 设置好条纹的宽度和条纹的间隔,建立一个 遮罩层,等间隔的对原图进行等间距的遮罩. %} clear,clc; [filename,pathname] = uigetfile('*.jpg;*.b ...
- matlab实现PS算法之亮度调整
%{亮度调整非线性亮度调整:对于R,G,B三个通道,每个通道增加相同的增量.线性亮度调整:利用HSL颜色空间,通过只对其L(亮度)部分调整,可达到图像亮度的线性调整.但是,RGB和HSL颜色空间的转换 ...
- matlab实现PS算法之颜色变换、高反差保留、染色玻璃、碎片
%{ 设置好条纹的宽度和条纹的间隔,建立一个 遮罩层,等间隔的对原图进行等间距的遮罩. %} clear,clc; [filename,pathname] = uigetfile('*.jpg;*.b ...
- Photoshop - 关于在 PS 中使用渐变会产生条纹色阶的问题
在PS里面拉渐变,很多时候会出现一圈一圈的条纹,这个问题困扰了我很久,大图尤其明显,为此,查阅了大量的资料,用以寻求解决办法. 在PS里面使用渐变工具拉渐变的时候,就会出现很多一圈一圈的条纹,边界非常 ...
- Matlab人脸检测算法详解
这是一个Matlab人脸检测算法详解 前言 人脸检测结果 算法详解 源代码解析 所调用函数解析 bwlabel(BW,n) regionprops rectangle 总结 前言 目前主流的人脸检测与 ...
- matlab在电力行业中的仿真技术-MATLAB基于EKF算法估计电动汽车蓄电池的SOC
前言 关于本文的代码请参加,有兴趣的小伙伴可自行订阅. matlab电力系统仿真-MATLAB基于EKF算法估计电动汽车蓄电池的SOC 电动汽车(EV)是未来汽车的一大发展方向.动力锂电池组是电动汽车 ...
- ML之RF:基于Matlab利用RF算法实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性
ML之RF:基于Matlab利用RF算法实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性 目录 输出结果 实现代码 输出结果 更新-- 实现代码 %RF:RF实现根据乳腺肿瘤特征 ...
- 光谱分类算法 matlab,Matlab K-means聚类算法对多光谱遥感图像进行分类(一)
Matlab K-means聚类算法对多光谱遥感图像进行分类 作者: 白艺亭 测试了下matlab自带kmeans函数,作者编写函数,以及ENVI下的Kmeans方法,对比其效果,代码及结果图展示见下 ...
- 基于MATLAB的Dijkstra算法实现及案例分析
摘要:为研究两地点之间距离(或耗时)最短路线规划,采用MATLAB编程的方法来实现,并利用Floyd算法记录距离(或耗时)最短路线.在不考虑各种影响因素的情况下,以随机小样本数据为例进行演示,求得由起 ...
最新文章
- Activity的管理类
- 《程序员代码面试指南》第五章 字符串问题 拼接所有字符串产生字典顺序最小的大写字符串...
- VTK:网格之CellEdges
- VTK:图表之ShortestPath
- Centos 设置zookeeper开机自启动
- 微分方程_微分方程 | 线性微分方程组的求解(上)
- vue图片懒加载实例
- 【图片识别】java 图片文字识别 ocr (转)
- python - 环境搭建
- C#坏习惯:通过不好的例子学习如何制作好的代码——第1部分
- 在ISA2006以SSL-TO-HTTP方式发布内部的WEB服务器(二)
- linux下c语言 读取文件
- DNS反劫持的几种方式
- linux下编写脚本从ftp服务器定时下载文件
- 爸妈老了而我还未长大--《Coraline》观后感
- 钢琴软件c语言源代码,C语言钢琴程序代码.doc
- 三国演义python分析系统_用python分析四大名著之三国演义
- java好学么_java是什么好学吗
- 解决报错:did not contain a valid NDK and couldn‘t be used
- Linux下的共享内存 ---创建共享内存