2013-04-09 1001 views
0

有什么办法从cfit或sfit对象中提取数据吗?我想从sfit对象中提取拟合值的矩阵,而无需访问每个拟合元素(在240x320中非常缓慢)。问题等同于从cfit对象中提取向量。是否有定义在这个对象上的方法,或类似的东西?sfit Matlab对象的cfit数据输出

请发表一个代码! 谢谢,尼古拉

回答

1

您可以使用sfit.element访问sfit对象的元素。例如:

sf = fit([x,y],z,'poly23'); 
sf 

    Linear model Poly23: 
    sf(x,y) = p00 + p10*x + p01*y + p20*x^2 + p11*x*y + p02*y^2 + p21*x^2*y 
        + p12*x*y^2 + p03*y^3 
    Coefficients (with 95% confidence bounds): 
     p00 =  1.118 (0.9149, 1.321) 
     p10 = -0.0002941 (-0.000502, -8.623e-05) 
     p01 =  1.533 (0.7032, 2.364) 
     p20 = -1.966e-08 (-7.084e-08, 3.152e-08) 
     p11 = 0.0003427 (-0.0001009, 0.0007863) 
     p02 =  -6.951 (-8.421, -5.481) 
     p21 = 9.563e-08 (6.276e-09, 1.85e-07) 
     p12 = -0.0004401 (-0.0007082, -0.0001721) 
     p03 =  4.999 (4.082, 5.917) 

要得到SF的一个要素:

sf.p03 

ans = 

    4.9994