TNSDC - Naan Mudhalvan - Python Virtual Internship Program - ML Project Hackathon (April 2023)
Real Time Air Quality Monitoring & Weather Forecasting System is a novel project for real-time monitoring and forecasting of air quality and weather conditions. The system uses various weather parameters of a specified location and consists of a trained ML model for predicting Air Quality Index (AQI) remarks from air quality parameters.
This project aims to:
-
Develop a system for real-time monitoring and forecasting of air quality and weatherconditions. The system uses various sensors to monitor air quality parameters such as particulate matter (PM2.5 and PM10), ozone (O3), carbon monoxide (CO), nitrogendioxide(NO2), and sulfur dioxide (SO2), as well as weather parameters suchas temperature, humidity, pressure and wind speed.
-
Development of a web-based platform that displays real-time air quality and weather data from various monitoring stations. The platform will also provide users with historical data, air quality indices, and weather forecast. The system will also have an alert system that notifies users of critical air quality conditions, such as high pollution levels and adverse weather conditions.
-
The proposed system will be useful for various stakeholders, including government agencies, environmental organizations, and the general public. The system will provide valuable insight into air quality and weather conditions in real-time, enabling users to take necessary precautions to protect their health and well-being.
-
On a larger extent, The air quality (AQ) Forecast lets the public know expected air quality conditions for next 72 hours so that Government authorities can take action to manage the air quality and issue health advisories which helps governments and local administrations prepares for natural disasters and save lives.
This project was developed for TNSDC Naan Mudhalvan ML Project Hackathon (April 2023) by Team Perceptron from Chennai Institute of Technology.
Name | Dept | Email ID | GitHub Profile | Role |
---|---|---|---|---|
Tharun Balaji R | CSE | [email protected] | TharunBalaji2004 | ML Model |
Surya Prakash V | CSE (CyberSec) | [email protected] | suryaaprakassh | ML Model |
Nadeem M | CSE (CyberSec) | [email protected] | Nadeem-05 | Flask Backend |
Harshithaa RG | IT | [email protected] | HarshithaaRG | Frontend |
Frontend | Backend | Machine Learning |
---|---|---|
HTML5, CSS3 |
Pyhton3, Flask |
Numpy, Pandas, Scikit Learn |
The project uses dataset only for predicting Air Quality Index value which consists of air pollutant values such as CO, NO, NO2, PM2.5, PM10, etc. The dataset consists of air quality recorded in past 1 year of Top 10 Tamil Nadu cities, fetched from OpenWeather API which are given by:
City Name | Datset Size | Dataset Link |
---|---|---|
Chennai | 665 KB | chennai.csv |
Coimbatore | 639 KB | coimbatore.csv |
Dindigul | 636 KB | dindigul.csv |
Erode | 643 KB | erode.csv |
Madurai | 635 KB | madurai.csv |
Salem | 651 KB | salem.csv |
Thoothukudi | 628 KB | thoothukudi.csv |
Tiruchirappalli | 636 KB | tiruchirappalli.csv |
Tirunelveli | 625 KB | tirunelveli.csv |
Vellore | 632 KB | vellore.csv |
Datset Link for all 10 cities merged - tncities.csv (Size: 7.17 MB)
The dataset has been cleaned and preprocessed using Synthetic Minority Oversampling Technique (SMOTE) for balancing the dataset.
The following algorithms have been used in this project to train the model:
Algorithm Name | Avg Accuracy |
---|---|
Support Vector Machine (SVM) | 80% |
Random Forest Classifier (RFC) | 90% |
XG Boost Classifier (XGBC) | 87% |
Among these mentioned algorithms, since Random Forest Classifier (RFC) acheieved a comparative higher accuracy it has been used to train and pickle the ML model. With the help of weather parameters the model is trained to predict the value of AQI and remarks.
To run this project, you will need the following dependencies:
- Python 3
- Flask
- Numpy
- Pandas
- Scikit-learn
You can install the dependencies using the following command after cloning the repo to your local system:
pip install -r requirements.txt
Clone the repo and start running the project.
1) Project NoteBook Hierarchy Structure |
---|
2) Project Data Visualization |
---|
3) Project Data Preprocessing |
---|
4) Project Model Training using SVM, RFC and XGBC Classifier |
---|
5) Integrated Backend with Flask |
---|
6) Developed UI part |
---|
7) Deployed Website (Weather Forecasting - Today) |
---|
8) Deployed Website (Weather Forecasting - Hourly) |
---|
9) Deployed Website (Weather Forecasting - Daily) |
---|
10) Deployed Website (Air Quality Index Prediction) |
---|
The project has successfully acheived its primary goals and bootstrapped along with Backend and API integration for facilitating Weather Forecasting and Air Quality Monitoring System. We have deployed our ML model and hosted through website domain, the website readily available for use and dynamically renders weather data as well as makes near accurate air quality predictions.
AirCast, 2023
Link 1: https://aircast.onrender.com
Link 2: https://aircast.up.railway.app
Special Thanks π€ to Team members, who had spent lot of efforts on building the ML model and Website integration with and college management for encouraging our participation in this project.