Методи стиснення, що використовуються найвідомішими форматами растрових графічних файлів

Формати   Методи стиснення BMP GIF PNG JPEG
RLE X     X
LZ   X X  
Huffman     X X
DCT       X

В мультимедіа широко застосовуються графічні файли у форматах GIF, JPEG та PNG, які підтримуються протоколами World Wide Web, і файли у форматах TIFF та TGA (Targa), менш поширені файли у форматах PSD та PCD.

Graphics Interchange Format (GIF), .gif – це розроблений у 1987 р. апаратно незалежний формат для збереження графічних файлів без втрат з підтримкою до 256 кольорів, для опису кожного з яких використовується до 8 бітів. Первинно призначався для обміну даними між різними апаратними платформами. Забезпечує можливість позначення одного з кольорів як прозорого і збереження у одному файлі багатьох зображень, що робить його привабливим для відносно простих зображень – графіків, креслень, згенерованих комп’ютером малюнків та малюнків у мультиплікаційному стилі. Підтримує стиснення без втрат за алгоритмом LZW та анімацію зображень, завдяки чому використовується для створення простих мультиплікацій. Нині використовується все рідше внаслідок проблем з авторськими правами на LZW.

Найзручнішим форматом для фотографічних зображень є формат JPEG (Joint Photoshop Experts Group), який фактично є технологією стиснення зображень, хоча поняття формату JPEG, як сімейства форматів для обміну файлами стандарту JPEG (зокрема, JFIF - JPEG File Interchange Format, та SPIFF – Stile Picture Interchange File Format) є дуже розповсюдженим. Ці формати підтримують більше 10 моделей кольорів та різні алгоритми стиснення з втратами у комбінації з методом Хафмана; стиснення без втрат, хоча й передбачене стандартом, як самостійний метод стиснення на практиці не використовується.

Найновішим з графічних форматів, що підтримується Internet, є формат PNG (Portable Network Graphics – переносна мережева графіка). Він використовує технологію стиснення без втрат на основі вільного для використання алгоритму Deflate - різновиду методу LZ77. Формат використовує до 48 бітів на піксель для збереження кольорових зображень, підтримує 1-, 2-, 4-, 8-, і 16 –бітову дискретизації, альфа-канал для управління прозорістю та забезпечує високу колірну відповідність. Є хорошою альтернативою GIF у тих додатках, де не можна використати формат JPEG, наприклад, коли потрібне стиснення без втрат зображень із 24–бітовою глибиною кольору чи багаторазове повторне редагування зображень.

Векторна графіка. Векторні зображення зберігаються у вигляді математичного опису набору окремих елементарних геометричних об’єктів (примітивів) – точок (задаються парою параметрів (х,у)), прямих ліній (задаються двома парами параметрів (х1,у1) і (х2,у2)), кривих Баз’є (криві третього порядку, які задаються початковою точкою і важелями, поверненням яких утворюється крива) та елементарних геометричних фігур у вигляді прямокутників, квадратів, кіл та еліпсів чи їх комбінацій, з яких складається зображення. Створені з цих примітивів геометричні фігури можуть заповнюватися кольором, візерунком чи градієнтом кольору При візуалізації моделі обчислюються координати всіх пікселів, які відповідають точкам цих ліній та фігур, та формується масив пікселів, що підлягають відтворенню; пікселям можна також присвоювати відповідний колір.

