3

Я пытаюсь реализовать изображение с понижающей дискретизацией с помощью Lanczos2.Изображение 2x понижающая дискретизация с фильтром Lanczos

Однако ядро, кажется, имеет нули всюду (поскольку sin (pi * x) = 0, если x целое) except at the center pixel.

Таким образом, если коэффициент понижающей дискретизации является целым числом (например, размер выходного файла составляет 1/2 от исходного размера в каждом измерении), то понижающая дискретизация Lanczos дает тот же результат, что и интерполяция ближайшего соседа (просто принимая все остальные пиксель в 2X понижающей дискретизации).

Я считаю, что это не так, поэтому мой вопрос: Что мне не хватает?

Как использовать фильтр lanczos2 для 2x понижающей дискретизации и, как ожидается, будет отличаться от простого восприятия любого другого пикселя?

ответ

3

Ядро для 2х субдискретизации приведено в разделе «прореживание на коэффициент 2 с функцией синк Lanczos2» на стр 10 reference you linked, с коэффициентами:

0, -0.032, 0, 0.284, 0.496, 0.284, 0, -0.032, 0 

Это ядро ​​получается путем оценки заданная функция lanczos2 (x) при значениях x=0.5n, где n - номер выборки (целое число). Это отражает тот факт, что скорость вывода составляет половину исходной частоты дискретизации (для этого требуется фильтр полуполосы перед прореживанием пикселей, чтобы избежать сглаживания).

PS: Ядро с нулями всюду, кроме центрального пикселя, которое вы получили, обычно будет использоваться (хотя реализация обычно оптимизирует это ядро ​​как простую копию пикселя) в сочетании с ядром фазы 1/2 для интерполяция в 2 раза.

 Смежные вопросы

  • Нет связанных вопросов^_^