标签: curve-fitting

寻找使用离散值计算高斯曲线最大值的C/C++库

我有一些离散值和假设,这些值位于高斯曲线上.应该使用仅使用3个离散值的最大计算算法.你知道实现这个计算的C/C++中的库或代码吗?

谢谢!

PS:原始任务是自动对焦实现.我移动(显微镜)相机并在不同位置捕捉图片.具有最不同颜色的位置应该具有最佳焦点.

编辑 这是很久以前:-(我只是想删除这个问题,但让它尊重好的答案.

c c++ gaussian discrete-mathematics curve-fitting

1
推荐指数
1
解决办法
3835
查看次数

MATLAB将数据拟合到逆二次方程

我有一堆数据,例如,我想要一个我想要的功能1/(ax^2+bx+c).我的目标是获得a,b,c值.

MATLAB有什么功能可以帮助解决这个问题吗?我一直在检查fit()功能,但我没有得出结论.哪种方式最好?

matlab curve-fitting

1
推荐指数
1
解决办法
2万
查看次数

如何将高斯拟合到 R 中的直方图?

可能的重复:
将密度曲线拟合到 R 中绘图的R最佳拟合曲线中的直方图

我有一组数据,当绘制在直方图中时是高斯分布。我已经从 .csv 文件中读取了数据,如下所示:

"values"
1.29989
1.15652
1.27818
1.19699
1.28243
1.19433
1.10991
...
Run Code Online (Sandbox Code Playgroud)

使用data<-read.csv("~/peak.csv")...所以我创建一个直方图使用hist(data$values)。我希望能够将高斯拟合到这个直方图,并将拟合函数的 sigma 和均值与根据数据计算的 sigma 和均值进行比较。

我看过的所有地方都提到了nlsglm但我无法弄清楚如何使用这些函数将高斯拟合到直方图,即使在执行?nls和 之后?glm。请帮忙?

r curve-fitting

1
推荐指数
1
解决办法
8688
查看次数

如何在python中拟合非线性数据

如何适应非线性数据的使用scipy.optimize import curve_fitPython使用以下3种方法:

  1. 高斯。
  2. 洛伦兹拟合。
  3. 朗缪尔适合。

我只能从我的数据文件中链接和绘图。

from matplotlib import pyplot as plt
from matplotlib import style
import numpy as np
import pylab
from scipy.optimize import curve_fit
style.use('ggplot')
data = np.genfromtxt('D:\csvtrail3.csv', delimiter=',', skiprows=1)
x=data[:,0]
y=data[:,1]
data.fit_lorentzians()
plt.plot(x, y)
plt.title('Epic chart')
plt.ylabel('Y Axis')
plt.xlabel('X Axis')
plt.show()
Run Code Online (Sandbox Code Playgroud)

请建议我如何为该数据归档该行。我不想直接合身。我想要平滑的配合。

python matplotlib curve-fitting scipy

1
推荐指数
1
解决办法
1937
查看次数

将3D曲面拟合到点数据集[R]

我一直在尝试将多项式曲面拟合到具有3个坐标的一组点。

令数据为:

DATA <- with(mtcars, as.data.frame(cbind(1:32, wt,disp,mpg)))
Run Code Online (Sandbox Code Playgroud)

我一直在尝试使用以下方法绘制表面:

  1. PLOT3D格式RGL包,
  2. 使用rsm软件包,
  3. scatterplot3d软件包。

例如:

library(scatterplot3d)
attach(mtcars)
DATA <- as.data.frame(cbind(1:32, wt,disp,mpg))
scatterplot3d(wt,disp,mpg, main="3D Scatterplot")
model <- loess(mpg ~wt + disp, data=DATA)
x <-range(DATA$wt)
x <- seq(x[1], x[2], length.out=50)    
y <- range(DATA$disp)
y <- seq(y[1], y[2], length.out=50)
z <- outer(x,y, 
       function(wt,disp)
         predict(model, data.frame(wt,disp)))
z
p <- persp(x,y,z, theta=30, phi=30, 
       col="lightblue",expand = 0.5,shade = 0.2,
       xlab="wt", ylab="disp", zlab="mpg")
Run Code Online (Sandbox Code Playgroud)

我也尝试过使用surf.ls函数:

surf.ls(2,DATA[,2],DATA[,3],DATA[,4])
Run Code Online (Sandbox Code Playgroud)

但是我得到的是这样的: 我真的不知道如何将其转换为3D图,更重要的是,如何获得最适合曲面的公式。

我将衷心感谢您的帮助。

PS我已经删除了我的上一篇文章,并在此文章中包含了更多细节。

3d regression r surface curve-fitting

1
推荐指数
1
解决办法
3352
查看次数

JS指数曲线拟合

我正在尝试制作一个简单的函数,在给定数据集的情况下进行指数曲线拟合.我写了以下内容:

  function expCurveFit(d){
    var sum_x2 = 0, sum_lny = 0, sum_x = 0, sum_xlny = 0, n = d.length;
    for(var i=0;i<d.length;i++){
      var x = d[i][0];
      var y = d[i][1];
      sum_x2 += x^2, sum_lny += Math.log(y), sum_x += x, sum_xlny += x*Math.log(y);
    }
    var a = ((sum_lny*sum_x2)-(sum_x*sum_xlny))/((n*sum_x2)-sum_x^2);
    var b = ((n*sum_xlny)-(sum_x*sum_lny))/((n*sum_x2)-sum_x^2);
    return [a,b];
  }
Run Code Online (Sandbox Code Playgroud)

但是a和b似乎不正确.我正在使用Wolfram的基本公式.输入的数组是表格[[x1,y1],[x2,y2]...[xn,yn]].任何人都有工作建议,插件,库或修订功能?

javascript math curve-fitting

1
推荐指数
1
解决办法
652
查看次数

如何找到多项式拟合通过零的点

我已经将四阶多项式曲线拟合到我的数据中,如下所示:

y<-c(-13,16,35,40,28,36,43,33,40,33,22,-5,-27,-31,-29,-25,-26,-31,-26,-24,-25,-29,-23,4)
x<-1:24

#4th order polynomial fit
fit<-lm(y~poly(x,4,raw=TRUE))

plot(x,y,ylim=c(min(y)-10,max(y)+10))
lines(x,predict(fit,data.frame(x=x)),col="red")
abline(h=0,lty=2)
Run Code Online (Sandbox Code Playgroud)

我的最终目标是计算这条曲线与零线相交的 3 个点。

所以首先,我需要延长曲线拟合的末端,使其第三次超过零线。完成此操作后,我想计算该方程通过零线的 3 个点。

r curve-fitting polynomial-math polynomials polynomial-approximations

1
推荐指数
1
解决办法
379
查看次数

在多项式曲线上添加更多点

我正在尝试绘制多项式的曲线,但是有一些点使得曲线在某些地方看起来非常直.如何在多项式上测试更多点,这样我就能得到更好的曲线?图片说明了下面的问题,代码试图解决问题.

在此输入图像描述

library('MonoPoly') # monotonic polynomials

dataT = read.csv("data.csv", header=TRUE, sep=",")
x <- dataT[,'x']
y <- dataT[,'y']
fitResult <- monpol(y~x, degree=3,algorithm="Hawkins")
fitted <- fitted(fitResult) # not enough data points. Only 120

z = predict(fitResult, seq(1, 5, 0.01)) # attempt at making more data points

plot(1:5, 1:5, type = "n")# setting up coord system
points(x,y,col="red") # plotting data fitting to
lines(sort(x), sort(fitted),col="blue") #plotting fitted because z isn't working
points(x,z,col="blue") # plotting curve
Run Code Online (Sandbox Code Playgroud)

r curve-fitting polynomials

1
推荐指数
1
解决办法
46
查看次数

高斯曲率和平均曲率适用于粗糙表面吗?

对于我正在进行的一个项目,我已经成功地对道路图像数据执行了 SFM 程序,并且能够生成一个包含点云坐标(X、Y、Z)、RGB 值和法线(nx、纽约州,新西兰)。

现在,我有兴趣根据我拥有的数据计算每个点的曲率值。我在 Python 中遇到过Surface Curvature MATLAB Equivalent,但据说该实现仅在 X、Y 和 Z 是二维数组时才有效。

如果路面非常粗糙,高斯曲率和平均曲率是否适用?给定大小 NX3 的 (X,Y,Z) 坐标数据和大小 NX3 的 (nx,ny,nz) 法线数据,我应该如何找到曲率?Python 中是否有当前的实现?

python curve-fitting smoothing point-clouds structure-from-motion

1
推荐指数
1
解决办法
1537
查看次数

编写错误函数以在python中喂scipy.optimize.least_squares

我正在尝试将一些数据拟合到一个非线性函数中,并希望使用模型函数来查看是否可以得到比现有函数更好的拟合。在尝试解决问题时,我提出了更多问题。我有:

import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import least_squares
from scipy.optimize import curve_fit

temperature = [ 38., 40., 42., 44., 46., 48., 50., 52., 54., 56., 58., 60., 62., 64., 66., 68., 70., 71.9, 73.81, 75.69, 77.6, 79.49, 81.38, 83.29, 85.19, 87.11, 89., 90., 91., 92., 93., 94., 95., 96., 97., 98., 99., 100. ]
exp_rate = [  8.71171203e-01, 1.15342914e+00, 1.39178845e+00, 1.66700007e+00, 1.96267002e+00, 2.32390602e+00, 2.68542886e+00, 3.13116448e+00, 3.60152705e+00, 4.12575295e+00, 4.67617489e+00, 5.29745193e+00, 6.06796117e+00, 6.99056274e+00, 8.40124338e+00, 1.04449551e+01, 1.38236107e+01, 1.96811651e+01, …
Run Code Online (Sandbox Code Playgroud)

python numpy curve-fitting scipy python-2.7

1
推荐指数
1
解决办法
384
查看次数