Опти́чний поті́к () — це схема видимого руху об'єктів, поверхонь і граней у зоровій сцені, спричинюваного відносним рухом спостерігача та сцени. Оптичний потік також можливо визначити як розподіл видимих швидкостей руху візерунка яскравості в зображенні. Поняття оптичного потоку було запроваджено американським психологом у 1940-х роках для опису зорових стимулів, що виникають у тварин, які рухаються світом. Джеймс Ґібсон наголосив на важливості оптичного потоку для сприймання можливостей, здатності розрізнювати можливості для дій у середовищі. Послідовники Ґібсона та його екологічного підходу до психології згодом показати роль стимулу оптичного потоку для сприймання руху спостерігачем у світі; сприймання форми, відстані й руху об'єктів у світі; та контролю пересування.

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

Термін «оптичний потік» також використовують робототехніки, охоплюючи споріднені методики з обробки зображень та керування навігацією, включно з виявлянням руху, сегментуванням об'єктів, інформацією про час до контакту, обчисленнями фокусу розширення, освітленістю, кодуванням компенсації руху, та вимірюванням стереодиспаритету.

Оцінювання Оцінювання оптичного потоку пов'язане із задачею відповідності між послідовними кадрами: необхідно оцінити, куди перемістилися елементи зображення з одного кадру до наступного. Залежно від методу така відповідність може визначатися явно або оцінюватися опосередковано за просторово-часовими змінами яскравості.

Послідовності впорядкованих зображень уможливлюють оцінювання руху або як миттєвих швидкостей зображення, або як дискретних зміщень зображень. Фліт та Вейсс пропонують навчальний посібник з оптичного потоку на основі градієнта. Джон Л. Баррон, Девід Дж. Фліт та Стівен Бошемен пропонують аналіз продуктивності низки методик оптичного потоку, з наголосом на точності та густоті вимірювань.

Методи оптичного потоку намагаються обчислювати рух між двома кадрами, що було знято в моменти часу та , в положенні кожного вокселя. Ці методи називають диференціальними, оскільки вони ґрунтуються на локальних наближеннях сигналу зображення рядами Тейлора, тобто, вони використовують частинні похідні за просторовими та часовими координатами.

Для (2D + t)-вимірного випадку (випадки 3D та n-D є подібними) воксель у положенні з інтенсивністю буде переміщено між цими двома кадрами на , та , й може бути задано наступне обмеження сталості яскравості ():

Якщо виходити з того, що переміщення є невеликим, це обмеження зображення в може бути розгорнуло за допомогою ряду Тейлора в

члени вищих порядків

При відкиданні членів вищих порядків (що здійснює лінеаризацію) з цього випливає, що

або, при діленні на ,

що в результаті дає

де є складовими та швидкості або оптичного потоку , а , та є похідними зображення в у відповідних напрямках. Далі ці похідні може бути позначено через , та .

Отже:

або

Це — рівняння з двома невідомими, й саме по собі розв'язаним бути не може. Це відоме як () в алгоритмах оптичного потоку. Щоби знайти оптичний потік, потрібен інший набір рівнянь, заданий деяким додатковим обмеженням. Для оцінювання фактичного потоку всі алгоритми оптичного потоку запроваджують додаткові умови.

Методи визначення

Фазова кореляція — обернення унормованого Блокові методи — мінімізування суми квадратів різниць, або , або максимізування унормованої взаємної кореляції Диференціальні методи оцінювання оптичного потоку, що ґрунтуються на частинних похідних сигналу зображення та/або шуканого поля потоку та частинних похідних вищого порядку, такі як: Метод Лукаса — Канаде — стосовно клаптиків зображення та афінної моделі для поля потоку Метод Горна — Шунка — оптимізування функціоналу на основі залишків від обмеження сталості яскравості, та певного члена регуляризації, що виражає очікувану плавність поля потоку  — ґрунтується на моделі руху контурів у послідовностях зображень  — грубий оптичний потік через кореляцію Загальні варіаційні методи — низка видозмін/розширень Горна — Шунка, що використовують інші члени даних, та інші члени гладкості. Дискретні методи оптимізації — простір пошуку дискретизується, й узгодження зображення відтак обробляється через призначування міток на кожному пікселі таким чином, що відповідне деформування мінімізує відстань між первинним та цільовим зображеннями. Оптимальний розв'язок часто добувають через алгоритми теореми про максимальний потік, мінімальний розріз, лінійне програмування, або методи .

Багато з них, на додачу до поточних алгоритмів на рівні останніх досягнень, оцінюють на наборі даних Middlebury Benchmark Dataset. Іншими популярними наборами даних є KITTI та Sintel.

Моделі на основі навчання Поряд із класичними методами оптичний потік оцінюють за допомогою моделей машинного навчання, навчених на парах зображень. FlowNet, представлена 2015 року, продемонструвала наскрізне оцінювання потоку згортковою нейронною мережею без явного розв’язування традиційної оптимізаційної задачі. Через нестачу великих наборів реальних зображень з еталонним потоком автори використали синтетичний набір FlyingChairs.

PWC-Net оцінює потік за схемою «від грубого до точного», поєднуючи піраміду ознак, деформування () ознак другого зображення та об’єм вартості (). Об’єм вартості описує подібність ознак у можливих відповідних положеннях двох кадрів, а деформування використовує поточну оцінку потоку для їх просторового узгодження.

