Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Diplomna.docx
Скачиваний:
5
Добавлен:
14.09.2019
Размер:
6.95 Mб
Скачать
    1. Кодування програм

Основні компоненти системи кодування програм за стандартом MPEG-2 (Motion Picture Expert Grour) показані на рис.1.4

Рис. 1.4. Кодування програм. А — кодування відеосигналів за стандартом МРЕG-2; Б — кодування звукових сигналів за стандартом МРЕG-2.

Спочатку аналогові відео- і звукові сигнали піддаються дискретизації на відповідній частоті (13,5 МГц для Y і 6,75 МГц для СR і СB),а потім передаються на свої кодуючі пристрої. Кодуючі пристрої видаляють несуттєві або надмірні деталі відео- і звукових сигналів і виконують операції зменшення числа бітів, формуючи індивідуальні пакети даних. Індивідуальні пакети даних разом із службовими пакетами даних передаються на мультиплексор, який формує елементарний програмний потік. Оскільки об'єм |обсяг|відеоін­формації| перевищує об'єм|обсяг| звукової або службової інформації, елемен­тарний| програмний потік містить|утримує| більше пакетів відеоданих, ніж пакетів| звукових або службових даних (рис. 1.5).

Рис 1.5. Структура елементарного програмного потоку.

Потім елементарні програмні потоки об'єднуються в мультиплексорі і поступають|надходять| в моду|лятор| для передачі. Тип вживаної модуляції визначається типом веща­ния|: наземне, супутникове або кабельне.

Кодування відеоінформації складається з трьох основних етапів: підготов­ка |відеоданих, їх стискування |стиснення|і квантування (рис. 1.6).

Рис.1.6. Кодування відеоданих за стандартом МРЕG-2. А — видалення просторової надлишковості на основі ДКП.

На етапі підготовки даних початкові|вихідні| кодовані дані кадрів організовуються так, щоб їх було зручно стискувати|стискати|. Стискування|стиснення| відеоданих здійснюється відповідно до міжнародних стандартів, встановлених|установлених| системою МРЕG-2. За стандартом МРЕG-2 виконуються дві основні операції стискування|стиснення|: видалення тимчасової надлишковості і видалення просторової надлишковості. Видалення тимчасової надлишковості представляє собою міжкадрове стискування даних, при якому відбувається порівняння двох послідовних відеокадрів, видалення однакових областей і формування різниць кадрів для обробки. Видалення просторової надлишковості, яке називається внутрішньокадровим стискуванням, виключає непотрібні повторення змісту конкретного відеокадру. Операції видалення виконуються на основі складних математичних виразів, які називаються дискретними конусними перетвореннями (ДКП); звідси і назва цього способу: «стискування даних на основі ДКП». За блоком стискування даних стоїть блок квантування, який забезпечує подальше бітове стискування. Блок квантування перетворює коефіцієнти ДКП в 8 – бітові коди, які утворюють бітовий потік даних.

Відеоінформація, яка поступає на вхід відеокодера, представлена послідовністю кодованих відліків сигналу яскравості Y і сигналів кольоровості СR і СB; потім кадри цих сигналів перегруповуються в блоки, макроблоки і вирізки. Спочатку кадри Y, СR і СB діляться на ряд блоків пікселів (рис. 1.7) .

Рис. 1.7.Базові блоки Y, СR і СB

Кожний блок є матрицею 8×8 закодованих в цифровому виді відліків пікселів. Три компоненти, представлених базовими блоками, об'єднуються і утворюють макроблок (таблиця. 1.1). Кожен макроблок складається з чотирьох блоків яскравості і двох блоків кожної кольоровості, що становить, СR і СB. Це дає так званий формат 4:2:0. Потім макроблоки складаються в тому порядку, в якому вони з'являються на зображенні, щоб отримати вирізку. Вирізка може складатися з одного або декількох макроблоків. На цьому етапі до кожної вирізки додаються біти виявлення помилок. Якщо в ступені декодування приймача виявляються помилки, то декодер ігнорує інформацію, що міститься в даній вирізці, і переходить до наступної. Послідовність вирізок відновлює повний відеокадр (табл.1.1), що містить все три зображення (Y, СR, СB), що становлять, і готовий до наступного етапу кодування відеоданих.

