Оригинал материала: https://3dnews.ru./270894

Основы цифрового видео - II

Стр.1 - JPEG, MPEG-1

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

Интересная случайность

Для начала стоит рассказать об очень интересной случайности, которая во многом предопределила развитие современных цифровых технологий, но имеет явное отношение к черно-белым телевизорам, которые в момент внедрения цветного ТВ стояли у разработчиков нового как кость в горле. Не думаю, что стоит говорить банальности о том, что парк черно-белых телеприемников был очень велик, поэтому, давая людям цвет, изобретатели должны были думать о совместимости со старым арсеналом. Кстати, это защитило нас и от множества неразумных шагов, например, реализации систем с последовательной передачей цветов, которые можно считать вредными для зрения, особенно в рамках технологического уровня того времени. Когда же были изобретены люминофоры, способные излучать свет в красном, зеленом и синем спектрах, и сама технология формирования трехцветного изображения, стало возможным говорить о применении цветного сигнала, где цвета подаются не последовательно, а вкупе, в виде трех отдельных элементов.
 Модель RGB
Модель RGB
Сначала как стандартное решение виделось RGB, но опять же помешал рынок черно-белых телевизоров! Не встраивать же в них дополнительные устройства для суммирования трех сигналов? Эдакий апгрейд на полмира. Что делать? В рамках стандартов NTSC, PAL и SECAM вместо обычного RGB было решено применить следующую схему, где общий компонентный сигнал включает в себя не три одноцветных, а три специально созданных составляющих:
  • Y — яркостный, по существу, являющийся R+G+B;
  • Cb — цветоразностный (синий, b-Y);
  • Cr — цветоразностный (красный, r-Y).
В четвертом, цветоразностном (зеленом, g-Y), отпадает необходимость, поскольку его можно быстро воссоздать (вычислить) в приемном устройстве, используя три поступающих.
 Модель YCbCr
Модель YCbCr
На самом деле цветных моделей с использованием цветоразностностных сигналов используется несколько, но YCbCr необходим нам для дальнейшего описания, а сигналы в этом стандарте рассчитываются по формулам:
Сигнал Y передается в той же полосе частот, что и обычный черно-белый сигнал (по существу, он им и является), его и воспроизводят обычные черно-белые телевизоры, а остальные два предназначены для цветных телеприемников. Потом выяснилось, что Y для формирования изображения, его четкости является доминирующим, а цветоразностные такой четкости не требуют, и могут занимать гораздо более узкую полосу частот. И пошло, и поехало… Кстати, такому разбиению вы можете найти и еще одно, более современное объяснение: у человека в органах зрения палочек в 20 раз больше чем колбочек, соответственно, человеческий глаз более чувствителен к изменениям яркости, нежели цвета. И это объяснение вы найдете в описании такого популярного ныне стандарта как…

JPEG

Группа экспертов Joint Photographic Expert Group (JPEG) была создана в 1986 году, и ее основной задачей являлись исследования в области компьютерного представления статических изображений. Если вы рассмотрите структуру обычного несжатого графического BMP-файла, то обнаружите, что в нем описана некая матрица, включающая определенное количество элементов по вертикали и горизонтали, а по существу - цветовых точек, каждая из которых описана определенным числом, выраженным в видеn-разрядного значения (от 1 до 48). Этому значению соответствует определенный цвет, не более того. Программисты вам расскажут, что все легко преобразуется в то же RGB-представление, а также в любое другое, что можно наблюдать в ряде графических пакетов. Естественно, BMP — это не единственный стандарт, есть множество других, но в данном случае стал вопрос: а можно ли сэкономить ресурсы на хранении изображений. Сжатие BMP без потерь в качестве (lossless-компрессия) по стандарту RLE (кодирование повторов) тогда позволяло уменьшать объемы в среднем в 2 раза, не более. Этого было недостаточно. И в данном случае мы остановимся на экспертной группе JPEG, которая работала над тем, чтобы получить сжатый вариант BMP без существенных потерь в качестве, но с большим коэффициентом. Естественно, подразумевалось, что потери все-таки будут (lossy-компрессия), но они не должны сильно сказываться на качестве картинки. Разработанный стандарт утвержден как ISO/IEC 10918-1, а для простоты назван JPEG, по имени создателя. Суть технологии состоит в том, что любое изображение изначально преобразовывается в цветовую систему YCbCr, затем диапазон каналов, отвечающих за цвет, уменьшаются в два раза (линейное масштабирование), затем все каналы разбиваются на небольшие, но оптимальные для вычислений «квадратики» размером 8х8 или16х16 точек, соответственно, получается матрица из маленьких изображений, каждое из которых обрабатывается по отдельности.
При кодировании в JPEG из этих небольших изображений 16х16 удаляются четные столбцы и строки, но не для яркостного, а только для двух цветоразностных составляющих сигнала. В русскоязычном варианте этот метод называют «прореживание». Потери получаются не слишком заметными для глаза, но объем информации значительно уменьшается. Потом эти макроблоки разбиваются на меньшие (8х8) и в таком виде поступают на последующие этапы обработки — DCT (дискретное косинусное преобразование), последовательное считывание в зигзагообразном порядке квантованных значений матрицы DCT, энтропийное сжатие (кодирование длин серий и алгоритм Хаффмана). Кто хочет, может более подробно узнать о структуре стандарта в его описаниях.
Рассматривая JPEG при большом масштабе вы можете увидеть квадратики наравне с другими артефактами цифрового изображения
 JPEG при очень низком разрешении качества
