ОЗТМ Лаб 2,3
Зміст
BMP
BMP (від. англ Bitmap Picture) — графічний формат для збереження растрових зображень, розроблений компанією Microsoft.
З форматом BMP працює велика кількість програм, так як його підтримує як і Windows, так і OS/2.
На кожен піксель зображення в різних файлах може бути різна кількість біт. Microsoft пропонує такі бітності: 1, 2, 4, 8, 16, 24, 32, 48 та 64. Колір можна задати тільки в моделі RGB, але в бітностях 16 і 32 можна отримати Greyscale з глибиною до 16 і 32 біт відповідно.
Структура файлу
BMP файли складаються зі структур (заголовків) фіксованого розміру, а також зі структур змінного розміру, які розміщенні у заданій послідовності.
Назва структури | Розмір | Призначення |
---|---|---|
Файл заголовку | 14 Байтів | Зберігає основну інформацію |
DIB заголовок | Фіксований розмір (нараховує 7 різних варіацій) | Зберігає основну інформацію, а також визначає формат пікселів |
Додаткові бітові маски | 12 або 16 байтів | Визначає формат пікселів |
Таблиця кольорів | Змінний розмір | Визначає кольори (Массив пікселів) |
GAP1 | Змінний розмір | Вирівнювання структури |
Массив пікселів | Змінний розмір | Визначає фактичні значення пікселів |
GAP2 | Змінний розмір | Вирівнювання структури |
ICC профіль кольору | Змінний розмір | Визначає профіль кольору для управління кольором |
Використання
BMP формат є дуже простим, і це дає йому використання в ОС Windows та ін. Також цей формат є добре задокументованим і вільним від патентів, що робить його досить поширенним для багатьох графічних програм.
JPEG
JPEG (від. англ Joint Photographic Experts Group) — популярний графічний формат для збереження растрових зображень. Алгоритм JPEG дозволяє стискати зображення як з втратами, так і без втрат (режим стиснення без втрат JPEG). Підтримуються зображення з лінійним розміром не більше 65 535 × 65 535 пікселів.
Алгоритм JPEG найбільшою мірою придатний для стиснення фотографій і картин, що містять реалістичні сцени з плавними переходами яскравості і кольору. Найбільшого поширення JPEG отримав в цифровій фотографії і для зберігання та передачі зображень з використанням мережі Інтернет.
З іншого боку, JPEG малопридатний для стиснення креслень, текстової та знакової графіки, де різкий контраст між сусідніми пікселями приводить до появи помітних артефактів.
Стистення
При стисненні зображення перетворюється з колірного простору RGB в YCbCr. Після цього для каналів зображення Cb і Cr, що відповідають за колір, може виконуватися «проріджування» (subsampling), яке полягає в тому, що кожному блоку з 4 пікселів (2х2) яскравості каналу Y ставляться у відповідність усереднені значення Cb і Cr (схема проріджування «4:2:0»).
При цьому для кожного блоку 2х2 замість 12 значень (4 Y, 4 Cb і 4 Cr) використовується всього 6 (4 Y і по одному усередненому Cb і Cr). Якщо до якості відновленого після стиснення зображення пред'являються підвищені вимоги, проріджування може виконуватися лише в якомусь одному напрямку - по вертикалі (схема «4:4:0») або по горизонталі («4:2:2»), або не виконуватися зовсім («4:4:4»).
При збереженні зображення в JPEG-файлі вказується параметр якості, що задається в деяких умовних одиницях, наприклад, від 1 до 100 або від 1 до 10. Більше число зазвичай відповідає кращій якості (і більшого розміру стиснутого файлу). Однак навіть при використанні найвищої якості відновлене зображення не буде в точності збігатися з вихідним.
Переваги та недоліки
При збереженні зображення в JPEG-файлі вказується параметр якості, що задається в деяких умовних одиницях, наприклад, від 1 до 100 або від 1 до 10. Більше число зазвичай відповідає кращій якості (і більшого розміру стиснутого файлу). Однак навіть при використанні найвищої якості відновлене зображення не буде в точності збігатися з вихідним. Однак, незважаючи на недоліки, JPEG отримав дуже широке поширення через досить високого ступеня стиснення, підтримки стиснення повнокольорових зображень і відносно невисокою обчислювальної складності.
GIF
GIF (від. англ Graphics Interchange Format) — популярний графічний формат для збереження растрових зображень. Здатний зберігати стислі дані без втрати якості у форматі не більше 256 кольорів. Незалежний від апаратного забезпечення формат GIF був розроблений в 1987 році фірмою CompuServe для передачі растрових зображень по мережах. У 1989-му формат був модифікований, були додані підтримка прозорості і анімації. GIF використовує LZW-компресію, що дозволяє стискати файли, в яких багато однорідних заливок (логотипи, написи, схеми). Довгий час GIF був одним з найбільш поширених форматів в інтернеті.
Область застосування
Зображення у форматі GIF зберігається порядково, підтримується тільки формат з індексованої палітрою кольорів. Стандарт розроблявся тільки для підтримки 256-кольорової палітри.
Один з кольорів у палітрі може бути оголошений «прозорим». У цьому випадку в програмах, які підтримують прозорість GIF (наприклад, більшість сучасних браузерів) через прозорі пікселі буде видно фон. «Напівпрозорість» пікселів (технологія альфа-каналу) не підтримується.
Анімовані зображення
Формат GIF підтримує анімаційні зображення. Вони являють собою послідовність з декількох статичних кадрів, а також інформацію про те, скільки часу кожен кадр повинен бути показаний на екрані. Анімацію можна зробити циклічною.
GIF анімація може використовувати прозорість для того щоб не зберігати черговий кадр цілком, а тільки зміни щодо попереднього.
PNG
PNG (від. англ Portable Network Graphics) — растровий формат збереження графічної інформації, що використовує стиснення без втрат. PNG був створений як вільний формат для заміни GIF, тому в Інтернеті з'явився рекурсивний акронім «PNG is Not GIF»
Область застосування
Формат PNG спроектований для заміни застарілого і більш простого формату GIF, а також, в деякій мірі, для заміни значно складнішого формату TIFF. Формат PNG позиціонується передусім для використання в Інтернеті і редагування графіки.
PNG підтримує три основних типи растрових зображень:
- Напівтонове зображення (глибина кольорів – 16 біт)
- Кольорове індексоване зображення (палітра 8 біт для кольора з глибиною 24 біт)
- Повністью кольорове зображення (глибина кольорів – 48 біт)
Формат PNG зберігає графічну інформацію в стислому вигляді. Причому це стиснення проводиться без втрат, на відміну, наприклад, від JPEG з втратами. Він має такі основні переваги перед GIF:
- практично необмежену кількість кольорів у зображенні (GIF використовує в кращому випадку 8-бітний колір);
- підтримка альфа–каналу;
- можливість гамма–корекції;
- двувимірна черезрядкова розгортка;
- можливість розширення формату користувацькими блоками.
PNG є гарним форматом для редагування зображень, навіть для зберігання проміжних стадій редагування, так як відновлення і зберігання зображення проходять без втрат в якості. Також, на відміну, наприклад, від TIFF, специфікація PNG не дозволяє авторам реалізацій вибирати, які можливості вони збираються реалізувати. Тому будь-яке збережене зображення PNG може бути прочитано в будь-якому іншому додатку, що підтримує PNG.
SVG
SVG (від. англ Scalable Vector Graphics) — мова розмітки векторної графіки, створеної Консорціумом Всесвітньої павутини (W3C), яка входить до підмножини мови розмітки XML, призначеної для опису двовимірної векторної і змішаної векторно/растрової графіки у форматі XML. Підтримує як нерухому, так і анімовану інтерактивну графіку.
Переваги формату
- Текстовий формат – файли SVG можна читати і редагувати за допомогою звичайних текстових редакторів. При перегляді документів, що містять SVG графіку, є доступ до перегляду коду файлу, і можливість збереження всього документа. Крім того, SVG файли зазвичай виходять менше за розміром, ніж порівнянні за якістю зображення в форматах JPEG або GIF, а також добре піддаються стисненню.
- Існує можливість збільшити будь-яку частину зображення SVG без втрати якості. Додатково, до елементів SVG документа можливо застосовувати фільтри – спеціальні модифікатори для створення ефектів, подібних застосовуваним при обробці растрових зображень.
- Текст в SVG є текстом, а не зображенням, тому його можна виділяти і копіювати, він індексується пошуковими машинами, не потрібно створювати додаткові метафайли для пошукових роботів.
- SVG – відкритий стандарт. На відміну від деяких інших форматів, SVG не є чиєюсь власністю.
Недоліки формату
- SVG успадковує всі недоліки XML, такі як великий розмір файлу.
- Складність використання у великих картографічних додатках через те, що для правильного відображення маленької частини зображення документ необхідно прочитати цілком.
- Успадковує всі недоліки векторного зображення.
Таблиця порівняння
Для експерименту було використано фото у форматі BMP, розміром 576 КБ, з розширенням 512 х 384 пікс.
Формат | Розмір | Прозорість | Недоліки | Переваги |
---|---|---|---|---|
BMP | 576 КБ | Не зберігає | Стистення не використовується, а також файли зображень мають відносно великий розмір. | Гарна якість зображення. |
JPG | 157 КБ | Не зберігає | Використовується стиснення з втратами, що дає появу на відновлених зображеннях при високих ступенях стиснення характерних артефактів: зображення розсипається на блоки розміром 8x8 пікселів (цей ефект особливо помітний на областях зображення з плавними змінами яскравості), в областях з високою просторовою частотою (наприклад, на контрастних контурах і краях зображення) виникають артефакти у вигляді шумових ореолів. | Досить малий розмір файлу зображення, легко передавати. |
GIF | 103 КБ | Зберігає | Здантий зберігати дані без втрати якості у форматі не більше 256 кольорів, тому зображення які мають велику кількість кольорів будуть втрачати якість після збереження. | Малий розмір файлу, а також можливість збереження анімацій. |
PNG | 396 КБ | Зберігає | Використовується стистення без втрат. Головним недоліком є те, що формат PNG не підтримує множинного зображенні, особоливо анімації. | Велика кількість кольорів. Також цей формат є дуже гарним для редагування зображень, навіть для збереження проміжних результатів роботи з графікою, так як відновлення та збереження зображення проходять без втрат в якості. |
SVG | 529 КБ | Зберігає | SVG успадковує всі недоліки XML, такі як великий розмір файлу. | Файли SVG можна читати і редагувати за допомогою звичайних текстових редакторів. |