Лекція 07. Сучасні методи стискання повідомлень із втратами
Курс “Теорія інформації та кодування”

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

Підходи до стискання з втратами інформації
Cтискання звуку із втратами. Метод MP3
Cтискання зображень із втратами. Метод JPEG
Cтискання відео із втратами. Метод MPEG

7.1 Підходи до стискання з втратами інформації

Сфера застосування стискання з втратами
Поряд з універсальними методами стискання без втрат інформації для деяких видів повідомлень застосовується більш ефективне стискання з втратами. Під втратою інформації в даному випадку розуміється зниження якості повідомлення, сприйманого органами почуттів. Наприклад, для зображень це може бути втрата чіткості і часткове спотворення кольорів, а для звукових повідомлень - урізання частотного складу або маскування слабо чутних звуків.
Важливі аргументи на користь стискання з втратами відображені на рис.7.1:

Рисунок 7.1 Передумови стискання повідомлень із втратами інформації

- зображення і звук висувають високі вимоги до каналів передачі (особливо, з урахуванням високого трафіку). Наприклад, зберігання хвилини нестислого відео навіть при відносно скромному дозволі 800х600 вимагає близько 2Гбайт пам'яті;

- універсальні методи стискання, що використовуються в архіваторах, не забезпечують радикального зменшення обсягу цих видів повідомлень. Так, вихідний растровий файл (формат .bmp) при архівування зменшується лише в 2-4 рази, а вихідний звуковий файл (формат .wave) - всього в 1,5 - 2 рази;

- в силу особливостей людського зору і слуху певні втрати якості сприймаються як прийнятні. Наприклад, фотографія, стисла будь-яким з сучасних методів в 10-15 разів, на око мало відрізняється від початкового варіанту, а звук з бітрейтом в 5-6 разів менше вихідного задовольняє більшість слухачів.

Нижче ми розглянемо конкретні особливості сприйняття звуку і зображень, які забезпечують можливість їх ефективного стискання і визначають основні напрямки його реалізації.

Врахування особливостей слуху при стисканні звуку
Ефективність стискання звуку з втратами якості заснована на врахуванні особливостей людського слуху (рис.7.2):

Рисунок 7.2 Особливості слуху та стискання звуку

- тихі звуки починаючи з деякого порога практично не сприймаються на слух. Тому відповідні ділянки звукового потоку можна кодувати дуже компактно - наприклад, просто задавати тривалість інтервалу "тиші", не передаючи в цей період звукові відліки;

- гучні звуки знижують здатність чути. Тому їх можна кодувати "грубіше", збільшуючи крок квантування і використовуючи меншу кількість розрядів. Оскільки чутливість відновлюється не відразу, після гучного звуку можна деякий час зберігати режим економічного кодування (це називають маскированием звуку в часі);

- ефект маскування проявляється також в частотної області: щодо потужні частотні складові маскують сприйняття своїх більш слабких сусідів по спектру. Ці ефекти локалізовані всередині конкретних частотних смуг, які названі критичними. Крім того від смуги частот залежить здатність чути (рис.7.2). Всі перераховані ефекти глибоко досліджувалися і формалізовані у вигляді так званої психоакустической моделі, яка активно використовується для ефективного стиснення звуку.
Зокрема, перераховані підходи реалізовані в рамках популярного стандарту mp3.

Врахування особливостей зору при стисканні зображень і відео
Методи стискання з втратами якості для статичних зображень і відео використовують особливості людського зору (рис.7.3):

Рисунок 7.3 Особливості зору та стискання зображені і відео

- зір не критичний до дрібних деталей зображень. У зв'язку з цим «згладжування» таких деталей не сприймається як значне погіршення якості. На практиці таке згладжування виконують або в межах невеликих ділянок зображення (в результаті виявляється «мозаїчність»), або по всьому зображенню в цілому (це проявляється як втрата чіткості). Такий підхід реалізований відповідно в стандартах JPEG і JPEG2000. Ще один підхід - виділення схожих елементів зображення, для яких може бути побудовано загальне математичний опис (подібно до векторного подання);

- зір більш критичний до спотворень яскравості, ніж кольори. Виходячи з цього виконують розділення складових кольорів та яскравості. Цей ефект застосовують, зокрема, в телебаченні, де для передачі складової яскравості використовують більш широку смугу частот. Стандарт стиснення JPEG передбачає більш значне огрубіння колірних складових зображення в порівнянні з яскравістю;

