Inspiration
I recently had a package stolen from our porch and we didn't know until it was too late. I wanted to have a safer neighborhood so I built SmartSurveillance. This is also a big problem in other neighborhoods across the world(crime detection).
What it does
SmartSurvellance uses a custom built ML model(3 neural networks) to determine whether a suspicious person is at your doorstep by accessing your camera's video feed and motion sensor. When motion is detected we run the captured video or image through our ML model and determine whether the person is suspicious or not. If they are suspicious the users of the app get a notification that there is crime in their neighborhood and a post gets posted to the feed page of our mobile app. Users can vote on the post to tell whether it is a false alarm or an actual crime. When neighbors get this notification, they can go outside to scare off the robber/suspicious person.
How we built it
I used Ionic framework and Angular to build our mobile app, and used python and tensorflow for the ML model. I also used flask, python, and the library pyaarlo to connect to the netgear arlo camera (we will later add other camera brands) and made a rest api with flask to communicate with the mobile app.
Challenges we ran into
Making the connection between the mobile app and the rest api was one of the hardest parts as we ran into many issues and bugs. At the end I finally fixed the issue and completed our project.
Accomplishments that we're proud of
I got a working prototype of our app which took a lot of time.
What we learned
I learned many new skills and this is my first project using both Ionic/angular with a python backend
What's next for SmartSurveillance
I would like to add many other camera brands(Nest, Ring, etc) so it is more accessible. I also want to add a feature where the speaker on the camera says something like "alert" which can scare away the suspicious person.
Built With
- angular.js
- flask
- ionic
- python
- tensorflow
Log in or sign up for Devpost to join the conversation.