文档库 最新最全的文档下载
当前位置:文档库 › 应用MATLAB进行地理三维地貌可视化和地形分析

应用MATLAB进行地理三维地貌可视化和地形分析

应用MATLAB进行地理三维地貌可视化和地形分析
应用MATLAB进行地理三维地貌可视化和地形分析

第17卷 增刊2 广西工学院学报 V o l117 Sup2 2006年12月 JOU RNAL O F GUAN GX IUN I V ER S IT Y O F T ECHNOLO GY D ec12006文章编号 100426410(2006)S220017203

应用M AT LAB进行地理三维地貌可视化和地形分析

唐咸远

(广西工学院土建系,广西柳州 545006)

摘 要:从M A TLAB软件强大的功能入手,讨论了M A TLAB中进行地理三维地貌可视化和地形分析的方法,并展望其在工程中良好的应用前景。

关 键 词:M A TLAB;三维地貌可视化;地形分析

0 引言

M A TLAB的含义是矩阵实验室(M A TR I X LABORA TOR Y)[1],自其问世以来,就以数值计算称雄。其计算的基本单位是复数数组(或称阵列),使得该软件具有高度“向量化”。经过十几年的完善和扩充, M A TLAB现已发展成为线性代数课程的标准工具。由于它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得简捷、高效、方便,这是其它高级语言所不能比拟的。

在地理信息系统(G IS)中,地形的三维可视化通常是利用数字高程模型(D E M)来完成的,而D E M最常用表示方法为规则格网,它是将区域空间切分为规则的格网单元,每个格网单元对应一个数值,即高程值。数学上可以表示为一个矩阵,在计算机实现中则是一个二维数组。可见利用M A TLAB处理D E M数据,完成地形的三维可视化分析是切实可行的。

1 M AT LAB软件及其功能

M A TLAB产品家族是美国M ath W o rk s公司开发的用于概念设计、算法开发、建模仿真、实时实现的理想的集成环境,已广泛地应用在航空航天,金融财务,机械化工,电信,教育等各个行业。该软件的主要特点包括:

1)有高性能数值计算的高级算法,特别适合矩阵代数领域;2)有大量事先定义的数学函数,并且有很强的用户自定义函数的能力;3)有强大的绘图功能以及具有教育、科学和艺术学的图解和可视化的二维、三维图;4)基于H TM L完整的帮助功能;5)适合个人应用的强有力的面向矩阵(向量)的高级程序设计语言;6)与其它语言编写的程序结合和输入输出格式化数据的能力;7)有在多个应用领域解决难题的工具箱。

2 利用M AT LAB进行三维可视化和分析

211 D E M数据的输入与存储形式

数据的输入可以采用两种方式:文件输入或屏幕数字化。屏幕数字化即用鼠标在打开的地图影像上单击离散点[2],获得坐标并输入高程值。

收稿日期:2006210212

作者简介:唐咸远(19732),男,广西灌阳人,广西工学院土木建筑工程系工程师。

图1 M AT LAB 中生成的三维格网图图2 M AT LAB 中生成的三角形格网图3 M AT LAB 中生成的等直线图 D E M 数据的存储既可以是规则格网,也可以是不规则三角网或离散点的形式,即以(X ,Y ,Z )格式存入[3]。如果原始数据是离散点的形式,还要确定合适的坐标范围,由离散点加密网格点,并计算格网点的高程。这需要采用一定的内插或拟合算法。M A TLAB 中,

函数po lyfit 求解最小二乘曲线的拟合问题,in terp 1进行

一维插值,in terp 2进行二维插值。在三维地貌的显示中,

in terp 2(x ,y ,z ,x i ,y i ,m ethod )可以对粗糙的地面插

值光滑。

212 三维显示

许多G IS 都提供专业的三维分析功能,但使用和支

持开发功能很弱。在M A TLAB 中分析三维数据,不但提

供的现成函数很多,而且其灵活运用矩阵运算的方法,可

以实现许多其他软件无法实现的功能。

21211 三维格网图和格网表面图 M A TLAB 中提供了一系

列绘制三维图形的函数:带有基本等值线的网格图

m eshc (x ,y ,z );曲面图surf (x ,y ,z );带等值线的曲

面图surfc (x ,y ,z );带亮度的曲面图surfl (x ,y ,z )。

图1为M A TLAB 中生成的三维格网图

21212 三角形网格图和三角形表面图 三维地貌可视化中

除了矩形格网,最常见的是三角网。M A TLAB 中提供

delaunay 命令生成三角形网格图和三角形表面图。

首先从原始数据文件装载数据到x ,y ,z 三个1×n

的一维矩阵,也可以自己输入起算数据;

其次,利用以下函数生成三角形格网和表面图:

T ri =delaunay (x ,y );

T ri m esh (tri ,x ,y ,z );

T risurf (tri ,x ,y ,z )。

图2为M A TLAB 中生成的三角形格网。

21213 等直线图 调用函数con tour ()绘等高线并标注高

程,格式为:

[C ,h ]=con tour (x x ,y y ,zz ,[j j ])

其中,x x ,y y ,zz 为网格点坐标高程数组,j 为等高线高

程值,h 为该等高线句柄,C 表示在鼠标单击处标注。见

图3。

213 地形分析

由于M A TLAB 具有强大的计算结果可视化的功

能,还可以在其中进行D E M 的地形分析,如坡度、坡向的计算,剖面图的绘制等等。

21311 坡度、坡向的计算 地表某点的坡度S 、坡向A 是地形曲面z =f (x ,y )在东西(Y 轴)、南北(X 轴)方向上高程变化率的函数[4],即:

S =arctan f 2x +f 2y

(1) A =270°+arctan (f y f x )-90°f x f y (2)式中,f x ,f y 分别为南北方向和东西方向的高程变化率。

由上式可知,求解地面某点的坡度和坡向,关键是求解f x 和f y 1以计算正方形格网为例,f x 和f y 的计

算通常是以3×3的移动窗口,通过数值微分方法或局部曲面拟合的方法进行[5]。下式为二阶差分法计算f

x 81广西工学院学报 第17卷 