- зір не реагує на занадто швидку зміну зображення. Тому при сприйнятті відеоряду можна виділяти "опорні" кадри, які забезпечують чіткість картинки і «проміжні», які необхідні для створення ефекту безперервності. Такий підхід застосовують при стисненні відео, де «опорні» кадри, що кодуються з досить високою якістю, доповнюються «проміжними» кадрами, які картинки і «проміжні», які необхідні для створення ефекту безперервності. Такий підхід застосовують при стисненні відео, де «опорні» кадри кодуються з досить високою якістю, а проміжні кадри стискаються набагато сильніше. Це передбачено, зокрема, в стандарті MPEG.

Контрольні питання
1) Що розуміється під «втратою інформації» при кодуванні звуку і зображень
2) Які основні фактори визначають важливість використання стискання з втратами
3) Охарактеризуйте основні особливості слуху, які враховуються при стисканні звуку з втратами
4) Охарактеризуйте основні особливості зору, які враховуються при стисканні з втратами статичних зображень і відео


7.2 Cтискання звуку із втратами. Метод MP3

Загальна характеристика методу mp3
Метод стискання звуку MP3 є одним з найбільш популярних. Його основні особливості ілюструє ріс.7.4.

Рисунок 7.4 Основні особливості методу стискання звуку MP3

Принципові особливості методу полягають у наступному:
- по-перше, він активно використовує психоакустичного модель, видаляючи з звукового потік саме ту інформацію, яка не буде суттєво впливати на сприйняття;
- по-друге, забезпечує завдання співвідношення ступеня стиснення і величини втрат безпосередньо користувачем за допомогою завдання величини бітрейта.

Основні підходи до втрат інформації включають наступне:
- звуковий потік розбивається на послідовність блоків-фреймів, для кожного з яких виконується стискання;
- для фреймів виконується спектральне перетворення. Перехід до спектру дозволяє в подальшому виділити частотні складові, які слабо впливають на сприйняття звуку усередині критичних частотних смуг, які передбачені психоакустической моделлю;
- для економічного кодування виконується квантування спектра з урахуванням заданого користувачем рівня втрат;
- додаткове стиснення отриманих даних виконується c використанням статистичних методів.

Додаткова оптимізація стискання додатково досягається за рахунок обліку складності кодування окремих фреймів:
- для більш складних фреймів може автоматично задаватися підвищений бітрейт. Це так званий режим змінного бітрейта VBR;
- обсяг коду, що виділяється відповідно до бітрейту, автоматично перерозподіляється між сусідніми фреймами - від простіших до більш складних.

Етапи реалізації стискання в MP3
Конкретні особливості стискання в MP3 відображені на рис.7.5.

Рисунок 7.5 Реалізація етапів стискання звуку в MP3

Етап 1. Розбиття потоку на окремі фрейми для стискання
Потік розбивається на блоки-фрейми довжиною близько 1000 звукових відліків (семплів). Точна кількість семплів у фреймі 1152 (успадковано від попереднього стандарту). Фрейм складається з двох «гранул» по 576 семплів, які обробляються по-окремо. При цьому кожен фрейм включає заголовок зі службовою інформацією, яка містить сінхровставку, частоту дискретизації, кількість звукових каналів і задане значення бітрейту.

Етап 2. Попередній аналіз фреймів
Спочатку фрейм перетворюєься в спектр і в ньому виділяються частотні смуги для аналізу. Для гранули з 576 семплів використовується 32 смуги по 18 амплітуд (так званих «бінів»).
Надалі виконується аналіз з використанням психоакустической моделі. Оцінюється можливість маскування всередині критичних частотних смуг.

Етап 3. Виконується огрублення спектру виходячи із заданого бітрейта
Спочатку виділяються частотні смуги для огрубіння. При цьому використовуються 22 смуги, для яких ступінь огрублення задається індивідуально, враховуючи рівень бітрейту, що заданий користувачем.
Надалі виконується власне огрублення. Амплітуди всередині смуг масштабируются з урахуванням можливостей маскування (шляхом множення на коефіцієнт даної смуги Кi <1). Значення амплітуд діляться на значення «квантувача» X виходячи із заданого бітрейта.

Етап 4. Статистичне стиснення
Виконується кодування по Хаффмену для кожної частотної смуги. Ефект досягається, оскільки після огрублення залишаються невеликі числа, серед яких багато нулів (для тих значень, які маскуються). Для різних рівнів квантування може використовуватись кілька кодових таблиць.

Приклад квантування спектру в МР3
Для кращого розуміння наведемо числовий приклад квантування спектра — рис.7.6:

Рисунок 7.6 Приклад стискання коду в MP3

- для певної i-й смуги спектру розглянемо значення чотирьох сусідніх амплітуд Aij частотних складових спектра. Нехай будемо мати значення Aij 8739; 1195; 384; 421 (для вихідного кодування тут потрібно 2*4 = 8 байтів = 64 біти). З урахуванням умов психоакустической моделі три слабших частотних складових не сприйматимуться на слух, тому їх можна кодувати максимально економічно (насправді кожна полоса в MP3 вміщає 18 амплітуд, отже ефект від маскування буде значно вищий, ніж в нашому прикладі);

- огрублення амлітуд квантуванням виконується за формулою Gij = int (Aij * Ki / X). Приймемо, що виходячи із заданого бітрейту, значення квантувача X = 200. При коефіцієнті маскування для даної смуги Кi = 0.2, результати огрубіння Gij отримають значення 9; 1; 0; 0. Такі квантовані значення можна кодувати одним байтом (таким чином замість 8 байт були б потрібні 4 байти). Але найбільший ефект дасть кодування за Хаффманом. Зокрема в нашому прикладі довжина такого коду складе 10 бітів. Значення відновлених амплітуд A*ij будуть відрізнятися від вихідних на величину похибки квантування і складуть відповідно 9000; 1000; 0; 0;

- кодування можна зробити ще більш компактним, якщо зменшити коефіцієнт маскування наприклад до Кi = 0,1 і тим самим збільшити частку нулів за рахунок видалення ще однієї замаскованої складової. У цьому випадку ми отримаємо послідовність Gij 4; 0; 0; 0, яка буде відновлена до значень Bij 8000; 0; 0; 0. Платою за поліпшення стиснення буде збільшення похибки («шуму квантування») для найбільш значущою частотної складової: якщо в першому випадку округлення виконувалося з точністю до 1000, то в другому - до 2000.

Контрольні питання:
1) Охарактеризуйте принципові особливості і основні прийоми стискання для методу MP3 (використовуйте рис.7.4).
2) Спираючись на рис.7.5, розкажіть про етапи практичної реалізації стискання звуку в MP3.
5) На прикладі рис.7.6 поясніть використання маскування, квантування і статистичного стискання в MP3.


7.3 Cтискання зображень із втратами. Метод JPEG

Ідея методу JPEG
Стандарт стискання зображень JPEG розроблявся ще в 80-х роках минулого століття з урахуванням обмежень тодішніх комп'ютерів, однак успішно застосовується і сьогодні.
Основна ідея методу - розбиття зображення на невеликі блоки з подальшим стисканням їх коду, яке візуально відображається згладжуванням дрібних деталей всередині блоків (рис.7.7):

Рисунок 7.7 Приклад згладжування дрібних деталей в блоку зображення JPEG

- згладжування досягається за рахунок використання спектрального перетворення і придушення високочастотних складових. На цьому етапі виникають втрати якості зображення, які, тим не менш суб'єктивно сприймаються як прийнятні (приклад - на рис.7.8);

- метод JPEG поєднує застосування спектрального перетворення з використанням стискання без втрат (кодування Хаффмена), а також інженерних рішень з попередньої по підготовки до стискання (наприклад, поділу яскравісної та колірних складових з додатковим огрубленням останніх);

- зазвичай зображення в JPEG стискаються в 10-15 разів без істотної втрати якості. При більш сильному стисканні проявляється мозаїчність зображення, а також так званий «ефект Гібсона» - більш явне виділення меж різких колірних переходів. Час стискання і відновлення зображення близькі між собою.

Алгоритм JPEG включає три послідовні етапи, зміст яких істотно різниться. Нижче ці етапи будуть розглянуті детально.

Попередня обробка зображення
Попередня обробка (або препроцесінг) в JPEG передбачає три кроки перетворення растрового зображення (рис.7.8):

Рисунок 7.8 Кроки препроцесінгу зображень в JPEG

- Крок А - для розділення яскравісної і колірних складових виконується перехід до різністноколорного подання (ICT - Irreversible Color Transform). Трійка параметрів RGB перетворюється в трійку коефіцієнтів YUV (YСrCb). Тут Y - яркостная складова, а U і V - колірні (так звані "хроматичний червоний" - Cr і "хроматичний синій" Cb). Пряме перетворення виконується множенням вектора RGB на матрицю коефіцієнтів (рис.7.8). За допомогою аналогічної матриці може бути виконано і зворотне перетворення;

- Крок Б - зображення розділяється на блоки 8х8 пікселів, всередині яких в подальшому виконується згладжування (ріс.7.8). Саме ці прямокутні блоки при сильному стисканні зображення виділяються як елементи «мозаїки». Кожен блок зображення представляється трьома матрицями коефіцієнтів Pij розміром 8х8. Матриці відповідають складовим YUV. (Наприклад, в матриці U значення Pij = 0 означає, що у даній точки відсутня червона колірна складова, а Pij = 255 означає, що ця складова буде максимально яскравою);

- Крок B - виконується так зване «проріджування» рядків і стовпців колірних складових блоків зображення. В результаті їх розмір скорочується в чотири рази, при цьому огрублення кольорів майже не позначається на сприйнятті зображення. Четвірки блоків зображення 8х8 об'єднуються в «макроблоки» 16х16, а потім для колірних складових U і V з відповідних матриць виключаються всі парні рядки і стовпці. При цьому матриця складової яскравості Y залишається незайманою В результаті кількість коефіцієнтів скорочується вдвічі (із 12 блоків залишається 6).

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

Рисунок 7.9 Спектральне перетворення зображень

- математично кожен мікроблок зображення 8х8 пікселів являє собою таблицю P з 64 коефіцієнтів pxy. Кожен з таких коефіцієнтів може мати значення від 0 до 255, оскільки кодується одним байтом;

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

- розрахунок елементів матриці D ведеться за формулою, показаної на малюнку. В результаті коефіцієнти dij відображають «амплітуду коливань» яскравості пікселів для різних частот. Так, однакової яскравості всіх пікселів відповідає нульова частота (однорідний фон - коливання відсутні). Відповідний елемент розташований у верхньому лівому кутку матриці D і в даному випадку він буде єдиним ненульовим. Якщо всередині блоку з'являється градієнт яскравості, то ненульовими стають і інші коефіцієнти. Найвища частота відповідає змінам яскравості сусідніх пікселів. Їй відповідає коефіцієнт в правому нижньому кутку матриці. Чим більше плавні зміни коефіцієнтів pij всередині блоку, тим мменьше амплітуди частотних складових в правому нижньому кутку матриці D;

- отримані елементи dij ( «двовимірний спектр») можна перетворити в зручну для обробки одновимірну форму, якщо розгорнути їх у рядок. Таке перетворення виконується шляхом обходу матриці D «зигзагом» від лівого верхнього до нижнього правого кута матриці (як це видно на рис.7.9). Тепер послідовність коефіцієнтів відповідає лінійному зростанню частоти і схожа на звичний одновимірний спектр (це відображено на рис.7.10, який ми розглянемо в подальшому).
Звернемо увагу, що процедура ДКП, як і подальша обробка її результатів, виконується незалежно для кожної складової колірної моделі YUV.

Квантування спектра і стискання даних
На цьому (третьому) етапі виділяються два кроки:
- підготовка до стискання за рахунок огрублення (квантування) спектрів блоків. Тут виникають втрати інформації про деталі зображення;
- власно стискання коду. Воно виконується з використанням стандартних статистичних методів і до втрат не приводить.

Нижче ми детально розглянемо саме перший етап, оскільки другий реалізується вже знайомими нам методами. Процедуру квантування спектра блоку ілюструє рис.7.10:

Рисунок 7.10 Приклад квантування спектра блоку зображення

- спочатку всі коефіцієнти матриці D діляться з відкиданням дробної частини на певні встановлені подільники. У прикладі такої дільник прийнятий рівним 8. В реальному алгоритмі JPEG подільники збільшуються зі зростанням частот, тобто, в напрямку від лівого верхнього до правого нижнього кута матриці D (на рис.7.10 наведено фрагмент реальної матриці дільників, в якому відображені перші 16 значень з 63 );

- відновлення початкового вигляду матриці виконується зворотним множенням на ті ж коефіцієнти. Однак, оскільки при діленні дробові частини результатів відкидалися, відбувається незворотна втрата інформації;

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

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

Приклад обробки блоку зображення
Розглянемо тепер більш детально особливості обробки вже знайомого нам блоку зображення (рис.7.7) у зв'язку з особливостями алгоритму JPEG — рис.7.11:

Рисунок 7.11 Підсумковий огляд етапності стискання зображень в JPEG

- процедура обробки блоку виконується паралельно для всіх трьох складових колірної моделі. Для наочності на рис.7.11 виділена найбільш важлива яскравісна складова Y;

- значення коефіцієнтів вихідної матриці P, матриці спектра D і матриці огрублених коефіцієнтів D * представлені у вигляді смуг, які розташовуються в напрямку зростання частоти (порядок обходу пікселів «зигзагом» від верхнього лівого до нижнього правого кута матриці описаний вище та відображений на рис.7.9-7.10);

- як видно, в результаті ДКП амплітуди частотних складових в цілому зменшуються для більш високих частот. Крім того, при огрубіння для більш "віддалених" коефіцієнтів використовуються великі значення дільників (рис.7.10). В результаті при огрубіння з спектра «очищаються» саме високочастотні складові, яким відповідають більш дрібні деталі зображення. Подібні зміни відбуваються і для спектрів двох інших складових U і V, які не видно на малюнку. В результаті зміщується їх баланс, а разом з ним підсумкові кольору пікселів;

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

В результаті подібного кодування з приблизно півтора тисяч біт, опісивающіx блок, залишається зазвичай кілька десятків: код зображення стискується в 10-15 і більше разів.

Контрольні питання
1. Дайте коротку характеристику стиснення зображень відповідно до стандарту JPEG.
2. Назвіть основні етапи стиснення за стандартом JPEG і охарактеризуйте їх зміст.
3. Розкажіть про кроки попередньої підготовки зображення до стиснення в JPEG.
4. Використовуючи рис.7.9, розкажіть про застосування спектрального перетворення в JPEG.
5. Спираючись на рис.7.10, поясніть процедуру огрубіння спектра блоку зображення в JPEG.
6. За рис.7.11 розкажіть про візуальні ефекти, що виникають при стисненні блоків зображень за стандартом JPEG.


7.4 Вейвлетне стискання зображень

Ідея методу
Так званий вейвлетний метод стискання зображень втілено в стандарті JPEG-2000, який розроблявся з метою подолання недоліків JPEG. Зокрема, він повинен був забезпечити істотне підвищення ступеня стискання без мозаїчності зображень, а також — в якості опції - можливість стискання без втрат якості.

Ідея методу - стискання за рахунок усереднення характеристик сусідніх пікселів з поступовим зменшенням коду всього зображення (рис.7.12). При цьому:

Рисунок 8.1 До принципа дії методу JPEG-2000

- на кожному кроці за рахунок усереднення яскравості сусідніх пікселів основне зображення зменшується в 4 рази. Одночасно зберігаються відмінності вихідних пікселів від усередненого, що дозволяє в подальшому відновити зображення (на рис.7.12 ці відмінності відображені подібно тіням на барельєфі);

- зберігаються відмінності вихідних пікселів від усередненого самі по собі відносно малі, що дозволяє кодувати їх більш економічно. Крім того "діагональна" частина зображення взагалі не несе інформації (це наочно видно на рис.7.12), отже її можна не зберігати. Отримана таким чином економія дозволяє в принципі стискати зображення без втрат;

- описана процедура виконується кілька разів итеративно (на кожному кроці результати попереднього використовуються в якості вихідних даних). При цьому ми як би рухаємося від більш високочастотних складових спектра (відмінності в сусідніх пікселях) до низькочастотних (плавні зміни фону). Саме таке перетворення називають "вейвлетним" (wavelet - «волночка») або якщо повністю - дискретним вейвлетним перетворенням ДВП;

- вейвлетне перетворення автоматично розділяє обробку плавних («низькочастотних») змін зображення, які важливі для сприйняття, від дрібних "високочастотних" деталей, якими можна пожертвувати. Перші проявляються при усередненні ярскравостей сусідніх пікселів, а другі - за рахунок обчислення їх різниці. Це ще називають низькочастотною і високочастотною фільтрацією;

- на кожному кроці перетворення відмінності пікселів від середнього (високочастотні складові) можуть огрубляет за рахунок квантування, що дозволяє істотно стискати їх код, але призводить до втрати якості. Візуально таке стискання проявляється як розмивання зображення. При великих ступенях стискання воно сприймається оком більш лояльно в порівнянні з мозаїчністю JPEG, що дозволяє істотно збільшити ступінь стискання (аж до 1:50).

Загальна структура алгоритму JPEG-2000
В цілому в алгоритмі виділяються ті ж основні етапи, що і в JPEG - попередня обробка, спектральне перетворення (тут саме у вейвлетній формі) і кодування (квантування з подальшим стисненням) - рис.7.13. При цьому:

Рисунок 7.13 Етапність обробки зображення в JPEG-2000

