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 (12.5%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

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

README.md

Plastic Detection AI

Overview

This project focuses on developing an AI model capable of detecting plastic items in real-time using advanced computer vision techniques. The core model is built on YOLOv5 (You Only Look Once), a state-of-the-art object detection framework. By automating plastic detection, the project aims to address environmental challenges such as waste management and recycling inefficiencies.

The initial experiment (Exp1) uses a custom dataset of plastic items, with images and annotations provided in the data/train folder. This dataset enables the AI model to learn and effectively identify plastic items under varying conditions.


How It Works

  1. Dataset:

    • The dataset is located in the data/train folder.
    • It consists of labeled images of plastic items captured in diverse environments, ensuring robust detection across real-world scenarios.
  2. Model Architecture:

    • YOLOv5 is employed for its high speed and accuracy.
    • It is ideal for detecting plastic items in real-time applications like recycling plants or waste sorting systems.
  3. Training:

    • The model is trained on labeled images, which include bounding boxes around plastic items.
    • Through this training, the AI learns to recognize plastic items in complex scenes.
  4. Inference:

    • The trained model can detect plastic items in live video streams or static images.
    • It outputs bounding boxes, class names, and confidence scores, enabling real-time applications.

Installation and Running the Detection

To set up and run the project, follow these steps:

Step 1: Clone the repository

bash git clone <repository-url>

Step 2: Install the dependencies

bash pip install -r requirements.txt

Step 3: Download YOLOv5 weights

The trained weights (best.pt) are located in the 'runs/train' folder or can be generated by training the model.

Step 4: Train the model

bash python train.py --data data.yaml --cfg models/yolov5s.yaml --weights yolov5s.pt --epochs 100

Step 5: Run inference

python detect.py --source <video_or_image_path> --weights runs/train/best.pt

Results

In the initial experiment (Exp1), the model achieved:

Accuracy: 94% Precision: 89%

These results demonstrate that the model can reliably detect plastic items, even in challenging conditions.

Future Work

Expand the dataset to include a wider variety of plastic types and environments. Integrate the AI into recycling lines for real-time sorting and waste management. Develop an edge AI system for deployment in low-resource environments.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Owner

  • Login: ummasangsoo
  • Kind: user

GitHub Events

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

Dependencies

.github/workflows/ci-testing.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • slackapi/slack-github-action v1.27.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
  • nick-invision/retry v3 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