Ask Your Question

generating dynamic motion blur

asked 2016-09-06 11:54:24 -0500

Jack000 gravatar image

say I have some frames of a CG animation and wish to apply motion blur as a post-processing effect (simulated by this waterfall)

image description

I could use dense optical flow to generate a vector field, which might look like this:

image description

now I'd like to blur the original image in the direction of the vector field for the motion blur effect. What's the best way to do this?

my first thought is to apply a convolution filter for motion blur, but the kernel will have to change based on the value of the vector field. I'm hoping there's some function in opencv that does this that I'm ignorant of, or I'll have to implement the convolution myself in a loop?

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2016-09-06 18:45:17 -0500

Tetragramm gravatar image

Yep, you're going to have to do that yourself. I suggest segmenting the motion into a few different motions, say 16 or 32, and then combining the results. That's likely to be a lot faster than a different blur at every pixel.

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2016-09-06 11:54:24 -0500

Seen: 1,151 times

Last updated: Sep 06 '16