CPC G06V 20/47 (2022.01) [G06V 20/41 (2022.01); G11B 27/034 (2013.01)] | 20 Claims |
1. A server having an electronic processor configured to execute computer instructions to:
a) receive a plurality of video clips, each video clip comprised of video frames from a mobile device that were captured during a first time period;
b) process the plurality of video clips to identify one or more characteristics in respective video frames of the plurality of video clips;
c) generate a set of selected video clips having the identified characteristics in the respective video frames, the one or more characteristics comprising at least one of whether a camera from which the video clips were taken was obstructed or overexposed, a stability of the video frames of the video clip, or whether the video frames contain pets, humans, a specified object, human speech, or human emotions;
d) automatically trim the set of selected video clips in response to rules to generate trimmed video clip segments, the rules specifying inclusion of selected video clips including at least one of a human, a pet, the specified object, human emotions, or human speech;
e) determine whether the trimmed video clip segments are suitable to generate video highlights based on a number of the trimmed video clip segments and a combined length in time of the trimmed video clip segments by comparing a combined length in time of the trimmed video clip segments to a predetermined time limit, when the combined length in time of the trimmed video clip segments exceed the predetermined time limit removing similar segments, comparing a length in time of the trimmed video clip segments with similar segments removed to the predetermined time limit, and when the combined length in time of the trimmed video clip segments with similar segments removed exceeds the predetermined time limit removing trimmed video clip segments based on a similarity score to retain trimmed video clip segments having at least one of a higher quality or a shorter duration than a similar trimmed video clip segment;
f) iterate step e) until the trimmed video clip segments have a length that does not exceed the predetermined time limit;
g) send the trimmed video clip segments having the length that does not exceed the predetermined time limit as video highlights to the mobile device; and
h) repeat steps a) through g) during a second time period after the first time period for a plurality of video clips received during the second time period.
|