Как сделать изображение истории движения для презентации одним изображением?

Я работаю над проектом с распознаванием жестов. Теперь я хочу подготовить презентацию, в которой я могу показывать только изображения. У меня есть серия изображений, определяющих жест, и я хочу показать их на одном изображении, точно так же, как изображения истории движения показаны в литературе.

Мой вопрос прост, какие функции в opencv я могу использовать для создания изображения истории движения, используя, скажем, 10 или более изображений, определяющих движение руки.

В качестве примера у меня есть следующее изображение, и я хочу показать местоположение руки (непрозрачность напрямую зависит от привязки ко времени).

пример изображения

Я попытался использовать GIMP для объединения слоев с разной непрозрачностью, чтобы сделать то же самое, однако результат не очень хороший. вывод с помощью gimp


person masad    schedule 19.08.2012    source источник
comment
Я новичок в opencv, поэтому не уверен, что это лучший способ решить эту проблему, но, возможно, вы могли бы попытаться перебрать несколько изображений и добавить их в одно результирующее, используя addWeighted. Еще одна идея, которая приходит на ум, — поиграть с вычитателем фона и размер истории его изученного фона.   -  person George Profenza    schedule 20.08.2012


Ответы (1)


Вы можете использовать cv::updateMotionHistory
На самом деле OpenCV также демонстрирует использование в samples/c/motempl .с

person vinjn    schedule 20.08.2012
comment
updateMotionHistory работает только для одноканальных изображений. Я смог сделать это с помощью функции addWeighted. - person masad; 21.08.2012
comment
Кажется, что вы хотите просто альфа-смешивание всех изображений. updateMotionHistory может сделать больше, он может извлечь направление движения. - person vinjn; 27.08.2012