web camera or else ? 15-30 fps processing of camera videos.

I am doing some robotics projects but my main area of interest is trying out several algorithms for the processing of the stream of data
coming from the video.
I am wondering what type of camera I should invest in. Either I could buy a web cam and hope I can find a driver I could either modify or use. i.e. every frame is somehow stored on the computer automagically or I could buy a camera not unlike the AVRcam (http://www.jrobot.net/Projects/AVRcam.html) or the CMUcam and try to do the processing once the data has been streamed to the nearest computer ? or should I use an expensive video card, some CCTV camera and a frame grabber to digitize photos so they can be processed afterwards. I expect my processing algorithms to handle at least 15 frames per second framerate once they are working ont the final set-up.
My constraints are that I would like to avoid as much as possible complex set-ups even if that means buying a more expensive camera set-up. For the prototyping, I would like to try my algorithms out using a combination of python and matlab (all very slow) and then expect the same architecture (image files location and flow) with speedier set-up like python+psyco or C. All the processing would be done on a computer dedicated for that. Windows or Linux are possible.
Any help from either comp.robotics.misc or c.l.p would be helpful. Thanks in advance,
Jake.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Newbie wrote:

An easy approach to this is to use a wireless camera on your robot, with the receiver attached to a frame grabber on a remote host. This allows you your choice of camera (stand alone video transmitters are widely available), and you are not limited to only processing hardware you can carry on board your robot. You also get full FPS. Frame-grabber cards are inexpensive and widely available for both Windows and Linux.
Hope that helps -- tAfkaks
--
(Replies: cleanse my address of the Mark of the Beast!)

Teleoperate a roving mobile robot from the web:
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
The Artist Formerly Known as Kap'n Salty wrote:

data
could
automagically
to
camera
set-up.
possible.
with
allows
can
I wanted to go down that path but cannot get information on how to access the images from the tv receiver card in real time using my own software.
Do you use Java?
John Casey
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
JGCASEY wrote:

or
try
15
out
be
widely
cards
Ever do search on Google? This was number 1 and 2 ;). I searched for "python video capture". I have used this module and it works well, it also has a really nifty ftp uploader demo script. http://videocapture.sourceforge.net /
hth, M.E.Farmer
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
JGCASEY wrote:

I do, but not for image processing. There IS a multi-media SDK out there for java that handles video capture -- google should help you out here (I can't recall the site). I'm not entirely sure how mature it is. I looked a couple of years back and decided to avoid it. It likely does not support all platforms, since video capture drivers vary a good bit by platform. This all may have changed, however.
On Windows, you'll use DirectShow (part of DirectX) to get incoming frames. There's also the deprecated VFW (Video for Windows).
On linux, there's Video for Linux.
In either case, the APIs are not difficult to use. You should never have to access the hardware directly.
Note that whether you get the video from a webcam or framegrabber, the APIs are the same. I've actually abstracted some of the DirectX stuff out to the point that I can get frames from a video file *or* a camera the same way.
--
(Replies: cleanse my address of the Mark of the Beast!)

Teleoperate a roving mobile robot from the web:
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Newbie wrote:

<snip>
Same for me! From what I can tell, a cheap webcam will "just work" with a recent version of windows - i.e. plug it in using USB and then you can have programmatic access to the data and grab frames very easily. This setup works fine with my digital camera working as a webcam - real 10 webcams should be the same. Not sure what Linux compatibility is like these days - for that I know for a fact that the Hauppauge USB WinTV thing works (or at least the hardware version I have works) with Linux.
For linux I found this (now on the wayback archive - original page is now 404): http://web.archive.org/web/20020322015936/http://staff.aist.go.jp/naoyuki.ichimura/research/tips/v4ln_e.htm
Hopefully that is some help.
Oh by the way, speed on a modern machine shouldn't be an issue - my badly written prototype in visual basic of all things (dont laugh - seemed like a good idea at the time!) was tracking a single coloured object reliably at significantly greater than 30fps (it automatically altered the window it searched in based on size and amount of movement of the object - at times it was approaching 100fps) on a modest by today's standards 1.4ghz pc, using a 320x240 stream.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Folks:
here is a small summary:
For Linux based system, xawt seems to be the solution: http://linux.bytesex.org/xawtv / where one can get access to the stream from any device that has a video output.
For win32, it looks like the solution is this: http://videocapture.sourceforge.net / where one has to use the python programming language.
Great help, thank you all,
Jake.
Matt D wrote:

data
with
can
This
10
like
Linux.
http://web.archive.org/web/20020322015936/http://staff.aist.go.jp/naoyuki.ichimura/research/tips/v4ln_e.htm
movement
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.