Feature Track Length
Count how many cameras observe a particular 3D point.
In Structure from Motion, a track is the set of 2D observations of a single 3D point across multiple images. The track length is the number of images where the point is observed.
Longer tracks are valuable because:
- More observations lead to better triangulation accuracy
- They provide more constraints for bundle adjustment
- They help verify the correctness of feature matching
Typically, we filter out points with very short tracks (e.g., < 3) as they may be noise or outliers.
Example
track_length([True, True, False, True, False])
3
visibilityhas one entry per camera, in camera order: entry says whether the 3D point was detected and matched in image . Here there are 5 cameras.- The track is the set of cameras that see the point: cameras 0, 1 and 3. Cameras 2 and 4 contribute nothing, because the point was not observed there (occluded, out of frame, or the match was rejected).
- Writing for a visible camera and otherwise, the track length is .
- The output
3is a plain integer count, not a list of camera indices. It can range from (no camera sees the point) up to the number of cameras. - Notice that the order of the cameras does not matter, only how many are visible. With the usual "at least 3 views" filter this point just survives.
Constraints
- visibility: list of boolean values, one per camera
- Return count of True values (cameras that see the point)