Python实现PS图像调整颜色梯度效果示例


Posted in Python onJanuary 25, 2018

本文实例讲述了Python实现PS图像调整颜色梯度效果。分享给大家供大家参考,具体如下:

这里用 Python 实现 PS 中的色彩图,可以看到颜色的各种渐变,具体的效果可以参考附录说明

和之前的程序相比,这里利用矩阵的运算替代了 for 循环,提升了运行的效率。

import numpy as np
import matplotlib.pyplot as plt
from skimage import io
import numpy.matlib
from skimage import img_as_float
file_name='D:/Visual Effects/PS Algorithm/4.jpg';
img=io.imread(file_name)
img = img_as_float(img)
row, col, channel = img.shape
rNW = 0.5
rNE = 1.0
rSW = 1.0
rSE = 0.0
gNW = 0.0
gNE = 0.5
gSW = 0.0
gSE = 1.0
bNW = 1.0
bNE = 0.0
bSW = 1.0
bSE = 0.0
xx = np.arange (col)
yy = np.arange (row)
x_mask = numpy.matlib.repmat (xx, row, 1)
y_mask = numpy.matlib.repmat (yy, col, 1)
y_mask = np.transpose(y_mask)
fx = x_mask * 1.0 / col
fy = y_mask * 1.0 / row
p = rNW + (rNE - rNW) * fx
q = rSW + (rSE - rSW) * fx
r = ( p + (q - p) * fy )
r[r<0] = 0
r[r>1] =1
p = gNW + (gNE - gNW) * fx
q = gSW + (gSE - gSW) * fx
g = ( p + (q - p) * fy )
g[g<0] = 0
g[g>1] =1
p = bNW + (bNE - bNW) * fx
q = bSW + (bSE - bSW) * fx
b = ( p + (q - p) * fy )
b[b<0] = 0.0
b[b>1] = 1.0
img[:, :, 0] = r
img[:, :, 1] = g
img[:, :, 2] = b
plt.figure(1)
plt.imshow(img)
plt.axis('off');
plt.show();

附录:PS 色调— —颜色梯度

clc;
  clear all;
  close all;
  addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorithm');
  I=imread('4.jpg');
  Image=double(I)/255;
  [height, width, depth]=size(Image);
  rNW=1.0;   gNW=0.0;  bNW=0.0;
  rNE=1.0;   gNE=1.0;  bNE=0.0;
  rSW=0.0;   gSW=0;   bSW=1.0;
  rSE=0.0;   gSE=1.0;  bSE=0.0;
  Img_new=Image;
  for ii=1:height
    for jj=1:width
      fx = jj / width;
      fy = ii / height;
      p = rNW + (rNE - rNW) * fx;
      q = rSW + (rSE - rSW) * fx;
      r = ( p + (q - p) * fy );
      r = min(max(r, 0), 1);
      p = gNW + (gNE - gNW) * fx;
      q = gSW + (gSE - gSW) * fx;
      g = ( p + (q - p) * fy );
      g = min(max(g, 0) ,1);
      p = bNW + (bNE - bNW) * fx;
      q = bSW + (bSE - bSW) * fx;
      b = ( p + (q - p) * fy );
      b = min(max(b, 0), 1);
      Img_new(ii, jj, 1)=r;
      Img_new(ii, jj, 2)=g;
      Img_new(ii, jj, 3)=b;
    end  
  end
  imshow(Img_new);
  imwrite(Img_new, 'out.jpg');

参考来源:http://www.jhlabs.com/index.html

本例Python运行效果图:

原图:

Python实现PS图像调整颜色梯度效果示例

运行效果:

Python实现PS图像调整颜色梯度效果示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python 数据结构之队列的实现
Jan 22 Python
python实现快速排序的示例(二分法思想)
Mar 12 Python
PyCharm设置每行最大长度限制的方法
Jan 16 Python
Python Pillow Image Invert
Jan 22 Python
Python函数装饰器常见使用方法实例详解
Mar 30 Python
python 利用turtle模块画出没有角的方格
Nov 23 Python
Python enumerate函数遍历数据对象组合过程解析
Dec 11 Python
pytorch中的自定义反向传播,求导实例
Jan 06 Python
python对象销毁实例(垃圾回收)
Jan 16 Python
详解python logging日志传输
Jul 01 Python
Python lxml库的简单介绍及基本使用讲解
Dec 22 Python
Python爬虫入门教程01之爬取豆瓣Top电影
Jan 24 Python
Python使用requests发送POST请求实例代码
Jan 25 #Python
python使用pandas实现数据分割实例代码
Jan 25 #Python
python实现闹钟定时播放音乐功能
Jan 25 #Python
python实现壁纸批量下载代码实例
Jan 25 #Python
python命令行解析之parse_known_args()函数和parse_args()使用区别介绍
Jan 24 #Python
Python动刷新抢12306火车票的代码(附源码)
Jan 24 #Python
python中的set实现不重复的排序原理
Jan 24 #Python
You might like
国外比较好的几个的Php开源建站平台小结
2010/04/22 PHP
php的declare控制符和ticks教程(附示例)
2014/03/21 PHP
PHP使用DOMDocument类生成HTML实例(包含常见标签元素)
2014/06/25 PHP
php魔法函数与魔法常量使用介绍
2017/07/23 PHP
JavaScript等比例缩放图片控制超出范围的图片
2013/08/06 Javascript
javascript制作sql转换为stringBuffer的小工具
2015/04/03 Javascript
Angular ng-class详解及实例代码
2016/09/19 Javascript
JS动态修改网页body的背景色实例代码
2017/10/07 Javascript
vue 系列——vue2-webpack2框架搭建踩坑之路
2017/12/22 Javascript
jQuery Dom元素操作技巧
2018/02/04 jQuery
解决在vue项目中,发版之后,背景图片报错,路径不对的问题
2018/03/06 Javascript
Vue中使用better-scroll实现轮播图组件
2020/03/07 Javascript
浅析微信小程序自定义日历组件及flex布局最后一行对齐问题
2020/10/29 Javascript
python方法生成txt标签文件的实例代码
2018/05/10 Python
python基于物品协同过滤算法实现代码
2018/05/31 Python
Python DataFrame 设置输出不显示index(索引)值的方法
2018/06/07 Python
在pytorch中对非叶节点的变量计算梯度实例
2020/01/10 Python
python实现TCP文件传输
2020/03/20 Python
Python批量获取并保存手机号归属地和运营商的示例
2020/10/09 Python
python Matplotlib基础--如何添加文本和标注
2021/01/26 Python
HTML5中drawImage用法分析
2014/12/01 HTML / CSS
英国建筑用品在线:Building Supplies Online(BSO)
2018/04/30 全球购物
Hunkemöller瑞士网上商店:欧洲最大的内衣品牌之一
2018/12/03 全球购物
Hibernate持久层技术
2013/12/16 面试题
网上蛋糕店创业计划书
2014/01/24 职场文书
运动会广播稿50字
2014/01/26 职场文书
行政文秘岗位职责范本
2014/02/10 职场文书
聚美优品励志广告词
2014/03/14 职场文书
会议开幕词
2015/01/28 职场文书
五星级酒店前台接待岗位职责
2015/04/02 职场文书
2015年乡镇残联工作总结
2015/05/13 职场文书
“学党章、守党纪、讲党规”学习心得体会
2016/01/14 职场文书
小学体育课教学反思
2016/02/16 职场文书
python实现求纯色彩图像的边框
2021/04/08 Python
B站评分公认最好看的动漫,你的名字评分9.9,第六备受喜欢
2022/03/18 日漫
Go 中的空白标识符下划线
2022/03/25 Golang