JPEG при очень низком разрешении качества
То есть, как вы понимаете, в самой природе кодирования в JPEG нет вообще ничего общего с технологиями аналогового (оцифрованного аналогового) телевидения и видео, кроме представления цветов через YCbCr. Ведь речь идет о статических изображениях и об обработке их отдельных блоков. Тем не менее, в этом варианте мы уже можем говорить о возможности выводить видео по сжатым кадрам. В принципе, эта идея не заставила себя ждать и реализовалась в стандарте Motion JPEG (MJPEG), а также во множестве вариантов для конференц-связи.

MPEG

MPEG — это не просто группа экспертов кодирования видеоизображения Moving Picture Coding Experts Group. Само название является, как бы это сказать, упрощенным, ведь подразделение, о котором идет речь, скрывается под другой аббревиатурой — ISO/IEC JTC1 SC29 WG11 (если читать с конца, то это одиннадцатая рабочая группа (WG11) двадцать девятого подкомитета (SC29) Объединенного технического комитета № 1 (JTC1), созданного Международной организацией стандартизации (ISO) и Международной электротехнической комиссией (IEC)). Данное подразделение было создано в 1988 году, и основной ее целью являлась разработка новых информационных стандартов. Изначально оно было маленьким и включало около 25 человек, но потом разрослось до мировых масштабов. Буквально через четыре года после своего основания группа опубликовала, а на следующий год и утвердила стандарт ISO/IEC 11172 — Information Technology — Coding of Moving Pictures and Associated Audio for Digital Storage media at up to about 1,5 Mbit/s (Кодирование изображения и звука при скоростях цифрового потока компрессированных данных до 1,5 Мбит/с). В дальнейшем он получил название MPEG-1, потому как ISO/IEC 11172 звучит так же как и ISO/IEC JTC1 SC29 WG11.

MPEG-1

MPEG-1 по структурному принципу очень схож с JPEG, и даже основывается на этом стандарте, но с одной лишь разницей: в нем используется множество специфических надстроек. То есть, например, для реализации короткого видеофрагмента нам может понадобиться только один полноценный кадр, сжатый в JPEG, а все остальное можно достраивать, регистрируя только небольшие изменения относительно исходного. Чтобы это понять, откройте любой видеоредактор и посмотрите: насколько сильно отличается конкретно взятый кадр от предыдущего и последующего. Различий мало. Причем делать сравнение, опираясь на JPEG, как исходный формат, можно и по тем же макроблокам 16х16, учитывая возможность поиска схожих (если речь идет о смещении) и так далее. То есть можно брать только исходный кадр, а потом в нем изменять лишь некоторые элементы, что очень удобно.
Поэтому разработчики стандарта поступили весьма хитрым образом, разбив всю структуру на чередующиеся кадры трех типов:
  • I (Intra) – опорные кадры, изображения в которых хранятся в полном объеме;
  • P (Predicted) - "предсказываемые", в них содержится информация только об изменениях в структуре изображения по сравнению с предыдущими кадрами типа I или P;
  • B (Bi-directional Interpolated) - "двухсторонней интерполяции", сохраняющие только самую существенную часть информации об отличиях от предыдущего и последующего изображений, другими словами, являющиеся переходными от предыдущего к последующему.
