Jpeg
Процесс стискування зображення JPEG досить складний і найчастіше задля досягнення прийнятною продуктивності не потребує спеціальної апаратури. Спочатку зображення розбивається на квадратні блоки зі стороною розміром 8 пікселів. Потім виконується стиснення кожного блоку окремо упродовж трьох кроку. У першому кроці з допомогою формули дискретного косинусоидального перетворення хури (DCT… Читати ще >
Jpeg (реферат, курсова, диплом, контрольна)
JPEG.
Формат файла JPEG (Joint Photographic Experts Group — Об'єднана експертна група з фотографії, вимовляється «джейпег») розробили компанією C-Cube Microsystems як ефективний метод зберігання зображень з великою глибиною кольору, наприклад, одержуваних при скануванні фотографій з численними ледь вловимими (котрий іноді невловними) відтінками кольору. Найбільше відмінність формату JPEG з інших розглянутих тут форматів полягає у тому, що у JPEG використовується алгоритм стискування з утратами (а чи не алгоритм без втрат) інформації. Алгоритм стискування без втрат так зберігає інформацію про зображенні, що распакованное зображення у точності відповідає оригіналу. При стискуванні з утратами приноситься на поталу частина інформацію про зображенні, щоб домогтися більшого коефіцієнта стискування. Распакованное зображення JPEG рідко відповідає оригіналу вже напевне, але ж надто ці відмінності настільки незначні, що й ледь можна (якщо узагалі можна) обнаружить.
Процесс стискування зображення JPEG досить складний і найчастіше задля досягнення прийнятною продуктивності не потребує спеціальної апаратури. Спочатку зображення розбивається на квадратні блоки зі стороною розміром 8 пікселів. Потім виконується стиснення кожного блоку окремо упродовж трьох кроку. У першому кроці з допомогою формули дискретного косинусоидального перетворення хури (DCT) виробляється перетворення блоку 8×8 з туристичною інформацією про пикселах в матрицю 8×8 амплітудних значень, що відбивають різні частоти (швидкості зміни кольору) у виконанні. З другого краю кроці значення матриці амплітуд діляться на значення матриці квантування, яка зміщена те щоб відфільтрувати амплітуди, незначно що впливають загальний вигляд зображення. На третьому і останньому кроці квантованная матриця амплітуд стискається з допомогою алгоритму стискування без потерь.
Оперирует алгоритм областями 8×8, у яких яскравість і колір змінюються порівняно плавно. У результаті, при розкладанні матриці такий області у подвійний ряд по косинусам значимими виявляються лише коефіцієнти. Отже, стиснення в JPEG здійснюється з допомогою малої величини значень амплітуд високих частот у реальних изображениях.
Поскольку в квантованной матриці відсутня значна частина високочастотної інформації, наявної в вихідної матриці, перша часто стискається майже половину свого початкового розміру і навіть ще більше. Реальні фотографічні зображення часто зовсім неможливо стиснути з допомогою методів стискування без втрат, тому 50%-ное стиснення можна припустити досить хорошим. З іншого боку, при застосуванні методів стискування без втрат, можна стискати деякі зображення на 90%. Такі зображення погано підходять для стискування методом JPEG.
При стисканні методом JPEG втрати інформації відбуваються другою кроці процесу. Чим більший значення матриці квантування, то більше вписувалося відкидається інформації з зображення тим паче щільно стискається зображення. Компроміс у тому, що вищі значення квантування призводять до гіршому якості зображення. При формуванні зображення JPEG користувач встановлює показник якості, величині якого «управляє «значеннями матриці квантування. Оптимальні показники якості, щоб забезпечити найкращий баланс між коефіцієнтом стискування і якістю зображення, різні для різних зображень і звичайно вдасться знайти лише методом спроб і ошибок.
Коэффициент архівації в JPEG може змінюватися не більше від 2 до 200 раз. Як і в іншого алгоритму стискування з утратами, у JPEG свої особливості. Найвідоміші «ефект Гіббса «та роздрібнення зображення на квадрати 8×8. Перший проявляється близько різких кордонів предметів, створюючи своєрідний «ореол ». Він дуже добре помітний, якщо, скажімо, поверх фотографії зробити напис кольором, дуже різнилися від фону. Розбивка на квадрати відбувається, коли задається занадто великий коефіцієнт архівації для даної конкретної картинки.
Не дуже приємною властивістю JPEG є й те, що нерідко горизонтальні і вертикальні смуги на дисплеї абсолютно невеликі, і може проявитися лише за друку, у вигляді муарового візерунка. Він утворюється при накладення похилого растра друку на смуги зображення. Через ці сюрпризів JPEG не рекомендується активно залучити до поліграфії, задаючи високі коефіцієнти. Проте за архівації зображень, виділені на перегляду людиною, він нині незаменим.
Широкое застосування JPEG стримується, мабуть, тільки тим, що він оперує 24-битными зображеннями. Тому, щоб із прийнятним якістю подивитися картинку на звичайному моніторі в 256-цветной палітрі, потрібно застосування відповідних алгоритмів і, отже, певний час. У додатках, орієнтованих прискіпливого користувача, таких, наприклад, як гри, подібні затримки неприйнятні. З іншого боку, доки наявні ви зображення, скажімо, в 8-битном форматі GIF перекласти на 24-битный JPEG, і потім знову на GIF для перегляду, то втрата якості станеться двічі при обох перетвореннях. Проте виграш у розмірі архівів найчастіше такий високий (в 3−20 раз!), а втрати якості акцій настільки малі, що збереження зображень в JPEG виявляється дуже ефективним. JPEG-сжатие реалізовано форматах JPG і TIFF.
Несколько слів слід визнати про модифікаціях цього алгоритму. Хоча JPEG і є стандартом ISO, формат його файлів ні зафіксовано. Користуючись цим, виробників використовують свої, несумісні між собою формати, і, отже, можуть невпізнанно змінити алгоритм. Так, внутрішні таблиці алгоритму, рекомендовані ISO, замінюються ними за свої власні. З іншого боку, легка плутанина присутній при завданні ступеня втрат. Наприклад, під час тестування з’ясовується, що «чудове «якість, «100% «і «0 балів », дають істотно різняться картинки. У цьому, до речі, «100% «якості значить стискування без втрат. Зустрічаються також варіанти JPEG для специфічних приложений.
Алгоритм JPEG можна розділити сталася на кілька этапов0. Подготовка1. ДКП (Дискретно Косинусоидальное Преобразование)2. Квантование3. Вторинне сжатие——————————————————————————————————————-Этап 0. Підготовка——————————————————————————————————————-Чувствительность ока до яркостному Y-компоненту і цветностным компонентами Cb і Cr неоднакова, тож цілком допустимим представляється виконання цієї перетворення з прореживанием (интерливингом) Cb і Cr компонентів, коли для групи з чотирьох сусідніх пікселів (2×2) обчислюються Y-компоненты, а Cb і Cr використовуються загальні (схема 4:1:1). Понад те, преі постфильтрация в площинах Cb і Cr дозволяє вживати прореживание по схемою 16:1:1 без скільки-небудь значної втрати якості! Неважко порахувати, що вони схема 4:1:1 дозволяє скоротити вихідний потік вдвічі (замість 12 байтів для чотирьох сусідніх пікселів досить шести). Схема 16:1:1 забезпечує скорочення потоку в 2,67 разу.
Потрібно перетворити зображення у вид яркость/цветность, можна використовувати колірну схему YCbCr (YUV), ось формули перевода: Y = 0.299*R + 0.578*G + 0.114*BCb = 0.1678*R — 0.3313*G + 0.5*BCr = 0.5*R — 0.4187*G + 0.0813*B Y треба зуміти зберегти не змінювалась, може бути стиснути будь-яким алгоритмом без втрати даних. Тепер пояснимо, як стиснути Cb і Cr——————————————————————————————————————-Этап 1. ДКП——————————————————————————————————————-Следует створити ДКП матрицю, використовуючи цієї формули DCT = 1/sqr (N), якщо i=0 ij DCT = sqr (2/N)*cos[(2j+1)*i*3.14/2N], якщо і > 0 ij N = 8, 0 < і < 7, 0 < j < 7 В результаті маємо: |.353 553 .353 553 .353 553 .353 553 .353 553 .353 553 .353 553 353 553| |.490 393 .415 818 .277 992 .97 887 -.97 106 -.277 329 -.415 375 -490 246| |.461 978 .191 618 -.190 882 -.461 673 -.462 282 -.192 353 .190 145 461 366|DCT = |.414 818 -.97 106 -.490 246 -.278 653 .276 667 .490 710 .99 448 -414 486| |.353 694 -.353 131 -.354 256 .352 567 .354 819 -.352 001 -.355 378 351 435| |.277 992 -.490 246 .96 324 .416 700 -.414 486 -.100 228 .491 013 -274 673| |.191 618 -.462 282 .461 366 -.189 409 -.193 822 .463 187 -.460 440 187 195| |.97 887 -.278 653 .416 700 -.490 862 .489 771 -.413 593 .274 008 -92 414|например, ми мусимо стиснути наступний фрагмент зображення: | 95 88 88 87 95 88 95 95| |143 144 151 151 153 170 183 181| |153 151 162 166 162 151 126 117|IMG = |143 144 133 130 143 153 159 175| |123 112 116 130 143 147 162 189| |133 151 162 166 170 188 166 128| |160 168 166 159 135 101 93 98| |154 155 153 144 126 106 118 133| |-33 -40 -40 -41 -33 -40 -33 -33| | 15 16 23 23 25 42 55 53| | 25 23 34 38 34 23 -2 -11|IMG = | 15 16 5 2 15 25 31 47| | -5 -16 -12 2 15 19 34 61| | 5 23 34 38 42 60 38 0| | 32 40 38 31 7 -27 -35 -30| | 26 27 25 16 -2 -22 -10 5| Tвот формула, через яку виробляється ДКП: RES*IMG*DCT Tдля початку слід вважати проміжну матрицю: TMP = IMG*DCT |-103 -3 1 2 4 0 -1 5| | 89 -40 12 -2 -7 5 1 0| | 57 31 -30 6 2 0 5 0|TMP = | 55 -28 24 1 0 -8 0 0| | 32 -60 18 -1 14 0 -8 1| | 84 -11 -37 17 -24 4 0 -4| | 19 81 -16 -20 8 -3 4 0| | 22 40 11 -22 8 0 -3 2|затем множимо в ДКП матрицю: RES = TMP*DCT | 91 3 -5 -6 2 0 1| |-38 -57 9 17 -2 2 2| |-80 58 0 -18 4 3 4|RES = |-52 -36 -11 13 -9 3 0| |-86 -40 44 -7 17 -6 4| |-62 64 -13 -1 3 -8 0| |-16 14 -35 17 -11 2 -1| |-53 32 -9 -8 22 0 2|_____________________________________________________________________________Этап 2. Квантование——————————————————————————————————————-На цьому етапі ми порахуємо матрицю квантування, використовуючи цей псевдокод: for (i=0;i.