smoothScale избражений

  • Автор темы Dmitry
  • Дата начала
Статус
Закрыто для дальнейших ответов.
D

Dmitry

Гость
#1
срочно понадобился алгоритм "гладкого" масштабирования изображений, представленний в виде unsigned char* масива в формате 32 bit (RGBA). Не подскажете где взять ?

спасибо.
 
P

Pete

Гость
#2
Подробнее можно, что вы понимаете под словом 'гладкое'? Если про отсутсвие алиасинга, так он возникает только при уменьшении размера (см. теорему Котельникова), если предворительно по изображению пройтись Gaussian Filter с sigma=2.0, то алиасинга не будет при ресэмплинге. Из наиболее простых и нормальных (относительно) по качеству: алгоритм бикубической интерполяции, думаю в нете полно инфы. Инфу по более сложным алгоритмам можно поискать здесь: MSU LAB
либо статьи в гугле по ключевым словам, smart image scaling, image resamlping/upsampling и т.д.
 
G

Guest

Гость
#3
вот-вот - именно бикубической интерполяции! забыл как называется =))) А теорема Котельникова вроде как про частоту дискретного сигнала и частоту дискретизации ? Ща поищу - спасибо.
 
D

Dmitry

Гость
#4
да, забыл - в 100% случаев мне надо ресэмплинг вниз, т.е. уменьшать ищображение.
 
P

Pete

Гость
#5
Теорема Котельникова гласит, что максимальная представимая частота в сигнале равна половине частоты дискретизации. Уменьшая размер изображения ты уменьшаешь частоту дискретизации по сути, в результате выскоие частоты которые ранее присутствовали на изображении не могут быть представлены на уменьшенной копии. Это и есть причина алиасинга. Чтобы его избежать тебе надо понизить макс. частоту на исходном изображении в два раза и затем уже уменьшать изображение. Фишка заключается в том, как узнать какая макс. частота присутствует в сигнале и соответственно определить параметры фильтра. Тут я думаю без FFT не обойтись, хотя в большинстве случаев гауссовый фильтр тоже вполне пойдет.
 
D

Dmitry

Гость
#6
:o

Вашему запросу - бикубическая интерполяция - не соответствует ни одна статья в категории sci.image.processing
 
Статус
Закрыто для дальнейших ответов.