Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
GoodmanSemen
Зарегистрирован: 10.06.2005 Сообщения: 9
|
Добавлено: Ср Июн 15 2005 12:25 Заголовок сообщения: Дополнение про алгоритмы морфинга |
|
|
Исходные данные:
Две картинки в растровом виде.
Постановка задачи:
Написать програмку (ну или просто алгоритм), которая находила бы определенное количество промежуточных картинок между исходными.
Необходимое условие - объекты на картинке должны перемещаться.
Пример: летит мячик. засняли два положения мячика в разные моменты времени(разность не большая). Построить картинки, при поочередном просмотре которых создавалость впечатление, как-будто мы снимали эти промежуточные кадры сами.
Это для тех, кто просил уточнить задачу. |
|
Вернуться к началу |
|
|
vadims
Зарегистрирован: 08.06.2005 Сообщения: 8 Откуда: Казань
|
Добавлено: Чт Июн 16 2005 08:56 Заголовок сообщения: |
|
|
Такими вопросами особо не занимался
Помоему для решения подобных проблем нужно использовать мат. методы типа интерполяции сплайнами
Но, некоторое время назад мне пришлось реализовывать динамическую картинку и по логике задача сводится к тому что для каждой точки твоего объекта (например мячика) нужно определить какая точка из исходного (стоящего) объекта ей соответствовала.
Те нужно сделать мат. модель движения объекта
Например в простом случае, через интервал времени dT мячик сдвинулся по оси X на dX и по Y на dY, тогда каждую точку объекта через dT - (x,y) нужно искать по координатам (x-dX,y-dY)
Вообщем нарисовать вращающуюся грампластинку, да еще при ее наклоне в вертикальной плоскости у меня получилось |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Ср Июн 22 2005 18:55 Заголовок сообщения: |
|
|
Для мячика я бы думал в следующем направлении.
Пусть есть исходная S картинка и D - с конечным положением.
Получил бы изображение (D-S)^2 (попиксельно)
Те места, которые различаются будут иметь светлую маску на черном фоне. Исходя из этого определить вектор перемещения.
Вырезать образ шарика из S (одна и светлых областей маски) и залить вырезанное место соответствующей областью из D
Получим картинку без шариков (или с двумя шариками )
Далее на пустой фон накладывать изображение вырезанного шарика с векторным смещением.
Ну еще можно туда Blur добавить, чтобы замаскировать лестничный эффект |
|
Вернуться к началу |
|
|
|