Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在MATLAB/OpenCV中拟合含元组数据集的光滑曲线_Matlab_Opencv_Rgb_Curve Fitting_Data Fitting - Fatal编程技术网

在MATLAB/OpenCV中拟合含元组数据集的光滑曲线

在MATLAB/OpenCV中拟合含元组数据集的光滑曲线,matlab,opencv,rgb,curve-fitting,data-fitting,Matlab,Opencv,Rgb,Curve Fitting,Data Fitting,我有一个数据集,以[R,G]值的形式为多个像素的实际标准化R,G,B值,因为B值可以使用B=1-R-G计算。所有这些值都是唯一的。我也有一个类似的数据集,以相同的格式观察到R,G,B值,即[R,G]。由于观察到这些值,这些值可能不是唯一的。我想在观测值上拟合一条基于最小二乘法的平滑曲线,这样当从观测的RGB值反向映射实际值时,可以在观测值和实际值之间获得一对一的对应关系。使用MATLAB函数可以很容易地对R和G值进行单独拟合,但它们不是完全独立的,因此必须将数据集点视为元组。在MATLAB/Op

我有一个数据集,以[R,G]值的形式为多个像素的实际标准化R,G,B值,因为B值可以使用B=1-R-G计算。所有这些值都是唯一的。我也有一个类似的数据集,以相同的格式观察到R,G,B值,即[R,G]。由于观察到这些值,这些值可能不是唯一的。我想在观测值上拟合一条基于最小二乘法的平滑曲线,这样当从观测的RGB值反向映射实际值时,可以在观测值和实际值之间获得一对一的对应关系。使用MATLAB函数可以很容易地对R和G值进行单独拟合,但它们不是完全独立的,因此必须将数据集点视为元组。在MATLAB/OpenCV中有什么方法可以做到这一点吗


编辑:把我的问题简化一点,我想要一个曲面拟合或者一个函数,比如fRobs,Gobs->Ractual和gRobs,Gobs->Gactual。因此,我可以得到一个网络组合映射hRobs,Gobs->ractural,Gactual。

拟合曲线意味着期望从一个点到下一个点之间存在某种关系-那么这些相邻像素是沿着一条线吗?只是想在我的脑海里形成一个更清晰的形象。此外-数据集点必须被视为元组-实际上,你的意思是优化有一个约束R+G+B=1吗?@Floris这些像素来自一个特定的模式。将其视为256*256图案。是的,它有R+G+B=1的约束,因此我无法分别拟合R值和G值。256x256是曲面而不是直线??你有两个自由度,计算B来计算拟合优度。你需要帮忙吗?你所拟合的函数的形式是什么?你在使用优化工具箱吗?是的,它是一个曲面。因此,考虑256×256 [r,g]元组。让我像这样重新构建我的问题:我有一个256*256元组原始到另一组元组的一对多映射。我想通过一个平滑函数,而不是离散值,将观察到的元组反向映射到原始元组,这样就不会得到多对一的映射。如果它是一个单一的变量而不是一个元组,那么使用fx=y形式的函数就很容易实现,反之亦然。我需要做一些类似于f[a,b]=[x,y]的事情。我还没用过优化工具箱。