⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bd.m

📁 一个很好用的摄像机标定程序
💻 M
字号:
function [fvec,J] = bd(n,m,x,opt)

%  function [fvec,J] = bd(n,m,x,opt)
%  Brown and Dennis function  [16]
%  Dimensions:  n=4,  m=20
%  Function Definition:
%       f(x)=(x1 + t(i)x2- exp[t(i)])^2 +(x3 + x4sin(t(i))- cos(t(i)))^2
%       where t(i)=i/5
%  Standard starting point (25,5,-5,-1)
%  Minima of f=85822.2... if m=20
%
%  Revised  11/94               PLK
%
      two = 2.d0;
      point2 = .2d0;
      x1 = x(1);
      x2 = x(2);
      x3 = x(3);
      x4 = x(4);

     if opt==1
	for i = 1: m
        	ti   = (i)*point2;
        	ei   = exp(ti);
        	si   = sin(ti);
       		ci   = cos(ti);
        	fvec(i) = (x1 + ti*x2 - ei)^2 + (x3 + x4*si - ci)^2;
	end
	fvec=fvec';

     elseif opt==2
	for i=1:m
        	ti = (i)*point2;
        	ei = exp(ti);
        	si = sin(ti);
        	ci = cos(ti);
        	f1 = two*(x1 + ti*x2 - ei);
        	f3 = two*(x3 + x4*si - ci);
        	J( i, 1) = f1;
        	J( i, 2) = f1 * ti;
        	J( i, 3) = f3;
        	J( i, 4) = f3 * si;
	end

     elseif opt==3
	for i=1:m
        	ti = (i)*point2;
        	ei = exp(ti);
        	si = sin(ti);
        	ci = cos(ti);
        	f1 = two*(x1 + ti*x2 - ei);
        	f3 = two*(x3 + x4*si - ci);
        	fvec(i) = (x1 + ti*x2 - ei)^2 + (x3 + x4*si - ci)^2;
        	J( i, 1) = f1;
        	J( i, 2) = f1 * ti;
        	J( i, 3) = f3;
        	J( i, 4) = f3 * si;
	end
	fvec=fvec';

     else 
	error('Error: bd.m - Invalid option')
     end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -