![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Методы интерполяции
DimKa © (2005-03-28 11:40:00)Не мог бы кто-нибудь дать ссылку(и) на статьи по интерполяционным методам. Нужны собственно формулы, оценки качества различных методов и временные оценки. Необходимо качественно и быстро изменить размеры изображения (resampling). Заранее спасибо.
Jeer (2005-03-30 12:17:00) [1]А ты, значит-ся, все без функций пишешь ?
Да еще на 64-битном асме ?
Ай молодца !
Скачай JCL и разбирайся.
Вот оценка веса (яркости пиксела одного из каналов RGB в зависимости от удаления от центра) в Stretch.
Weight := Round(255 * Filter((Center - J) * OldScale) * OldScale);
Filter - и есть функция интерполяции
DimKa (2005-03-30 11:57:00) [2]
> Jeer ©
Не, не позрачно, что на вход функции подается?
И если не ошибаюсь такие интерполяторы (использующие функции) черезчур ресурсоемкие (медленные).
Jeer (2005-03-29 12:38:00) [3]Вроде, все прозрачно:)
function BitmapTriangleFilter(Value: Single): Single;
begin
if Value < 0.0 then
Value := -Value;
if Value < 1.0 then
Result := 1.0 - Value
else
Result := 0.0;
end;
DimKa (2005-03-29 09:37:00) [4]
> Jeer ©
Спасибо за ответ, но это не то, что я хотел. Мне нужно их описание (как фактически они работают - формулы для вычислений) ... кажется я уже это говорил.
Jeer (2005-03-28 18:33:00) [5]1.Был такой FastBMP.
Интерполяция для 5-6 методов.
2. В JCL есть:
{ resampling support types }
TResamplingFilter = (rfBox, rfTriangle, rfHermite, rfBell, rfSpline, rfLanczos3, rfMitchell);
DimKa (2005-03-28 16:53:00) [6]
> Jeer: Проще готовыми воспользоваться
Дык готовые где бы взять... (не в составе компонент)
Jeer (2005-03-28 14:04:00) [7]Проще готовыми воспользоваться, если только не дисер пишешь.