Data Search, Parser, and Synchronization of Video and Telemetry Data
First Claim
1. A system for synchronizing unsynchronized encoded aerial video data and separately acquired telemetry data for generation of a map containing the aerial video data, the system comprising:
- a telemetry parser for receiving a user-defined acquisition time period and a telemetry data stream where the telemetry data stream includes telemetry data acquired at a sampling rate that has an associated acquisition time and parsing the telemetry data stream to locate telemetry data temporally proximate or within the user-defined acquisition time period;
a video frame extraction module for accessing an encoded aerial video data stream and decoding a portion of the encoded aerial video data stream into video frames having an associated video frame data time wherein the video frames are temporally proximate to or within the user-defined time period;
a synchronization module for synchronizing the telemetry data and the video frame data for the desired acquisition time period based upon the acquisition time and video frame data time; and
a filter for producing additional telemetry data so that there is telemetry data that corresponds to each video frame within the desired acquisition time period.
1 Assignment
0 Petitions
Accused Products
Abstract
A system is provided that can parse both telemetry data and corresponding encoded video data wherein the telemetry and video data are subsequently synchronized based upon temporal information, such as a time stamp. The telemetry data and the video data are originally unsynchronized and the data for each is acquired by a separate device. The acquiring devices may be located within or attached to an aerial vehicle. The system receives the telemetry data stream or file and the encoded video data stream or file and outputs a series of synchronized video images with telemetry data. Thus, there is telemetry information associated with each video image. The telemetry data may be acquired at a different rate than the video data. As a result, telemetry data may be interpolated or extrapolated to create telemetry data that corresponds to each video image. The present system operates in real-time, so that data acquired from aerial vehicles can be displayed on a map.
-
Citations
19 Claims
-
1. A system for synchronizing unsynchronized encoded aerial video data and separately acquired telemetry data for generation of a map containing the aerial video data, the system comprising:
-
a telemetry parser for receiving a user-defined acquisition time period and a telemetry data stream where the telemetry data stream includes telemetry data acquired at a sampling rate that has an associated acquisition time and parsing the telemetry data stream to locate telemetry data temporally proximate or within the user-defined acquisition time period; a video frame extraction module for accessing an encoded aerial video data stream and decoding a portion of the encoded aerial video data stream into video frames having an associated video frame data time wherein the video frames are temporally proximate to or within the user-defined time period; a synchronization module for synchronizing the telemetry data and the video frame data for the desired acquisition time period based upon the acquisition time and video frame data time; and a filter for producing additional telemetry data so that there is telemetry data that corresponds to each video frame within the desired acquisition time period. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for parsing telemetry data from a telemetry data file stored in key length value format based upon a desired temporal period, the method comprising:
-
receiving a first section of the telemetry data file; comparing the first section of the telemetry data file to an identified key; if the first section of the telemetry data file matches the identified key; identifying the length associated with the desired key; comparing a time stamp within the telemetry data to the desired temporal period; if the time stamp is temporally proximate or within the temporal period, saving data of a length equal to the identified length to a database structure based upon the identified key; if the time stamp is not temporally proximate to or within the temporal period discarding the telemetry data associated with the key and incrementing to a next byte of data from the telemetry data file. - View Dependent Claims (11, 12)
-
-
13. A method for synchronizing a telemetry data file and a separately acquired encoded video file, the method comprising:
-
receiving into a processor a data segment of a telemetry data file; comparing the data segment of the telemetry data file to an identified key; if the data segment of the telemetry data file does not match the identified key; incrementing to a next byte of data and repeating receiving and comparing; if the first section of the telemetry data file matches the identified key; identifying a length identifier associated with the desired key; identifying a telemetry time stamp within the telemetry data; if the telemetry time stamp is temporally proximate or within a user-defined temporal period, saving data from the telemetry data file of a length equal to the identified length to a database structure in memory based upon the identified key; if the telemetry time stamp is not temporally proximate to or within the user-defined temporal period, discarding the telemetry data associated with the key and incrementing to a next byte of data from the telemetry data file and repeating receiving, comparing, identifying and saving; receiving a data segment of an encoded video data file; for each presentation time stamp identified within the data segment of the encoded video data file, determining if a presentation time is proximate to or within the user-define temporal period; if the presentation time stamp is proximate to or within the user-defined temporal period, decoding video data and identifying frame time stamps for each video frame and saving to memory the video frames within the user-defined temporal period; synchronizing the telemetry data stored in memory with the video frames stored in memory based upon the user-defined temporal period; and storing the synchronized telemetry data and corresponding video frames to memory. - View Dependent Claims (14)
-
-
15. A method for parsing encoded video data to locate one or more video frames that have a desired time period, the method comprising:
-
receiving encoded video data into a processor; locating an approximate time stamp associated with a presentation time stamp; comparing the approximate time stamp to the desired time period; if the approximate time stamp is proximate to or within the desired time period, decoding a group of encoded video frames and identifying a frame time stamp for each decoded video frame; if the frame time stamp is within the desired time period, storing the associated frame and corresponding frame time stamp to memory for later retrieval. - View Dependent Claims (16, 17, 18, 19)
-
Specification