the average speed of a thrown object.
The parabolic trajectories that belong to a thrown
object must be oriented in the right direction: they
must have a maximum and not a minimum. There-
fore, the parameter a should be positive (if the origin
is in the bottom left corner). There is also a certain
upper limit for this parameter, because the parabola
cannot be very narrow. This helps to filter out some
false detections.
The parabolas which passed all the tests are saved
in a queue. The parameters a, b, c, x
start
and x
stop
are
saved, along with the frame index of the detection
which serves as a timestamp. x
start
and x
stop
defines
the x coordinates of the ending points of the parabola.
Figure 5 shows an example of detected parabolas
after throwing a backpack through the fence.
Figure 5: Parabolas found based on the motion history of
tracked points.
2.4.2 Merging Trajectories
The final step of the algorithm is run once a parabola
of a certain age is present in the list of detected
parabolas. Age is determined by the associated frame
index of the parabola. This introduces a small delay
before the algorithm produces its final output, but it
also allows for all the parabolas related to a single
drop to be merged together. The delay is about 1 sec-
onds.
The main function of this step is to find similar-
ities in the list of detected parabolas. In order to do
this, a measure for parabola similarity must be de-
fined. The parabolas that look similar and are near
each other should be merged. For this, three major
conditions must be met: First, the maximums of the
parabolas (which are points (x
max,i
, y
max,i
)) should be
near each other. The limit for the distance is deter-
mined in an empirical way. Second, the a parameters
should be close. Third, their base must overlap. The
base of a parabola is defined as the range of x values
under the arc of the parabola. This criterion is easy to
meet when an object is thrown: there are many par-
allel parabolas, so it is very unlikely that they are all
disconnected in such way that no bases overlap. Yet,
it helps a lot to prevent false alarms when the line of
the fence is taken into account. The reason for this is
that the starting and ending points are more certain.
The algorithm does the merging process in two
passes, and uses heuristics for faster and easier imple-
mentation. After a parabola old enough is found, the
search begins for parabolas similar to it. The average
of their maximum and their a parameter is calculated.
The second pass uses these values to find a final set of
parabolas. This eliminates the error that could arise
when a the oldest parabola is one with a misdetected
placement.
When similar parabolas are found, they are aver-
aged, and the final trajectory is found. The set of sim-
ilar parabolas are removed from the list.
After the final trajectory is found, an additional fil-
tering step is applied. The starting and ending point of
the parabola is connected with a straight line, and the
absolute value of the angle of the line is checked. If
the angle is too big, the parabola is highly asymmetric
and is discarded.
2.4.3 Considering the Line of the Fence
If we know the line of the fence, the performance of
the algorithm can be improved. In our case, we tuned
the parameters of the algorithm so that it gives more
false positive matches than false negatives. There is
normally no motion that crosses the line of the fence.
So if the detected parabola crosses the line of the
fence, we can be certain that an object is thrown. Note
that the line of the fence itself is not enough to make
the decision: the parabola detection is important for
filtering out a false event such as birds flying above
the fence, or a branch of a tree wiggling in the breeze.
In steady camera surveillance systems the line of
the fence is well known. The algorithm checks for
line crossing by checking if the starting and ending
points of the parabolas are on the opposite side of the
line assigned to the fence. If they are, the trajectory
is classified as a trajectory of a thrown object, and an
event is generated.
Figure 6 shows the trajectory of the backpack.
Bold red parabola is the final match.
3 EXPERIMENTS
We were able to successfully detect thrown objects in
DetectingObjectsThrownoverFenceinOutdoorScenes
597