So I was thinking of my first project idea, and decided to divide my projects into phases.
This way as I outline and develope the phases, it will be easier for me to manage, and document
them as well and use these components in diffrent projects down the road.
After thoughtfull consideration, I planned to make a moving web-cam, which will detect motion and turn in that direction. The hardware part of this project is fairly simple, although software part will be the challenge, hence I plan to use my own custom motion detection algorithm based on common algorithms out there.
The ingridients I plan are these:
1- VISTA Ultimate
2- Visual Studio Express 2005, C#
3- A cheap USB webcam
4- Phidget Intergace kit 8/8/8
5- Phidget 4 servo controller
6- 1 HiTec 422 Analog Servo
The basic plan is to assemble the webcam on top of the servo, and write a simple
C# form, which will take snapshots from the webcam every second, and compare pixel
colour changes with the previous snapshot, and if it sees a change of pixels defined by
a threshold change the position of the servo in that direction.
The challenge is, as the camera moves towards that direction, the next snapshot will show
that object move to the opposite direction, hence the view angle has changed, and will cause
the camera move towards that direction. So i need to come up with a algorithm to lock the
snapshot and motion detection logic while the camera/servo is moving.
Also, if I take a blurry snapshot while the camera is moving the pixels will have to much noise, hence we now how webcam is not so great with moving objects.
So for the first part of this experiment, I need to start working on the webcam C# interaction, there is many examples out there, so it should be easy...I'll keep you guys posted.