Accelerometer / gyro-facilitated video stabilization
AssigneeApple Inc.
InventorsYuxin Liu, Xiaojin Shi, James Oliver Normile, Hsi-Jung Wu
Life of this patent
Estimating the term…
Abstract
Embodiments of the present invention provide a control system for video processes that selectively control the operation of motion stabilization processes. According to the present invention, motion sensor data indicative of motion of a mobile device may be received and processed. A determination may be made by comparing processed motion sensor data to a threshold. Based on the determination, motion stabilization may be suspended on select portions of a captured video sequence.
Claims34
A video processing method, comprising:
- capturing video via a camera to generate a captured video sequence,
- aggregating motion sample data from a motion detection device over a period of each video frame in the captured video sequence, the motion sample data being generated by the motion detection device at a rate in excess of one motion sample per video frame and each motion sample generated during the period of a single video frame represents motion of the camera at a different time during the period,
- comparing the aggregated motion data corresponding to an amount of camera motion for each frame to a threshold,
- identifying, based on the comparison, portions of the captured video sequence that represent a scene change, and
- performing video stabilization on portions of the captured video sequence that are outside the scene change.
A video processing method, comprising:
- estimating motion of a camera device for each video frame in a video sequence based on motion sample data from a camera motion detector, the motion sample data being generated by the camera motion detector at a rate in excess of one motion sample per video frame to provide a plurality of motion samples for each video frame and each motion sample of the plurality of motion samples for each video frame represents motion of the camera at a different point in time,
- comparing the estimated motion of each video frame to a threshold, and
- for each frame in a captured video sequence, performing video stabilization on the video sequence if the motion comparisons are below the threshold both for the respective frame and for a predetermined number of frames prior to the respective frame.
A video processing method, comprising:
- estimating motion of a camera device for each video frame in a video sequence based on motion sample data from a camera motion detector, the motion sample data being generated by the camera motion detector at a rate in excess of one motion sample per video frame to provide a plurality of motion samples for each video frame and each motion sample of the plurality of motion samples for each video frame represents motion of the camera at a different point in time,
- comparing the estimated motion of each video frame to a threshold,
- when the estimated motion crosses the threshold, determining if the estimated motion remains on a crossed side of the threshold for a predetermined number of frames, and
- if so, changing operational state of a video stabilization process respectively between an enabled state and a disabled state.
Control apparatus for a video stabilization processor comprising:
- a motion detector processor to generate estimated motion of a camera for each video frame in a video sequence based on motion sample data received from a motion sensor, the motion sample data being generated by the motion sensor at a rate in excess of one motion sample per video frame to provide a plurality of motion samples for each video frame and each motion sample of the plurality of motion samples for each video frame represents motion of the camera at a different point in time,
- a scene change detector to compare the estimated camera motion to a threshold and to identify scene changes within portions of a captured video sequence based on the comparison, and
- a video stabilization unit selectively enabled or disabled based on the identification from the scene change detector.
Computer readable medium storing program instructions that, when executed by a processor, cause the processor to:
- estimate motion of a camera device for each video frame in a video sequence based on motion sample data from a camera motion detector, the motion sample data being generated by the camera motion detector at a rate in excess of one motion sample per video frame to provide a plurality of motion samples for each video frame and each motion sample of the plurality of motion samples for each video frame represents motion of the camera at a different point in time,
- compare the estimated motion of each video frame to a threshold, and
- for each frame in a captured video sequence, perform a video stabilization process on the video sequence if the motion comparisons are below the threshold both for the respective frame and for a predetermined number of frames prior to the respective frame.
Dependencies are inferred from the claim text.