Ask Your Question
6

openni_tracker with "Kinect for Windows"

asked 2012-06-07 05:36:36 -0500

this post is marked as community wiki

This post is a wiki. Anyone with karma >75 is welcome to improve it.

Im trying to start the openni_tracker ( with rosrun openni_tracker openni_tracker) and get this error messages:

[ERROR] [1339081305.103259848]: Find user generator failed: This operation is invalid!

and sometimes this error message

[ERROR] [1339081089.497960592]: InitFromXml failed: Got a timeout while waiting for a network command to complete!

With the debugger I got this output:

user@hpcname:/opt/ros/fuerte/stacks/openni_tracker/bin$ gdb openni_tracker
Reading symbols from /opt/ros/fuerte/stacks/openni_tracker/bin/openni_tracker...done.
(gdb) r
Starting program: /opt/ros/fuerte/stacks/openni_tracker/bin/openni_tracker 
[Thread debugging using libthread_db enabled]
[New Thread 0x7ffff14b0700 (LWP 18459)]
[New Thread 0x7ffff0caf700 (LWP 18460)]
[New Thread 0x7ffff04ae700 (LWP 18461)]
[New Thread 0x7fffefcad700 (LWP 18466)]
[New Thread 0x7fffed0fc700 (LWP 18468)]

[ERROR] [1339081305.103259848]: Find user generator failed: This operation is invalid!

[Thread 0x7fffefcad700 (LWP 18466) exited]
[Thread 0x7ffff04ae700 (LWP 18461) exited]
[Thread 0x7ffff14b0700 (LWP 18459) exited]
[Thread 0x7ffff0caf700 (LWP 18460) exited]
[Thread 0x7fffed0fc700 (LWP 18468) exited]
[Inferior 1 (process 18455) exited with code 022]

(gdb) l
127 /tmp/buildd/ros-fuerte-openni-tracker-0.1.0/debian/ros-fuerte-openni-tracker/opt/ros/fuerte/stacks/openni_tracker/src/openni_tracker.cpp: File or dictionary not found.
    in /tmp/buildd/ros-fuerte-openni-tracker-0.1.0/debian/ros-fuerte-openni-tracker/opt/ros/fuerte/stacks/openni_tracker/src/openni_tracker.cpp

Update:

At begin, I´ve changed the openni drivers to adapt the "Kinect for Windows" and I found out, that the NITE drivers are not compatible anymore with the openni drivers. That is the reason why I got this openni_tracker errors in my case.

So, I changed my ROS-System again to Electric and removed the adapted openni kinect drivers from my system. There the Kinect for Xbox works fine again with the openni_tracker.

Conclusion for now:

It is possbile to adapt the "K4W" in ROS to get the video data stream. As soon as the openni_tracker should be used there are some compatibility errors under Electric and Fuerte.

Best regards

edit retag flag offensive close merge delete

6 Answers

Sort by » oldest newest most voted
1

answered 2012-07-13 05:36:47 -0500

I suppose a bug in openni. I tested NiViewer. The frist start is ok. Then I exit the NiViewer and start it again. So I get this error: "Open failed: Got a timeout while waiting for a network command to complete!". Sometimes it is possible to restart once, so I get this error after the 3rd start.

After a reboot I have again one or two successful starts.

edit flag offensive delete link more
1

answered 2012-06-21 05:43:42 -0500

this post is marked as community wiki

This post is a wiki. Anyone with karma >75 is welcome to improve it.

I can confirm that the Problem is also given for the Xition Pro Live camera. My fresh installed Ubuntu 12.04 lts 64 bit does complain about dummy threads which do not have any attributes, e.g.:

Exception AttributeError: AttributeError("'_DummyThread' object has no attribute '_Thread__block'",) in <module 'threading'="" from="" '="" usr="" lib="" python2.7="" threading.pyc'=""> ignored

Further does the driver not find/load the xition:

  1. device on bus 002:07 is a Xtion Pro (600) from ASUS (1d27) with serial id '' [ INFO] [1340293305.271033061]: Searching for device with index = 1 [ INFO] [1340293309.278407567]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /tmp/buildd/ros-fuerte-openni-camera-1.8.0/debian/ros-fuerte-openni-camera/opt/ros/fuerte/stacks/openni_camera/src/openni_device.cpp @ 99 : creating depth generator failed. Reason: Got a timeout while waiting for a network command to complete!

Edit 1:

The System:

I am using Ubuntu 12.04 LTS 64Bit (fresh installation) and installed fuerte. The machine itself is an Intel® Core™ i7 CPU Q 820 @ 1.73GHz × 8 with 8GB-Ram.

The same machine was already in use with diamond and electirc and worked well. The Xition PRO Live was also used a lot with the former ROS versions.

The lsusb log is:

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 003: ID 0765:5001 X-Rite, Inc. 
Bus 001 Device 004: ID 046d:c526 Logitech, Inc. Nano Receiver
Bus 001 Device 005: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor
Bus 001 Device 006: ID 0a5c:217f Broadcom Corp. Bluetooth Controller
Bus 001 Device 007: ID 17ef:480f Lenovo Integrated Webcam [R5U877]
Bus 002 Device 003: ID 17ef:1003 Lenovo Integrated Smart Card Reader
Bus 002 Device 004: ID 056a:00e2 Wacom Co., Ltd 
Bus 002 Device 007: ID 1d27:0600

The Problem:

Using fuerte and the command:

roslaunch openni_launch openni.launch

the sensor is not running correctly. Instead the system produces the following log:

    SUMMARY
========

PARAMETERS
 * /camera/depth/rectify_depth/interpolation
 * /camera/depth_registered/rectify_depth/interpolation
 * /camera/disparity_depth/max_range
 * /camera/disparity_depth/min_range
 * /camera/disparity_depth_registered/max_range
 * /camera/disparity_depth_registered/min_range
 * /camera/driver/depth_camera_info_url
 * /camera/driver/depth_frame_id
 * /camera/driver/depth_registration
 * /camera/driver/device_id
 * /camera/driver/rgb_camera_info_url
 * /camera/driver/rgb_frame_id
 * /rosdistro
 * /rosversion

NODES
  /camera/depth/
    metric (nodelet/nodelet)
    metric_rect (nodelet/nodelet)
    points (nodelet/nodelet)
    rectify_depth (nodelet/nodelet)
  /camera/rgb/
    debayer (nodelet/nodelet)
    rectify_color (nodelet/nodelet)
    rectify_mono (nodelet/nodelet)
  /
    camera_base_link (tf/static_transform_publisher)
    camera_base_link1 (tf/static_transform_publisher)
    camera_base_link2 (tf/static_transform_publisher)
    camera_base_link3 (tf/static_transform_publisher)
    camera_nodelet_manager (nodelet/nodelet)
  /camera/
    disparity_depth (nodelet/nodelet)
    disparity_depth_registered (nodelet/nodelet)
    driver (nodelet/nodelet)
    points_xyzrgb_depth_rgb (nodelet/nodelet)
    register_depth_rgb (nodelet/nodelet)
  /camera/ir ...
(more)
edit flag offensive delete link more

Comments

Hi, could you provide further details? What commands trigger these errors, etc. Providing a log from lsusb command can be helpful as well.

Victor Gonzalez-Pacheco gravatar imageVictor Gonzalez-Pacheco ( 2012-06-21 07:25:31 -0500 )edit

Hi, I don't see any kinect in the output of your lsusb. It should be anything similar to this: http://answers.ros.org/question/36921/openni_tracker-timeout-error-in-fuerte-ubuntu-1204/ (look at the end of the question).

Victor Gonzalez-Pacheco gravatar imageVictor Gonzalez-Pacheco ( 2012-06-22 05:13:54 -0500 )edit

