Скоростта на зареждане отдавна се е превърнала в една от най-важните настройки при оптимизиране на уеб страница. Търсачките използват различни критерии за оценка на уебсайт. В този смисъл не само броят на потребителите, които го посещават, е уместен, но и времето, необходимо на страницата да отговори на заявката, също се оценява. По-малкият и компресиран код или използването на кеширащи механизми са сред доказаните решения за бързо присъствие в мрежата, както и използване на компресирани изображения. Тези изображения, тъй като са творчески и придружаващ елемент, са изобилие от различни проекти, които запълват мрежата, но ефектът им върху скоростта на страниците често се подценява.

ефективно

С този проблем се занимава, наред с други, гигантът за търсене Google, който с WebP вече представи през 2010 г. своя формат без изображениеза по-бързи уеб страници. Но какво всъщност стои зад формата WebP, който се извлича от видео кодека VP8? И как се представя в сравнение с консолидираните размери като JPEG?

  1. Какво е WebP?
  2. Защо се характеризира WebP?
    1. Как работи компресирането със загуба на WebP?
    2. Как компресирането без загуби работи с WebP
    3. Защо се характеризира анимираният WebP?
  3. Как е структурата на WebP?
  4. WebP срещу JPEG: така се държи WebP в сравнение с други формати на изображения
  5. Как могат да се отварят и конвертират WebP файлове?

Какво е WebP?

На 30 септември 2010 г. Google обяви публикуването на нов отворен стандарт за компресиране със загуби на 24-битови графики в мрежата. Моделът за този стандарт беше VP8 видео формат, разработена от компанията On2 Technologies и която Google придоби през същата година. След това Google разшири формата WebP с функции като режим на компресия без загуби, прозрачност (алфа канал) и анимации. Chrome поддържа формата на компресия от края на 2010 г., но досега, както и при Opera, трябваше да приемете, че много браузъри поддържат WebP само в експериментален (като Safari и Firefox, чиито редовни актуализации остават неподдържани). Според собствените си изявления в момента Microsoft работи, за да го поддържа в собствения си браузър Edge.

Ще намерите постоянно актуализирана информация за поддръжката на WebP браузър на caniuse.com.

Целият софтуер за обработка и преглед на WebP по подразбиране е под BSD лиценз. Google например използва този формат в уеб магазина на Chrome и в мобилните приложения на Google+.

Защо се характеризира WebP?

Основната цел на WebP от самото начало беше да намали максимално размера на изображенията в мрежата. Според Google изображения и графики във формат WebP те са горе-долу 30 процентапо-малки от PNG или JPEG файлове и те имат същото качество на изображението. Въпреки че тези формати се базират на различни методи за компресиране - PNG, без загуби и JPG, със загуби, WebP позволява и двете възможности. Благодарение на тази гъвкавост форматът е подходящ както за снимки, така и за малки изображения и графики. The характеристики на компресия, както и други основни свойства на формата WebP, може да се обобщи, както следва:

  • Компресия (загуба)- WebP компресията със загуби се основава на VP8 кодиране на ключови кадри.
  • Компресия (без загуби)- Компресията без загуба на WebP разчита на различни техники, които трансформират данните и параметрите на изображението. В този случай се използва алгоритъмът LZ77, наред с други.
  • Прозрачност- 8-битовият алфа канал, предоставен от формата WebP, може да се използва и за RGB компресия със загуби.
  • Метаданни: WebP може да включва метаданни EXIF ​​и XMP, обикновено създадени от камери.
  • Цветен профил- Форматът на Google може да включва вградени ICC профили (записи, описващи цветовото пространство).
  • Анимации: Форматът WebP позволява съхраняване на последователности от изображения.

За да защитите поверителността ви, видеото ще се зареди след щракване.

Как работи компресирането със загуба на WebP?

Компресията със загуби на WebP използва същия метод като VP8 кодека, базиран на блокове, за изчисляване на рамки, тоест отделните изображения. Всеки кадър е разделен на по-малки сегменти, известни също като макроблоки. В рамките на тези макроблокове кодерът може да предсказва излишна информация за движение и цвят и да я изважда от блока. Резултатът от това предсказваща компресия Състои се от информацията от останалите блокове и отделната и излишна информация (която обикновено съдържа много нули). Знам количествено и извършва ентропично кодиране (представяне на символи чрез определен битов модел). Стъпката на квантуване е единственият процес, при който битовете всъщност се изхвърлят и настъпва загуба.

WebP използва a метод на аритметично кодиране което е по-ефективно от кодирането на Huffman, което например се използва в JPEG. И двата метода са две различни форми на ентропично кодиране. Методът на Huffman присвоява на всеки знак цял брой битове, докато аритметичното кодиране на цялата последователност от символи присвоява единичен, по-дълъг битов код. Поради тази причина сложността на аритметичното кодиране е по-голяма, но е изключено създаването на битови съкращения (само излишък в пълните съобщения).

Как компресирането без загуби работи с WebP

За компресиране без загуба на WebP първата стъпка е да трансформация на изображението, където могат да се използват следните техники:

Трансформации, базирани на пространствени прогнози Цветна трансформация Преобразуване чрез изваждане на зелено Индексирана трансформация на цветовете Цветово кодиране на кеша
WebP използва 13 различни режима на прогнозиране, които се възползват от факта, че съседните пиксели често са свързани. За целта реалната стойност на пикселите се прогнозира от вече декодирани пиксели и се кодира само остатъчната стойност.
Целта на цветната трансформация е декорелирането на RGB стойностите на всеки от пикселите. За целта първо изображението се разделя на блокове, преди червеното (R) да се трансформира от зелено (G) и синьото (B) от зелено и червено. Единственото, което запазва стойността си, е зелено.
Допълнителен вариант за трансформиране на цвета, в който зелената стойност се извлича от червената и синята стойност на всеки пиксел.
Ако има няколко недвусмислени стойности на пикселите, форматът WebP предлага и възможността за извършване на индексирана цветна трансформация. В този процес се определя броят на недвусмислените RGBA стойности и ако броят е твърде малък, се създава подредба на тези цветове. Тази подредба се използва за заместване на стойностите на пикселите за съответния индекс.
Компресирането без загуба на WebP може да използва дори по-рано гледани фрагменти от изображения, за да реконструира нови пиксели. Ако няма подходящи резултати, се използва локален цветен кеш с последните 32 цвята, използвани като отправна точка. Това непрекъснато се актуализира.

Данните и параметрите на трансформираното изображение се кодират с ентропно използване на вариант на алгоритъма LZ77. Използва малки стойности за близки пиксели в пространството.

Защо се характеризира анимираният WebP?

Благодарение на поддръжката си за анимации, WebP е интересна алтернатива на GIF или APNG. В този смисъл тя има някои силни страни като 24-битова дълбочина на цвета и 8-битов алфа канал, но и голяма способност за компресия. Форматът WebP, за разлика от конкурентните му формати, позволява компресиране както на анимации без загуба Какво на загуба. Анимираният WebP също убеждава, когато става въпрос за декодиране: тъй като WebP съхранява метаданни за това дали всеки кадър съдържа алфа стойности, не е необходимо декодерът да преобразува всеки кадър поотделно, за да получи тази информация.

Според Google, конвертиране на GIF в WebP lossy намалява размера на файла с до 64 процента. В случай на WebP без загуби, ще говорим за 19 процента.

The ключова рамка техника на гореспоменатия формат WebP се откроява особено при анимациите, където ключовите кадри гарантират високо качество. Поради тази причина процесът на декодиране също изисква използване по-интензивен процесор отколкото например с GIF.

Как е структурата на WebP?

WebP файловете са контейнерни файлове, които използват формата на контейнера RIFF (Файлов формат за обмен на ресурси), разработен от Microsoft и IBM. Поради тази причина файл във формат WebP се състои от заглавка RIFF и съответното съдържание на WebP.

Заглавката RIFF/WebP Състои се от следните три 4-байтови последователности:

  • FourCC (Код с четири знака) RIFF- Описва типа с четирите ASCII знака R, I, F и F, които указват, че това е RIFF файл на контейнера
  • Размер на файла: указва размера на файла
  • FourCCWEBP- Описва типа с четирите ASCII знака W, E, B и P, което показва, че контейнерът RIFF съдържа WebP файл

Заглавката на контейнер RIFF има обща дължина 12 байта, от които последните 4 винаги показват вида на файла, който в този случай би бил WebP

В края на заглавката са Файлови блокове WebP, които в контейнерите RIFF са известни още като „парчета“. Всеки парче има своя заглавка, която включва съответната информация. Някои възможни блокове от горното ниво са VP8 (Lossy WebP), VP8L (Без загуби WebP) и VP8X (WebP разширен). Последните определят WebP файлове с допълнителна информация, като например метаданни EXIF ​​(парче EXIF) или цветен профил на ICCP (парче ICCP), както и анимиран WebP (парче ANIM).