Таблиця 1.1. Підготовка відеоданих

Даний спосіб заснований на тій обставині, що відмінність між двома послідовними зображеннями дуже мало. Таким чином, немає необхідності передавати зміст кожного відеокадру повністю. оскільки велика частина поточного кадру просто повторює попередній кадр. Тимчасове стискування виконується на групі зображень (GОР —group of pictures) |що складається з 12 непарних кадрів. Вміст першого кадру групи, званого кадром I, зберігається в пам'яті і використовується як еталонний| кадр для наступних|наступних| 11 кадрів (рис. 1.8).

Рис. 1.8. Група зображень GOP

Вміст кадру, слідуючого заеталонним кадром I, порівнюється з|із| кадром I для утворення| різницевого кадру, званого кадром Р (від predicted — передбачуваний|), який використовується для обробки. Потім з|із| першим кадром після|потім| кадру I порівнюється другий кадр після|потім| кадру I, третій кадр з|із| другим і так далі до кінця групи з|із| 12 відеокадрів. Потім для наступної|такої| групи з|із| 12 кадрів утворюється новий еталонний кадр I і т. д. Величина стискування|стиснення| кадрів I обмежена|; максимальне бітове стискування|стиснення| виходить в кадрах Р. Збільшене стискування|стиснення| можна отримати|одержувати|, використовуючи два інших способу: прямий прогноз і прогноз|передбачення| з|із| компенсацією руху.

Прямий прогноз|передбачення| — це метод, який використовується для створення|створіння| кадрів Р; він включає прогноз |передбачення|очікуваної|сподіваній| різниці між мак­роблоками| послідовних кадрів і передачею передбачених|пророчити| кадрів на обробку. Для цього потрібне зберігання більш одного відеокадру. У прямому прогнозі|передбаченні| як еталонний можна використовувати кадр I або раніше відновлений кадр Р. Недостатком цього способу є|з'являється| те, що виникаючі| в кадрі Р помилки передаватимуться в подальші|наступні| кадри до по­ступлення| чергового кадру I.

Прогноз|передбачення| з|із| компенсацією руху полягає в порівнянні змісту попереднього кадру і наступного|наступного| кадру для конструювання теперішнього| кадру. Конструйований|сконструйовувати| кадр називається кадром В від backward - prediction — зворотній прогноз|передбачення| (або від bidirectional — двонапрямлений, оскільки його вміст залежить як від попереднього кадру, так і від слідуючого|). На відміну від кадрів I і Р кадри В не можна використовувати як етало­ни|. Вони також вимагають зберігання двох кадрів в пам'яті зображення. На рис. 22.9 показана типова послідовність з|із| 12 кадрів I, Р і В (0—11).

Рис. 1.9. Кадри І, Р і В.

Потік даних МРЕG-2 містить|утримує|, таким чином, безперервну послідовність| кодованих кадрів, що складаються з комбінації передбачуваних| кадрів і еталонних кадрів. Оскільки кадри Р, що передбачаються|пророчать|, і В забезпечують ефективніше стискування|стиснення| даних, бажано, щоб|аби| передбачувані| кадри передавалися набагато частіше.

Компенсація руху використовується для того, щоб корегувати помилки|, які можуть з'явитися|появлятися| в кадрах, що передбачаються|пророчать|. Порівнюючи положе­ння| об'єкту в послідовних кадрах, можна точно обчислити|обчисляти| швидкість і напрям|направлення| руху об'єкту. На основі цих обчислень|підрахунків| можна передбачити| положення|становище| об'єкту в послідовних кадрах (зазвичай|звично| в кадрах яскравості|). Щоб|аби| описати вектор швидкості і напряму|направлення| руху, потрібний відносно малий об'єм|обсяг| даних; ці дані поступають|надходять| на генератори кадрів Р і В. Как тільки|лише| вектор руху визначений, він використовується для формування три складових зображення, Y|біля|, СR і СB.

