%%%% Cloud
%%%% 利用perlin noise生成云彩 clc;
clear all;
close all; addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorithm'); Image=imread('4.jpg');
Image=double(Image); [row,col,layer]=size(Image); baseNoise=rand(row,col); persistance = 0.9;
totalAmplitude = 0.0; octaveCount=10; Cloud_texture=zeros(row,col); for i=0:octaveCount
amplitude=persistance.^(octaveCount-i);
% amplitude=persistance.^i;
totalAmplitude=totalAmplitude+amplitude;
Cloud_texture=Cloud_texture+Generate_smoothnoise(baseNoise, i)*amplitude;
end Cloud_texture=Cloud_texture/totalAmplitude; imshow(Cloud_texture); function SmoothNoise=Generate_smoothnoise(baseNoise, octave) SmoothNoise=baseNoise; [row, col]=size(baseNoise); samplePeriod=2.^octave;
sampleFrequency=1/samplePeriod; for i=1:row
sample_i0=floor((i/samplePeriod))*samplePeriod;
sample_i1=mod(sample_i0+samplePeriod,row);
vertical_blend = (i - sample_i0) * sampleFrequency;
for j=1:col
sample_j0 = floor(j / samplePeriod) * samplePeriod;
sample_j1 = mod(sample_j0 + samplePeriod,col);
horizontal_blend = (j - sample_j0) * sampleFrequency; if(sample_i0<1)
sample_i0=1;
end if(sample_i1<1)
sample_i1=1;
end if(sample_j1<1)
sample_j1=1;
end if(sample_j0<1)
sample_j0=1;
end % blend the top two corners
top = Cosine_Interpolate(baseNoise(sample_i0,sample_j0),...
baseNoise(sample_i0,sample_j1), horizontal_blend); % blend the bottom two corners
bottom = Cosine_Interpolate(baseNoise(sample_i1,sample_j0),...
baseNoise(sample_i1,sample_j1), horizontal_blend); % final blend
SmoothNoise(i,j) = Cosine_Interpolate(top, bottom, vertical_blend);
end
end function y=Cosine_Interpolate(x1,x2,alpha) ft = alpha * 3.1415927;
f = (1 - cos(ft)) * .5; y=x1*(1-f)+x2*f;

原图

效果图

利用Perlin nosie 完成(PS 滤镜—— 分成云彩)的更多相关文章

  1. 利用Perlin nosie 完毕(PS 滤镜—— 分成云彩)

    %%%% Cloud %%%% 利用perlin noise生成云彩 clc; clear all; close all; addpath('E:\PhotoShop Algortihm\Image ...

  2. Python: PS 滤镜--马赛克

    本文利用 Python 实现PS 滤镜中的马赛克效果,具体的算法原理和效果可以参考之前的博客: http://blog.csdn.net/matrix_space/article/details/30 ...

  3. OpenCV——PS 滤镜, 浮雕效果

    具体的算法原理可以参考: PS 滤镜, 浮雕效果 // define head function #ifndef PS_ALGORITHM_H_INCLUDED #define PS_ALGORITH ...

  4. OpenCV——PS 滤镜, 曝光过度

    算法原理可以参考: PS 滤镜,曝光过度 #ifndef PS_ALGORITHM_H_INCLUDED #define PS_ALGORITHM_H_INCLUDED #include <io ...

  5. Python: PS 滤镜--水波特效

    本文用 Python 实现 PS 滤镜中的 水波特效 import numpy as np from skimage import img_as_float import matplotlib.pyp ...

  6. Python: PS 滤镜--旋涡特效

    本文用Python 实现 PS 滤镜的旋涡特效,具体的算法原理和效果可以参考之前的博客: http://blog.csdn.net/matrix_space/article/details/42215 ...

  7. Python: PS 滤镜--USM 锐化

    本文用 Python 实现 PS 滤镜中的 USM 锐化效果,具体的算法原理和效果可以参考之前的博客: http://blog.csdn.net/matrix_space/article/detail ...

  8. Python: PS 滤镜--素描

    本文用 Python 实现 PS 滤镜中的素描特效,具体的算法原理和效果可以参考之前的博客: http://blog.csdn.net/matrix_space/article/details/386 ...

  9. Python: PS 滤镜--表面模糊

    本文用 Python 实现 PS 滤镜中的表面模糊,具体的算法原理和效果可以参考之前的博客: http://blog.csdn.net/matrix_space/article/details/528 ...

随机推荐

  1. PHP-Manual的学习----【语言参考】----【类型】-----【Boolean类型】

    2017年7月20日15:41:26Boolean 布尔类型 1.这是最简单的类型.boolean 表达了真值,可以为 TRUE 或 FALSE. 其实就是真假的问题.2.语法 要指定一个布尔值,使用 ...

  2. math课本复习

    第七章 微分方程 第一节 微分方程的基本概念    未知函数.未知函数的倒数与自变量之间的关系的方程,叫做微分方程. 第二节 可分离变量的微分方程 第三节 齐次方程 第四节 一阶线性微分方程 总结:任 ...

  3. python tensorflow 安装

    我是先下载tensorflow-1.5.0rc1-cp36-cp36m-win32.whl,再执行命令行安装的 下载地址:https://pypi.python.org/pypi/tensorflow ...

  4. 【BZOJ1492】[NOI2007]货币兑换Cash 斜率优化+cdq分治

    [BZOJ10492][NOI2007]货币兑换Cash Description 小Y最近在一家金券交易所工作.该金券交易所只发行交易两种金券:A纪念券(以下简称A券)和 B纪念券(以下简称B券).每 ...

  5. QQpet exploratory park(DP)

    QQpet exploratory park Today, more and more people begin to raise a QQpet. You can get a lot of plea ...

  6. Image Recognition

    https://www.tensorflow.org/tutorials/image_recognition

  7. 默写一个socket客户端和socket服务端的基本通信,即:收发消息

    Server: import socket sk = socket.socket() sk.bind(('192.168.0.95',8898)) #把地址绑定到套接字 sk.listen() #监听 ...

  8. spring+hibernate+springmvc整合框架搭建

    搭建maven web项目这里不再讲述,详情请查看http://www.cnblogs.com/wql025/p/5215570.html 现在讲述项目的搭建过程. 1.通过maven导入项目所用的j ...

  9. SM30维护视图创建【转】

           在SAP中,经常需要自定义数据库表.而且可能需要人工维护数据库表中的数据,可以通过SM30进行维护数据:但是SM30事务的权限太大,不适宜将SM30直接分配:因此,可以通过给维护表分配事 ...

  10. 特性,批次特性建立的BAPI函數

    [转http://taijizhang.blog.163.com/blog/static/176071381201442225514453/] SAP特性,物料特性,批次特性建立的BAPI函數 类的T ...