ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

ROS Standard SI Units

asked 2018-08-13 09:57:04 -0500

th6262 gravatar image

updated 2018-08-13 09:58:02 -0500

Hello everyone!

I'm currently using this code, to extract clusters from a Point Cloud and track them via a Kalman Filter with constant velocity: Github Source

Right now I'm trying to publish the Position and Velocity Values above the segmented Clusters. I'm doing it by using:

KF0.statePost.at<float>(0)
KF0.statePost.at<float>(1)
KF0.statePost.at<float>(2) 
KF0.statePost.at<float>(3)

(for all the Kalman Filters KFi I've initialized)

0 and 1 give me the correct X and Y Position, so 2 and 3 should be the corresponding velocity, however I do not know what the Units are. It cant be m/s because its 10^(-6) and I can't think of any reasonable Unit. Maybe its an angle?

Velocity Values

I hope someone can help me, thanks in Advanced. Best regards.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2018-08-13 13:41:31 -0500

Bogdar_ gravatar image

You should give further explanation if you want to have greater opportunities of other users to answer, but it looks to me more an opencv2 issue than ROS so the tittle of your question is not well formulated.

From here https://www.myzhar.com/blog/tutorials... and from the fact that you are using openCV it is likely that units are related to pixels. On the attached link it is stated that speed units are pixels per second, google further into the OpenCV version API documentation you are using in order to verify this.

edit flag offensive delete link more

Comments

Thanks for your answer, I've read about the pixel/s unit, however this wouldn't apply here because it would be way too low (x10^-6) ! Additionally I'm only working with point clouds so I'm wondering where the pixel information would come from. Open CV is only used for the kalman filter library

th6262 gravatar image th6262  ( 2018-08-13 14:02:47 -0500 )edit
1

For quicker response, edit your question explaining with further details about your code else other users have to review your whole code and you have better knowledge of the conflicting parts.

Bogdar_ gravatar image Bogdar_  ( 2018-08-13 14:23:49 -0500 )edit
1

Can it be that they are just 0 and you are not tracking clusters velocities? Do you have any other log in which they have not been 0? For more help work on your question please.

Bogdar_ gravatar image Bogdar_  ( 2018-08-13 14:29:36 -0500 )edit

I will edit the question soon, thank you! They are not zero but something like in the screen shot around 2.5e-6 to 8.5e-6. Once a detected cluster slows, the value goes down as well until a complete standstill where it reaches zero.

th6262 gravatar image th6262  ( 2018-08-13 15:11:30 -0500 )edit

Now it can't be meters per second nor pixel per second because it would be way too low still ! From the source code I couldn't figure out what they could be. Given a continuous input of x and y values of cluster centers , do you know of a way to calculate the velocity between 2 timesteps so to say?

th6262 gravatar image th6262  ( 2018-08-13 15:13:54 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2018-08-13 09:57:04 -0500

Seen: 289 times

Last updated: Aug 13 '18