棘手的问题,困扰很久,望高手解答!如图所示,已知5个点,利用matlab的polyfit函数进行曲线四阶拟合,得到拟合波形。但现在想在C#上实现polyfit的功能得到拟合系数,该如何编写?

解决方案 »

  1.   

    望高手能帮忙给idea,能解决最好!
      

  2.   

    看这个,我以前请教曲线拟合的帖子
    http://bbs.csdn.net/topics/320245824gomoku给的代码,效果很好
      

  3.   

    多谢varlj的帮助!但是我需要做四阶拟合,看goumoku给的代码貌似只能算如下两个方程:
    y = Ax*x + Bx + C 和 y = Aln(x) + B
    其实我需要的是Matlab中polyfit的算法,看过有matlab与C#连接的方法,但是倘若机器上没Matlab就不能实现是吗?如果实在没办法,请教下如何连接我写的matlab代码到已有的C#中?
      

  4.   

    感谢varlj,重新试了下gomoku的代码,确实可行,但该理论比较复杂,代码和理论都看的昏沉沉的;同样感谢feixuyue,但因为不知道最小二乘法C#该如何实现,也不知“高斯-牛顿法”和最小二乘法原理哪个比较准确,因此还需要进一步研究。
      

  5.   

    已经搞定了… 找到一个 “利用最小二乘法拟合任意次函数曲线”:http://blog.sina.com.cn/s/blog_6e51df7f0100thie.html 
    比较方便。