Хотите понять, почему алгоритм сглаживания может уменьшить глубину цвета? - PullRequest
4 голосов
/ 06 февраля 2012

Иногда у меня есть изображение истинного цвета, используя алгоритм сглаживания, я могу уменьшить цвет до 256. Я хочу знать, как алгоритм сглаживания достигает этого.

Я понимаю, что сглаживание может уменьшить ошибку, но как алгоритм может уменьшить глубину цвета, особенно с истинного цвета, до всего лишь 256 цветов или даже меньше.

Ответы [ 2 ]

6 голосов
/ 06 февраля 2012

Дизеринг имитирует более высокую глубину цвета, «смешивая» цвета в определенной палитре, чтобы создать иллюзию цвета, которого на самом деле нет.В действительности, он делает то же самое, что уже делает ваш монитор компьютера: беря цвет, разбивая его на основные цвета, и отображая их рядом друг с другом.Ваш монитор компьютера делает это с красным, зеленым и синим цветом переменной интенсивности, в то время как сглаживание делает это с набором цветов фиксированной интенсивности.Поскольку ваш глаз имеет ограниченное разрешение, он суммирует входные данные, и вы воспринимаете средний цвет.

Таким же образом, газета может печатать изображения в оттенках серого путем размывания черных чернил.Им не нужно много промежуточных серых цветов, чтобы получить приличное изображение в оттенках серого;они просто используют мелкие или большие точки черных чернил на странице.

Когда вы смазываете изображение, вы теряете информацию, но ваш глаз воспринимает ее почти одинаково.В этом смысле он немного похож на JPEG или другие алгоритмы сжатия с потерями, которые отбрасывают информацию, которую ваш глаз не видит.

4 голосов
/ 06 февраля 2012

Дизеринг сам по себе не уменьшает количество цветов.Вместо этого применяется сглаживание во время процесса уменьшения цветов, чтобы сделать артефакты уменьшения цвета менее видимыми.

Цвет, который находится посередине между двумя другими цветами, может быть смоделирован шаблоном, равным половине одного цветаи половина другого.Это можно обобщить и на другие проценты.Цвет, который представляет собой смесь из 10% одного цвета и 90% другого, можно имитировать, если 10% пикселей будут первым цветом, а 90% пикселей - вторым.Это связано с тем, что глаз будет склонен рассматривать случайные изменения как шум и усреднять их в общее впечатление от цвета области.

Наиболее эффективные алгоритмы сглаживания отслеживают разницу между исходным изображением и цветом-уменьшить, и учесть эту разницу при преобразовании будущих пикселей.Это называется диффузия ошибок - ошибки текущего пикселя распространяются на преобразования других пикселей.

Процесс выбора наилучших 256 цветов для преобразования не связан с размыванием.

...