这里给出灰度图像的模糊算法,彩色图像只要分别对三个通道做模糊即可。

%%  spin blur

% 旋转模糊

clc;

clear all;

close all;



I=imread('4.jpg');

I=double(I);



% % % I_new=I;

% % % for kk=1:3

% % %     I_new(:,:,kk)=Spin_blur_Fun(I(:,:,kk), 30, 30);

% % % end

% % % imshow(I_new/255)

Image=I;

Image=0.2989 * I(:,:,1) + 0.5870 * I(:,:,2) + 0.1140 * I(:,:,3); 



[row, col]=size(Image);

Image_new=Image;

Center_X=(col+1)/2;

Center_Y=(row+1)/2;

validPoint=1;

angle=5;

radian=angle*pi/180;

radian2=radian*radian;

Num=30;

Num2=Num*Num;

for i=1:row

    for j=1:col

        validPoint=1;

        x0=j-Center_X;

        y0=Center_Y-i;

        x1=x0;

        y1=y0;

        Sum_Pixel=Image(i,j);

        for k=1:Num

            x0=x1;

            y0=y1;

            %%% 逆时针

            % x1=x0-radian*y0/Num-radian2*x0/Num2;

            % y1=y0+radian*x0/Num-radian2*y0/Num2;

            %%% 顺时针

            x1=x0+radian*y0/Num-radian2*x0/Num2;

            y1=y0-radian*x0/Num-radian2*y0/Num2;

            

            x=floor(x1+Center_X);

            y=floor(Center_Y-y1);

            

            if(x>1 && x<col && y>1 && y<row)

                validPoint=validPoint+1;

                Sum_Pixel=Sum_Pixel+Image(y,x);

            end   

        end

        Image_new(i,j)=Sum_Pixel/validPoint;

    end

end

imshow(Image_new/255);

原图

效果图

效果图

PS 滤镜——旋转模糊的更多相关文章

  1. Python: PS 滤镜--旋转模糊

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

  2. PS 滤镜——运动模糊

    %%%%%  motion blur clc; clear all; close all; Image=imread('4.jpg'); Image=double(Image); theta=pi/4 ...

  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. SpinBlur - 旋转模糊

    [SpinBlur - 旋转模糊] Using the Spin Blur effect, you can rotate and blur the image around one or more p ...

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

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

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

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

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

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

  9. Python: PS 滤镜--素描

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

随机推荐

  1. Spark内存管理-UnifiedMemoryManager和StaticMemoryManager

    在Spark-1.6.0中,引入了一个新的参数spark.memory.userLegacyMode(默认值为false),表示不使用Spark-1.6.0之前的内存管理机制,而是使用1.6.0中引入 ...

  2. [supervisor] 使用小记(入门教程)

    之前到现在很久没有用了,还是从安装说下,做个简单的实验,系统为Ubuntu14.04 快速安装配置 sudo pip_python install supervisor sudo echo_super ...

  3. Android View框架总结(六)View布局流程之Draw过程

    请尊重分享成果,转载请注明出处: http://blog.csdn.net/hejjunlin/article/details/52236145 View的Draw时序图 ViewRootImpl.p ...

  4. UNIX网络编程——非阻塞accept

    当有一个已完成的连接准备好被accept时,select将作为可读描述符返回该连接的监听套接字.因此,如果我们使用select在某个监听套接字上等待一个外来连接,那就没有必要把监听套接字设置为非阻塞, ...

  5. Android开发学习之路--传感器之初体验

    说到传感器,还是有很多的,有加速度啊,光照啊,磁传感器等等.当然android手机之所以称为智能手机,少不了这几款传感器的功劳了.下面就学习下了,这里主要学习光照,加速度和磁. 新建工程emSenso ...

  6. Unable to handle 'index' format version '2', please update rosdistro的解决办法

    之前安装的ROS是Fuerte版本的,好久没有更新,不知不觉又出来了好几个新的版本,今天删除了Fuerte,计划安装Hydro版本的尝尝新,按照官网的安装流程,很快就可以把新版本安装上去了,但是在&q ...

  7. 调用sed命令的三种方式

    调用sed命令的三种方式 调用sed有三种方式,一种为Shell命令行方式,另外两种是将sed命令写入脚本文件,然后执行该脚本文件. 三种方式的命令格式归纳如下: 一.在Shell命令行输入命令调用s ...

  8. cd 命令的具体使用说明

    cd 命令的具体使用说明

  9. JSON 的数据转换格式(DataTable或DataSet) -善良公社项目

    这两天在使用JqueryEasyUI框架绑定数据并实现自动分页时,由于框架的限制需要使用Json数据的来传递与获取数据: JSON的全称是JavaScript Object Notation, 是一种 ...

  10. PA 模块常用表2

    SELECT * FROM pa_expenditure_items_all  项目支出 select *from pa_cost_distribution_lines_all  支出分配行 SELE ...