strands-project / strands_perception_people

long-term detection, tracking and recognition of people
96 stars 70 forks source link

Upper Body Detector issue #188

Closed ferdianjovan closed 8 years ago

ferdianjovan commented 8 years ago

Hi,

I run the UBD with the current indigo-release, but the UBD does not produce any detection. It runs fine, but no detection even when a person is in front of the robot. I refer to https://github.com/strands-project/strands_perception_people/issues/107 for all possible errors, but everything works fine. Any idea?

cdondrup commented 8 years ago

Is there an image coming out on /upper_body_detector/image? Which topics are you subscribing to and what openni version are you using?

lucasb-eyer commented 8 years ago

Do rosnode info /upper_body_detector[or similar] and see if any of the subscribed topics is marked "unknown type", if so, you forgot to run something else. (Or something else has the problem, i.e. recursively apply to that.)

We recently had the problem that the PTU got a different device number and thus did not publish anymore, because of that the ground-plane did not publish anymore and because of that the UBD did not publish anymore.

ferdianjovan commented 8 years ago

There is an image coming out on /upper_body_detector/image. I am running vision_logging and realising that no UBD detected. And for openni, I believe we are still using openni 1.5.4

Did rosnode info /upper_body_detector and rosnode info /ground_plane, they looked fine to me.

strands@bobl:~$ rosnode info /upper_body_detector 
--------------------------------------------------------------------------------
Node [/upper_body_detector]
Publications: 
 * /upper_body_detector/image/libav [libav_image_transport/Packet]
 * /upper_body_detector/image/libav/parameter_updates [dynamic_reconfigure/Config]
 * /upper_body_detector/image/libav/parameter_descriptions [dynamic_reconfigure/ConfigDescription]
 * /upper_body_detector/image/compressedDepth/parameter_updates [dynamic_reconfigure/Config]
 * /upper_body_detector/closest_bounding_box_centre [geometry_msgs/PoseStamped]
 * /upper_body_detector/image [sensor_msgs/Image]
 * /upper_body_detector/image/theora [theora_image_transport/Packet]
 * /upper_body_detector/bounding_box_centres [geometry_msgs/PoseArray]
 * /upper_body_detector/image/compressedDepth/parameter_descriptions [dynamic_reconfigure/ConfigDescription]
 * /upper_body_detector/image/compressed/parameter_updates [dynamic_reconfigure/Config]
 * /upper_body_detector/image/compressedDepth [sensor_msgs/CompressedImage]
 * /upper_body_detector/marker_array [visualization_msgs/MarkerArray]
 * /rosout [rosgraph_msgs/Log]
 * /upper_body_detector/detections [upper_body_detector/UpperBodyDetector]
 * /upper_body_detector/image/compressed [sensor_msgs/CompressedImage]
 * /upper_body_detector/image/compressed/parameter_descriptions [dynamic_reconfigure/ConfigDescription]
 * /upper_body_detector/image/theora/parameter_descriptions [dynamic_reconfigure/ConfigDescription]
 * /upper_body_detector/image/theora/parameter_updates [dynamic_reconfigure/Config]

Subscriptions: 
 * /head_xtion/depth/image_rect [sensor_msgs/Image]
 * /ground_plane [ground_plane_estimation/GroundPlane]
 * /head_xtion/depth/camera_info [sensor_msgs/CameraInfo]
 * /head_xtion/rgb/image_rect_color [sensor_msgs/Image]

Services: 
 * /upper_body_detector/image/theora/set_parameters
 * /upper_body_detector/image/compressedDepth/set_parameters
 * /upper_body_detector/get_loggers
 * /upper_body_detector/image/libav/set_parameters
 * /upper_body_detector/image/compressed/set_parameters
 * /upper_body_detector/set_logger_level

contacting node http://192.168.0.101:48970/ ...
Pid: 10414
Connections:
 * topic: /rosout
    * to: /rosout
    * direction: outbound
    * transport: TCPROS
 * topic: /upper_body_detector/detections
    * to: /save_ubd
    * direction: outbound
    * transport: TCPROS
 * topic: /upper_body_detector/bounding_box_centres
    * to: /save_ubd
    * direction: outbound
    * transport: TCPROS
 * topic: /upper_body_detector/bounding_box_centres
    * to: /bayes_people_tracker
    * direction: outbound
    * transport: TCPROS
 * topic: /upper_body_detector/marker_array
    * to: /rviz_1457298913545982955
    * direction: outbound
    * transport: TCPROS
 * topic: /upper_body_detector/image/compressed
    * to: /rviz_1457298913545982955
    * direction: outbound
    * transport: TCPROS
 * topic: /head_xtion/depth/camera_info
    * to: /manager_head_xtion (http://192.168.0.101:39348/)
    * direction: inbound
    * transport: TCPROS
 * topic: /ground_plane
    * to: /ground_plane (http://192.168.0.101:52810/)
    * direction: inbound
    * transport: TCPROS
 * topic: /head_xtion/rgb/image_rect_color
    * to: /image_proc_head_xtion (http://192.168.0.101:38300/)
    * direction: inbound
    * transport: TCPROS
 * topic: /head_xtion/depth/image_rect
    * to: /manager_head_xtion (http://192.168.0.101:39348/)
    * direction: inbound
    * transport: TCPROS

strands@bobl:~$ rosnode info /ground_plane        
--------------------------------------------------------------------------------
Node [/ground_plane]
Publications: 
 * /ground_plane [ground_plane_estimation/GroundPlane]
 * /rosout [rosgraph_msgs/Log]

Subscriptions: 
 * /ptu/state [sensor_msgs/JointState]

Services: 
 * /ground_plane/get_loggers
 * /ground_plane/set_logger_level

contacting node http://192.168.0.101:52810/ ...
Pid: 10413
Connections:
 * topic: /rosout
    * to: /rosout
    * direction: outbound
    * transport: TCPROS
 * topic: /ground_plane
    * to: /upper_body_detector
    * direction: outbound
    * transport: TCPROS
 * topic: /ptu/state
    * to: /ptu (http://bob:57613/)
    * direction: inbound
    * transport: TCPROS
lucasb-eyer commented 8 years ago

@cdondrup's test is more effective, since it shows an image, it means the UBD's callback is being run, all inputs are there and publish, and time sync works. That's odd; does the depth image itself look reasonable? Have you changed any parameters?

cdondrup commented 8 years ago

If you are still using the old openni wrapper, you have to subscribe to depth/image_rect_meters as the other is the wrong format and will not detect anything. The latest version of the ubd subscribes to the correct topic when using the openni2 (which should be default now) but when using the openni wrapper still you must subscribe to above topic.

ferdianjovan commented 8 years ago

No, I have not changed any parameter, I was about to :) The depth image (depth/image_rect_meters) from rostopic publishes right things (raw). Ah you are right, that is the different, I am still using the old openni_wrapper. OK, that works now. Thanks for the help.

cdondrup commented 8 years ago

No problem. But you should switch to openni2 ;) It's started by default when using the strands_cameras bringup file anyway.