Расскажите о своей работе.
Мои научные интересы лежат в области сжатия и передачи видеоинформации. Ключевой задачей в данной области является развитие алгоритмов кодирования видеоданных, которые затем используются в известных видеоформатах, например, MPEG-2 или MPEG-4.
В настоящее время H.264/MPEG-4 Part 10 Advanced Video Coding (H.264/AVC) является наиболее распространенным стандартом сжатия видео. H.264 был принят в 2003 году и ныне присутствует в подавляющем количестве устройств и приложений для передачи видео. Однако есть негласное правило, согласно которому примерно каждые 10 лет появляется новый стандарт, который позволяет сжимать видео в два раза лучше на том же уровне визуального качества.
Так, в 2013 году был принят новый стандарт H.265 High Efficiency Video Coding (H.265/HEVC), который в ближайшем будущем вытеснит своего предшественника H.264. При этом еще до принятия стандарта H.265 уже были начаты исследования по разработке нового стандарта H.266, который имеет рабочее название Future Video Coding (H.266/FVC). Я тоже занимюсь исследованиями, связанными с усовершенствованием стандартов. Например, в 2013 году я принимал участие в конкурсе Grand Video Compression Challenge (Сан-Хосе, США), где получил диплом финалиста за сокращение битового потока H.265 на 0.5-1.5% без увеличения вычислительной сложности.
Как оцениваются эти кодеки и алгоритмы?
Существуют стандартные инструменты, которые используются для оценки этих алгоритмов. Все они общедоступны, и обычно это разные типы видео, которые могут различаться по разрешению и содержанию: некоторые из них более статичны, в то время как другие включают в себя много движения. Если алгоритм не влияет на качество видео, то оценивается только сжатие, но если алгоритм изменяет как степень сжатия, так и качество, то мы строим кривую битовой скорости/качества и используем их для сравнения кодеков. Очевидно, что, если получилось сжать сильнее на том же качестве, значит данный кодек лучше.
Что именно помогает делать алгоритмы более эффективными?
Например, одной из наиболее ключевых частей алгоритмов кодирования видео является процедура так называемой компенсации движения. Упрощенно, при кодировании видео мы предполагаем, что соседние кадры похожи друг на друга. Чтобы использовать данное свойство для увеличения степени сжатия, мы разделяем текущий кадр на блоки и ищем похожие блоки в предыдущем (декодированном) кадре. Затем, вместо сжатия блока непосредственно как в JPEG, мы кодируем разность между текущим блоком и блоком, найденным в предыдущем кадре, а также вектор движения, который характеризует смещение между блоками.
В MPEG-2 такая процедура осуществляется для блоков размером 16x16, а в H.264 могут рассматриваться блоки размером 16x16, 8x8, 4x4 и их комбинации. Это позволяет лучше учитывать движение различных объектов, но требует больше вычислительных ресурсов для поиска лучшего размера блока для каждой области кадра.
Существует ли жесткий предел для сжатия видео?
Я бы сказал, что предел на самом деле не известен. Однако косвенно мы видим, что улучшения в каждом последующем стандарте даются все труднее. В какой-то момент нам нужно будет либо изобрести совершенно новые подходы, либо, скорее всего, сфокусироваться на конкретных сценариях, в которых известна дополнительная информация о свойствах источника видеоинформации, которая поможет повысить эффективность кодирования.
Например, в настоящее время я работаю над кодированием видео, снятого с беспилотного летательного аппарата (БПЛА), осуществляющего инспектирование местности. В данном сценарии БПЛА совершает облет территории по «зигзагу», а также может возвращаться туда, где был ранее. В результате не только соседние кадры, а также кадры, снятые в разные моменты времени, могут быть похожи друг на друга, что может быть использовано для повышения эффективности кодирования.
Более того, мы можем предположить, что инспектирование одной и той же местности проводится регулярно, то есть видео, снятное в ходе предыдущей инспекции, может быть использовано при кодировании видео, снимаемого в ходе текущей инспекции. Мои предварительные эксперименты показывают, что в таком случае можно сократить битовый поток до двух раз по сравнению с традиционныеми методами кодирования на основе H.264 или H.265.
Какие еще примеры специфического кодирования видео существуют?
Еще одной интересной особенностью современных стандартов сжатия, таких как H.264 и H.265, является их высокая чувствительность к потерям данных, которые возникают при передаче видео по беспроводным каналам связи.
Наверное, вы замечали возникновение так называемых артефактов при просмотре цифрового телевидения, когда на экране возникает множество цветных квадратиков и прочих искажений, которые делают невозможным просмотр в течение некоторого времени. Причиной такого эффекта становится упомянутая ранее процедура компенсации движения. В случае, если даже небольшая часть кадра потеряна, возникает ошибка декодирования следующего кадра, которая «взрывным» образом распространяется на все большую область кадра до тех пор, пока не будет передан следующий ключевой кадр.
Поэтому в приложениях, в которых потери данных случаются достаточно часто, как, скажем, при передаче данных от автомобиля к автомобилю, необходимы другие принципы кодирования видео, которые не приводят к «взрывному» распространению искажений от кадра к кадру.
На этом GIF видно, что при потере 1% данных кодек H.264 (снизу) обеспечивает приемлемое качество видео, однако, если потери соствляют 10% или 20%, то качество видео становится неприемлемым. В таких сервисах, как видео по запросу (например, YouTube), эта проблема не так актуальна, так как недоставленные данные отправляются повторно, в результате чего пользователь, как правило, не замечает подобных искажений. Но в случае передачи видео от одного ко многим пользователям или в случае видеоконференции повторная передача не может быть использована, поэтому необходима разработка новых подходов устойчивой передачи видео.
В качестве альтернативы я разработал алгоритм кодирования видеоданных на основе вейвлет преобразования (3-D DWT), которое также используется в формате JPEG2000 (J2K). Вместо блоковой оценки движения применяется одномерное вейвлетное преобразование для группы кадров, а затем двухмерное вейвлетное преобразование для каждого кадра. Затем каждая вейвлетная матрица сжимается и передается независимо от других, что позволяет избежать «взрывного» распространения искажений даже при высоких долях потери информации (см. GIF). Данный алгоритм уступает по степени сжатия кодекам, которые используют блоковую компенсацию движения. Но он более предпочтителен для случаев передачи видеоинформации по очень ненадежным каналам связи.
Вы работали как в России, так и в Европе. Как вы начали заниматься сферой своей специализации и есть ли разница, где работать?
Россия является частью международного сообщества и использует европейские стандарты кодирования видео. Тем не менее, в России не так много исследований по сжатию видео. Когда я посещаю различные конференции на эту тему, я периодически слышу русские имена и встречаюсь с российскими исследователями, но все они, как правило, трудятся в европейских и американских институтах или компаниях.
Когда я учился в Санкт-Петербургском государственном университете аэрокосмического приборостроения (СПбГУАП), у нас был ряд очень известных ученых в области теории информации. В СССР существовали две школы теории информации: одна – в Институте проблем передачи информации в Москве, другая – здесь, в СПбГУАП. Когда я был студентом, мне предложили на родной кафедре работу по созданию конкретного алгоритма кодирования видео для российско-американской компании, именно так я попал в эту сферу.
Через некоторое время я переехал работать в Финляндию, а затем в Данию. Там очень удобно работать, почти нет бумажной работы, все очень хорошо организовано, на все есть инструкция. Их культура также очень отличается от нашей – например, опоздание на десять минут считается очень невежливым, при этом люди чрезвычайно доверяют как друг другу, так и государственным органам. Я побывал в США и Китае и должен сказать: из всего, что я видел, Скандинавия и Финляндия наиболее заметно отличаются от всех стран, это другой мир.
Что думаете по поводу Китая?
Я получил несколько грантов из Национального научного фонда Китая, которые предназначены иностранным молодым ученым. Совместно с китайскими учеными я работаю над арифметическим кодированием, которое является базовой частью алгоритмов сжатия видео. Обычно я приезжаю в Китай на две-четыре недели каждые пару лет. В Китае местные жители, кроме работников университетов, как правило, не говорят по-английски, что существенно усложняет жизнь. С другой стороны, Китай меняется очень быстро. Каждый раз я с трудом узнаю город, в который приезжаю, поскольку там все строится стремительными темпами. При этом трудно отрицать, что китайская наука и технологии становятся все более ведущими в мире.
Сейчас вы работаете в Университете ИТМО. Почему вы вернулись в Россию и почему выбрали именно этот вуз?
Переезд за границу дает человеку большой опыт. Вы понимаете, что мир на самом деле не так уж велик, что вы можете работать где угодно, что люди, хоть и очень разные, имеют больше общего, чем вы можете себе представить. Там я многому научился, в том числе подготавливать научные публикации на английском языке, получил докторскую степень. Но есть и недостатки. Гораздо сложнее жить в другой языковой и культурной среде, нет привычной еды. Без всего этого легко прожить, скажете вы, но, когда лишаешься всего этого на долгий период времени, начинаешь по-настоящему скучать по дому. В какой-то момент я понял, что взял от своего пребывания за границей все, что есть, а недостатки никуда не делись. Поэтому решил вернуться домой.
Из СМИ я узнал о Проекте 5-100 и просмотрел сайты университетов, входящих в программу. На большинстве сайтов я не нашел простых инструкций для кого-то в моем положении – только на сайтах СФУ и Университета ИТМО. Мой предыдущий опыт трудоустройства был связан в основном с европейскими университетами, где процедура подачи на трудоустройство предельно понятная, и только в Университете ИТМО я обнаружил что-то похожее. Кроме того, два профессора, с которыми я работал в СПбГУАП, также устроились в Университет ИТМО и помогли мне наладить первые контакты с сотрудниками факультета, поэтому было очень приятно вернуться к ним и установить контакт с научными группами вуза.
В настоящее время я работаю над сжатием видео с БПЛА, арифметическим кодированием и восстановлением сигналов по недостаточным измерениям. В Университете ИТМО отличные условия для проведения исследований, здесь я могу сосредоточиться на своей работе и делать ее хорошо, находясь на родине. А это именно то, что я искал. Пользуясь случаем, хочу также обратиться к студентам Университета ИТМО. Если вам интересна тема моих исследований и если вы хотите заниматься кодированием видео, то свяжитесь со мной.