Библиотека для детекции объектов на экране и автоматического клика по ним
Project description
Detect-and-Click
Библиотека для автоматической детекции объектов на экране и выполнения кликов по ним на базе YOLOv8.
Описание
Detect-and-Click — это Python-библиотека, которая совмещает возможности компьютерного зрения с автоматизацией действий мыши. Она использует предобученную модель YOLOv8 для обнаружения заданных объектов на экране и автоматически выполняет клики по ним.
Основные возможности:
- Обнаружение объектов на всем экране или в указанной области
- Автоматические клики по обнаруженным объектам
- Настраиваемая задержка между кликами
- Визуализация процесса обнаружения (опционально)
Установка
pip install detect-and-click
Подготовка модели
Библиотека работает с весами YOLOv8 в формате .pt. Для работы необходим файл best.pt, содержащий обученную модель.
Библиотека будет искать этот файл в следующих местах:
- Текущая рабочая директория
~/.detect_and_click/models/best.pt- Директория
modelsвнутри установленного пакета
Также можно указать путь явно через аргумент --model или переменную окружения DETECT_AND_CLICK_MODEL_PATH.
Использование
Как CLI-инструмент
# Простой запуск (будет искать best.pt автоматически)
detect-and-click
# С указанием пути к модели
detect-and-click --model /path/to/best.pt
# Настройка порога уверенности и задержки между кликами
detect-and-click --conf 0.7 --delay 0.5
# Указание области экрана для сканирования
detect-and-click --region "0,0,800,600"
# Запуск без отображения окна OpenCV
detect-and-click --no-display
# Полная справка по параметрам
detect-and-click --help
Как библиотека
from detect_and_click import DetectAndClick
# Инициализация с настройками
dac = DetectAndClick(model_path="/path/to/best.pt", conf=0.7, delay=0.5)
# Запуск с отображением окна
dac.run(display=True)
# Запуск для определённого региона экрана
region = {"left": 0, "top": 0, "width": 800, "height": 600}
dac.run(display=True, region=region)
Управление
При запущенном приложении:
Q- выход из программы
Параметры командной строки
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
--model |
строка | Авто | Путь к весам best.pt |
--conf |
число | 0.5 | Порог уверенности YOLO (0.0 - 1.0) |
--delay |
число | 0.4 | Задержка между кликами в секундах |
--no-display |
флаг | False | Не показывать окно OpenCV |
--region |
строка | Весь экран | Зона захвата: left,top,width,height |
Требования
- Python 3.7+
- OpenCV
- PyAutoGUI
- Ultralytics YOLOv8
- MSS (для захвата экрана)
- Numpy
Примеры использования
Автоматический клик по кнопкам в игре
# Сканирование всего экрана, клик при уверенности >70%, задержка 0.8 сек
detect-and-click --conf 0.7 --delay 0.8
Фокусированное сканирование в окне приложения
# Сканирование прямоугольной области экрана
detect-and-click --region "100,200,800,600"
Тихий режим работы (без визуализации)
# Работа в фоновом режиме
detect-and-click --no-display
Для разработчиков
Установка в режиме разработки
# Клонирование репозитория
git clone https://github.com/ваш-username/detect-and-click.git
cd detect-and-click
# Создание виртуального окружения
python -m venv .venv
source .venv/bin/activate # На Windows: .venv\Scripts\activate
# Установка в режиме разработки
pip install -e ".[dev]"
Запуск тестов
pytest
Лицензия
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file detect_and_click-0.2.0.tar.gz.
File metadata
- Download URL: detect_and_click-0.2.0.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
baf4276497b8e0baf24ecfdfcef62afee8277aa0b3ddee07dc26b648628abe2f
|
|
| MD5 |
044b7d6ad6b05a353ba968ae0611b9a0
|
|
| BLAKE2b-256 |
e46e0c5f677d5dd263ced1d767ba03fab8f91a514e83fea868c8a4209bcebeba
|
File details
Details for the file detect_and_click-0.2.0-py3-none-any.whl.
File metadata
- Download URL: detect_and_click-0.2.0-py3-none-any.whl
- Upload date:
- Size: 7.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c6956aafe8e02d745035af7f8e8a4b2dbe638ee83eda8fc0079098e32425c639
|
|
| MD5 |
553c16d89fc380d356b2a3932618034a
|
|
| BLAKE2b-256 |
735abf5ebf1733c763eac1700de2df2b325c053581e6a29b78712390433ced51
|