Frequently Asked Questions

Version 40 (Kwabena Agyeman, 09/04/2012 11:56 pm)

1 1 Kwabena Agyeman
h1. Frequently Asked Questions
2 1 Kwabena Agyeman
3 12 Kwabena Agyeman
h3. *What is unique about the CMUcam4?*
4 3 Kwabena Agyeman
5 3 Kwabena Agyeman
Traditionally fast computers are needed to capture and process camera images. It is also necessary to write the software to perform this processing. Because of this it is difficult to use vision as a sensor in simple systems.
6 3 Kwabena Agyeman
7 3 Kwabena Agyeman
The CMUcam4 vision system uses a fast low cost microcontroller to handle all of the high speed processing of the camera data and contains software to perform simple vision tasks. Because the user can choose to output only low bandwidth high level information from the vision system, like the red object is at position X-Y, it is possible for a simple processor like a Arduino or BASIC Stamp 2 microcontroller to read this data and direct a small robot in tasks like chasing a colored ball. The CMUcam4 vision system makes it possible to ignore the complexity of camera interfacing and use vision just like any other sensor (i.e. sonar) often used in robotic systems.
8 3 Kwabena Agyeman
9 10 Kwabena Agyeman
Additionally, with new TV output functionality, you can see what the CMUcam4 sees on the TV to verify that everything is working!
10 3 Kwabena Agyeman
11 13 Kwabena Agyeman
h3. *What is the CMUcam4's frame rate?*
12 3 Kwabena Agyeman
13 34 Kwabena Agyeman
The frame rate is 30 frames per second. This means CMUcam4 can tell you the position of an object 30 times per second. Using the serial software protocol you can slow this down if desired.
14 3 Kwabena Agyeman
15 39 Kwabena Agyeman
h3. *What are the dimensions of the CMUcam4?*
16 39 Kwabena Agyeman
17 40 Kwabena Agyeman
The CMUcam4 is about 52.25 mm (about 2.05 inches) in length from the left side of the board where the RCA jack connector is to the right side of the board where the microSD card connector is, 53.50 mm (about 2.10 inches) in width from the top of the board where the Arduino pins are to the bottom of the board where the Arduino pins are, and about 13 mm (about 0.51 inches) in height from the bottom of the PCB to the top of the RCA jack (the tallest component on the board).
18 39 Kwabena Agyeman
19 39 Kwabena Agyeman
h3. *How much does the CMUcam4 weigh?* 
20 39 Kwabena Agyeman
21 39 Kwabena Agyeman
The CMUcam4 weighs about 20 grams (about 0.7 ounces). 
22 39 Kwabena Agyeman
23 3 Kwabena Agyeman
h3. *What baud rates does the CMUcam4 support?*
24 3 Kwabena Agyeman
25 9 Kwabena Agyeman
The CMUcam4 can communicate at any baud rate selected via the serial software protocol. The default baud rate after the CMUcam4 resets is 19,200 bits per second.
26 3 Kwabena Agyeman
27 3 Kwabena Agyeman
h3. *How do I upgrade my CMUcam4 firmware?*
28 3 Kwabena Agyeman
29 3 Kwabena Agyeman
Please see the [[firmware]] wiki page.
30 3 Kwabena Agyeman
31 14 Kwabena Agyeman
h3. *Does the CMUcam4 work outside?*
32 3 Kwabena Agyeman
33 38 Kwabena Agyeman
The CMUcam4 has an IR filter. Depending on how bright it is outside you may wish to supply the CMUcam4 with an additional IR filter (like a lens from a pair of sunglasses) for your outdoor application.
34 3 Kwabena Agyeman
35 15 Kwabena Agyeman
h3. *Can I write custom code for the CMUcam4?*
36 3 Kwabena Agyeman
37 3 Kwabena Agyeman
Please see the [[firmware]] wiki page.
38 3 Kwabena Agyeman
39 16 Kwabena Agyeman
h3. *How much power does the CMUcam4 consume?*
40 3 Kwabena Agyeman
41 11 Kwabena Agyeman
The complete system consumes about 100 milliamperes.
42 3 Kwabena Agyeman
43 17 Kwabena Agyeman
h3. *What is the CMUcam4's field of view?*
44 3 Kwabena Agyeman
45 3 Kwabena Agyeman
About a 25 degree field of view, which is relatively narrow.
46 3 Kwabena Agyeman
47 18 Kwabena Agyeman
h3. *What processor does the CMUcam4 use?*
48 3 Kwabena Agyeman
49 3 Kwabena Agyeman
Please see the [[firmware]] wiki page.
50 3 Kwabena Agyeman
51 19 Kwabena Agyeman
h3. *What CMOS camera does the CMUcam4 use?*
52 3 Kwabena Agyeman
53 3 Kwabena Agyeman
Please see the [[firmware]] wiki page.
54 3 Kwabena Agyeman
55 20 Kwabena Agyeman
h3. *Does the CMUcam4 work with other CMOS cameras?*
56 3 Kwabena Agyeman
57 5 Kwabena Agyeman
No. Currently the hardware and software system have been designed to work specifically with the "OmniVision":http://www.ovt.com/ "OV9665":http://www.ovt.com/products/sensor.php?id=5 CMOS camera. The system would need to be completely redesigned to work with another camera.
58 3 Kwabena Agyeman
59 3 Kwabena Agyeman
h3. *Is there some place I can find answers to additional questions I have?*
60 3 Kwabena Agyeman
61 21 Kwabena Agyeman
Yes. Please visit the forums "here":/projects/cmucam4/boards.
62 3 Kwabena Agyeman
63 3 Kwabena Agyeman
h3. *Where can I find out more about computer vision in general?*
64 3 Kwabena Agyeman
65 3 Kwabena Agyeman
The CMUcam4 performs the simple computer vision task it was designed to perform in a small, inexpensive package. However, the general computer vision problem of trying to recognize arbitrary objects under arbitrary conditions is still a very active research topic and very far from being anywhere near a solved problem.
66 3 Kwabena Agyeman
 