Інший підхід застосовано в RAFT (), де потік уточнюється ітеративно рекурентним блоком. RAFT обчислює ознаки з роздільністю 1/8 від вхідної, будує багатомасштабні чотиривимірні об’єми кореляції для всіх пар положень і повторно оновлює оцінку потоку. На відміну від багатьох попередніх методів, сама оцінка потоку в RAFT підтримується й оновлюється як єдине поле високої роздільності, а не як послідовність окремих оцінок у піраміді.

Кероване навчання таких моделей потребує пар кадрів з еталонними полями потоку, отримати які для реальних сцен складно. Тому поряд із FlyingChairs застосовують синтетичний набір FlyingThings3D, що містить стереопари, оптичний потік і потік сцени. Методи без еталонної розмітки натомість використовують фотометричну узгодженість між кадрами, гладкість поля та окрему обробку перекриттів; якість результату істотно залежить від добору цих складників функції втрат.

Використання

Головними аспектами дослідження оптичного потоку стали оцінювання руху та стискання відео. Хоча поле оптичного потоку на перший погляд і схоже на щільне поле руху, отримуване за допомогою методик оцінювання руху, оптичний потік є дослідженням не лише визначення самого поля оптичного потоку, але також і його використання в оцінюванні тривимірної природи та структури сцени, як і тривимірного руху об'єктів та спостерігача відносно сцени, де здебільшого використовують якобіан зображення.

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

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

Розгляньмо п'ятикадровий кліп руху м'яча з лівої нижньої частини поля зору до правої верхньої. Методики оцінювання руху можуть визначити, що на двовимірній площині м'яч рухається вгору та праворуч, й вектори, що описують цей рух, можливо виділити з цієї послідовності кадрів. Для цілей стискання відео (наприклад, MPEG), послідовність тепер описано настільки добре, наскільки потрібно. Проте в галузі машинного зору питання про те, чи це м'яч рухається праворуч, чи спостерігач рухається ліворуч, є непізнанною, але критичною інформацією. Навіть якби в цих п'яти кадрах було присутнє статичне візерункове тло, ми не змогли би з упевненістю стверджувати, що м'яч рухався праворуч, оскільки цей візерунок міг мати нескінченну відстань від спостерігача.

Приклади використання Оптичний потік застосовують для оцінювання видимого руху у відео. Поле потоку описує видиме переміщення яскравісних структур між кадрами, але не завжди безпосередньо збігається з фізичним рухом об'єктів. У комп'ютерному зорі його використовують для супроводження об'єктів, виявлення руху та оцінювання руху камери. Поєднання оптичного потоку з геометричною моделлю камери допомагає відновлювати тривимірну структуру сцени. У робототехніці він використовується для візуальної одометрії, навігації та уникнення перешкод. Для малих літальних апаратів зміна потоку в різних частинах зображення може бути сигналом наближення до поверхні або перешкоди. Під час аналізу відео однорідне переміщення великої частини кадру часто пов'язане з рухом камери, тоді як локальні відмінності можуть відповідати незалежно рухомим об'єктам. Визначити лише з двовимірного потоку, чи рухається об'єкт, камера або обидва, не завжди можливо без додаткових припущень. Методи оптичного потоку застосовують також у механіці рідин для безконтактного оцінювання руху видимих трасувальних частинок. Цей підхід споріднений із анемометрією за зображеннями частинок і дає змогу отримувати просторове поле швидкостей.

Давач оптичного потоку

Давач оптичного потоку — це , здатний вимірювати оптичний потік або візуальний рух, та видавати вимірювання, що ґрунтуються на оптичному потоці. Існують різноманітні конфігурації давачів оптичного потоку. Однією з конфігурацій є чип давача зображення, з'єднаний з процесором, запрограмованим виконувати алгоритм оптичного потоку. Інша конфігурація використовує зоровий чип, що є інтегрованою схемою, яка має як давач зображення, так і процесор, на одному й тому ж кристалі, що уможливлює компактне втілення. Таким прикладом є звичайний давач оптичної миші. У деяких випадках схему обробки може бути втілено із застосуванням схем з аналоговим або змішаними сигналами для уможливлення швидкого обчислювання оптичного потоку з мінімальним споживанням струму.

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

Давачі оптичного потоку широко використовують у комп'ютерних оптичних мишах як головну давачеву складову для вимірювання руху миші поверхнею.

Давачі оптичного потоку використовують також і в робототехніці, переважно де є потреба у вимірюванні візуального руху або відносного руху робота та інших об'єктів поблизу робота. Однією з областей поточних досліджень також є використання давачів оптичного потоку в безпілотних літальних апаратах (БПЛА) задля забезпечення стабільності та уникання перешкод.

Див. також

Оптична миша Дальнісне зображення Зоровий процесор Рівняння неперервності Поле руху

Примітки

Посилання

Finding Optic Flow Стаття Art of Optical Flow на fxguide.com (з використанням оптичного потоку у візуальних ефектах) Optical flow evaluation and ground truth sequences. Middlebury Optical flow evaluation and ground truth sequences. mrf-registration.net — оцінювання оптичного потоку за допомогою МВП The French Aerospace Lab: втілення оптичного потоку на основі Лукаса — Канаде на ГП Втілення на CUDA від CUVI (CUDA Vision & Imaging Library)