An open API service indexing awesome lists of open source software.

https://github.com/lamaabdeldayem/furniture_legs_detection

Custom-trained object detection model to identify and track furniture legs in images and videos
https://github.com/lamaabdeldayem/furniture_legs_detection

ai object-detection opencv python roboflow yolov8 yolov9

Last synced: 7 months ago
JSON representation

Custom-trained object detection model to identify and track furniture legs in images and videos

Awesome Lists containing this project

README

          

# πŸ›‹οΈ Furniture Leg Detection Project

## πŸš€ Overview

Welcome to the **Furniture Leg Detection Project**! This project leverages advanced **object detection** to identify and track furniture legs in images and videos. Whether you're looking to automate **inventory management**, enhance **quality control**, or implement **augmented reality** applications, this system provides robust solutions! πŸ’‘

### πŸ”‘ Key Features
- πŸ“¦ **Custom Dataset**: Annotated with **Roboflow** for high accuracy.
- πŸ” **YOLOv8 & YOLOv9**: Leveraging the power of state-of-the-art object detection frameworks for precise performance.
- πŸŽ₯ **Real-Time Detection**: Supports both **image** and **video** input, perfect for live applications.
- 🎯 **Confidence Threshold Adjustment**: Fine-tune detection results for optimal accuracy.
- πŸ’Ύ **Auto-Save Results**: Detected items are automatically saved for further analysis.

---

## βš™οΈ Technologies Used

- **Python**: The programming language that powers the project. 🐍
- **YOLOv8 & YOLOv9**: Cutting-edge object detection frameworks for accuracy and speed. ⚑
- **OpenCV**: Real-time image processing library for video capture and manipulation. πŸ“Έ
- **Roboflow**: Tool for dataset annotation and preprocessing, enhancing model quality. πŸ“

---

## πŸ› οΈ How It Works

1. **Dataset Preparation**: Annotate the dataset of furniture legs using **Roboflow** and export it for training. πŸ–ΌοΈ
2. **Model Training**: Train the **YOLO** model with the annotated data, teaching it to detect patterns of furniture legs. πŸ’‘
3. **Detection**: Use the trained model to detect furniture legs in images and videos, displaying bounding boxes and tracking objects in real time. 🎯

---

## πŸ’» Code Example

Here’s a quick look at how the detection works in action:

```python
from ultralytics import YOLO

# Load the pre-trained model
model = YOLO('C:/Users/dell/Downloads/Nike/legs_wout_whole/legs_wout_whole.pt')

# Perform detection on live video (e.g., webcam feed)
results = model(source=0, show=True, conf=0.6, save=True)
```

---

## πŸƒβ€β™‚οΈ How to Run

1. **Install Dependencies**:
Install the required libraries via pip:
```bash
pip install ultralytics opencv-python
```
2. **Download the Model**:
- Get the trained model [here](https://drive.google.com/file/d/1X4YulpSKUdRvk0FL24E-lGNJq1mTnhwF/view?usp=sharing).
- Save the `.pt` file to a known directory. πŸ—‚οΈ

3. **Run the Script**:
- Update the script with the correct path to your downloaded model.
- Execute the script with:
```bash
python detect_furniture_legs.py
```

4. **Results**:
- The model will display **live detections** on your video feed! πŸ“Ή
- Detected frames will be saved to the output directory. πŸ“‚

---

## 🌍 Example Use Case

**Input**: An image or video of a room filled with furniture. πŸ›οΈπŸͺ‘

**Output**:
- Bounding boxes around the detected furniture legs.
- Saved results with annotated images or videos. πŸ“Έ

---

## ⚠️ Notes

- Ensure that your **input source** (camera or video file) is properly configured. πŸŽ₯
- Adjust the **confidence threshold** (`conf` parameter) for fine-tuning detection. 🎯

---

## πŸš€ Future Improvements

- Expand the model to detect **other furniture components** (e.g., tables, chairs). πŸͺ‘
- Integrate with **IoT devices** for **automated inventory tracking**. 🏠
- Develop a **user-friendly interface** for non-technical users to easily interact with the model. πŸ’»