Таким образом, суммарная последовательность, именуемая GOP (Group of Pictures — группа изображений), имеет только один I-кадр и описывается общим числом кадров в группе и интервалом между P-кадрами. Например, для VideoCD применима схема 15/3, что подразумевает последовательность: IBBPBBPBBPBBPBB.
Теперь сравним: с помощью Motion JPEG на реализацию того же самого понадобились бы все пятнадцать I-кадров (15 полноценных JPEG-файлов), а в MPEG-1 получаем примерно то же, но в четыре раза меньше по объему. Отличие MPEG-1 от Motion JPEG состоит и в том, что в MPEG-1 предусмотрено и сжатие звукового потока, что потребовало отдельных технологий, получивших названия Layer I, Layer II и Layer III (известный MP3), наиболее популярные из которых основаны на психоакустическом принципе удаления ненужных элементов. Об этом много написано, так что тут останавливаться не будем. Отметим лишь одно: звук при кодировании в Layer I, Layer II и Layer III преобразуется в кадры, являющиеся, по сути, сжатыми мгновенными спектрами сигнала. В общем и целом, хотя на то время уже разрабатывалось множество других цифровых видеостандартов, MPEG-1 был поддержан множеством организаций, включая некоторых вещателей, производителей техники и оборудования.
Многие приписывают успех всего этого предприятия руководителю подразделения Леонардо Черильоне (Leonardo Chiariglione), который является не только хорошим инженером, но и отличным политиком. И действительно, очень многое зависело от поведения на рынке, где в тот момент существовала реальная конкуренция. Чарильоне сделал ставку на два, кажущихся разносторонними, направления:
  • альянсы с крупнейшими мировыми компаниями;
  • создание независимых стандартов.
Похоже на банальность, но… работает. Как это выглядит на деле, вы можете увидеть, хотя бы посмотрев на распространение MP3-стандарта в музыке. Альянсы — есть, независимый стандарт — присутствует. Кстати, MP3 победил даже WMA от Microsoft на их же поле. Что касается самого MPEG-1, он не был панацеей в глобальном смысле, имел достаточно узкие ограничения по качеству, потому как изначально разрабатывался для обеспечения уровня VHS и с точки зрения видео не совсем подходил для вещания. Посему разработчики направили свои усилия на разработку нового стандарта… Основная группа вокруг ISO/IEC 13818 (а это и есть MPEG-2) была сформирована в 1992-93 годах.

Стр.2 - MPEG-2, MPEG-4

Революция? Нет, эволюция

На самом деле, технологии развиваются не такими стремительными темпами, как это приписывают современности. Даже можно сказать о некоем замедленном режиме. Причиной тому служит все-таки эволюционный, а не революционный путь прихода нового, а все, что революционно, обычно забывается, долго пылится на книжных полках и так далее. Например, сегодня мы говорим об MPEG, а ведь сам базис, который лежит в основе этих стандартов, был широко изложен в научных трудах 60-70-начала 80-х. То есть полноценный переход на «цифру» был вполне предсказуем еще в тот период, но индустрия и пользовательский рынок не были готовы к принятию таких радикальных новшеств. Другое дело - эволюция. Как только базис был полностью подготовлен, встал вопрос о создании мирового стандарта.

Причины появления MPEG-2

