Intelligent-Train is a Python module in a larger system that employs machine learning algorithms to interpret video data from the Capture-App. The primary function of this module is to recognize specific signs that indicate the need to slow down or stop the train.
Intelligent-Train receives video data from the Capture-App module via MQTT. This data is processed using a machine learning model specifically trained to recognize signs that signal the need to slow down or halt the train. The module then generates raw predictions based on this analysis, which are subsequently sent to the Train-CEQ-App for further processing and decision-making.
- MQTT Broker: Intelligent-Train uses MQTT for messaging. An MQTT broker, accessible to Intelligent-Train, must be operational. The MQTT broker's URL should be specified in the
MQTT_BROKER_URL
environment variable.
Dependencies are managed by pip and are specified in the requirements.txt
file.
Intelligent-Train is part of a larger system that includes the following modules:
- Capture-App: This module captures video and sends it to Intelligent-Train.
- Train-CEQ-App: This module processes the raw predictions made by the Intelligent-Train module, transforming them into actionable insights.
- Train-Monitoring-App: This module receives the CloudEvent from Train-CEQ-App via Kafka and uses this information for monitoring and visualization purposes.
- Train-Controller: This module receives decisions from Train-CEQ-App and controls the operation of the train accordingly.
- Clone the repository:
git clone https://github.com/Demo-AI-Edge-Crazy-Train/intelligent-train.git
- Navigate to the project directory:
cd intelligent-train
- Install the dependencies:
pip install -r requirements.txt
- Set the
MQTT_BROKER_URL
environment variable to the URL of your MQTT broker. - Run the application:
python src/app.py
This project is licensed under the MIT License - see the LICENSE file for details.