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

https://github.com/hamed-gharghi/objshomar

ObjShomar is an easy-to-use desktop application for real-time object detection and counting using YOLOv8. Designed for non-technical users, it features a modern English interface and supports live camera feeds, video files, and network streams. Instantly detect and count objects in your videos with a simple, intuitive UI.
https://github.com/hamed-gharghi/objshomar

computer-vision deep-learning farsi gui object-counting object-detection opencv persian pyside6 python real-time surveillance ultralytics video-analysis yolo

Last synced: 3 months ago
JSON representation

ObjShomar is an easy-to-use desktop application for real-time object detection and counting using YOLOv8. Designed for non-technical users, it features a modern English interface and supports live camera feeds, video files, and network streams. Instantly detect and count objects in your videos with a simple, intuitive UI.

Awesome Lists containing this project

README

          

# ObjShomar 🎥📦🔢

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](./LICENSE)
![Python](https://img.shields.io/badge/Python-3.10%2B-blue?logo=python)
![PySide6](https://img.shields.io/badge/PySide6-Qt%20for%20Python-green?logo=qt)
![Platform](https://img.shields.io/badge/Platform-Windows%20%7C%20Linux-lightgrey?logo=windows&logoColor=white)

---

## 📑 Navigation | ناوبری
- [🇬🇧 English](#english)
- [🇮🇷 فارسی](#persian)

---


# 🇬🇧 English

> **ObjShomar** — An application for object counting and detection in videos and camera streams using YOLOv8 and a modern, user-friendly desktop interface.
>
> **Name origin:** "ObjShomar" is a combination of "Object" (English) and "Shomar" (Persian for "counting").

---

## 🚀 Quick Start

1. **Clone the repository:**
```bash
git clone https://github.com/YourUsername/ObjShomar.git
cd ObjShomar
```
2. **Install Python 3.10+** (Recommended: 3.10, 3.11, or 3.12)
3. **Install dependencies:**
```bash
pip install -r requirements.txt
```
4. **Run the app:**
```bash
python main.py
```

---

## 🖼️ Screenshots

| Main Window (Initial) | Model Selection | Class Selection |
|-----------------------|----------------|-----------------|
| ![Empty Main Window](assets/Empty-Main-Window.png) | ![YOLO Engine Select](assets/Yolo-Engine-Select.png) | ![Classes Selection](assets/Classes-Selection.png) |

| Camera Link Input | Detection on Camera Stream | Detection on Video File |
|------------------|---------------------------|------------------------|
| ![Camera Link Input](assets/Camera-Link-Input.png) | ![Camera Link Car Detection](assets/Camera-Link-Car-Detection.png) | ![Video Person & Backpack Detection](assets/Video-Person&Backpack-Detection.png) |

---

## ✨ Features

- **YOLOv8 Object Detection:**
Detect and count objects in real-time using the latest YOLOv8 models.
- **Flexible Model Selection:**
Choose from multiple YOLOv8 variants (nano, small, medium, large, x-large). Download missing models automatically.
- **Class Filtering:**
Select which object classes to count and display.
- **Multiple Video Sources:**
- Open local video files (MP4, AVI, etc.)
- Enter camera/network stream URLs (RTSP, HTTP, etc.)
- **Live Visualization:**
Bounding boxes, labels, and object counts overlaid on video.
- **Zoom & Pan:**
Inspect video frames in detail with interactive zoom and pan.
- **Screenshot:**
Save annotated frames as images.
- **Modern GUI:**
Built with PySide6 (Qt for Python) for a responsive, cross-platform experience.
- **Easy Setup:**
Automatic dependency checks and guided installation.

---

## ❓ What is ObjShomar?

ObjShomar is a desktop tool for object counting and detection in videos or live streams using the powerful YOLOv8 deep learning models. It’s designed for ease of use, flexibility, and real-time performance—ideal for research, surveillance, traffic analysis, and more.

---

## 🤖 Powered by YOLO

This project uses the amazing [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics) object detection models.
A huge thank you to the Ultralytics team and the open-source community for making state-of-the-art vision accessible!

---

## 📝 License

MIT

---

## 🤝 Contributing

Contributions, issues, and feature requests are welcome!
Feel free to open an issue or submit a pull request.

---

## 📬 Contact

For questions, suggestions, or collaboration, feel free to reach out:
- 💼 [GitHub](https://github.com/YourUsername)
- 📧 Email: your.email@example.com

---

## 🏷️ Keywords

YOLO
Object Detection
PySide6
Qt for Python
Video Analysis
Real-time
Deep Learning
Computer Vision
Object Counting

---

## 🙏 Thanks

Special thanks to [Ultralytics YOLO](https://github.com/ultralytics/ultralytics) and the open-source community!

---


# 🇮🇷 فارسی

> **اُبجِ شمار** — برنامه‌ای برای شمارش و تشخیص اشیا در ویدیوها و استریم‌های دوربین با استفاده از YOLOv8 و رابط کاربری مدرن و ساده.
>
> **درباره نام:** اُبجِ شمار ترکیبی از واژه انگلیسی "Object" (شیء) و واژه فارسی "شمار" (شمارش) است.

---

## 🚀 شروع سریع

۱. **کلون کردن مخزن:**
```bash
git clone https://github.com/YourUsername/ObjShomar.git
cd ObjShomar
```
۲. **نصب پایتون ۳.۱۰ یا بالاتر (پیشنهادی: ۳.۱۰، ۳.۱۱ یا ۳.۱۲)**
۳. **نصب وابستگی‌ها:**
```bash
pip install -r requirements.txt
```
۴. **اجرای برنامه:**
```bash
python main.py
```

---

## 🖼️ اسکرین‌شات

| پنجره اصلی | انتخاب مدل YOLO | انتخاب کلاس‌ها |
|------------|-----------------|----------------|
| ![Empty Main Window](assets/Empty-Main-Window.png) | ![YOLO Engine Select](assets/Yolo-Engine-Select.png) | ![Classes Selection](assets/Classes-Selection.png) |

| ورودی لینک دوربین | تشخیص خودرو در استریم | تشخیص افراد و کوله‌پشتی در ویدیو |
|-------------------|----------------------|-------------------------------|
| ![Camera Link Input](assets/Camera-Link-Input.png) | ![Camera Link Car Detection](assets/Camera-Link-Car-Detection.png) | ![Video Person & Backpack Detection](assets/Video-Person&Backpack-Detection.png) |

---

## ✨ ویژگی‌ها

- **تشخیص و شمارش اشیا با YOLOv8:**
شمارش و تشخیص اشیا به صورت بلادرنگ با مدل‌های YOLOv8
- **انتخاب مدل دلخواه:**
انتخاب از بین مدل‌های مختلف YOLOv8 (nano, small, medium, large, x-large) و دانلود خودکار مدل‌های مورد نیاز
- **فیلتر کلاس‌ها:**
انتخاب کلاس‌های مورد نظر برای شمارش و نمایش
- **پشتیبانی از منابع ویدیویی مختلف:**
- باز کردن فایل‌های ویدیویی (MP4, AVI و ...)
- وارد کردن لینک استریم دوربین (RTSP, HTTP و ...)
- **نمایش زنده:**
نمایش جعبه و برچسب و شمارش اشیا روی ویدیو
- **بزرگ‌نمایی و جابجایی تصویر:**
امکان بزرگ‌نمایی و جابجایی برای بررسی دقیق‌تر فریم‌ها
- **گرفتن اسکرین‌شات:**
ذخیره فریم‌های حاشیه‌نویسی شده به عنوان تصویر
- **رابط کاربری مدرن:**
ساخته شده با PySide6 (Qt for Python) برای تجربه کاربری سریع و مدرن
- **نصب آسان:**
بررسی خودکار وابستگی‌ها و نصب راهنما

---

## ❓ اُبجِ شمار چیست؟

اُبجِ شمار یک ابزار دسکتاپ برای شمارش و تشخیص اشیا در ویدیوها یا استریم‌های زنده با استفاده از مدل‌های قدرتمند YOLOv8 است. این برنامه برای سهولت استفاده، انعطاف‌پذیری و عملکرد بلادرنگ طراحی شده است—مناسب برای پژوهش، نظارت، تحلیل ترافیک و موارد دیگر.

---

## 🤖 قدرت‌گرفته از YOLO

این پروژه از مدل‌های قدرتمند [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics) استفاده می‌کند.
از تیم Ultralytics و جامعه متن‌باز بابت در دسترس قرار دادن فناوری بینایی ماشین پیشرفته سپاسگزاریم!

---

## 📝 مجوز

MIT

---

## 🤝 مشارکت

پیشنهادات، گزارش باگ و درخواست ویژگی جدید خوش‌آمد است!
می‌توانید issue باز کنید یا pull request ارسال نمایید.

---

## 📬 ارتباط

برای سوال، پیشنهاد یا همکاری:
- 💼 [GitHub](https://github.com/YourUsername)
- 📧 ایمیل: your.email@example.com

---

## 🏷️ کلیدواژه‌ها

YOLO
تشخیص اشیا
PySide6
Qt for Python
تحلیل ویدیو
بلادرنگ
یادگیری عمیق
بینایی ماشین
شمارش اشیا

---

## 🙏 تشکر

تشکر ویژه از [Ultralytics YOLO](https://github.com/ultralytics/ultralytics) و جامعه متن‌باز!