Оптические потоки


На рубеже XIX и XX веков французский философ Анри Бергсон произвел революцию в психологии, философии и художественной литературе, введя в общее употребление концепцию потока сознания. Не исключено, что рубеж XX и XXI веков войдет в историю компьютерной графики и обработки изображений как время, связанное с появлением понятия оптического потока.


Сегодня оптические потоки все чаще становятся предметом университетских лекций и темой международных конференций. Само словосочетание "оптический поток" приобретает устойчивость и выходит за рамки узкоспециализированных научных диалектов: в начале нынешнего года поисковый сервер www.altavista.com и сервер обработки материалов телеконференций www.dejanews.com выдавали в ответ на запрос "optical flow", соответственно, 7631 и 3400 ссылок.

Косвенным подтверждением важности оптических потоков может также служить внушительный арсенал алгоритмических средств, применяемых для их получения: используются, в частности, цифровая фильтрация, Фурье- и wavelet-преобразования, моделирование нейронных сетей и всевозможные разновидности метода конечных элементов. В некоторых приложениях, требующих быстрой реакции (например, в системах машинного зрения), для извлечения оптических потоков "в реальном времени" используются специализированные сигнальные процессоры и параллельные вычисления.

Завершая обоснование всеобъемлющей значимости предмета данной статьи, вспомним, что воспринимаемая глазом визуальная информация всегда является результатом сложной психофизиологической реконструкции, основой для которой служит нечто вроде оптического потока. Дело в том, что зрительные рецепторы реагируют не столько на сам сигнал, сколько на динамику изменения его интенсивности. Человек не теряет способности видеть статичные изображения лишь благодаря тому, что в состоянии бодрствования его взгляд непрерывно совершает бесконечную цепочку не всегда заметных скачкообразных движений, называемых микросаккадами; именно поэтому обездвижение глазных яблок незамедлительно приводит к полной слепоте.

Что они собой представляют?

Рис. 1. Использование векторных полей для простых преобразований изображений

Для целей настоящей статьи ограничимся следующими описательными определениями:

Векторное поле есть двумерная матрица двухкомпонентных векторов. Их можно использовать для преобразования изображений, в ходе которого каждый вектор отражает направленность и интенсивность локальной геометрической деформации. Читатели с алгоритмическим складом мышления могут представлять элементы векторного поля как своеобразные символы операторов присваивания: в каждом случае роль изменяемой переменной играет пиксел, расположенный в начале вектора, а присваиваемым ему значением является цвет фрагмента исходного изображения, на который указывает вектор, противоположный данному. На рис. 1 приведены примеры трансформаций, задаваемых векторными полями вращения и масштабирования, а также результат их суммирования.

Оптический поток между парой изображений есть векторное поле, задающее естественную (в самом широком смысле) трансформацию первого изображения во второе. Простейший пример подобной трансформации показан на рис. 2, б.

Где они применяются?

Переходя к основной части статьи, оговоримся, что порядок перечисления областей практического использования оптических потоков является произвольным, а рубрикация — в значительной степени условной.

1. Видеоморфинг и другие спецэффекты

2, a. Оптический поток можно трактовать как векторное поле, отличающее одно изображение от другого
Рис. 2, б. Так выглядит интерполяция между парой исходных кадров с учетом оптического потока и без такового (соответственно, верхний и нижний ряд)

Впервые заявив о себе миру в клипе "Black & White" М. Джексона, компьютерный морфинг прочно обосновался в арсенале выразительных средств, используемых в художественных фильмах, рекламных роликах, мультипликации и компьютерных играх. Если 15 лет назад зрелище плавного преобразования лиц представителей разных рас вызывало восторженное восхищение, то теперь компьютерный морфинг перестал быть диковинкой как для зрителей, так и для аниматоров. Набор средств, предоставляемых современными компьютерными программами для морфирования изображений, примерно одинаков и требует от аниматоров кропотливого и рутинного труда по заданию соответствий между аналогичными областями начального и конечного изображений (т. е. между так называемыми "якорными точками"). Всякому, кто хотя бы немного практиковался в работе с программами типа Elastic Reality или PhotoMorph, представлялась возможность выработать нехитрую технику выделения и сопоставления контрастных элементов на изображениях человеческих лиц, костюмов, автомобильных кузовов и т. п. Попиксельная интерполяция между заданными пользователем векторами (начала которых находятся в якорных точках исходного изображения, а концы — в якорных точках конечного) позволяет построить векторное поле, используемое для трансформации изображений при просчете промежуточных фаз морфирования.

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

