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

formatting link
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.

Reply to
Newbie
Loading thread data ...

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

Reply to
The Artist Formerly Known as K

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):

formatting link
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.

Reply to
Matt D

automagically

camera

possible.

allows

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

Reply to
JGCASEY

widely

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.

formatting link
hth, M.E.Farmer

Reply to
M.E.Farmer

Folks:

here is a small summary:

For Linux based system, xawt seems to be the solution:

formatting link
one can get access to the stream from any device that has a video output.

For win32, it looks like the solution is this:

formatting link
one has to use the python programming language.

Great help, thank you all,

Jake.

Matt D wrote:

formatting link

movement

Reply to
Newbie

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.

Reply to
The Artist Formerly Known as K

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.