Asus Xtion Pro Live: Hardware Registration and Syncronization

890 views
Skip to first unread message

Ivan Dryanovski

unread,
Aug 31, 2011, 5:56:50 PM8/31/11
to openn...@googlegroups.com
Hi everyone,

I just received an Xtion Pro Live. I would like to know if it supports:

1) rgb and depth image synchronization
2) rgb to depth onboard registration.

Which drivers do you recommend I use (in Linux)? I am currently using
the latest ros-electric-openni-kinect drivers. When I edit the
/etc/primesence/GlobalDefualts.ini file, I see the option

; Registration. 0 - Off (default), 1 - On
;Registration=1

If I set Registration=1, the openni driver fails with the following message:

[ INFO] [1314826403.885088888]: No matching device found.... waiting
for devices. Reason:
openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const
xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const
xn::NodeInfo&) @
/tmp/buildd/ros-electric-openni-kinect-0.3.0/debian/ros-electric-openni-kinect/opt/ros/electric/stacks/openni_kinect/openni_camera/src/openni_device.cpp
@ 61 : creating depth generator failed. Reason: Device Protocol: Bad
Parameter sent!

Thank you for your help,

Ivan Dryanovski

Roee Shenberg

unread,
Aug 31, 2011, 6:18:36 PM8/31/11
to openn...@googlegroups.com
Both features are supported. In the OpenNI API, look for FrameSync (1st feature) and AlternativeViewPoint (2nd). I don't recommend using the .ini file. You can either activate the features programmatically, or using the openni xml file (I've always done it programmatically, so I can't help you with the XML syntax, but it shouldn't be too hard).

Hope that helps,
Roee


--
You received this message because you are subscribed to the Google Groups "OpenNI" group.
To post to this group, send email to openn...@googlegroups.com.
To unsubscribe from this group, send email to openni-dev+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/openni-dev?hl=en.


Ivan Dryanovski

unread,
Aug 31, 2011, 6:26:22 PM8/31/11
to openn...@googlegroups.com
Hi Roee,

Thanks for the reply.

> Both features are supported. In the OpenNI API, look for FrameSync (1st
> feature) and AlternativeViewPoint (2nd).

I am currently using the ROS driver - I will ask on the ROS mailing
list if these are handled properly by the driver.

> I don't recommend using the .ini
> file. You can either activate the features programmatically, or using the
> openni xml file (I've always done it programmatically, so I can't help you
> with the XML syntax, but it shouldn't be too hard).

Where is the openni xml file located? I can find several xml files,
including moduls.xml, Samle-Scene.xml, Sample-User.xml etc.

Ivan

Roee Shenberg

unread,
Aug 31, 2011, 8:41:21 PM8/31/11
to openn...@googlegroups.com
Hi Ivan,

I haven't used the ROS driver, so I looked up their documentation on the subject - See http://www.ros.org/wiki/openni_camera

To sum things up - registration can be activated using rosrun dynamic_reconfigure reconfigure_gui then selecting /openni_node. However, it states that only the Primesense hardware supports framesync, so you're out of luck there (see part 6 in the above page for details)...

Cheers,
Roee



--

Ivan Dryanovski

unread,
Aug 31, 2011, 9:44:00 PM8/31/11
to openn...@googlegroups.com
On Wed, Aug 31, 2011 at 8:41 PM, Roee Shenberg <shen...@gmail.com> wrote:
> Hi Ivan,
> I haven't used the ROS driver, so I looked up their documentation on the
> subject - See http://www.ros.org/wiki/openni_camera
> To sum things up - registration can be activated using rosrun
> dynamic_reconfigure reconfigure_gui then selecting /openni_node.

I followed the dynamic reconfigure callback and found that it actually
does this when you seect registration:

depth_generator_.GetAlternativeViewPointCap ().SetViewPoint (image_generator_);

where depth_generator_ is a xn::DepthGenerator.

However, this does not really tell me whether the registration is done
in software or in hardware. When using the Kinect, this option was
also available, and it did in fact produce registered images. Since
the Kinect does not support hardware registration, I'm assuming that
the registration was done in software.

So again, the questions remain:

- does the xtion pro live support hardware registration
- if yes, how do I ensure (through config files or the openni api)
that registration is done in hardware, and not software.

> states that only the Primesense hardware supports framesync, so you're out
> of luck there (see part 6 in the above page for details)...

I'm not sure if that's up to date. I think that wiki is from before
the Live Pro came out.

Ivan Dryanovski

unread,
Aug 31, 2011, 9:50:03 PM8/31/11
to openn...@googlegroups.com
>  - does the xtion pro live support hardware registration
>  - if yes, how do I ensure (through config files or the openni api)
> that registration is done in hardware, and not software.

I think I found the answer to the second question:

// RegistrationType should be 2 (software) for Kinect, 1 (hardware) for PS
SetIntProperty ("RegistrationType", 2);

Sergey Deriglazov

unread,
Sep 3, 2011, 12:52:24 PM9/3/11
to openn...@googlegroups.com
Ivan, where did you buy it?

Stephen Vidas

unread,
Nov 27, 2012, 11:11:15 PM11/27/12
to openn...@googlegroups.com
Hey Ivan

Did you ever find out whether the ASUS Xtion Pro LIVE actually supports frame sync? And if so, how it can be done?

In linux I tried setting FrameSync=1 in /etc/openni/GlobalDefaults.ini but I still noticed a drift in the internal timestamps between depth and RGB..

Steve

Ivan Dryanovski

unread,
Nov 28, 2012, 12:00:43 AM11/28/12
to openn...@googlegroups.com
On 27-Nov-12 23:11, Stephen Vidas wrote:
> Hey Ivan
>
> Did you ever find out whether the ASUS Xtion Pro LIVE actually supports
> frame sync? And if so, how it can be done?
>
> In linux I tried setting *FrameSync=1* in
> */etc/openni/GlobalDefaults.ini* but I still noticed a drift in the
> internal timestamps between depth and RGB..

Hi,

Unfortunately, I have not been able to verify whether the Asus supports
hardware frame synchronization.

Cheers,

Ivan



Stephen Vidas

unread,
Nov 30, 2012, 8:21:59 PM11/30/12
to openn...@googlegroups.com
Thanks Ivan

From my own experiments and everyone I've spoken with it seems like there is no current way to enforce hard-synchronization. However, I have found that there is a maximum discrepancy of about 2ms between sensors, as opposed to about 17ms with the Kinect. Not sure what on the sensor manages to ensure this..

Steve 


--
You received this message because you are subscribed to the Google Groups "OpenNI" group.
To post to this group, send email to openn...@googlegroups.com.
To unsubscribe from this group, send email to openni-dev+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages