LINUX.ORG.RU

Новый формат изображений быстрее PNG в десятки раз

 , , , qoi

Новый формат изображений быстрее PNG в десятки раз

6

3

Доминик Саблевски представил новый и невероятно простой в реализации формат изображений QOI (Quite OK Image). По представленным тестам, при сжатии изображений QOI производительнее PNG в 20–30 раз, а при распаковке — в 3–4 раза.

Доминик признаётся, что не является экспертом в области сжатия изображений. Идея создать новый простой и эффективный формат изображений пришла к нему во времена работы с MPEG-1. Его целью была скорость и простота.

Файлы QOI больше по размеру, чем PNG на 10–50 % в зависимости от картинки, поэтому QOI стоит применять, когда необходима скорость.

Исходный код на C, состоящий из одного универсального файла, доступен на GitHub.

В данный момент формат проходит обсуждение финальной спецификации с заинтересованными пользователями.

Также доступны реализации на Zig, Rust, Go, TypeScript, Python, C#. Поддержка QOI добавлена в библиотеку SAIL.

Для пользователей Arch Linux в AUR доступен пакет qoi-git.

>>> Замеры скорости и размеров изображений

>>> Подробности

★★★

Проверено: Shaman007 ()
Последнее исправление: sudopacman (всего исправлений: 2)

невероятно простой QOI

уже на уровне звукового ряда чувствуется простота в дизайне. как это предполагается произносить каждый день...

crypt ★★★★★
()

Ура, наконец-то, можно будет заменить эти скучные, медленные PNG картинки на модные, быстрые! Напоминает дрочерство вимеров на «скорость» с которой они набирают текст, экономя микросекунды нажатий на кнопку мыши или кнопку со стрелкой.

anonymous
()

Файлы QOI всё же больше по размеру чем PNG на 10-50% в зависимости от картинки

Почему указана зависимость от картинки, но не указана степень сжатия PNG, с которой сравнивалось?

MageasteR ★★★★★
()

Есть какие-то юзкейсы что ли, где скорость сжатия решает? В VNC, например, JPEGами можно фигачить как из пулемёта, а это куда?

t184256 ★★★★★
()
Ответ на: комментарий от Im_not_a_robot

без мата, пожалуйста... ку* он тут увидел, видите ли...

crypt ★★★★★
()
Последнее исправление: crypt (всего исправлений: 1)
Ответ на: комментарий от anonymous

Кнопки со стрелками на хорошей клавиатуре в удобном месте действительно больно бьют по этому аргументу, да. А вот как ты тянешься до мыши и обратно за микросекунды я бы посмотрел, есть видео?

t184256 ★★★★★
()

Поддержки 1 bit per pixel нету, а уже лезет с png тягаться. Ох уж энта хипсто-молодежь.

nikitos ★★★
()
Ответ на: комментарий от t184256

А вот как ты тянешься до мыши и обратно за микросекунды я бы посмотрел, есть видео?

Просто не убирает руку с мышки никогда :)

skiminok1986 ★★★★★
()

pcx хватит всем

anonymous
()

А с другими lossless-форматами есть сравнение?

thesis ★★★★★
()
Последнее исправление: thesis (всего исправлений: 1)
Ответ на: комментарий от t184256

Кнопки со стрелками на хорошей клавиатуре в удобном месте действительно больно бьют по этому аргументу, да.

Даже если клавиатура обычная, вим для этого не обязателен. В IDE Jetbrains, например, можно поставить раскладку emacs и перемещатся вместо стрелок хоткеями имакса (увы вимовские режимы нельзя просто взять и прикрутить, поменяв хоткеи).

goingUp ★★★★★
()
Последнее исправление: goingUp (всего исправлений: 1)

всё же больше по размеру чем PNG на 10-50% в зависимости от картинки, поэтому QOI - выбор тех, кому необходима скорость

ждём новость про следующий формат, который ещё толще, зато быстрее.

