на початку вектора ми отримуємо коефіцієнти матриці, відповідні низьким частотам, а в кінці - високим.
Крок 6.
Згортати вектор за допомогою алгоритму групового кодування. При цьому отримуємо пари типу (пропустити, число), де пропустити є лічильником пропускаються нулів, а число - Значення, що необхідно поставити у наступну комірку. Так, вектор 42 3 0 0 0 - 2 0 0 0 0 1 ... буде згорнутий в пари (0,42) (0,3) (3, - 2) (4,1) ....
Крок 7.
Згортати отримані пари кодуванням по Хаффману з фіксованою таблицею.
Процес відновлення зображення в цьому алгоритмі повністю симетричний. Метод дозволяє стискати деякі зображення в 10-15 разів без серйозних втрат.
Конвеєр операцій, використовуваний в алгоритмі JPEG.
Істотними позитивними сторонами алгоритму є те, що:
1. Здається ступінь стиснення.
2. Вихідна кольорове зображення може мати 24 біта на точку.
Негативними сторонами алгоритму є те, що:
1. При підвищенні ступеня стиснення зображення розпадається на окремі квадрати (8x8). Це пов'язано з тим, що відбуваються великі втрати в низьких частотах при квантуванні, і відновити вихідні дані стає неможливо.
2. Проявляється ефект Гіббса - ореоли по межах різких переходів квітів.
Як вже говорилося, стандартизований JPEG відносно недавно - в 1991 році. Але вже тоді існували алгоритми, що стискають сильніше при менших втратах якості. Справа в тому, що дії розробників стандарту були обмежені потужністю існувала на той момент техніки. Тобто навіть на персональному комп'ютері алгоритм повинен був працювати менше хвилини на середньому зображенні, а його апаратна реалізація повинна бути відносно простою і дешевою. Алгоритм повинен був бути симетричним (час розархівації приблизно дорівнює часу архівації).
Остання вимога уможливило появу таких іграшок, як цифрові фотоапарати - пристрої, розміром з невелику відеокамеру, що знімають 24-бітові фотографії на 10-20 Мб флеш карту з інтерфейсом PCMCIA. Потім ця карта вставляється в роз'єм на вашому лептопі і відповідна програма дозволяє вважати зображення. Чи не правда, якби алгоритм був несиметричний, було б неприємно довго чекати, поки апарат перезарядиться - Стисне зображення.
Не дуже приємним властивістю JPEG є також те, що нерідко горизонтальні і вертикальні смуги на дисплеї абсолютно не видно і можуть проявитися лише при друці у вигляді муарового візерунка. Він виникає при накладенні похилого растру друку на горизонтальні і вертикальні смуги зображення. Через ці сюрпризів JPEG не рекомендується активно використовувати в поліграфії, задаючи високі коефіцієнти. Однак при архівації зображень, призначених для перегляду людиною, він на даний момент незамінний.
Широке застосування JPEG довгий час стримувалося, мабуть, лише тим, що він оперує 24-бітними зображеннями. Тому для того, щоб з прийнятною якістю подивитися картинку на звичайному моніторі в 256-кольоровий палітрі, потрібно застосування відповідних алгоритмів і, отже, певний час. У додатках, орієнтованих на прискіпливого користувача, таких, наприклад, як ігри, подібні затримки неприйнятні. Крім того, якщо наявні у вас зображення, припустимо, в 8-бітному форматі GIF перевести в 24-бітний JPEG, а потім назад в GIF для перегляду, то втрата якості відбудеться двічі при обох перетвореннях. Тим не менш, виграш в розмірах архівів часто настільки великий (у 3-20 разів!), А втрати якості настільки малі, що зберігання зображень в JPEG виявляється дуже ефективним.
Кілька слів необхідно сказати про модифікаціях цього алгоритму. Хоча JPEG і є стандартом ISO, формат його файлів не був зафіксований. Користуючись цим, виробники створюють свої, несумісні між собою формати, і, отже, можуть змінити алгоритм. Так, внутрішні таблиці алгоритму, рекомендовані ISO, замінюються ними на свої власні. Крім того, легка плутанина присутній при завданні ступеня втрат. Наприклад, при тестуванні з'ясовується, що відмінне якість, 100% і 10 балів дають істотно розрізняються картинки. При цьому, до речі, 100% якості не означають стиснення без втрат. Зустрічаються також варіанти JPEG для специфічних додатків.
Як стандарт ISO JPEG починає все ширше використовуватися при обміні зображеннями в комп'ютерних мережах. Підтримується алгоритм JPEG у форматах Quick Time, PostScript Level 2, Tiff 6.0 і, на даний момент, займає чільне місце в системах мультимедіа.
Характеристики алгоритму JPEG:
Коефіцієнти компресії: 2-200 (Здається користувачем).
Клас зображень: Повнокольоро...