Слід зауважити, що візуалізація векторного об’єкту передбачає реалізацію процесів дискретизації та відновлення сигналу. Пряма лінія, що підлягає відображенню, відповідає неперервному сигналу (тобто монотонній зміні координат х та у на безмежно малі величини), який має бути апроксимований послідовністю значень пікселів з кінцевим інтервалом. Поява при візуалізації контурних нерівностей у вигляді зубців зумовлена дискретизацією з недостатньою частотою. Оскільки точне відновлення сигналу вимагає дискретизації його з частотою, вдвічі більшою за подвійну найвищу частоту сигналу, то відтворення різкої просторової границі між двома областями вимагатиме для її представлення у просторовій області безмежно високих частот. Звідси випливає, що не існує частоти, яка могла б забезпечити абсолютно точне відновлення сигналу: контурні нерівності (зубці) існуватимуть завжди, хоча й стають менш помітними в міру зменшення розміру пікселів при збільшенні роздільної здатності. Для подальшого їх зменшення використовують спеціальну методику усунення нерівностей, яку ще називають згладжуванням чи захистом від накладання (antialising) [110, с. 102], яка передбачає надання частині пікселів сірого кольору різної насиченості та яскравості залежно від площі перерізу лінії границі з прямокутником, що відповідає одному пікселю. При переході у просторову область це означає заміну уявних високих частот на нижчі.

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

Особливості технології створення та обробки векторних та растрових зображень відбиваються у тому, що традиційно програми роботи з графікою поділяють на програми для малювання, які працюють з бітовими масивами растрових зображень, та програми для креслення, які працюють з векторними зображеннями. Більшість сучасних програм для редагування зображень дають змогу поєднувати растрову і векторну графіку, проте домінуючим є спектр можливостей якоїсь однієї графіки. Так, програми Adobe Illustrator, Macromedia Freeband та CorelDraw у першу чергу орієнтовані на роботу з векторними зображеннями і мають обмеженні можливості роботи з бітовими масивами; програми Adobe Photoshop і Painter, добре працюють з бітовими масивами, але слабо підтримують векторну графіку. Всі сучасні програми графіки підтримують концепцію пошарового створення зображень, за якої кожний новостворюваний об’єкт розташовується у межах окремого шару, що дає змогу змінювати його незалежно від інших. При збереженні файлів у векторних форматах та растровому форматі .psd шари зберігаються, при збереженні файлів у решті растрових форматів відбувається компіляція (злиття) шарів.

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

Векторні формати та метафайли. Для збереження векторних зображень використовують векторні графічні формати, які містять: список примітивів або набір інструкцій (команд) для побудови останніх чи набір примітивів і інструкцій разом. Файли у таких форматах являють собою програми, написані на певній графічній мові, наприклад, EPS (Encapsulated Postscript) чи SVG (Scaleable Vector Graphics). Окрім форматів .SVG та .EPS, для роботи з векторними зображеннями широко застосовується формат .SWF (Shockwave Flash), який початково був розроблений для векторної анімації за допомогою програми Flash Macromedia. Характерною особливістю цих форматів є можливість вставки і збереження у них, як окремих об’єктів, растрових зображень, що дає змогу розглядати їх як формати графічних метафайлів. Графічними метафайлами називають такі графічні формати, які можуть зберігати як растрові, так і векторні зображення та текст. Метафайли задовільняють потребу в обміні різноформатними графічними даними, яка часто виникає при сумісній роботі кількох програм. Метафайли переважно розглядають як векторні формати, які можуть містити або впровадженні у файл растрової об’єкти, або посилання на растровий файл. Ці посилання формують за технологією OPI (Open Prepress Interface), яка дозволяє з метою економії пам’яті імпортувати замість оригінальних файлів їхні образи, створюючи в програмах лише копію низької роздільності (ескіз) і посилання на оригінал. У процесі друку на папері ескізи замінюються на оригінальні файли. Технологія ОРІ широко використовується при роботі з імпортованими графічними файлами, зокрема, у програмах Free Hand, QuarkXPress. Формат Shockwave Flash спеціально розроблявся для використання в Інтернеті і здатний зберігати, окрім графіки, гіпертекстові посилання та анімації.

Чисто векторні формати зустрічаються у мультимедіа досить рідко, зокрема, при представленні програм технічного креслення. До таких форматів відносяться формати .DSF, .wmf, .EMF, .VSD, .dwg та .CDR. Формати.DXF (Drawing Exchange format)та компактніший за нього.dwg (AutoCAD Drawing) розробки фірми Auto Desk призначені для збереження і обміну кресленнями та іншими графічними документами в середовищі AutoCAD; формат .DXF підтримується багатьма програмами як формат обміну даними, формат .dwg є внутрішнім форматом програми AutoCAD. Формати .VSD (Visio Drawing) розробки фірми Visio та .CDR (Corel Drawing) розробки Corel Corp є форматами векторних зображень для збереження креслень, створених відповідно у пакетах Visio та CorelDRAW.

Формат .wmf (Windows MetaFile WMF) розроблений Microsoft для створення апаратно незалежних векторних зображень: файл .wmf зберігає не саме зображення, а команди GDI (Graphic Device Interface - інтерфейсу графічних пристроїв), що використовуються при його створенні. На платформі Macintosh аналогічним .WMF є формат .PICT (Picture file). Формат векторних зображень .EMF розроблено Microsof для задання на друк завдань, що надходять від клієнтів Windows NT і являє собою розширений метафайл.

Відмінні властивості та технічні характеристики векторної та растрової графіки роблять їх привабливими для вирішення різних завдань, проте на практиці часто виникає потреба у поєднанні цих двох представлень, наприклад, при накладанні креслення на відскановане зображення, яке має растровий формат. У цьому випадку необхідно здійснити перетворення векторного формату у растровий чи навпаки. Перетворення векторного зображення у растрове називається растеризацією, растрового у векторне – векторизацією. Растеризація є відносно нескладною операцією, подібною за алгоритмами до візуалізації векторного зображення на екрані; вона призводить до втрати зображенням векторних властивостей і набуття растрових. Векторизація потребує спеціального програмного забезпечення (наприклад, Flash Macromedia), за допомогою якого з певною точністю встановлюються границі геометричних фігур та колірних областей, на які може бути декомпоноване зображення. Векторизоване зображення займає більш ніж вдвічі більше пам’яті, проте піддається всім перетворенням, притаманних векторним форматам.

Проміжне місце між растровою та векторною графікою займає фрактальна графіка. Як і у векторній графіці, зображення у ній будуються на основі формул, але ними описуються не окремі лінії та фігури, а цілі фрагменти зображень певних об’єктів чи навіть зображення всього об’єкту загалом. Зображення складається не обов’язково лише з якихось геометричних фігур, а й з певних об’єктів (фракталів) чи їх частин, наприклад, дерев, поверхні води, гори, неба і т.п. Сучасні технології дають змогу синтезувати коефіцієнти фрактала довільної складності і відтворювати довільну картинку (фотографію) з дуже високою подібністю до оригіналу. Фрактальна графіка застосовується у мультимедіа при генеруванні штучної поверхні хмар, моря, гір тощо; можливості фрактальної графіки реалізуються відповідними графічними редакторами, наприклад, редактором фрактальної графіки Bryce 5.0та програмою комп’ютерного малювання Corel Pointer.

Фрактальні моделі, поряд з моделями конструктивної блочної геометрії (представлення тіл як сукупностей об’ємних геометричних фігур - кубу, циліндри, сфери, піраміди тощо), моделями у вигляді тіл обертання та вільними моделями (представлення тіл каркасними моделями поверхонь, що їх обмежують), використовуються для створення у мультимедіа тривимірних зображень. У твердотільних моделях таких зображень враховуються також місце розташування об’єкту (об’єктів) і місце розташування та інтенсивність джерела світла, що освітлює об’єкт. Галузь комп'ютерної графіки, що будує, перетворює, відображає такі об'єкти, називається твердотільною графікою (Solid Graphics). При твердотільному моделюванні користувач вибирає положення джерел світла у тривимірному просторі та світлові характеристики джерел, а освітленість частин об’єктів розраховується за формулами світлотехніки.