Проекты Дмитрия Ватолина

Проекты, относящиеся к сжатию и обработке данных
(Информация на конец 2003 года, увы, некогда здесь расписывать проекты :)

  • Фрактальный компрессор изображений
    Составил основу диссертации, был продан одной из американских компаний. Обгонял JPEG до 1.5-2 раз, а по визуальному качеству, особенно на сильном сжатии, и сильнее. С сегодняшним JPEG-2000 у него будет примерно паритет при существенно меньшей универсальности, но как улучшить - понятно. Увы, по условиям продажи довести алгоритм уже не судьба.
     
  • Универсальный алгоритм сжатия данных для увеличения степени сжатия файловой системы в Linux
    Разработан в рамках полугодового проекта по заказу корейской компании Innopia. На момент написания стабильно обгонял по степени сжатия RAR. По скорости декомпрессии приближался к лидерам (например, LZO), существенно превосходя их по сжатию. Скорость сжатия была невелика, но это было заложено в ТЗ. Особые требования были к надежности - алгоритм работал в ядре и падать права не имел даже на битых данных. При отладке было весело.
     
  • Алгоритмы масштабирования и фильтрации для видеокодека ACTL-2 компании Streambox
    Алгоритмы там были разработаны достаточно интересные, но , увы, у компании закончились деньги. Начали задерживать зарплату, а в последний месяц в офисе за неуплату отключили интернет (притом, что мы работали с американским CVS сервером) + приходили какие-то люди требовать деньги за аренду офиса... Денег за 3 месяца они так и не заплатили всей команде и в итоге обанкротились. Увы, это судьба многих доткомов.
     
  • Книга "Методы сжатия данных"
    В 1997 году мной было написано пособий "Алгоритмы сжатия изображений". Потом это пособие попало в руки издателя из "Диалог-МИФИ" и он предложил расширить книжку до 300 страниц. Предложение понравилось (хотя денег там не светило), но свободное время все не выдавалось, а настойчивый издатель (надо отдать ему должное!) регулярно звонил. В итоге я списался с Вадимом Юкиным, и мы начали "писать" (в том же стиле) вместе. :) К моменту сдачи в печать у нас было 4 автора и более 450 страниц текста. В издательстве текст несколько ужали за счет верстки. В результате получилась уникальная в своем роде книжка, ПРАКТИЧЕСКИ описывающая как устроены весьма разнородные архиваторы.
     
  • Алгоритмы распознавания лиц для повышения степени сжатия видеопотоков в реальном времени для компании Vicinium
    О! Это была замечательная работа! :) Может ли ваш алгоритм распознавать обезьян? Может! :) А может ли он работать с афроамериканцами? Только в американском релизе! :) По результатам работы подготовлен патент.
     
  • Разработка алгоритма Bitrate Control для MPEG-4 видеокодека компании iVast
    Были реализованы стратегии VBR (константное качество), CVBR (константное качество с органичениями), CBR (константный битрейт) и Flat-CBR (супер-константный битрейт). В качестве начального значения была реализация TMN-5 CBR. Остальные стратегии были разработаны с нуля под конкретный кодек (управление I-,P-,B-frames). Общее значение PSNR (при том же битрейте) удалось поднять до 3 dB (!!! - это очень много). Для Flat-CBR была достигнута точность порядка 2% с учетом I-frames (также очень много, если кто понимает).
     
  • Целочисленная реализация аудиокодека MPEG-4 AAC для компании iVast
    Удалось достичь большей точности (по PSNR и на слух) на тестовых файлах, чем у исходного floating-point варианта алгоритма. :)
     
  • Сайт "Все о сжатии"
    Так сложилось, что я в том или ином виде породил больше 70 проектов страниц и сайтов (иногда достаточно крупных), поэтому, естественно, был стартован проект сайта для поддержки книги. Видимо, он был рожден в удачный день, поскольку стал хорошо расти, и удостоился имени www.compression.ru (это была идея хорошего человека и замечательный подарок на мой день рождения :). Большая заслуга в развитии сайта принадлежит Максиму Смирнову, а также всей остальной команде проекта!
     
  • Алгоритмы масштабирования телевизионного видео для компании Samsung
    Была создана линейка эффективных алгоритмов масштабирования, ориентированных на подавление лестничного эффекта и рингинга при различных значениях увеличения четкости (sharpness) изображения. Алгоритмы разрабатывались с учетом дальнейшей аппаратной реализации. Также были разработаны несколько метрик, оценивающих качество алгоритмов масштабирования (в том числе интересная метрика, оценивающая коэффициент размытия-четкости), и проведено несколько тысяч замеров 18 алгоритмов масштабирования на 17 тестовых изображениях при различных коэффициентах масштабирования вверх и вниз.
     
  • Видеокодек Visicron Cyclone для компании Visicron
    Кодек основан на Wavelet и использует достаточно сложную систему контекстного моделирования данных, специально оптимизированную под видеоконференции. Эта система позволяет ему обгонять другие кодеки по формальной метрике PSNR-size на видеоконференциях в 2-4 раза. Кроме того, в кодек интегрирована существенно оптимизированный по скорости (2 ms на кадр на PIII-700) алгоритм определения лиц (лицензированный у Vicinium), что позволяет достигать приемлемого визуального качества конференции на потоках порядка 20-40Кбит.
     
  • Видеокодек Visicron Motion Wavelets для компании Visicron
    Видеокодек разработан специально для широковещания видео и позволяет спокойно терять кадры. При этом его качество (PSNR-rate) до 2 раз превосходит аналогичные кодеки на основе Motion-JPEG2000 и до 4 раз - кодеки на основе просто Motion-JPEG. Визуально, особенно на малых битрейтах, разница еще заметнее.
     
  • Система персональных видеоконференций для компании Visicron
    Реализовано огромное количество технологий. В области звука это и Voice Activity Detection, и алгоритм подавления эха, и два алгоритма шумогенерации (один - адаптивный алгоритм во временной области, второй - частотный). В итоге это позволило создать достаточно сложную систему балансировки буферизации, которая позволяет свободно менять (масштабировать во времени) накопленные буфера с голосом. А это, в свою очередь, позволяет задавать оптимальный размер буфера в зависимости от текущего состояния канала связи. Это позволяет существенно уменьшить вероятность разрыва слов, полностью закрыть паузы, убрать эхо и, в итоге, значительно повысить качество звука. А теперь добавьте к этому синхронизацию с видео, которая должна работать без дерганий, когда выкидываются паузы в свалившемся большом куске аудио, и без замираний, когда вставляется шум паузы при пустом буфере. + Добавьте все навороты активного изменения на лету и битрейта, и частоты кадров. + Добавьте транспотный уровень с маршрутизацией звонков - и вы получите слабое представление о сложности системы. :)
     
  • Алгоритмы деинтерлейсинга телевизионного видео для компании Samsung
    Создана (и создается) линейка алгоритмов 3 классов вычислительной сложности для осуществления качественного деинтерлейсинга видео. Основная сложность в том, чтобы провести деинтерлейсинг быстро и достаточно качественно. Направления работ - повышение качества алгоритма компенсации движения в полукадрах, улучшение фильтров, разработка методов детектирования границ, разработка метрик интерлейсинга (применяемых как в самом фильтре, так и вовне при оценке разных методов), разработка взвешенных функций критериев выбора цвета точки. Замечу, что в результате работы качественного по метрике MTI алгоритма деинтерлейсинга повышается степень сжатия видео при том же качестве.
     
  • Видеокодек MSU Lab Lossless video codec
    При работе с алгоритмами видео постоянно приходится спотыкаться о большой размер файлов, которые приходится хранить в неупакованном виде (либо паковать без потерь). Это нужно и для разработки алгоритмов фильтрации, и для разработки алгоритмов сжатия с потерями, и просто для хранения промежуточных результатов с хорошим качеством. Поскольку опыт разработки алгоритмов сжатия без потерь был большой (а PPM был известен и даже применялся давно), то давно хотелось реализовать алгоритм хорошего контекстного моделирования для видеоданных. Соответственно, такой проект был стартован с одним из студентов третьего курса. Сейчас новый кодек обгоняет массово используемый Huffyuv на 5%-40%. Работаем над большим. Первая стабильная версия будет выложена в свободное использование.
     
  • Лекции "Алгоритмы сжатия" на ВМиК МГУ
    С 1995 года в МГУ на втором и четвертых курсах в рамках курса по машинной графике мной читаются лекции по алгоритмам сжатия изображений и видео. Также были прочитаны лекции "Методы сжатия изображений и данных" на Graphicon-2001 и "Методы сжатия видео" на Graphicon-2002. С 1999 года все лекции читались с проектора. Надеюсь подготовить (причесать) презентации для размещения в сети.
     
  • MSU Video Codecs Testing
    Большой проект с тестированием порядка 30 доступных видеокодеков в номинациях "MPEG-4", "Motion JPEG", "Lossless codecs", "H.264". Выложено несколько отчетов о тестировании. Один из наиболее популярных разделов сервера. Суммарный траффик только отчетов о сравнении достигает 60Гб в месяц.
     
  • Разработка алгоритмов высококачественного увеличения количества кадров фильма (заказ для 100 fps телевизоров)
    В данный момент телевизоры, особенно LCD, обрадающие качественной панелью, в состоянии изменять яркость пиксела с большой скоростью и достаточно резко. В результате становится видна неравномерность движения, которой на более старых CRT мониторах не было заметно. Свою роль в этом играет также увеличение размеров экранов и если ранее сигнал телевизионного (т.е. небольшого) разрешения смотрели все-таки на сравнительно маленьких экранах, сейчас проецирование на экран с диагональю пара метров стало привычным. Задачу построения качественных промежуточных кадров мы и решали.
     
  • Разработка алгоритмов шумоподавления
    На самом деле у нас разработано аж несколько семейств алгоритмов шумоподавления. Ибо под шумоподавлением часто понимают самые разные искажения сигнала, начиная от удаления мусора при сканировании пленки, и заканчивая дефектами от потери-искажения пакетов в цифровом канале.
     
  • Разработка алгоритмов восстановления фильмов после сильного сжатия
    Регулярно возникает задача максимизации качества видео, которое по каким-либо причинам было сильно сжато. Например, видео, записанного когда-то на VideoCD, либо видео, передаваемого через спутник, особенно если это спортивные состязания, а канал урезан. Нами разработано несколько технологий, в том числе удаление блочности, удаление рингинга. Идут работы над восстановлением исходного сигнала.
     
  • Разработка алгоритмов восстановления фильмов оцифрованных со старой пленки
    Какое-то время назад к нам обратилась группа энтузиастов, любителей авиации и её истории с просьбой помочь в цифровой обработке архивных материалов великой отечественной войны. Они на свои деньги купили эти материалы в Красногорском государственном архиве и хотят сделать их общедоступными, выложив в сети. Однако фактически они не нашли видеофильтров, которые можно было применить к своим кадрам. А качество там, конечно, ужасно - царапины, мусор, отпечатки пальцев, отслоившаяся эмульсия, нерезкое изображение, дрожащие кадры, скачущая яркость и т.д. Скоро вы сможете посмотреть на результат!
     
  • Разработка алгоритмов интерполяции байеровских паттернов (получения качественного изображения с матрицы камеры)
    Большинство современных камер снимает видео с матрицы, в которой сенсоры в соседних пикселах отдельно снимают яркость по красной, синей и зеленой компоненте. Получить из этой информации качественный кадр не просто. Точнее в последнее время появились алгоритмы, которые позволяют сделать это существенно более качественно. Особенно эта проблема актуальна для HDTV камер.
     
  • Разработка алгоритма удаления субтитров и логотипа
    Одной из интересных задач, является качественное удаление наложенных на видео надписей. Классический пример - вы снимали какое-то событие (свадьбу), и в волнении включили "печать" времени и даты на кадр. Видео уникальное, второй раз такое не снимешь. Хочется удалить эту надпись наиболее аккуратным образом. Именно эту задачу мы решали, используя информацию с предыдущих кадров, т.е. восстанавливая именно то, что закрыл логотип.
     
  • Разработка алгоритма Dynamic brightness range equalization
    У разработанного алгоритма несколько достоинств. Основное - это изменение яркости и контраста для каждой точки кадра персонально. В результате алгоритм не дает темному участку кадра стать еще темнее, а светлому - светлее, "спасая" изображение в них при изменении яркости и повышении контраста.
     
Список выше был на 2003 год!
СВЕЖИЙ СПИСОК ПУБЛИЧНЫХ ПРОЕКТОВ (увы, также не полный) ДОСТУПЕН НА СТРАНИЦЕ http://compression.ru/video/

На всякий случая явно уточню, какое отношение я имею ко всем этим проектам. :) Практически во всех них я являюсь руководителем или научным руководителем.

Также замечу, что все эти проекты (кроме первого) были реализованы уже когда я был кандидатом физмат наук. До этого (1989-1999) было довольно много проектов, в основном в области компьютерной графики, как коммерческих, так и некоммерческих.
 

Проекты, не относящиеся к сжатию


 

Контактная информация

Связаться сo мной можно по адресу: