Experiment with video on your Arduino! |
|
|||||||||||||||||
|
|
|||||||||||||||||
How does it work?The Video Experimenter uses an LM1881 video sync separator to detect the timing of the vertical and horizontal sync in a composite video signal. An enhanced version of the TVout library (available below) uses this sync timing information to overlay content onto the video signal. The ATmega328 microcontroller on the Arduino includes an analog comparator that can be used to detect the brightness of the video signal at any given point in time. Using this brightness information, low-res monochrome image capture into the TVout frame buffer is possible. The ability to capture image information in memory lets you implement simple computer vision experiments.It's important to note that this shield will not work on the Arduino Mega. Read this for more information (it's not my fault!). The Video Experimenter will work on the Seeeduino Mega with some jumper wires. Read this for more information. Board Features
|
|||||||||||||||||
Enhanced TVout LibraryThe Video Experimenter requires using an enhanced version of the very useful TVout library. The enhancements allow the capture of video signal information in the TVout frame buffer so that primitive frame capture can be accomplished. The enhancements also facilitate the retrieval of embedded data streams from broadcasts.Download the enhanced TVout library here API summary: capture() : captures a monochrome video frame in the frame buffer's memory. Stops display of frame after capture to allow processing of the data if required (for example in computer vision projects). resume() : resumes display of the TVout frame buffer after performing a capture. setDataCapture(int line, int dataCaptureStart, char *databuf) : Arduino sketches that use the enhanced TVout library with the Video Experimenter shield also must perform some initialization of the ATmega registers. In the project examples you will find methods like initOverlay() and initInputProcessing() to enable certain features of the chip. These are not included in the library but the project examples show you how they are used. All Video Experimenter projects also have an interrupt service routine (ISR) for the input capture on pin 2. This is required, but not included in the library because it may vary from experiment to experiment. |
|||||||||||||||||