请帮忙。用于跟踪帧中对象的缩合算法步骤是:
初始化一个点并在其周围选择N个随机点,并将权重设置为1 / N.
根据动态模型(恒速模型)传播点。
现在,使用观察模型计算每个粒子的权重。直到现在,还有N粒子。
现在,在重采样步骤中从上面的一组粒子中选取N个粒子?
什么?我们如何从N粒子中挑选N粒子?
答案 0 :(得分:3)
我们如何从N粒子中挑选N粒子?
选择N粒子替换,即根据您指定的重量,可以选择一个粒子多次。
如果你有3个粒子,重量[0.1 0.2 0.7],那么选择第三个粒子两次和第二个粒子一个,因此你选择从3个粒子中获得3个粒子。
有很多技术可以执行此步骤,即重新采样N个粒子。即使我只是尝试为此部分编写代码。
您可以了解重新取样的一些网站是: -
Udacity - 机器人的人工智能 - Link to the course page
关于在线粒子滤波器的IEEE论文教程....作者:Arulampalam,gordon maskell,这是一篇被高度引用的论文,几乎所有人都从这里开始参考粒子滤波器。
本文是讲座教程,他们已经很好地解释了重新采样,只需遵循算法,我认为您的代码将进行重新采样Link
答案 1 :(得分:-1)
我不知道需要多少细节...如果大部分知道,请原谅我。粒子滤波器试图基于观测值y_1,...,y_t来估计后验分布p(x_t | y_1,...,y_t)。 “纠正步骤”依赖于简化:
p(x_t|y_1,...,y_t) = p(y_t|x_t)p(x_t|y_1,...,y_t-1)/p(y_t|y_1,...,y_t-1)
从该后验分布中采样N个点,然后根据右侧进化以接近下一个后部。我们不处理法线,因此我们需要近似不超过2个时刻。然后,从新的后部重新采样下一步的N个点,而不是仅使用旧的点,无论它们在哪里进行过。原因在于众所周知的简并效应 - 除1之外的所有点都倾向于0。
所以我们不是从N粒子中挑选N粒子,而是抛弃旧粒子,并从后验的新估计中重新取样N.