Skip to main content
. 2012 May 23;9(75):2624–2638. doi: 10.1098/rsif.2012.0150

Table 1.

Mosquito tracking algorithm.

Input: Sequence of synced images from a stereo-camera set-up, camera calibration matrices, parameters in table 2
Output: Estimated three-dimensional mosquito trajectories
For each time step k:
(1) Extract measurements: model each blob as a straight line and find the midpoint and endpoints.
(2) Find missing measurements, if any: ensure that each hypothesized target has at least one measurement within the gating volume; if not, lower the intensity threshold. If a measurement is found append it to the existing set of measurements.
(3) Validate: use the epipolar constraint (3.2) to generate valid measurement pairs, one from each camera view.
(4) Cluster: use gating volume of each target within a cluster to add measurements to that cluster. A cluster is the smallest set of measurements and targets that exist independently; combine/divide existing clusters as needed.
(5) Compute hypotheses: generate hypotheses for each cluster, and compute probabilities.
Resolve occlusions: if an occlusion is detected split the image blob into individual streaks as described in §3.3 and recompute the hypotheses.
(6) Hypothesis reduction: based on the most probable hypothesis at k and scanback range Inline graphic, reduce the number of hypotheses at Inline graphic to a single assignment.
(7) Initialize and update: initialize tentative targets from unassociated measurement pairs; resample target states based on hypotheses using the three-dimensional estimate and velocity likelihood function (3.6). Each new target forms a new cluster.
(8) Predict: use the constant velocity motion model with random (Gaussian) disturbance to propagate hypotheses to time step Inline graphic.