Giter Club home page Giter Club logo

baby_monitor's Introduction

Video-Based Multi-Modal Intelligent Infant Activities Tracking System

Description

  • Taking care of newborn babies is not an easy job, it takes timefor the parents to understand their infant’s behavior to takecare of them better.
  • This project proposed a multi-modal solution to analyze the babys’ action activities including climbing,crawling, rolling, walking, as well as detecing crying using audio input

Technology

  • Python: 3.x
  • Flask
  • OpenCV
  • YAMNet
  • 3D Convolutional Network
  • tensorflow, pandas, numpy
  • Other libraries like librosa, moviepy, pyaudio, pydub

Training Details

  1. Training YAMNet

    • Loading YAMNet from TensorFlow Hub or download YAMNet to your local.
    • Download ESC-50 dataset from https://github.com/karolpiczak/ESC-50.
    • Filter the data which you will apply some transformation on it. then split the dataset into train, validation and test.
    • Create a simple Sequential Model with -- one hiden layer and 2 outputs to recognize baby crying and others.
    • Combine YAMNet with new model into one single model.
    • refer to YAMNet_Detection.ipynb for more details on traning YAMNet.
  2. Training 3D CNN

    • Download A2D(Actor-Action Dataset) dataset from https://web.eecs.umich.edu/~jjcorso/r/a2d/.
    • Extract only the Baby action dataset.
    • refer to video_preprocessing.py for more details on baby video dataset preparation.
    • From the extracteded video dataset, filter out video if have other human in the video.
    • Split the Dataset into 80/20 for training and testing.
    • refer to video_classification_on_baby_action.ipynb for more details on 3D CNN model summary and training parameters.

How to run the system

    1. create environment:
      conda create -n baby python=3.7
    1. activate newly created environment:
      conda activate baby
    1. Go to the project root folder and run below command to install packages:
      pip install -r requirement.txt
      conda install pyaudio==0.2.11

      If any packages fail to install, try installing individually
      If any errors, try to do this one more time to avoid packages being missed out

    1. create an empty folder called uploads under webapp
    1. create an empty folder called processed under webapp\static
    1. Run this command at the project root directory:
      python webapp/babymonitor.py --ip 127.0.0.1 --port 8000
    1. open URL in your browser: http://localhost:8000/

Github repo

https://github.com/NormanLYJ/baby_monitor

References

baby_monitor's People

Contributors

normanlyj avatar yunxiai88 avatar minsanity-zheng avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.