This as an implementation of Ultralytics YOLO v8 for object detection.
YOLO v8 is state of the art model for computer vision tasks from Ultralytics. In this project, I have implemented it for object detection task.
- Real time object detection via Webcam
- Object detection in an uploaded video file
- Ultralytics YOLO v8 (Model)
- OpenCV (Video Processing)
- Roboflow Supervision (Video Processing)
- Streamlit (UI)
├─── models/
│ └─── __init__.py
├─── outputs/
├─── research/
│ └─── trials.ipynb
├─── sources/
├─── utils/
│ └─── __init__.py
├─── variables/
│ └─── __init__.py
├─── app.py
├─── template.py
├─── README.md
├─── requirements.txt
├─── LICENSE
└─── .gitignore
streamlit~=1.26.0
ultralytics~=8.1.1
supervision~=0.17.1
opencv-python~=4.9.0.80
pathlib~=1.0.1
pillow~=9.4.0
tqdm~=4.65.0
pyyaml~=6.0
- Clone the repository.
$ git clone https://github/repository/link
- Get into the Project Directory
$ cd Object-Detection-w-YOLOv8
- Install the required dependencies.
$ pip install -r requirements.txt
- Run the app.
$ streamlit run app.py
- Choose the mode and model.
- Upload a video if Video File mode is selected.
- Click the
Start Detecting
button.
- It can be used to count cars entered and left a parking lot.
- To count live stock.
- Counting people that entered and left a shop.
- Other than counting, it can be used to detect any motion in a frame.
- And much more.
Contributions are welcomed and appreciated.
This project is released under 'MIT License'.
In conclusion, this project leverages the power of Ultralytics YOLO v8 for real-time object detection. With features like webcam-based detection and processing of uploaded video files, it offers a versatile solution for various applications.