小编Joh*_*rto的帖子

找到一个点的"运动方向"(角度)

我正在开展一个非常酷的项目,我正在收集有关光标移动的数据,但我遇到了一个问题,我认为我可以使用一些帮助.我不断阅读有关光标x和y位置的数据(以及其他相关数据),一旦光标超过y维度的某个阈值,我需要计算运动方向(角度).让我用一个图来说明我画的:

在此输入图像描述

往往会发生的是光标以略微的直线移动,但随后朝向运动的末端弯曲.我需要计算θ,即蓝色矢量相对于正x轴的角度.我想出的想法是使用最后2个样本来很大程度上确定移动方向是什么,否则如果我使用太多样本,我会扭曲实际角度.为了给出一个极端的案例,让我跟进另一张图片:

在此输入图像描述

这里每个点代表一个样本.请注意,如果我使用BOTH点,我想要的真实角度将是错误的(同样,我需要找到光标最后移动的方向,这是在行尾绘制的矢量).我不希望这个案子出现太多,但想知道是否有办法解决它,如果它.

最后,请注意,这些运动可以在第一或第二象限中发生,如果这有所不同.

我真的很感激这里的任何帮助.我用C++编写代码,但我想我可以翻译任何答案.谢谢.

c++ algorithm math matlab angle

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

在Matlab中使用nlinfit?

我在理解和应用nlinfitMatlab中的函数时遇到了麻烦.所以,让我说我给了矢量

x = [1, 2, 3, 4, 5] 
y = [2.3, 2.1, 1.7, .95, .70] 
Run Code Online (Sandbox Code Playgroud)

并且我被要求将这些数据拟合成指数形式(我不知道这些数字是否可行,我将它们编成)其中y = A*e^(Bx) + C(A/B/C是常数).

我的理解是nlinfit需要4个参数,两个向量,modelfunction在这种情况下应该是我上面的等式,然后beta0,我根本不理解.我的问题是你如何实现modelfunctionin nlinft,以及你如何找到beta0(当只使用2个矢量你想要绘制/拟合时)以及如何实现它?有人可以给我一个例子,以便我可以适用于任何合适的功能吗?我怀疑将来我会经常使用它,并且真的想学习它.

matlab

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

理解Matlab中的回归函数

我无法理解回归在Matlab中是如何工作的.

假设我有2个阵列(X和Y),每个阵列都有相同的大小(假设它们每个都是1x10).根据我的理解,回归函数应该帮助我找到X和Y之间的关系(我想通过绘制的数据绘制最佳拟合线),然后给我斜率.当我在Matlab中尝试这个时,我得到一个错误,说2个变量有不同的行数....但是他们没有,是吗?

如果有人能帮助我理解函数及其参数是如何工作的,我会非常感激,只是为了让我进入基本水平.

以下是一些代码示例:

x = [1,2,3,4,5,6,7,8,9,10];
y = [1,2,3,4,5,6,7,8,9,10]; %defining the arrays, they are linearly related
X=[x ones(size(x,1),1)]; %adding the (necessary?) column of ones
regress(y,X) % using the regress function for a relationship
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

??? Error using ==> regress at 64
The number of rows in Y must equal the number of rows in X.
Run Code Online (Sandbox Code Playgroud)

matlab linear-regression

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

标签 统计

matlab ×3

algorithm ×1

angle ×1

c++ ×1

linear-regression ×1

math ×1