MPEG-1 был разработан в первую очередь для VideoCD, и требования к качеству можно выразить в фразе «не хуже, чем VHS». Но вспомните, сколько тогда стоил VideoCD по сравнению с обычной видеокассетой, и какова была цена у устройства воспроизведения. Компьютеры в учет не берем, поскольку их часть на пользовательском видеорынке была предельно малой. То есть основная цель, поставленная разработчиками стандарта, не являлась актуальной, даже напротив.
Вместе с тем, технология MPEG-1 демонстрировала наиболее современный подход к сжатию потока данных, что уже было интересным для вещателей. Например, в 1995 филиал NBC, именуемый KRON, начал применять компрессию MPEG-1 для трансляции телепередач на определенный район города Сан-Франциско. Само сжатие производилось «на лету», то есть в режиме реального времени, такой сигнал поступал на определенные приемники, которые декодировали его и стандартными методами распространяли на небольшую сеть вокруг себя. Этот вариант совмещения новых и старых технологий распространен и поныне, поэтому, если у вас проведено кабельное телевидение, то канал Discovery, передаваемый цифровым способом, вы можете смотреть на черно-белом телевизоре 1970 года выпуска (если такие еще где-то сохранились). Сам MPEG-1 не являлся совершенным в плане качества, поэтому экспертная группа поставила задачу усовершенствовать его таким образом, чтобы он соответствовал требуемым нормам стандартного вещания. Появилась необходимость в MPEG-2. В то время организация MPEG была не единственной из тех, кто разрабатывал стандарты цифрового телевидения. Например, в битве за американский рынок она серьезно схлестнулась с компанией AT&T. Причем последняя предлагала стандарт, который по оценкам многих специалистов превосходил по качеству разрабатываемый MPEG-2. Но в чем была вся соль ситуации? MPEG — это группа экспертов… специалистов от различных компаний и учреждений, и в нее даже входили некоторые сотрудники самой AT&T. В результате, в силу сотрудничества с множеством брендов, а также благодаря более простой технической реализации алгоритмов, MPEG-2 оказался победителем. Если многие скажут, что экспертная группа отхватила жирный кусок пирога, то они ошибутся. MPEG взяла весь пирог и забрала себе. Во избежание некоторых очевидных проблем, в 1993 году команда сделала очень интересный ход, создав отдельную дочернюю подгруппу по лицензированию авторских прав. Поскольку в разработках первых MPEG-стандартов участвовало множество специалистов из различных фирм, использовались различные технологические решения, было объявлено о том, что любая интересующаяся компания или организация может предъявить свои претензии, если увидит применение своих запатентованных технологий в рамках MPEG. Таких претензий набралось около сотни(!), но из всего этого было выделено девять: Fujitsu, General Instrument, Matsushita, Mitsubishi, Philips, Scientific Atlanta, Sony, Samsung Electronics и Колумбийский университет. То есть стандарты MPEG являются совместной интеллектуальной собственностью. А для упрощения самой процедуры лицензирования в 1995 году создали отдельную компанию MPEG LA, в которую были отданы все патенты от девяти участников. То есть покупая сейчас DVD-диск или плеер, вы платите определенную сумму MPEG LA, это распространяется вообще на все оборудование, ПО и носители, связанные с аббревиатурой MPEG. Леонардо Черильоне, руководитель MPEG, очень большой гуманист и философ, несмотря на его глубокие технические познания. Реализация MPEG-2 в его понимании была воплощением великой исторической миссии, которая подразумевала не только примирение различных телевизионных стандартов на разных континентах, противостояние которых длилось около полувека, но и вообще предопределила будущее телевидения. Несмотря на громкость фраз, так оно и получилось. Личность Черильоне очень интересна для изучения, его напористости можно только позавидовать. Ведь, по существу, он сам и создал MPEG, уговорив руководителя JPEG Хироси Ясуду (Hiroshi Yasuda) основать отдел под своим начальством и видя явные перспективы цифровых технологий в области видео. Для тех лет создание такого небольшого подразделения, скорее всего, было чем-то из области венчурных вложений, ведь телевизионщики тогда весьма отрицательно относились к переходу на цифровое вещание… Впрочем, хотя история интересна всегда, нам сейчас нужны более практические данные.

Из чего состоит MPEG-2?

MPEG-2 (ISO/IEC 13818) не является чем-то радикально новым, скорее, его можно назвать доведенным до ума и развитым вариантом MPEG-1. Всего стандарт предусматривает 10 частей, которые утверждались в период с 1994 по 1999 годы. Наибольший интерес для нас составляют три ключевых: 13818-1 — Systems, 13818-2 — Video, 13818-3 — Audio. Они и описывают суть технологии в целом, при этом уже становится очевиден больше компьютерный подход. Видеочасть (13818-2) стандарта описывает возможности кодирования/декодирования изображений в масштабируемых вариантах качества. Изначально решались задачи наращивания характеристик по сравнению с MPEG-1 и достижения уровня телестандартов. Алгоритмически MPEG-2 несколько отличен от MPEG-1, хотя основные этапы обработки, описанные в прошлом материале, сохранены, за исключением некоторых тонкостей. Вместе с тем, были достигнуты полноценные варианты европейской PAL (625 строк, 50 полей (полукадров) в секунду) и американской NTSC (525 строк, 60 полей в секунду), в то время как MPEG-1 предусматривал разрешение всего 352х240 точек. Помимо того, что были стерты принципиальные разницы между, как ранее казалось, несовместимыми стандартами телевещания, произошла интеграция с компьютерами. Ведь, как мы уже знаем, телевидение подразумевает чересстрочную развертку по полукадрам, а компьютеры прогрессивную, то есть каждый кадр там выводится строка за строкой. Проблемы такой совместимости были успешно решены. Сам стандарт является расширенным, и предусматривает различные варианты масштабирования. Соответственно, когда экспертная группа MPEG взялась за телевидение высокой четкости (HDTV) и собралась посвятить этому отдельный MPEG-3, то в процессе специалисты обнаружили, что при определенной доработке задача может быть решена в рамках MPEG-2. Таким образом, MPEG-3 как такового нет, поскольку он стал частью предыдущего стандарта. Что касается звука, то разработчики предложили новый вариант — MPEG-2 AAC, который подразумевает возможность передачи многоканального аудио в сжатом формате. По качеству звучания и коэффициенту компрессии он превосходит знаменитый МР3. Отдельно стоит сказать и о системной спецификации стандарта, а именно 13818-1. Она разрабатывалась, в первую очередь, с целью упорядочивания цифровых потоков данных, аудио и видео. Причем, если под одной программой подразумевается один элементарный поток, то системная спецификация описывает объединение сразу нескольких элементарных потоков в единый, подходящий для передачи по каналам цифровой связи, и, соответственно, для записи. С MPEG-2 ассоциируется первый виток цифрового вещания, поскольку этот стандарт лежит в основе DVB-T/S/C (Европа, Россия), ATSC (США, Канада, Южная Корея, Аргентина, Мексика) и ISDB (Япония, Бразилия). Сам факт цифрового вещания предусматривает возможность значительного увеличения телеканалов, улучшения качества. Как вы понимаете, при этом к телевидению начинается уже более компьютерный подход, а то, во что он выльется в будущем, предполагает следующий стандарт - MPEG-4.

