All Projects → PiSimo → Picamnn

PiSimo / Picamnn

Licence: mit
Survelliance system with deep learning based people detection (YOLO)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Picamnn

Yolo Powered robot vision
Stars: ✭ 133 (+37.11%)
Mutual labels:  raspberry-pi, opencv, yolo
Raspisecurity
Home Surveillance for Raspberry
Stars: ✭ 128 (+31.96%)
Mutual labels:  raspberry-pi, opencv, surveillance
Facerec Lock
Face recognition to control servo lock using Raspberry Pi and OpenCV
Stars: ✭ 7 (-92.78%)
Mutual labels:  raspberry-pi, opencv
Raspberryrobot
基于树莓派的智能机器人
Stars: ✭ 11 (-88.66%)
Mutual labels:  raspberry-pi, opencv
Gender Age Classification
gender/age classification
Stars: ✭ 39 (-59.79%)
Mutual labels:  yolo, yolo2
Informer
A Telegram Mass Surveillance Bot in Python
Stars: ✭ 745 (+668.04%)
Mutual labels:  surveillance, telegram
Yolo annotation tool
Annotation tool for YOLO in opencv
Stars: ✭ 17 (-82.47%)
Mutual labels:  opencv, yolo
Yolov2.pytorch
YOLOv2 algorithm reimplementation with pytorch
Stars: ✭ 31 (-68.04%)
Mutual labels:  yolo, yolo2
Pibooth
The pibooth project provides a Photo Booth application out-of-the-box for Raspberry Pi and opencv compatible devices
Stars: ✭ 398 (+310.31%)
Mutual labels:  raspberry-pi, opencv
Rpindvi
Raspberry PI NDVI Code
Stars: ✭ 57 (-41.24%)
Mutual labels:  raspberry-pi, opencv
Yolo 9000
YOLO9000: Better, Faster, Stronger - Real-Time Object Detection. 9000 classes!
Stars: ✭ 1,057 (+989.69%)
Mutual labels:  yolo, yolo2
Opencv 3.2.0 Compiling On Raspberry Pi
Download, Compile, Build, and Install OpenCV 3.2.0 with Extra Modules on RPI running Jessie
Stars: ✭ 65 (-32.99%)
Mutual labels:  raspberry-pi, opencv
Openlabeling
Label images and video for Computer Vision applications
Stars: ✭ 706 (+627.84%)
Mutual labels:  opencv, yolo
Tracking With Darkflow
Real-time people Multitracker using YOLO v2 and deep_sort with tensorflow
Stars: ✭ 515 (+430.93%)
Mutual labels:  yolo, yolo2
Pytorch Yolo2
Convert https://pjreddie.com/darknet/yolo/ into pytorch
Stars: ✭ 941 (+870.1%)
Mutual labels:  yolo, yolo2
Pi Timolo
Raspberry PI-TIMOLO ( PI-TImelapse, MOtion, LOwLight ) uses RPI picamera and OpenCV for Remote Headless Security Monitoring using Motion Tracking, Rclone Auto Sync files with remote storage services. Auto Twilight Transitions and Low Light Camera Settings. Panoramic images using PanTiltHat and More. This project is featured on GitHub Awesome software.
Stars: ✭ 441 (+354.64%)
Mutual labels:  raspberry-pi, opencv
Pytorch Caffe Darknet Convert
convert between pytorch, caffe prototxt/weights and darknet cfg/weights
Stars: ✭ 867 (+793.81%)
Mutual labels:  yolo, yolo2
Rpicam
Raspberry PI Surveillance Automation
Stars: ✭ 77 (-20.62%)
Mutual labels:  raspberry-pi, surveillance
Libfaceid
libfaceid is a research framework for prototyping of face recognition solutions. It seamlessly integrates multiple detection, recognition and liveness models w/ speech synthesis and speech recognition.
Stars: ✭ 354 (+264.95%)
Mutual labels:  raspberry-pi, opencv
Multi Camera Live Object Tracking
Multi-camera live traffic and object counting with YOLO v4, Deep SORT, and Flask.
Stars: ✭ 375 (+286.6%)
Mutual labels:  opencv, yolo

PiCamNN

Survelliance system with deep learning based people detection (YAD2K YOLO implementation ), and notification with Telegram.

The program is made of two different threads, one is always looking for movements and if there are some it's also writing the frames to video-file.The other thread get the frames in which were detected movements and then with a deep neural network (YOLO) is searching for persons, and if there are some it's sending the images to you with telegram.

The code has been tested on raspberry pi 3B with whom I got 2/3s per frame (if you run it on GPU you should reach 200frames per second), with previous versions of the raspberry pi you probably will not get good perormances :'( .


Requirements:

-Linux (tested on raspberry pi3 with raspbian)
-Python3
-OpenCV for Python3
-Apache2 http-server (remember to enable the apache process eg "#systemctl enable apache2;reboot")
-Tensorflow ( link For Tensorflow on raspberry Pi)
-telegram-cli(follow the installation instructions and log in with your account) -Numpy
-Keras 2

Instructions for Raspbian:

Follow those instructions after having installed all the requirements!
git clone https://github.com/PiSimo/PiCamNN.git
cd PiCamNN
mkdir imgs

Download the tiny yolo weights(for keras 2) converted with YAD2k :

wget https://www.dropbox.com/s/xastcd4c0dv2kty/tiny.h5?dl=0 -O tiny.h5
sudo mv index.html /var/www/html/
(NOTE: If you aren't on raspbian apache's base folder might not be /var/www/html/ so check before!)

Before starting the main script you should change in picam.py some variables:

maxDays = 7 If you have stored more then maxDays videos on your devices the oldest one will be removed

baseFolder = "/var/www/html/" Change this variable if your apache hasn't created that folder

scriptFolder = "/home/pi/PiCamNN/" Change this variable with the path which contains the scripts and the weights

num_cam = -1 Number of cam to use (-1 means open the first one the system has read)

frame_check = 17 Number of empty frames to wait before killing the main process

time_chunck = 15 Seconds to wait before considering a new action

telegram_user = "" Your Telegram username you will se all the images on the chat with yourself


To run the code :

sudo python3 picam.py

After the main loop is started,every time a person get detected by the neural net you will receive the photo on telegram (on the chat with yourself).

To see the recorded videos, from your local network you have to go with your browser on the ip of your device which is running PiCamNN and from that page you will be able to download all the videos (eg. http://192.168.0.17 ).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].