matlab 程序解释 急需

matlab 程序解释 急需,第1张

在这里:

function u = EVOLUTION(u0, g, lambda, mu, alf, epsilon, delt, numIter)

% EVOLUTION(u0, g, lambda, mu, alf, epsilon, delt, numIter) updates the level set function

% according to the level set evolution equation in Chunming Li et al's paper:

% "Level Set Evolution Without Reinitialization: A New Variational Formulation"

% in Proceedings CVPR'2005,

% Usage:

% u0: level set function to be updated

% g: edge indicator function

% lambda: coefficient of the weighted length term L(\phi)

% mu: coefficient of the internal (penalizing) energy term P(\phi)

% alf: coefficient of the weighted area term A(\phi), choose smaller alf

% epsilon: the papramater in the definition of smooth Dirac function, default value 15

% delt: time step of iteration, see the paper for the selection of time step and mu

% numIter: number of iterations

%

u=u0;

[vx,vy]=gradient(g);

for k=1:numIter

u=NeumannBoundCond(u);

[ux,uy]=gradient(u);

normDu=sqrt(ux^2 + uy^2 + 1e-10);

Nx=ux/normDu;

Ny=uy/normDu;

diracU=Dirac(u,epsilon);

K=curvature_central(Nx,Ny);

weightedLengthTerm=lambdadiracU(vxNx + vyNy + gK);

penalizingTerm=mu(4del2(u)-K);

weightedAreaTerm=alfdiracUg;

u=u+delt(weightedLengthTerm + weightedAreaTerm + penalizingTerm); % update the level set function

end

% the following functions are called by the main function EVOLUTION

function f = Dirac(x, sigma) %水平集狄拉克计算

f=(1/2/sigma)(1+cos(pix/sigma));

b = (x<=sigma) & (x>=-sigma);

f = fb;

function K = curvature_central(nx,ny); %曲率中心

[nxx,junk]=gradient(nx);

[junk,nyy]=gradient(ny);

K=nxx+nyy;

function g = NeumannBoundCond(f)

% Make a function satisfy Neumann boundary condition

[nrow,ncol] = size(f);

g = f;

g([1 nrow],[1 ncol]) = g([3 nrow-2],[3 ncol-2]);

g([1 nrow],2:end-1) = g([3 nrow-2],2:end-1);

g(2:end-1,[1 ncol]) = g(2:end-1,[3 ncol-2]);

是这样的,如果你再程序开始添加holdon这个的画,表示这之后的每一次作图都保留以前的图,这样就可以连续画图了

反之holdoff,表示打开这个之后,每次画图,删除以前的图,

Imin=imread('lenajpg');

imshow(Imin);title('原始图像');

Imout=imadjust(Imin,[30/255,150/255],[150/255,255/255]);

figure;imshow(Imout);

问题不全,只回答了一部分。需要帮的话我邮箱:weiguang@foxmailcom

C(i,1)>=0&&C(i,1)<=01

a=a+1;

else if C(i,1)>=02&&C(i,1)<=04

b=b+1;

else if C(i,1)>=05&&C(i,1)<=06

c=c+1;

else if C(i,1)>=07&&C(i,1)<=09

d=d+1;

else if C(i,1)==1

你的这个条件是不是漏掉了一些值啊。。。然后C中的那个就是0,精度造成的

题主是否想询问“matlab生成的exe很大的原因”?matlab生成的exe很大的原因有依赖库文件、数据文件、代码结构、程序功能。

1、依赖库文件:MATLAB程序通常需要依赖许多库文件,包括MEX文件、DLL文件、MATLAB运行时库等。这些文件通常很大,会导致生成的exe文件也很大。解决方法是尽可能减少程序的依赖库文件,如果有必要可以考虑使用静态链接库。

2、数据文件:MATLAB程序可能需要使用大量的数据文件,例如训练数据、测试数据等。这些数据文件通常很大,会导致生成的exe文件也很大。解决方法是尽可能减少程序使用的数据文件大小,可以考虑使用压缩算法对数据文件进行压缩。

3、代码结构:MATLAB程序的代码结构可能会影响生成的exe文件大小。例如,一些不必要的代码、变量和函数可能会导致生成的exe文件大小增加。解决方法是对程序进行优化,删除不必要的代码、变量和函数。

4、程序功能:MATLAB程序的功能也会影响生成的exe文件大小。一些复杂的功能和算法通常需要使用更多的代码和依赖库文件,会导致生成的exe文件也很大。解决方法是尽可能简化程序的功能和算法,避免使用过多的依赖库文件。

以上就是关于matlab 程序解释 急需全部的内容,包括:matlab 程序解释 急需、matlab程序画图、编写程序(用MATLAB)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10123573.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存