« Previous - Version 66/78 (diff) - Next » - Current version
Anthony Rowe, 08/09/2011 02:45 pm

CMUcam3: Open Source Programmable Embedded Color Vision Platform




The goal of the CMUcam project is to provide simple vision capabilities to small embedded systems in the form of an intelligent sensor. The CMUcam3 extends upon this idea by providing a flexible and easy to use open source development environment that complements a low cost hardware platform. The CMUcam3 is an ARM7TDMI based fully programmable embedded computer vision sensor. The main processor is the NXP LPC2106 connected to an Omnivision CMOS camera sensor module. Custom C code can be developed for the CMUcam3 using a port of the GNU toolchain along with a set of open source libraries and example programs. Executables can be link building flashed onto the board using the serial port with no external downloading hardware required.


  • Fully open source and programmable using GCC
  • [WikiPedia:Common_Intermediate_Format CIF] resolution (352x288) RGB color sensor
  • Open source development environment for Windows and Linux
  • MMCSD flash slot with FAT16 driver support
  • Four-port servo controller
  • Image processing rate of 26 frames per second
  • Lua light-weight language interpreter for rapid prototyping
  • Software JPEG compression
  • Basic image manipulation library
    • Arbitrary image clipping
    • Image downsampling
    • Threshold and convolution functions
    • RGB, YCrCb and HSV color space
    • CMUcam2 emulation
      • User defined color blobs
      • Frame differencing
      • Mean and variance data collection
      • Raw images dumps over serial
      • Histogram generation
  • B/W analog video output (PAL or NTSC)
  • FIFO image buffer for multiple pass hi-res image processing
  • Wireless Mote networking interface (802.15.4)
  • virtual-cam for prototyping on the PC
  • CMUcam3-Frame-Grabber for viewing images on the PC


  • Robotics (spoonBot)
  • Surveillance
  • Sensor Networks
  • Education
  • Interactive toys
  • Object recognition and tracking
  • Programmable servo control
  • Serial MMCSD flash data logging

Where can I buy a CMUcam?

CMUcam, CMUcam2, and CMUcam3 are in production from various licensees:

How do I get started?

components_thumb.jpg (30.9 kB) Anthony Rowe, 02/06/2012 11:44 pm

face_thumb.jpg (19.9 kB) Anthony Rowe, 02/06/2012 11:45 pm

sample_thumb.jpg (27.4 kB) Anthony Rowe, 02/06/2012 11:45 pm

spoonBot_thumb.jpg (29.1 kB) Anthony Rowe, 02/06/2012 11:45 pm

CMUcam3_A.JPG - Picture A (34.2 kB) Kwabena Agyeman, 03/14/2012 09:26 pm

CMUcam3_B.JPG - Picture B (22 kB) Kwabena Agyeman, 03/14/2012 09:36 pm