Основний пристрій кодування відеоінформації — процесор дискретного косинусного перетворення (ДКП). Процесор ДКП отримує кадри зображення I, Р і В у вигляді потоку блоків 8×8, організованих в макроблоки і вирізки, створюючі один відеокадр. Блоки можуть бути частиною кадру яскравості (Y) або кадру кольоровості (СRі СB). Дані, що представляють відліки в кожному блоці, поступають потім в процесор ДКП (рис. 1.10), який| переводить|перекладає| їх в матрицю коефіцієнтів 8×8, що представляють|уявляють| відео­образ| блоку.

Рис.1.10. Видалення просторової надмірності на основі ДКП.

Перед ДКП кожне число в блоці 8×8 представляє|уявляє| значення відповідного відліку, тобто яскравість пікселя, представленого|уявляти| цим відліком| (рис. 1.11).

Рис 1.11. Відліки яскравості.

Процесор ДКП перевіряє просторові частотні компоненти блоку в цілому|загалом| і переводить|перекладає| матрицю тимчасової області в матри­цу| частотної області. Ця операція пов'язана із створенням|створінням| нового набору коефіцієнтів| в матриці 8×8, починаючи|розпочинати| з|із| верхнього лівого осередку|чарунки|, представля­ющей| постійну складову, тобто складову з|із| частотою 0 Гц. Ко­ефіцієнт в цьому осередку|чарунці| представляє|уявляє| середню яскравість блоку. Кожна з решти осередків|чарунок| представляє|уявляє| складову блоку із|із| зростаючою часто­тою| (рис. 1.12). Значення коефіцієнтів в інших осередках|чарунках| визначаються кількістю деталей зображення в блоці. Отже, блок, вміщуючий| скрізь|всюди| однакову яскравість (або колір|цвіт|), наприклад представляючий|уявляти| уча­сток| чистого неба|піднебіння|, матиме тільки|лише| постійну складову; коефі­цієнти| в інших осередках|чарунках| будуть нульовими. Блок, що містить|утримує| деталь зобра­ження|, матиме ненульові коефіцієнти у відповідних осередках|чарунках|. Груба деталь зображення представляється малими коефіцієнтами, і всього| декілька осередків|чарунок| міститимуть|утримуватимуть| ненульові коефіцієнти; тонка де­таль| зображення представляється коефіцієнтами більшої величини, і багато осередків|чарунок| міститимуть|утримуватимуть| ненульові коефіцієнти. Тонкі горизон­тальні| деталі зображення (висока горизонтальна частота) представля­ются| переміщенням по горизонталі вправо|вправо|; крупніші вертикальні деталі (вища вертикальна частота) представляються рухом по вертикалі вниз, як показано на рис. 1.12. Найтонша деталь зображе­ння|, тобто найвища відеочастота, представляється нижньої правої комірки| матриці.

Як можна відмітити|помітити| на рис. 1.11, на якому представлена|уявляти| матриця ДКП типового блоку, найбільші коефіцієнти і, отже, велика частина|частка| енергії зосереджені у верхньому лівому кутку і поблизу нього; у нижньому правому квадранті дуже мало коефіцієнтів значної величини. Та­ке розташування коефіцієнтів не є|з'являється| несподіваним|неочікуваним|, оскільки маловірогідно|малоймовірний|, що блок пікселів 8×8 передає скільки-небудь тонку де­таль| зображення.

Коефіцієнти ДКП округляються убік збільшення або зменшення, щоб отримати менший набір можливих величин, що приводить до сильно спрощеного набору коефіцієнтів (рис. 1.13).

До квантування матриця ДКП кожного блоку переводиться|перекладає| в последователь­ную| форму шляхом сканування по зигзагоподібному шляху|колії|, починаючи|розпочинати| з|із| верхне­го| лівого елементу (постійною складовою), як показано на рис. 1.14.

Рис. 1.12 Блок частотної області

Рис. 1. 13. Блок ДКП з заокругленням

