kinect2_tracker
kinect2_tracker copied to clipboard
Not able to catkin_make on kinect2_tracker cloned repository
First of all thanks to you for providing this ROS wrapper to the community. I was following the installation steps and came across few issues and solved them.
- Couldn't clone- git clone http://amrcgithub/mep12sr/kinect2_tracker so I have cloned - git clone https://github.com/mcgi5sr2/kinect2_tracker into my catkin workspace.
- While doing catkin_make, it throws an error saying fatal error: NiTE.h: No such file or directory
include "NiTE.h" then i have copied all the header files from NiTE's include dir to catkin_ws/src/kinect2_tracker/include dir. An easy fix is to edit cmakeLists.txt in line 80 and 81 by providing the path to NiTE-Linux-x64-2.2 dir.
- After doing above mentioned changes and using catkin_make, it again throws some errors. I have found out it is because of this piece of code in file kinect2_tracker.hpp from line 218-233: `//Publish the calibration tf_frame as the cross product of the shoulder vectors -// This function publishes the calibration_space opposite the shoulders of the user
- void publishCalibrationOriginTF(nite::SkeletonJoint skelTorso, nite::SkeletonJoint skelRshoulder, nite::SkeletonJoint skelLshoulder, int uid)
- {
- if (skelTorso.getPositionConfidence() > 0.0)
- {
-
tf::Transform calibrationOriginTransform;
- tf::Transform torsoTransform;
-
tf::Vector3 torsoVec3 = tf::Vector3(skelTorso.getPosition().x / 1000.0, skelTorso.getPosition().y / 1000.0, skelTorso.getPosition().z / 1000.0);
-
torsoTransform.setOrigin(torsoVec3);
- torsoTransform.setRotation(tf::Quaternion(0,0,0,1));
-
tf::Vector3 RshoulderVec3 = tf::Vector3(skelRshoulder.getPosition().x / 1000.0, skelRshoulder.getPosition().y / 1000.0, skelRshoulder.getPosition().z / 1000.0); //create a vector for the right shoulder
- RshoulderVec3 = (RshoulderVec3 - torsoVec3); //vector is the difference of the two
-
tf::Vector3 LshoulderVec3 = tf::Vector3(skelLshoulder.getPosition().x / 1000.0, skelLshoulder.getPosition().y / 1000.0, skelLshoulder.getPosition().z / 1000.0); //create a vector for the left shoulder`
Fix: remove all these - (hyphen marks) from in front of these lines of code and perform catkin make.
Awesome thanks for these fixes. Does the tracking system work for you now? I will update the readme as soon as I find the time
Yes it works ! :) One last thing need to mention is to edit the path in setup_nite.bash for NiTE-Linux-x64-2.2 dir while creating symbolic link between .ros dir and NiTE-Linux-x64-2.2 dir.
- I was expecting this kind of topics after $roslaunch kinect2_tracker tracker.launch
(just for ref. from kinect v1 gazebo simulation)
/camera/depth/camera_info
/camera/depth/image_raw
/camera/depth/points
/camera/parameter_descriptions
/camera/parameter_updates
/camera/rgb/camera_info
/camera/rgb/image_raw
/camera/rgb/image_raw/compressed
/camera/rgb/image_raw/compressed/parameter_descriptions
/camera/rgb/image_raw/compressed/parameter_updates
/camera/rgb/image_raw/compressedDepth
/camera/rgb/image_raw/compressedDepth/parameter_descriptions
/camera/rgb/image_raw/compressedDepth/parameter_updates
/camera/rgb/image_raw/theora
/camera/rgb/image_raw/theora/parameter_descriptions
/camera/rgb/image_raw/theora/parameter_updates
But it just shows following topics.
monu@linux:~$ rostopic list /people
/rosout
/rosout_agg
/tf
monu@linux:~$ rostopic echo /people
ERROR: Cannot load message class for [skeleton_tracker/user_IDs]. Are your messages built?
monu@linux:~$ rostopic echo /tf transforms:
header: seq: 0 stamp: secs: 1463091043 nsecs: 330935578 frame_id: global_space child_frame_id: /brix_2_camera_frame transform: translation: x: 0.295729 y: -0.463885 z: -0.0325348 rotation: x: 0.0 y: 0.0 z: 0.0 w: 1.0
Did you manage to visualize raw data of skeleton or depth or IR images streamed out of kinect v2 ROS wrapper.
-Thanks
Never managed to get any of that working. Feel free to add pull requests if you manage to improve anything. I believe iai_kinect2 package offers depth etc info over ROS
Yeah sure. Thanks
Could this kinect2_tracker run on wimdows?I am working with multiple kinect v2 base on libfreenect2.Thank you!
No I am afraid not as it relies on the NiTE2.2 libraries
On 2016-07-26 3:33 PM, Songbin wrote:
Could this kinect2_tracker run on wimdows?I am working with multiple kinect v2 base on libfreenect2.Thank you!
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/mcgi5sr2/kinect2_tracker/issues/1#issuecomment-235286723, or mute the thread https://github.com/notifications/unsubscribe-auth/AGVSm_PJzp-NnK0_C1G_W1b_3JmpbojYks5qZhrVgaJpZM4IddOa.
Thank you for your reply. Other question:could this solution track multiple people at the same time and how to fusion the joint data to one skeleton when use the multiple kinects to track one person? -Thank you !
Hi,
I never got as far as fusing the data into one. If you are looking to use Windows then the university of Ulm created a system that can do that for you. As I understand it is still a work in progress. You can find the windows install files and guide here
https://github.com/fg-uulm/fusionkit
I hope this helps
kind regards
Stephen
On 27/07/16 09:16, Songbin wrote:
Thank you for your reply. Other question:could this solution track multiple people at the same time and how to fusion the joint data to one skeleton when use the multiple kinects to track one person? -Thank you !
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/mcgi5sr2/kinect2_tracker/issues/1#issuecomment-235517527, or mute the thread https://github.com/notifications/unsubscribe-auth/AGVSmy2d51LgTNUgg881IBkhMX0QR0OGks5qZxPdgaJpZM4IddOa.
Hi, that is a great work~
kind regards Songbin
Hi @bxs1260 @mcgi5sr2
I followed all the instructions to configure the package, but I have the following error when run "UserViewer", The same error is generated when I execute "roslaunch kinect2_tracker..."
Protonect and NiViewer2 run correctly
andres@andres:~/usrlib/NiTE-Linux-x64-2.2/Samples/Bin$ sudo ./UserViewer [Info] [Freenect2Impl] enumerating devices... [Info] [Freenect2Impl] 8 usb devices connected [Info] [Freenect2Impl] found valid Kinect v2 @2:5 with serial 012752450747 [Info] [Freenect2Impl] found 1 devices [Info] [Freenect2Impl] enumerating devices... [Info] [Freenect2Impl] 8 usb devices connected [Info] [Freenect2Impl] found valid Kinect v2 @2:5 with serial 012752450747 [Info] [Freenect2Impl] found 1 devices [Info] [Freenect2DeviceImpl] opening... [Info] [Freenect2DeviceImpl] transfer pool sizes rgb: 2016384 ir: 608*33792 [Info] [Freenect2DeviceImpl] opened [Info] [Freenect2DeviceImpl] starting... [Info] [Freenect2DeviceImpl] submitting rgb transfers... [Info] [Freenect2DeviceImpl] submitting depth transfers... [Info] [RgbPacketStreamParser] packetsize or sequence doesn't match! [Info] [Freenect2DeviceImpl] started Error opening database/parameters file. [Info] [DepthPacketStreamParser] 8 packets were lost [Info] [OpenGLDepthPacketProcessor] avg. time: 5.16118ms -> ~193.754Hz
Do you have any idea of the error?
Thanks, Andrés
Copy the files in "Redist/NiTE2/Data" to "Sample/Bin/NiTE2/Data", and the problem should be fixed.