clc;
    clear all;
    close all;
    addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorithm');
    I=imread('4.jpg');
    I=double(I);
    Image=I/255;
    sz=size(Image);
    % set the parameters
    radius = 150; 
    angle = pi/4;   
    angle2=pi/4;
    sides=10;
    centerX = 0.5;   % set the center of the circle, proportion of the image size
    centerY = 0.5;
    iWidth=sz(2);
    iHeight=sz(1);
    icenterX=iWidth*centerX;
    icenterY=iHeight*centerY;
    Image_new=Image;
    for i=1:sz(1)
        for j=1:sz(2)
            dx=j-icenterX;
            dy=i-icenterY;
            r=sqrt(dy*dy+dx*dx);
            theta=atan2(dy, dx)-angle-angle2;
            temp_theta=theta/pi*sides*0.5 ;
            theta=triangle(temp_theta);
            if (radius)
                c=cos(theta);
                radius_c=radius/c;
                r=radius_c * triangle(r/radius_c);
            end
            theta=theta+angle;
            x=r * cos(theta)+icenterX;
            y=r * sin(theta)+icenterY;
            if (x<=1)     x=1;  end
            if (x>=sz(2)) x=sz(2)-1; end;
            if (y>=sz(1)) y=sz(1)-1; end;
            if (y<1) y=1;     end;
    % % %         if (x<=1)     continue;  end
    % % %         if (x>=sz(2))   continue; end;
    % % %         if (y>=sz(1))  continue; end;
    % % %         if (y<1)  continue;     end;
            x1=floor(x);
            y1=floor(y);
            p=x-x1;
            q=y-y1;
            Image_new(i,j,:)=(1-p)*(1-q)*Image(y1,x1,:)+p*(1-q)*Image(y1,x1+1,:)...
                +q*(1-p)*Image(y1+1,x1,:)+p*q*Image(y1+1,x1+1,:);
        end
    end
    imshow(Image_new)
    imwrite(Image_new, 'out.jpg');参考来源:http://www.jhlabs.com/index.html
原图: 
 
效果图:
 
                   
                   
                   
                   
                             本文介绍了一种使用MATLAB实现的照片扭曲效果算法。该算法通过设置参数来改变图片中物体的位置和形状,创建出视觉上有趣的扭曲效果。文章提供了完整的代码示例,并展示了原图与处理后的对比效果。
本文介绍了一种使用MATLAB实现的照片扭曲效果算法。该算法通过设置参数来改变图片中物体的位置和形状,创建出视觉上有趣的扭曲效果。文章提供了完整的代码示例,并展示了原图与处理后的对比效果。
           
       
           
                 
                 
                 
                 
                 
                
               
                 
                 
                 
                 
                
               
                 
                 扫一扫
扫一扫
                     
              
             
                   1247
					1247
					
 被折叠的  条评论
		 为什么被折叠?
被折叠的  条评论
		 为什么被折叠?
		 
		  到【灌水乐园】发言
到【灌水乐园】发言                                
		 
		 
    
   
    
   
             
            


 
            