Чому натовпи стають перешкодою для комп'ютерного зору
Уявіть собі завантажену платформу метро під час ранкової години пік. Люди стоять щільно одне до одного, плечі зіштовхуються, а портфелі розмахуються між незнайомцями. Для людського ока це хаос, але хаос керований. Ви все ще можете стежити за другом у натовпі або помітити когось, хто махає вам з іншого кінця платформи. Для систем комп'ютерного зору ця ж сцена є мінним полем. Коли десятки людей перекривають один одного в одному кадрі, стандартні моделі детекції та трекінгу починають давати збої. Bounding boxes зливаються. Ідентифікатори переплутуються. Люди зникають за іншими й ніколи не повертаються з тією ж міткою.
Цей розрив між чистими лабораторними умовами та хаотичною реальністю — це саме те, що намагався подолати конкурс CVPR19 Tracking and Detection Challenge. Замість того, щоб тестувати моделі на розріджених, добре освітлених сценах, де кожна людина стоїть окремо, конкурс змушував їх працювати в щільних середовищах, де висока густота безпосередньо призводить до перекриття (occlusion), а перекриття спричиняє помилки у відстеженні ідентичності, які важко виправити. З того часу дослідники використовують цей бенчмарк як полігон для пошуку кращих способів керування цими помилками, перш ніж вони вийдуть з-під контролю.
Що насправді тестує цей конкурс
Конкурс CVPR19 не розглядав скупчення людей як єдину проблему. Він розділив складність на чотири основні напрямки, які виявляють різні слабкі місця у стандартних конвеєрах (pipelines).
Точність детекції об'єктів у натовпах. На розрідженій парковці детектор може намалювати чітку рамку навколо кожного пішохода. У переповненому коридорі стадіону та ж самий мережевий алгоритм часто реагує на перекриття торсів або злиттям кількох людей в одну величезну bounding box, або ж взагалі пропускає частково приховані тіла. Конкурс оцінює, чи може модель локалізувати окремих осіб, коли видимою залишається лише голова, рука або плече.
Стабільність багатооб'єктного трекінгу. Відстежувати одного переміщуваного в порожній кімнаті — легко. Це стає надзвичайно важким завданням, коли камера має спостерігати за п'ятдесятьма людьми, що одночасно перетинають площу. Конкурс перевіряє стабільність трекера, вимірюючи, чи залишаються траєкторії узгодженими, коли люди маневрують між одне одним. Один помилковий кадр може призвести до того, що трекер успадкує неправильний ідентифікатор або створить дубльований трек, який триватиме хвилини.
Обробка частих перекриттів (occlusions). Перекриття в натовпі — це не випадкова перешкода. Воно є постійним і динамічним. Один пішохід закриває іншого на три кадри, потім у цей проміжок заходить третя людина, і перший знову з'являється з іншого ракурсу. Статичні перекриття, такі як колони або припарковані автомобілі, є передбачуваними. Людські натовпи постійно змінюються, і конкурс робить акцент на відновленні ідентифікації. Коли хтось знову з'являється з-за групи людей, чи розпізнає його модель, чи сприймає його як абсолютно нову особу?
Збереження ідентичності під час руху. Постійність ідентифікації залежить не лише від розпізнавання облич. Коли люди рухаються крізь щільну сцену, їхній масштаб змінюється, поза змінюється з фронтальної на профіль, а освітлення варіюється в різних частинах середовища. Конкурс перевіряє, чи може система зберігати той самий ідентифікатор для людини, яка проходить двадцять метрів крізь густий натовп, навіть якщо ця людина кілька разів була перекрита іншими і залишалися видимими лише фрагменти її зовнішності.
Від бенчмарка до реального впливу
Покращення продуктивності за цими чотирма напрямками — це не просто академічна вправа. Кращі моделі безпосередньо впливають на те, як автономні системи та інструменти спостереження працюють у реальних умовах.
Уявіть автономний транспортний засіб, що наближається до завантаженого пішохідного переходу під час фестивалю. Пішоходи не йдуть рівними рядами. Вони збиваються в групи, штовхають візки та виходять один за одним. Якщо система трекінгу автомобіля втратить ідентифікатор пішохода в той момент, коли він приховається за іншою людиною, машина не зможе передбачити, де цей пішохід з'явиться знову. Вона може подумати, що загроза зникла, або, що ще гірше, переплутати прихованого пішохода з кимось іншим і неправильно розрахувати його траєкторію. Стабільний трекінг у натовпах — це вимога безпеки, а не розкіш.
Мережі спостереження стикаються з паралельною проблемою. Оператору безпеки, який спостерігає за транспортним вузлом, не потрібна система, здатна виявляти людей у порожньому коридорі. Їм потрібна така, що точно веде підрахунок під час евакуації станції, коли сотні пасажирів прямують до єдиного виходу. Якщо перекриття спричиняє постійну зміну ідентифікаторів, система генерує марні дані: та сама людина реєструється як п'ять окремих осіб, або групи людей — як одна маса. Це руйнує будь-який подальший аналіз, незалежно від того, чи вимірюєте ви потік натовпу, ідентифікуєте підозрілу поведінку чи координуєте реагування на надзвичайну ситуацію.
Навіть робототехніка у сферах роздрібної торгівлі та складів отримує від цього переваги. Автоматизовані керовані транспортні засоби мають пересуватися проходами, де працівники підбирають товар. У цих вузьких просторах часткове перекриття відбувається постійно. Робот, який втрачає слід за працівником за стелажем, може спланувати маршрут, що пролягає занадто близько, коли людина знову з'явиться з-за нього. Здатність зберігати прив'язку до ідентичності під час короткочасного зникнення робить взаємодію людини та робота безпечною.
Технічна реальність, що стоїть за результатами
Дослідники, які тестували бенчмарк CVPR19, швидко зрозуміли, що розгляд детекції та трекінгу як окремих етапів примножує частоту помилок. Детектор, який пропускає частково перекриту людину, позбавляє трекер даних. Трекер, який покладається лише на просторову близькість, передасть неправильну ідентичність тому тілу, яке першим з'явиться з-за перешкоди.
Через це виклик стимулював інтегроване мислення. Команди зосередилися на представленнях ознак, які виживають під час фрагментації. Якщо дескриптор усього тіла не спрацьовує, коли ноги приховані, модель має більше покладатися на те, що залишається видимим, наприклад, на торс або паттерн ходи. Інші наголошували на часових міркуваннях, використовуючи моделі руху, щоб передбачити, де, ймовірно, знову з'явиться перекрита людина, щоб система могла відновити трекінг без очікування повторного виявлення всього тіла.
Виклик також підкреслив важливість евристик відновлення. У сценах з низькою щільністю трекер може безпечно припустити, що нове виявлення поблизу старої позиції належить тій самій людині. У натовпах таке припущення створює ефект доміно зі змінами ідентифікаторів. Кращі системи навчилися вагатися перед перепризначенням ідентичності, збираючи кілька кадрів доказів після того, як перекриття зникає, перш ніж підтвердити збіг.
Чому щільність — це тест на чесність
У комп'ютерному зорі немає нестачі бенчмарків. Що робить змагання CVPR19 Tracking and Detection Challenge пам'ятним, так це те, що воно позбавляє комфорту порожніх фонів та ізольованих об'єктів. Модель, яка добре показує себе тут, доводить, що може справлятися з візуальним шумом, який визначає реальне людське середовище. Щільність — це тест на чесність. Вона викриває крихкі припущення про розділення об'єктів та постійну видимість.
Якщо ви хочете побачити, як впоралися конкретні методи та які архітектури виявили перспективність під таким тиском, ви можете прочитати повний розбір тут. А якщо ви працюєте в цій галузі та хочете обговорити професійні питання з іншими, хто стикається з тими ж проблемами перекриття, приєднуйтесь до спільноти навчання тут. Робота з трекінгу крізь натовпи ще далеко не завершена, і справжнім випробуванням завжди є те, що відбувається, коли сцена стає переповненою.
