реклама на сайте
подробности

 
 
> Бикубическая интерполяция изображений, Поделитесь опытом
irum4
сообщение Feb 24 2006, 13:03
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 224
Регистрация: 18-06-04
Пользователь №: 54



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


--------------------
Электроника - наука о контактах.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
bav
сообщение Mar 14 2006, 09:15
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 693
Регистрация: 21-06-05
Из: Санкт-Петербург
Пользователь №: 6 184



Нет, частотная это не сплайн.
суть заключается в следующем (это также исп. для передискретизации звука)
- по отсчетам делаем прямое преобразование Фурье
- делаем обратное преобразование Фурье, но пространственных отсчетов используем бОльше. Т. е. в аргумент синуса/косинуса подставляем отсчеты с меньшим шагом. - это для увеличения. Для уменьшения - срезаем высокие частоты (лучше сделать регуляризацию) и восстанавливаем с меньшим количеством отсчетов

по сути, задача сводится к вычисленю свертки. Результат - интенсивность пиксела. Ядро для свертки - синк, гаусс и т. д. Смещение центра зависит от смещения между пикселами. Напр увеличение в два раза: мы знаем интенсивности NxM пикселов, а требуется найти интенсивность 2Nx2M - отсюда ищем интенсивность между пикселами (интерполируем). т. к. искомые находятся между (по середине) - вершина функции в ядре будет по-середине.

по-поводу сплайнов - в Яндексе наберите ключевые слова "сплайн исходник алгоритм и т. п."
в кратце суть:
интерполировать можно с помощью функции n -ого порядка. Но при величине степени выше 5 - полином становится не устойчивым (можете поэкспериментировать в exel, с помощью линий тренда). Обычно исп. порядок 3, можно иногда 4 (если надо сильно подчеркнуть границы, но осторожно). и кусочками интерполируют соседние пикселы ("кусочно кубическая" интерполяция). Для того, чтобы небыло ломаных линий, вводят условия (первые и вторые производные должны быть равны) для сохранения гладкости кривой. В сплайнах есть минус - значение одного пиксела влияет на значение другого, даже если они расположены далеко друг от друга (из-за вводимых условий)

для начала лучше начать экспериментировать с кусочно-линейной интерполяцией. Советы для облегчения жизни:
иногда трудно сообразить, как работать с 2D координатами. Поэтому рекомендую картинку разбить на строки. Каждую строку обработать (изменть масштаб) и эту вытянутую/сжатую картинку сохранить в новом месте. Затем полученную картинку разбить на столбцы и обработать по столбчам. Иногда такая реализация работает быстрее.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 21:40
Рейтинг@Mail.ru


Страница сгенерированна за 0.01371 секунд с 7
ELECTRONIX ©2004-2016