matlab练习程序(毛玻璃模糊)

算是一种特效模糊方式吧,算法原理就是用邻域随机像素代替当前所处理的像素就可以了。

效果如下图所示:

原图:

处理后结果:

matlab代码如下:

clear all; close all;clc;

img=imread('lena.jpg');
[h,w]=size(img);
imgn=img;
n=3;    %模糊直径

for i=1:h
    for j=1:w
        offsetX=n*rand()-n/2;   %邻域随机值代替当前像素
        offsetY=n*rand()-n/2;
        
        y=floor(i+offsetY);
        x=floor(j+offsetX);
        
        if x>=1 && x<=w && y>=1 && y<=h
            imgn(i,j)=img(y,x);
        end
    end
end

imshow(img);
figure;
imshow(imgn,[]);

 

posted @ 2014-07-05 10:57  Dsp Tian  阅读(3172)  评论(1编辑  收藏  举报