On Mon, Jun 6, 2011 at 2:26 PM, Bill Morris <span dir="ltr"><<a href="mailto:morris@ee.ccny.cuny.edu">morris@ee.ccny.cuny.edu</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="im">
> > I would like to see a system for storing camera calibrations based on<br>
</div><div class="im">> The camera_info_manager URL supports any naming scheme desired.<br></div></blockquote><div><br>In the unstable version of the OpenNI (Kinect) drivers, I've tried out a
 system for storing calibrations based on serial number. You can pass in
 a URL containing "%s", and the driver replaces that with the camera 
name. The camera name is of the form "[rgb|depth]_[serial#]". For 
example, if you give the driver a URL "/tmp/calibration_%s.yaml" it 
might expand to "/tmp/calibration_depth_B00362708888047B.yaml". This 
makes working with multiple Kinects a lot easier.<br>
<br>
That's trivial to implement in a driver, but it would be nice to push 
the name substitution down into CameraInfoManager just to ensure a 
consistent API across camera drivers. In other words, have this just 
work:<br>
<br>
<span style="font-family: courier new,monospace;">info_manager.setCameraName("depth_B00362708888047B");</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
info_manager.loadCameraInfo("/tmp/calibration_%s.yaml");</span><br>
<br>
I'm not attached to "%s", maybe something like "$NAME" would be clearer.<br><br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
I would like to propose that cameras that can not store calibrations in<br>
memory store the calibrations in $ROS_HOME/calibration/driver-id.cal<br></blockquote><div><br>+1 on $ROS_HOME over /tmp. /tmp works, as long as you don't reboot :). Otherwise you have to know and remember to change the URL, which can lead to otherwise unnecessary launch file editing. Let's streamline that away.<br>
<br>Cheers,<br>Patrick<br></div></div>