动力系统一些分形图像和matlab程序

动力系统一些分形图像和matlab程序
动力系统一些分形图像和matlab程序

研究生课程考核试卷

(适用于课程论文、提交报告)

科目:动力系统教师:舒永录

姓名:郑申海学号:20110602024 专业:计算数学类别:学术

上课时间:2012 年 3 月至2012 年 6 月

考生成绩:

卷面成绩平时成绩课程综合成绩

阅卷评语:

阅卷教师(签名)

重庆大学研究生院制

第一题Logistic 映射(15分)

Figure1.6(P19)

绘图程序:

ga=inline('a*x*(1-x)');

plot_N=100;

iterate_max=200;

result=[];

A=1:0.001:4;

for a=A;

x=0.5;

for iterate=2:iterate_max

x(iterate)=ga(a,x(iterate-1));

end

result=[result;x((iterate_max-plot_N+1):iterate_max)]; end

plot(A,result,'-')

Figure1.7(P20)

注:这两个图是Figure1.6的局部放大图

第二题Henon映射初始条件(10分)

Figure2.3(P51)

(a)(b) (a)、(b)对应的初始值分别是a=1.28、1.4

绘图程序:

a=1.4;%a=1.28

b=-0.3;

N=200;

Iter=3;

M=linspace(-2.5,2.5,500);

M_f=[];

H=linspace(-2.5,2.5,500);

H_f=[];

[X Y ]=meshgrid(M);

plot(X,Y,'.k')

hold on

[Ii Jj]=size(X);

R=zeros(Ii,Jj);

for i=1:Ii

for j=1:Jj

xm=X(i,j);

ym=Y(i,j);

for n=1:N

x=a-xm.*xm+b*ym;

y=xm;

xm=x;

ym=y;

end

if xm

R(i,j)=1;

M_f=[M_f,M(j)];

H_f=[H_f,H(i)];

end

end

end

m=size(M_f);

h=size(H_f);

plot(M_f,H_f,'.w')

第三题Henon映射分叉图(15分)Figure2.16(P74)

绘图程序:

b=0.4;

N=200;

plot_N=150;

result=[];

an=ones(1,N);

xn=zeros(1,N);

yn=zeros(1,N);

hold on;box on;

x=0;

y=0;

A=0:0.0001:1.25;

for a=A

for k=1:N;

xm=x;

ym=y;

x=ym+1-a*xm.*xm;

y=b*xm;

end

xn(1)=x;

for n=2:N;

xm=x;

ym=y;

x=ym+1-a*xm.*xm;

y=b*xm;

xn(n)=x;

yn(n)=y;

end

result=[result;xn((N-plot_N+1):N)];

end

plot(A,result,'.','markersize',1)

xlim([0,a]);

第四题Henon映射吸引子(15分)

Figure2.17(P75)

(a) (b)

(c) (d)

(e) (f) 绘图程序:

b=0.4;

N=2000;

plot_N=1500;

resultx=[];

resulty=[];

an=ones(1,N);

xn=zeros(1,N);

yn=zeros(1,N);

hold on;box on;

x=0;

y=0;

A=0.9;%分别调节得到图a、b、c、d、e、f

for a=A

for k=1:N;

xm=x;

ym=y;

x=ym+1-a*xm.*xm;

y=b*xm;

end

xn(1)=x;

for n=2:N;

xm=x;

ym=y;

x=ym+1-a*xm.*xm;

y=b*xm;

xn(n)=x;

yn(n)=y;

end

resultx=[resultx;xn((N-plot_N+1):N)]

resulty=[resulty;yn((N-plot_N+1):N)]

end

plot(resultx,resulty,'+','markersize',8)%a、b、d用

%plot(resultx,resulty,'.','markersize',3) %c、e、f用此

axis([-1.5 2 -0.8 0.8])

第五题计算机实验(10分)

COMPUTER EXPERIMENT 2.2 P(76)

(a) (b)

(c)(d)

如图是b=-0.3的henon映射分形图:(a)、(b)是初始值为(0,0)时对应x、y坐标的分析图,(c)、(d)是初始值为(0.5,0.5)时对应x、y坐标的分析图。从图中可以看出,henon分形图与初始值有关,x、y坐标对应的分形图周期相同,但是轨迹不同。

绘图程序:

b=-0.3;

N=200;

plot_N=100;

resultx=[];

resulty=[];

an=ones(1,N);

xn=zeros(1,N);

yn=zeros(1,N);

hold on;box on;

A=0:0.0001:2.2;

for a=A

x=0;y=0;%对比试验用x=0.5,y=0.5

for n=2:N;

xm=x;

ym=y;

x=ym+1-a*xm.*xm;

y=b*xm;

