编写了一个关于图像处理的程序,在调用fminsearch函数的过程中,报错,但我并不知道是什么原因,恳请各位师兄师姐帮帮忙:
我的程序是:
k=fminsearch(@(k)StdMonochrome,[-1,-1]);
function MinI=StdMonochrome(k,G)
MinI=k(1)*G(:,:,1)+k(2)*G(:,:,2)+G(:,:3);
报的错误是:
Error in ==> fminsearch at 175
fv(:,1) = funfcn(x,varargin{:});
Error in ==> readmain at 24
k=fminsearch('StdMonochrome',[-1,-1]);
万分感激!!!!1
关于matlab中的fminsearch函数的使用
答案:2 悬赏:10 手机版
解决时间 2021-02-16 04:13
- 提问者网友:活着好累
- 2021-02-15 03:24
最佳答案
- 五星知识达人网友:低音帝王
- 2021-02-15 04:22
从你的初始值看k和G都是变量,若是,则将两个变量处理成一个向量来给fminsearch。
xout = fminsearch(@(x)StdMonochrome(x(1),x(2)),[-1,-1]);
xout(1)为搜索的k,xout(2)为搜索的G,k,G的初始值均为-1
但从你调用fminsearch的语句来看只有k是变量,若是,可以写成kout=fminsearch(@(k)StdMonochrome(k,G),-1),-1是k的初始值,G为常量,kout为搜索的k
xout = fminsearch(@(x)StdMonochrome(x(1),x(2)),[-1,-1]);
xout(1)为搜索的k,xout(2)为搜索的G,k,G的初始值均为-1
但从你调用fminsearch的语句来看只有k是变量,若是,可以写成kout=fminsearch(@(k)StdMonochrome(k,G),-1),-1是k的初始值,G为常量,kout为搜索的k
全部回答
- 1楼网友:鱼忧
- 2021-02-15 04:47
f =@(x)(x(1)>0)*(100*(x(3)- 5/pi * atan(x(2)/x(1)))^2 + (sqrt(x(1)^2+x(2)^2) - 1)^2 + x(3)^2)+(x(1)<0)*(100 * (x(3) - 5/pi * (pi + atan(x(2)/x(1))))^2 + (sqrt(x(1)^2+x(2)^2) - 1)^2 + x(3)^2)
[x,val]=fminsearch(f,[-1 0 0])
————————————————————
听不懂,从来没听说过fminsearch有α β γ这种参数的。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