ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

low rate of stereo prosilica cameras for face_detector

asked 2011-03-02 08:26:30 -0600

Reza gravatar image

I'm using a pair of prosilica cameras on care-o-bot, receiving images (left, right, disparity) at rate of about 2 hz, few synchronized triples, which leads to use _approximate_sync:=True _queue_size:=10 in stereo_proc and stereo_view

now face_detector is not working for this pair, while it works fine with a recorded bag video (test), has anyone any idea? suggession, please?

edit retag flag offensive close merge delete

Comments

What is the network connection between the nodes and what else is runnong over that connection?
tfoote gravatar image tfoote  ( 2011-03-02 08:39:56 -0600 )edit

6 Answers

Sort by ยป oldest newest most voted
0

answered 2011-03-02 23:06:51 -0600

Reza gravatar image

sorry should correct part of my last comment as below:

I downgraded bag playing rate to 2 hz to simulate real camera, face_detector is working fine, so images (camera) synchronization should be a matter not the low rate.

edit flag offensive delete link more

Comments

rostopic hz /stereo/left/image_rect is about 2.2 rostopic hz /stereo/right/image_rect is about 2.4 rostopic hz /stereo/disparity is about 1.6
Reza gravatar image Reza  ( 2011-03-03 05:37:01 -0600 )edit
0

answered 2011-03-02 22:23:12 -0600

Reza gravatar image

updated 2011-03-10 05:05:36 -0600

mmwise gravatar image

thank you for reply,

bag file just produces /image_raw and /camera_info, not the /disparity so same load of calculation is in real camera and bag file. even I downgraded the bag playing rate to 2 hz to simulate real camera rate, but no ouput. the synchronization problem could be a matter.

the package that I'm using is a standard form as below:

  <!-- The camera node -->
  <node ns="stereo/left" name="color_camera" pkg="prosilica_camera" type="prosilica_node" output="screen">
    <param name="ip_address" type="str" value="169.254.236.139"/>
    <param name="trigger_mode" type="str" value="streaming"/>
    <remap from="camera/image_raw" to="image_raw"/>
    <remap from="camera/camera_info" to="camera_info" />
    <rosparam command="load" file="$(find uh_study)/common/camera_setting.yaml" />
  </node>
  <!-- The camera node -->
  <node ns="stereo/right" name="color_camera" pkg="prosilica_camera" type="prosilica_node" output="screen">
    <param name="ip_address" type="str" value="169.254.47.10"/>
    <param name="trigger_mode" type="str" value="streaming"/>
    <remap from="camera/image_raw" to="image_raw"/>
    <remap from="camera/camera_info" to="camera_info" />
    <rosparam command="load" file="$(find uh_study)/common/camera_setting.yaml" />
  </node>
  <include file="$(find uh_study)/launch/face_detector.launch" />

and face_detector is

  <node ns="stereo" pkg="stereo_image_proc" type="stereo_image_proc" respawn="false" name="stereo_image_proc" args="_approximate_sync:=True _queue_size:=15"/>
  <node pkg="face_detector" type="face_detector" name="face_detector" args="stereo:=/stereo image:=image_rect _approximate_sync:=True _queue_size:=15" output="screen">
     <param name="classifier_name" type="string" value="frontalface" />
     <param name="classifier_filename" type="string" value="$(find opencv2)/opencv/share/opencv/haarcascades/haarcascade_frontalface_alt.xml" />
     <param name="classifier_reliability" type="double" value="0.9"/>
     <param name="do_continuous" type="bool" value="true" />
     <param name="do_publish_faces_of_unknown_size" type="bool" value="true" /> 
     <param name="do_display" type="string" value="local" />
   </node>

the camera setting is

{auto_exposure: true, auto_gain: true, auto_whitebalance: true, binning_x: 1, binning_y: 1,
  exposure: 2.5e-05, frame_id: camera, gain: 0, height: 480, trig_rate: 15.0, trig_timestamp_topic: '',
  trigger_mode: streaming, whitebalance_blue: 100, whitebalance_red: 100, width: 640,
  x_offset: 500, y_offset: 500}

I can't remember the CPU on care-o-bot, but it might be good enough, and these stuff are all things running on it. roscore is running in another pc.

old topic of my question was for stereo_proc, and I should delete the last part, which will do it.

Regards, Reza,

edit flag offensive delete link more
0

answered 2011-03-04 00:57:21 -0600

Reza gravatar image

as far as I know, there is nothing as a hardware synchronisation, the launch files just start running prosilica cameras node.

edit flag offensive delete link more

Comments

please either use the "comment" feature or update your original question instead of posting new answers. This is meant to have a Question + Answer format like stackoverflow, thanks.
kwc gravatar image kwc  ( 2011-08-04 19:19:38 -0600 )edit
0

answered 2011-03-03 20:25:09 -0600

KoenBuys gravatar image

Are you already using hardware synchronisation?

edit flag offensive delete link more
0

answered 2011-08-03 17:32:40 -0600

Wim gravatar image

When using the approximate time synchronizer on topics that only get published at a slow rate, it is possible that none of the messages ever gets through. Can you verify that the face detector is actually receiving any images?

edit flag offensive delete link more
0

answered 2011-03-02 17:51:25 -0600

KoenBuys gravatar image

Do you have your packages somewhere online in a repo? I'm willing to test it on my Prosilica Stereo setup. (Please delete the copy of your question in the older topic.) What's the current CPU load of the machine(s) doing the calculation? What hardware are you running on? Is in the bag file the disparity already calculated? Perhaps this takes most of your calculation effort?

edit flag offensive delete link more

Question Tools

Stats

Asked: 2011-03-02 08:26:30 -0600

Seen: 586 times

Last updated: Aug 03 '11