Python实现PS滤镜碎片特效功能示例


Posted in Python onJanuary 24, 2018

本文实例讲述了Python实现PS滤镜碎片特效功能。分享给大家供大家参考,具体如下:

这里用 Python 实现 PS 滤镜中的碎片特效,这个特效简单来说就是将图像在 上,下,左,右 四个方向做平移,然后将四个方向的平移的图像叠加起来做平均。具体的效果图与说明可参考附录说明

from skimage import img_as_float
import matplotlib.pyplot as plt
from skimage import io
file_name='D:/Visual Effects/PS Algorithm/4.jpg';
img=io.imread(file_name)
img = img_as_float(img)
img_1 = img.copy()
img_2 = img.copy()
img_3 = img.copy()
img_4 = img.copy()
img_out = img.copy()
Offset = 7
row, col, channel = img.shape
img_1[:, 0 : col-1-Offset, :] = img[:, Offset:col-1, :]
img_2[:, Offset:col-1, :] = img[:, 0 : col-1-Offset, :] 
img_3[0:row-1-Offset, :, :] = img[Offset:row-1, :, :]
img_4[Offset:row-1, :, :] = img[0:row-1-Offset, :, :]
img_out = (img_1 + img_2 + img_3 + img_4) / 4.0
plt.figure(1)
plt.imshow(img)
plt.axis('off');
plt.figure(2)
plt.imshow(img_out)
plt.axis('off');

附:PS 滤镜算法原理——碎片效果

%%% Fragment
%%% 对原图做四个方向的平移,然后对平移的结果取平均
%%% 碎片效果
clc;
clear all;
Image=imread('4.jpg');
Image=double(Image)/255;
[row,col,k]=size(Image);
Image1=Image;
Image2=Image;
Image3=Image;
Image4=Image;
Offset=5;
%%% 左移
Image1(:,1:col-Offset,:)=Image(:,1+Offset:col,:);
%%% 右移
Image2(:,1+Offset:col,:)=Image(:,1:col-Offset,:);
%%%% 上移
Image3(1+Offset:row,:,:)=Image(1:row-Offset,:,:);
%%% 下移
Image4(1:row-Offset,:,:)=Image(1+Offset:row,:,:);
Image=(Image1+Image2+Image3+Image4)/4;
figure, imshow(Image);

原图:

Python实现PS滤镜碎片特效功能示例

效果图:

Python实现PS滤镜碎片特效功能示例

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

Python 相关文章推荐
python使用正则表达式提取网页URL的方法
May 26 Python
python实现linux下抓包并存库功能
Jul 18 Python
Python线程同步的实现代码
Oct 03 Python
对Python 3.2 迭代器的next函数实例讲解
Oct 18 Python
Python3 单行多行万能正则匹配方法
Jan 07 Python
python自动发送测试报告邮件功能的实现
Jan 22 Python
使用python实现希尔、计数、基数基础排序的代码
Dec 25 Python
PyQt中使用QtSql连接MySql数据库的方法
Jul 28 Python
Python QT组件库qtwidgets的使用
Nov 02 Python
python 基于wx实现音乐播放
Nov 24 Python
python 通过 pybind11 使用Eigen加速代码的步骤
Dec 07 Python
浅谈tf.train.Saver()与tf.train.import_meta_graph的要点
May 26 Python
python的re正则表达式实例代码
Jan 24 #Python
python实现生命游戏的示例代码(Game of Life)
Jan 24 #Python
Python 获得命令行参数的方法(推荐)
Jan 24 #Python
Python实现的rsa加密算法详解
Jan 24 #Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
Jan 24 #Python
python做量化投资系列之比特币初始配置
Jan 23 #Python
python在非root权限下的安装方法
Jan 23 #Python
You might like
全国FM电台频率大全 - 31 新疆维吾尔族自治区
2020/03/11 无线电
杏林同学录(八)
2006/10/09 PHP
PHP、Python和Javascript的装饰器模式对比
2015/02/03 PHP
JavaScript让IE浏览器event对象符合W3C DOM标准
2009/11/24 Javascript
jQuery 添加/移除CSS类实现代码
2010/02/11 Javascript
jquery如何实现在加载完iframe的内容后再进行操作
2013/09/10 Javascript
JavaScript分析、压缩工具JavaScript Analyser
2014/12/31 Javascript
JQuery插件Quicksand实现超炫的动画洗牌效果
2015/05/03 Javascript
JS中Location使用详解
2015/05/12 Javascript
实例详解JavaScript获取链接参数的方法
2016/01/01 Javascript
javascript单页面手势滑屏切换原理详解
2016/03/21 Javascript
JavaScript中校验银行卡号的实现代码
2016/12/19 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
Nginx 配置多站点vhost 的方法
2018/01/07 Javascript
JS将时间秒转换成天小时分钟秒的字符串
2019/07/10 Javascript
Vue自定义组件的四种方式示例详解
2020/02/28 Javascript
基于javascript实现日历功能原理及代码实例
2020/05/07 Javascript
vuex页面刷新导致数据丢失的解决方案
2020/12/10 Vue.js
python语言元素知识点详解
2019/05/15 Python
python智联招聘爬虫并导入到excel代码实例
2019/09/09 Python
关于Python3 lambda函数的深入浅出
2019/11/27 Python
pyspark给dataframe增加新的一列的实现示例
2020/04/24 Python
什么是CSS3 HSLA色彩模式?HSLA模拟渐变色条
2016/04/26 HTML / CSS
MYSQL支持事务吗
2013/08/09 面试题
教师演讲稿范文
2014/01/08 职场文书
教师专业自荐书范文
2014/02/10 职场文书
《桂花雨》教学反思
2014/04/12 职场文书
抽样调查项目计划书
2014/04/24 职场文书
销售队伍口号
2014/06/11 职场文书
庆祝儿童节标语
2014/10/09 职场文书
2014年医德医风工作总结
2014/11/13 职场文书
2015驻村干部工作总结
2015/04/07 职场文书
中学校园广播稿
2015/08/18 职场文书
2016年中秋节慰问信
2015/12/01 职场文书
使用MybatisPlus打印sql语句
2022/04/22 SQL Server
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android