Society of Robots - Robot Forum

Software => Software => Topic started by: dcole07 on December 17, 2006, 04:36:26 PM

Title: processing images
Post by: dcole07 on December 17, 2006, 04:36:26 PM
If you have a robot moving at 1mph the camera's fps could be low and it could avode objects, but how many frames per sec would it need if it was moving at 100mph. What kind of computer could handle processing that many frames in a quick enough time?
Title: Re: processing images
Post by: Cognaut on December 17, 2006, 05:08:24 PM
You have to factor in your robot's ability to react.

It's just like the instructions given to drivers about keeping a number of car lengths between them and the car in front of them.  The number of car lengths depends on speed and driving conditions.   It's based on assuming a reaction time of a second or two and room for braking.

The frame rate is part of the reaction time.
Title: Re: processing images
Post by: Militoy on December 17, 2006, 05:43:36 PM
The answer to your question is FAST computers, and lots of ‘em. Not trying to be glib – but that’s actually a pretty accurate answer. I can’t speak as to the actual equipment we are using on our own race robot (I’m not authorized to), and I don’t know about 100 MPH, as our robot tops out at just above 70 MPH – but at top speed, we’re covering a little over 100 feet per second. Progressive-scan digital video cameras record 60 frames per second. For us, that would mean a frame from each camera every 1.7 feet or so, or every 17 mS at top speed. At 100 MPH, that would mean a frame every 2.4 feet. In an actual race, we don’t run so fast. For one thing, our next race has a set 30 MPH speed limit. For another, moving 5000 pounds of robot down the road in traffic under its own volition is dangerous enough at even 10 or 20 MPH. The slowest item on an autonomous race vehicle is the GPS. Again, I can’t give out our sample rates, but it’s certainly not as fast as the video – and at 100 MPH, you would move a fair distance without a refresh of the GPS data, and would have to rely on other sensors in between refreshes. To answer your question generically – our solution is to dedicate a fast, military-grade computer to each sensor (including cameras), and to pre-process the data before it is fed to the “brain” of the ‘bot. Even the chassis itself has multiple microprocessors in charge of just moving controls around safely and accurately. This leaves the “brain” free to make the important decisions, like “how the heck do I avoid this crash?"
Title: Re: processing images
Post by: Admin on December 18, 2006, 10:59:43 AM
I dont know if there is a way to calculate it . . . because as Cognaut suggested, you have to factor in the environment and vehicle response ability . . .

With my experience using high speed cameras, I had to run experiments with different fps until I was happy with the results . . .