WebP

Поделись знанием:
Перейти к: навигация, поиск
WebP

Расширение

.webp

MIME-тип

non assigned yet

Сигнатура

WEBP

Разработчик

Google

Опубликован

2010-9-30; 4956 дней тому назад[1]

Последний выпуск

0.4.3 / 2015-03-12

Тип формата

Графический формат
Алгоритм сжатия без потерь/с потерями

Содержится в

Resource Interchange File Format (RIFF)[2]

Открытый формат?

Да[3]

WebP (произносится как англ. weppy[4]) — формат сжатия изображений с потерями и без потерь качества, предложенный компанией Google Inc. в 2010 году. Основан на алгоритме сжатия неподвижных изображений (ключевых кадров) из видеокодека VP8. Использует контейнер RIFF.

Для работы с данным форматом существуют открытые библиотека (libvpx) и конвертер (webpconv).





Алгоритм

Сжатие состоит из двух этапов. На первом делается попытка «предсказать» содержимое одних блоков по уже декодированным (три блока над текущим и один блок слева от него), на втором кодируется ошибка предсказания. Блоки отрисовываются в порядке слева направо и сверху вниз[5]. Режимы предсказания работают с 3 размерами макроблоков[6]:

  • 4x4 в канале яркости
  • 16x16 в канале яркости
  • 8x8 в канале цветности

В VP8 и WebP реализованы режимы предсказания[6]:

  • Горизонтальное, H_PRED. Каждый столбец текущего блока есть копия столбца слева от текущего блока.
  • Вертикальное, V_PRED. Каждая строка текущего блока есть копия строки над текущим блоком.
  • DC предсказание, DC_PRED. Заполняет весь блок одинаковыми значениями, полученными за счет усреднения значений пикселов вышележащей строки и столбца слева от текущего блока.
  • Предсказание TrueMotion, TM_PRED. Разработано в On2 Technologies. Кроме строки над блоком и столбца слева от него, используется пиксел, расположенный сверху-слева от блока. Разница между угловым пикселом и строкой сверху записывается в строки блока, при этом к значениям добавляется значение соответствующего пиксела из столбца. Xij = Столбецi + Рядj - Угл. Пиксел.
  • Для блоков 4x4 реализовано 6 дополнительных режимов, сходных с V_PRED и H_PRED, но с диагональными направлениями.

Для сжатия ошибок предсказания и подблоков, которые не были предсказаны, используется дискретное косинусное преобразование DCT (и, изредка, преобразование Уолша—Адамара, WHT). Оба преобразования работают с подблоками размером 4х4 пиксела. Реализация преобразований выполнена на представлении чисел с фиксированной точностью, чтобы уменьшить ошибки округления [7]. Коэффициенты DCT и WHT пакуются энтропийным кодеком.

WebP не работает в цветовом пространстве RGB, перед кодированием изображение переводится в YUV с глубиной 8 бит и форматом 4:2:0. Перевод осуществляется согласно стандарту ITU-R BT.601[7].

Для некоторых изображений может использоваться алгоритм upscaling, когда кодируется не само изображение, а его отмасштабированная (уменьшенная) версия. Декодер проводит обратное преобразование (увеличение изображения)[7].

Поддержка

В настоящее время просмотр изображений в формате WebP поддерживается браузерами Google Chrome (начиная с 9 версии)[8] и Opera (начиная с версии 11.10)[9]. Начиная с версии 26 также поддерживается браузером Pale Moon[10].

Android поддерживает чтение и запись WebP изображений начиная с версии 4.0[11].

С помощью специальной JavaScript-библиотеки возможно отображение в браузерах, поддерживающих видео в формате WebM, в частности, в Firefox 4.0 и более новых[12][13].

Существует также порт библиотеки libwebp под названием libwebpjs/libwebpas на JavaScript и ActionScript, позволяющий использовать WebP во всех популярных браузерах (поддержка IE6+ осуществляется с помощью дополнительного модуля Adobe Flash)[14].

Ограничения и недостатки

Как и VP8, поддерживает только формат 8-bit YUV 4:2:0[15], что, при кодировании с потерей качества, может быть причиной потери цвета на изображениях с 1-пиксельными контрастными переходами, например в пиксельной графике и других видах компьютерной графики.

См. также

Напишите отзыв о статье "WebP"

