The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

16.03.2017 23:54  Компания Google открыла код эффективного JPEG-кодировщика Guetzli

Компания Google объявила об открытии кода высококачественного JPEG-кодировщика Guetzli с реализацией нового алгоритма кодирования, позволяющего добиться существенного сокращения размера изображения без ухудшения качества, но с сохранением совместимости со всеми штатными декодировщиками JPEG и полным соответствием стандарту JPEG. Например, по сравнению с эталонной библиотекой libjpeg предложенный алгоритм позволяет сократить размер изображений на 20-30% c сохранением идентичного качества. Код библиотеки и базовых утилит с реализацией Guetzli написан на языке С++ и распространяется под лицензией Apache 2.0.

Guetzli близок по своему назначению к алгоритму Zopfli, позволяющему добиться повышения уровня сжатия файлов PNG и gzip, без потери совместимости. В отличие от WebP, RAISR (Rapid and Accurate Image Super-Resolution) и алгоритмов упаковки изображения на базе нейронных сетей, требующих специальных декодировщиков, Guetzli нацелен на достижение максимального уровня сжатия без нарушения совместимости с уже существующим клиентским ПО. Обратной стороной предложенного алгоритма является очень большая ресурсоёмкость. Guetzli также требует достаточно много оперативной памяти, например, для каждого 1MPix картинки требуется 300 Мб ОЗУ. Относительно других кодировщиков Guetzli работает очень медленно и не подходит для сжатия на лету, но вполне пригоден для одноразовой переупаковки имеющегося контента.

В процессе кодирования JPEG наиболее заметная потеря качества наблюдается на стадии квантования. Стадии преобразования цветового пространства и дискретное косинусное преобразование (DCT) не столь сильно поддаются оптимизации. Guetzli оптимизирует таблицы квантования и коэфициенты DCT для каждого блока JPEG, применяя специальный оптимизатор с обратной связью (closed-loop). Для оценки оптимальности найденных параметров квантования Guetzli применяет алгоритм Butteraugli, использующий в качестве метрики уровень различий между психовизуальным моделированием JPEG и собственным более эффективным методом психовизуального моделирования, что позволяет снизить число возникающих артефактов. Например, на изображениях ниже слева представлен исходный вариант, в центре результат работы libjpeg, а справа - Guetzli.

Дополнение: Разработчики развиваемой сообществом Mozilla библиотеки кодирования JPEG-изображений MozJPEG, ориентированной на достижение более высокой степени сжатия при сохранении совместимости с существующими декодировщиками, в текущем виде не собираются добавлять поддержку алгоритма Guetzli. Несмотря на то, что уровень сжатия MozJPEG при сравнении с libjpeg-turbo не превышает 5-10%, Guetzli слишком медленный. Например, кодирование небольшого файла, размером 38 Кб, заняло 10 секунд, что в 120 раз медленнее MozJPEG.

Из недостатков Guetzli также упоминается поддержка кодирования только в режиме наивысшего качества (-quality 90). Например, MozJPEG может обеспечить более высокий уровень сжатия в режимах с приемлемым качеством. Высокая ресурсоёмкость и невозможность манипуляции уровнем качества затрудняет применение Guetzli во многих областях, на которые рассчитан MozJPEG, а именно переупаковка на лету, оптимизация изображений в высоком разрешении и сжатие с различными режимами качества. Guetzli ещё достаточно молодой проект и, возможно, в будущем проблемы с производительностью будут устранены, тогда можно будет вернуться к вопросу по интеграции его поддержки в MozJPEG.

  1. Главная ссылка к новости (https://opensource.googleblog....)
  2. OpenNews: Доступна библиотека libjpeg-turbo 1.5.0
  3. OpenNews: Истёк срок патента на методы оптимизации JPEG
  4. OpenNews: Доступен MozJPEG 3.0, высокоэффективный кодировщик JPEG-изображений от проекта Mozilla
  5. OpenNews: Релиз библиотеки Libjpeg 9 с поддержкой режима сжатия без потерь
  6. OpenNews: Dropbox опубликовал реализацию алгоритма сжатия изображений Lepton
Лицензия: CC-BY
Тип: К сведению
Ключевые слова: jpeg, google, guetzli
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.2, Аноним (-), 00:41, 17/03/2017 [ответить] [показать ветку] [···]     [к модератору]
  • –7 +/
    И вообще почти все инновации гугля анонсируются как высококачественные , но поч... весь текст скрыт [показать]
     
     
  • 2.5, Аноним (-), 00:51, 17/03/2017 [^] [ответить]    [к модератору]  
  • +14 +/
    высококачественные != высокопроизводительные
     
  • 2.18, Кай Фуем (?), 04:20, 17/03/2017 [^] [ответить]     [к модератору]  
  • +5 +/
    Не так и сложно бутербродов РУ7 допаять Если шины небуферизированы, АП6 допаяй ... весь текст скрыт [показать]
     
  • 1.3, Crazy Alex (ok), 00:44, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +6 +/
    Отлично. Фото из Raw преобразовывать - самое оно.
     
     
  • 2.20, лютый жабист__ (?), 04:56, 17/03/2017 [^] [ответить]    [к модератору]  
  • +2 +/
    Удалять raw глупость. Даже если идеально выставишь уровни, через несколько лет у тебя умения всё-равно будут выше. Да или банально вкусы поменяются и захочется чуть приглушить контраст, а х.ен...
     
     
  • 3.30, Аноним (-), 10:47, 17/03/2017 [^] [ответить]    [к модератору]  
  • +/
    А кто говорил про удалять?
     
  • 3.35, Crazy Alex (??), 13:45, 17/03/2017 [^] [ответить]    [к модератору]  
  • +/
    Разумеется, но слать родителям их тоже не будешь.
     
  • 2.33, Аноним (-), 11:17, 17/03/2017 [^] [ответить]     [к модератору]  
  • +/
    чем тебе для фото плох png Жрет в разы меньше, потерь нет Это - для фото зали... весь текст скрыт [показать]
     
     
  • 3.36, Crazy Alex (??), 13:50, 17/03/2017 [^] [ответить]    [к модератору]  
  • +/
    За ликбезом насчёт raw - не сюда.
     
  • 1.4, Аноним (-), 00:51, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –6 +/
    Обычный джипег лучше этой новой шняги.
     
     
  • 2.7, . (?), 01:11, 17/03/2017 [^] [ответить]     [к модератору]  
  • +3 +/
    второй ряд фоток как бы намекает, что да - новая шняга потеряла начисто информац... весь текст скрыт [показать]
     
     
  • 3.12, Аноним (-), 02:01, 17/03/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    Видимо это вариант джпег для дальтоников
     
  • 3.14, Аноним (-), 02:04, 17/03/2017 [^] [ответить]     [к модератору]  
  • +/
    В первом ряду могло быть изображение провода или чего-то тонкого вдалеке - они ч... весь текст скрыт [показать]
     
  • 3.15, Mihail Zenkov (ok), 02:05, 17/03/2017 [^] [ответить]     [к модератору]  
  • –1 +/
    В целом видно, что артефактов меньше Но вот, что он почти все цвета сдвинул во ... весь текст скрыт [показать]
     
  • 1.6, анон (?), 01:07, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +2 +/
    интересно сравнение с mozjpeg
     
     
  • 2.16, Mihail Zenkov (ok), 02:14, 17/03/2017 [^] [ответить]    [к модератору]  
  • +3 +/
    https://github.com/mozilla/mozjpeg/issues/242
     
  • 1.8, Аннымзус (?), 01:34, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    тред не читай, да вообще ничего не читай:
    а что стало со "jpeg turbo" ? он же самый
     
     
  • 2.13, Mihail Zenkov (ok), 02:03, 17/03/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    > а что стало со "jpeg turbo" ? он же самый

    Он быстрый, но качество тоже, что и у обычного libjpeg.
    Лучшее качество сжатия у mozjpeg.

     
  • 1.11, axredneck (?), 02:00, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    в общем, артефактов меньше, зато потерь чуть больше
     
  • 1.21, Алексей (??), 05:37, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    открыли, что бы они засунуть в хром и андроид, что бы юзер при загрузке в облако ужимал фотки. тогда нагрузка на сервера снизится и за качество будет отвечать юзер, а не гугл. они все так делают... всю нагрузку на юзеров переносят
     
  • 1.22, Челодой Моловек (?), 08:43, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Убрали шум из изображений - за счет этого улучшилось сжатие. Отличная новость.
     
     
  • 2.32, Аноним (-), 11:15, 17/03/2017 [^] [ответить]    [к модератору]  
  • +/
    детали, цветовые, а не шум они убрали (поскольку отличить одно от другого - даже ИИ гугля не очень справляется)

     
  • 1.23, mmm (??), 09:17, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    6. OpenNews: Dropbox опубликовал реализацию алгоритма сжатия изображений Lepton
     
  • 1.28, Аноним (-), 09:42, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    в сортах jpeg не разбираюсь,только BMP :)
     
     
  • 2.34, Аноним (34), 12:58, 17/03/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    Странный у вас вкус.
    Я предпочитаю tiff.
     
  • 1.29, антончик (?), 10:45, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > JPEG-кодировщика Guetzli с реализацией нового алгоритма кодирования, позволяющего добиться существенного сокращения размера изображения без потери качества

    Как в одном предложении может сочетаться "JPEG" и "без потери качества"? Что употреблял автор? Я уверен что речь не про lossless в JPEG2000.

     
     
  • 2.31, Аноним (-), 11:10, 17/03/2017 [^] [ответить]    [к модератору]  
  • +3 +/
    Без потри качества в сравнении с обычным кодировщиком JPEG.

     
  • 1.37, Аноним (-), 15:17, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    А что за название такое чудное? Неужели "гусли"? )
     
     
  • 2.39, Аноним84701 (ok), 18:02, 17/03/2017 [^] [ответить]    [к модератору]  
  • +3 +/
    > А что за название такое чудное? Неужели "гусли"? )

    Конечно же гусли! И пофиг на то, что читается оно как "гёт(з|ц)ли" и совпадает со швейцарским обозначением печенек (или баварским - кофет/сладостей) … o_O

    Кстати, в той же "серезной" биологии полно таких чудных  названий: "галушко-протеин" (spaetzle) "огуречный" (gurken), "криптонит" (потому что подавляет "локус супермена").

     
  • 1.38, DmA (??), 17:40, 17/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    переведёшь так все свои фотки скопом этим кодировщиком, а через 20 лет глянешь, пары человек на каких-нибудь фотках не хватает, алгоритм не учёл :)
     
     
  • 2.40, Аноним (-), 18:45, 17/03/2017 [^] [ответить]    [к модератору]  
  • +/
    Ты это в "Назад в будущее" подсмотрел. :)
     
  • 2.41, Ordu (ok), 21:48, 17/03/2017 [^] [ответить]    [к модератору]  
  • +/
    Я о том же подумал. Но мне в голову вот эта видяшка пришла: https://www.youtube.com/watch?v=vJG698U2Mvo

    Там явно есть элементы, которые можно было бы удалить без потери качества в силу выборочности внимания.

    Ну или развитие темы:

    https://www.youtube.com/watch?v=IGQmdoK_ZfY
    https://www.youtube.com/watch?v=ubNF9QNEQLA
    https://www.youtube.com/watch?v=v3iPrBrGSJM

    Человек вообще ничего не видит, и половину можно поудалять.

     
  • 1.42, Аноним (-), 11:24, 20/03/2017 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Хмм Судя по сравнению фоток низкий ringing и заявлениям типа ненужность 10-... весь текст скрыт [показать]
     
  • 1.43, Аноним (-), 15:46, 20/03/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Хорошая вещь для растровых спутниковых карт. Гуглу в сторону уменьшения памяти и использования OpenCL надо копать.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor