Camera interaction experiments from peko on Vimeo.
Описание:
Для управления объектами можно использовать три механизма:
- Поиск контрастного объекта (в данном случае яркого)
- Обнаружение движения
- Смешение 1 и 2
Алгоритм 1ого принципа приблизительно следующий:
- Выделяем нужный цветовой канал
- Поднимаем контраст
- На основе яркого пятна собираем градиент поля скорости
R канал – Vx, G канал – Vy. - Меняя угол градиента скорости можно управлять свойством пятна:
- 0 градусов – разгоняющее поле (холм);
- 90 градусов – вихревое поле (по часовой)
- 180 градусов – собирающее поле (яма)
- -90 градусов – яма (против часовой)
- Смягчаем поле с помощью blur фильтра
2ой алгоритм немного проще:
- Находим разницу между текущим и предыдущим значением
- Чтобы избежать рывков – фейдим результат с кешем
- Собираем градиент поля скорости как и в 1 варианте
Вся обработка изборажений довольно быстро производится при помощи битмап–фильтров и матриц цветовой трансформации. Кроме этого само изображение можно взять довольно маленьким.
Забавно.. А если взять пару камер то можно еще стерео эффект учитывать чтоб юзать только близкие предметы)