Counting Vehicles - Introduction - Part 1
Published on 11/20/2018
2 min read
We will begin our project of detecting and counting vehicles that pass by the AWS DeepLens.
Count the number of cars, trucks, SUVs, vans and motorcycles that drive by the AWS DeepLens.
We will split this into two distinct pieces. Piece one will be to actually detect a vehicle driving by in an image. To do this we will leverage the AWS DeepLens combined with TensorFlow's Object Detection API. Once we are able to detect the vehicles we will use a separate utility to count distinct instances of each vehicle type.
To make this goal a reality there are a few requirements for our project.
- AWS DeepLens
- This is the camera that will be used to capture the images and it will run the TensorFlow models inference locally.
- Ability to train TensorFlow models
- This project will train TensorFlow models outside of AWS SageMaker, so either having a compatible Nvidia GPU or an account with Google Cloud to use their Cloud ML offering for training in the cloud.
- We will take advantage of a camera tripod to mount the DeepLens in front of a window.
- Misc. Hardware
- For ease of debugging some other hardware is desired, having a monitor connected to the DeepLens, along with a keyboard and mouse sometimes makes debugging easier.
Our plan to complete this goal will be completed in three stages.
- Setup the capture environment, making sure the DeepLens is able to connect to the Internet and has a good view of the street.
- Collect training data by using basic motion detection to capture images and upload them to Amazon S3
- Analyze and label training data
- Organize and prepare our training data
- Setup the TensorFlow Object Detection API
- Train and evaluate our model
- Export and optimize our model for the DeepLens
- Deploy the end to end system to detect vehicles driving by
- Run our utility to analyze the collected data to determine the number of cars, trucks, SUVs, vans and motorcycles