Рис.1.14. Зигзагоподібне сканування.

Для блоку, показаного на рис. 1.13, результат сканування буде наступним|: 315, 2 - 4, -2, -3, -1, -2, -2, -3, 0, 2, 0, 0 і 1. Коефіцієнти, що залишилися| можна не враховувати, оскільки вони дорівнюють нулю|нуль-індикатору| і тому не містять|утримують| інформації. Кінець блоку позначається|значить| спеціальним кодом (ЕОВ — end of block), який приєднується до послідовності коефіцієнтів в кінці|у кінці| сканування. Іноді|інколи| серед послідовності нулів|нуль-індикаторів| може зустрітися |суттєвий|суттєвий| коефіцієнт, в цьому випадку використовується інший спе­ціальний| код для позначення довгої послідовності нулів|нуль-індикаторів|.

Квантування коефіцієнтів ДКП не носить лінійного характеру|вдачі|. На прак­тиці| використовується ентропійне| кодування. У способі ентропійного| ко­дування| кожному коефіцієнту присвоюється індивідуальний рівень квантування відповідно до його положення|становища| в матриці. Кожному коефіцієнту| привласнюється ваговий, або масштабний, множник для вказівки його відносній значущості. Найвищий рівень квантування при­своюється| верхньому лівому елементу матриці, який представляє|уявляє| по­стійну| складову. Коефіцієнт постійної складової коду­ється| з|із| найвищим рівнем точності, оскільки видимість шумів максимальна| на низькочастотній відеоінформації. Високочастотна інформа­ція| може допускати вищий рівень помилок квантування; тому їй присвоюються нижчі рівні квантування.

Вагові (масштабні) множники квантування потім модифікуються, щоб|аби| врахувати бітову швидкість на виході процесора ДКП. Якщо є|наявний| гру­ба| деталь зображення і більшість коефіцієнтів ДКП рівні або близь­кі| до нуля|нуль-індикатора|, тобто несуттєві|несуттєві|, процесор ДКП формує короткий рядок коефіцієнтів, що приводить|призводить| до мінімальних вимог до бітової швидкості| і смуги. Проте|однак| блок з |із|більш тоншими деталями зображення буде пред­ставлятися| довгим рядком коефіцієнтів і тому більш вищими вимогами| до бітової швидкості і смуги, які можуть вийти за встановлені| межі|кордони|. Щоб|аби| уникнути цього, використовується кодування із|із| змінною довжиною (рис. 1.15).

Рис. 1.15. Квантування із змінною довжиною

Таке кодування забезпечує динамічну зміну| вагових коефіцієнтів квантування залежно від бітової швидкості, що виникає в самому процесорі ДКП. Квантовані біти поступають|надходять| спочатку| в буферну пам'ять, а потім передаються з|із| постійною швидкістю в кодуючий| пристрій|устрій| передачі. Якщо бітова швидкість збільшується і буфер починає|розпочинає| переповнюватися, то запускається блок управління бітовою швидкістю, рівень квантування зменшується і бітова швидкість даних знижується. Іншими словами, вихідна бітова швидкість підтримується постійною.

Дійсне число бітів, потрібне для представлення кожного відліку, можна додатково зменшити, використовуючи кодовані двійкові послідовності, такі, наприклад, як при нерівномірному кодуванні або векторному кодуванні. При нерівномірному кодуванні коротшають довгі послідовності однакових чисел, наприклад послідовність 3, 3, 3, 3, 3, 3 замінюється на 6, 3 (число 3, повторене шість разів) Векторне кодування є різновидом кодування з прогнозом, при якому квантована група пікселів, наприклад матриця 8×8, представляється кодовим вектором. Вектор, що математично представляє блок пікселів, порівнюється з набором векторів, заздалегідь завантажених в ПЗП. Вибирається вектор з якнайкращою відповідністю, який і передається належним чином. На приймальній стороні переданий вектор знов перетвориться в первинний блок на основі таблиці перетворення, яка містить той же набір векторів і відповідні ним зображення.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]