Well the Xition pro live has no human readable name in the LSUSB log. But the device is still there "Bus 002 Device 007: ID 1d27:0600"

tlinder gravatar imagetlinder ( 2012-06-22 07:10:41 -0500 )edit

OK, can you test if you have the same error when you execute rosrun openni_tracker openni_tracker? Anyway, I've created a bug report. Let's hope it's solved soon.

Victor Gonzalez-Pacheco gravatar imageVictor Gonzalez-Pacheco ( 2012-06-22 16:41:08 -0500 )edit

I suppose a bug in openni.

MichaelKorn gravatar imageMichaelKorn ( 2012-07-13 05:31:08 -0500 )edit
1

answered 2012-06-22 05:14:34 -0500

this post is marked as community wiki

This post is a wiki. Anyone with karma >75 is welcome to improve it.

Since it seems that this is a Fuerte issue, I've posted a ticket in the bug tracker: https://kforge.ros.org/openni/trac/ticket/53

edit flag offensive delete link more
1

answered 2012-06-11 13:00:13 -0500

this post is marked as community wiki

This post is a wiki. Anyone with karma >75 is welcome to improve it.

I'm also using Fuerte, fresh install. I'm getting the exact same error message. Does this stack not work with Fuerte?

edit flag offensive delete link more
0

answered 2012-06-21 01:03:42 -0500

this post is marked as community wiki

This post is a wiki. Anyone with karma >75 is welcome to improve it.

Hi,

I'm having a the same error in Fuerte with ubuntu 12.04 LTS fresh install. The only difference respect your configuration is that I'm running the Ubuntu on a MacBook Pro machine.

I've posted my question here: http://answers.ros.org/question/36921/openni_tracker-timeout-error-in-fuerte-ubuntu-1204/

Did you manage to solve it?

edit flag offensive delete link more
0

answered 2012-06-09 01:56:26 -0500

GermanUser gravatar image

Well, Im launching the openni_launch to open a connection with the kinect and get this output:

[ INFO] [1339241377.238992262]: Number devices connected: 1
[ INFO] [1339241377.239220922]: 1. device on bus 002:06 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1339241377.240440489]: Searching for device with index = 1
[ INFO] [1339241377.309348551]: Opened 'Microsoft Kinect Camera' on bus 2:6 with serial number '0000000000000000'
[ INFO] [1339241377.337992905]: rgb_frame_id = '/camera_rgb_optical_frame' 
[ INFO] [1339241377.338058556]: depth_frame_id = '/camera_depth_optical_frame' 
[ WARN] [1339241377.343470563]: Camera calibration file /home/test/.ros/camera_info/rgb_0000000000000000.yaml not found.
[ WARN] [1339241377.343543128]: Using default parameters for RGB camera calibration.
[ WARN] [1339241377.343589572]: Camera calibration file /home/test/.ros/camera_info/depth_0000000000000000.yaml not found.
[ WARN] [1339241377.343626029]: Using default parameters for IR camera calibration.

This are my frames: image description

And I changed in the source of openni_tracker.cpp this lines:

from:

string frame_id("openni_depth_frame");
pnh.getParam("camera_frame_id", frame_id);

to:

string frame_id("camera_depth_optical_frame");
pnh.getParam("camera_frame_id", frame_id);

Here is the output from rosnode and rosparam after running openni_tracker.

I get always the same error. What could this be?

test@user:~/ros_workspace$ rosrun openni_tracker openni_tracker 
[ERROR] [1339241442.249295666]: Find user generator failed: This operation is invalid!

test@user:~/ros_workspace$ rosrun openni_tracker openni_tracker 
[ERROR] [1339241445.211882042]: Find user generator failed: This operation is invalid!
edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

3 followers

Stats

Asked: 2012-06-07 05:36:36 -0500

Seen: 1,713 times

Last updated: Jul 13 '12