hint: можно вообще не сжимать, просто дописывать заговолок к raw. Скорость «decode/encode» будет как из пулемёта, ограничена только физикой железа

MKuznetsov ★★★★★
()
Ответ на: комментарий от MKuznetsov

hint: можно вообще не сжимать, просто дописывать заговолок к raw

Можно было бы и BMP, например, если бы размер был всего на 10-50% больше, чем у PNG. Как ты сам понимаешь, такого не будет с BMP.

former_anonymous ★★★
() автор топика

Странно у него конвертер по сути 1 цикл на Си. А на остальных языках целые простыни … хм.

mx__ ★★★★★
()

Что-то, посмотрев исходники, сложилось впечатление, что он ничего кроме RLE и попиксельного сжатия (с минимальным расходом 1 байт на пиксель) не может, мне казалось эффективное сжатие как-то по-другому должно работать. С другой стороны, если разница с png и правда не больше 50%, видимо я переоценивал png.

firkax ★★★★★
()
Ответ на: комментарий от crypt

как это предполагается произносить каждый день…

Как название самой лучшей кодировки для русской локали.

anonymous
()
Ответ на: комментарий от goingUp

Сколько мрака вместо того, чтобы просто поставить стрелки хотя бы примерно в район пальцев.

t184256 ★★★★★
()
Ответ на: комментарий от anonymous

Напоминает дрочерство вимеров на «скорость»

Эт ты зря. Для серверов прирост скорости обработки даже на 5% это уже повод подумать.

upcFrost ★★★★★
()

Файлы QOI всё же больше по размеру чем PNG на 10-50% в зависимости от картинки, поэтому QOI - выбор тех, кому необходима скорость.

Как раз таки размер важнее, а сравнивать надо не с пнг, а с нормальным, современным форматом типа avif или webp.

fernandos ★★★
()
Ответ на: комментарий от firkax

С другой стороны, если разница с png и правда не больше 50%, видимо я переоценивал png.

Мне лень читать что там, но вангую что сравнивалось с пнг без фильтров. Тот же Paeth filter зачастую ещё +20% к сжатию прибавляет.

anonymoos ★★★★★
()
Ответ на: комментарий от AP

Почему для сборки qoi нужно указывать какие-то особые ключи сборки? Ведь автор того вопроса явно собирал с одними ключами оба варианта теста.

xmikex ★★★★
()
Ответ на: комментарий от t184256

Например если тебе надо слать миллион картинок на телефон по толстому канал(типа того же 5г) и показывать риалтайм, а видео тебе не подходит

anonymous
()
Ответ на: комментарий от Siborgium

Что поделать, если суп с альфа-каналом, например?)

anonymous
()
Ответ на: комментарий от crypt

плохо звучит. по-китайски

нюх потерял, лаовай?

anonymous
()

Файлы QOI больше по размеру, чем PNG на 10–50 % в зависимости от картинки

ну и нафиг это надо? Скорость никогда не была проблемой PNG, занимаемое место куда важнее. Сейчас пилят JPEG XL, который и меньше, и быстрее.

Lrrr ★★★★★
()

Файлы QOI больше по размеру, чем PNG на 10–50 % в зависимости от картинки, поэтому QOI стоит применять, когда необходима скорость.

Но потом картинки все равно будут где-то использоваться. И лишние мегабайты станут deal breaker’ом. Короче, не взлетит.

anonymous
()
Ответ на: комментарий от t184256

Кодишь со скоростью света, надо полагать.

anonymous
()
Ответ на: комментарий от skiminok1986

Ты так пишешь, как будто современное использование компьютера (в том числе и решение программерских задачек) не состоит на 90% из браузера. Где без мышки все равно никак.

anonymous
()
Ответ на: комментарий от MKuznetsov

hint: можно вообще не сжимать, просто дописывать заговолок к raw. Скорость «decode/encode» будет как из пулемёта, ограничена только физикой железа

не факт. сжатие уменьшает время передачи.

AVL
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.