В то же время использование морфинга для создания переходов между видеосюжетами (на профессиональном диалекте часто называемых "шторками" или "склейками") позволило бы поднять выразительность видеомонтажных средств на качественно новый уровень. Дело в том, что из всех мыслимых "шторок" морфинг, пожалуй, в наибольшей степени отвечает принципам "интеллектуального монтажа", разработанным С. Эйзенштейном ("Октябрь", 1927) и активно применяемым по сей день. "Интеллектуальные склейки" являются визуальным аналогом поэтических метафор, придающих глубину и свежесть восприятию текстового материала. Они представляют собой своеобразный катализатор, значительно увеличивающий силу художественного воздействия объединяемых ими исходных видеофрагментов. В этом смысле монтажный морфинг — идеальное средство раскрытия пугающего сходства между конвейером птицефабрики и эскалатором метро в час пик, символического подобия жестких складок на щетинистой физиономии диктатора и вида ощетинившихся штыками гвардейцев его охраны и т. п.

Спрос на средства автоматизации рутинной технологии морфирования со стороны растущей армии потребителей программного обеспечения для обработки кино- и видеоматериалов привел к появлению коммерческих программных продуктов, способных произвести революцию в индустрии монтажа и спецэффектов.

Рис. 3. Качественное приведение старых фильмов в соответствие с современными требованиями осложнено различием частот демонстрации кадров (16 и 24 кадра в секунду). Видно, что лишь каждый третий кадр исходной последовательности удается оставить без изменений; остальные кадры должны являться результатами межкадровой интерполяции

Замечательным примером такого продукта является пакет ReTimer от компании Realviz (www.realviz.com). Интересно, что с его помощью авторы ReTimer предполагают решить благородную задачу возвращения человечеству кинематографического наследия конца XIX — первой трети XX веков. Речь идет о бесценной архивной хронике, а также о фильмах Эйзенштейна, Мурнау, Чаплина, Китона и сотен других гениальных авторов, произведения которых недоступны сегодня для нормального просмотра из-за повышения скорости работы кинопроекционных затворов с 16 до 24 кадров в секунду. Неразбериха усугубляется частотами экранной развертки в 25 и 30 Hz, принятыми в телевизионных стандартах PAL/SECAM и NTSC. Как показано на рис. 3, качественное восстановление исходной темпоритмики старых фильмов при воспроизведении на современном кино- и видеооборудовании сопряжено с необходимостью использования промежуточных фаз морфинга.

Среди других преимуществ, извлекаемых от внедрения ReTimer в видеопроизводство, программисты из Realviz называют возможность отказа от применения дорогостоящих скоростных камер при подготовке замедленных повторов в спортивных репортажах (увеличение количества кадров, предполагаемое плавным замедлением движения, опять-таки, достигается благодаря использованию промежуточных фаз морфинга). Кроме того, ReTimer делает возможным плавное перемещение виртуальной точки зрения между несколькими стационарными съемочными камерами (подобные эффекты применялись в фильме "The Matrix").

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

Рис. 4, а. Чрезмерно контрастное изображение быстро движущихся деталей делает статичное изображение невыразительным
Рис. 4, б. Исправить этот недостаток можно с помощью низкочастотной фильтрации с использованием оптического потока

Не столь очевидная причина стробичности, от которой страдает зрительное восприятие кукольных мультфильмов, а также кинематографических спецэффектов с использованием покадровой кукольной анимации, коренится в отсутствии характерной "смазанности" изображения объектов вдоль траектории их движения. Между прочим, этот недостаток стал решающим аргументом, заставившим Стивена Спилберга отказаться от использования игрушечных динозавров в "Парке юрского периода" в пользу трехмерной компьютерной анимации. Аналогичный изъян присущ и киноматериалам, снятым с недостаточной выдержкой. Низкочастотная цифровая фильтрация каждого кадра с учетом ассоциированного с ним оптического потока позволяет размыть излишне резкие очертания кукол и других быстро движущихся объектов, обеспечивая тем самым более естественную передачу движения (рис. 4).

Чтобы получить представление о степени амбициозности проекта Video Rewrite, реализуемого в течение ряда последних лет корпорацией Interval Research, вспомним советскую киноиндустрию 50—60-х гг., когда дублирование каждого нового зарубежного фильма считалось событием общегосударственной значимости, длилось много месяцев и поглощало немыслимое количество средств. В те времена внешность дикторов, зачитывающих текст перевода, должна была соответствовать облику озвучиваемых ими актеров. А сам текст тщательно выверялся с целью достижения точной синхронизации с иноязычной артикуляцией. Не верите — посмотрите фильм "Бродяга" Р. Капура, дублированный на студии им. Горького. Возможно, Video Rewrite поможет современным кинопереводчикам вернуться к кажущимся сегодня безвозвратно утраченным идеалам дубляжа старой школы. Программные средства, созданные авторами проекта, позволяют автоматизировать решение широкого комплекса задач по анализу вновь накладываемой фонограммы с целью вычленения из нее фонем (членораздельных звуков), отслеживанию положения, ориентации и освещения лиц актеров, чьи реплики подлежат переозвучиванию и т. д. Результатом применения Video Rewrite является видеопоследовательность, в которой положение губ говорящих персонажей приводится в соответствие с новой версией озвучивания. Работа ключевых программных модулей проекта основывается на использовании методов получения и интерпретации оптических потоков, описывающих индивидуальные характеристики артикуляции говорящих персонажей. Чтобы продемонстрировать возможности этой технологии, разработчики Video Rewrite вложили в уста Дж. Кеннеди (изначально толковавшего о кубинском кризисе) фразу "I never met Forrest Gump" (аллюзия на голливудскую комедию "Форрест Гамп"). С этим и другими, не менее впечатляющими результатами, можно познакомиться на Web-сайте корпорации по адресу web.interval.com/papers/1997—012.

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

2. Компрессирование видеоинформации и некоторые другие приложения

Сжатие оцифрованной видеоинформации оказывается необходимым при использовании коммуникационных каналов с ограниченной пропускной способностью и целесообразным почти во всех других случаях. Основой большинства современных алгоритмов компрессирования (в том числе и тех, что связаны с такими актуальными стандартами, как HDTV и MPEG) является принцип устранения избыточности, обусловливаемой высоким визуальным сходством между типичными соседствующими кадрами. Иначе говоря, поток компрессированных видеоданных зачастую описывает не столько сами кадры, сколько межкадровые различия (подвергнутые дискретно-косинусному преобразованию, кодированию Хаффмана и т. д.). Зарождение распространенных ныне стандартов видеокомпрессирования относится к тому времени, когда ни аппаратная, ни математическая базы еще не обеспечивали эффективной организации вычисления оптических потоков, поэтому под межкадровой разностью в этих алгоритмах, как правило, понимается результат простого попиксельного вычитания. В качестве исключения укажем на некоторые реализации кодеков MPEG, допускающих использование так называемого "вектора смещения кадра". Такие векторы позволяют организовать плоско-параллельный сдвиг очередного кодируемого кадра с целью его более точного наложения на предыдущий. Подобное ухищрение оправдывает себя, главным образом, при обработке пейзажных панорам, а также статичных видеофрагментов, снятых не закрепленной на штативе камерой.

Публикации в специальных изданиях, посвященных обработке изображений, а также в Internet, дают основания полагать, что новое поколение алгоритмов компрессирования будет учитывать достижения теории оптических потоков, благодаря чему отношение визуального качества информации к ее объему улучшится.

Рис. 5, а. Принципы кодирования данных с помощью системы базисных оптических потоков в видеотелефонии предполагают вычисление потока между текущим (1) и эталонным (2) изображениями, разложение результата на базисные оптические потоки (3) и пересылку полученных коэффициентов
Рис. 5, б. Принимающая сторона на основе полученных коэффициентов вычисляет суперпозицию базисных оптических потоков (1) и применяет ее к эталонному изображению абонента, выбираемому из библиотеки (2). Результатом является реконструкция исходных видеоданных (3)

Наиболее бескомпромиссный подход к использованию оптических потоков для компрессирования данных в видеотелефонии позволяет снизить требования к пропускной способности канала связи буквально до "горстки" бод! Технология, разработанная Томазо Поджио (Tomaso Poggio) и Дэвидом Беймером (David Beymer) из Массачусетского технологического института, обязывает каждого абонента видеофона хранить в памяти переговорного устройства свой собственный анфасный портрет, а также коллекцию портретов своих возможных собеседников (рис. 5). Кроме того, там же сохраняется набор из нескольких десятков так называемых базисных оптических потоков, соответствующих характерным искажениям этих изображений. Такие искажения могут вызываться улыбками или иными эмоциональными гримасами собеседников, произнесением фонем, поворотами и наклонами головы, а также приближением и отдалением лица от вмонтированного в видеофон объектива. Оптический поток, вычисляемый в реальном времени как разность между эталонным изображением говорящего и текущим кадром, поступающим от видеокамеры, преобразуется в набор коэффициентов линейной комбинации базисных оптических потоков. Последний и пересылается собеседнику. Принимающая сторона вычисляет суперпозицию базисных потоков и с ее помощью искажает исходное изображение собеседника, придавая его голове на портрете нужную ориентацию, а лицу — требуемое выражение. Если подобная технология получит развитие, то в будущем можно ожидать появления видеофонов со встроенной функцией детектора лжи: ведь для того, чтобы усилить до полной очевидности проявление тех или иных эмоций на лице своего собеседника, декодирующей стороне достаточно будет завысить несколько весовых коэффициентов в потоке поступающих данных.

Базисные оптические потоки позволяют описывать характерные особенности человеческого лица в виде очень компактного набора параметров. Эта возможность оказалась привлекательной для антропологов, специализирующихся на классификации внешности представителей различных этнических групп и выявлении родственных связей между ними.

Несколько менее серьезное направление для исследований в области применения оптических потоков избрала компания nFX. Тамошние программисты специализируются, в основном, на забавных проектах для праздных серферов Internet и детей; об их успехах в этой области можно судить по обилию наград, полученных Web-сайтом www.nfx.com (он, кстати, очень красиво оформлен и содержит наглядные материалы о принципах технологии базисных оптических потоков, рис. 6). "Визитными карточками" nFX являются программные продукты Cartoon-O-Matic и Disney’s Cartoon Creator, в них система базисных оптических потоков используется для придания требуемого выражения различным персонажам карикатур (рис. 7). Сходный принцип лежит в основе разработанной nFX технологии управления мимикой виртуальных аватаров; предполагается, что таким образом можно усилить эмоциональную окрашенность общения в Internet-сообществах.

Испробовав программу Cartoon-O-Matic в деле (ее можно бесплатно получить на Web-сайте компании-производителя), всякий согласится, что работать с нею гораздо интереснее и забавнее, чем с теми мрачными полицейскими фотороботами, которые знакомы большинству из нас по детективным фильмам. Вероятно, это мнение разделяется компетентными ведомствами тех стран, где сегодня проводятся опыты по внедрению программного обеспечения, использующего системы базисных оптических потоков для составления портретов разыскиваемых лиц на основании свидетельских показаний.

3. Машинное зрение

Рис. 6. Разъясняя идею базисных оптических потоков, авторы Web-сайта компании nFX (www.nfx.com) уподобляют их декартовой системе пространственных координат. Каждая точка внутри изображенного на этом рисунке куба отвечает определенному выражению лица карикатурного персонажа

С некоторыми оговорками можно считать, что локальная интенсивность оптического потока между двумя изображениями, снятыми с разных точек зрения, находится в обратной зависимости от расстояния между точкой зрения и наблюдаемым объектом. Исходным материалом при вычислении такого оптического потока могут служить, в частности, изображения, составляющие стереопару. Это утверждение лежит в основе многочисленных разработок в области бинокулярного (объемного) машинного зрения. Преимущества бинокулярности очевидны: она наделяет мобильных роботов способностью определять собственное положение и ориентацию в пространстве, а стационарные производственные роботы получают возможность более адекватно интерпретировать окружающую их рабочую обстановку. Сходный принцип заложен в основу некоторых картографических систем, автоматически восстанавливающих трехмерный рельеф поверхности по последовательности фотографий, сделанных с самолета или движущегося спутника.

Что касается идеи восстановления трехмерной сцены путем интерпретации оптических потоков в проективной плоскости, то наивысшим достижением здесь, вероятно, следует считать одну из развивающихся сегодня технологий трехмерного сканирования. Указанная технология привлекательна, прежде всего, своей дешевизной: ее реализация требует лишь наличия вращающейся подставки для размещения сканируемого объекта (предполагается, что профессиональная видеокамера и компьютер у ее потенциальных пользователей уже имеются). Интерпретация оптических потоков, задаваемых последовательностью из нескольких сот кадров, изображающих полный поворот объекта вокруг оси вращения, позволяет извлечь информацию о его объемной геометрии и текстурировании.

