Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-06-17, 15:13   #1
xsunrain
初级会员
 
注册日期: 2008-06-17
年龄: 39
帖子: 2
声望力: 0
xsunrain 正向着好的方向发展
默认 请帮忙改个错(用lsqcurvefit曲面拟合)

我初学matlab用于拟合曲面
曲面是高斯形式的 但我不会用二维的方法,就把矩阵转化为一维的数组然后用一维的方法做 程序如下

I=imread('E:/011.bmp'); %读取一个图片
J=rgb2gray(I); %将图片转为灰度格式
[m,n]=size(J);
reshape(J,1,m*n); %将图片的数据矩阵转化为一维的数组(我初学,不会用二维的,只能这样)
a=reshape(J,1,m*n);
f=inline('b(1)*exp(-((x-n*floor((x-1)/n)-b(2)).^2+(floor((x-1)/n)+1-b(3)).^2)/b(4)^2)','b','x');%拟合的目标的表达式
x=1:1.0:m*n;
y=double(a(x));
[xx,res]=lsqcurvefit(f,[1,1,1,1],x,y);
xx',res;


但运行出来后 出现错误
??? Error using ==> optim\private\lsqncommon
User supplied expression or inline function ==> b(1)*exp(-((x-n*floor((x-1)/n)-b(2)).^2+(floor((x-1)/n)+1-b(3)).^2)/b(4)^2)
failed with the following error:

Error using ==> inlineeval
Error in inline expression ==> b(1)*exp(-((x-n*floor((x-1)/n)-b(2)).^2+(floor((x-1)/n)+1-b(3)).^2)/b(4)^2)
??? Error using ==> eval
Undefined function or variable 'n'.

Error in ==> lsqcurvefit at 149
[x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...


有高手能帮忙解释下么?能帮忙改正确了就更好了,谢谢了 如果发错了版,请版主帮忙转一下,谢谢
qq 78264997
e-mail [email protected]
xsunrain 当前离线   回复时引用此帖
旧 2008-06-19, 00:50   #2
fanxing39
高级会员
 
注册日期: 2007-12-02
年龄: 44
帖子: 303
声望力: 31
fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星
默认

你把你的011.bmp 图 发上来,看下,如何?:lol: 你用的那个拟合方法是最小二乘拟合
fanxing39 当前离线   回复时引用此帖
旧 2008-06-20, 11:35   #3
xsunrain
初级会员
 
注册日期: 2008-06-17
年龄: 39
帖子: 2
声望力: 0
xsunrain 正向着好的方向发展
默认

图片就是一个光斑的图片 有点大,我不会上传。主要问题好像是我如果把 f 表达式中的 n 换成一个实际的数 就能得到结果。好像是这个地方出现问题了,希望能解释下
xsunrain 当前离线   回复时引用此帖
旧 2010-11-25, 17:32   #4
未注册
游客
 
帖子: n/a
默认 回复: 请帮忙改个错(用lsqcurvefit曲面拟合)

怎么没人回答呀,我也要处理这个问题
  回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[原创]曲线拟合 shiqiang MATLAB论坛 147 2019-07-18 10:45


所有时间均为北京时间。现在的时间是 21:38


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.