We are looking for an inexpensive solution to automatically record our team basketball practices. We are planning on having 2 cameras (Raspberry Pi’s). Each camera will be aimed at one side of the basketball court or the other side. Each camera will be running the identical application. The cameras should only record when the players go into a designated area. Each camera will have its own unique designated area. The areas are designated (drawn) by a user when the application first starts up. The individual clips will be named (using a time stamp) and ftp’d to laptop.
When we look at all the clips on the laptop in chronological order, we should see the entire practice from the vantage point of one camera or the other.
* Written in Python 3.x or C++
* Run on Raspberry Pi 3 with Pi Camera (version 2)
* Operating System: Raspbian 4.4 or higher
* OpenCV 3.x
* Video files will be written in X.264 MP4 format
* Able to receive input from camera or file (designated via a parameter)
* Minimum of 720p will be used
* User should have the ability to outline a section of the basketball court (square, rectangle, trapezoid, etc.).
* Use OpenCV to track a group of players
* Application will create clips of the video whenever players come into the designated area.
* Only one camera should ever be recording at any given time.
* When clip is created it should be immediately queued for ftp to a laptop (which will be on the same wifi network) and the camera should be ready to record the next play.
* All parameters should be stored in a separate config file (i.e., camera/file, ftp_server, ftp_user, ftp_passwd, frames_per_second, resolution, etc.)