Изменение размеров изображения методом ClearIQZ

Для неординарных вопросов. Если вы опытный программист, попавший в трудную ситуацию, — вам сюда.

Модератор: gaidar

Правила форума
Этот раздел не предназначен для того, чтобы вы адресовали свою проблему профессионалам.
Этот раздел предназначен для профессионалов, которые столкнулись с проблемой и не могут решить ее самостоятельно.
Если вы считаете себя профессионалом, а свою проблему сложной — вам сюда.
Если модератор посчитает, что вы ошиблись, то на первый раз он перенесет ваше сообщение в основной раздел без последствий для автора. Во второй раз тема будет закрыта, а автору будет выписано нарушение. В третий раз автор будет забанен.
Anaho
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 20.01.2010 (Ср) 12:59

Изменение размеров изображения методом ClearIQZ

Сообщение Anaho » 10.07.2010 (Сб) 17:15

Здравствуйте, я делаю проект, где изображения представлены в виде массивов цветов.
Уже сделал несколько методов вывода изображения с различными вариантами сглаживания. Столкнулся с трудностью написать алгоритм качественного сглаживания (Пробовал билинейную интерполяцию). Проверил несколько методов. Самый лучший, по моему мнению, ClearIQZ из ACDPro 3. Решил его реализовать в своём проекте. Искал в интернете информацию по нему, но её оказалось немного и ни одного примера кода. Если кто знает алгоритм, помогите пожалуйста.
Очень интересно узнать как этот метод качественно изменяет размеры изображений, увеличенные во много раз.
Вложения
Resize.zip
Проект
(257.04 Кб) Скачиваний: 310

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Изменение размеров изображения методом ClearIQZ

Сообщение Денис » 12.07.2010 (Пн) 9:17

Вот такой есть метод.
http://en.wikipedia.org/wiki/Lanczos_resampling
Выглядит неплохо, работает шустро. Всем рекомендую.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Anaho
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 20.01.2010 (Ср) 12:59

Re: Изменение размеров изображения методом ClearIQZ

Сообщение Anaho » 14.07.2010 (Ср) 9:08

Спасибо большое, я знаю метод Lanczos, но он хуже, по моему мнению, чем ClearIQZ. Сравнение во вложении.
Вложения
Methods.png
Methods.png (230.57 Кб) Просмотров: 4533

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Re: Изменение размеров изображения методом ClearIQZ

Сообщение BV » 01.08.2010 (Вс) 11:56

Судя по картинке, используется обычное усреднение, с, возможно, легкой интерполяцией по малому радиусу
Усреднение работает по принципу нахождения среднего значения компонента цвета в определенном наборе пикселей.
Если не пугает C++, можешь взять мою реализацию фильтра http://forum.sources.ru/index.php?showtopic=208226
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

Anaho
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 20.01.2010 (Ср) 12:59

Re: Изменение размеров изображения методом ClearIQZ

Сообщение Anaho » 02.08.2010 (Пн) 18:03

Спасибо, буду разбираться.


Вернуться в Раздел для Профессионалов

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

    TopList