和f y ,其中g 为格网分辨率:

f x =(z 4-z 2)

(2g )(3) f y =(z 3-z 1)

(2g )(4)可以利用M A TLAB 的M 文件,编制相应的程序,生成D E M 的坡度、坡向图。21312 绘制地形剖面图 工程中,通常需要提取地形在某一方向上的剖面图,作为施工的依据。本文在等高线的基础上,利用M A TLAB 语言实现剖面的截取。其基本步骤如下:

(1)利用con tour ()命令绘制2维等高线;

(2)用M A TLAB 中的,用[x ,y ]=ginput (2)函数在屏幕上拾取某一剖面线上2个端点的坐标(x 1,y 1)和(x 2,y 2);

(3)计算该剖面线的斜率k =(y 2-y 1) (x 2-x 1),然后计算与该线相交的网格,并将相应的网格高程值记录在数组Z 中;

(4)利用如下命令,绘制出剖面图。

a =f ix (x );

b =a (1):1:a (2); p lot (b ,Z );

3 结论

M A TLAB 不仅具有强大的数值计算功能,在图像处理方面也很有优势。它拥有丰富的函数资源,节省了编码时间,工作效率极高。目前测绘行业中有关图像处理的工作很多,特别是遥感数据的处理。M A TLAB 的使用,提供了一个优秀的软件,从而使数据的处理,G IS 的建设,遥感影像信息的提取等变得更为便利。参 考 文 献:

[1]苏金明,阮沈勇1M A TLAB 611实用指南[M ]1北京:电子工业出版社,20021

[2]陈天伟1建立基于M A TLAB 的测量控制网设计工具箱[J ]1桂林工学院学报,2002,22(3):244~2451

[3]李志林,朱 庆.数字高程模型[M ]1武汉:武汉测绘科技大学出版社,20001

[4]刘学军,王叶飞,曹志东,等1基于D E M 的坡度坡向误差空间分布特征研究[J ]1测绘通报,2004,(12):11~131

[5]邓孺孺1青藏高原地表反射率反演及冷热源分析[D ]1北京:中国科学院,20021

(责任编辑 赖君荣)

91 增刊2 唐咸远等:应用M A TLAB 进行地理三维地貌可视化和地形分析

数学物理方程三维可视化仿真

龙源期刊网 https://www.wendangku.net/doc/5a7818474.html, 数学物理方程三维可视化仿真 作者:江萍杨华军何文森罗志华 来源:《教育教学论坛》2013年第03期 摘要:数学物理方程三维可视化仿真及创新实践训练是《数学物理方法》教学模式改革中的重要内容。本文通过MATLAB程序求解二维菱形晶格光子晶体的电磁场本征值方程,绘制出二维能带曲线,并将结果三维可视化,体现出复杂数学物理问题的物理图像,解决大学生在课程学习过程中理解困难的教学问题,加强大学生编程实践能力和创新能力的培养。 关键词:本征值问题;三维可视化仿真;光子晶体;平面波展开法;能带结构 中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2013)03-0247-03 一、课程背景 《数学物理方法》是理工科学生的基础课程之一,也是科研中常用的基本方法。数学物理方法课程的内容繁多,公式推导繁杂,尽管教材中的例题通常具有明确的物理意义,但是从眼花缭乱的数学表达式中看出其中所表达的物理图像,不仅学生会觉得困惑、枯燥,教师也难免觉得棘手。探索数学物理方法数值化教学的新方法,是数学物理方法课程教学中的一项重要工作,也是数学物理方法教学改革中的重要内容。利用MATLAB数值求解数学物理方程,将传统教学手段与计算机仿真教学相结合,改变只用公式符号教学的模式[1],令学生对复杂、抽象、烦琐的数学物理问题具有更深刻的理解。本论文旨在进行数学物理方程仿真求解实践训练,着力培养大学生应用数学物理思想解决实际问题的能力。本着“重理论、强实践、突创新”的教育理念,结合科技前沿,以光子晶体的电磁场理论作为实践内容,利用MATLAB对复杂的电磁场本征值问题进行计算机仿真求解,将结果三维可视化,以此来展现复杂电磁场问题的物理图像,对培养大学生创新能力具有重要意义。 二、光子晶体电磁理论基础 在利用分离变量法求解数学物理方程时,最后都归结到求解本征值问题。在用本征函数系展开法解数学物理方程时,也要对所用的本征函数系有较好的理解[2]。所以,各种本征函数 系在数学物理方程课程的学习中有非常重要的地位。周期结构对电磁波的调控是物理学领域的基础问题。光子晶体是由介电常数周期排列形成的一种合成材料,是非均匀介质中少数可以严格遵循电磁理论的新型人工材料。在一定的晶格常数和介电常数条件下,布拉格散射使在光子晶体中传播的电磁波受到调制形成类似于电子的能带结构[3]。利用计算机仿真求解光子晶体 中的复杂本征值问题,可以帮助学生熟悉并更好地掌握本征函数系的性质和求解方法。 1.理想二维光子晶体的结构。假设介电常数为εa,半径为r的介质柱平行于z轴,背景介质的介电常数为εb,在(x,y)平面内的晶格常数为a,θ为相邻基矢a1和a2之间的锐角,

几个分形的matlab实现

