Use freenect_stack to get 3D point from depth_frame

asked 2016-02-09 10:35:14 -0600

user23fj239 gravatar image

updated 2016-02-10 09:16:33 -0600

I want to create a 3D point from the depth frame in camera coordinates and use therefore the freenect_stack package. Do I have to do the multiplication with the intrinsic matrix manuelly (known from calibration)? I spotted a topic/node(?) which is called depth points . I subscribed via see output below: but what does the numbers mean?
image description

rostopic echo  /camera/depth/points
header: 
  seq: 0
  stamp: 
    secs: 1455039392
    nsecs: 701372390
  frame_id: camera_depth_optical_frame
height: 480
width: 640
fields: 
  - 
    name: x
    offset: 0
    datatype: 7
    count: 1
  - 
    name: y
    offset: 4
    datatype: 7
    count: 1
  - 
    name: z
    offset: 8
    datatype: 7
    count: 1
is_bigendian: False
point_step: 16
row_step: 10240
data: [75, 225, 133, 191, 53, 128, 72, 191, 185, 30, 245, 63, 0, 0, 0, 0, 184, 38, 134, 191, 62, 140, 73, 191, 103, 102, 246, 63, 0, 0, 0, 0, 45, 185, 133, 191, 62, 140, 73, 191, 103, 102, 246, 63, 0, 0, 0, 0, 0, 0, 192, 127, 0, 0, 192, 127, 0, 0, 192, 127, 0, 0, 0, 0, 0,


I cannot make sense of the data. another example of the last points:

  ...   , 0, 0, 192, 127, 0, 0, 192, 127, 0, 0, 0, 0]
  is_dense: False

These are four points but two of them are 0,0,0. This cant be ok?

edit retag flag offensive close merge delete