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的地形三维可视化Matplotlib和gdal使用实例
Dec 09 Python
Python键盘输入转换为列表的实例
Jun 23 Python
python 实现求解字符串集的最长公共前缀方法
Jul 20 Python
python实现排序算法解析
Sep 08 Python
python版本单链表实现代码
Sep 28 Python
对Python多线程读写文件加锁的实例详解
Jan 14 Python
python-itchat 获取微信群用户信息的实例
Feb 21 Python
详解Python计算机视觉 图像扭曲(仿射扭曲)
Mar 27 Python
使用python实现ftp的文件读写方法
Jul 02 Python
Java文件与类动手动脑实例详解
Nov 10 Python
浅谈Python中的模块
Jun 10 Python
利用Selenium添加cookie实现自动登录的示例代码(fofa)
May 08 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
PHP中__get()和__set()的用法实例详解
2013/06/04 PHP
关于php循环跳出的问题
2013/07/01 PHP
PHP连接MySQL查询结果中文显示乱码解决方法
2013/10/25 PHP
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
PHP实现发送微博消息功能完整示例
2019/12/04 PHP
Laravel框架下的Contracts契约详解
2020/03/17 PHP
Extjs4 GridPanel 的几种样式使用介绍
2013/04/18 Javascript
使用时间戳解决ie缓存的问题
2014/08/20 Javascript
JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)
2017/06/09 Javascript
JavaScript中附件预览功能实现详解(推荐)
2017/08/15 Javascript
浅谈Vue.js 关于页面加载完成后执行一个方法的问题
2019/04/01 Javascript
Vue项目中使用WebUploader实现文件上传的方法
2019/07/21 Javascript
webpack的pitching loader详解
2019/09/23 Javascript
layui实现根据table数据判断按钮显示情况的方法
2019/09/26 Javascript
pycharm 使用心得(七)一些实用功能介绍
2014/06/06 Python
Python实现将罗马数字转换成普通阿拉伯数字的方法
2017/04/19 Python
python如何去除字符串中不想要的字符
2020/07/05 Python
python中通过selenium简单操作及元素定位知识点总结
2019/09/10 Python
python绘制雪景图
2019/12/16 Python
pandas factorize实现将字符串特征转化为数字特征
2019/12/19 Python
Python利用逻辑回归分类实现模板
2020/02/15 Python
python如何处理程序无法打开
2020/06/16 Python
浅谈pytorch中的BN层的注意事项
2020/06/23 Python
Python3如何使用多线程升程序运行速度
2020/08/11 Python
详解HTML5将footer置于页面最底部的方法(CSS+JS)
2018/10/11 HTML / CSS
宝宝满月酒主持词和仪式流程
2014/03/27 职场文书
保密工作责任书
2014/04/16 职场文书
小学评语大全
2014/04/22 职场文书
2014年护士长工作总结
2014/11/11 职场文书
企业承诺书格式范文
2015/04/28 职场文书
承诺书模板大全
2015/05/04 职场文书
如何写新闻稿
2015/07/18 职场文书
2015年统计员个人工作总结
2015/07/23 职场文书
初中物理教学反思
2016/02/19 职场文书
Golang的继承模拟实例
2021/06/30 Golang