[#] Квантизация изображений
habrabot(difrex,1) — All
2016-11-18 12:00:04


Квантизация — уменьшение цветов изображения ([wiki][1]). Конечно, сейчас мало кому это необходимо, но задача сама по себе интересная.

![][2]
_Квантизированная [Лена][3] привлекает внимание_

Например, старый добрый формат GIF использует палитру, максимум на 256 цветов. Если вы захотите сохранить серию своих селфи как gif-анимацию (кому бы это надо было), то первое, что вам, а точнее программе, которую вы будете для этого использовать, надо будет сделать – создать палитру. Можно использовать статическую палитру, например [web-safe colors][4], алгоритм квантизации получиться очень простым и быстрым, но результат будет «не очень». Можно создать оптимальную палитру на основе цветов изображения, что даст результат наиболее визуально похожий на оригинал.

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

Далее вас ждёт скучное и непонятное повествование о методе медианного сечения, алгоритму рассеивания ошибок (шума квантизации) по Флойду-Стейнбергу (и не только), особенностях цветового восприятия человеческого глаза, а так же немного говнокода. [Читать дальше →][5]

[1]: https://en.wikipedia.org/wiki/Color_quantization
[2]: https://habrastorage.org/files/469/4b9/630/4694b96305f64f1287f6e8b4dee40a8a.gif
[3]: https://ru.wikipedia.org/wiki/%D0%9B%D0%B5%D0%BD%D0%B0_(%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5)
[4]: https://websafecolors.info/
[5]: https://habrahabr.ru/post/315490/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut