本文实例讲述了Python实现PS滤镜中马赛克效果。分享给大家供大家参考,具体如下:

这里利用 Python 实现PS 滤镜中的马赛克效果,具体的算法原理和效果可以参考附录说明,Python示例代码如下:

from skimage import img_as_float

import matplotlib.pyplot as plt

from skimage import io

import random

import numpy as np

file_name='D:/Visual Effects/PS Algorithm/4.jpg';

img=io.imread(file_name)

img = img_as_float(img)

img_out = img.copy()

row, col, channel = img.shape

half_patch =10

for i in range(half_patch, row-1-half_patch, half_patch):

for j in range (half_patch, col-1-half_patch, half_patch):

k1 = random.random() - 0.5

k2 = random.random() - 0.5

m=np.floor(k1*(half_patch*2 + 1))

n=np.floor(k2*(half_patch*2 + 1))

h=int((i+m) % row)

w=int((j+n) % col)

img_out[i-half_patch:i+half_patch, j-half_patch:j+half_patch, :] =\

img[h, w, :]

plt.figure(1)

plt.imshow(img)

plt.axis('off')

plt.figure(2)

plt.imshow(img_out)

plt.axis('off')

plt.show()

附:PS 滤镜算法原理 ——马赛克

% method : 利用邻域的任意一点代替当前邻域所有像素点

%%%% mosaic

clc;

clear all;

addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorithm');

Image=imread('4.jpg');

Image=double(Image);

size_info=size(Image);

height=size_info(1);

width=size_info(2);

N=11; % 控制邻域大小

Image_out=Image;

for i=1+N:N:height-N

for j=1+N:N:width-N

k1=rand()-0.5;

k2=rand()-0.5;

m=(k1*(N*2-1));

n=(k2*(N*2-1));

h=floor(mod(i+m,height));

w=floor(mod(j+n,width));

if w==0;

w=width;

end

if h==0

h=height;

end

Image_out(i-N:i+N,j-N:j+N,1)=Image(h,w,1);

Image_out(i-N:i+N,j-N:j+N,2)=Image(h,w,2);

Image_out(i-N:i+N,j-N:j+N,3)=Image(h,w,3);

end

end

imshow(Image_out/255);

原图

效果图

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

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

本文标题: Python实现PS滤镜中马赛克效果示例

本文地址: http://www.cppcns.com/jiaoben/python/218237.html

python图片马赛克_Python实现PS滤镜中马赛克效果示例相关推荐

  1. python开发ps插件_Python实现PS滤镜中马赛克效果示例

    Python实现PS滤镜中马赛克效果示例 发布时间:2020-08-29 06:02:24 来源:脚本之家 阅读:93 作者:Matrix_11 本文实例讲述了Python实现PS滤镜中马赛克效果.分 ...

  2. python做万花筒代码_Python实现PS滤镜的万花筒效果示例

    本文实例讲述了Python实现PS滤镜的万花筒效果.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 的一种滤镜效果,称为万花筒.也是对图像做各种扭曲变换,最后图像呈现的效果就像从万 ...

  3. python开发ps插件_Python实现PS滤镜中的USM锐化效果

    本文用 Python 实现 PS 滤镜中的 USM 锐化效果 import matplotlib.pyplot as plt from skimage import io from skimage.f ...

  4. python黑的调白的_Python实现PS图像调整黑白效果示例

    本文实例讲述了Python实现PS图像调整黑白效果.分享给大家供大家参考,具体如下: 这里用Python 实现 PS 里的图像调整–黑白,PS 里的黑白并不是简单粗暴的将图像转为灰度图,而是做了非常精 ...

  5. python图片旋转脚本_Python实现PS滤镜的旋转模糊功能示例

    本文实例讲述了Python实现PS滤镜的旋转模糊功能.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 滤镜中的旋转模糊,具体的算法原理和效果可以参考附录相关介绍.Python代码如 ...

  6. python 艺术照片滤镜_Python实现PS滤镜Fish lens图像扭曲效果示例

    本文实例讲述了Python实现PS滤镜Fish lens图像扭曲效果.分享给大家供大家参考,具体如下: 这里实现 PS 滤镜中的一种几何变换– Fish lens, 对图像做扭曲,感觉就像通过一个凸镜 ...

  7. python绘制立体扇形_Python实现PS滤镜特效之扇形变换效果示例

    本文实例讲述了Python实现PS滤镜特效之扇形变换效果.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 滤镜中的一种几何变换特效,称为扇形变换,将图像扭曲成一个扇形,具体的算法原 ...

  8. python 视频滤镜_Python实现PS滤镜功能之波浪特效示例

    本文实例讲述了Python实现PS滤镜功能之波浪特效.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 滤镜的波浪特效,具体效果可以参考附录说明 import numpy as np ...

  9. python代码实现的特效_Python 实现PS滤镜的旋涡特效

    实现效果: 实现代码 import numpy as np from skimage import img_as_float import matplotlib.pyplot as plt from ...

最新文章

  1. C++ .h(头文件) 与 .cpp(源文件) 的使用
  2. 只要一句话、一段文字,想让奥巴马说啥他就说啥
  3. SVM中的线性分类器
  4. 浅谈Java中的数据类型以及面向对象
  5. 微软服务器在电脑上怎么打开,怎么在一个电脑上开启服务器可以让另外一台电脑连接服...
  6. step 1 android-sdk-download
  7. java运维工程师做什么_网络工程师和网络运维工程师有什么不同?
  8. POJ - 3278 Catch That Cow 简单搜索
  9. 微软游戏开发工具XNA 2.0[转自驱动之家]
  10. python pip的配置
  11. Prompt Learning | 一文带你概览Prompt工作新进展
  12. IntelliJ IDEA+Maven运行apache-storm的LocalCluster例子
  13. 高并发限流-漏桶算法和令牌桶算法
  14. 信息系统综合知识八 专业英语
  15. [图像]中值滤波(Matlab实现)
  16. 异步mysql java_java – 异步http客户端(ning)创建更多线程?
  17. Redis启动和停止(Ubuntu)
  18. 数据库Date数据与字符串如何转换
  19. Android的GridView和ScrollView的嵌套
  20. 微软杀毒软件Morro更名 测试版9月发布

热门文章

  1. js控制时间显示格式
  2. Jquery使用小技巧
  3. 腾讯封杀linux/mac QQ
  4. JDK5新特性之一----静态导入
  5. java 中张孝祥老师_谁有传智博客张孝祥老师的Java视频——必须是完整的
  6. Object的构造函数方法
  7. 《用python写网络爬虫》 编写第一个网络爬虫
  8. 快速阅读软件工程后的几个问题
  9. 5.修改本地库/远程仓库的地址
  10. 相邀直播app最新入驻58位海外阿姨