jeepfan

Currently still in early prototyping stages is a project to develop a sentry using OpenCV software with intentions to run on a Jetson TK1, driving an Arduino that will control a pan and tilt mechanism for a camera and Waterpik or squirt-gun. This device will be used to correct the behavior of pets that have made a habit of traversing counter-tops in search of food. While others have already created similar projects (http://projectsentrygun.rudolphlabs.com/), my goal is to come up with a system that chooses its targets based on more specific criteria (matching the target from a library of pre-loaded images or a larger selection of settings) rather than color or movement. This will hopefully provide less false-positive matches, as we do not want to discharge a water dispenser without reason, or at the wrong target. Unlike the bird-feed protector project (http://boingboing.net/2012/03/26/howto-build-a-robotic-squirrel.html), we are indoors.

The setup that I intend to use differs from the two above projects in that this will involve at least one tracking camera, and possibly a second camera that is either stationary or also tracking. This will allow for more precise aiming and more visual coverage to identify the culprit animal.

In addition to background subtraction, histogram analysis (versus multiple stored images of culprit animal or animals) and edge detection/measurement will be used to identify target and range. To further assist in aiming (and assuring nothing other than target is squirted), a laser has been attached to the device so that it may be fired momentarily (100 ms or less) in order to verify aiming of device. If required, path prediction will be included, but servo speed should be adequate for tracking at expected engagement ranges of the Waterpik device. 

 As this project is further developed (and time permits), the progress will be documented here. Once code is developed to a stable and more usable state, it will be posted on Github if I decide to make this code public (which is more than likely).

A second developer has recently been brought on-board, and has been more than helpful in making fast progress on this project. The current task being tackled is to scan and stitch the background to have for a baseline for the background subtraction to be used by the moving camera.


The manual mode has been covered fairly thoroughly, and videos are here: