Spaces:
Sleeping
Sleeping
| comments: true | |
| description: Object Counting in Different Region using Ultralytics YOLOv8 | |
| keywords: Ultralytics, YOLOv8, Object Detection, Object Counting, Object Tracking, Notebook, IPython Kernel, CLI, Python SDK | |
| # Object Counting in Different Regions using Ultralytics YOLOv8 π | |
| ## What is Object Counting in Regions? | |
| [Object counting](https://docs.ultralytics.com/guides/object-counting/) in regions with [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) involves precisely determining the number of objects within specified areas using advanced computer vision. This approach is valuable for optimizing processes, enhancing security, and improving efficiency in various applications. | |
| <p align="center"> | |
| <br> | |
| <iframe loading="lazy" width="720" height="405" src="https://www.youtube.com/embed/okItf1iHlV8" | |
| title="YouTube video player" frameborder="0" | |
| allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" | |
| allowfullscreen> | |
| </iframe> | |
| <br> | |
| <strong>Watch:</strong> Ultralytics YOLOv8 Object Counting in Multiple & Movable Regions | |
| </p> | |
| ## Advantages of Object Counting in Regions? | |
| - **Precision and Accuracy:** Object counting in regions with advanced computer vision ensures precise and accurate counts, minimizing errors often associated with manual counting. | |
| - **Efficiency Improvement:** Automated object counting enhances operational efficiency, providing real-time results and streamlining processes across different applications. | |
| - **Versatility and Application:** The versatility of object counting in regions makes it applicable across various domains, from manufacturing and surveillance to traffic monitoring, contributing to its widespread utility and effectiveness. | |
| ## Real World Applications | |
| | Retail | Market Streets | | |
| |:------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------:| | |
| |  |  | | |
| | People Counting in Different Region using Ultralytics YOLOv8 | Crowd Counting in Different Region using Ultralytics YOLOv8 | | |
| ## Steps to Run | |
| ### Step 1: Install Required Libraries | |
| Begin by cloning the Ultralytics repository, installing dependencies, and navigating to the local directory using the provided commands in Step 2. | |
| ```bash | |
| # Clone Ultralytics repo | |
| git clone https://github.com/ultralytics/ultralytics | |
| # Navigate to the local directory | |
| cd ultralytics/examples/YOLOv8-Region-Counter | |
| ``` | |
| ### Step 2: Run Region Counting Using Ultralytics YOLOv8 | |
| Execute the following basic commands for inference. | |
| ???+ tip "Region is Movable" | |
| During video playback, you can interactively move the region within the video by clicking and dragging using the left mouse button. | |
| ```bash | |
| # Save results | |
| python yolov8_region_counter.py --source "path/to/video.mp4" --save-img | |
| # Run model on CPU | |
| python yolov8_region_counter.py --source "path/to/video.mp4" --device cpu | |
| # Change model file | |
| python yolov8_region_counter.py --source "path/to/video.mp4" --weights "path/to/model.pt" | |
| # Detect specific classes (e.g., first and third classes) | |
| python yolov8_region_counter.py --source "path/to/video.mp4" --classes 0 2 | |
| # View results without saving | |
| python yolov8_region_counter.py --source "path/to/video.mp4" --view-img | |
| ``` | |
| ### Optional Arguments | |
| | Name | Type | Default | Description | | |
| |----------------------|--------|--------------|--------------------------------------------| | |
| | `--source` | `str` | `None` | Path to video file, for webcam 0 | | |
| | `--line_thickness` | `int` | `2` | Bounding Box thickness | | |
| | `--save-img` | `bool` | `False` | Save the predicted video/image | | |
| | `--weights` | `str` | `yolov8n.pt` | Weights file path | | |
| | `--classes` | `list` | `None` | Detect specific classes i.e. --classes 0 2 | | |
| | `--region-thickness` | `int` | `2` | Region Box thickness | | |
| | `--track-thickness` | `int` | `2` | Tracking line thickness | | |