几个分形得matlab实现 摘要:给出几个分形得实例,并用matlab编程实现方便更好得理解分形,欣赏其带来得数学美感 关键字:Koch曲线实验图像 一、问题描述: 从一条直线段开始,将线段中间得三分之一部分用一个等边三角形得两边代替,形成山丘形图形如下 ?图1 在新得图形中,又将图中每一直线段中间得三分之一部分都用一个等边三角形得两条边代替,再次形成新得图形如此迭代,形成Koch分形曲线。 二、算法分析: 考虑由直线段(2个点)产生第一个图形(5个点)得过程。图1中,设与分别为原始直线段得两个端点,现需要在直线段得中间依次插入三个点,,。显然位于线段三分之一处,位于线段三分 之二处,点得位置可瞧成就是由点以点为轴心,逆时针旋转600而得。旋转由正交矩阵 实现。 算法根据初始数据(与点得坐标),产生图1中5个结点得坐标、结点得坐标数组形成一个矩阵,矩阵得第一行为得坐标,第二行为得坐标……,第五行为得坐标。矩阵得第一列元素分别为5个结点得坐标,第二列元素分别为5个结点得坐标。 进一步考虑Koch曲线形成过程中结点数目得变化规律。设第次迭代产生得结点数为,第次迭代产生得结点数为,则与中间得递推关系为。 三、实验程序及注释: p=[0 0;10 0]; %P为初始两个点得坐标,第一列为x坐标,第二列为y坐标 n=2; %n为结点数 A=[cos(pi/3) —sin(pi/3);sin(pi/3) cos(pi/3)]; %旋转矩阵 for k=1:4 d=diff(p)/3; %diff计算相邻两个点得坐标之差,得到相邻两点确定得向量 %则d就计算出每个向量长度得三分之一,与题中将线段三等分对应 m=4*n-3; %迭代公式 q=p(1:n—1,:); %以原点为起点,前n—1个点得坐标为终点形成向量 p(5:4:m,:)=p(2:n,:); %迭代后处于4k+1位置上得点得坐标为迭代前得相应坐标 p(2:4:m,:)=q+d; %用向量方法计算迭代后处于4k+2位置上得点得坐标 p(3:4:m,:)=q+d+d*A'; %用向量方法计算迭代后处于4k+3位置上得点得坐标 p(4:4:m,:)=q+2*d; %用向量方法计算迭代后处于4k位置上得点得坐标 n=m; %迭代后新得结点数目 end plot(p(:,1),p(:,2)) %绘出每相邻两个点得连线 axis([0 10 0 10]) 四、实验数据记录: 由第三部分得程序,可得到如下得Koch分形曲线:

ERDAS 的三维地形可视化

南昌工程学院 毕业设计(论文) 水利与生态工程系(院)测绘工程专业毕业设计(论文)题目ERDAS的三维地形可视化 学生姓名章鹏 班级测绘工程(1)班 学号2011101843 指导教师何湘春 完成日期2015年6月1日

ERDAS的三维地形可视化 The visualization of3D terrain ERDAS 总计毕业设计33页 表格1个 插图16幅

南昌工程学院本(专)科毕业设计(论文) 摘要 随着经济与科学的迅速发展,三维可视化技术渐渐走向成熟,近来越来越受到人们的关注。本文分析了实现三维地形可视化的方法和步骤。将该地形图的高程点文件转换为IMG格式的数字高程模型的文件,然后将其与含该区域的TM影像图进行叠加,从而实现了三维地形的可视化。并在此基础上分析了三维地形可视化的应用。最后总结了在本次研究中所遇到的问题、解决方法以及所取得的成果。 关键词:三维地形可视化ERDAS ARCGIS数字高程模型

ABSTRACT ABSTRACT With the rapid development of economy and science,3D visualization technology gradually mature,recently more and more attention.This paper analyzes the realization method and steps of3D terrain visualization.The elevation of the terrain map file is converted to digital elevation model IMG format file,and then the stack with TM image with the area,so as to realize the visualization of3D terrain. Based on the analysis of the application of3D terrain visualization.Finally summarizes the encountered in this study,the problem solving methods and achievements. Key word:The visualization of3D Terrain ERDAS ARCGIS DEM

Matlab实验报告:分形迭代

数学实验报告:分形迭代 练习1 1.实验目的:绘制分形图案并分析其特点。 2.实验内容:绘制Koch曲线、Sierpinski三角形和树木花草图形,观察这些图形的局部和原来分形图形的关系。 3.实验思路:利用函数反复调用自己来模拟分形构造时的迭代过程,当迭代指标n为0时运行作图操作,否则继续迭代。 4.实验步骤: (1)Koch曲线 function koch(p,q,n) % p、q分别为koch曲线的始末复坐标,n为迭代次数 if (n==0) plot([real(p);real(q)],[imag(p);imag(q)]); hold on; axis equal else a=(2*p+q)/3; % 求出从p 到q 的1/3 处端点a b=(p+2*q)/3; % 求出从p 到q 的2/3 处端点b c=a+(b-a)*exp(pi*i/3);% koch(p, a, n-1); % 对pa 线段做下一回合 koch(a, c, n-1); % 对ac 线段做下一回合 koch(c, b, n-1); % 对cb 线段做下一回合 koch(b, q, n-1); % 对bq 线段做下一回合 end (2)Sierpinski三角形 function sierpinski(a,b,c,n) % a、b、c为三角形顶点,n为迭代次数 if (n==0) fill([real(a) real(b) real(c)],[imag(a) imag(b) imag(c)],'b');% 填充三角形abc hold on; axis equal else a1=(b+c)/2; b1=(a+c)/2; c1=(a+b)/2; sierpinski(a,b1,c1,n-1); sierpinski(a1,b,c1,n-1); sierpinski(a1,b1,c,n-1); end (3)树木花草 function grasstree(p,q,n) % p、q分别为树木花草始末复坐标,n为迭代次数

地形三维可视化

