Image Processing Reference
In-Depth Information
Fig. 9.3 ( a ) Framework for updating and predicting the state. ( b ) The effect of predicting the
position of the object in the next image
9.2
Prediction
Very often the object we want to follow is moving much slower than the framerate
of the camera. As a consequence the object is not moving very much from one
image to the next. So, having located an object in one image will allow us to predict
where the object will approximately be in the next image. We want to exploit this
fact when detecting the object. This is done by introducing a ROI centered at the
position where we predict the object to be and only analyze the pixels within the
ROI, see Fig. 9.3 . This will save a significant amount of processing time.
The question is now where we predict the object to be. For this purpose a motion
model is introduced, that is, a model explaining how the object is moving. The most
simple model is a zeroth order linear motion model . It predicts the object to be
exactly at the same position in the next image as it is in the current image. The next
of the linear motion models is the first order linear motion model , which includes the
velocity of the object. Given the current position p(t) =[ x(t),y(t) ]
and velocity
v(t) =[ v x (t), v y (t) ]
of the object, the predicted position will be
p (t +
1 ) = v(t) · t + p(t)
(9.1)
where p (t +
1 ) is the predicted position and t is the time between p(t) and
p(t +
1 ) . Often the framerate is constant and t is simply the number of images
predicted into the future. Usually we are just interested in predicting one image
ahead and hence t can be removed from the equation.
The second order linear motion model also includes the current acceleration of
the object a(t) =[ a x (t), a y (t) ]
and the predicted position is given as
1
p (t
2 · a(t)
+ v(t)
+ p(t)
t 2
+
1 )
=
·
·
t
(9.2)
Again, with a fixed framerate and only predicting the next image, the two
terms become 1 and can therefore be ignored.
Motion models are not necessarily linear. If we for example are following an
object being thrown, we need a model that includes gravity. Another example could
be when tracking an object moving in a circle, the motion model would of course
Search WWH ::

Custom Search