Camera module for Arduino

Hi

I have 2 alternatives. Either use a colour sensor for detecting up to six 6 colours, or use a camera module for taking stills.

In my case I have to move the colour sensor in up to 10 positions as fast as possible, whereas with the camera module I only require one position.
Trying to make the colour sensor move in so many positions would higher up the project's complexity by a lot and the cost, not to mention the time taken to move it's components.

Thus, taking it this way, it makes more sense to use a camera module. The only problem is that the camera can't be connected to anything but a microcontroller, which is a Leonardo.

What I need is an image with a 120 x 160 resolution at most. My salvation could be this: I only need to extract from it's sensor small portions of the image. Like 10x10 pixels at a time (like read the first 10 pixels + offset -> do it for rows 1-10 + offset) .
Couldn't it be possible to do this?
If so, could you list me some Arduino compatible camera modules with some tutorials?

I think you need a Raspberry Pi.

I thought about this, but my budget is kind of tight.

Are you sure there's no solution to this? If that's so, then so be it.

What do you think of this one?

I think of connecting the camera to the microcontroller, and then the Arduino will send somehow (I have 2 xbees from another project - I think I'll use them) to a pc for further processing. On the pc I would convert the image from 8bit colour to RGB components so I can detect the 6 colours I mentioned above.

Is this a feasible idea or not?

I do not think you need a raspberry pi. The ov7670 can output a 40x30 image which fits in ram.
40x30x2=2400 and you have 2.5kb of ram.
http://forum.arduino.cc/index.php?topic=159557.0
Or you could use a higher resolution and just read what you want. Or you could configure the output window.
Another option is to use external spi ram or use the fifo version. However if you don't want any of that it may still be doable.

Also the sparkfun product is jpeg. How are you going to decode that in real time on the arduino for color tracking?