基于Koc分形曲线方法计算中国大陆海岸线长度.doc

基于Koc分形曲线方法计算中国大陆海岸线长度.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于Koc分形曲线方法计算中国大陆海岸线长度

基于Koch分形曲线方法计算中国大陆海岸线长度实验内容 运用Koch分形曲线的方法来计算中国海岸线长度,分析实验结果并对此实验加以改进。二、实验目的 了解正交矩阵在几何图形绘制中的应用,掌握循环语句的常用方法。在此过程中运用并体会坐标变换、鼠标输入数据等方法,复习读入图片及文本文件的方法。得出计算结果后与实际的长度进行比较并分析,最后给出改进方式。实验原理 很显然海岸线是一种复杂但是在局部会保持与整体相似的性质,当然这也是我们可以用分形的方式来模拟出海岸线的形状进而估算出海岸线的长度的理论基础,也是数学家曼德勃罗 在1967年所提出的理论。其具体算法如下: (1)首先用鼠标读取的方式在选定的海岸线图上读出尽可能多的点; (2)然后进行Koch分形的迭代; (3)最后算出分形迭代后的图形长度。四、实验程序 (一)中国海岸线长度读取文件程序:A=imread(D:\sealine.jpg); image(A)P=ginput (二)分型计算程序:function koch(P,N)if nargin==0,P=[0 0;1 0];N=3;endn=max(size(P))-1;A=[cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3)];for k=1:N p1=P(1:n,:);p2=P(2:n+1,:); d=(p2-p1)/3; q1=p1+d;q3=p1+2*d;q2=q1+d*A; n=4*n;II=1:4:n-3; P(II,:)=p1;P(II+4,:)=p2; P(II+1,:)=q1;P(II+2,:)=q2;P(II+3,:)=q3;endplot(P(:,1),P(:,2)),axis offaxis image (三)中国海岸线长度计算程序:x=P(:,1);y=P(:,2);plot(x,y)X=diff(x);Y=diff(y);L=sum(sqrt(X.^2+Y.^2)) 五、实验结果及分析 L(模拟海岸线长度)= 17857.2794 即由分形模拟出的中国海岸线长度为17857.2794千米。实验得到的分形图:真实图像对比: 在查阅相关资料后,我们可以得到中国大陆海岸线的公认值为18000千米 ,我们显然可以看到此次实验得到的实验结果已相当接近真实值,其相对误差为:(17857.2794 -18000)/18000=0.79%六、实验结论 由Koch分形方法迭代8次后得到的图形来模拟中国海岸线,求出的长度已相当接近真实值相对误差为0.79%。七、对本实验的思考及注意事项总结 在本次实验中,最容易出现错误的就是在用鼠标采集数据时应该沿着某个路径来采集,并且要切记计算机的坐标并非我们常见的右手系而是左手系,所以倘若我们所沿的路径是从下向上则采用正确方法将所得图像反转过来尤为重要。这个反转的方法十分简单且操作易行,但是却因为其过于简单可能会被遗忘。 (一)程序法 图片反转(上下方向):x=P(:,1);y=P(:,2); y=-y;plot(x.y) (二)操作法 千万不能忘记图像本身就有一个反转的功能,所以这个方法更加适合,不过要注意的是在采取本方法是要注意翻转的坐标不能扭曲,不然所得图像的形状将会发生改变。

文档评论(0)

ybcm963 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档