Підрахунок об'єктів на зображенні і відео: відеоаналітика за допомогою нейронних мереж

Системи відеоаналітики - це програми, що дозволяють проаналізувати відеопотік або зображення та зробити наступні висновки: підрахунок об'єктів на зображенні, параметри об'єктів, їхня поведінка (траєкторія, характер руху і т. ін.)

#Машинне навчання #Нейронні мережі #Розпізнавання образів

Системи відеоаналітики - це програми, що дозволяють проаналізувати відеопотік або зображення та зробити наступні висновки: підрахунок об'єктів на зображенні, параметри об'єктів, їхня поведінка (траєкторія, характер руху і т. ін.)

https://github.com/ahmetozlu/tensorflow_object_counting_api/blob/master/README.md

Ось деякі вимоги, що найчастіше ставляться до програми відеоаналітики:

Як працює система відеоаналітики?

У програмі відеоаналітики вихідне відео читається кадр за кадром. Кожен кадр обробляється нейронною мережею. Це цикл, що продовжує працювати до кінця відео. Загальний принцип роботи системи відеоаналітики зображений на ілюстрації нижче:

Для визначення об'єктів використовуються моделі на базі нейронних мереж типу CNN (convolutional neural network, згорткові нейронні мережі, про них читайте тут ) і SSD (Single Shot MultiBox Detector)

Підхід SSD було опубліковано наприкінці листопада 2016 року, і це призвело до нового рекорду з погляду продуктивності і точності для задач виявлення об'єктів.

У назві "Single Shot MultiBox Detector":

У такий спосіб ми можемо класифікувати за 1 прохід декілька різних об'єктів та на одному кадрі виявляти і людей, і тварин, і транспорт тощо. Програма підрахунку об'єктів на відео, наприклад, може рахувати різні типи об'єктів і враховувати їхнє перебування в певній зоні.

Нейронна мережа також здатна "супроводжувати" об'єкти, отже, визначивши на одному з кадрів машину як Car_001, вона буде Car_001 і на інших кадрах; таким чином ви будете розуміти, що це одна і та сама машина, а не щоразу нова.

https://github.com/ahmetozlu/tensorflow_object_counting_api/blob/master/README.md

Крім згаданих нейронних мереж архітектур CNN або SSD для відеоаналітики застосовуються ще інші моделі, залежно від поставленої задачі.

Системи відеоаналітики реального часу

Нейронні мережі на основі SSD-підходу цікаві ще й тим, що дозволяють використовувати мініатюрні й мобільні пристрої для відеоаналітики в реальному часі.

У статті про "залізо" для нейронних мереж ми писали про TPU типу Google Coral - отже, за допомогою таких систем підрахунок і класифікація об'єктів в реальному часі можливі й доступні без використання великих стаціонарних робочих станцій чи GPU-серверів. Це особливо цікаво для кейсів інтерактивної і креативної реклами, де на indoor або outdoor конструкції встановлюється пристрій, що обробляє відео та дозволяє рекламі взаємодіяти з користувачем.

Якщо вам цікава розробка ПЗ для відеоаналізу або ви хочете використовувати відеоаналітику як частину іншого програмного продукту, звертайтеся до нас : допоможемо зрозуміти, які саме системи потрібні для вашого бізнесу, підкажемо кращі сучасні можливості, щоб рішення приносили більше прибутку за менших витрат.

Читайте також

Послуги Evergreen