python 实现波浪滤镜特效


Posted in Python onDecember 02, 2020

本文用 Python 实现 PS 滤镜的波浪特效

import numpy as np
from skimage import img_as_float
import matplotlib.pyplot as plt
from skimage import io
import numpy.matlib
import math
# 图片位置
file_name2='D:/Visual Effects/PS Algorithm/4.jpg'
img=io.imread(file_name2)

img = img_as_float(img)

row, col, channel = img.shape
img_out = img * 1.0
alpha = 70.0
beta = 30.0
degree = 20.0

center_x = (col-1)/2.0
center_y = (row-1)/2.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)

xx_dif = x_mask - center_x
yy_dif = center_y - y_mask

x = degree * np.sin(2 * math.pi * yy_dif / alpha) + xx_dif
y = degree * np.cos(2 * math.pi * xx_dif / beta) + yy_dif

x_new = x + center_x
y_new = center_y - y 

int_x = np.floor (x_new)
int_x = int_x.astype(int)
int_y = np.floor (y_new)
int_y = int_y.astype(int)

for ii in range(row):
  for jj in range (col):
    new_xx = int_x [ii, jj]
    new_yy = int_y [ii, jj]

    if x_new [ii, jj] < 0 or x_new [ii, jj] > col -1 :
      continue
    if y_new [ii, jj] < 0 or y_new [ii, jj] > row -1 :
      continue

    img_out[ii, jj, :] = img[new_yy, new_xx, :]


plt.figure (1)
plt.imshow (img)
plt.axis('off')

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

plt.show()

实现效果

python 实现波浪滤镜特效

以上就是python 实现波浪滤镜特效的详细内容,更多关于python 波浪滤镜的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python去除所有html标签的方法
May 05 Python
在Python中使用正则表达式的方法
Aug 13 Python
python八大排序算法速度实例对比
Dec 06 Python
Python实现将json文件中向量写入Excel的方法
Mar 26 Python
pandas将DataFrame的列变成行索引的方法
Apr 10 Python
详解Python的hasattr() getattr() setattr() 函数使用方法
Jul 09 Python
pygame游戏之旅 添加碰撞效果的方法
Nov 20 Python
python如何制作缩略图
Apr 30 Python
PyTorch中Tensor的拼接与拆分的实现
Aug 18 Python
节日快乐! Python画一棵圣诞树送给你
Dec 24 Python
pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)
Jan 18 Python
Pycharm插件(Grep Console)自定义规则输出颜色日志的方法
May 27 Python
python 如何对logging日志封装
Dec 02 #Python
python3中确保枚举值代码分析
Dec 02 #Python
python使用yaml 管理selenium元素的示例
Dec 01 #Python
python3处理word文档实例分析
Dec 01 #Python
python3中布局背景颜色代码分析
Dec 01 #Python
python 读取yaml文件的两种方法(在unittest中使用)
Dec 01 #Python
Python用摘要算法生成token及检验token的示例代码
Dec 01 #Python
You might like
PHP二维数组矩形转置实例
2016/07/20 PHP
PHP中函数gzuncompress无法使用的解决方法
2017/03/02 PHP
JavaScript建立一个语法高亮输入框实现思路
2013/02/26 Javascript
JS表的模拟方法
2015/02/05 Javascript
几种经典排序算法的JS实现方法
2016/03/25 Javascript
JQuery在循环中绑定事件的问题详解
2016/06/02 Javascript
jQuery动态添加与删除tr行实例代码
2016/10/18 Javascript
百度多文件异步上传控件webuploader基本用法解析
2016/11/07 Javascript
VueJs单页应用实现微信网页授权及微信分享功能示例
2017/07/26 Javascript
JavaScript实现QQ列表展开收缩扩展功能
2017/10/30 Javascript
一步步教你利用webpack如何搭一个vue脚手架(超详细讲解和注释)
2018/01/08 Javascript
Node.js开发之套接字(socket)编程入门示例
2019/11/05 Javascript
JS面向对象实现飞机大战
2020/08/26 Javascript
JavaScript arguments.callee作用及替换方案详解
2020/09/02 Javascript
[01:01:18]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#2COL VS LGD
2016/03/03 DOTA
Python获取运行目录与当前脚本目录的方法
2015/06/01 Python
Python的Asyncore异步Socket模块及实现端口转发的例子
2016/06/14 Python
详解如何用OpenCV + Python 实现人脸识别
2017/10/20 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
Python实现简单生成验证码功能【基于random模块】
2018/02/10 Python
利用Python求阴影部分的面积实例代码
2018/12/05 Python
tensorflow实现训练变量checkpoint的保存与读取
2020/02/10 Python
详解基于python的全局与局部序列比对的实现(DNA)
2020/10/07 Python
浏览器实现移动端高性能css3动画(开启gpu加速)
2013/12/23 HTML / CSS
Alba Moda德国网上商店:意大利时尚女装销售
2016/11/14 全球购物
巴西购物网站:Onofre Agora
2020/06/08 全球购物
博士研究生自我鉴定范文
2013/12/04 职场文书
家长会学生家长演讲稿
2013/12/29 职场文书
公司担保书范文
2014/05/21 职场文书
社会体育专业大学生职业生涯规划书
2014/09/17 职场文书
教师个人教学总结
2015/02/11 职场文书
小学六一主持词开场白
2015/05/28 职场文书
党员转正意见怎么写
2015/06/03 职场文书
2016教师校本培训心得体会
2016/01/08 职场文书
一篇文章带你搞懂Python类的相关知识
2021/05/20 Python
Jackson 反序列化时实现大小写不敏感设置
2021/06/29 Java/Android