Automatic video object extraction
AssigneeMicrosoft Corporation
InventorsJinhui Pan, Shipeng Li, Ya-Qin Zhang
Life of this patent
Estimating the term…
Abstract
Automatic video object extraction that defines substantially precise objects is disclosed. In one embodiment, color segmentation and motion segmentation are performed on a source video. The color segmentation segments the video by substantially uniform color regions thereof. The motion segmentation segments the video by moving regions thereof. The color regions and the moving regions are then combined to define the video objects. In varying embodiments, pre-processing and post-processing is performed to further clean the source video and the video objects defined, respectively.
Claims20
A computer implemented method for extracting objects from a source video comprising:
- performing motion segmentation on a plurality of frames of the source video to segment the source video by moving regions thereof to define basic contours of the objects of the source video;
- performing color segmentation on a frame of the source video to segment the source video by substantially uniform color regions thereof to define more precise boundaries of the objects of the source video as measured against the basic contours of the objects of the source video as defined by the motion segmentation;
- and,
- combining at least the moving regions resulting from the motion segmentation and the substantially uniform color regions resulting from the color segmentation to define still more precisely the objects of the source video by, at least partially, deeming a substantially uniform color region to be part of a moving object if a percent of the substantially uniform color region that is assignable to one or more moving regions exceeds a predetermined threshold.
A computer-readable medium having computer instructions stored thereon for execution by a processor to perform a method comprising:
- generating a plurality of masks from a source video having a plurality of frames, the plurality of masks including at least a color segmentation mask, a motion segmentation mask, and a frame difference mask;
- wherein the frame difference mask is generated from at least two frames of the plurality of frames without using another mask;
- and,
- combining the plurality of masks to define a plurality of objects of the source video;
- wherein generating the plurality of masks comprises generating at least the color segmentation mask to define substantially precise boundaries of the objects, the motion segmentation mask to define approximate boundaries of the objects, and the frame difference mask to correct errors within the motion segmentation mask;
- and
- wherein the plurality of objects of the source video resulting from the combining are more precise than the substantially precise boundaries of the objects defined by the color segmentation mask, which are more precise than the approximate boundaries of the objects defined by the motion segmentation mask.
A computer comprising:
- a processor;
- at least one computer readable medium to store data representing:
- at least two frames of a plurality of frames of a source video, and,
- a plurality of objects extracted from the source video;
- and,
- a computer program executed by the processor from the at least one computer readable medium and designed to extract the plurality of objects from the source video by generating a plurality of masks from the source video and then combining the plurality of masks by, at least partially, deeming a substantially uniform color region to be part of a moving object if a percent of the substantially uniform color region that is assignable to one or more moving regions exceeds a predetermined threshold, the plurality of masks including:
- a motion segmentation mask that segments the video by substantially uniform color regions to define basic contours of the plurality of objects of the source video based on moving regions thereof,
- a color segmentation mask that segments the video by moving regions to define more precise boundaries, as compared to the basic contours, of the plurality of objects of the source video based on substantially uniform color regions thereof, and
- a frame difference mask.
At least one computer-readable medium having computer instructions stored thereon for execution by a processor to transform a general purpose computer to a special purpose computer comprising:
- means for storing data representing:
- at least two frames of a plurality of frames of a source video, and,
- a plurality of objects extracted from the source video;
- and,
- means for:
- (a) generating a plurality of masks from the source video, the plurality of masks including:
- a color segmentation mask segmenting the source video by substantially uniform color regions to define substantially precise boundaries of the plurality of objects, a motion segmentation mask segmenting the source video by moving regions thereof to define approximate boundaries of the plurality of objects, and a frame difference mask to reflect differences between the at least two frames of the source video, and,
- (b) combining the plurality of masks to extract the plurality of objects from the source video by, at least partially, deeming a substantially uniform color region to be part of a moving object if a percent of the substantially uniform color region that is assignable to one or more moving regions exceeds a predetermined threshold.
At least one computer-readable medium having computer instructions stored thereon for execution by a processor to perform a method comprising:
- performing motion segmentation on at least three frames of a plurality of frames of video to segment the video by moving regions and to thereby define basic contours of objects of the video;
- performing color segmentation on at least one frame of the plurality of frames of the video to segment the video by substantially uniform color regions and to thereby define more precise boundaries of the objects of the video as compared to the basic contours of the objects of the video as defined by the motion segmentation;
- and,
- combining the substantially uniform color regions resulting from the color segmentation and the moving regions resulting from the motion segmentation to further define the objects of the video by, at least partially, deeming a substantially uniform color region to be part of a moving object if a percent of the substantially uniform color region that is assignable to one or more moving regions exceeds a predetermined threshold.
At least one computer-readable medium having computer instructions stored thereon for execution by a processor to perform a method comprising:
- generating a color segmentation mask that segments the video by substantially uniform color regions to define contours of objects of a video to a first precision;
- generating a motion segmentation mask that segments the video by moving regions to define the contours of the objects of the video to a second precision;
- generating a frame difference mask that reflects differences in the video between a first frame and a second frame of the video on a per pixel basis responsive to a predetermined threshold;
- and
- combining the color segmentation mask, the motion segmentation mask, and the frame difference mask to define the objects of the video by, at least partially, deeming a substantially uniform color region to be part of a moving object if a percent of the substantially uniform color region that is assignable to one or more moving regions exceeds a predetermined threshold.
Dependencies are inferred from the claim text.