My project was to create a software of an intelligent camera system, which is able to run on a Raspberry Pi minicomputer. My main goal was to create a solution which is usable on most of the operation systems like Windows and Linux. The camera software is basically a webserver, so it’s easy to control and supervise from a browser.
Considering the technology, we decided to use Java for backend, which is applicable to high level programming and easily runnable on any platform. With Java (from v1.6), it’s simple to create and run a webserver using the built-in HTTPServer class. Setting up a JavaEE webserver would have been more complicated and we wouldn’t have been able to take advantage of the benefits associated with it.
Besides of basic HTML and CSS, Bootstrap and jQuery were also used for frontend because of the easy development. Considering the storage capacity, the user(s) can set a limit for the amount of the images.
The camera is capable to capture and store photos, stream videos and notify the owner (via e-mail) when motion detected. Naturally, the motion triggered frame will be also attached to the e-mail.
The website provides the possibility to watch real time stream, see previously captured photos and also configure the device. We can use all of these functions easily on a smartphone.