地形三维可视化 何为地形三维可视化? 地形三维可视化及其绘制技术是指在计算机上对数字地形模型(DisitalTerrainModels)中的地形数据实时地进行三维逼真显示、模拟仿真、虚拟现实和多分辨率表达等内容的一项关键技术,在现实生活中具有广泛的应用价值。ERDAsIMAGINE虚拟地理信息系统(virtualGis)是一个三维可视化工具,给用户提供了一种对大型数据库进行实时漫游操作的途径。它使用户能在虚拟的地理信息环境中交互操作,既能增强或查询叠加在三维表面上图像的像元值及相关属性,还能可视化、风格化和查询地图矢量层的属性信息,能够实现仿真多图层的统一管理、所见即所得的地形景观通视与威胁分析,输出高质量的三维景观图。 为何使用地形三维可视化? GIS的核心是空间数据库,三维地理空间定位和数字表达是地理信息系统的本质待征。地形数据(如DEM等)作为空间数据库的某个持定结构的数据集合.或所有这些数据集台的总体.被包含在地理信息系统中。成为它的核心部分的实体。显然.对地形空间数据的真三维显示和在二维空间的查问与分析.也是GIS的核心内容之一。目前众多的以高性能工作站为支撑的G1S系统(如ARC/INFO、ERDAS、Genamap等),已具有一定的地形三维显示功能,但十分薄弱。表现之一是三维图类型局限于线划式或模拟灰度表示,而对计算机图形学中的高真实感三维图形的最新的生成技术并没有及时地取而用之;表现之二是所有的空间操作和分析都在二维图形上进行相显示,缺乏直观效果。 值得一提的是,从远古到现代,地形的三维显示技术(地形三维模型的制作)最直接、最重要的莫过于军事上的应用。从美军50年代的SAGE防空指挥系统.著名的C3I系统,到在海湾战争中起丁重要作用的Terra—Base系统,不难看出,以地形三维显示以及军事地形分析在指挥白动化上的应用,—直是各国军方颁心研究的重要内容。其军营上的应用价值是不言而喻的。 就我国同情而言,在以高性能微机和图形卡上实现地形的高逼真件三维显不以及相应的空间分析等功能,具有普遍的应用价值。 地形三维可视化应用 地形三维可视化应用广泛,如:农田三维地形测量数据处理与可视化、地质环境破坏现状三维景观可视化、水库三维淹没区域分析、公路典型路段中的应用

分形树__Matlab

%这是一个生成树的主函数,它的输入分别为每叉树枝的缩短比、树枝的偏角、生长次数. %注意:把这些程序全部保存在名为tree的M文件中再运行!!!!!!!! %注意:把这些程序全部保存在名为tree的M文件中再运行!!!!!!!! %注意:把这些程序全部保存在名为tree的M文件中再运行!!!!!!!! %注意:把这些程序全部保存在名为tree的M文件中再运行!!!!!!!! %注意:把这些程序全部保存在名为tree的M文件中再运行!!!!!!!! %注意:把这些程序全部保存在名为tree的M文件中再运行!!!!!!!! %注意:把这些程序全部保存在名为tree的M文件中再运行!!!!!!!! %%小提示:若用做函数,请将虚线框内语句删去。 function f=tree(w,dtheata,NN) %%%--------------------虚线框--------------------%%% clear;clc;clf;w=0.8;dtheata=pi/6;NN=8;%建议生长次数NN不要超过10 %%%--------------------虚线框--------------------%%% n=2^NN;%从主枝算起,共需生成2^NN个树枝 for NNK=1:n x1=0; y1=0; r1=1; theata1=pi/2; dataway=ten2twoN(NNK,NN); %把每一个树枝的编号转化为一个NN位的二进制数 for NNL=1:NN if dataway(NNL)==0 [x2,y2,r2,theata2]=antmoveleft(x1,y1,r1,theata1,w,dtheata);%若路径数组上对应的数字为0,则向左生长 x1=x2; y1=y2; r1=r2; theata1=theata2; hold on %pause(eps) else [x2,y2,r2,theata2]=antmoveright(x1,y1,r1,theata1,w,dtheata);%否则,数字为1,向右生长 x1=x2; y1=y2; r1=r2; theata1=theata2; hold on %pause(eps) end end end hold off %--------------------------------------------------------------------------

1.应用MATLAB进行地理三维地貌可视化和地形分析

第17卷 增刊2 广西工学院学报 V ol117 Sup2 2006年12月 JOU RNAL O F GUAN GX IUN I V ER S IT Y O F T ECHNOLO GY D ec12006 文章编号 100426410(2006)S220017203 应用M AT LAB进行地理三维地貌可视化和地形分析 唐咸远 (广西工学院土建系,广西柳州 545006) 摘 要:从M A TLAB软件强大的功能入手,讨论了M A TLAB中进行地理三维地貌可视化和地形分析的方法,并展望其在工程中良好的应用前景。 关 键 词:M A TLAB;三维地貌可视化;地形分析 0 引言 M A TLAB的含义是矩阵实验室(M A TR I X LABORA TOR Y)[1],自其问世以来,就以数值计算称雄。其计算的基本单位是复数数组(或称阵列),使得该软件具有高度“向量化”。经过十几年的完善和扩充, M A TLAB现已发展成为线性代数课程的标准工具。由于它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得简捷、高效、方便,这是其它高级语言所不能比拟的。 在地理信息系统(G IS)中,地形的三维可视化通常是利用数字高程模型(D E M)来完成的,而D E M最常用表示方法为规则格网,它是将区域空间切分为规则的格网单元,每个格网单元对应一个数值,即高程值。数学上可以表示为一个矩阵,在计算机实现中则是一个二维数组。可见利用M A TLAB处理D E M数据,完成地形的三维可视化分析是切实可行的。 1 M AT LAB软件及其功能 M A TLAB产品家族是美国M ath W o rk s公司开发的用于概念设计、算法开发、建模仿真、实时实现的理想的集成环境,已广泛地应用在航空航天,金融财务,机械化工,电信,教育等各个行业。该软件的主要特点包括: 1)有高性能数值计算的高级算法,特别适合矩阵代数领域;2)有大量事先定义的数学函数,并且有很强的用户自定义函数的能力;3)有强大的绘图功能以及具有教育、科学和艺术学的图解和可视化的二维、三维图;4)基于H TM L完整的帮助功能;5)适合个人应用的强有力的面向矩阵(向量)的高级程序设计语言;6)与其它语言编写的程序结合和输入输出格式化数据的能力;7)有在多个应用领域解决难题的工具箱。 2 利用M AT LAB进行三维可视化和分析 211 D E M数据的输入与存储形式 数据的输入可以采用两种方式:文件输入或屏幕数字化。屏幕数字化即用鼠标在打开的地图影像上单击离散点[2],获得坐标并输入高程值。 收稿日期:2006210212 作者简介:唐咸远(19732),男,广西灌阳人,广西工学院土木建筑工程系工程师。

分形插值算法和MATLAB实验

一,分形插值算法 ——分形图的递归算法1,分形的定义 分形(Fractal)一词,是法国人B.B.Mandelbrot 创造出来的,其原意包含了不规则、支离破碎等意思。Mandelbrot 基于对不规则的几何对象长期地、系统地研究,于1973 年提出了分维数和分形几何的设想。分形几何是一门以非规则几何形状为研究对象的几何学,用以描述自然界中普遍存在着的不规则对象。分形几何有其显明的特征,一是自相似性;分形作为一个数学集合, 其内部具有精细结构, 即在所有比例尺度上其组成部分应包含整体, 而且彼此是相似的。其定义有如下两种描述: 定义 1如果一个集合在欧式空间中的 Hausdorff 维数H D 恒大于其拓扑维数 r D ,则称该集合为分形集,简称分形。 定义 2组成部分以某种方式与整体相似的形体叫分形。 对于定义 1 的理解需要一定的数学基础,不仅要知道什么是Hausdorff 维数,而且要知道什么是拓扑维数,看起来很抽象,也不容易推广。定义 2 比较笼统的说明了自然界中的物质只要局部和局部或者局部和整体之间存在自相似性,那么这个物质就是分形。正是这一比较“模糊”的概念被人们普遍接受,同时也促进了分形的发展。 根据自相似性的程度,分形可分为有规分形和无规分形。有规分形是指具有严格的自相似的分形,比如,三分康托集,Koch 曲线。无规分形是指具有统计意义上的自相似性的分形,比如,曲折的海岸线,漂浮的云等。本文主要研究有规分形。

2. 分形图的递归算法 2.1 三分康托集 1883 年,德国数学家康托(G.Cantor)提出了如今广为人知的三分康托集。三分康托集是很容易构造的,然而,它却显示出许多最典型的分形特征。它是从单位区间出发,再由这个区间不断地去掉部分子区间的过程构造出来的(如图2.1)。 其详细构造过程是:第一步,把闭区间[0,1]平均分为三段,去掉中间的 1/3 部分段,则只剩下两个闭区间[0,1/3]和[2/3,1]。第二步,再将剩下的两个闭区间各自平均分为三段,同样去掉中间的区间段,这时剩下四段闭区间:[0,1/9],[2/9,1/3],[2/3,7/9]和[8/9,1]。第三步,重复删除每个小区间中间的 1/3 段。如此不断的分割下去,最后剩下的各个小区间段就构成了三分康托集。三分康托集的 Hausdorff 维数是0.6309。 图2.2 三分康托集的构造过程

航天器在轨运行的三维可视化仿真教材

本科生科研训练计划项目(SRTP)项目成果项目名称:航天器在轨运行的三维可视化仿真 项目负责人:林凡庆 项目合作者:曲大铭侯天翔杨唤晨孙洁 所在学院:空间科学与物理学院 专业年级:空间科学与技术2013级 山东大学(威海) 大学生科技创新中心

航天器在轨运行的三维可视化仿真 空间科学与物理学院空间科学与技术专业林凡庆 指导教师许国昌杜玉军摘要:航天器在轨运行的三维可视化程序设计是建立卫星仿真系统最基础的工作。航天器在轨运行的三维可视化仿真有着重要的意义:它既可以使用户对卫星在轨运行情况形成生动直观、全面具体的视觉印象,又可以大大简化卫星轨道的设计过程。本文首先构建了航天器在轨运行的三维可视化仿真程序的基本框架,然后对涉及到的关键理论与知识,如时间、坐标转换、卫星轨道理论、OpenGL图形开发库等也做了阐述,最后介绍了我们的主要工作和科研成果。我们的主要成果是实现了卫星在轨运行的三维可视化仿真并对原有程序进行了改进。 关键词:航天器在轨运行三维可视化程序设计 OpenGL Abstract:The programmer of three-dimensional visualization on satellite in-orbiting is the utmost foundational work in establishing satellite emulation system. The three-dimensional visual simulation on satellite is of great significance: it assures that users may receive a vivid and direct-viewing and it also can greatly simplify the design process of satellite orbit.The basic frame of three-dimensional visual simulation program on satellite in-orbiting has been set up firstly. then, related essential theory and knowledge such as time system, coordinate conversation, satellite orbit, OpenGL and etc also has been introduced. Lastly, our main work and research results has been introduced. Our main achievement is that we realized the program of three-dimensional visualization on satellite in-orbiting and we improve the original program. Key words:satellite In-orbit movement 3D visualization programming OpenGL 一、引言 当今社会是一个信息的社会,谁掌握了信息的主动权,就意味着掌握了整个世界。而人造卫星是当今人们准确、实时、全面的获取信息的重要手段,卫星的各项应用已经成为信息社会发展的强大动力。而人造卫星的应用是一项高投入、高风险、长周期的活动,仿真技术由于具有可控制、可重复、经济、安全、高效的特点,在人造卫星应用领域以至整个航天领域都起到了重大的作用。目前国际上较常用的卫星仿真软件主要有美国的Winorbit、美国Cybercom System公司研制的CPLAN和AGI公司的STK。其中以STK功能最为强大,界面最为友好,在卫星仿真领域占有绝对领先地位。STK功能虽然强大,但其价格昂贵,源码也不公开,无法自主扩展,并且该软件被限制了对中国的销售,所以中国不得不独立开发适于自己的卫星仿真系统[1]。而且国内目前卫星系统的仿真软件很少,主要有一些大学开发的小型的卫星系统仿真软件,还有北京航天慧海系统仿真科技有限公司开发的Vpp-STK航天卫星仿真开发平台V4.0。总体来说,国内目前在这个方面的技术还相当不成熟,因此研究和自主开发卫星仿真系统意义重大。 仿真可视化,就是把仿真中的数字信息变为直观的,以图形图像形式表示的,随时间和空间变化的仿真过程呈现在研究人员面前,使研究人员能够知道系统中变量之间、变量与参数之间、变量与外部环境之间的关系,直接获得系统的静态和动态特征[2]。 本文首先构建了航天器在轨运行的三维可视化仿真程序的基本框架,然后对涉及到的关键理论与知识,如时间、坐标转换、卫星轨道理论、OpenGL图形开发库等也做了阐述,最后介绍了我们的主要工作和科研成果。

基于LOD的三维地形可视化

