Science Score: 44.0%

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

  • CITATION.cff file
    Found 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.7%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: osu-ai-recycling
  • License: agpl-3.0
  • Language: Python
  • Default Branch: main
  • Size: 321 MB
Statistics
  • Stars: 1
  • Watchers: 0
  • Forks: 1
  • Open Issues: 2
  • Releases: 0
Created over 2 years ago · Last pushed about 2 years ago
Metadata Files
Readme Contributing License Citation

README.md

AI Recycling

This is the main project repo for the Automated AI-Recycling OSU Project.

Overview

This current release of the AI-Recycling project involves a video recognition model capable of detecting and counting objects in a video. The model is based on the YOLOv5 architecture and is trained on a custom dataset of recyclable objects. The model is capable of detecting and counting objects in a video, and the results are output to the screen. The model is also capable of running in real-time on a video stream.

Deployment Information

Screenshot 2024-05-25 200312

For deployment, the client will check with the MLFlow server for new weights for the custom dataset, download those, and convert them to an openVINO model for inference on integrated graphics. Then, it will run inference on a video or video stream and report object counts.

Prerequisites

Before starting, ensure you have the following installed on your system:

  • Git
  • 3.8 <= Python <= 3.11 (PyTorch does not work with newer versions of Python yet)
  • Requirements as specificed in requirements.txt (pip install -r requirements.txt)

Installation

To get the project up and running on your local machine, follow these steps:

1. Clone the Repository

First, clone the repository to your local machine using Git:

bash git clone https://github.com/osu-ai-recycling/ai-recycling cd ai-recycling pip install -r requirements.txt

2. Configuration

Before running inference, you should check and adjust the model, source, and parameters according to your needs:

Model and Parameters: Inspect test_server.py to verify the model settings, source paths, and parameters such as debug_save, confidences, etc. Customized Parameters: Review detect.py for customized parameters, including paths where the results should be saved.

3. Running Inference

To run inference with the model, execute the following command:

bash python test_server.py video_path

This command will process the input data using the YOLOv5 model and output the results according to the configurations set in testserver.py and detect.py. This process will run the model on the input video and count objects detected in the video as well as output the results to the screen using OpenCV. The parameter videopath is the path to the input video.

Examples: bash python test_server.py recyclingvideo.mp4 python test_server.py rtsp://127.0.0.1:1234/stream

Owner

  • Name: osu-ai-recycling
  • Login: osu-ai-recycling
  • Kind: organization

Citation (CITATION.cff)

cff-version: 1.2.0
preferred-citation:
  type: software
  message: If you use YOLOv5, please cite it as below.
  authors:
  - family-names: Jocher
    given-names: Glenn
    orcid: "https://orcid.org/0000-0001-5950-6979"
  title: "YOLOv5 by Ultralytics"
  version: 7.0
  doi: 10.5281/zenodo.3908559
  date-released: 2020-5-29
  license: AGPL-3.0
  url: "https://github.com/ultralytics/yolov5"

GitHub Events

Total
  • Watch event: 1
Last Year
  • Watch event: 1

Dependencies

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
requirements.txt pypi
  • Pillow >=10.0.1
  • PyYAML >=5.3.1
  • gitpython >=3.1.30
  • matplotlib >=3.3
  • numpy >=1.22.2
  • opencv-python >=4.1.1
  • pandas >=1.1.4
  • psutil *
  • requests >=2.23.0
  • scipy >=1.4.1
  • seaborn >=0.11.0
  • setuptools >=65.5.1
  • thop >=0.1.1
  • torchvision >=0.9.0
  • tqdm >=4.64.0
  • ultralytics >=8.0.147
streamlit_site/requirements.txt pypi
  • Pillow ==9.5.0
  • imageio *
  • opencv-python ==4.8.0.74
  • openpyxl ==3.1.2
  • pandas *
  • streamlit *
utils/google_app_engine/additional_requirements.txt pypi
  • Flask ==2.3.2
  • gunicorn ==19.10.0
  • pip ==23.3
  • werkzeug >=3.0.1