xn(n)=x;

yn(n)=y;

end

resultx=[resultx;xn((N-plot_N+1):N)];

resulty=[resulty;yn((N-plot_N+1):N)];

end

figure(1)

plot(A,resultx,'.','markersize',1)

axis equal;

figure(2)

plot(A,resulty,'.','markersize',1)

axis equal;

第六题Mandelbrot 集合(20分)

Figure4.10(P168)

绘图程序:

clc, clear

ITER=50; N=200; hold on

for a=-1.5:0.005:0.6

for b=-1.0:0.005:1.0

x(1)=0; y(1)=0;

for n=1:N

x(n+1)=x(n)^2-y(n)^2+a; y(n+1)=2*x(n)*y(n)+b;

end

if x(end)^2+y(end)^2

plot(a,b,'.')

end

end

end

第七题Julia 集合(20分)

Figure4.11(P169)

(a) (b)

(b)(d) 绘图程序:

a=0.29;

b=0.54;%调节参数a、b得到相应的图

c=a+b*i;

N=100;

ITER=100;

[X,Y]=meshgrid(linspace(-1.5,1.5,700));

%xx=linspace(-0.19,0.01,500);

%yy=linspace(0.89,1.09,500);

%[X,Y]=meshgrid(xx,yy);%此三行用于画图b

z=X+Y*i;

[C,R]=size(z);

hold on

tic

for i=1:C

for j=1:R

x(1)=X(i,j); y(1)=Y(i,j);

for n=1:N

x(n+1)=x(n)^2-y(n)^2+a; y(n+1)=2*x(n)*y(n)+b;

end

if x(end)^2+y(end)^2

plot(X(i,j),Y(i,j),'.')

end

end

end

axis([-1.5 1.5 -1.5 1.5])

t=toc

第八题计算机实验(20分)

COMPUTER EXPERIMENT 4.3 (P 170)

(1)

(a)(b)

图为c=0.29+0.54i的Julia集合,其中蓝色的点是收敛的。图(a)(b)分别对应N=100、700的情况。蓝色和黑色的交界就是Julia集合。

绘图程序:

a=0.29;

b=0.54;

c=a+b*i;

N=100;

ITER=50;

[X,Y]=meshgrid(linspace(-1.3,1.3,100));

%[X,Y]=meshgrid(linspace(-1.3,1.3,700));%700的时候要运行490s

%画网格

hold on

plot(Y(:,1),X,'g');

