ros-drivers / openni_camera Goto Github PK
View Code? Open in Web Editor NEWA ROS driver for OpenNI depth (+ RGB) cameras.
A ROS driver for OpenNI depth (+ RGB) cameras.
Experience with Bullet Time suggests that relative depths are correct - i.e. moving the checkerboard .5m further away gives a .5m difference in the detected depth. However there may be an offset required to get the true absolute depth. If there is an offset, come up with a calibration procedure for it.
Can apply by either:
Update values of raw depth image
Change IR camera frame relative to RGB camera - but this may screw up the intrinsic calibration.
Could evaluate by:
Get very high confidence intrinsic calibration of IR camera.
Get views of checkerboard at known relative distances.
Make sure both depth readings and checkerboard extrinsics give correct relative distances.
Compare both measures to get the absolute offset.
Also would be nice to nail down IR-depth image offset once and for all.
Migrated this issue over from: https://kforge.ros.org/openni/trac/ticket/34
Reported on ROS buildfarm (thanks to ros/rosdistro#14554 (comment) by @mikaelarguedas):
openni_device.cpp:59, GNU C Compiler 4 (gcc), Priority: Normal
call to ‘xn::Context::CreateProductionTree’ declared with attribute warning: This function is deprecated: Please use other overload
openni_device.cpp:63, GNU C Compiler 4 (gcc), Priority: Normal
call to ‘xn::Context::CreateProductionTree’ declared with attribute warning: This function is deprecated: Please use other overload
openni_device.cpp:67, GNU C Compiler 4 (gcc), Priority: Normal
call to ‘xn::Context::CreateProductionTree’ declared with attribute warning: This function is deprecated: Please use other overload
openni_device.cpp:97, GNU C Compiler 4 (gcc), Priority: Normal
call to ‘xn::Context::CreateProductionTree’ declared with attribute warning: This function is deprecated: Please use other overload
openni_device.cpp:101, GNU C Compiler 4 (gcc), Priority: Normal
call to ‘xn::Context::CreateProductionTree’ declared with attribute warning: This function is deprecated: Please use other overload
openni_device.cpp:663, GNU C Compiler 4 (gcc), Priority: Normal
call to ‘xn::Context::CreateProductionTree’ declared with attribute warning: This function is deprecated: Please use other overload
openni_device_oni.cpp:54, GNU C Compiler 4 (gcc), Priority: Normal
call to ‘xn::Context::OpenFileRecording’ declared with attribute warning: This function is deprecated: Use other overload!
openni_driver.cpp:229, GNU C Compiler 4 (gcc), Priority: Normal
call to ‘xn::Context::Shutdown’ declared with attribute warning: This function is deprecated: You may use Release() instead, or count on dtor
openni_driver.cpp:239, GNU C Compiler 4 (gcc), Priority: Normal
call to ‘xn::Context::CreateProductionTree’ declared with attribute warning: This function is deprecated: Please use other overload
This is something I haven't seen before, and seems to have only started happening recently. Basically after running a kinect for a while, the rgb image starts appearing all black (all zeros, not NaNs like in #13, also this is on a 64bit machine). The point cloud still looks perfect, but the color information is all gone. It then flickers with a single (or partial) frame every few seconds. I'm running on Ubuntu 12.04 64bit / Hydro / openni_camera version 1.9.2 / libopenni-sensor-primesense0 5.1.0.41-2+precise1.
Bag file here: http://media.jbohren.com/bad_kinect_rgb.bag
When I calibrate my kinects (using the ros calibrator.py), it is saving the files at :
~/.ros/camera_info/rgb_0000000000000000.yml
~/.ros/camera_info/depth_0000000000000000.yml
But the openni driver does not populates
/camera/driver/rgb_camera_info_url
/camera/driver/depth_camera_info_url
$ rosparam get /camera/driver/rgb_camera_info_url $ ''
Even though rgb_info_manager_->isCalibrated() is true.
I opened a pull request for the camera_info_manager, but meanwhile we can add this patch :
// The default location for calibration files
const std::string default_camera_info_url = "file://${ROS_HOME}/camera_info/${NAME}.yaml";
// Checking if rgb_info_url has been correctly populated :
if(rgb_info_url.empty())
{
rgb_info_url = rgb_info_manager_->resolveURL(default_camera_info_url,rgb_name);
param_nh.setParam("rgb_camera_info_url",rgb_info_url);
}
if(ir_info_url.empty())
{
ir_info_url = ir_info_manager_->resolveURL(default_camera_info_url,ir_name);
param_nh.setParam("depth_camera_info_url",ir_info_url);
}
below :
std::string rgb_info_url, ir_info_url;
param_nh.param("rgb_camera_info_url", rgb_info_url, std::string());
param_nh.param("depth_camera_info_url", ir_info_url, std::string());
/////...
// Load the saved calibrations, if they exist
rgb_info_manager_ = boost::make_shared<camera_info_manager::CameraInfoManager>(rgb_nh, rgb_name, rgb_info_url);
ir_info_manager_ = boost::make_shared<camera_info_manager::CameraInfoManager>(ir_nh, ir_name, ir_info_url);
if (!rgb_info_manager_->isCalibrated())
NODELET_WARN("Using default parameters for RGB camera calibration.");
if (!ir_info_manager_->isCalibrated())
NODELET_WARN("Using default parameters for IR camera calibration.");
And then 👍
rosparam get /camera/driver/rgb_camera_info_url
file:///home/hoarau/.ros/camera_info/rgb_0000000000000000.yaml
Issue by piyushk
Tuesday Jul 30, 2013 at 16:36 GMT
Originally opened as ros-drivers/openni_launch#5
I have moved launch files to a separate rgbd_launch package. You can use this rosinstall file to test the new organization.
If things look alright to you, I will first release rgbd_launch, and then submit a pull request for openni_launch and freenect_launch once rgbd_launch makes it to shadow-fixed.
Additionally, there are a number of examples in freenect_launch that you can test out. See the documentation for reference: http://ros.org/wiki/freenect_launch
Issue by arunavanag591
Thursday Nov 12, 2015 at 05:31 GMT
Originally opened as ros-drivers/openni_launch#22
After copying the source file to my catkin_ws and then building the package ( catkin_make ). I am able to launch using the roslaunch openni_launch openni.launch, but in rviz i can see no data. When i roslaunch the openni , it throws a bunch of errors in between. I don't know what is going on?
So it can appear in the Diagnostics stream like all the other cameras and sensors.
(Migrated from kforge: https://kforge.ros.org/openni/trac/ticket/44)
Hi,
could you please push 1.9.4 into ROS indigo and jade? It only fixes the dependency issue and should be save to push.
Thanks!
Jochen
.kinect1.0 for xbox360
Ubuntu16.04 LTS, ros-kinetic-desktop-full
I tried to excute openni.launch and get these errors:
How to sort the problem?
I saw other links too. but i am unable to catch the error
ap4isr@stop-01:~$ roslaunch openni_launch openni.launch
... logging to /home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/roslaunch-stop-01-14616.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://stop-01:43551/
SUMMARY
========
PARAMETERS
* /camera/camera_nodelet_manager/num_worker_threads: 4
* /camera/depth_rectify_depth/interpolation: 0
* /camera/depth_registered_rectify_depth/interpolation: 0
* /camera/disparity_depth/max_range: 4.0
* /camera/disparity_depth/min_range: 0.5
* /camera/disparity_registered_hw/max_range: 4.0
* /camera/disparity_registered_hw/min_range: 0.5
* /camera/disparity_registered_sw/max_range: 4.0
* /camera/disparity_registered_sw/min_range: 0.5
* /camera/driver/depth_camera_info_url:
* /camera/driver/depth_frame_id: camera_depth_opti...
* /camera/driver/depth_registration: False
* /camera/driver/device_id: #1
* /camera/driver/rgb_camera_info_url:
* /camera/driver/rgb_frame_id: camera_rgb_optica...
* /rosdistro: kinetic
* /rosversion: 1.12.7
NODES
/camera/
camera_nodelet_manager (nodelet/nodelet)
depth_metric (nodelet/nodelet)
depth_metric_rect (nodelet/nodelet)
depth_points (nodelet/nodelet)
depth_rectify_depth (nodelet/nodelet)
depth_registered_hw_metric_rect (nodelet/nodelet)
depth_registered_metric (nodelet/nodelet)
depth_registered_rectify_depth (nodelet/nodelet)
depth_registered_sw_metric_rect (nodelet/nodelet)
disparity_depth (nodelet/nodelet)
disparity_registered_hw (nodelet/nodelet)
disparity_registered_sw (nodelet/nodelet)
driver (nodelet/nodelet)
ir_rectify_ir (nodelet/nodelet)
points_xyzrgb_hw_registered (nodelet/nodelet)
points_xyzrgb_sw_registered (nodelet/nodelet)
register_depth_rgb (nodelet/nodelet)
rgb_debayer (nodelet/nodelet)
rgb_rectify_color (nodelet/nodelet)
rgb_rectify_mono (nodelet/nodelet)
/
camera_base_link (tf2_ros/static_transform_publisher)
camera_base_link1 (tf2_ros/static_transform_publisher)
camera_base_link2 (tf2_ros/static_transform_publisher)
camera_base_link3 (tf2_ros/static_transform_publisher)
ROS_MASTER_URI=http://localhost:11311
core service [/rosout] found
process[camera/camera_nodelet_manager-1]: started with pid [14634]
process[camera/driver-2]: started with pid [14635]
process[camera/rgb_debayer-3]: started with pid [14636]
process[camera/rgb_rectify_mono-4]: started with pid [14649]
process[camera/rgb_rectify_color-5]: started with pid [14658]
process[camera/ir_rectify_ir-6]: started with pid [14672]
process[camera/depth_rectify_depth-7]: started with pid [14683]
process[camera/depth_metric_rect-8]: started with pid [14689]
process[camera/depth_metric-9]: started with pid [14706]
process[camera/depth_points-10]: started with pid [14724]
process[camera/register_depth_rgb-11]: started with pid [14733]
process[camera/points_xyzrgb_sw_registered-12]: started with pid [14747]
process[camera/depth_registered_sw_metric_rect-13]: started with pid [14755]
[ INFO] [1500052586.931062224]: Initializing nodelet with 4 worker threads.
process[camera/depth_registered_rectify_depth-14]: started with pid [14774]
process[camera/points_xyzrgb_hw_registered-15]: started with pid [14786]
process[camera/depth_registered_hw_metric_rect-16]: started with pid [14796]
process[camera/depth_registered_metric-17]: started with pid [14800]
process[camera/disparity_depth-18]: started with pid [14805]
process[camera/disparity_registered_sw-19]: started with pid [14816]
process[camera/disparity_registered_hw-20]: started with pid [14835]
process[camera_base_link-21]: started with pid [14850]
process[camera_base_link1-22]: started with pid [14857]
process[camera_base_link2-23]: started with pid [14873]
process[camera_base_link3-24]: started with pid [14878]
[ERROR] [1500052587.267970469]: Failed to load nodelet [/camera/rgb_rectify_mono] of type [image_proc/rectify] even after refreshing the cache: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[ERROR] [1500052587.268035002]: The error before refreshing the cache was: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[FATAL] [1500052587.268344917]: Failed to load nodelet '/camera/rgb_rectify_mono` of type `image_proc/rectify` to manager `camera_nodelet_manager'
[ERROR] [1500052587.415688616]: Failed to load nodelet [/camera/ir_rectify_ir] of type [image_proc/rectify] even after refreshing the cache: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[ERROR] [1500052587.415749264]: The error before refreshing the cache was: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[FATAL] [1500052587.416018759]: Failed to load nodelet '/camera/ir_rectify_ir` of type `image_proc/rectify` to manager `camera_nodelet_manager'
[camera/rgb_rectify_mono-4] process has died [pid 14649, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load image_proc/rectify camera_nodelet_manager --no-bond image_mono:=rgb/image_mono image_rect:=rgb/image_rect_mono __name:=rgb_rectify_mono __log:=/home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-rgb_rectify_mono-4.log].
log file: /home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-rgb_rectify_mono-4*.log
[ERROR] [1500052587.565410095]: Failed to load nodelet [/camera/rgb_debayer] of type [image_proc/debayer] even after refreshing the cache: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[ERROR] [1500052587.565463092]: The error before refreshing the cache was: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[FATAL] [1500052587.565699759]: Failed to load nodelet '/camera/rgb_debayer` of type `image_proc/debayer` to manager `camera_nodelet_manager'
[camera/ir_rectify_ir-6] process has died [pid 14672, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load image_proc/rectify camera_nodelet_manager --no-bond image_mono:=ir/image_raw image_rect:=ir/image_rect_ir __name:=ir_rectify_ir __log:=/home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-ir_rectify_ir-6.log].
log file: /home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-ir_rectify_ir-6*.log
[ERROR] [1500052587.713003092]: Failed to load nodelet [/camera/rgb_rectify_color] of type [image_proc/rectify] even after refreshing the cache: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[ERROR] [1500052587.713067546]: The error before refreshing the cache was: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[FATAL] [1500052587.713233598]: Failed to load nodelet '/camera/rgb_rectify_color` of type `image_proc/rectify` to manager `camera_nodelet_manager'
[camera/rgb_debayer-3] process has died [pid 14636, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load image_proc/debayer camera_nodelet_manager --no-bond image_raw:=rgb/image_raw image_mono:=rgb/image_mono image_color:=rgb/image_color __name:=rgb_debayer __log:=/home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-rgb_debayer-3.log].
log file: /home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-rgb_debayer-3*.log
[ERROR] [1500052587.857666409]: Failed to load nodelet [/camera/depth_metric_rect] of type [depth_image_proc/convert_metric] even after refreshing the cache: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libdepth_image_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[ERROR] [1500052587.857718832]: The error before refreshing the cache was: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libdepth_image_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[FATAL] [1500052587.858070640]: Failed to load nodelet '/camera/depth_metric_rect` of type `depth_image_proc/convert_metric` to manager `camera_nodelet_manager'
[camera/rgb_rectify_color-5] process has died [pid 14658, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load image_proc/rectify camera_nodelet_manager --no-bond image_mono:=rgb/image_color image_rect:=rgb/image_rect_color __name:=rgb_rectify_color __log:=/home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-rgb_rectify_color-5.log].
log file: /home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-rgb_rectify_color-5*.log
Warning: USB events thread - failed to set priority. This might cause loss of data...
Warning: USB events thread - failed to set priority. This might cause loss of data...
[ INFO] [1500052588.061274833]: Number devices connected: 1
[ INFO] [1500052588.061441965]: 1. device on bus 001:18 is a SensorKinect (2ae) from PrimeSense (45e) with serial id '0000000000000000'
[ INFO] [1500052588.063661098]: Searching for device with index = 1
[camera/depth_metric_rect-8] process has died [pid 14689, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/convert_metric camera_nodelet_manager --no-bond image_raw:=depth/image_rect_raw image:=depth/image_rect __name:=depth_metric_rect __log:=/home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-depth_metric_rect-8.log].
log file: /home/ap4isr/.ros/log/28d7e128-68b8-11e7-9672-b8819811d451/camera-depth_metric_rect-8*.log
[ INFO] [1500052589.130208680]: Opened 'SensorKinect' on bus 1:18 with serial number '0000000000000000'
[ INFO] [1500052589.201266720]: rgb_frame_id = 'camera_rgb_optical_frame'
[ INFO] [1500052589.201327489]: depth_frame_id = 'camera_depth_optical_frame'
[ WARN] [1500052589.207456685]: Camera calibration file /home/ap4isr/.ros/camera_info/rgb_0000000000000000.yaml not found.
[ WARN] [1500052589.207565532]: Using default parameters for RGB camera calibration.
[ WARN] [1500052589.207637147]: Camera calibration file /home/ap4isr/.ros/camera_info/depth_0000000000000000.yaml not found.
[ WARN] [1500052589.207677358]: Using default parameters for IR camera calibration.
[ERROR] [1500052589.342204110]: Failed to load nodelet [/camera/depth_rectify_depth] of type [image_proc/rectify] even after refreshing the cache: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libopencv_imgproc3.so.3.1: cannot open shared object file: No such file or directory)
[ERROR] [1500052589.342268729]: The error before refreshing the cache was: Failed to load library /home/ap4isr/kinetic_workspc/devel/lib//libimage_proc.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exceptio
Should be possible to record just camera/depth/image_raw and camera/rgb/image_raw, at 3 bytes/pixel, then play it back like a running system.
Blocked on separate debayer nodelet.
Migrated over from https://kforge.ros.org/openni/trac/ticket/18
I am using Asus Xtion Pro Live Sensor and the openni_camera for my project,
The issue is when i reconfigure openni_node to publish RGB images with SXGA resolution using dynamic_reconfigure_gui it gives us following warning and RGB image keeps publishing with 640x480 resolution:
[ WARN] [1349881911.100499691]: Could not find any compatible image output mode for 1280 x 1024 @ 15. Falling back to default image output mode 640 x 480 @ 30.
I have tested the capability of publishing SXGA RGB images from ASUS XTION PRO LIVE using NiViewer Sample of Openni library and it works properly. So i am pretty sure that SXGA RGB image is supported by Asus Xtion Pro live and also openni driver.
BTW: I am using ROS fuerte.
Currently it is not possible to start the openni_launch toolchain using oni files as input. The attached patch adds the possibility to start an openni_camera nodelet that reads from an oni file. Reuses the device_id property for this.
Hello!
I found the kinect_gazebo.urdf.xacro file in openni_camera/openni_description/model.
We can change the name of ros topics in gazebo by editing this topic.
However there are just five topics about camera in the gazebo.
I need to get the registered depth data from camera in camera.
Can i get them by editing the .xacro. I can't find the documents about openni_gazebo_plugin. Thanks a lot.
Hi, I am new to ROS. I'm using raspberry pi 3B+ connected to Kinect Xbox 360 running on Ubuntu Mate 18.04, ROS Melodic.
Initially, when i 'roslaunch openni_launch openni.launch'
Error: 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&) @ /home/pi/catkin_ws/src/openni_camera/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB interface is not supported!
Therefore my approach is to install SensorKinect from git clone https://github.com/avin2/SensorKinect for my Kinect Xbox 360.
After completing the installation, I have proceed with 'roslaunch openni_launch openni.launch'
Error: nodelet: /usr/include/boost/smart_ptr/shared_ptr.hpp:728: typename boost::detail::sp_dereference::type boost::shared_ptr::operator*() const [with T = xn::NodeInfo; typename boost::detail::sp_dereference::type = xn::NodeInfo&]: Assertion `px != 0' failed.
Please help. Thank you!!
On some PCs the registration show a bug.
If you enable it, your PointCloud will only have NaN, and some reports that the depth image gets all gray(no real image).
Ros answers have allot of this issues, and a possible solution is to install the OpenNi + Nite binaries (http://answers.ros.org/question/53706/registered-depth-image-is-black/#53832) and (http://answers.ros.org/question/54951/kinect-depth-registration-not-working-on-fuerte-and-groovy/), but that don't work all the time.
That is my problem, i installed the ros-fuerte-openni-camera and ros-fuerte-openni-launch, and if i enable the depth_registration all i get is NaN's. Running the samples from OpenNi binaries everything works fine!
Also i say this is hardware dependent, because on diferent machines with the same software (linux version+ ros version) it presents diferent results on some it works and others don't (but the OpenNi binaries allways work)
Hi.
Are there any plans to port OpenNi-Camera to OpenNi2?
This would be needed for RaspberryPi esp. since there the OpenNi2 runs well while OpenNi does not. See https://groups.google.com/forum/#!topic/ros-sig-arm/6XgbkvnL3GM for some details.
Regards Hauke
After a clean install of ROS Groovy/Hydro, I cannot install openni_camera.
Here's the output I get:
georgebrindeiro@r2d2:~$ sudo apt-get install ros-hydro-openni-camera Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: ros-hydro-openni-camera : Depends: libopenni0 but it is not going to be installed Depends: libopenni-dev but it is not going to be installed Depends: libopenni-sensor-primesense-dev but it is not going to be installed E: Unable to correct problems, you have held broken packages.
I can't install libopenni* either, because it conflicts with openni-dev.
Removing openni-dev leads to ROS Hydro to be uninstalled.
Issue by bit-pirate
Sunday Aug 11, 2013 at 23:26 GMT
Originally opened as ros-drivers/openni_launch#7
When turning on hardware depth registration both the unregistered and registered point cloud stop being published.
Looking further into this I noticed that one of the inputs of the registration module, /camera/depth_registered/image_rect_raw
, is not being published. However, the module responsible for this gets its input /camera/depth_registered/image_raw
. So, on the first look I would say the image_proc/rectify nodelet doesn't work properly.
Migrated this from kforge: https://kforge.ros.org/openni/trac/ticket/63
Patch is here: https://gist.github.com/4513079
The launch files in openni launch can be improved with greater argument control to make it easier to launch a specific subset of processing nodelets.
A patch is attached. To see example usage of launch a specific subset of nodelets, check out the freenect_launch package (forked from openni_launch).
https://github.com/piyushk/freenect_stack/blob/master/freenect_launch/launch/examples/includes/produce-xyz.launch
https://github.com/piyushk/freenect_stack/blob/master/freenect_launch/launch/examples/includes/produce-xyzrgb.launch
Launching a different subset of nodelets will also help with removing the warnings as described in this thread:
http://answers.ros.org/question/12244/complaint-from-openni_launch-on-already-advertised-services/
Before the OpenNI update back in December 2012, one could run:
$ roslaunch openni_camera openni_node.launch
then subscribe to the topic /camera/rgb/points in RViz and view the XYZRGB pointcloud. Now, as soon as the topic is subscribed to, a message appears in the openni_camera window that says:
[ WARN] [1362930566.478614323]: turning on depth registration, since PointCloudXYZRGB has subscribers.
At that point, the pointcloud image in RViz freezes even though the Status is OK and messages are being received.
One can subscribe to /camera/depth/points and turn off registration using dynamic_reconfigure to see the pointcloud but then you don't have the the RGB option in the Color Transformer setting.
I am trying to use the openni_camera with depth only sensors "Xtion Pro" and "Occipital Structure Sensor", but both fail to generate point clouds /camea/depth/points. I tried to trace down the problem, but so far no success, I am more than happy to fork the repository and modify the code accordingly, but I need some pointers to isolate the problem. Any hits ?
When using an Asus or PrimeSense depth camera, ros_groovy_openni_camera 1.8.9 "fails to set USB interface" and crashes, before continually relaunching unsuccessfully.
The depth cameras work properly with NiViewer.
Reverting to 1.8.8 fixed the problem.
#58 injected a test dependency on turtlebot_description
that's not (yet) available on ROS Lunar. This prevents a newer version of this package suite from being released.
Since there's no guarantee for turtlebot pkgs to be released on Lunar onward, this dependency (even test_depend) needs to be removed.
Hardware:1.kinect1.0 for xbox360
2.PC with usb2.0
Software: Ubuntu16.04 LTS, ros-kinetic-desktop-full
I tried to excute openni.launch and get these errors:
`auto-starting new master
process[master]: started with pid [9207]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to 8c588874-654d-11e7-ab6f-00e0b412588a
process[rosout-1]: started with pid [9220]
started core service [/rosout]
process[camera/camera_nodelet_manager-2]: started with pid [9237]
process[camera/driver-3]: started with pid [9238]
process[camera/rgb_debayer-4]: started with pid [9239]
process[camera/rgb_rectify_mono-5]: started with pid [9245]
process[camera/rgb_rectify_color-6]: started with pid [9258]
process[camera/ir_rectify_ir-7]: started with pid [9267]
process[camera/depth_rectify_depth-8]: started with pid [9282]
[ INFO] [1499676940.858628822]: Initializing nodelet with 4 worker threads.
process[camera/depth_metric_rect-9]: started with pid [9297]
process[camera/depth_metric-10]: started with pid [9322]
process[camera/depth_points-11]: started with pid [9337]
process[camera/register_depth_rgb-12]: started with pid [9343]
process[camera/points_xyzrgb_sw_registered-13]: started with pid [9349]
process[camera/depth_registered_sw_metric_rect-14]: started with pid [9366]
process[camera/depth_registered_rectify_depth-15]: started with pid [9378]
process[camera/points_xyzrgb_hw_registered-16]: started with pid [9387]
process[camera/depth_registered_hw_metric_rect-17]: started with pid [9391]
process[camera/depth_registered_metric-18]: started with pid [9412]
process[camera/disparity_depth-19]: started with pid [9420]
process[camera/disparity_registered_sw-20]: started with pid [9424]
process[camera/disparity_registered_hw-21]: started with pid [9432]
process[camera_base_link-22]: started with pid [9443]
process[camera_base_link1-23]: started with pid [9445]
process[camera_base_link2-24]: started with pid [9463]
process[camera_base_link3-25]: started with pid [9471]
Warning: USB events thread - failed to set priority. This might cause loss of data...
[ INFO] [1499676943.699963616]: Number devices connected: 2
[ INFO] [1499676943.800937024]: 1. device on bus 001:17 is a SensorKinect (2ae) from PrimeSense (45e) with serial id '0'
[ INFO] [1499676943.801022556]: 2. device on bus 001:17 is a SensorV2 (2ae) from PrimeSense (45e) with serial id 'A00363920469048A'
[ INFO] [1499676943.802363361]: Searching for device with index = 1
[camera/camera_nodelet_manager-2] process has died [pid 9237, exit code -11, cmd /opt/ros/kinetic/lib/nodelet/nodelet manager __name:=camera_nodelet_manager __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-camera_nodelet_manager-2.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-camera_nodelet_manager-2*.log
[FATAL] [1499676955.288648044]: Failed to load nodelet '/camera/points_xyzrgb_hw_registered` of type `depth_image_proc/point_cloud_xyzrgb` to manager `camera_nodelet_manager'
[FATAL] [1499676955.289234539]: Failed to load nodelet '/camera/depth_registered_metric` of type `depth_image_proc/convert_metric` to manager `camera_nodelet_manager'
[FATAL] [1499676955.289355207]: Failed to load nodelet '/camera/depth_registered_hw_metric_rect` of type `depth_image_proc/convert_metric` to manager `camera_nodelet_manager'
[FATAL] [1499676955.289450084]: Failed to load nodelet '/camera/depth_registered_sw_metric_rect` of type `depth_image_proc/convert_metric` to manager `camera_nodelet_manager'
[FATAL] [1499676955.289567134]: Failed to load nodelet '/camera/points_xyzrgb_sw_registered` of type `depth_image_proc/point_cloud_xyzrgb` to manager `camera_nodelet_manager'
[FATAL] [1499676955.289666340]: Failed to load nodelet '/camera/disparity_depth` of type `depth_image_proc/disparity` to manager `camera_nodelet_manager'
[FATAL] [1499676955.289845471]: Failed to load nodelet '/camera/disparity_registered_sw` of type `depth_image_proc/disparity` to manager `camera_nodelet_manager'
[FATAL] [1499676955.290129104]: Failed to load nodelet '/camera/depth_rectify_depth` of type `image_proc/rectify` to manager `camera_nodelet_manager'
[FATAL] [1499676955.290254835]: Failed to load nodelet '/camera/ir_rectify_ir` of type `image_proc/rectify` to manager `camera_nodelet_manager'
[FATAL] [1499676955.290365995]: Failed to load nodelet '/camera/driver` of type `openni_camera/driver` to manager `camera_nodelet_manager'
[FATAL] [1499676955.291081899]: Failed to load nodelet '/camera/depth_registered_rectify_depth` of type `image_proc/rectify` to manager `camera_nodelet_manager'
[FATAL] [1499676955.291270966]: Failed to load nodelet '/camera/rgb_rectify_color` of type `image_proc/rectify` to manager `camera_nodelet_manager'
[FATAL] [1499676955.291462331]: Failed to load nodelet '/camera/depth_points` of type `depth_image_proc/point_cloud_xyz` to manager `camera_nodelet_manager'
[FATAL] [1499676955.291763068]: Failed to load nodelet '/camera/depth_metric_rect` of type `depth_image_proc/convert_metric` to manager `camera_nodelet_manager'
[FATAL] [1499676955.291935707]: Failed to load nodelet '/camera/depth_metric` of type `depth_image_proc/convert_metric` to manager `camera_nodelet_manager'
[FATAL] [1499676955.291971826]: Failed to load nodelet '/camera/disparity_registered_hw` of type `depth_image_proc/disparity` to manager `camera_nodelet_manager'
[FATAL] [1499676955.291957955]: Failed to load nodelet '/camera/register_depth_rgb` of type `depth_image_proc/register` to manager `camera_nodelet_manager'
[camera/driver-3] process has died [pid 9238, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load openni_camera/driver camera_nodelet_manager --no-bond ir:=ir rgb:=rgb depth:=depth depth_registered:=depth_registered projector:=projector __name:=driver __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-driver-3.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-driver-3*.log
[camera/depth_metric-10] process has died [pid 9322, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/convert_metric camera_nodelet_manager --no-bond image_raw:=depth/image_raw image:=depth/image __name:=depth_metric __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_metric-10.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_metric-10*.log
[camera/ir_rectify_ir-7] process has died [pid 9267, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load image_proc/rectify camera_nodelet_manager --no-bond image_mono:=ir/image_raw image_rect:=ir/image_rect_ir __name:=ir_rectify_ir __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-ir_rectify_ir-7.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-ir_rectify_ir-7*.log
[camera/depth_points-11] process has died [pid 9337, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/point_cloud_xyz camera_nodelet_manager --no-bond image_rect:=depth/image_rect_raw points:=depth/points __name:=depth_points __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_points-11.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_points-11*.log
[camera/depth_registered_sw_metric_rect-14] process has died [pid 9366, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/convert_metric camera_nodelet_manager --no-bond image_raw:=depth_registered/sw_registered/image_rect_raw image:=depth_registered/sw_registered/image_rect __name:=depth_registered_sw_metric_rect __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_registered_sw_metric_rect-14.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_registered_sw_metric_rect-14*.log
[camera/depth_registered_rectify_depth-15] process has died [pid 9378, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load image_proc/rectify camera_nodelet_manager --no-bond image_mono:=depth_registered/image_raw image_rect:=depth_registered/hw_registered/image_rect_raw __name:=depth_registered_rectify_depth __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_registered_rectify_depth-15.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_registered_rectify_depth-15*.log
[camera/points_xyzrgb_hw_registered-16] process has died [pid 9387, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/point_cloud_xyzrgb camera_nodelet_manager --no-bond rgb/image_rect_color:=rgb/image_rect_color rgb/camera_info:=rgb/camera_info depth_registered/image_rect:=depth_registered/hw_registered/image_rect_raw depth_registered/points:=depth_registered/points __name:=points_xyzrgb_hw_registered __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-points_xyzrgb_hw_registered-16.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-points_xyzrgb_hw_registered-16*.log
[camera/rgb_rectify_color-6] process has died [pid 9258, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load image_proc/rectify camera_nodelet_manager --no-bond image_mono:=rgb/image_color image_rect:=rgb/image_rect_color __name:=rgb_rectify_color __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-rgb_rectify_color-6.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-rgb_rectify_color-6*.log
[camera/depth_rectify_depth-8] process has died [pid 9282, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load image_proc/rectify camera_nodelet_manager --no-bond image_mono:=depth/image_raw image_rect:=depth/image_rect_raw __name:=depth_rectify_depth __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_rectify_depth-8.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_rectify_depth-8*.log
[camera/depth_metric_rect-9] process has died [pid 9297, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/convert_metric camera_nodelet_manager --no-bond image_raw:=depth/image_rect_raw image:=depth/image_rect __name:=depth_metric_rect __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_metric_rect-9.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_metric_rect-9*.log
[camera/register_depth_rgb-12] process has died [pid 9343, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/register camera_nodelet_manager --no-bond rgb/camera_info:=rgb/camera_info depth/camera_info:=depth/camera_info depth/image_rect:=depth/image_rect_raw depth_registered/image_rect:=depth_registered/sw_registered/image_rect_raw __name:=register_depth_rgb __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-register_depth_rgb-12.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-register_depth_rgb-12*.log
[camera/points_xyzrgb_sw_registered-13] process has died [pid 9349, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/point_cloud_xyzrgb camera_nodelet_manager --no-bond rgb/image_rect_color:=rgb/image_rect_color rgb/camera_info:=rgb/camera_info depth_registered/image_rect:=depth_registered/sw_registered/image_rect_raw depth_registered/points:=depth_registered/points __name:=points_xyzrgb_sw_registered __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-points_xyzrgb_sw_registered-13.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-points_xyzrgb_sw_registered-13*.log
[camera/depth_registered_hw_metric_rect-17] process has died [pid 9391, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/convert_metric camera_nodelet_manager --no-bond image_raw:=depth_registered/hw_registered/image_rect_raw image:=depth_registered/hw_registered/image_rect __name:=depth_registered_hw_metric_rect __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_registered_hw_metric_rect-17.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_registered_hw_metric_rect-17*.log
[camera/depth_registered_metric-18] process has died [pid 9412, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/convert_metric camera_nodelet_manager --no-bond image_raw:=depth_registered/image_raw image:=depth_registered/image __name:=depth_registered_metric __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_registered_metric-18.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-depth_registered_metric-18*.log
[camera/disparity_depth-19] process has died [pid 9420, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/disparity camera_nodelet_manager --no-bond left/image_rect:=depth/image_rect_raw right:=projector left/disparity:=depth/disparity __name:=disparity_depth __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-disparity_depth-19.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-disparity_depth-19*.log
[camera/disparity_registered_sw-20] process has died [pid 9424, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/disparity camera_nodelet_manager --no-bond left/image_rect:=depth_registered/sw_registered/image_rect_raw right:=projector left/disparity:=depth_registered/disparity __name:=disparity_registered_sw __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-disparity_registered_sw-20.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-disparity_registered_sw-20*.log
[camera/disparity_registered_hw-21] process has died [pid 9432, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load depth_image_proc/disparity camera_nodelet_manager --no-bond left/image_rect:=depth_registered/hw_registered/image_rect_raw right:=projector left/disparity:=depth_registered/disparity __name:=disparity_registered_hw __log:=/home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-disparity_registered_hw-21.log].
log file: /home/pdw/.ros/log/8c588874-654d-11e7-ab6f-00e0b412588a/camera-disparity_registered_hw-21*.log`
I tried the ideas of these links:
http://answers.ros.org/question/53089/ubuntu-1210-groovy-openni-usb30-working/
http://answers.ros.org/question/135266/problem-running-openni_launchlaunch-failed-to-load-nodelet-cameradriver-of-type-openni_cameradriver-could-not-find-library-corresponding-to-plugin/
http://answers.ros.org/question/54863/camera_nodelet_manager-1-process-has-died-error-with-kinect/
But it doesn't work.
I can run the standalone NIViewer with kinect. So I think the kinect driver should be OK on ubuntu 16.04 LTS.
Has anyone found the way to walk through this?
I think this issue may have sth. to do with this one:
#18
Thx for releasing for Jade
When using a device with only numbers as its id the driver won't load the proper camera unless it is the first device.
This case fires the warning telling you that there is no device ide set besides it is set in the param server, but as integer:
[ WARN] [1411740059.774010355]: ~device_id is not set! Using first device.
I supose the argument is not properly parsed.
it works because, in general rosconsole is linked against log4cxx. However, if another backend is used with rosconsole, and no other reference to log4cxx, the library fails because a missing symbols of log4cxx.
So please, link specific to log4cxx library. Patch attached.
--- CMakeLists.txt.orig 2016-02-11 13:28:01.558860648 +0100
+++ CMakeLists.txt 2016-02-11 11:21:41.189835963 +0100
@@ -8,6 +8,15 @@
pkg_check_modules(PC_LIBOPENNI REQUIRED libopenni)
pkg_check_modules(PC_LIBUSB REQUIRED libusb-1.0)
+find_package(Log4cxx QUIET)
+if(NOT LOG4CXX_LIBRARIES)
+ # backup plan, hope it is in the system path
+ find_library(LOG4CXX_LIBRARIES log4cxx)
+endif()
+if(NOT LOG4CXX_LIBRARIES)
+ message(ERROR "log4cxx required")
+endif()
+
generate_dynamic_reconfigure_options(cfg/OpenNI.cfg)
catkin_package(
@@ -44,6 +53,7 @@
${Boost_LIBRARIES}
${PC_LIBOPENNI_LIBRARIES}
${PC_LIBUSB_LIBRARIES}
+ ${LOG4CXX_LIBRARIES}
)
# ROS nodelets library
I have a camera connected on a Jetson AGX Xavier via CSI-2 port, It is my understanding that it should be compatible with OpenNI but I'm not sure how to make it recognisable.
I'm running ROS Melodic on ubuntu 18.04 with OpenNI installed and all the drivers for the camera installed as well
I get the following error when running openni.launch:
[ INFO] [1583882602.306930315]: No devices connected.... waiting for devices to be connected
any idea of what could be done to establish the connection?
The change something like ros/rosdistro#14553 for Fedora is needed as of now.
Ref. #45 (comment)
I'm seeing large (>10px) offsets between depth and rgb information from a Kinect, when running on Ubuntu 14.04. For an example, see this rviz screenshot of a wooden table leg (in bright cyan) lying on a table: On the left, part of the surface is shown at a larger depth than actual, vs. on the right, part of the leg is missing.
This is using openni_camera, with depth_registration set to true (verified also using dynamic reconfigure), with the groovy-devel branch on Ubuntu 14.04, with ROS groovy compiled from source (!). OpenNI and primesense drivers are installed from Jochen Sprickerhof's PPA.
I could replicate this problem across three different machines now. The same machines and software run fine with an Asus Xtion camera.
I've looked into this problem for a while now, and am utterly stumped. Does anybody have a clue on what could be happening here?
hi,
I want the kinect to output 320x240 rgb and depth images directly, i tried to set this para in launch file but failed ,
~image_mode (int, default: 2)
Image output mode for the color/grayscale image Possible values are: SXGA_15Hz (1): 1280x1024@15Hz, VGA_30Hz (2): 640x480@30Hz, VGA_25Hz (3): 640x480@25Hz, QVGA_25Hz (4): 320x240@25Hz, QVGA_30Hz (5): 320x240@30Hz, QVGA_60Hz (6): 320x240@60Hz, QQVGA_25Hz (7): 160x120@25Hz, QQVGA_30Hz (8): 160x120@30Hz, QQVGA_60Hz (9): 160x120@60Hz
~depth_mode (int, default: 2)
depth output mode Possible values are: SXGA_15Hz (1): 1280x1024@15Hz, VGA_30Hz (2): 640x480@30Hz, VGA_25Hz (3): 640x480@25Hz, QVGA_25Hz (4): 320x240@25Hz, QVGA_30Hz (5): 320x240@30Hz, QVGA_60Hz (6): 320x240@60Hz, QQVGA_25Hz (7): 160x120@25Hz, QQVGA_30Hz (8): 160x120@30Hz, QQVGA_60Hz (9): 160x120@60Hz
Could you please tell me how to set this parameters?
Thank you vary much~~
@130s
Thank you for this useful package.
Are there any plan to release this package in Noetic?
If you have no time, I can help you for noetic release.
Issue by brotherxiang00
Tuesday Mar 25, 2014 at 23:05 GMT
Originally opened as ros-drivers/openni_launch#14
I am following instruction on http://wiki.ros.org/openni_launch, but some problems occur.
When rosrun image_view disparity_view image:=/camera/depth/disparity, it works well. But when I enable depth_registration by rosrun rqt_reconfigure rqt_reconfigure, there is image displayed. I use rostopic echo /camera/depth_registered/disparity, the output is a lot of zero on terminal.
Could you please tell me how to fix it? As I am very new to ROS, could you please give me a step by step solution? Many thanks.
Please see ros-drivers/openni_launch#30 and continue discussion there.
As of today bloom failed. I don't know what to do to proceed from here. Google search doesn't clearly tell me whether the library in question (libusbx-devel
or similar on version Fedora 24) is already available. It's missing from rosdep key.
$ bloom-release --rosdistro kinetic --track kinetic openni_camera
:
libusb-1.0-dev is depended on by these packages: ['openni_camera']
<== Failed
Could not resolve rosdep key 'libusb-1.0-dev' for distro '24':
No definition of [libusb-1.0-dev] for OS version [24]
rosdep key : libusb-1.0-dev
OS name : fedora
OS version : 24
Data: arch:
- libusbx
debian:
- libusb-1.0-0-dev
fedora:
'21':
- libusbx-devel
'22':
- libusbx-devel
beefy:
- libusb1-devel
heisenbug:
- libusbx-devel
"schr\xF6dinger\u2019s":
- libusbx-devel
spherical:
- libusbx-devel
gentoo:
- =dev-libs/libusb-1.0*
macports:
- libusb
opensuse:
- libusb-1_0-devel
ubuntu:
- libusb-1.0-0-dev
Failed to resolve libusb-1.0-dev on fedora:24 with: Error running generator: Failed to resolve rosdep key 'libusb-1.0-dev', aborting.
libusb-1.0-dev is depended on by these packages: ['openni_camera']
<== Failed
Some of the dependencies for packages in this repository could not be resolved by rosdep.
You can try to address the issues which appear above and try again if you wish.
I was happily using my kinect 360 with this package and then received this error, now will no longer work...
roslaunch openni_launch openni.launch
... logging to /home/mechatronics-dev/.ros/log/82ee37a4-b4bd-11e9-8ee8-b06ebf60407b/roslaunch-mechatronicsdev-System-Product-Name-8045.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://mechatronicsdev-System-Product-Name:43311/
SUMMARY
========
PARAMETERS
* /camera/camera_nodelet_manager/num_worker_threads: 4
* /camera/depth_rectify_depth/interpolation: 0
* /camera/depth_registered_rectify_depth/interpolation: 0
* /camera/disparity_depth/max_range: 4.0
* /camera/disparity_depth/min_range: 0.5
* /camera/disparity_registered_hw/max_range: 4.0
* /camera/disparity_registered_hw/min_range: 0.5
* /camera/disparity_registered_sw/max_range: 4.0
* /camera/disparity_registered_sw/min_range: 0.5
* /camera/driver/depth_camera_info_url:
* /camera/driver/depth_frame_id: camera_depth_opti...
* /camera/driver/depth_registration: False
* /camera/driver/device_id: #1
* /camera/driver/rgb_camera_info_url:
* /camera/driver/rgb_frame_id: camera_rgb_optica...
* /rosdistro: kinetic
* /rosversion: 1.12.14
NODES
/camera/
camera_nodelet_manager (nodelet/nodelet)
depth_metric (nodelet/nodelet)
depth_metric_rect (nodelet/nodelet)
depth_points (nodelet/nodelet)
depth_rectify_depth (nodelet/nodelet)
depth_registered_hw_metric_rect (nodelet/nodelet)
depth_registered_metric (nodelet/nodelet)
depth_registered_rectify_depth (nodelet/nodelet)
depth_registered_sw_metric_rect (nodelet/nodelet)
disparity_depth (nodelet/nodelet)
disparity_registered_hw (nodelet/nodelet)
disparity_registered_sw (nodelet/nodelet)
driver (nodelet/nodelet)
ir_rectify_ir (nodelet/nodelet)
points_xyzrgb_hw_registered (nodelet/nodelet)
points_xyzrgb_sw_registered (nodelet/nodelet)
register_depth_rgb (nodelet/nodelet)
rgb_debayer (nodelet/nodelet)
rgb_rectify_color (nodelet/nodelet)
rgb_rectify_mono (nodelet/nodelet)
/
camera_base_link (tf2_ros/static_transform_publisher)
camera_base_link1 (tf2_ros/static_transform_publisher)
camera_base_link2 (tf2_ros/static_transform_publisher)
camera_base_link3 (tf2_ros/static_transform_publisher)
auto-starting new master
process[master]: started with pid [8055]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to 82ee37a4-b4bd-11e9-8ee8-b06ebf60407b
process[rosout-1]: started with pid [8069]
started core service [/rosout]
process[camera/camera_nodelet_manager-2]: started with pid [8084]
process[camera/driver-3]: started with pid [8087]
process[camera/rgb_debayer-4]: started with pid [8088]
process[camera/rgb_rectify_mono-5]: started with pid [8089]
process[camera/rgb_rectify_color-6]: started with pid [8103]
process[camera/ir_rectify_ir-7]: started with pid [8115]
process[camera/depth_rectify_depth-8]: started with pid [8129]
process[camera/depth_metric_rect-9]: started with pid [8143]
[ INFO] [1564706165.628351902]: Initializing nodelet with 4 worker threads.
process[camera/depth_metric-10]: started with pid [8159]
process[camera/depth_points-11]: started with pid [8185]
process[camera/register_depth_rgb-12]: started with pid [8206]
process[camera/points_xyzrgb_sw_registered-13]: started with pid [8226]
process[camera/depth_registered_sw_metric_rect-14]: started with pid [8247]
process[camera/depth_registered_rectify_depth-15]: started with pid [8263]
process[camera/points_xyzrgb_hw_registered-16]: started with pid [8279]
process[camera/depth_registered_hw_metric_rect-17]: started with pid [8295]
process[camera/depth_registered_metric-18]: started with pid [8311]
process[camera/disparity_depth-19]: started with pid [8327]
process[camera/disparity_registered_sw-20]: started with pid [8343]
process[camera/disparity_registered_hw-21]: started with pid [8359]
process[camera_base_link-22]: started with pid [8375]
process[camera_base_link1-23]: started with pid [8393]
process[camera_base_link2-24]: started with pid [8414]
process[camera_base_link3-25]: started with pid [8432]
[ INFO] [1564706167.337702805]: Number devices connected: 1
[ INFO] [1564706167.337800265]: 1. device on bus 001:10 is a SensorV2 (2ae) from PrimeSense (45e) with serial id 'A00364913501104A'
[ INFO] [1564706167.338462324]: Searching for device with index = 1
[ INFO] [1564706167.373285963]: Opened 'SensorV2' on bus 1:10 with serial number 'A00364913501104A'
[ INFO] [1564706167.421958276]: rgb_frame_id = 'camera_rgb_optical_frame'
[ INFO] [1564706167.422022412]: depth_frame_id = 'camera_depth_optical_frame'
[ WARN] [1564706167.434951828]: Camera calibration file /home/mechatronics-dev/.ros/camera_info/rgb_A00364913501104A.yaml not found.
[ WARN] [1564706167.435083238]: Using default parameters for RGB camera calibration.
[ WARN] [1564706167.435180087]: Camera calibration file /home/mechatronics-dev/.ros/camera_info/depth_A00364913501104A.yaml not found.
[ WARN] [1564706167.435225591]: Using default parameters for IR camera calibration.
terminate called after throwing an instance of 'openni_wrapper::OpenNIException'
what(): virtual void openni_wrapper::OpenNIDevice::startDepthStream() @ /tmp/binarydeb/ros-kinetic-openni-camera-1.11.0/src/openni_device.cpp @ 257 : starting depth stream failed. Reason: Device Protocol: Command Invalid!
[camera/camera_nodelet_manager-2] process has died [pid 8084, exit code -6, cmd /opt/ros/kinetic/lib/nodelet/nodelet manager __name:=camera_nodelet_manager __log:=/home/mechatronics-dev/.ros/log/82ee37a4-b4bd-11e9-8ee8-b06ebf60407b/camera-camera_nodelet_manager-2.log].
log file: /home/mechatronics-dev/.ros/log/82ee37a4-b4bd-11e9-8ee8-b06ebf60407b/camera-camera_nodelet_manager-2*.log
I've the following problem with my kinect and the openni_camera driver:
If I launch the openni_camera nodelet with roslaunch openni_launch openni.launch and afterwards change the image_mode and depth_mode via dynamic_reconfigure to QVGA_30Hz and then subscribe to camera/rgb/image_mono or camera/rgb/image_color the nodelet crashes with the following error:
*** glibc detected *** /opt/ros/electric/stacks/nodelet_core/nodelet/bin/nodelet: malloc(): memory corruption: 0x0000000000bb85f0 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x79d7a)[0x7fdaeff65d7a]
/lib/x86_64-linux-gnu/libc.so.6(__libc_malloc+0x6e)[0x7fdaeff6831e]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(_Znwm+0x1d)[0x7fdaf09f2e0d]
/opt/ros/electric/stacks/openni_kinect/depth_image_proc/lib/libdepth_image_proc.so(_ZN5boost11make_sharedIN11sensor_msgs11CameraInfo_ISaIvEEEEENS_10shared_ptrIT_EEv+0x4f)[0x7fdae3d8dcff]
/opt/ros/electric/stacks/openni_kinect/openni_camera/lib/libopenni_nodelet.so(_ZNK13openni_camera13DriverNodelet20getDefaultCameraInfoEiid+0x1b)[0x7fdac6bb1c1b]
/opt/ros/electric/stacks/openni_kinect/openni_camera/lib/libopenni_nodelet.so(_ZNK13openni_camera13DriverNodelet16getRgbCameraInfoEN3ros4TimeE+0x618)[0x7fdac6bb4f98]
/opt/ros/electric/stacks/openni_kinect/openni_camera/lib/libopenni_nodelet.so(_ZNK13openni_camera13DriverNodelet15publishRgbImageERKN14openni_wrapper5ImageEN3ros4TimeE+0xe9)[0x7fdac6bb52c9]
/opt/ros/electric/stacks/openni_kinect/openni_camera/lib/libopenni_nodelet.so(_ZN13openni_camera13DriverNodelet5rgbCbEN5boost10shared_ptrIN14openni_wrapper5ImageEEEPv+0xc7)[0x7fdac6bb5537]
/opt/ros/electric/stacks/openni_kinect/openni_camera/lib/libopenni_nodelet.so(ZN5boost6detail8function26void_function_obj_invoker1INS_3_bi6bind_tIvNS_4_mfi3mf2IvN13openni_camera13DriverNodeletENS_10shared_ptrIN14openni_wrapper5ImageEEEPvEENS3_5list3INS_17reference_wrapperIS8_EENS_3argILi1EEENS3_5valueISD_EEEEEEvSC_E6invokeERNS1_15function_bufferESC+0x67)[0x7fdac6bbd4e7]
/opt/ros/electric/stacks/openni_kinect/openni_camera/lib/libopenni_driver.so(_ZN14openni_wrapper12OpenNIDevice23ImageDataThreadFunctionEv+0x359) [0x7fdac62ad6e9]
/usr/lib/libboost_thread.so.1.42.0(thread_proxy+0x5e)[0x7fdaf230e16e]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x6d8c)[0x7fdaf0286d8c]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7fdaeffd204d]
this happens on 32bit and 64bit Ubuntu Natty. the installed openni libraries are:
dpkg -l | grep openni
ii openni-dev 1.3.2.1-4+natty1 OpenNI Framework - libraries
ii ros-electric-openni-kinect 0.3.2-s1323594564~natty The ROS OpenNI project
according to http://answers.ros.org/question/3364/openni_camera-nodelet-crashes-when-using-qvga-30hz this problem could be confirmed by another person
(sorry for opening question and ticket, but I think this is the better place to discuss the issue)
Hello, did anyone manage to get it to work on ROS Melodic + Ubuntu Mate 18.04 + Kinect V1 + Raspberry PI 4B? When I run the command roslauch openni_laucn openni.launch
I receive the message stating that no device was found or no device connected. However, the Kinect V1 is connected correctly.
Issue by lynncodd
Thursday Nov 07, 2013 at 18:06 GMT
Originally opened as ros-drivers/openni_launch#12
32 bit Ubuntu 12.04 LTS
Installed OpenNI v1.5.4.0
Installed NITE v1.5.2.21
Installed Sensor Kinect v5.1.2.1
Once done, I was able to run NiViewer just fine. I was also able to run other utilities that use the standalone OpenNI.
Because I also wanted to run some ROS groovy packages, I installed ros-groovy-openni-launch. When I go back to run ./NiViewer using the standalone OpenNI, I get the following error:
Open failed: Device Protocol: Bad Parameter sent!
Press any key to continue . . .
Even if I remove ros-groovy-openni-launch, ./NiViewer still no longer works. What did installing that package do that is causing the standalone OpenNI or my Kinect Sensor to not be recognized?
no apt repository in jade release.
Is there any reason/diffs not to release openni related repositories apt?
I set up a gazebo simulation with my robott, on which I mounted a kinect camera at the front link. When launching RViz, the pointcloud data is rotated and flipped. I am using ROS Indigo e Gazebo 2.2.3.
This same problem has been posted also in the following link:
http://answers.gazebosim.org/question/4266/gazebo-15-libgazebo_openni_kinectso-pointcloud-data-is-rotated-and-flipped/
Issue by 130s
Monday Apr 24, 2017 at 19:51 GMT
Originally opened as ros-drivers/openni_launch#30
The following repositories contain a single package. I suggest to create a new repo where we move all of these 3 packages to, in order to reduce the maintenance effort.
Background
Despite the inactive development, the release tasks for these packages still takes certain amount of work. For Lunar this time, I took charge of it and for total it took almost an hour, mainly because these packages are inter-depended and I had to make release one by one and wait for the binary to become ready, in order for bloom
to be able to resolve the necessary dependency.
Suggested solution
Create a new repo and move all of these 3 packages there.
Suggestion for the repo name appreciated. Here I temporarily use openni_meta
.
New repo and the contents (being updated over time taking suggestions in):
ros-drivers/openni_meta
|- freenect_camera
|- freenect_launch
|- openni_camera
|- openni_launch
|- openni_meta
|- rgbd_launch
openni_meta
is a meta package that run_depends on these 3 packages.
In the latest version of rosconsole the strict dependency on log4cxx has been removed. Now openni_camera
(http://jenkins.ros.org/view/HbinP32/job/ros-hydro-openni-camera_binarydeb_precise_i386/27/console) fails to build since it relied on the transitive dependency.
Please make the dependency on log4cxx explicit and import the necessary header file.
Issue by jokla
Wednesday Sep 02, 2015 at 08:35 GMT
Originally opened as ros-drivers/openni_launch#20
Hi,
I'm trying to calibrate the Kinect depth camera to the built-in RGB camera. I calibrate the intrinsic parameters without any problem but I have a problem with the IR image:
running rosrun image_view image_view image:=/camera/ir/image_raw
I just see a black image, while during the calibration with rosrun camera_calibration cameracalibrator.py image:=/camera/ir/image_raw camera:=/camera/rgb --size 5x4 --square 0.0245
the IR image was displayed correctly.
For this reason I cannot compute the extrinsic parameters between the RGB and the IR camera using camera_pose_calibration node...
while running the camera_pose_calibration (the rgb images are coming from a bag file):
I am using Ubuntu 14.04 and ROS Indigo. I had to install the older version of driver manually:
( libopenni-sensor-primesense-dev and libopenni-sensor-primesense0). I can see from rqt_graph that both node are subscribing to the same topic...
Any ideas?
Thank you!
Problem with: roslaunch openni_launch openni.launch
ROS Melodic installed from source on RockPro64 board on Ubuntu 18.04.
I suspect this is due to not having the driver installed properly, which I seem to be unable to install on this platform. The SensorKinect driver installation results in the system telling me the arch64 or something like that, is not found. I assume that means the driver is not supported on this platform but I'm not sure. Is there something for a driver I should use that is more up to date than this https://github.com/avin2/SensorKinect ?
I confirmed Kinect Xbox 360 has enough power and works fine when I plug it into skanect on my laptop.
lsusb shows:
Bus 005 Device 007: ID 045e:02ae Microsoft Corp. Xbox NUI Camera
Bus 005 Device 005: ID 045e:02b0 Microsoft Corp. Xbox NUI Motor
Bus 005 Device 006: ID 045e:02ad Microsoft Corp. Xbox NUI Audio
How should I troubleshoot further?
rock64@rockpro64:~/turtlebot_melodic_ws$ roslaunch openni_launch openni.launch
... logging to /home/rock64/.ros/log/84d01db8-517f-11e9-aabc-9cefd5fdd5ab/roslaunch-rockpro64-8999.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://192.168.1.132:37526/
PARAMETERS
NODES
/camera/
camera_nodelet_manager (nodelet/nodelet)
depth_metric (nodelet/nodelet)
depth_metric_rect (nodelet/nodelet)
depth_points (nodelet/nodelet)
depth_rectify_depth (nodelet/nodelet)
depth_registered_hw_metric_rect (nodelet/nodelet)
depth_registered_metric (nodelet/nodelet)
depth_registered_rectify_depth (nodelet/nodelet)
depth_registered_sw_metric_rect (nodelet/nodelet)
disparity_depth (nodelet/nodelet)
disparity_registered_hw (nodelet/nodelet)
disparity_registered_sw (nodelet/nodelet)
driver (nodelet/nodelet)
ir_rectify_ir (nodelet/nodelet)
points_xyzrgb_hw_registered (nodelet/nodelet)
points_xyzrgb_sw_registered (nodelet/nodelet)
register_depth_rgb (nodelet/nodelet)
rgb_debayer (nodelet/nodelet)
rgb_rectify_color (nodelet/nodelet)
rgb_rectify_mono (nodelet/nodelet)
/
camera_base_link (tf2_ros/static_transform_publisher)
camera_base_link1 (tf2_ros/static_transform_publisher)
camera_base_link2 (tf2_ros/static_transform_publisher)
camera_base_link3 (tf2_ros/static_transform_publisher)
ROS_MASTER_URI=http://localhost:11311
process[camera/camera_nodelet_manager-1]: started with pid [9014]
process[camera/driver-2]: started with pid [9015]
process[camera/rgb_debayer-3]: started with pid [9016]
process[camera/rgb_rectify_mono-4]: started with pid [9017]
process[camera/rgb_rectify_color-5]: started with pid [9022]
process[camera/ir_rectify_ir-6]: started with pid [9024]
process[camera/depth_rectify_depth-7]: started with pid [9035]
process[camera/depth_metric_rect-8]: started with pid [9040]
[ INFO] [1553794779.708520778]: Initializing nodelet with 4 worker threads.
process[camera/depth_metric-9]: started with pid [9051]
process[camera/depth_points-10]: started with pid [9057]
process[camera/register_depth_rgb-11]: started with pid [9063]
process[camera/points_xyzrgb_sw_registered-12]: started with pid [9073]
[ INFO] [1553794779.839760437]: No devices connected.... waiting for devices to be connected
process[camera/depth_registered_sw_metric_rect-13]: started with pid [9077]
process[camera/depth_registered_rectify_depth-14]: started with pid [9084]
process[camera/points_xyzrgb_hw_registered-15]: started with pid [9092]
process[camera/depth_registered_hw_metric_rect-16]: started with pid [9099]
process[camera/depth_registered_metric-17]: started with pid [9106]
process[camera/disparity_depth-18]: started with pid [9112]
process[camera/disparity_registered_sw-19]: started with pid [9121]
process[camera/disparity_registered_hw-20]: started with pid [9124]
process[camera_base_link-21]: started with pid [9130]
process[camera_base_link1-22]: started with pid [9131]
process[camera_base_link2-23]: started with pid [9137]
process[camera_base_link3-24]: started with pid [9143]
[ INFO] [1553794782.840642615]: No devices connected.... waiting for devices to be connected
[ INFO] [1553794785.841515084]: No devices connected.... waiting for devices to be connected
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.