Time to contact

asked 2017-08-10 00:19:09 -0500

qwertyio gravatar image


I'm struggling wrapping my brain around how to estimating time to contact using motion vectors ( or maybe expansion cues?) from optical flow. I have tried reading some papers on the topics, but so far I'm unable to decipher and translate the theory into code. If someone can point me in the right direction I would really appreciate it.


edit retag flag offensive close merge delete


it's a bit unclear, what your situation is, where you start from. can you explain ? what are you trying to achieve ?

berak gravatar imageberak ( 2017-08-10 00:32:55 -0500 )edit

I'm working on a project that will serve as real time obstacle avoidance for a robot that has a monocular camera. I've implemented KLT and need to estimate the urgency of objects in enviroment for the navigation system. Based on my own research I think using time to contact is the best method to achieve this?

qwertyio gravatar imageqwertyio ( 2017-08-10 00:46:53 -0500 )edit

That looks to be a good plan based on what I've just read. http://opticflow.bu.edu/research/time-to-contact-estimation

It's up to you to turn the optical flow into the size of an object. Which shouldn't be too hard. Do optical flow, then any pair of points you can calculate the expansion. Dense optical flow will let you average over the points in a window or a sampling around it, helping filter out outliers or things moving sideways.

Expansion = (distance between points after flow - distance before flow) / (distance before flow).

Tetragramm gravatar imageTetragramm ( 2017-08-14 20:33:36 -0500 )edit

Thank you for your help, looks like the this is what I was looking for.

qwertyio gravatar imageqwertyio ( 2017-08-16 19:58:21 -0500 )edit