Patent Document ID: 8917764
Application ID: 13204738
Patent Status: 1

Claim One:
1. A method for virtualization of ambient environments in live video streaming, comprising: pre-processing a current frame in a live video stream using a spatial scaling algorithm and a sub-sampled frame rate operation algorithm; performing motion detection to obtain motion information in the re-processed current frame in the live video stream: computing a background model using the motion information; performing background subtraction using the background model to obtain foreground and background pixels for the current frame in the live video stream; refining the obtained foreground and background pixels using a median filter; post processing the median filtered foreground and background pixels using dilation and erosion algorithms to obtain foreground clusters; further refining the obtained foreground clusters using configurable attribute based filters to obtain refined foreground bounding boxes around each of the obtained foreground clusters, wherein the configurable attribute based filters are selected from the group consisting of a size based filter, an aspect ratio based filter, a symmetry based filter, a cluster density based filter and a histogram based filter; further refining the refined foreground bounding boxes using user configurable rule based filters stored as a rule book to obtain object classification information; further refining the refined foreground bounding boxes using bounding box tracking to obtain temporal tracking information for the foreground bounding boxes; decision refinement of the foreground and background pixels using the object classification information and the temporal tracking information to obtain final refined background and foreground pixels for the current frame; generating an output frame for the current frame by superimposing the final refined foreground pixels on a virtual background obtained from a user; and repeating all the above steps from pre-processing to generating an output frame for a next frame in the live video stream.