Нейромережа навчили бачити дзеркала в кадрі

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


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


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

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

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

Для навчання нейромережі розробники вручну зібрали датасет, що складається з 4018 пар знімків приміщень з дзеркалами: початковий знімок і знімок з виділеним дзеркалом. 3063 пар зображень були відібрані для навчання, а решта 955 використовувалися для перевірки навченого алгоритму. Порівняння з іншими алгоритмами на цьому датасеті показало, що новий алгоритм працює набагато стабільніше, виділяючи дзеркала практично так само, як вони розташовувалися в реальності:

В області алгоритмів для визначення глибини є й інші проблеми крім дзеркал. Наприклад, нейромережам досить важко визначати глибину на знімку, якщо і камера і об'єкти в кадрі одночасно рухаються. Розробники з Google нещодавно вирішили це завдання, причому примітно, що допомогли їм у цьому ролики, зняті в 2016 році в рамках флешмобу Mannequin Challenge.

COM_SPPAGEBUILDER_NO_ITEMS_FOUND