Pong

July21st 2016 Time-Stamp Registration

July 19th 2016 Improving Performance | | August 3rd 2016 R-Tree Revisited on Android

Some cameras tag images with the gps location, some don’t. It might also happen that no gps fix was available at the very moment the image was shot, but soon after their might have been a fix available. We still want to be able to geo-locate such an image, even though the location might only be approximate.

For this reason we perform a time-stamp registration of images, that do not have a gps tag. Time-stamp registration - as the name suggests - works by looking for the closest available point of the recorded geotracks, which matches the time-stamp of the image. If we end up with a hit that is close enough (say at most a minute off), we identify the respective geotrack location as the location of the image.

In more detail:

For each time-stamp of an item to register we maintain a cache of all the available track transmissions with matching time span. We assume that the cache includes all the available transmissions which overlap in time span or have a more recent starting time. Then the following cases need to be treated:

  • for each incoming item with a time-stamp to be registered
    • mark item to be unfinished yet
  • for each unfinished item
    • update track cache to include time-stamp and all more recent available track data
  • if cache is empty
    • then registration is currently not possible
    • keep item marked as unfinished
  • else cache is non-empty
    • if time span of cache includes time-stamp
      • find the two data points a and b in cache which have a recording time before and after the time-stamp
      • if the latter time point b is a starting point
        • then no registration is possible
        • mark item as finished
      • else we have a match between a and b
        • update location of item to be the interpolated point between a and b with respect to time-stamp
        • mark item as finished
    • else if time span starts after time-stamp
      • track data does not date back long enough
      • therefore registration is not possible
      • mark item as finished
    • else if time-stamp is more recent than time span
      • because more recent track data may still be missing
      • then registration is currently not possible
      • keep item marked as unfinished


July 19th 2016 Improving Performance | | August 3rd 2016 R-Tree Revisited on Android

Options: