问题标签 [sensor-fusion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
40 浏览

java - 如何将 3D 矢量旋转 3d 角度?

我有一个来自加速度计的 XYZ 值的数组,但我有一个问题,即轴相对于世界坐标正在改变。我也有陀螺仪,通过我正在做的一些计算返回一个以弧度表示的角度。问题是如何将加速度计轴与世界坐标对齐。O已经用谷歌搜索了,但我只能找到我正在制作的无法在android应用程序中重新创建的向量数学或矩阵。

对不起我的英语不好。

0 投票
1 回答
38 浏览

matrix - 使用 UKF 进行定向有没有办法将卡尔曼滤波器中的冗余传感器数据融合到一组状态变量中?

我目前正在构建一个用于定向的 UKF,并希望将卡尔曼滤波器中的冗余传感器数据融合到一组状态变量中,以提高准确性(例如,将重力和磁矢量数据与陀螺仪数据融合)。有没有办法在 filter 中做到这一点,例如在 H 测量矩阵中?感谢您的时间。

0 投票
1 回答
73 浏览

machine-learning - 如何结合两个电磁读数来预测传感器的位置?

我有一个电磁传感器和电磁场发射器。传感器将从发射器读取功率。我想使用读数来预测传感器的位置。

让我简化问题,假设传感器和发射器处于一维世界中,其中只有位置 X(不是 X、Y、Z)并且发射器发射功率作为距离平方的函数。

从下面绘制的图像中,您将看到发射器绘制为圆形,而传感器绘制为十字形。

一个发射器

例如,如果传感器距离发射器 5 米,则传感器上的读数将为 5^2 = 25。因此正确的位置将是 0 或 10,因为发射器位于位置 5。

因此,使用一个发射器,我无法知道传感器的确切位置。我只知道有 50% 的机会是 0,有 50% 的机会是 10。

因此,如果我有两个发射器,如下图所示:

两个发射器

我会得到两个读数。我可以确切地知道传感器在哪里。如果读数是 25 和 16,我知道传感器在 10。

所以从这个事实来看,我想使用 2 个发射器来定位传感器。

现在我已经向您解释了情况,我的问题是这样的:

  1. 发射器具有更复杂的距离函数。这不仅仅是距离的平方。而且它也有噪音。所以我正在尝试使用机器学习对其进行建模。
  2. 发射器的某些区域效果不佳。例如,如果您在 3 到 4 米之外,发射器将始终为您提供 9 的固定读数,而不是从 9 到 16。

  3. 当我用 2 个输入训练机器学习模型时,预测非常准确。例如,如果输入是 25,36,输出将是位置 0。但这意味着在训练之后,我根本无法移动发射器。如果我将其中一个发射器移得更远,预测将立即被打破,因为当右发射器向右移动 1 米时读数将类似于 25,49。预测可以是任何东西,因为模型之前没有见过这个输入对。而且我负担不起在 2 个发射器的所有可能距离上训练模型。

  4. 发射器可能略有不同。差异将在规模上。例如,其中一个发射器可以提供 10% 的更大读数。但是你现在可以忽略这个问题。

我的问题是当发射器被允许移动时如何使模型工作?给我一些想法。

我的一些想法:

  1. 我认为我必须动态地确定两个发射器相对于彼此的位置。但是在知道两个发射器的位置之后,我如何告诉模型呢?
  2. 我尝试单独训练每个发射器,而不是将它们作为输入配对。但这意味着有很多位置会导致冲突,例如当您得到读数 = 25 时,模型将预测 0 和 10 的平均值,因为两者都是读数 = 25 的有效位置。您可能会建议训练预测距离而不是位置,如果没有问题 2是可能的。但是因为有2号问题,3米到4米之间的预测就会出错。该模型将输入为 9,输出将是 3.5 米或 3 到 4 米之间的平均距离。
  3. 使用模型来预测位置概率密度函数,而不是预测位置。例如,当读数为 9 时,模型应预测 3 到 4 米的均匀密度函数。然后你可以以某种方式结合来自 2 个读数的 2 个密度函数。但我认为与一起建模 2 个发射器相比,它不会那么准确,因为密度函数可能非常复杂。我们不能假设正态分布甚至均匀分布。
  4. 基于两个预测必须相同的假设,使用某种优化器分别预测每个发射器的位置。如果预测不同,优化器必须尝试移动预测,以使它们完全位于同一点。也许强化学习的动作是“左移”、“右移”等。

我告诉你我的想法,以便它可以唤起你的一些想法。因为这已经是我最好的了,但它还没有优雅地解决问题。

因此,理想情况下,我希望端到端模型提供 2 个读数,并且即使在发射器移动时也能给出位置。我该怎么做呢?

PS。发射器只允许在使用前移动。在使用或预测期间,模型可以假设发射器将不再移动。这使您有时间在使用前运行发射器位置校准算法。也许这对您有所帮助。

0 投票
1 回答
237 浏览

height - 加速度计、陀螺仪和气压计的传感器融合有什么方法吗?

我想要加速度计、陀螺仪和气压计的传感器融合。到目前为止,我已经使用加速度计和陀螺仪估计了方向。现在我想将加速度计和陀螺仪的数据与气压计结合起来找到垂直高度。

到目前为止,我已经使用加速度计和陀螺仪估计了方向。现在我想将加速度计和陀螺仪的数据与气压计结合起来找到垂直高度。

结果应该以垂直高度的形式出现。

谢谢!

0 投票
0 回答
209 浏览

nlp - 如何结合多个 OCR 工具的结果来获得更好的文本识别

想象一下,您有不同的 OCR 工具来从图像中读取文本,但它们都不能为您提供 100% 准确的输出。然而,结合起来,结果可能非常接近基本事实 - 将文本“融合”在一起以获得良好结果的最佳技术是什么?

例子:

实际文本

OCR 工具 1

OCR 工具 2

OCR 工具 3

什么是融合 OCR 1、2 和 3 以获得实际文本的有前途的算法?

我的第一个想法是创建一个任意长度的“翻转窗口”,比较窗口中的单词并从 3 个工具中为每个位置预测单词 2。

例如窗口大小为 3:

如您所见,该算法不起作用,因为所有三个工具都有不同的位置一候选(5,§5.1:和§)。

当然可以添加一些技巧,比如 Levenshtein distance 来允许一些偏差,但我担心这真的不够健壮。

0 投票
2 回答
95 浏览

gps - 在传感器融合的情况下使用哪个过滤器?

我正在尝试融合 GPS 和加速度计数据以使用运动方程估计位置和速度

x = x' + vdt + 0.5dt^2。

到目前为止,从我读过的内容来看,卡尔曼滤波器似乎是流行的选项 - ( 1 , 2 , 3 )。

然而,当系统是线性时,似乎使用了卡尔曼滤波器。

运动方程不是非线性的吗,因为它是

^2?

他们不应该使用EKF/UKF吗?如果不是,你能解释一下为什么吗?我很困惑。谢谢!

0 投票
1 回答
203 浏览

gps - 我可以为多个 GPS 接收器使用传感器融合并更好地估计位置吗?

我想知道融合多个 GPS 信号以改善我的估计结果是否有意义。例如,这适用于加速度传感器,但该传感器具有高斯白噪声。

安装在同一块板上的 GPS 传感器可能会遭受相同的错误,例如漂移或多路径效应,仅通过融合该传感器的传感器读数无法纠正这些错误。我想这就像在同一方向上的恒定偏移一样,这是不正确的,只是几乎保持不变。

此外,我有不同的传感器可以安装在我的无人机上,甚至是 RKT 传感器。在我看来,将 d-GPS 与 RKT GPS 的读数融合是没有意义的。

如果我错了,请纠正我。

预先感谢您,我希望这个论坛是提出这个问题的正确地点。

0 投票
1 回答
405 浏览

filter - 如何处理卡尔曼滤波器中的异步数据

我正在实现一个融合 3d 位置数据(由 2 种不同的计算机视觉算法提供)的卡尔曼滤波器。我正在使用 9 维状态向量(位置、速度和加速度)对问题进行建模。但是,来自每个传感器的数据不会同时出现。由于我通过考虑接收先前数据和当前数据点之间的时间步长来计算速度,因此两个连续的数据点可能完全不同,但仅相隔很小的时间步长,因此看起来位置已经改变迅速。

我想知道是否有人对解决这个问题的最佳方法有见解或方向——卡尔曼滤波器本身是否能容忍这种行为?或者我应该将在一个时间窗口内收到的所有数据放入一个 bin 中,并在一批数据上不那么频繁地执行更新/预测周期?我看到的在对象跟踪中使用卡尔曼滤波器的资源只使用了一个相机(即同步数据),所以我很难找到与我的用例相关的信息。

很感谢任何形式的帮助!谢谢!

0 投票
1 回答
332 浏览

3d - 如何在我们自己的相机-LiDAR 设置中使用 KITTI 3D 对象检测方法,我们只有一个校准集?

我正在为自动地面车辆进行实时 3D 对象检测。我使用的传感器是单目相机和 VLP16 LiDAR。对于外部相机-LiDAR 标定和传感器融合,我使用了 Autoware camera-LiDAR 标定工具。现在,我想使用 KITTI 3D 对象检测方法来获取图像上的 3D 边界框。然而,KITTI 数据集中的每张图像及其对应的 velodyne 点云都有自己的校准文件。在 autoware 中,我只得到一个用于整个设置的外部校准文件。此外,Autoware 校准参数与 KITTI 数据集的校准参数不同。谁能帮我将自动软件校准参数转换为 KITTI 数据集的参数,或者有没有其他方法可以实现我的目标?

用于相机-LiDAR 设置的 Autoware 校准文件:

一对图像及其对应的 velodyne 点云的 KITTI 校准文件:

0 投票
0 回答
550 浏览

python - 对同一变量进行两次测量的卡尔曼滤波器 (pykalman)

在过去的几天里,我使用 pykalman 通过加速度和速度测量来校正 GPS 坐标,效果很好。现在我想将得到的坐标 (1) 与第二个坐标测量值 (2) 结合起来,该坐标测量值非常精确,但记录率要低得多。我屏蔽了第二次测量中没有值(== 0)的所有元素。

我的问题是,我不知道矩阵的样子。也许卡尔曼滤波器甚至不适合我想做的事情。

非常感谢您提前。