logo
ВебТех Конспект лекций 2011 укр

Формати графічних файлів

Найпоширенішими графічними форматами в Web є GIF та JPEG. GIF - найбільш підходящий формат для обміну зображеннями між системами. Архіви із зображеннями у форматі GIF можна знайти на багатьох серверах Internet. Даний формат підтримують багато графічні додатки, в тому числі всі програми перегляду графіки World Wide Web.

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

Формат GIF використовує один з найкращих алгоритмів стиснення LZW, який спочатку не призначався спеціально для графіки. Він не дуже підходить для роботи з двоколірними (чорно-білими) або фотографічними зображеннями.

З розвитком апаратного забезпечення, що підтримує роздільну здатність і багату колірну гаму, графічні файли значно збільшилися в розмірах. Професійні художники тепер, як правило, працюють з файлами, що містять 10 і більше мегабайт даних на кожне зображення. Навіть користувачі з більш скромними запитами часом мають справу з зображеннями 640 на 480 пікселів в 256 квітах (а це більше 300 кілобайт). Крім того, багато хто зараз починають працювати з кольоровими зображеннями 1024 на 768 пікселів (це більше 2,3 мегабайт даних). Так як високоякісні зображення зустрічаються все частіше, обмеження, що накладаються традиційними методами стиснення (наприклад, LZW), стають все більш відчутними.

Для пошуку оптимального способу стиснення зображень фотографічної якості дві міжнародні організації зі стандартизації, International Telecommunications Union (ITU, Міжнародний союз телекомунікацій) і International Organization for Standartization (ISO, Міжнародна організація зі стандартизації), створили Joint Photographic Experts Group (JPEG, об'єднана експертна група по фотографії). З тих пір скорочення "JPEG" використовується як назва цієї техніки стиснення. Крім того, воно входить до назви деяких використовують її файлових форматів.

Ім'я JPEG вказує на метод стиснення, але не на формат файлу. Насправді метод стиснення JPEG використовують як численні мало розрізняються формати, найчастіше відомі, наприклад "JPEG", так і поодинокі радикально відмінні формати, такі як TIFF і Quick Time. На щастя, все ж таки більшість форматів, відомих під ім'ям "JPEG", дуже схожі, і, швидше за все, у вас не виникне з цим проблем, однак знати про можливі ускладнення не завадить.

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

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

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

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

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

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

Одна з серйозних проблем конверсії зображень GIF в JPEG полягає в тому, що зображення у форматі GIF, лімітовані набором з 256 (або менш) кольорів, часто використовують клішірованія (dithering) і півтони ( halftoning), в результаті чого пікселі двох кольорів змішуються для отримання ефекту третього тону. У результаті використання цієї техніки утворюються шаблони, вкрай погано стискувані за допомогою JPEG. Окремі програми дозволяють усереднювати значення цих шаблонів, "пом'якшуючи" таким чином зображення до перетворення, в результаті чого стиснення за допомогою JPEG виявляється більш ефективним.