Переглянути як Markdown

libreyolo predict

Запускає завантажену модель на одному джерелі та друкує передбачення. Джерелом може бути зображення, каталог, відео, URL або живий потік; моделлю може бути контрольна точка або експортований артефакт.

Команда
libreyolo predict
Обов'язкове
source
Вивід
Передбачення на stdout. З save=true анотовані файли в runs/detect/predict

Синтаксис

bash
libreyolo predict source=<path|url|index> [model=<name|path>] [key=value ...]

Аргументи задаються парами key=value. Та сама команда приймає й POSIX-форму, тому conf=0.4 і --conf 0.4 взаємозамінні, а булеве значення, записане як save=true, перетворюється на --save. Імена з підкресленням приймають обидва написання: max_det=50 і --max-det 50 ведуть до того самого параметра.

libreyolo detect predict ... теж приймається і поводиться так само; слово задачі відкидається перед розбором.

Аргументи

АргументТипове значенняОпис
sourceШлях до зображення, каталог або URL. Обов'язковий
modelyolox-sНазва або шлях до моделі
conf0.25Поріг впевненості
iou0.45Поріг IoU для NMS
imgszРозмір вхідного зображення: 640 (квадрат) або 480x640 (HxW). Якщо не задано, береться власний розмір входу моделі
classesФільтр за ID класів, напр. [0,2,5]. Приймається й одне ціле число
max_det300Максимум виявлень на зображення
halffalseІнференс у FP16 (лише CUDA, потрібна підтримка з боку моделі)
savefalseЗберігати анотовані зображення
batch1Кількість зображень на один прямий прохід для джерел-каталогів. Значення понад 1 вмикає справжній батчевий інференс на моделях, які його підтримують
streamfalseВидавати результати поступово. Вмикається автоматично для вебкамер і живих потоків
stream_bufferfalseБуферизувати кожен живий кадр замість зберігання лише найновішого
vid_stride1Обробляти кожен N-й кадр відео чи живого потоку
showfalseПоказувати відео та живі результати; q зупиняє
tilingfalseТайловий інференс для великих зображень
overlap_ratio0.2Коефіцієнт перекриття тайлів
output_pathЯвний шлях виводу. Інакше project/name, коли save=true
color_formatautoКолір входу: auto, rgb, bgr
output_file_formatФормат виводу: jpg, png, webp
deviceautoПристрій: 0, cpu, mps, auto
face_detectorМодель детектора облич (шлях або назва в CLI). Обов'язкова для моделей оцінювання погляду
galleryГалерея облич .npz з libreyolo enroll, за якою ідентифікуються обличчя. Лише для моделей ембедингів облич
gallery_threshold0.4Косинусний поріг для збігу особи з галереї
projectruns/detectКорінь каталогу виводу
namepredictНазва експерименту
exist_okfalseПовторно використовувати наявний каталог виводу
jsonfalseВивід JSON на stdout
quietfalseПридушити stderr
verbosefalseДокладний вивід у stderr
help_jsonfalseВивести схему команди як JSON і вийти

Приклади

Базове використання
libreyolo predict model=LibreYOLO9s.pt \  source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg
Зберегти анотовані зображення
libreyolo predict model=LibreYOLO9s.pt save=true \  project=runs/detect name=parkour exist_ok=true \  source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg
Фільтр класів, JSON на stdout
# клас 0 відповідає person у списку класів COCO, що постачається з контрольною точкою.libreyolo predict model=LibreYOLO9s.pt classes="[0]" conf=0.4 max_det=50 \  json=true quiet=true \  source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg

Примітки

Експортований артефакт завантажується так само, як контрольна точка, тому model=weights/LibreYOLO9s.onnx і model=weights/LibreYOLO9s.engine є коректними значеннями для model. Три параметри в таких середовищах виконання не ігноруються, а відхиляються: tiling, overlap_ratio і output_file_format завершують роботу з config_unsupported, якщо бекенд середовища виконання не може їх виконати.

half працює навпаки. Експортовані середовища виконання отримують його і працюють у FP16; нативний інференс PyTorch записує в лог, що параметр проігноровано, і продовжує у FP32.

Моделі оцінювання погляду двостадійні і не мають власного детектора, тому для них потрібен face_detector. gallery стосується лише моделей із задачею embed; передавання його будь-чому іншому завершується з config_unsupported.

stdout несе лише результати й нічого більше; прогрес, попередження та помилки йдуть у stderr. json=true друкує один об'єкт JSON на виклик або по одному на кадр у режимі потоку, кожен із полем schema_version. quiet=true вимикає вивід у stderr. Разом вони дають машинному читачеві чистий потік stdout.

Код виходу: 0 в разі успіху, 2 для помилки використання чи конфігурації, 3 коли джерело не знайдено, 4 коли не вдалося завантажити модель, і 1 для інших збоїв під час виконання.

help_json=true друкує параметри команди, їхні типи, типові значення та прапорці у форматі JSON, нічого не запускаючи, і це надійний спосіб прочитати цю таблицю зі встановленої версії.

Пов'язане: libreyolo val для вимірювання метрик на датасеті, libreyolo export для створення згаданих вище артефактів середовища виконання.

Перевірено з LibreYOLO v1.5.0.