I think your both options/ideas (Pi and Compute) can work.
Raspberry Pi GPIO is fast enough (10MHz+), reading GPIO input state every millisecond will be no problem at all.
If you want to process data on Raspberry Pi with OpenCV or something like that - don't expect too much, Pi CPU is not that fast as some people think. Do some experiments with pre-recorded video or images and see how much computing power you have.
If you find that Raspberry is not fast enough - you can use something like this (for image processing):
Nvidia Jetson TK1 Development Kit
- NVIDIA Kepler GPU with 192 CUDA cores
- NVIDIA 4-Plus-1 quad-core ARM Cortex-A15 CPU
- 2 GB memory, 16 GB eMMC
- Gigabit Ethernet, USB 3.0, SD/MMC, miniPCIe
- HDMI 1.4, SATA, Line out/Mic in, RS232 serial port
- Expansion ports for additional display, GPIOs, and high-bandwidth camera interface
I don't know much about this, just read somewhere about these Nvidia products, but it cost less than Pi Compute module (192USD is 115GBP?), and there is a lot more computing power.
Best Answer
Aside from the RPi Camera, which seems quite nice, I'm not convinced the compute module is really what you're aiming for: your board offers nothing that wouldn't be on one of the full Raspberry Pis, so safe yourself money and design effort and buy one of these.
Or don't, most embedded engineers don't consider the RPis to be overly fantastic devices compared to the rest of the market. Especially for computer vision applications, it looks a bit weak on the CPU, too small in terms of RAM, unsatisfying GPU. Also, lack of ethernet in your application actually looks like a deal-breaker to me.