Така че пълната структура на файловете във формат WebP ще бъде нещо подобно:

Размерът на информацията за парче зависи от това дали има допълнителна информация и колко съдържа WebP файлът.

WebP срещу JPEG: така се държи WebP в сравнение с други формати на изображения

Това, което Google представлява в света на търсачките, е JPEG, наричан още JPG, в представянето на снимки и големи изображения в глобалната мрежа. Повече или по-малко четвърт век след публикуването му ни е трудно да си представим уебсайт без този формат на изображението. Най-голямото му предимство в сравнение с формати като PNG (също широко използвани, но използвани преди всичко за малки изображения и графики като лога или икони) е, без съмнение, че JPEG ви позволява да запазвате място за съхранение благодарение на компресията си със загуби.

В тази решаваща подробност, WebP също се оказва по-ефективни и гъвкави: От една страна, форматът на Google предлага, в допълнение към метода за компресиране със загуби, и такъв без загуби. От друга страна, спестяването на място за съхранение на изображения във формат WebP надвишава това на подобни JPEG изображения. Този JPEG поддържа изображения до 65 535 x 65 535 пиксела, докато ограничението за WebP е 16 383 x 16 383, не е от значение, като се има предвид областта на приложение (уеб).

Предимството на компресията, което WebP има пред JPEG, се губи, когато компресията е висока (приблизително 90 процента компресия). Въпреки това, докато JPEG компресираните изображения са силно пикселизирани, подобни изображения във формат WebP запазват известна добавена стойност.

Както при сравнението на WebP и JPEG, изглежда, че при сравнението на WebP срещу GIF форматът на къщата Google също показва убедителни предимства в аспекти като качество и компресия. Проблемът би бил в липсата на поддръжка за WebP на браузъри като Firefox или Microsoft Edge. Досега потребителите на тези уеб браузъри не могат да преглеждат WebP изображения или анимации, тъй като почти никой оператор на уеб страница не използва формата.

Основни факти от сравнението WebP-JPEG:

WebP JPEG
2010 г. 1992 г.
.WebP .jpeg, .jpg
16 383 x 16 383 65 535 x 65 535
Да Недей
Да Да
Да Недей
Да Да
Да Недей
Ограничено (напр. Chrome, Opera, Gmail, IrfanView) Универсален

Как могат да се отварят и конвертират WebP файлове?

Файловете във формат WebP все още не могат да се отварят с общите визуализатори на изображения за Windows, Linux и macOS. Ако обаче искате да видите изображения или анимации кодирани в WebP, имате няколко опции на една ръка разстояние.

Ако сте инсталирали Chrome или Опера на вашата система, просто плъзнете въпросния файл в отворен прозорец от всеки от двата браузъра. Тъй като и двата браузъра поддържат WebP от кутията, можете да видите въпросното съдържание, без да е необходим допълнителен софтуер. Това решение не е точно удобно, особено когато искате да видите повече от едно изображение или анимация. Тези, които не работят с множество прозорци на браузъра или не искат да превключват между тях, трябва да изберат IrfanView. изток безплатен преглед на изображения Той също така предлага поддръжка за WebP, след като бъде инсталиран официалният пакет с приставки. Програмата обаче е достъпна само за прозорци.

Ако използвате слоя за съвместимост с Wine, можете да инсталирате IrfanView също на macOS или Linux, за да отворите WebP файлове с безплатната програма.

В официалната област за разработчици на WebP, Google предлага серия от собствени решения за работа с WebP, особено в libWebP библиотека, които можете да използвате за внедряване на WebP кодиране и декодиране във вашите собствени програми. Освен това в безплатната колекция за изтегляне са включени следните инструменти:

  • cWebP позволява компресиране на файл с изображение с помощта на WebP. Някои възможни входни формати включват, но не се ограничават до PNG, JPEG и TIFF. В опциите на инструмента можете да определите дали изображението да се компресира със загуби или без загуби.
  • dWebP е инструмент, с който можете да конвертирате WebP файлове в други формати като PNG (опция по подразбиране), BMP, TIFF или PGM.
  • С vWebP, Google предоставя собствено решение за показване на WebP изображения и анимации, базирани на OpenGL.
  • WebPmux е най-добрият инструмент за работа с разширен WebP. С програмата можете например да създавате анимации с формат WebP или да разширявате метаданните и ICC профилите на файлове с изображения.
  • С gif2WebP можете да конвертирате съществуващи GIF файлове в WebP файлове. Както при нормалната компресия на изображението, можете да кодирате както загуби, така и загуби.