Video capture ! Possible?

Hello, I read on other forums that video processing (color detection, object recognition, etc.) is impossible with arduino because of the amount of processing power required for this. However what about simple video capture?

I have Arduino Uno and Arduino WiFi shield and what I would like is to stream video captured through an Internet connection. Is this possible? If yes then what video camera can I buy?

However what about simple video capture?

Define simple?

I recall some 10 by 10 pixels (?) BW video demo. It was barely enough to recognize anything. Think youtube is your friend here

but in short, not possible.

Just get an IP camera.

Isn't it about time we had an "Arduino and Video - Crushing your expectations" sticky thread? :wink:

When you have computers that cant stream video whats 8 mhz micro controller going to do?

sja785:
what I would like is to stream video captured through an Internet connection. Is this possible? If yes then what video camera can I buy?

Buy an IP camera. You can use your Arduino and WiFi shield to prop it up, if you like.

PeterH:
Buy an IP camera. You can use your Arduino and WiFi shield to prop it up, if you like.

I know that my project (a car that can be controlled over a WiFi connection) would work with an IP camera. However wouldn't that defy the whole point of using an arduino board for this type of project? Should I be looking at some other product for this type of project?

Would it change anything if rather then streaming video; snapshots are taken, saved on an SD card, and then stream the image files on the SD card?

Would it change anything if rather then streaming video; snapshots are taken, saved on an SD card, and then stream the image files on the SD card?

try sitting in the driver's seat.
Look around, then close your eyes, engage drive and steer based on what you just saw. Drive for about twenty seconds, then open your eyes. Repeat.

(20 seconds is being generous)

AWOL:
try sitting in the driver's seat.
Look around, then close your eyes, engage drive and steer based on what you just saw. Drive for about twenty seconds, then open your eyes. Repeat.

(20 seconds is being generous)

Good point; was not thinking there would be such a long delay. Arduino has been a lot of fun; really helped me learn lots of new stuff, but I guess video capture/processing is too much and I might have to look at something else. Any leads ... ?

Some thoughts on a simple routerbot that could be expanded.

http://www.lynxmotion.net/viewtopic.php?f=20&t=6343

sja785:
wouldn't that defy the whole point of using an arduino board for this type of project?

That begs the question - what is the point of trying to use the Arduino for this type of project?

An arduino can perfectly support a video project with

  • pan and tilt the camera
  • determine light conditions
  • switch on LEDs or even IR leds
  • can shine a laser pointer
  • can drive the camera to a new location
  • can hold a magnifying glass for the webcam (to get different focus)
  • can detect heat, moisture etc
  • sound alarms
  • ...

PeterH:
That begs the question - what is the point of trying to use the Arduino for this type of project?

What would you suggest? I know that Arduino (+ WiFi Shield) and an IP camera would solve my problem however the hardware of the IP camera really and truly can already do what I am doing with the Arduino. For example I found an IP camera which I can tilt and rotate; if the hardware of this IP camera can already do this then it can also manage another motor to move a pair of wheels.

However I do not know what kind of boards these IP cameras have inside. I guess what I am looking for is something that fills the gap between Arduino and RaspberryPI (I think RaspberryPI is too much for this type of project).

sja785:
if the hardware of this IP camera can already do this then it can also manage another motor to move a pair of wheels.

This is the first time you've mentioned wheels.

Perhaps you ought to step back and explain what you're trying to achieve. I don't think it is sensible to do any form of video capture/processing/transmission with an Arduino, but perhaps there are other parts of your problem which an Arduino might be useful for.

If you are want to experiment with video, you might look into how the old parallel port Connectix QuickCams operated. A microcontroller might be able to capture video in some form from the quickcam.

PeterH:
This is the first time you've mentioned wheels.

Sorry, I must have not been clear enough in my second post. So far I have developed a car that receives commands over a WiFi connection. I have Arduino Uno, Arduino WiFi Shield and a Motor Sheild (although this does not fit directly on the arduino). I have programmed Arduino as a server which takes commands from a client program. Everything works fine (move forward, back, left, right, all things that a car is expected to do). However the car is hard to drive when no longer in the same room :slight_smile:

That is why I thought of trying to plug in a camera.

sja785:

PeterH:
This is the first time you've mentioned wheels.

Sorry, I must have not been clear enough in my second post. So far I have developed a car that receives commands over a WiFi connection. I have Arduino Uno, Arduino WiFi Shield and a Motor Sheild (although this does not fit directly on the arduino). I have programmed Arduino as a server which takes commands from a client program. Everything works fine (move forward, back, left, right, all things that a car is expected to do). However the car is hard to drive when no longer in the same room :slight_smile:

That is why I thought of trying to plug in a camera.

As other people have said, the Arduino is not fast enough to transmit video over wifi, nor does it have enough memory to buffer even a single frame of the video. You might look at setups for after-market car backup monitors. Here is a complete set I found on ebay that includes camera, wireless transmitter/receiver, and lcd. You will need two 12 volt batteries to power these: http://www.ebay.com/itm/Wireless-car-rearview-kit-3-5-LCD-reverse-monitor-waterproof-backup-camera-/281059200644?pt=US_Rear_View_Monitors_Cams_Kits&hash=item41706f0e84

Note, this unit transmits over the 2.4Ghz spectrum which wifi also use, so perhaps this camera will overpower the wifi shield.

Hello, Just something that popped up in my mind right now. We agreed that the Atmel chip on the Arduino is not powerful enough for video processing. However, isn't it possible to change the Atmel chip on the Arduino with another Atmel chip that is more powerful that has the same or possible to match pin outs (if exists)?

Presumably you have a user interface somewhere and the operator is intended to watch the video from the 'bot and send it commands in real time.

In that case I'd just use an IP camera and display that directly on the PC where the user interface is provided. If your user interface took the form of a web page served by the Arduino then you could embed the video directly in that page. Alternatively, host the web page elsewhere and use server-side scripting or client-side scripting to send commands to the Arduino in response to user commands; you could still embed the video in the page. If your user interface is not a web page and doesn't enable you to show video directly, then you could simply open a separate browser window to display the video and put it on the same screen.

Just because your Arduino is next to the camera and has a wireless connection, doesn't mean that the video has to go over that connection.

If you do have a genuine requirement to send the video and the Arduino commands via a shared WiFi adapter then the best way to achieve that is probably to use a Raspberry Pi on the 'bot to drive the camera and the Arduino - but that's a more expensive and complicated solution and it seems pretty unlikely there's any genuine need for that.

isn't it possible to change the Atmel chip on the Arduino with another Atmel chip that is more powerful that has the same or possible to match pin outs (if exists)?

No there is no such chip.

(I think RaspberryPI is too much for this type of project)

No it is not, it is possibly a little light if anything.