matlab練習程式(波紋扭曲)

來源:互聯網
上載者:User

標籤:style   blog   http   color   os   2014   

其實就是用sin或cos對x,y座標進行變換,處理的時候依然是反向變換。

類似的,用不同的函數能得到不同的扭曲效果,比如log,1/x,exp等等。

效果如下:

代碼如下(還給出了如何產生gif圖片的代碼):

clear all;close all;clc;img=imread(‘lena.jpg‘);[h w]=size(img);wave=[10,100]; %[幅度,周期]newh=h+2*wave(1);neww=w+2*wave(1);rot=0;for i=1:10    imgn=zeros(newh,neww);        rot=rot+0.2;    for y=1:newh        for x=1:neww            yy=round((y-wave(1))-(wave(1)*cos(2*pi/wave(2)*x+rot)));    %依然是逆變換            xx=round((x-wave(1))-(wave(1)*cos(2*pi/wave(2)*y+rot)));           if yy>=1 && yy<=h && xx>=1 && xx<=w                imgn(y,x)=img(yy,xx);           end        end    end    figure(1);    imshow(imgn,[]);        imgn(:,:,2)=imgn;       %產生gif圖片    imgn(:,:,3)=imgn(:,:,1);    [I,map]=rgb2ind(mat2gray(imgn),256);      imwrite(I,map,‘re.gif‘,‘DelayTime‘,0.1,‘WriteMode‘,‘Append‘);       end

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.