Сообщить об ошибке на сайте
URL
Ошибка
Мнения

Паскаль Фуа — руководитель лаборатории компьютерного зрения в швейцарской Политехнической школе. Он уверен, что работает в обратном нейропсихологам направлении — разрабатывает алгоритм, имитирующий функции мозга, но работающий совсем иначе. Мы записали выступление Паскаля Фуа на саммите Machine Can See 2018 в Москве, — о том, как устроен поиск соответствий между изображениями, и почему этому мешает эпиполярная геометрия.

SIFT и совмещение ключевых точек


Ключевые точки — это точки, которые можно легко и последовательно найти на изображениях. Например, вы найдете нижний левый угол экрана на многих его изображениях и определите, что это — один и тот же экран.

Соответствие (correspondence) — определение того, что два изображения, снятые с различных точек, — это изображения одной и той же вещи. Ключевые точки долгие годы были очень полезным инструментом для такого сопоставления. Например, у вас есть два изображения: красная точка на левом изображении и синяя точка на правом — это одна и та же вещь, проекция одной и той же точки, это и есть соответствие.


Точки на картинке с горой Рашмор — это точки интереса, соотнесенные друг с другом на различных изображениях. SIFT (scale-invariant feature transform — «Хайтек») — алгоритм обнаружения и описания объектов на изображениях. Его создал Дэвид Лоу в конце прошлого века. А статья с описанием этого алгоритма до сих пор является самой цитируемой в области компьютерного зрения. Но в ней не было никакого процесса обучения. Эти точки используются для вычисления гомографии — того, насколько изображения искажены. Когда вы делаете панораму на свой смартфон, он фактически этим и занимается — совмещает ключевые точки.

www.cc.gatech.edu

С помощью дрона, множества снимков и стереовидения можно построить 3d-модель вершины Маттерхорн. Такие методы больше не требуют ручного вмешательства. Они заключаются в совмещении ключевых точек с различных изображений и вычислении на их основе высоты.

Метод поиска ключевых точек основан на создании дескрипторов особенностей (feature descriptor). Детектор локальных особенностей находит угловые точки на изображении, а также вычисляет локальный масштаб. Затем он определяет локальную ориентацию и использует ее для вычисления дескриптора. Созданные дескрипторы не зависят от ориентации. Перемещая камеру, вы сопоставляете их, а затем сравниваете между различными изображениями.

Глубокие нейросети

Есть два изображения Франкфурта: одно сделано ночью, другое — днем. Одна из проблем заключается в освещении. Если встроить каждый компонент алгоритма обнаружения объектов в глубокую сеть, собрать их вместе, то получится — «сквозное обучение» (end-to-end training). Мы научили глубокую сеть отличать стабильные ключевые точки от остальных. Поэтому сложно найти ключевые точки, которые бы совпадали. Мы использовали фиксированные и постоянно работающие веб-камеры. На полученных с каждой камеры изображениях мы запустили SIFT и создали обучающую базу данных.


Глубокие нейросети в корне изменили компьютерное зрение. Принцип их работы хорошо описывается фразой: «Мы не понимали, как они работают, но мы понимали, как их использовать».


Для получения ориентации ключевых точек, обеспечивающей хорошие соответствия, необходимо написать функцию потерь. А затем на ее основе оптимизировать процесс. Ориентация ключевых точек — неоднозначная вещь. Горизонтальная или вертикальная ориентация — в большинстве методов принимают произвольное решение. Вычисляют ориентации по гистограмме и выбирают доминирующую. Но не всегда это работает.

На обучающем наборе данных, вычисляя ориентацию, вы обучаете глубокую сеть. Дескриптор зависит от ориентации. Им может быть SIFT или все что угодно. Глубокая сеть зависит от значения фрагмента 1 (Patch1) и его ориентации. Разница между значением дескриптора от фрагмента 1 (Patch1) и его ориентацией, и значением дескриптора от фрагмента 2 (Patch2) и его ориентацией при наличии соответствия — минимальна.

Если вы делаете это с помощью CNN (сверточной нейросети — «Хайтек») вам необходимо дифференцировать. Но если вы используете SIFT — вы просто вычисляете числовые производные. Перед началом вы табулируете их и используете в вычислении.

Фото предоставлено конференцией «Machine Can See».

Если между двумя фрагментами есть соответствие, то дескрипторы должны быть близки, а если соответствия нет — разными. Для этого вы опять обучаете сиамскую сеть. Архитектура нашей сети проста. Ей уже три года, и она хорошо работает. Но появляются более сложные модели. Они работают еще лучше. Правда, идея в них заложена та же.

Эпиполярная геометрия и основная матрица

Процесс определения локальных признаков состоит из трех компонентов: обнаружение локальных особенностей, оценка ориентации и вычисление дескриптора особенностей. Все они теперь реализованы в CNN. Я могу их подключить к огромной CNN-монстру, которую обучают сквозным образом (end-to-end).

При обучении для сцен в помещении мы использовали карты глубины (depth maps). Чтобы сделать вывод о наличии соответствия, мы также воспользовались сенсорами Kinect. Для сцен на открытом воздухе мы использовали наборы данных фототуризма. Применяя технику определения структуры из действия (structure from motion), мы получили соответствия, а затем использовали их в обучении.

Фото предоставлено конференцией «Machine Can See».

Известный алгоритм RANSAC не справится при «установлении соответствий» между изображениями, снятыми со слишком разных углов, и с повторяющимися структурами. Если вы используете традиционный способ установления соответствий, то получите один мусор. RANSAC не берет в расчет общую геометрию. В нашем алгоритме вы не учитываете, что установленные соответствия накладывают ограничения на следующее соответствие. Это известно как эпиполярная геометрия — различные соответствия связаны между собой.

Мы обучили глубокую сеть предсказывать соответствия и одновременно вычислять основную матрицу. Если установить 8 соответствий, можно вычислить основную матрицу (essential matrix). Она полностью характеризует геометрию. Это классический алгоритм, известный с самого начала компьютерного зрения. Вы используете соответствия для построения матрицы. После ее разложения по единичным значениям получаете эпиполярную геометрию.

Если вам известны уравнения — ищите способ встроить их в сеть. Теоретически обладая бесконечными вычислительными мощностями и бесконечным количеством данных для обучения, система обучится эпиполярной геометрии, изобретет заново проективную геометрию. Но у нас нет ни бесконечных данных, ни бесконечных вычислительных мощностей. Мы хотим интегрировать получение соответствия с использованием глубокой CNN в единый процесс сквозного обучения.

Редакция «Хайтек» благодарит саммит Machine Can See, организованный VisionLabs при поддержке «Сбербанк» и Sistema_VC, за помощь в подготовке материала.

Загрузка...
Подписывайтесь на наши каналы в Telegram

«Хайтек» - новости онлайн по мере их появления

«Хайтек» Daily - подборки новостей 3 раза в день

Big data на страже здоровья: как и зачем медицинские организации собирают и хранят данные
Тренды
Николь Миллс, Booking.com — об инновациях, agile-подходе и индустрии впечатлений
Кейсы
Слишком опасный нанопластик: как одноразовые пакеты превращаются в частицы-убийцы
Тренды
Здесь может быть ваша реклама: НАСА планирует заработать на космосе миллионы
Тренды
Идеи
Человек и квантовая теория: существует ли то, что мы не наблюдаем
Опасный криптотрейдинг: как киберпреступники угрожают виртуальным сбережениям и биржам
Тренды
Как через 20 лет будет выглядеть армия будущего
Тренды
5 финансовых инструментов, которые помогут инвесторам даже после падения криптовалюты
Тренды
Александр Лямин, Qrator Labs: наша задача — выработать у людей цифровую гигиену, чтобы они «не ели с помойки»
Кейсы
Эдуард Фош Вильяронга: люди видят в роботе только внешность, забывая, что он следит за ними
Тренды
Доктор Куэй Во-Райнард, HIT Foundation: если страна требует суверенитета данных, мы построим для нее отдельный блокчейн
Кейсы
Идеи
«Хакинтош»: как собрать свой собственный Mac лучше, чем у Apple
Роботы против мигрантов: какой вклад в ксенофобию и расизм делают технологии ИИ
Тренды
Война скриптов — искусственный интеллект против навязчивой рекламы
Тренды
Как заново изобрести супермаркет: осознанность потребления, этика производства и роботы
Тренды
Каждый человек станет сам себе банком: цифровой мир отказывается от посредников между бизнесом и клиентом
Тренды
Архитектор вычислительной инфраструктуры «Платона» Александр Варламов — о будущем ИТ-индустрии в России, стартапах и разработке
Кейсы
Дмитрий Богданов, капитан сборной России по CS:GO — о стиле жизни киберспортсмена, тренировках и блокировках РКН
Тренды
Идеи
Космос — наш дом: что осталось решить ученым, чтобы поселить человека за пределами Земли
Прайсинг, трекинг, скоринг, биллинг и другие технологии, которые двигают российский бизнес
Тренды
«Педиатр 24/7»: как телемед-стартап подарил родителям спокойствие, а врачам — работу
Кейсы
Вас снова обманули: как человечество учит компьютеры определять фейки в интернете
Тренды
БиСи Бирман, Heavy Projects: ИИ должен иметь несовершенства — это элемент случая
Мнения
Артем Геллер, lab.ag: делая сервис для государства, ты помогаешь своей бабушке
Мнения
Акселераторы и инкубаторы: что выбрать стартапу на раннем этапе развития
Мнения
Вопрос доверия: как и почему изменилось отношение к телемедицине в России
Тренды
Правительственные криптопесочницы: как освободить финтех от давления закона и защитить потребителей
Тренды
Кейсы
Роман Нестер, Segmento: я верю корпорациям больше, чем маленьким компаниям
Суперагенты в недвижимости: как блокчейн и большие данные заменяют риелторов
Тренды
СМИ будущего: вертикальные видео, новости по запросу и смерть сайтов
Тренды
Тренды
Колонизация отменяется: почему терраформирование невозможно на Марсе
Сет Стивенс-Давидовиц: у людей гораздо больше непристойных и скверных мыслей, чем мы думали
Мнения
Умные города подвергают своих жителей опасности из-за датчиков освещения и радиации
Тренды
Геронтолог Обри ди Грей: жизнь длиной в тысячу лет — это побочный эффект поиска вечного здоровья
Мнения
Биоценоз в фарме: зачем нужна альтернатива антибиотикам и как работают лекарства нового поколения
Тренды
Чарльз Адлер, co-founder Kickstarter: я — панк-рокер, который раздвигает границы
Кейсы
Как ИИ меняет медицину: личный помощник для врачей, маршрутизатор в клиниках и разработчик лекарств
Кейсы
Эдвин Диндер, Huawei Technologies: умный город — это ничто
Мнения
«Если изобретение с ИИ не приносит пользу, сам продукт никому не нужен»
Мнения
Feature engineering: шесть шагов для создания успешной модели машинного обучения
Тренды
Мнения
Человек — это набор из пяти чисел: Игорь Волжанин, DataSine — о психотипировании с помощью big data
Карло Ратти, Senseable City Laboratory (MIT) — о городах будущего, третьей коже человека и роболодках
Тренды
Мы все — сенсоры: CEO SQream Ами Галь — о том, как обрабатывают big data
Кейсы
Что такое скрапинг: как Amazon, Walmart и другие ритейлеры используют ботов в борьбе с конкурентами
Идеи
Почему китайские подлодки-беспилотники станут самым опасным врагом под водой?
Идеи
Филипп Роуд, LSE Cities: самый кошмарный сценарий — беспилотники, ездящие по городу, чтобы не платить за парковку
Мнения
Юрий Корженевский — о том, как построить безопасные системы для банков на блокчейне
Блокчейн
Иннополис
Russian Robot Olympiad: как дети строят роботов и решают реальные инженерные проблемы
MyGenetics: ДНК-тесты, помогающие «взломать» организм, как компьютер
Тренды