基于LOD的三维地形可视化 摘要本文根据实测地形高程差数据,运用可视化技术中的LOD建模方法绘制具有真实感的三维地形。关键词科学计算可 视化;LOD建模;四叉树 1 引言虚拟现实技术是二十世纪末才兴起 的一门崭新的综合性信息技术,它融合了数字图像处理、计算机图形学、多媒体技术、传感器技术等多个信息技术分支,并且可以逼真地模拟人在自然环境中视觉、听觉、触觉及运动等行为的人机交互技术,其应用领域和交叉领域非常广泛。然而考虑到虚拟现实和交互式可视化等交互式图形应用系统 要求图形生成速度达到实时,而计算机所提供的计算能力往往不能满足复杂三维场景 的实时绘制要求,因而研究人员从软件着手提出多种图形生成加速方法,而 LOD模型就是在虚拟现实技术中经常被采用的一种加 快图形生成速度的主要方法。本文就是利用LOD模型在计算机上精确的重构了地理信息,

实现具有真实感的三维地形。 2 LOD技术概况在运用虚拟现实技术对大规模场景进行绘制时,常见的做法是用大量的三角面片来描述场景中的几何模型,随着描述场景的三角形面片的数目的增多,所绘制的图像质量会越来越高,但是绘制速度也会变得越来越慢,有时甚至会因为绘制的场景过于复杂而出现场景漫游不流畅,画面跳变等现象,这些现象都会严重影响实时绘制的效果。为了解决这一问题,从20世纪90年代初开始,研究人员就在这方面展开了大量工作,而多层次细节模型技术就是在这样的情况下提出并发展起来的。 LOD的基本原理 LOD技术作为虚拟现实技术中的图形生成加速方法,其基本原理是:在不影响画面视觉效果的条件下,通过逐次简化景物的表面细节来减少场景的几何复 杂性利用四叉树这种数据结构方式对原来 的网格数据进行重新划分和组合。网格地形的四叉树分层 在利用四叉树方法进行LOD建模的过程中,其关键就在于怎样对原有的网格数据进

三维可视化防真系统

1.1三维可视化仿真系统 当前地理信息系统技术仍以二维信息为主,比较而言,三维地理信息系统技术可以使信息的表现更真实、丰富、具体,而下一代GIS技术的一个主要特点也是支持“数字地球”或“数字城市”概念的实现,从二维向三维发展,从静态数据处理向动态发展,具有时序数据处理能力,因此三维地理信息系统技术与无线通信技术的结合将是未来地理信息技术发展的必然趋势,也将成为未来数字城市建设技术的必然选择。 三维GIS是模拟、表示、管理、分析客观世界中的三维空间实体及其相关信息的计算机系统,能为管理和决策提供更加直接和真实的目标和研究对象。三维GIS是二维GIS技术的延伸和扩展。 基于三维地理信息系统技术,能够实现城市地质灾害相关数据的的数字化、网络化及动态可视化,同时也可作为一个供地质灾害管理预测分析辅助的强大应用平台。 1.1.1电子沙盘框架建设 电子沙盘框架建设基于国际先进的SkyLine三维展示平台,利用DEM与DOM建立大场景的三维模型,实现整个地图大场景的描述,同时集成地质灾害相关信息,实现大场景的立体信息集成和展示,为使用者提供更为丰富的综合信息。 Skyline是一个领先的三维地理信息系统平台,用一个强大的界面,可以把不同的地理数据联系起来,并且可以把它们快速的分发到各个用户。沙盘框架逻辑如下:

1.1.1.1 架构模式 三维可视化仿真系统采用当今社会最流行也最实用的B\S架构,此架构降低了最终用户的维护和升级成本。 服务器端的配置:TerraExplorer Pro + TerraGate + internet License。 客户端的配置:TerraExplorer Viewer + IE6.0或以上。 开发环境:开发工具(Microsoft Visual Studio .NET 2003/2005 C#) + 客户端脚本语言(javascript/jscript)+ 编辑工具(UltraEdit/Editplus)。 Skyline软件体系结构如下图所示: 图错误!文档中没有指定样式的文字。-1 Skyline软件体系结构图总的架构来分,Skyline分为三个模块。 数据合成模块TerraBuilder家族,它分为三个级别:单机版(TerraBuilder)、企业版(TerraBuilder Enterprise)、直连(DirectConnect)。他们三个之间的区别

《地形模型的三维可视化》程序设计

《地形模型的三维可视化》程序设计 一、题目 请用OpenGL图形库,编制程序实现地形模型的三维可视化,并进行地形模型的纹理设置,并可以通过键盘进行交互操作(移动和旋转)。 (注:给定的地形模型数据是已经建好的不规则三角网。) 二、提交资料 1.程序的详细步骤和所有相关数据; 步骤:①录入三角形数据 ②获得地形的范围 ③绘制三角网 ④设置纹理坐标 ⑤计算参考点的位置 ⑥移动 相关数据文件:数据文件DHS.dat 三角网文件DHS.tri 图片文件TERRAIN.BMP 2. 程序清单(包括程序说明); #include "stdafx.h" #include #include #include #include #include #include void CALLBACK elbowAdd (void); void CALLBACK elbowSubtract (void); void CALLBACK shoulderAdd (void); void CALLBACK shoulderSubtract (void); //点结构定义 typedef struct { long id; double x; double y;

}POINTXYZ; //三角形结构定义 typedef struct { long id; //三角形号 long p[3]; //三角形三个顶点的序号 long xl[3]; //拓扑关系 }TRIANGLE; //顶点变量 POINTXYZ *pPt; //三角形变量 TRIANGLE *pTri; //顶点总数 int iTotalNum; //三角形总数 int iTotalTriNum; //外围结构 typedef struct vrtagBOX { double minx; double miny; double minz; double maxx; double maxy; double maxz; }vrBOX; //外围结构 vrBOX _box; unsigned int m_nID; //存储纹理的索引号 int m_nWidth; //纹理图片的宽度 int m_nHeight; //纹理图片的高度 float (*_ptexture)[2]; //存储三角网的纹理数据 //视点参考点的偏移量 double lookx, looky, lookz; //移动的速度 float _speed; //垂直方向视点和所要看实体的间的距离

