MATLAB程序大全培训讲学.doc

MATLAB程序大全培训讲学.doc

ID:61931896

大小:1.19 MB

页数:52页

时间:2021-03-31

MATLAB程序大全培训讲学.doc_第1页
MATLAB程序大全培训讲学.doc_第2页
MATLAB程序大全培训讲学.doc_第3页
MATLAB程序大全培训讲学.doc_第4页
MATLAB程序大全培训讲学.doc_第5页
资源描述:

《MATLAB程序大全培训讲学.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、__________________________________________________1.全景图到穹景图这个程序我最初是用FreeImage写的,这两天改成了matlab,再不贴上来,我就要忘了。看到一篇文章有这样的变换,挺有意思的,就拿来试了一下,。全景图到穹顶图变换,通俗的说就是将全景图首尾相接做成一个圆环的样子。先看下面这张图:下面的矩形就是我们要处理的全景图,上面的矩形是变换后的图像。下面图像的底边对应穹顶图的内圆,顶边对应穹顶图的外圆,当然,反过来也是可以的。程序流程:1.定义穹顶图内圆和外圆的半径,变换

2、后的像素就填充在这个内外半径的圆环中。2.遍历穹顶图,当所处理当前像素位于圆环内,则通过极坐标反变换去全景图中寻找相应位置的像素进行填充。3.遍历完图像就行了。用的技巧和图像旋转或放大缩小都是类似的。____________________________________________________________________________________________________处理结果:原图:结果:matlab代码如下:clearall;closeall;clc;img=imread('pan.jpg');i

3、mshow(img);[m,n]=size(img);r1=100;%内环半径r2=r1+m;%外环半径imgn=zeros(2*r2,2*r2);[re_m,re_n]=size(imgn);fory=1:re_mforx=1:re_ndis_x=x-re_n/2;dis_y=y-re_m/2;l=sqrt(dis_x^2+dis_y^2);ifl<=r2&&l>=r1theta=0;________________________________________________________________________

4、____________________________ify>re_m/2theta=atan2(dis_y,dis_x);endify=1&&yy<=m&&xx>=1&&xx<=nimgn(y,x)=img(yy,xx);endendendendfigure;imshow

5、(imgn,[])最后要说的是,一般我们要是有一张全景图,通常会用cubic映射,将图像变换为立方体的六个面,然后通过图形学方法贴到立方体上,就能做出类似谷歌街景的样子。cubic映射应该才是全景图最常用的处理方法,不过那又是另一类变换了。2.GUI保存图像____________________________________________________________________________________________________%---Executesonbuttonpressinpushbutton5

6、.functionpushbutton5_Callback(hObject,eventdata,handles)%hObjecthandletopushbutton5(seeGCBO)%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA)globalsrc_img;[filename,pathname]=uiputfile({'*.jpg';'*.bmp';'*.gif';'

7、*.png';'*.tif'},'WritePic');str=[pathnamefilename];ifstr~=0imwrite(src_img,str);end3.GUI读入图像%---Executesonbuttonpressinpushbutton1.functionpushbutton1_Callback(hObject,eventdata,handles)%hObjecthandletopushbutton1(seeGCBO)%eventdatareserved-tobedefinedinafutureversio

8、nofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA)[filename,pathname]=uigetfile({'*.*';'*.jpg';'*.bmp';'*.gif';'*.png';'*

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。