67 3 Kwabena Agyeman
If you want to learn more about computer vision, you might want to try these links: 
68 3 Kwabena Agyeman
69 4 Kwabena Agyeman
* "The On-Line Compendium of Computer Vision":http://www.dai.ed.ac.uk/CVonline/ 
70 4 Kwabena Agyeman
* "The Computer Vision Home Page at CMU":http://www.cs.cmu.edu/~cil/vision.html
71 22 Kwabena Agyeman
72 22 Kwabena Agyeman
h3. *What is the exact sequence of steps performed on power up by demo mode?*
73 22 Kwabena Agyeman
74 25 Kwabena Agyeman
This is the exact sequence that demo mode performs on power up:
75 22 Kwabena Agyeman
76 27 Kwabena Agyeman
#  Reset the camera. 
77 27 Kwabena Agyeman
#  Wait 5 seconds for the camera parameters auto adjustment to stabilize.
78 28 Kwabena Agyeman
#  Select YCbCr mode and turn off auto gain and white balance. 
79 27 Kwabena Agyeman
#  Execute the "TW" (Track Window) command.
80 22 Kwabena Agyeman
81 30 Kwabena Agyeman
After which, the camera will begin to drive servos towards the centroid of the color detected by the "TW" (Track Window) command.
82 23 Kwabena Agyeman
83 31 Kwabena Agyeman
h3. *What is the exact sequence of steps performed by the "TW" (Track Window) command?*
84 23 Kwabena Agyeman
85 24 Kwabena Agyeman
This is the exact sequence of steps that the "TW" (Track Window) command performs: 
86 23 Kwabena Agyeman
87 23 Kwabena Agyeman
#  Shrink the window to 1/4 the size (in each dimension) of the current window to a new window centered at the current window center.
88 24 Kwabena Agyeman
#  Get all the channel means.
89 23 Kwabena Agyeman
#  Restore the window to the full image size. 
90 24 Kwabena Agyeman
#  Set the max and min value for each color channel to be the mean for that channel +/- the user supplied threshold for each channel.
91 23 Kwabena Agyeman
92 24 Kwabena Agyeman
After which, the camera will begin to stream Type F, S, and/or T packets.