В заключение раздела, посвященного машинному зрению, упомянем о разработках, основанных на использовании оптических потоков в алгоритмах распознавания изображений и текстур путем сопоставления их с образцами. Сегодня подобные алгоритмы часто обсуждаются в связи с перспективными Internet-технологиями поискового сервиса, допускающего использование ключевой визуальной информации, системами медицинского диагностирования на основании анализа томограмм и т. д. Исследование оптического потока между распознаваемым образом и эталоном из базового набора позволяет делать важные заключения о характере различий сравниваемых изображений.

4. Получение и визуализация научно-технических данных

Последовательность спутниковых фотографий атмосферной облачности может служить материалом для извлечения оптических потоков, компьютерная обработка которых позволяет повысить точность метеорологического анализа и прогнозирования. Микробиологи охотно берут на вооружение технику интерпретации оптических потоков для исследования динамики внутриклеточной активности; в этом случае роль исходного визуального материала выполняет последовательность состояний клеточной цитоплазмы, наблюдаемых с помощью микроскопа.

Рис. 7, а. Интерфейс программы Cartoon-O-Matic и несколько результатов ее работы

Британская компания OFS (Optical Flow Systems, www.ofs.co.uk) является одной из организаций, основная область деятельности которых самым непосредственным образом связана с оптическими потоками. Сотрудниками OFS разрабатывается оборудование для распыления и видеосъемки взвеси микроскопических частиц, обтекающих исследуемую поверхность в воздушных или водных потоках. Типичными материалами, используемыми для приготовления таких взвесей, служат порошкообразные двуокиси циркония и титана, частички латекса и, как ни странно, пыльца хвойных деревьев. Скоростная видеосъемка позволяет формировать последовательность кадров, запечатлевающих состояния взвеси через очень короткие промежутки времени; для интерпретации таких последовательностей используются специальные программные средства — их алгоритмической основой служит теория оптических потоков (рис. 8). Использование подобной технологии является естественным средством изучения аэро- и гидродинамических свойств объектов, сложность форм или особенности условий эксплуатации которых делают результаты традиционного компьютерного моделирования недостаточно достоверными.

Рис. 7, б. Программа Disney’s Cartoon Creator

Тепловая конвекция и перемещение атмосферных масс, сейсмические колебания и электростатика, гравитация и намагничивание — все эти столь различные физические явления объединяются понятием векторного поля как наиболее адекватной структуры данных при представлении в памяти компьютера. Приведенного далеко не полного перечня достаточно, чтобы составить мнение о важности наглядной визуализации векторных полей в научных и технических приложениях. Принцип "квадратно-гнездовой" прорисовки стрелок, традиционно применяемый для визуализации несложных векторных полей (рис. 1), во многих случаях оказывается чрезмерно прямолинейным и грубым; он не позволяет в полной мере реализовать преимущества высокого цветового и пространственного разрешения устройств отображения, а регулярность расположения векторов часто маскирует важные структурные характеристики визуализируемого поля. Наиболее перспективные идеи исправления этих недостатков связаны с использованием векторных полей в качестве оптических потоков синтезируемых анимационных последовательностей. Закономерность такого подхода можно оправдать хотя бы тем, что вектор и его обозначение в виде стрелки являются очевидными метафорами движения. (Видеоматериалы к статье)

Заключение

Рис. 8. Интерфейс программного обеспечения компании OFS

Вырисованная выше лучезарная перспектива глобального внедрения методов работы с оптическими потоками несколько омрачается неверными результатами, выдаваемыми ими при обработке проблемных данных. Примером может служить изображение любой сцены, содержащей движущиеся полупрозрачные объекты (существующие алгоритмы вычисления "многослойных" оптических потоков для описания таких сцен в настоящее время имеют сугубо теоретическое значение). Другим широко известным камнем преткновения для большинства современных алгоритмов вычисления оптических потоков является изображение катящегося фургонного колеса: если колесо с дюжиной спиц от одного кадра к другому успевает повернуться на 30o, то оптический поток между кадрами может оказаться нулевым. Промежуточный кадр морфирования, получаемый на основе такого оптического потока, не изменит положения колеса (которое должно было бы, по идее, повернуться на 15o). Верным суждением о действительном направлении и скорости вращения фургонных колес кинозрители обязаны своей способности подсознательно учитывать движение тени, отбрасываемой колесами на неровности почвы, характер звукового сопровождения, а также множество иных факторов. Неслучайно некоторые исследования, направленные на совершенствование алгоритмов вычисления оптических потоков, ведутся с учетом физиологии человеческого зрения. Будущность теории оптических потоков связана, прежде всего, с повышением стабильности выдаваемых результатов, а также с разработкой принципов продуктивного взаимодействия программного обеспечения с пользователем.