- на етапі попередньої обробки, як і в JPEG, виконується перехід до різностноколірної моделі YUV і проріджування колірних складових. Важлива відмінність полягає в тому, що в JPEG-2000 не відбувається розбиття на мікроблоки 8х8. Зображення може оброблятися або повністю, або (з урахуванням обмежень по використовуваної пам'яті) розбивається на великі квадратні зони тайли (tile - «плитка»), для кожного з яких обробка ведеться незалежно;

- подальша обробка виконується крок за кроком (зазвичай від 4 до 8 итерацій), число яких алгоритм визначає з урахуванням необхідного ступеня стиснення. Оскільки на кожному кроці замість чотирьох чисел зберігається тільки три (за виключенням «діагональних» коефіцієнтів), то навіть без врахування втрат, залишок коду за 4 ітерації може скласти (3/4)4 = 0,32, а за 8 ітерацій (3/4)4 = 0,10 — досить суттєве стискання;

- на етапі кодування ступінь огрублення задається, виходячи із потрібного рівню стискання. Вона обирається алгоритмом і може різнитись в залежності як складових колірної моделі (меше стискання для яскравості і більше для кольорів), так і в залежності від номеру ітерації.

Особливості обробки для однієї ітерації перетворення
Етапи обробки всередині кожної ітерації показані на рис.7.14:

Рисунок 7.14 Детальна характеристика ітерації стискання

- кожний крок вейвлетного перетворення включає обчислення середнього значення для четвірки cоседніх пікселів (Lli), а також обчислення напіврізниць по рядку (Hli), стовпцю (Lhi) і діагоналі (Hhi). В результаті такої операції замість чотирьох чисел приблизно одного порядку деоржуємо одне близьке до них число (Lli) і два значно менших (Hli та Lhi). Четверте число (Hhi), як ми вже знаємо, можна не зберігати;

- покажемо аналогічну операцію для двох чисел, наприклад, 125 та 121. Тут середнє (напівсума) складає (125+121)/2 =123, а напіврізниця (125-122)/2=2. Значення 123 та 2 несуть ту ж інформацію, що й 125 та 121 (зокрема 123+2=125, а 123-2=121), однак число 2 значно менше і потребує меншого обсягу коду. У випадку четвірок пікселів додатковий ефект досягається за рахунок зберігання 3-х чисел замість 4-х;

- наступна ітерація вейвлетного перетворення виконується виключно для середніх значень Lli, значення Hli та Lhi або зберігаються незмінними (в режимі стсикання без втрат), або додатково квантуються для наступного статистичного стискання;

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

В цілому JPEG-2000 здатний забезпечити майже дворазове збільшення стискання з втратами в порівнянні з JPEG. У частині стискання без втрат він не настільки ефективний і програє спеціалізованим рішенням (зокрема JPEG-LS), проте сама така можливість вигідно відрізняє його від попереднього стандарту. Важливою перевагою JPEG-2000 є можливість вибирати режими стискання для різних зон зображення, а також стійкість до викривлень. Крім того він набагато краще стискає зображення, створені в комп'ютерних редакторах, і зображення документів. Зниження якості зображення проявляється в його згладжуванні («замилюванні»), а при сильному стисненні - також в появі мерехтіння в околицях різких кордонів. Головним недоліком методу є низька швидкість стиснення.

Контрольні питання
1. Розкажіть про ідею методу стиснення в JPEG-2000, спираючись на рис.7.12.
2. Розкажіть про структуру алгоритму JPEG-2000, використовуючи рис.7.13.
3. Охарактеризуйте особливості етапу підготовки зображення в JPEG-2000.
4. Як реалізується в алгоритмі вейвлетного перетворення. Які переваги дає його застосування.
5. Які особливості етапів огрубіння і кодування в JPEG-2000.
6. У чому полягають переваги та недоліки JPEG-2000 щодо JPEG.
О дисциплине ТИК
Почему «Теория информации и кодирования» - одна из самых интересных дисциплин, которые изучают будущие системщики и защитники информации?

В ней сочетаются золотая классика и самая актуальная современность computer-science.

продолжение
О сайте
Здесь вы найдете материалы, которые помогут в изучении дисциплины “Теория информации и кодирования” (ТИК) в том виде, как она преподается на кафедре ЭВМ ДИИТа.

На сайте размещены методические материалы:
  • электронный конспект лекций;
  • методическое обеспечение к лабораторным работам;
  • полезные ссылки.

продолжение
© 2008-2020 • Теория информации и кодирования
UP