Yeah, I would like to have something like that just for stereo images, because for
anything else related to 3D, we can make use of the newly created pointcloud3d interface.
I am in the process of building 3D polygonal maps out of stereo together with laser, and
an interface just for grabbing synchronized stereo images would really help.
I agree with Toby about the driver level, but I think the problem will reside on the
client level more, as it will have to get data from two separate channels, check
timestamps, and select only the relevant one, instead of grabbing a single data packet.
But maybe (as Geoff and Reed mentioned), there are scenarios where having more than 2
synchronized cameras could come in handy. What about we make the camera count variable and
we provide an array of player_camera_data for each cam ? Sounds like a huge data packet,
but then again, those working with more than 3 cameras at once should expect that, right ?
Kurt Konolige wrote:
> Radu, if you're just going to get stereo images, this might be fine. If
> you want to treat stereo as a 3D device, you might want to expand it to
> include a disparity image, 3D points, stereo parameters, etc.
> Cheers --Kurt
> Radu Bogdan Rusu wrote:
>> I would like to introduce a new interface before 2.1 comes out, good for all of us who
>> deal (or would like to deal) with stereo vision in our research work.
>> So far, the only option to provide stereo via Player is to use two separate camera
>> interfaces, but that is a pain to synchronize (even with very accurate timestamps).
>> The proposal is simple: duplicate camera interface, but get two player_camera_data_t
>> structures in, inside of one.
>> typedef struct player_stereo_data
>> player_camera_data_t left_image;
>> player_camera_data_t right_image;
>> } player_stereo_data_t;
>> Any proposals or requests before we kick it in ?
| Radu Bogdan Rusu | http://rbrusu.com/
| Intelligent Autonomous Systems
| Technische Universitaet Muenchen