DPRG
DPRG List  



[DPRG] webcam robot vision limitations

Subject: [DPRG] webcam robot vision limitations
From: Next Kiwi next at pitstock.com
Date: Tue Jun 26 23:36:01 CDT 2007

Hi Chris, that is interesting an you are likely right. Just a question here 
as I work with cameras and wondered why I have never used SD cards for 
real-time stuff.

Correct me if I am wrong but here goes. SD flash card typical is 100 to 300K 
writes for a cards life time. So 300K/15fps will give 20K seconds (333 
minutes) worth of storage before the limit is hit. Is that right ? I think 
RAM may be a better medium and may be faster to read/write too.


Cheers
Keith

----- Original Message ----- 
From: "Chris Jang" <cjang at ix.netcom.com>
To: <dprglist at dprg.org>
Sent: Wednesday, June 27, 2007 4:16 PM
Subject: [DPRG] webcam robot vision limitations


> Hello, I'm not sure if anyone is interested in this...
>
> But it's something different to discuss.
>
> I have a small robot with a VGA webcam and ARM9 PC104 SBC. Up until
> last night, the performance out of this combination has been
> embarrassing - frame rates of around 1.2 fps with a low percentage
> of corrupted images.
>
> After lots of experimentation, the webcam now runs at 15 fps with
> long sequences of around 10 seconds without any image corruption.
> This includes V4L capture, JPEG decode, and saving to SD flash. I
> hope that with some more twiddling, there will be no more corruption.
>
> Here's the trick (I believe) - cameras have a native frame rate.
> If whatever consumes and processes the video does not operate at
> pretty much exactly this speed, then output is prone to corruption
> due to device/driver sync issues. So I had to put an adaptive
> spinning delay loop which adjusts depending on the measured time
> between each frame capture. This adaptive delay tries to hold the
> capture rate at 15 fps which matches the webcam.
>
> Ok, so boring...here's the interesting part.
>
> Now that the basic stuff is worked out, the amount of CPU time
> available for processing each frame is known. On the 200 MHz ARM9
> based computer board I'm using, roughly half the time is spent
> capturing images, decoding and saving them to SD flash (some time
> could be recovered by not saving images - but then debugging is
> impossible as we can't know what the robot saw). The other half of
> the time is available. That's roughly 30 milliseconds at 15 times
> each second, once for each image frame from the webcam.
>
> I think this is enough time for pixel based image segmentation
> (fancy term for color blobs). There is enough time for some
> statistics and simple morphological filters. But there is not
> enough time for any feature based techniques (no convolution).
>
> Stanford's DARPA Grand Challenge vehicle dedicated one 1.6 GHz
> Pentium M computer to 320x240 monocular RGB video. They did color
> based image segmentation with some morphological filtering. So even
> with over 10x the power of a 200 MHz ARM9, they were still limited
> to very sophisticated color blob detection.
> _______________________________________________
> DPRGlist mailing list
> DPRGlist at dprg.org
> http://list.dprg.org/mailman/listinfo/dprglist
>
> 

More information about the DPRG mailing list

Copyright © 1984 - 2006 Dallas Personal Robotics Group. All rights reserved.
Website Design by NCC

For the latest robot news visit robots.net