I love the OpenMV board, a $65 open source computer vision module that combines a camera and powerful M7 processor with a nice built-in Micropython interpreter and OpenCV-like computer vision library. It's also got a fantastic IDE that makes using it the simplest computer vision experience I've ever tried. You can see in the video below how I used the board by all by itself (it can also control servos) to drive an autonomous car to follow a track:
Because the board can be easily scripted in Python, it can be configured to be pretty much any computer vision sensor you want it to be, from optical flow and line detection to full-on object recognition and tracking. Even better, it can now instantiate as a MAVLink sensor, so you can add it to any MAVLink-compatible autopilot as a sensor.
Here's the code for making it a MAVlink optical flow sensor.