Closed giuliavezzani closed 7 years ago
Our module reconstructs a model at each time t
.
Each model consists of 11 parameters: 5 for shape (including 3 for dimensions) and 6 for poses.
We also can use the information about bounding box of the object: center and corners.
A possible approach in order to:
could be the following.
The 3 parameters of the superquadric representing the dimensions are used for detecting wrong models. If the dimensions change too much (to be defined) between two consecutive reconstructions, t
and t-1
, (or with respect to average values computed in a moving window), the model should be rejected. Otherwise, the model should be considered ok, and, possibly, used to improve a "average" model computed on a moving window.
The 6 parameters representing the pose are compared with the information about the current bounding box (superq_pose(t)- bb_pose(t))
and with the estimation of the previous time instant (superq_pose(t)- superq_pose(t-1))
(or of a average estimate).
if (superq_pose(t)- bb_pos(t))
< threshold
, (1)
the superq_pose(t)
can be considered correct, otherwise it should be rejected
if (superq_pose(t)- superq_pose(t-1)
) > threshold
(2)
and
(superq_pose(t)- bb_pose(t))
< threshold
(3)
the superq_pose(t)
can be considered correct, because the object should have moved.
Otherwise, if (2) is satisfied and (3) is not satisified, this means that the superq_pose(t) is wrong.
Note:
t-1
, we can alternatively talk about an average model on a moving windowsuperq_pose(t)- superq_pose(t-1)
) < threshold
,
because an object can disappear from the scene and then appear again.To be reported in Redmine.
Instead of improving the point cloud filtering, we can directly work on filtering the reconstructed model.