Немного о MPEG-4 и после него…

MPEG-4 можно рассматривать как весьма далекое будущее. В принципе, в данном случае мы говорим о варианте интерактивного вещания, что чем-то идейно очень схоже с Интернетом, хотя в основе стандарта лежит и другой принцип, имеющий прямое отношение к языку моделирования виртуальной реальности VRML и вообще объектно-ориентированным моделям, использующимся в программировании. То есть телевизоры будущего будут напоминать по своим возможностям обычные компьютеры, в которых установлен специальный модуль, способный загружать данные и интерпретировать их определенным образом. Это касается не только возможностей выбора видеокамер просмотра при трансляциях матчей и концертов. Сие является самым очевидным, что лежит на поверхности (причем теоретически реализуется и без MPEG-4, а в MPEG-2, когда каждая камера «дает» отдельную программу). На самом деле, в стандарте предусмотрены варианты, когда в телевизор единоразово загружаются некоторые элементы (например, спрайты), а после они просто вставляются в рамках изображения, которое технически конфигурируется практически как программа. Причем сами элементы могут быть как натуральными, то есть закачиваемыми в готовом виде, так и синтезируемыми. Чтобы вы представили себе более иллюстративно, о чем идет речь, позволим себе провести аналогию с обычными HTML-страницами. В них указываются только шрифты, которые установлены у вас на компьютере, прописывается информация о цветах, а некоторые файлы помещаются в ваши директории временного хранения. И разница в подходах состоит в том, что вы не загружаете эту страницу в виде большой готовой картинки (BMP или JPEG), а используете только упорядоченный список объектов и их свойств (HTML-код), благодаря чему формируется готовый документ. Сколько при этом экономится трафика и приобретается дополнительных возможностей? VRML очень схож по структуре с тем же HTML, то есть такая параллель сравнения очевидна, как и понятны сами истоки разработки MPEG-4. Отдельным важным пунктом идет возможность защиты авторских прав. То есть тут намешано все, и не факт, что MPEG-4 станет каким-нибудь незыблемым стандартом, ведь все меняется, и возможно, в будущем необходимость в телевизорах вообще отпадет. А место всего этого займет компьютер. Такой вариант также не стоит сбрасывать со счетов, а, следовательно, MPEG-4 может и не появиться. Поскольку само описание возможностей стандарта уж очень сильно напоминает современный интернет, а там, как, собственно, и в компьютерном мире, несколько другие законы. И серьезной конкуренции в этом случае не избежать. Наверняка из этих соображений, в целях опережения событий, экспертная группа принялась за разработку MPEG-7, который, по существу, станет неким глобальным стандартом, объединяющим в рамках контекстной информации данные абсолютно различных типов и являющимся гибкой и масштабированной схемой описания аудио-визуальных данных. MPEG-5 и MPEG-6 нет, и даже не разрабатывались. Цифра 7 взята просто так, хотя раньше шутили, что за 1, 2 и 4 должна следовать 8 (по правилам двоичного кода).

В завершение

Итак, мы рассмотрели суть современных стандартов вывода и хранения видеоинформации, узнали, что к чему стремится. И теперь наш трудолюбивый читатель, увидев при «зависании» одного из телеканалов множество квадратиков на экране телевизора, может с точностью сказать, почему так происходит (все дело в алгоритмах MPEG). Ну, а в следующих материалах мы перейдем непосредственно к съемкам, обработке, монтажу, подбору оборудования и ПО. В общем, самое интересное еще впереди.

- Обсудить материал в конференции



Оригинал материала: https://3dnews.ru./270894