Python: PS 图像特效 — 模糊玻璃

今天介绍一种基于高斯滤波和邻域随机采样,生成一种毛玻璃的图像特效,简单来说,就是先对图像做高斯滤波模糊,然后对模糊后的图像,通过对邻域的随机采样来赋予当前的像素点,这样,生成的图像有有一定的随机扰动和模糊,看起来就像隔着一层毛玻璃在观察图像一样。

# -*- coding: utf-8 -*-
"""
Created on Sun Aug 20 11:03:53 2017

@author: shiyi
"""

import matplotlib.pyplot as plt
from skimage.filters import gaussian
from scipy.misc import imsave, imread
import random

file_name='D:/Visual Effects/PS Algorithm/4.jpg';
img=imread(file_name)

g_img = gaussian(img, sigma=2, multichannel=True)

img_out = g_img.copy()

rows, cols, dpt = img.shape

p_size = 3

for i in range(p_size, rows-p_size, 1):
    for j in range(p_size, cols-p_size, 1):
        k1= random.random() - 0.5
        k2= random.random() - 0.5
        m=int (k1*(p_size*2-1)) 
        n=int (k2*(p_size*2-1))
        h=(i+m) % rows 
        w=(j+n) % cols  
        img_out[i, j, :] = g_img[h, w, :]

imsave('out.jpg', img_out)

plt.figure
plt.imshow(img_out)
plt.show()

这里写图片描述

效果图:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值