plot(X,Y(:,1)','g');

z=X+Y*i;

[C,R]=size(z);

ATTxx=[];

ATTyy=[];

tic

flg=1;

for i=2:C

for j=2:R

ATTX=zeros(1,10);

ATTY=zeros(1,10);

x(1)=(X(i,j)+X(i,j-1))/2; y(1)=(Y(i,j)+Y(i-1,j))/2;

for n=1:N

x(n+1)=x(n)^2-y(n)^2+a; y(n+1)=2*x(n)*y(n)+b;

ATTX=[ATTX(2:end),x(n+1)];

ATTY=[ATTY(2:end),y(n+1)];

end

if x(end)^2+y(end)^2

plot(x(1),y(1),'.b')

if flg==1

ATTxx=[ATTxx;ATTX];

ATTyy=[ATTyy;ATTY];

flg=0;

end

else

plot(x(1),y(1),'.k')

end

end

end

axis([-1.3 1.3 -1.3 1.3])

t=toc

(2)六周期点研究

通过查找相关资料,找到Mandelbrot 集合与Julia 集合对应的周期关系:(我通过循环查找六周期点,好几天都没找到结果,最后放弃了)

然后结合上图与第六题结论,取c=0.4-0.215i, 应用上面的程序得到下图:

第九题Sierpinski三角形(20分) EXAMPLE 4.7(P159)

绘图程序:

n=10000;

w1=1/3;

w2=1/3;

w3=1/3;

M1=[0.5 0 0 0 0.5 0];

M2=[0.5 0 0.5 0 0.5 0];

M3=[0.5 0 0.25 0 0.5 0.5];

x=0;y=0;

r=rand(1,n);

B=zeros(2,n);

k=1;

% 当0

% 当1/3=

% 当2/3=

for i=1:n

if r(i)

a=M1(1);b=M1(2);e=M1(3);c=M1(4);d=M1(5);f=M1(6);

else if r(i)

a=M2(1);b=M2(2);e=M2(3);c=M2(4);d=M2(5);f=M2(6);

else if r(i)

a=M3(1);b=M3(2);e=M3(3);c=M3(4);d=M3(5);f=M3(6);

end

end

end

x=a*x+b*y+e;

y=c*x+d*y+f;

B(1,k)=x;

B(2,k)=y;

k=k+1;

end

plot(B(1,:),B(2,:),'.','markersize',0.1)

matlab 图像的几何变换与彩色处理

实验四、图像的几何变换与彩色处理 一、实验目的 1理解和掌握图像的平移、垂直镜像变换、水平镜像变换、缩放和旋转的原理和应用; 2熟悉图像几何变换的MATLAB操作和基本功能 3 掌握彩色图像处理的基本技术 二、实验步骤 1 启动MATLAB程序,读入图像并对图像文件分别进行平移、垂直镜像变换、水平镜像变换、缩放和旋转操作 %%%%%%平移 >> flowerImg=imread('flower.jpg'); >> se=translate(strel(1),[100 100]); >> img2=imdilate(flowerImg,se); >> subplot(1,2,1); >> imshow(flowerImg); >> subplot(1,2,2); >> imshow(img2);

I1=imread('flower.jpg'); I1=double(I1); H=size(I1); I2(1:H(1),1:H(2),1:H(3))=I1(H(1):-1:1,1:H(2),1:H(3)); I3(1:H(1),1:H(2),1:H(3))=I1(1:H(1),H(2):-1:1,1:H(3)); Subplot(2,2,1); Imshow(uint8(I1)); Title('原图'); Subplot(2,2,2); Imshow(uint8(I3)); Title('水平镜像'); Subplot(2,2,3); Imshow(uint8(I2)); Title('垂直镜像'); img1=imread('flower.jpg'); figure,imshow(img1); %%%%%%缩放 img2=imresize(img1,0.25); figure,imshow(img2); imwrite(img2,'a2.jpg');

几个分形的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分形曲线:

laplace(拉普拉斯)锐化matlab程序

laplace(拉普拉斯)锐化matlab程序 部门: xxx 时间: xxx 整理范文,仅供参考,可下载自行编辑

第二次作业 201821050326 程小龙 习题: 4.8 答:参考教材4.4-1式,高通滤波器可以看成是1减去相应低通滤波器,从低通滤波器的性质可以看出,在空间域上低通滤波器在原点是存在一个尖峰,且大于0,1是看成直流分量,因此,傅里叶逆变换之后的高通滤波器在空间域上原点就会出现负的尖峰。 b5E2RGbCAP 4.15 答:

方便起见,我们考虑一个变量。当u从0增加到M,H(u,v>从最大值2j<复数)然后减少,当u=M/2时<转移方程的中心)最小;当u 继续增加,H(u,v>继续增加,且当u=M时,又取得最大值。同样,考虑两个变量也得到类似的结果。这种特性就是我们的高通滤波器,于是我们就可以得到我们推导出的滤波器H点,将会产生只有平均值为0的图像,所以,存在一个K值,使得经过K次高通滤波之后就会产生一副像素不变的图像。DXDiTa9E3d

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为迭代次数

主成分分析报告matlab程序

Matlab编程实现主成分分析 .程序结构及函数作用 在软件Matlab中实现主成分分析可以采取两种方式实现:一是通过编程来实现;二是直接调用Matlab种自带程序实现。下面主要主要介绍利用Matlab的矩阵计算功能编程实现主成分分析。 1程序结构 2函数作用 Cwstd.m——用总和标准化法标准化矩阵 Cwfac.m——计算相关系数矩阵;计算特征值和特征向量;对主成分进行排序;计算各特征值贡献率;挑选主成分(累计贡献率大于85%),输出主成分个数;计算主成分载荷 Cwscore.m——计算各主成分得分、综合得分并排序 Cwprint.m——读入数据文件;调用以上三个函数并输出结果

3.源程序 3.1 cwstd.m总和标准化法标准化矩阵 %cwstd.m,用总和标准化法标准化矩阵 function std=cwstd(vector) cwsum=sum(vector,1); %对列求和 [a,b]=size(vector); %矩阵大小,a为行数,b为列数 for i=1:a for j=1:b std(i,j)= vector(i,j)/cwsum(j); end end 3.2 cwfac.m计算相关系数矩阵 %cwfac.m function result=cwfac(vector); fprintf('相关系数矩阵:\n') std=CORRCOEF(vector) %计算相关系数矩阵 fprintf('特征向量(vec)及特征值(val):\n') [vec,val]=eig(std) %求特征值(val)及特征向量(vec) newval=diag(val) ; [y,i]=sort(newval) ; %对特征根进行排序,y为排序结果,i为索引fprintf('特征根排序:\n') for z=1:length(y) newy(z)=y(length(y)+1-z); end fprintf('%g\n',newy) rate=y/sum(y); fprintf('\n贡献率:\n') newrate=newy/sum(newy) sumrate=0; newi=[]; for k=length(y):-1:1 sumrate=sumrate+rate(k); newi(length(y)+1-k)=i(k); if sumrate>0.85 break; end end %记下累积贡献率大85%的特征值的序号放入newi中fprintf('主成分数:%g\n\n',length(newi)); fprintf('主成分载荷:\n') for p=1:length(newi)

数字图像处理_边缘检测算子与锐化算子(含MATLAB代码)

数字图像处理实验五 15生医 一、实验内容 对某一灰度图像,进行如下处理: (1)分别用Roberts、Prewitt和Sobel边缘检测算子进行边缘检测;(2)将Roberts、Prewitt和Sobel边缘检测算子修改为锐化算子,对原图像进行锐化,同屏显示原图像、边缘检测结果和锐化后图像,说明三者之间的关系。一灰度图像的二值化。 二、运行环境 MATLAB R2014a 三、运行结果及分析 运行结果如图所示:可以观察出原图像、边缘检测结果和锐化后图像三者之间的关系为:原图像+边缘检测结果=锐化后图像 四、心得体会 通过MATLAB编程更加熟悉了课本上关于锐化与边缘检测的相关知识

点,对二者的关系也有了具体的认识。同时,对MATLAB图像导入函数、图像边缘检测函数、锐化窗口矩阵卷积函数的调用及实现机理也有所掌握,比如后边附的程序中会提到的“%”标注的思考。 五、具体程序 size=512; Img_rgb=imread('E:\lena.jpg'); %读取图像 Img_gray=rgb2gray(Img_rgb); %进行RGB到灰度图像的转换(虽然原来在网上下载的lena就是黑白图像,但是这一步必须要有!否则处理结果不正确) figure(1); subplot(2,3,1); imshow(Img_gray); title('原图像'); Img_edge=zeros(size); a={'roberts','prewitt','sobel'}; for i=1:3 Img_edge=edge(Img_gray,a{i}); figure(1); subplot(2,3,i+1); imshow(Img_edge); axis image; title(a(i)); end A=imread('E:\lena.jpg'); B=rgb2gray(A); B=double(B); Window=[-1 -1 -1;-1 9 -1;-1 -1 -1]; %八邻域拉普拉斯锐化算子(α取1) C=conv2(B,Window,'same'); Img_sharp=uint8(C); subplot(2,3,5); imshow(Img_sharp); title('sharp');

层次分析报告法及matlab程序

层次分析法建模 层次分析法(AHP-Analytic Hierachy process)---- 多目标决策方法 70 年代由美国运筹学家T·L·Satty提出的,是一种定性与定量分析相结合的多目标决策分析方法论。吸收利用行为科学的特点,是将决策者的经验判断给予量化,对目标(因素)结构复杂而且缺乏必要的数据情况下,採用此方法较为实用,是一种系统科学中,常用的一种系统分析方法,因而成为系统分析的数学工具之一。 传统的常用的研究自然科学和社会科学的方法有: 机理分析方法:利用经典的数学工具分析观察的因果关系; 统计分析方法:利用大量观测数据寻求统计规律,用随机数学方法描述(自然现象、 社会现象)现象的规律。 基本内容:(1)多目标决策问题举例AHP建模方法 (2)AHP建模方法基本步骤 (3)AHP建模方法基本算法 (3)AHP建模方法理论算法应用的若干问题。 参考书:1、姜启源,数学模型(第二版,第9章;第三版,第8章),高等教育出版社 2、程理民等,运筹学模型与方法教程,(第10章),清华大学出版社 3、《运筹学》编写组,运筹学(修订版),第11章,第7节,清华大学出版社 一、问题举例: A.大学毕业生就业选择问题 获得大学毕业学位的毕业生,“双向选择”时,用人单位与毕业生都有各自的选择标准和要求。就毕业生来说选择单位的标准和要求是多方面的,例如: ①能发挥自己的才干为国家作出较好贡献(即工作岗位适合发挥专长); ②工作收入较好(待遇好); ③生活环境好(大城市、气候等工作条件等); ④单位名声好(声誉-Reputation); ⑤工作环境好(人际关系和谐等) ⑥发展晋升(promote, promotion)机会多(如新单位或单位发展有后劲)等。 问题:现在有多个用人单位可供他选择,因此,他面临多种选择和决策,问题是他将如何作出决策和选择?——或者说他将用什么方法将可供选择的工作单位排序?

分形树__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 %--------------------------------------------------------------------------

分形插值算法和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 三分康托集的构造过程

MATLAB 实现数字图像锐化处理

MATLAB 实现数字图像锐化处理 摘要:讨论了数字图像增强技术中空域图像锐化的四种算法及其用MATLAB的实现;同时给出了利用四种算法进行图像锐化后的对照图像。比较实验结果,可知运用算法锐化处理后,图像比原来图像清晰。 关键词:MATLAB、线性锐化、非线性锐化、sobel算子、prewitt算子、log算子 1.引言 MATLAB全称是Matrix Laboratory(矩阵实验室),一开始它是一种专门用于矩阵数值计算的软件,从这一点上也可以看出,它在矩阵运算上有自己独特的特点。实际运用中MATLAB 中的绝大多数的运算都是通过矩阵这一形式进行的,这一特点决定了MATLAB 在处理数字图像上的独特优势。理论上讲,图像是一种二维的连续函数,然而计算机对图像进行数字处理时,首先必须对其在空间和亮度上进行数字化,这就是图像的采样和量化的过程。 二维图像均匀采样,可得到一幅离散化成M ×N 样本的数字图像,该数字图像是一个整数阵列,因而用矩阵来描述该数字图像是最直观最简便的。而MATLAB 的长处就是处理矩阵运算,因此用MATLAB 处理数字图像非常的方便。MATLAB 支持五种图像类型,即索引图像、灰度图像、二值图像、RGB 图像和多帧图像阵列;支持BMP,GIF,HDF,JPEG,PCX,PNG,XWD,CUR,ICO等图像文件格式的读、写和显示。MATLAB 对图像的处理功能主要集中在它的图像处理工具箱(Image Processing Toolbox)中。图像处理工具箱是由一系列支持图像处理操作的函数组成,可以进行诸如几何操作、线性滤波和滤波器设计、图像变换、图像分析与图像增强、二值图像操作以及形态学处理等图像处理操作口。 数字图像处理中图像锐化的目的有两个:一是增强图像的边缘,使模糊的图像变得清晰起来;这种模糊不是由于错误操作,就是特殊图像获取方法的固有影响。二是提取目标物体的边界,对图像进行分割,便于目标区域的识别等。通过图像的锐化,使得图像的质量有所改变,产生更适合人观察和识别的图像。 2.数字图像的锐化 数字图像的锐化可分为线性锐化滤波和非线性锐化滤波。如果输出像素是输入像素领域像素的线性组合则称为线性滤波,否则称为非线性滤波。 2.1线性锐化滤波器 线性高通滤波器是最常用的线性锐化滤波器。这种滤波器必须满足滤波器的中心系数为正数,其他系数为负数。线性高通滤波器3 ×3 模板的典型系数如表1 所示: 表 1 用线性高通滤波实现图像锐化的程序和图像如下: F=imread('F:/text.png'); %读入图像 f=rgb2gray(F); h=double(f); %转化为double类型 g=[-1 -1 -1; -1 8 -1; -1 -1 -1];%线性高通滤波3×3 模板

MATLAB图像融合

一、实验原理 本实验对源图像分别进行Harr 小波变换,建立图像的小波塔形分解,然后对分解层进行融合,处理各分解层上的不同频域分量可以采用不同的融合算子进行融合处理,本实验采用统一的算法处理,得到融合后的小波金字塔,对融合后的小波金字塔进行小波逆变换,得到的重构图像为拼接图像 1、 Harr 小波变换 Harr 小波分解步骤: 步骤一:输入信号n S 有2n 个样本, 步骤二:将信号分成1,2,2,,0 2n n l n l a S b S l -===,一共12n -对,然后对每一对变换,获得均值1n S -和差值1n d -。,21,212n l n l n S S S +-+=,1,,21,2n l n l n l d S S -+=-反变换可以无损地从 1n S -和1n d -中恢复出原信号,1n S -作为信号的全局信息(低频成分) ,1n d -作为信号的细节信息(高频成分),全局信息和原信号比较相似(局部一致性),细节信息(差值比较小)可以很高效的进行表示。 步骤三:对1n S -实施同样的变换(求均值和差值),获得均值2n S -和差值2n d -,它们两各有22n -个样本值。 步骤四:重复上面的变换步骤,直到0S 中仅有一个元素为止。 2、图像拼接算法 本实验采用小波分解的图像处理方法,首先对图形进小波变换,然后采用分层比较法,对两幅图的一级分解的LL 层进行比较,从而获得准确的位置匹配,然后各层进行相应的位置衔接,得到拼接图像的一级小波分解图像,最后对分解图像进行重构,得到拼接后的图像。 步骤一:首先对两图进行Harr 小波一级分解,假设分解图像如下图。 图一的harr 小波分解 图二的harr 小波分解 步骤二:对一级分解LL 层进行位置匹配。首先求出两幅图的LL 图像梯度值,即图像灰度值的显著变化的地方,采用如下公式 21(1,)mag i j -=

matlab动力学分析程序详解

1 1.微分方程的定义 对于duffing 方程03 2 =++x x x ω ,先将方程写作??? --==3 1122 21x x x x x ω function dy=duffing(t,x) omega=1;%定义参数 f1=x(2); f2=-omega^2*x(1)-x(1)^3; dy=[f1;f2]; 2.微分方程的求解 function solve (tstop) tstop=500;%定义时间长度 y0=[0.01;0];%定义初始条件 [t,y]=ode45('duffing',tstop,y0,[]); function solve (tstop) step=0.01;%定义步长 y0=rand(1,2);%随机初始条件 tspan=[0:step:500];%定义时间范围 [t,y]=ode45('duffing',tspan,y0); 3.时间历程的绘制 时间历程横轴为t ,纵轴为y ,绘制时只取稳态部分。 plot(t,y(:,1));%绘制y 的时间历程 xlabel('t')%横轴为t ylabel('y')%纵轴为y grid;%显示网格线

2 axis([460 500 -Inf Inf])%图形显示范围设置 4.相图的绘制 相图的横轴为y ,纵轴为dy/dt ,绘制时也只取稳态部分。红色部分表示只取最后1000个点。 plot(y(end-1000:end ,1),y(end-1000:end ,2));%绘制y 的时间历程 xlabel('y')%横轴为y ylabel('dy/dt')%纵轴为dy/dt grid;%显示网格线 5.Poincare 映射的绘制 对于不同的系统,Poincare 截面的选取方法也不同 对于自治系统一般每过其对应线性系统的固有周期,截取一次 对于非自治系统,一般每过其激励的周期,截取一次 例程:duffing 方程03 2=++x x x ω 的poincare 映射 function poincare(tstop) global omega; omega=1; T=2*pi/omega;%线性系统的周期或激励的周期 step=T/100;%定义步长为T/100 y0=[0.01;0];%初始条件 tspan=[0:step:100*T];%定义时间范围 [t,y]=ode45('duffing',tspan,y0); for i=5000:100:10000%稳态过程每个周期取一个点 plot(y(i,1),y(i,2),'b.'); hold on;% 保留上一次的图形 end xlabel('y');ylabel('dy/dt');

Newton分形的原理及Matlab实现

龙源期刊网 https://www.360docs.net/doc/c316422388.html, Newton分形的原理及Matlab实现 作者:张健徐聪全付勇智 来源:《电脑知识与技术》2009年第24期 摘要:详细推导了复平面上Newton迭代法的原理和计算公式,用MATLAB编制程序实现了Newton迭代算法,得到了一些奇异、绚丽的分形图形。对《数学实验》课程有一定的参考价值。 关键词:Newton迭代法;分形;Matlab;数学实验 中图分类号:TP312文献标识码:A文章编号:1009-3044(2009)24-6997-03 The Principles of Newton Fractal and it's Realization Using MATLAB ZHANG Jian, XU Cong-quan, FU Yong-zhi (Department of Basic Courses, Southwest Forestry College, Kunming 650224, China) Abstract: The Principles and formulas of Newton fractal was explained,fractal graphics of Newton iteration was created using Matlab. Key words: newton iteration; fractal; Matlab; mathematical experimental 分形是非线性科学的一个重要分支,应用于自然科学和社会科学的众多领域。其中,分形图形以其奇异、绚丽多彩的特点,广泛应用于纺织印染、广告设计、装潢设计、计算机美术教学 等领域[1]。 很多分形图形都是用迭代的方式实现的,Newton迭代法就是其中的一种。由Newton迭代 法产生的分形图形称为Newton分形[2]。很多文献都对Newton分形进行了介绍,但都没有详细的计算公式和算法说明,读者很难编制相应程序。本文详细介绍了复平面上Newton迭代法的原理和计算公式,设计了相应的实现算法,并用Matlab编制程序实现了Newton分形的绘制,生成了一些奇异、瑰丽的分形图形。

基于MATLAB的图像锐化算法研究

中北大学 课程设计说明书 学院:信息商务学院 专业:电子信息工程 题目:信息处理综合实践: 基于MATLAB的图像锐化算法研究 指导教师:陈平职称: 副教授 2013 年 12 月 15 日 中北大学 课程设计任务书

13/14 学年第一学期 学院:信息商务学院 专业:电子信息工程 课程设计题目:信息处理综合实践: 基于MATLAB的图像锐化算法研究起迄日期:2013年12月16日~2013年12月27日课程设计地点:电子信息科学与技术专业实验室指导教师:陈平 系主任:王浩全 下达任务书日期: 2013 年12月15 日 课程设计任务书

课程设计任务书

目录 1 绪论 (1)

1.1 MATLAB简介 (1) 1.2 MATLAB对图像处理的特点 (1) 1.3 图像锐化概述 (2) 1.4 图像锐化处理的现状和研究方法 (2) 2 设计目的 (2) 3 设计内容和要求 (2) 4 总体设计方案分析 (2) 5 主要算法及程序 (4) 5.1 理想高通滤波器锐化程序 (4) 5.2 高斯高通滤波器锐化程序 (5) 5.3 高提升滤波器锐化程序 (6) 6 算法结果及比较分析 (8) 6.1 理想高通滤波器锐化结果 (8) 6.2 高斯高通滤波器锐化结果 (9) 6.3 高提升滤波器锐化结果 (10) 6.4 算法结果比较分析 (11) 7 设计评述 (11) 参考文献 (12)

1 绪论 数字图像处理(Digital Image Processing)又称为计算机图像处理,它最早出现于20世纪50年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。数字图像处理作为一门学科大约形成于20世纪60年代初期。图像处理的基本目的是改善图像的质量。它以人为对象,改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常见的图像处理方法有图像增强、复原、编码、压缩等。图像处理技术在许多应用领域受到广泛重视并取得了重大的开拓性成就,属于这些领域的有航空航天。生物医学工程、工业检测、公安司法、军事制导、文化艺术等,使图像处理成为一门引人注意、前景远大的新型科学。随着图像处理技术的深入发展,随着计算机技术和人工智能、思维科学研究的迅速发展,数字图像处理更高、更深层次发展。 1.1 MATLAB简介 MATLAB全称Matrix Laboratory(矩阵实验室),最早初由美国Cleve Moler 博士在20世纪70年代末讲授矩阵理论和数据分析等课程时编写的软件包Linpack和Eispack组成。它用于数学、信息工程、摇感、机械工程、计算机等专业。它的推广得到各个领域专家的关注,其强大的扩展功能为各个领域应用提供了基础,各个领域的专家相继推出MATLAB工具箱,而且工具箱还在不断发展,借助于这些工具箱,各个层次的研究人员可直接、直观、方便地进行工作,从而节省大量的时间。目前,MATLAB语言已经成为科学计算、系统仿真、信号与图像处理的主流软件。本文主要从MATLAB图像处理方面做应用。 1.2MATLAB对图像处理的特点 MATLAB全称Matrix Laboratory(矩阵实验室),是一种主要用于矩阵数据值计算的软件,因其在矩阵运算上的特点,使得MATLAB在处理图像上具有独特优势,理论上讲,图像是一种二维的连续函数,而计算机在处理图像数字时,首先必须对其在空间和亮度上进行数字化,这就是图像的采样个量化的过程。二维图像均匀采样,课得到一副离散化成N×N样本的数字图像,该数字图像是一个整数列阵,因而用矩阵来描述该数字图像是最直观最简便的。

数字图像处理(matlab版)第八章 图像融合算法

第八章图像融合算法 8.1 图像融合技术的发展过程 随着科学的发展和技术的进步,采集图像数据的手段不断完善,出现了各种新的图像获取技术。如今,图像融合方法已经运用于社会的很多领域,像遥感卫星图像,光图像,红外图像,医学图像,尤其是多传感器图像融合应用以来,它已成为计算机视觉,目标识别,机器人以及军事等方面研究的重要方面。

8.2基于小波变换图像融合的基本原理 如果一个图像进行L 层小波分解,我们将得到(3L +1)层子带,其中包括低频的基带和层的高频子带。用代表源图像,记为,设尺度系数和小波函数对应的滤波器系数矩阵分别为,则二维小波分解算法可描述为: j C 3L ,h v d D D D 和(,)f x y 0C ()x Φ()x ΨH G 与11 1 j h j j v j j d j j C HC H D GC H D HC G D GC G +++′ =??′=??′=??′=?j+1(0,1, (1) j J =?(8-1)

小波重构算法为: 基于二维DWT 的融合过程如图1.1所示,ImageA 和 ImageB 代表两幅源图像A 和B ,ImageF 代表融合后的图像,具体步骤如下:(1)图像的预处理: 1h v d j j j j j C H C H G D H H D G G D G ?′′′′=+++(,1, (1) j J J =?(8-2) 图8.1 基于DWT 图像融合过程

①图像滤波 ②图像配准 (2)对ImageA和ImageB进行二维DWT分解,得到图像的低频和高频分量。 (3)根据低频和高频分量的特点,按照各自的融合算法进行融合。 (4)对以上得到的高低频分量,经过小波逆变换重构得到融合图像ImageF。 8.3 融合效果性能评价指标 8.3.1均值和标准差

matlab图像增强与平滑简单程序

图像增强与平滑 直方图: I=imread('1.jpg'); imshow(I); I=rgb2gray(I); %三维变成二维的图; figure,imhist(I); %显示灰度分布 直方图均衡处理: I=imread('1.jpg'); I=rgb2gray(I); J=histeq(I); Subplot(1,2,1),imshow(I); Subplot(1,2,2),imshow(J); figure,Subplot(1,2,1),imhist(I,64); Subplot(1,2,2),imhist(J,64); %这个参数是什么意思??? 灰度变换:

imadjust(I,[],[], ); I=imread('1.jpg'); I=rgb2gray(I); J=imadjust(I,[0.1,0.5],[]); Subplot(1,2,1),imshow(I); Subplot(1,2,2),imshow(J); figure,Subplot(1,2,1),imhist(I,64); Subplot(1,2,2),imhist(J,64); 图像反转: I=imread('1.jpg'); I=rgb2gray(I); J=imadjust(I,[0.1,0.9],[0.9 0.1]); Subplot(1,2,1),imshow(I); Subplot(1,2,2),imshow(J); figure,Subplot(1,2,1),imhist(I,64); Subplot(1,2,2),imhist(J,64); 图像平滑 噪声 I=imread('1.jpg'); I=rgb2gray(I); J=imnoise(I,'salt & pepper',0.02);

几个分形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 分形曲线:

基于MATLAB的图像融合算法

基于MATLAB的图像融合算法

基于MATLAB的图像融合算法 摘要 图像融合能够将不同类型传感器获取的同一对象的图像数据进行空间配准。并且采用一定的算法将各图像数据所含的信息优势或互补性有机的结合起来产生新的图像数据。这种新数据具有描述所研究对象的较优化的信息表征,同单一信息源相比,能减少或抑制对被感知对象或环境解释中可能存在的多义性、不完全性、不确定性和误差,最大限度的利用各种信息源提供的信息。 图像融合分为像素级、特征级、决策级三个层次,其中像素级图像融合能够提供其它层次上的融合处理所不具有的更丰富、更精确、更可靠的细节信息,有利于图像的进一步分析、处理和理解,它在整个图像融合技术中是最为复杂、实施难度最大的融合处理技术。本文的研究工作是围绕像素级图像融合展开的,针对像素级图像融合技术中需要解决的关键问题,研究了多种像素级图像融合方法。 本论文的主要的研究内容有: 首先介绍了图像信息融合的概念、优势、发展历史和应用领域,并介绍了图像融合的三个层次及常用的空域图像融合方法,空域融合方法有像素平均法、像素最大最小法、像素加权平均法,频域融合方法包括图像的多尺度分解、图像的小波变换、基于小波变换的 图像融合方法。图像的预处理有滤波(邻域平均滤波法、中值滤波法)和图像配准。最后,对于图像融合系统来说,融合图像质量的评价显得特别重要,本文探讨了图像融合质量的评价问题,总结了融合效果的主、客观评价标准,作为本课题性能分析的判断标准。 关键词:图像配准;图像融合;空域融合法;小波变换;评价标准

MATLAB-based image fusion algorithm Abstract The same object gotten from different sensors can be registered spatially by mage fusion. The information advantages or the complements of all the image data can be combined to produce new image data using some fusion algorithms. The new data can describe the optimized information of the studied object. Compared with single information source, the new data can reduce or restrain the ambiguity, the incompleteness, the uncertainty and the error, which may appears in the explanation of the studied object or the environment, and make full use of the information provided by all kinds of resources. Image fusion consists of such three levels as the Pixel level,the feature level and the decision level,among which the Pixel level image fusion can Provide more abundant, accurate and reliable detailed information tha t doesn’t exist on the other levels and It is the most complicated in the whole image fusion techniques and also is the most difficult to implement in the fusion Processing techniques. this dissertation Progresses mainly around the Pixel level image fusion and proposes a variety of Pixel level image fusion techniques according to the key Problems in the Pixel level image fusion techniques. The major research and findings are as follows: First we introduce the concepts,advantages,developments and applications. Three levels of image fusion and image fusion techniques in common use are also reviewed. Airspace Image Fusion such as simple fusion method (pixel average, maximal or minimal pixel selection), Frequency-domain image fusion methods include the multiresolution image fusion techniques based on multi-scale pyramid decomposition, and the image fusion method based on wavelet transform Image Pre-processing like Filter processing (neighborhood average filter, median filtering method) and Image Registration. in the end, evaluation for fusion image is vital to fusion system. This dissertation probes into the image fusion quality assessment and deduces a set of indexes as the criteria to analyze the performances of this discussion. Keywords: Image Registration;Image Fusion;Airspace integration method;Wavelet Transform;Evaluation criteria

相关文档
最新文档