Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.1%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: noahwons
  • License: agpl-3.0
  • Language: Python
  • Default Branch: master
  • Size: 108 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed over 1 year ago
Metadata Files
Readme Contributing License Citation

README.md

YOLOv5 Bubble Detection for Hot Air Balloon Viles

This project uses a YOLOv5 model trained to detect bubbles in hot air balloon viles. The model can detect bubbles in video frames, making it useful for automated bubble detection in various hot air balloon scenarios.

Table of Contents


Installation

Step 1: Clone the repository

Clone this repository to your local machine using the following command:

bash git clone https://github.com/noahwons/Hot-air-Baloon-Bubble-Detection.git cd Hot-air-Baloon-Bubble-Detection

This will create a local copy of the repository and navigate into the project directory.

Step 2: Install dependencies

Ensure you have Python 3.7+ installed and then install the required dependencies using pip:

bash pip install -U -r requirements.txt

This will install all the necessary libraries and dependencies, including PyTorch, OpenCV, and YOLOv5.


Requirements

  • Python 3.7+ (recommended version)
  • PyTorch (for deep learning framework)
  • OpenCV (for image/video processing)
  • YOLOv5 (for object detection)

Make sure your environment has these dependencies installed for smooth execution.


Usage

Running the Model

To run inference and detect bubbles in a video, use the following command:

bash python detect.py --weights runs/train/exp3/weights/best.pt --device cpu --source /Users/noahwons/Downloads/bubbles_test.MP4 --view-img --img-size 1280

Arguments Explained:

  • --weights: The path to the trained YOLOv5 model weights file (in this case, best.pt).
  • --device: Specifies the device to run the model on (cpu for CPU or cuda for GPU).
  • --source: The path to the input video file (/Users/noahwons/Downloads/bubbles_test.MP4 in this example).
  • --view-img: Displays the detection results in an OpenCV window.
  • --img-size: Input image size for the model (set to 1280 for higher accuracy with smaller objects).

Example Usage:

Run the model on your own video file by changing the --source parameter to point to the video you want to analyze. For example:

bash python detect.py --weights runs/train/exp3/weights/best.pt --device cpu --source /path/to/your/video_file.MP4 --view-img --img-size 1280


Training

To train the model on your own dataset, use the following command:

bash python train.py --data bubbles_dataset.yaml --cfg yolov5s.yaml --weights '' --batch-size 16 --epochs 300

Arguments Explained:

  • --data: Path to the dataset configuration YAML file (bubbles_dataset.yaml), which should define your data and class labels.
  • --cfg: Specifies the model configuration (e.g., yolov5s.yaml for a small model).
  • --weights: Pretrained weights file or leave empty ('') to train from scratch.
  • --batch-size: The number of samples per batch during training.
  • --epochs: The number of epochs (iterations) to train the model (300 epochs in this case).

Training a Custom Dataset:

To train the model on a custom dataset, ensure that you have a valid dataset configuration file (bubbles_dataset.yaml) and appropriate labeled data (images with annotations). The dataset file should define the paths to your training and validation data, as well as the class labels.


Acknowledgements

  • This project uses YOLOv5 for object detection, a state-of-the-art model for real-time object detection.
  • Special thanks to the open-source community and contributors who have made object detection models like YOLOv5 freely available.

This README.md file is now formatted with markdown annotations to help with clarity and organization. You can copy and paste this directly into your project's README file, making any adjustments as necessary for your project specifics.

Owner

  • Name: Noah Wons
  • Login: noahwons
  • Kind: user
  • Location: USA

New programmer, learning Python, C, and Java

GitHub Events

Total
  • Issue comment event: 5
  • Push event: 3
  • Pull request event: 3
  • Create event: 3
Last Year
  • Issue comment event: 5
  • Push event: 3
  • Pull request event: 3
  • Create event: 3

Dependencies

.github/workflows/ci-testing.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • slackapi/slack-github-action v2.0.0 composite
.github/workflows/cla.yml actions
  • contributor-assistant/github-action v2.6.1 composite
.github/workflows/codeql-analysis.yml actions
  • actions/checkout v4 composite
  • github/codeql-action/analyze v3 composite
  • github/codeql-action/init v3 composite
.github/workflows/docker.yml actions
  • actions/checkout v4 composite
  • docker/build-push-action v6 composite
  • docker/login-action v3 composite
  • docker/setup-buildx-action v3 composite
  • docker/setup-qemu-action v3 composite
.github/workflows/format.yml actions
  • ultralytics/actions main composite
.github/workflows/links.yml actions
  • actions/checkout v4 composite
  • ultralytics/actions/retry main composite
.github/workflows/merge-main-into-prs.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
.github/workflows/stale.yml actions
  • actions/stale v9 composite
utils/docker/Dockerfile docker
  • pytorch/pytorch 2.0.0-cuda11.7-cudnn8-runtime build
utils/google_app_engine/Dockerfile docker
  • gcr.io/google-appengine/python latest build
pyproject.toml pypi
  • matplotlib >=3.3.0
  • numpy >=1.22.2
  • opencv-python >=4.6.0
  • pandas >=1.1.4
  • pillow >=7.1.2
  • psutil *
  • py-cpuinfo *
  • pyyaml >=5.3.1
  • requests >=2.23.0
  • scipy >=1.4.1
  • seaborn >=0.11.0
  • thop >=0.1.1
  • torch >=1.8.0
  • torchvision >=0.9.0
  • tqdm >=4.64.0
  • ultralytics >=8.1.47
requirements.txt pypi
  • PyYAML >=5.3.1
  • gitpython >=3.1.30
  • matplotlib >=3.3
  • numpy >=1.23.5
  • opencv-python >=4.1.1
  • pandas >=1.1.4
  • pillow >=10.3.0
  • psutil *
  • requests >=2.32.2
  • scipy >=1.4.1
  • seaborn >=0.11.0
  • setuptools >=70.0.0
  • thop >=0.1.1
  • torchvision >=0.9.0
  • tqdm >=4.66.3
utils/google_app_engine/additional_requirements.txt pypi
  • Flask ==2.3.2
  • gunicorn ==22.0.0
  • pip ==23.3
  • werkzeug >=3.0.1
  • zipp >=3.19.1