I’m getting the x,y,z values for three points as follows:
x : -0.357200 y: -0.205010 z: 0.940000
x : -0.310266 y: -0.200437 z: 0.961000
x : -0.299289 y: -0.140374 z: 0.927000
and the point cloud :
Why are some of the values negative?
z: 0.961000 mean it is 0.961 meter away towards the
Also, how is the center of these
x,y,z axes computed?
The XYZ readings from the camera are in the reference frame of the camera. @FooBar is correct about the X/Y values: they are planar about the center of the camera, just like the OpenGL viewing window. I don't know the maximum range of the point-cloud data, but my suspicion is that the maximum z value is 1. (This could change, however, depending if you have a multi-camera setup, but I don't have the experimental dtaa to prove one way or the other, and that is outside the scope of the original question.)
RViz is built on OpenGL (though the robotics frames are not necessarily following the same standard, just that they share many similar design choices), so I suggest you look up the documentation for versions 4.X. Here is a great explanation of OpenGL coordinate frames, not that you needed to go into that much detail, but it helped me a lot.
Back to ROS: If you want to get the coordinates in the world frame rather than the local camera frame, there are 2 things you need.
You can then create a new frame transform object with no rotation offset from the camera (Unit quaternion with 0 rotations). You can then take your camera frame and the newly computed frame and then extract the frame transform
Since I don't know what language you are using, I refer will refer you to these links regarding frame transforms.
https://wiki.ros.org/tf https://wiki.ros.org/tf/Overview/Transformations https://docs.ros.org/kinetic/api/tf/html/c++/index.html https://answers.ros.org/question/210572/what-is-a-frame/
Answered by robotsfoundme on January 2, 2022
These values are relative to the camera. Z is always positive as the camera can't see what is behind. X and Y can be positive or negative depending on if an object is left/right or higher/lower than the camera's viewing direction.
Answered by FooTheBar on January 2, 2022
0 Asked on October 3, 2021 by lzx071021
2 Asked on October 3, 2021 by john-rowlay
1 Asked on October 3, 2021 by q-than-a
1 Asked on October 3, 2021 by buhtz
2 Asked on October 3, 2021 by thinwybk
1 Asked on October 3, 2021 by firion
3 Asked on October 3, 2021 by mahir-ahmed-al
2 Asked on October 3, 2021 by mrsing
3 Asked on October 3, 2021 by tomrader
1 Asked on October 3, 2021 by anthares
1 Asked on October 3, 2021 by praveen-kumar-selvaraj
1 Asked on October 3, 2021 by adiego73
1 Asked on October 3, 2021 by moazzam-salman
1 Asked on October 3, 2021 by f-t
1 Asked on October 3, 2021 by anton-kim
1 Asked on October 3, 2021 by smarzo
Get help from others!