Примечания

  1. Rabbat, Richard [blog.chromium.org/2010/09/webp-new-image-format-for-web.html WebP, a new image format for the Web]. Chromium Blog. Google (30 сентября 2010). Проверено 1 октября 2010. [www.webcitation.org/6F4r7Cv3v Архивировано из первоисточника 13 марта 2013].
  2. [code.google.com/speed/webp/docs/riff_container.html RIFF Container]. Google Code. Google. Проверено 1 октября 2010. [www.webcitation.org/6F4r7tZOg Архивировано из первоисточника 13 марта 2013].
  3. [code.google.com/speed/webp/faq.html WebP FAQs]. Google Code. Google. Проверено 6 октября 2010. [www.webcitation.org/6F4r8hKvs Архивировано из первоисточника 13 марта 2013].
  4. [code.google.com/speed/webp/ WebP Home]: "Did you know? WebP is pronounced «weppy». /(wĕpˈē)/ "
  5. [www.videobits.org/prediction.html VideoBits.org — Prediction]
  6. 1 2 [blog.webmproject.org/2010/07/inside-webm-technology-vp8-intra-and.html Inside WebM Technology: VP8 Intra and Inter Prediction — The WebM Open Media Project Blog]
  7. 1 2 3 www.webmproject.org/media/pdf/vp8-bitstream.pdf
  8. [www.nicoladagostino.net/chrome-e-le-immagini-webp.html Chrom* и картинки WebP]  (итал.)
  9. [arstechnica.com/web/news/2011/04/opera-1110-gets-webp-support-faster-turbo-mode.ars Opera 11.10 gets WebP support, faster «Turbo» mode]
  10. [www.palemoon.org/releasenotes.shtml Pale Moon - Release Notes]
  11. [developer.android.com/sdk/android-4.0-highlights.html#media-dev Android 4.0 Platform Highlights]
  12. [github.com/antimatter15/weppy/ antimatter15/weppy — GitHub]
  13. [antimatter15.github.com/weppy/demo.html Weppy Demo]
  14. [webpjs.appspot.com/ Библиотека WebPJS]
  15. [tools.ietf.org/html/rfc6386#section-2 RFC 6386 - VP8 Data Format and Decoding Guide]. Проверено 4 февраля 2013. [www.webcitation.org/6ENB8d1Ju Архивировано из первоисточника 12 февраля 2013].

Ссылки

  • [developers.google.com/speed/webp/ Домашняя страница.] (англ.)
  • [caniuse.com/webp Таблица поддержки WebP в различных браузерах], caniuse.com
  • [developers.google.com/speed/webp/docs/c_study Сравнение WebP, JPEG и JPEG 2000.] (англ.)
  • Devin Coldewey. [blog.chromium.org/2010/09/webp-new-image-format-for-web.html WebP, a new image format for the Web] (англ.). Google Inc. (30 September 2010). — Официальный анонс формата. Проверено 3 апреля 2011. [www.webcitation.org/60ukFiaUL Архивировано из первоисточника 13 августа 2011].
Публикации в прессе
  • Sharon Gaudin. [www.computerworld.com/s/article/9189020/Google_s_WebP_makes_images_more_byte_size Google's WebP makes images more byte-size] (англ.). ComputerWorld (30 сентября 2010 года). — «JPEG alternative aims to speed up the Web, save storage space»  Проверено 3 апреля 2011. [www.webcitation.org/query?url=http%3A%2F%2Fwww.computerworld.com%2Fs%2Farticle%2F9189020%2FGoogle_s_WebP_makes_images_more_byte_size&date=2011-04-03 Архивировано из первоисточника 3 апреля 2010 года].
  • Mark Hachman. [www.pcmag.com/article2/0,2817,2370034,00.asp Google Promotes Replacement for JPEG Image Format] (англ.). PC Magazine (30 сентября 2010). Проверено 3 апреля 2011. [www.webcitation.org/query?url=http%3A%2F%2Fwww.pcmag.com%2Farticle2%2F0%2C2817%2C2370034%2C00.asp&date=2011-04-03 Архивировано из первоисточника 3 апреля 2011 года].
  • Stephen Shankland. [news.cnet.com/8301-30685_3-20018146-264.html Google offers JPEG alternative for faster Web] (англ.). CNET (30 сентября 2010 года). Проверено 3 апреля 2011. [www.webcitation.org/query?url=http%3A%2F%2Fnews.cnet.com%2F8301-30685_3-20018146-264.html&date=2011-04-03 Архивировано из первоисточника 3 апреля 2011 года].
  • Devin Coldewey. [www.crunchgear.com/2010/09/30/with-webp-google-aims-to-replace-yet-another-elemental-web-format/ With WebP, Google Aims To Replace Yet Another Elemental Web Format] (англ.). CrunchGear (30 сентября 2010 года). Проверено 3 апреля 2011. [www.webcitation.org/query?url=http%3A%2F%2Fwww.crunchgear.com%2F2010%2F09%2F30%2Fwith-webp-google-aims-to-replace-yet-another-elemental-web-format%2F&date=2011-04-03 Архивировано из первоисточника 3 апреля 2011].
  • Константин Ходаковский. [www.3dnews.ru/news/google-reshila-otpravit-jpeg-na-pokoy/ Google решила отправить JPEG на покой]. 3DNews (2 октября 2010 года). Проверено 2 октября 2010.
  • Garett Rogers. [www.zdnet.com/blog/google/webp-googles-new-attempt-at-speeding-up-the-web/2515 WebP: Google's new attempt at speeding up the web] (англ.). ZDNet (3 октября 2010 года). — «Anything to make the web faster is good in my books — but I have a question. Why are we worried about fractionally speeding up the web when we live in a broadband world that’s just getting faster and faster anyway?»  Проверено 3 апреля 2011. [www.webcitation.org/query?url=http%3A%2F%2Fwww.zdnet.com%2Fblog%2Fgoogle%2Fwebp-googles-new-attempt-at-speeding-up-the-web%2F2515&date=2011-04-03 Архивировано из первоисточника 3 апреля 2011 года].
  • [www.opennet.ru/opennews/art.shtml?num=28138 Разработчики кодека x264 резко критикуют формат WebP, предложенный Google 01.10.2010 ], Jason Garrett-Glaser

Отрывок, характеризующий WebP

Мари».


В середине лета, княжна Марья получила неожиданное письмо от князя Андрея из Швейцарии, в котором он сообщал ей странную и неожиданную новость. Князь Андрей объявлял о своей помолвке с Ростовой. Всё письмо его дышало любовной восторженностью к своей невесте и нежной дружбой и доверием к сестре. Он писал, что никогда не любил так, как любит теперь, и что теперь только понял и узнал жизнь; он просил сестру простить его за то, что в свой приезд в Лысые Горы он ничего не сказал ей об этом решении, хотя и говорил об этом с отцом. Он не сказал ей этого потому, что княжна Марья стала бы просить отца дать свое согласие, и не достигнув бы цели, раздражила бы отца, и на себе бы понесла всю тяжесть его неудовольствия. Впрочем, писал он, тогда еще дело не было так окончательно решено, как теперь. «Тогда отец назначил мне срок, год, и вот уже шесть месяцев, половина прошло из назначенного срока, и я остаюсь более, чем когда нибудь тверд в своем решении. Ежели бы доктора не задерживали меня здесь, на водах, я бы сам был в России, но теперь возвращение мое я должен отложить еще на три месяца. Ты знаешь меня и мои отношения с отцом. Мне ничего от него не нужно, я был и буду всегда независим, но сделать противное его воле, заслужить его гнев, когда может быть так недолго осталось ему быть с нами, разрушило бы наполовину мое счастие. Я пишу теперь ему письмо о том же и прошу тебя, выбрав добрую минуту, передать ему письмо и известить меня о том, как он смотрит на всё это и есть ли надежда на то, чтобы он согласился сократить срок на три месяца».
После долгих колебаний, сомнений и молитв, княжна Марья передала письмо отцу. На другой день старый князь сказал ей спокойно:
– Напиши брату, чтоб подождал, пока умру… Не долго – скоро развяжу…
Княжна хотела возразить что то, но отец не допустил ее, и стал всё более и более возвышать голос.
– Женись, женись, голубчик… Родство хорошее!… Умные люди, а? Богатые, а? Да. Хороша мачеха у Николушки будет! Напиши ты ему, что пускай женится хоть завтра. Мачеха Николушки будет – она, а я на Бурьенке женюсь!… Ха, ха, ха, и ему чтоб без мачехи не быть! Только одно, в моем доме больше баб не нужно; пускай женится, сам по себе живет. Может, и ты к нему переедешь? – обратился он к княжне Марье: – с Богом, по морозцу, по морозцу… по морозцу!…
После этой вспышки, князь не говорил больше ни разу об этом деле. Но сдержанная досада за малодушие сына выразилась в отношениях отца с дочерью. К прежним предлогам насмешек прибавился еще новый – разговор о мачехе и любезности к m lle Bourienne.
– Отчего же мне на ней не жениться? – говорил он дочери. – Славная княгиня будет! – И в последнее время, к недоуменью и удивлению своему, княжна Марья стала замечать, что отец ее действительно начинал больше и больше приближать к себе француженку. Княжна Марья написала князю Андрею о том, как отец принял его письмо; но утешала брата, подавая надежду примирить отца с этою мыслью.
Николушка и его воспитание, Andre и религия были утешениями и радостями княжны Марьи; но кроме того, так как каждому человеку нужны свои личные надежды, у княжны Марьи была в самой глубокой тайне ее души скрытая мечта и надежда, доставлявшая ей главное утешение в ее жизни. Утешительную эту мечту и надежду дали ей божьи люди – юродивые и странники, посещавшие ее тайно от князя. Чем больше жила княжна Марья, чем больше испытывала она жизнь и наблюдала ее, тем более удивляла ее близорукость людей, ищущих здесь на земле наслаждений и счастия; трудящихся, страдающих, борющихся и делающих зло друг другу, для достижения этого невозможного, призрачного и порочного счастия. «Князь Андрей любил жену, она умерла, ему мало этого, он хочет связать свое счастие с другой женщиной. Отец не хочет этого, потому что желает для Андрея более знатного и богатого супружества. И все они борются и страдают, и мучают, и портят свою душу, свою вечную душу, для достижения благ, которым срок есть мгновенье. Мало того, что мы сами знаем это, – Христос, сын Бога сошел на землю и сказал нам, что эта жизнь есть мгновенная жизнь, испытание, а мы всё держимся за нее и думаем в ней найти счастье. Как никто не понял этого? – думала княжна Марья. Никто кроме этих презренных божьих людей, которые с сумками за плечами приходят ко мне с заднего крыльца, боясь попасться на глаза князю, и не для того, чтобы не пострадать от него, а для того, чтобы его не ввести в грех. Оставить семью, родину, все заботы о мирских благах для того, чтобы не прилепляясь ни к чему, ходить в посконном рубище, под чужим именем с места на место, не делая вреда людям, и молясь за них, молясь и за тех, которые гонят, и за тех, которые покровительствуют: выше этой истины и жизни нет истины и жизни!»
Была одна странница, Федосьюшка, 50 ти летняя, маленькая, тихенькая, рябая женщина, ходившая уже более 30 ти лет босиком и в веригах. Ее особенно любила княжна Марья. Однажды, когда в темной комнате, при свете одной лампадки, Федосьюшка рассказывала о своей жизни, – княжне Марье вдруг с такой силой пришла мысль о том, что Федосьюшка одна нашла верный путь жизни, что она решилась сама пойти странствовать. Когда Федосьюшка пошла спать, княжна Марья долго думала над этим и наконец решила, что как ни странно это было – ей надо было итти странствовать. Она поверила свое намерение только одному духовнику монаху, отцу Акинфию, и духовник одобрил ее намерение. Под предлогом подарка странницам, княжна Марья припасла себе полное одеяние странницы: рубашку, лапти, кафтан и черный платок. Часто подходя к заветному комоду, княжна Марья останавливалась в нерешительности о том, не наступило ли уже время для приведения в исполнение ее намерения.
Часто слушая рассказы странниц, она возбуждалась их простыми, для них механическими, а для нее полными глубокого смысла речами, так что она была несколько раз готова бросить всё и бежать из дому. В воображении своем она уже видела себя с Федосьюшкой в грубом рубище, шагающей с палочкой и котомочкой по пыльной дороге, направляя свое странствие без зависти, без любви человеческой, без желаний от угодников к угодникам, и в конце концов, туда, где нет ни печали, ни воздыхания, а вечная радость и блаженство.
«Приду к одному месту, помолюсь; не успею привыкнуть, полюбить – пойду дальше. И буду итти до тех пор, пока ноги подкосятся, и лягу и умру где нибудь, и приду наконец в ту вечную, тихую пристань, где нет ни печали, ни воздыхания!…» думала княжна Марья.
Но потом, увидав отца и особенно маленького Коко, она ослабевала в своем намерении, потихоньку плакала и чувствовала, что она грешница: любила отца и племянника больше, чем Бога.



Библейское предание говорит, что отсутствие труда – праздность была условием блаженства первого человека до его падения. Любовь к праздности осталась та же и в падшем человеке, но проклятие всё тяготеет над человеком, и не только потому, что мы в поте лица должны снискивать хлеб свой, но потому, что по нравственным свойствам своим мы не можем быть праздны и спокойны. Тайный голос говорит, что мы должны быть виновны за то, что праздны. Ежели бы мог человек найти состояние, в котором он, будучи праздным, чувствовал бы себя полезным и исполняющим свой долг, он бы нашел одну сторону первобытного блаженства. И таким состоянием обязательной и безупречной праздности пользуется целое сословие – сословие военное. В этой то обязательной и безупречной праздности состояла и будет состоять главная привлекательность военной службы.
Николай Ростов испытывал вполне это блаженство, после 1807 года продолжая служить в Павлоградском полку, в котором он уже командовал эскадроном, принятым от Денисова.