Лабораторні роботи Годуна Дмитра: Обробка зображень та мультимедіа

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

Зображення

BMP

BMP (Bitmap)-формат файлу зображень растрової графіки, в якому зображення зберігається у вигляді двовимірного масиву пікселів. BMP це стандартний не стиснений бітовий графічний формат, запам'ятовує одно і багатокольорові (RGB) ілюстрації у формі Pixel. BMP-формат використовується в операційній системи Windows та OS/2. Дані цього формату включаються в двійкові файли ресурсів RES і в PE-файли.

Формат файлу BMP здатний зберігати 2D цифрові зображення довільної ширини, висоти та роздільної здатності, як монохромні так і кольорові, різної глибини кольору, і, необов'язково, зі стисненням даних, альфа-каналом та керуванням кольору. Специфікація Windows Metafile (WMF) охоплює формат файлу BMP. Серед іншого, wingdi.h визначає BMP-константи та структури.

Можливості формату BMP

У даному форматі можна зберігати тільки одношарові растри. На кожен піксель в різних файлах може приходити різна кількість біт (глибина кольору). У більшості випадків пікселі зберігаються у вигляді відносно простого двовимірного масиву.

BMP-файли складаються з трьох основних частин:

  • заголовок;
  • палітра;
  • графічні дані.
   Посилання:
   fileext.ru
   uk.wikipedia.org
   ru.wikipedia.org

JPG

JPEG (Joint Photographic Experts Group) — растровий формат збереження графічної інформації, що використовує стиснення з втратами.

JPEG заснований на 24-бітній колірній палітрі і підтримує 16700000. кольорів. Це формат стиснення з втратами, тобто частина інформації втрачається при стисненні. Ступінь стиснення може бути в діапазоні від 10: 1 до 20: 1, і більшість графічних прикладних програм дозволяють вибрати ступінь стиснення. Формат JPEG часто використовується як формат даних в цифрових камерах. У Інтернеті формат JPEG застосовується для відображення напівтонових ілюстрацій та графічної інформації з плавним переходом тонів. Формат JPEG, на відміну від GIF і PNG, не підтримує ні анімацію, ні прозорість. Область застосування формату досить вузька — розповсюдження високоякісної напівтонової графіки в Інтернеті.

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

   Посилання:
   fileext.ru
   uk.wikipedia.org
   ru.wikipedia.org

GIF

GIF — 8-бітний растровий графічний формат, що використовує до 256 чітких кольорів із 24-бітного діапазону RGB. Формат було розроблено компанією CompuServe у 1987 році, і з того часу набув широкої популярності у інтернеті завдяки своїй відносній простоті та мобільності. Одними із головних особливостей формату є підтримка анімації та прозорості. GIF - це формат без втрат, тобто чіткість зображення не погіршитися зі стисненням.

Анімовані зображення

Анімований GIF ілюструє можливість подолання обмеження в 256 кольорів. Якби пауза між кадрами була нульовою, то ми відразу побачили б зображення, яке використовує 1859 кольорів. Формат GIF підтримує анімаційні зображення. Вони являють собою послідовність з кількох статичних кадрів, а також інформацію про те, скільки часу кожен кадр повинен бути показаний на екрані. Анімацію можна зробити циклічною. (англ. loop), тоді слідом за останнім кадром почнеться відтворення першого кадру. Прозорість в GIF-анімації може використовуватись для того, щоб не зберігати черговий кадр повністю, а лише зміни наступного кадру відносно попереднього.

Структура

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

   Посилання:
   uk.wikipedia.org
   home.onego.ru
   fileext.ru

PNG

PNG — растровий формат збереження графічної інформації, що використовує стиснення без втрат. Формат PNG був створений у відповідь на обмеження формату GIF, в першу чергу збільшити підтримку кольору і забезпечити формат зображення без патентної ліцензії. Крім того, в той час як зображення GIF підтримує тільки повністю непрозорі або повністю прозорі пікселі, PNG зображення може включати в себе 8-бітний канал прозорості, що дозволяє кольорам зображення поступово змінюватися від непрозорого до прозорого. Формат PNG зберігає графічну інформацію в стислому вигляді. Причому це стиснення проводиться без втрат, на відміну, наприклад, від JPEG з втратами. PNG дозволяє зберігати три типи зображень: greyscale (для опису зображення використовується один канал - білий), indexed-colour (використовується палітра кольорів, як в GIF) і truecolor (використовується три канали - RGB).

PNG має такі основні переваги перед GIF:

  • практично необмежену кількість кольорів у зображенні;
  • опціональна підтримка альфа-каналу;
  • можливість гамма-корекції;
  • двовимірна черезстрокова розгортка;
  • можливість розширення формату користувацькими блоками.


   Посилання:
   fileext.ru
   uk.wikipedia.org
   ru.wikipedia.org

SVG

SVG - мова розмітки масштабованої векторної графіки, створений Консорціумом Всесвітньої павутини (W3C) і входить до підмножини розширюваної мови розмітки XML, призначений для опису двовимірної векторної і змішаної векторно/растрової графіки у форматі XML . Підтримує як нерухому, так і анімовану інтерактивну графіку. Не підтримує опис тривимірних об'єктів. Це відкритий стандарт, який є рекомендацією консорціуму W3C. В основу SVG лягли мови розмітки VML і PGML. Розробляється з 1999 року. У 2001 році вийшла версія 1.0, в 2011 - версія 1.1, яка залишається актуальною до сьогоднішнього дня. В даний час в активній розробці знаходиться версія 2. SVG включає в себе три типи об'єктів: фігури, зображення і текст. SVG зображення складається з набору геометричних фігур, описаних у форматі XML: лінія, еліпс, багатокутник і т.д. Основною перевагою SVG перед іншими форматами, застосовуваними в Інтернеті, є те, що SVG картинка представляє з себе ніщо інше, як простий текстовий файл. Такий файл можна відкрити і відредагувати будь-яким текстовим редактором, а також серверним скриптом. Також SVG може похвалитися підтримкою анімації. На відміну від растрової графіки, SVG не втрачає в якості при масштабуванні, тому її зручно використовувати для розробки під retina. При використанні SVG скорочується кількість звернень до сервера, відповідно збільшується швидкість завантаження сайту. За допомогою CSS можна міняти параметри графіки на сайті, наприклад тло або прозорість.

   Посилання:
   ru.wikipedia.org
   habrahabr.ru
   graphing.ru

Приклад фото

Таблиця порівняння

Формат JPEG GIF BMP PNG SVG
Тип Растровий Растровий Растровий Растровий Векторний
Підтримка прозорості відсутня присутня відсутня присутня присутня
Макс. число кольорів 16'777'216 256 16'777'216 281'474'976'710'656 підтримує всі кольорові моделі
Максимальний розмір зображення (в пікселях) 65535х65535 65535х65535 65535х65535 2'147'483'647х2'147'483'647 необмежено
Анімація зображення не підтримується покадрова покадрова в APNG в MNG динамічна графіка

Текст

Звук

Відео