Уменьшение выборки изображения с помощью целочисленного коэффициента

16

При понижающей дискретизации изображения с помощью целочисленного коэффициента очевидным способом является установка пикселей выходного изображения равными среднему значению соответствующих блоков во входном изображении.NN×N

Я смутно помню, что где-то читал, что этот метод не оптимален (извините, я не помню подробностей)

Верно ли, что есть лучший метод (и если да, то где этот метод терпит неудачу, хотя он кажется «очевидно» правильным)? Я не очень разбираюсь в обработке сигналов, этот вопрос меня просто интересует.

Стиг Олденбаум
источник
Если у вас нет опыта обработки сигналов, непрофессионалы объяснят следующее: Есть лучшие методы для понижающей дискретизации. Ваш алгоритм понижающей дискретизации технически уменьшит размер пикселя изображения на N, НО алгоритм, описанный выше, будет значительно ухудшен по качеству по сравнению с лучшими алгоритмами понижающей выборки.
Тревор Бойд Смит

Ответы:

16

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


Оптимальный цифровой фильтр для удаления высокочастотной части (с самым резким срезом) - это функция sinc . Причина в том, что представление в частотной области функции Синка является почти постоянным 1 во всей низкочастотной области и почти постоянным 0 во всей высокочастотной области.

синк(Икс)знак равногрех(πИкс)πИкс

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


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


N×N

Минимальное требование в соответствии координат:

  1. Повышение частоты дискретизации изображения, содержащего произвольные случайные значения, с помощью целочисленного коэффициента, а затем уменьшение частоты дискретизации с помощью того же целочисленного коэффициента должно привести к тому же изображению с минимальными изменениями численно.
  2. Повышение / уменьшение выборки изображения, состоящего только из одного однородного значения, с последующей противоположной операцией, должно привести к однородному изображению, состоящему из того же значения, с минимальными числовыми отклонениями.
  3. Повторное применение пар повышающей / понижающей выборки должно максимально уменьшить сдвиг в содержании изображения.
rwong
источник
Что вы имеете в виду, когда преобразование функции sinc составляет «почти» 1 и 0 в соответствующих областях?
@Tim: явление Гиббса вблизи частоты среза фильтра sinc.
Rwong
2
Повторная выборка Sinc имеет смысл только для сигналов, которые воспринимаются / обрабатываются в частотной области, например аудио. Изображения воспринимаются, по меньшей мере , приблизительно, в пространственном домене (это спорно, вполне возможно , что некоторые восприятие повторяющихся паттернов в частотной области) и любой частотной области на основе преобразования производит неприятные искажения (звон, и т.д.) в Пространственный домен. По сути, любая операция свертки / линейная операция с любыми отрицательными коэффициентами приведет к появлению неприятных артефактов, а любая операция со всеми неотрицательными коэффициентами приведет к размытию.
R .. GitHub ОСТАНОВИТЬ ЛЬДА
6

Вы правы в том, что усреднение по площади довольно близко к «наиболее правильному», которое вы можете получить, но проблема заключается в непоследовательном поведении при уменьшении резкой линии ширины-N с коэффициентом N. Если расположение линии выровнено по модулю N, вы получите четкую 1-пиксельную линию, но если это примерно N / 2 mod N, вы получите очень размытую линию (2 пикселя в ширину при половинной интенсивности). Это может выглядеть очень плохо, и с нелинейной гаммой, это даже приведет к различиям в интенсивности. (В идеале вся повторная выборка должна выполняться с гамма-коррекцией для линейной шкалы интенсивности, но на практике это практически никто не делает, потому что это действительно дорого.)

Если вы хотите улучшить это, вы должны сначала принять тот факт, что в некоторых случаях невозможно уменьшить размытие, поэтому единственный способ получить равномерный вывод - это увеличить размытие. Идеальный способ - использовать гауссово ядро ​​с радиусом больше N / 2, а не ступенчатую функцию, в качестве функции свертки с исходным изображением. Однако дешевый способ закрепления аппроксимации, если у вас уже есть реализация усреднения по N-N-областям, это просто применить (1 / 4,1 / 2,1 / 4) свертку размытия для результирующей пониженной дискретизации. образ.

R .. GitHub ОСТАНОВИТЬ, ПОМОГАЯ ЛЕД
источник