Jetson Project of the Month: Using Pretrained Models to Predict Bus Arrival Times

Using pretrained models with an NVIDIA Jetson Nano and Vertex AI, a developer created a machine learning solution to accurately predict bus arrival times.

Jason Black
5 min readbeginner
--
View Original

Overview

The article discusses a project by Armenian developer Edgar Gomtsyan, who created a machine learning solution to predict bus arrival times using a Dahua IP camera and NVIDIA Jetson Nano. By leveraging pretrained models and local processing, he achieved high accuracy in detecting buses and developed an IoT-based voice assistant interface for real-time updates.

What You'll Learn

1

How to use a Dahua IP camera for video stream processing

2

How to implement a machine learning model for bus arrival prediction

3

Why local processing with NVIDIA Jetson Nano enhances reliability

4

How to integrate an Alexa Skill for real-time bus updates

Prerequisites & Requirements

  • Basic understanding of machine learning concepts
  • Familiarity with NVIDIA Jetson Nano and its libraries(optional)

Key Questions Answered

How does Edgar's project predict bus arrival times?
Edgar's project predicts bus arrival times by using a Dahua IP camera to capture video, which is processed locally on an NVIDIA Jetson Nano. The system employs a pretrained model to classify images of buses and records arrival times when a bus is detected with a high confidence level.
What technology did Edgar use for video processing?
Edgar initially used Vertex AI for video processing but switched to local processing using NVIDIA Jetson Nano due to network and electricity concerns. This change allowed for more reliable and efficient data handling.
What is the purpose of storing data in BigQuery?
Storing data in BigQuery allows for a flexible and sustainable solution for future enhancements. It enables Edgar to manage the collected data more effectively than local CSV storage, facilitating better analysis and model retraining.
How many images were used to train the bus detection model?
Edgar's model was trained with over 1,300 images, which improved its ability to detect both arriving and departing buses accurately, even under varying weather conditions.

Key Statistics & Figures

Number of images used for training
1,300
The model's performance improved significantly with the addition of images, allowing it to detect buses accurately.
Confidence level for bus arrival detection
92%
The system records the arrival time if the prediction for an 'arriving bus' class is greater than or equal to 92% for 15 frames.

Technologies & Tools

Some links below are affiliate links. We may earn a commission if you make a purchase.

Hardware
Dahua IP Camera
Used for capturing video of the bus stop for processing.
Hardware
Nvidia Jetson Nano
Local processing of video streams and running the machine learning model.
Software
Vertex AI
Initially used for video processing and model training.
Cloud Service
Bigquery
Used for storing collected data for analysis and future model retraining.
Software
Alexa Skills
Implemented for providing real-time bus arrival updates through voice commands.

Key Actionable Insights

1
Consider using local processing for real-time applications to enhance reliability and reduce latency.
Edgar's switch from cloud processing to local processing with NVIDIA Jetson Nano significantly improved the performance of his bus prediction system, making it more robust against network issues.
2
Utilize pretrained models to accelerate development and improve accuracy in machine learning projects.
By leveraging pretrained models, Edgar was able to quickly implement a functional bus detection system, demonstrating the efficiency of using existing resources in AI/ML projects.
3
Integrate voice assistant technology to provide user-friendly interfaces for IoT applications.
Edgar's use of Alexa Skills for real-time bus updates showcases how voice technology can enhance user interaction and accessibility in smart applications.

Common Pitfalls

1
Underestimating the amount of training data needed for accurate model predictions.
Initially, Edgar's model performed poorly due to a lack of sufficient images. It wasn't until he collected over 1,300 images that the model's accuracy improved significantly.

Related Concepts

Machine Learning
Iot Applications
Computer Vision
Real-time Data Processing