Рубрика «сжатие данных»

Кодеки новой эпохи: HEVC, AV1, VVC и нейросети - 1

Сжатие с учётом контекста, источник: WaveOne (сайт удалён)

Хотя новые стандарты кодеков появляются каждые десять лет, все они основаны на пиксельной математике — манипулировании значениями отдельных пикселей в видеокадре для удаления информации, не важной для восприятия. Другие математические операции уменьшают объём данных после первоначального кодирования.

В новом поколении кодеков алгоритмы машинного обучения используются для анализа и понимания визуального содержания видео, выявления избыточных данных и более эффективного сжатия. Вместо написанных вручную алгоритмов, тут применяют методы Software 2.0, основанные на обучении. Данная область развивается на протяжении десятилетий, но в последние годы получила сильный толчок. Все знают, что в 2017 году произошёл прорыв в разработке ИИ благодаря изобретению трансформеров. В свою очередь, они основаны на концепции внимания, которую придумали в 90-е. Эта техника впервые позволила соотносить друг с другом отдельные части текста или видеокадра.
Читать полностью »

RSync на стероидах с поддержкой Windows - 1

На Хабре периодически рассказывают о новых инструментах для синхронизации данных. Это интересная тема. Такие программы используются:

  • для синхронизации файлов на разных устройствах,
  • дедупликации,
  • резервного копирования,
  • сжатия.

Малейшая оптимизация даёт экономию трафика, места, ускоряет синхронизацию и общую производительность любых систем. Всё, везде и сразу. В эпоху веб-приложений и клиент-серверной архитектуры со множеством девайсов, которые работают в единой инфраструктуре, синхронизация — Святой Грааль, одна из базовых технологий в компьютерной области.

Кроме того, инструменты синхронизации интересны с алгоритмической точки зрения. Любопытно, как люди умудряются оптимизировать базовые алгоритмы типа rsync, которые вроде бы работают идеально. Но нет, всегда можно придумать что-то получше.
Читать полностью »

Как вы знаете, формат изображений WebP в большинстве случаев имеет меньший вес, по сравнению со своими братьями: png и jpeg. Поэтому использовать его в своих приложениях - это хорошая практика.

А как же пользователи, устройства которых не поддерживают данный формат?

В этом случае нам помогает тег <picture> или значение image-set свойства background-image. Просто пишем такие магические конструкции и браузер сам выберет тот источник, который понимает:

<!-- for HTML... -->
<picture>
  <source type="image/webp" srcset="images/cat.webp">
  <img src="images/cat.jpg" width="100" height="100" alt="Cat">
</picture>
Читать полностью »
Величайшие программисты XXI века. Юрки Алакуйяла — гений сжатия - 1Пару дней назад на Хабре обсуждали, что сжатие информации — главная концепция нашей жизни. И вот перед нами представитель этой самой индустрии. Человек, который видит мир через призму теории информации, энтропии, хаоса и закономерностей.

Мало кто слышал имя Юрки Алакуйяла (@jyzg), но все мы используем его разработки. Картинки JPEG частенько генерируются фантастическим JPEG-энкодером guetzli с применением психовизуальных моделей, а HTTP-трафик в интернете жмётся кодеком brotli, тоже лучшим в своём классе.

Д-р Юрки Алакуйяла — активный член опенсорсного сообщества и исследователь. Работает техлидом Google Research Europe (Швейцария). Среди последних разработок — алгоритмы сжатия JPEG XL, WebP lossless и др.
Читать полностью »

Революционный метод сжатия изображений - 1


Всем привет! Курс компьютерной графики в том или ином виде присутствует в образовательной программе любой ИТ-специальности. В числе прочего там обязательно проходят форматы графических файлов и затрагивают алгоритмы сжатия изображений. Сегодня я расскажу о новом, современном методе сжатия изображений, который ещё не вошёл ни в один учебник.Читать полностью »

Как смотрели нюдсы на древних компьютерах? - 1

Формат JPEG представили в 1993 году, а GIF — в 1987-м. Но тогда непонятно, как смотрели фотографии девушек на этой прекрасной машине образца 1983 года?

Такой вопрос пришёл мне от читателя обзора портативного компьютера Compaq Portable. Ответ оказался сложнее, чем мы думали. Давайте разберёмся.
Читать полностью »

Как мы сжимаем данные в больших проектах - 1

Привет! Меня зовут Александр Кленов, и я работаю в Tarantool. В апреле вышел Tarantool 2.10 Enterprise Edition – обновленная версия платформы in-memory вычислений. В версии 2.10 появилось несколько новых функций, о которых уже немного рассказывали на Хабре

Читать полностью »

Как Windows 11 уменьшила размер кумулятивных обновлений на 40% - 1

Раз в месяц Microsoft выпускает кумулятивное обновление Windows, которое включают в себя все предыдущие. То есть для приведения системы в актуальное состояние требуется установка единственного апдейта.

Учитывая огромное количество исправлений в Windows, кумулятивное обновление без оптимизации может сильно вырасти в размере, что неприемлемо. Например, его не смогут скачать пользователи с медленным подключением к интернету, а только в США таких 20%. Поэтому уменьшение размера обновлений — приоритетная задача. Теперь для неё нашлось решение.

Если вкратце, то раньше каждое обновление включало в себя прямую дельту изменений системы, а также обратную дельту для приведения системы к базовой RTM, чтобы установить новую прямую дельту через месяц. Однако выяснилось, что обратную дельту можно вычислить в процессе установки обновления. Теперь Microsoft намерена запатентовать этот алгоритм.
Читать полностью »

Неожиданные причины торможения программ и систем - 1

Я одержим оптимизацией производительности и максимальным повышением эффективности программ. За многие годы я сталкивался с конкретными случаями и распространёнными паттернами, замедляющими работу ПО или компьютеров. В этом посте я расскажу о некоторых из них.

Я назвал пост Surprisingly Slow потому, что замедление было для меня неожиданным, или неоптимальные практики, ведущие к замедлению, настолько распространены, что многие программисты будут удивлены их существованию.

Разделы поста чаще всего никак не связаны друг с другом, поэтому можете выбирать самые интересные для вас.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js