三维地形的模拟生成方法研究

三维地形的模拟生成方法研究 朱梅 摘要:地形是自然界最复杂的景物之一,三维地形的模拟是可视化系统中最基本也是最重要的技术之一。分形地形的生成是三维自然景物的模拟的重要组成之一,本文从三维地形的生成方法入手,重点介绍了基于分形技术的三维地形的模拟生成相关技术.以分形技术中的一维中点位移法、二维中点位移法为基础,引出了Diamond-Square算法,并介绍了使用该算法生成三维地形的过程。 关键词:三维地形模拟可视化真实地形分形 随着仿真技术和虚拟现实应用需求的不断提高,具有真实自然视觉效果的虚拟环境建模技术正发挥着越来越重要的作用,而自然景物如地形、植物、云烟、水火、海浪等的建模则是其中不可或缺的一个方面.其中,尤以地形的建模在实践中有很强的应用需求,如军事演习及训练、军事仿真视景系统开发、基于遥感和卫星图像的大范围虚拟环境自动建模等。三维地形的生成技术在飞行模拟或背景纹理图制作及三维动画制作和三维军事地图等多种技术中得到广泛应用。 地形是自然界最复杂的景物之一,三维地形的模拟是可视化系统中最基本也是最重要的技术之一。 地面的模拟可以分为两类:真实地形与模拟地形。真实地形是现实世界中真实地形的再现,具有非常高的真实度,必须采用真实世界中的具体数据来构造。模拟地形一般采用随机生成或分形法生成,采用这种方法生成的地形也很美观,生成的速度也很快。 三维地形的生成方法可分为三种:基于真实地形数据的地形生成和实时显示,基于真实地形数据建模构造场景的常用方法是采用数字地面模型和数字高程模型。数据获取有难度,而且数据量大,绘制速度对环境设备要求较高;基于随机方法数据拟合的地形仿真,最简单且常用的一种地形建模方法,是由稀疏分布点的高程值构成一些简单的三角形平面,形成地形框架。这种方法渲染速度很快,但地形的真实感会打很大的折扣;基于分形技术的地形生成仿真,其中地形完全由分行算法生成或半自动生成。 分形几何学是一门以不规则几何形态为研究对象的几何学。它能够逼真地显示自然景物,对自然现象的真实绘制和建模起着重要的作用。在自然物体不规则形态背后都有一定规则性,比如海岸线、山脉、云、河流等都可以用分形方法建模,相比其他景物,地貌形态是研究的重点内容。 基于分形技术的地形生成仿真主要是利用了分形的自相似原理,用递归算法使复杂的大块地形可用简单的小块特征地形经过一定的规则来生成。分形地形建模大致可归纳为泊松阶跃法、傅立叶滤波法、中点位移法、逐次随机增加法和带限噪声累积法等5类。用分形法进行自然景物建模能有效的表达自然界中许多非线性现象,也是迄今为止能够描述真实地形的最好的随机过程。一般用于非真实感地形的模拟。 二维空间中的分形插值算法是通过在平面上划分正方形网格,随机给四个角点的颜色;然后根据4个角点的颜色的平均值,产生中点M的颜色;根据A、B、M点和网格外一虚拟点取平均,得到边中点E的颜色,根据B、C、M点和网格外一虚拟点取平均,得到边中点F的颜色,同理取得G、H的颜色;根据小正方形BEMF四角点颜色的平均,取得小正方形中点以及边中点的颜色;以此类推;再通过递归,使正方形网格不断细化,直到达到预期的递归深度。

几个分形matlab实现

几个分形的matlab实现 摘要:给出几个分形的实例,并用matlab编程实现方便更好的理解分形,欣赏其带来的数学美感 关键字:Koch曲线实验图像 一、问题描述: 从一条直线段开始,将线段中间的三分之一部分用一个等边三角形的两边代替,形成山丘形图形如下 图1 在新的图形中,又将图中每一直线段中间的三分之一部分都用一个等边三角形的两条边代替,再次形成新的图形如此迭代,形成Koch分形曲线。 二、算法分析: 考虑由直线段(2个点)产生第一个图形(5个点)的过程。图1中,设 1 P和 5 P分别为 原始直线段的两个端点,现需要在直线段的中间依次插入三个点 2 P, 3 P, 4 P。显然 2 P位 于线段三分之一处, 4 P位于线段三分之二处, 3 P点的位置可看成是由 4 P点以 2 P点为轴心,逆时针旋转600而得。旋转由正交矩阵 ?? ? ? ? ? ? ? - = ) 3 cos( ) 3 sin( ) 3 sin( ) 3 cos( π π π π A 实现。 算法根据初始数据( 1 P和 5 P点的坐标),产生图1中5个结点的坐标。结点的坐标数组形成一个2 5?矩阵,矩阵的第一行为 1 P的坐标,第二行为 2 P的坐标……,第五行为 5 P的坐标。矩阵的第一列元素分别为5个结点的x坐标,第二列元素分别为5个结点的y坐标。 进一步考虑Koch曲线形成过程中结点数目的变化规律。设第k次迭代产生的结点数为k n,第1 + k次迭代产生的结点数为 1+ k n,则 k n和 1+ k n中间的递推关系为3 4 1 - = +k k n n。

三、实验程序及注释: p=[0 0;10 0]; %P为初始两个点的坐标,第一列为x坐标,第二列为y坐标 n=2; %n为结点数 A=[cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3)]; %旋转矩阵 for k=1:4 d=diff(p)/3; %diff计算相邻两个点的坐标之差,得到相邻两点确定的向量 %则d就计算出每个向量长度的三分之一,与题中将线段三等分对应 m=4*n-3; %迭代公式 q=p(1:n-1,:); %以原点为起点,前n-1个点的坐标为终点形成向量 p(5:4:m,:)=p(2:n,:); %迭代后处于4k+1位置上的点的坐标为迭代前的相应坐标 p(2:4:m,:)=q+d; %用向量方法计算迭代后处于4k+2位置上的点的坐标 p(3:4:m,:)=q+d+d*A'; %用向量方法计算迭代后处于4k+3位置上的点的坐标 p(4:4:m,:)=q+2*d; %用向量方法计算迭代后处于4k位置上的点的坐标 n=m; %迭代后新的结点数目 end plot(p(:,1),p(:,2)) %绘出每相邻两个点的连线 axis([0 10 0 10]) 四、实验数据记录: 由第三部分的程序,可得到如下的Koch分形曲线: 图2 五、注记: 1.参照实验方法,可绘制如下生成元的Koch 分形曲线:

三维可视化智能物联网管理平台设计

三维可视化智能物联网管理平台 技术方案 二〇一二年八月

目录

一、概述 项目背景 物联网是指通过信息传感设备,按照约定的协议,把需要联网的物品与网络连接起来,进行信息交换和通讯,以实现智能化识别、定位、跟踪监控和管理的一种网络,它是在网络基础上的延伸和扩展应用。物联网是被称为继计算机、互联网之后世界信息产业发展的第三次浪潮。有业内专家认为物联网一方面可以提高经济效益,大大节约成本,另一方面可以为全球经济的复苏提供技术动力。 目前,美国、加拿大、欧盟、日本、韩国等都在投入巨资深入研究探索物联网,并启动了以物联网为基础的“智慧地球”、“U-Japan”、“U-Korea”、“物联网行动计划”等国家性区域战略规划。 我国把发展物联网已经提到国家的战略高度,它不但是信息技术发展到一定阶段的升级需要,同时也是实现国家产业结构调整,推动产业转型升级的一次重要契机。2010年9月,《国务院关于加快培育和发展战略性新兴产业的决定》发布,新一代信息技术、节能环保、新能源等七个产业被列为中国的战略性新兴产业,将在今后加快推进,其中物联网技术作为新一代信息技术的重要组成部分,更是在近一年里受到政府、企业和科研机构的大力支持。 当前,世界各国的物联网基本都处于技术研究与试验阶段,物联网相关技术研究还处于起步发展阶段,在物联网基础研究和技术开发等方面还面临许多挑战。物联网涉及到的关键技术领域很多,包括RFID识别技术、泛在传感技术与纳米嵌入技术、IPV6地址技术以及等。从软件的角度来看,物联网软件技术研究方面也是处于起步阶段,尤其是基础软件的研究均处于探索阶段。 面对物联网所带来的大数据量、数据时效性高、安全与隐私性要求高等挑战,人们也在不断地探索亲的解决办法。在物联网系统中,由于传感器节点及采样数据的异构性,基础软件显得尤为重要。物联网基础软件不仅屏蔽了各类传感器硬件及数据的差异,实现了物联网节点及数据的统一处理,而且实现了海量物联网节点之间的协同工作,从而大大简化了物联网应用程序的开发。我们以动态位置感知类应用为例,相关的传感器可以包括GPS传感器、RFID传感器、手机定位传感器等,这些不同类型的传感器通过基础应用接入程序,可以被统一的后台物联网数据库系统管理。 在物联网系统中除了传感器数据异构性的特点,还有另一个重要特点是物联网系统

几个分形的matlab实现资料

几个分形的matlab 实现 摘要:给出几个分形的实例,并用matlab 编程实现方便更好的理解分形,欣赏其带来的 数学美感 关键字:Koch 曲线 实验 图像 一、问题描述: 从一条直线段开始,将线段中间的三分之一部分用一个等边三角形的两边代替,形成山丘形图形如下 图1 在新的图形中,又将图中每一直线段中间的三分之一部分都用一个等边三角形的两条边代替,再次形成新的图形如此迭代,形成Koch 分形曲线。 二、算法分析: 考虑由直线段(2个点)产生第一个图形(5个点)的过程。图1中,设1P 和5P 分别为原始直线段的两个端点,现需要在直线段的中间依次插入三个点2P ,3P ,4P 。显然2P 位于线段三分之一处,4P 位于线段三分之二处,3P 点的位置可看成是由4P 点以2P 点为轴心,逆时针旋转600 而得。旋转由正交矩阵 ?????? ? ?-=)3cos()3sin()3sin()3cos(ππππA 实现。 算法根据初始数据(1P 和5P 点的坐标),产生图1中5个结点的坐标。结点的坐标数组形成一个25?矩阵,矩阵的第一行为1P 的坐标,第二行为2P 的坐标……,第五行为5P 的坐标。矩阵的第一列元素分别为5个结点的x 坐标,第二列元素分别为5个结点的y 坐标。 进一步考虑Koch 曲线形成过程中结点数目的变化规律。设第k 次迭代产生的结点数为k n ,第1+k 次迭代产生的结点数为1+k n ,则k n 和1+k n 中间的递推关系为341-=+k k n n 。 三、实验程序及注释:

p=[0 0;10 0]; %P为初始两个点的坐标,第一列为x坐标,第二列为y坐标 n=2; %n为结点数 A=[cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3)]; %旋转矩阵 for k=1:4 d=diff(p)/3; %diff计算相邻两个点的坐标之差,得到相邻两点确定的向量 %则d就计算出每个向量长度的三分之一,与题中将线段三等分对应 m=4*n-3; %迭代公式 q=p(1:n-1,:); %以原点为起点,前n-1个点的坐标为终点形成向量 p(5:4:m,:)=p(2:n,:); %迭代后处于4k+1位置上的点的坐标为迭代前的相应坐标 p(2:4:m,:)=q+d; %用向量方法计算迭代后处于4k+2位置上的点的坐标 p(3:4:m,:)=q+d+d*A'; %用向量方法计算迭代后处于4k+3位置上的点的坐标 p(4:4:m,:)=q+2*d; %用向量方法计算迭代后处于4k位置上的点的坐标 n=m; %迭代后新的结点数目 end plot(p(:,1),p(:,2)) %绘出每相邻两个点的连线 axis([0 10 0 10]) 四、实验数据记录: 由第三部分的程序,可得到如下的Koch分形曲线: 图2 五、注记: 1.参照实验方法,可绘制如下生成元的Koch 分形曲线: 图3

相关文档