Ripple Image Distortions Effect Алгоритм преобразования UV на языке PHP или C, аналогичный тому, что используется в GIMP.

Я работал над алгоритмом преобразования координатного пространства UV в XY для применения искажений изображения на основе простых уравнений в PHP.

В моем алгоритме используется четырехточечная билинейная интерполяция.

И вычисляет положение в исходном пространстве XY для каждой точки в пространстве UV.

Я попытался получить эффект Ripple, подобный тому, который можно увидеть в GIMP. Я использовал переводы x = u+2*sin(u/5) и y = v+2*sin(v/5).

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

Может ли кто-нибудь указать мне лучший способ добиться этого эффекта.

Или бесплатные простые в использовании ранее существовавшие алгоритмы либо на PHP, либо на другом языке с C-подобным синтаксисом.

Пока что все, что мне удалось сделать с Google, — это готовые алгоритмы, которые являются частью библиотеки, выставленной на продажу.


person Glen Fletcher    schedule 19.12.2010    source источник
comment
Можете ли вы добавить скриншот?   -  person Cœur    schedule 08.03.2018


Ответы (1)


Я попытался получить эффект Ripple, подобный тому, который можно увидеть в GIMP. Я использовал переводы x = u+2*sin(u/5) и y = v+2*sin(v/5).

Мне нужно было использовать x = u+2*sin(v/5) и y = v+2*sin(u/5), чтобы получить ожидаемый эффект.

person Glen Fletcher    schedule 28.12.2010