[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

US20070286520A1 - Background blurring for video conferencing - Google Patents

Background blurring for video conferencing Download PDF

Info

Publication number
US20070286520A1
US20070286520A1 US11/422,693 US42269306A US2007286520A1 US 20070286520 A1 US20070286520 A1 US 20070286520A1 US 42269306 A US42269306 A US 42269306A US 2007286520 A1 US2007286520 A1 US 2007286520A1
Authority
US
United States
Prior art keywords
background
image
pixel
probability
blurring
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US11/422,693
Other versions
US7783075B2 (en
Inventor
Cha Zhang
Li-wei He
Yong Rui
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Priority to US11/422,693 priority Critical patent/US7783075B2/en
Assigned to MICROSOFT CORPORATION reassignment MICROSOFT CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: RUI, YONG, HE, LI-WEI, ZHANG, CHA
Publication of US20070286520A1 publication Critical patent/US20070286520A1/en
Application granted granted Critical
Publication of US7783075B2 publication Critical patent/US7783075B2/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation

Definitions

  • Video conferencing has become more and more popular thanks to the emergence of high speed Internet and reduced prices of high quality web cameras.
  • Wide-spread instant messaging software supports voice/video chatting, where people can view each other while talking.
  • the present image background blurring technique employs background blurring as an effective way to both preserve privacy and ensure effective communication during video conferencing.
  • the present image background blurring technique is a light weight real-time technique to perform background blurring using a fast background modeling procedure combined with an object detector/tracker, such as a face detector/tracker.
  • a soft decision is made at each pixel whether it belongs to the foreground or the background based on multiple vision features.
  • the classification results are mapped to a per-pixel blurring radius image which is used to blur the background.
  • the image background blurring technique blurs the background of the image without using the object detector.
  • a background classification procedure is also used to create a probability map to determine the likelihood of each pixel in an image being background. The probability map is then used in blurring the pixels of the image.
  • FIG. 1 is a diagram depicting a general purpose computing device constituting an exemplary system for implementing the present image background blurring technique.
  • FIG. 2 is a diagram depicting an exemplary video conferencing environment wherein the present image background blurring technique can be practiced.
  • FIG. 3 is a block diagram depicting one embodiment of the image background blurring system described herein.
  • FIG. 4 is an exemplary flow diagram of one embodiment of the present image background blurring process.
  • FIG. 5 is an exemplary flow diagram of one embodiment of the background modeling process used in one embodiment of the present image background blurring process.
  • FIG. 6 is an exemplary flow diagram of one embodiment of the object detection process used in one embodiment of the present image background blurring process.
  • FIG. 7 is an exemplary flow diagram of the background blurring process used in one embodiment of the present image background blurring process.
  • FIG. 8 depicts a diagram for calculating an integral image to be used in computing a blurring radius for blurring the pixels in one embodiment of the present image background blurring process. On the left the integral image is calculated. On the right the sum of colors in region R is computed.
  • the technique is operational with numerous general purpose or special purpose computing system environments or configurations.
  • Examples of well known computing systems, environments, and/or configurations that may be suitable for use with the process include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
  • FIG. 1 illustrates an example of a suitable computing system environment.
  • the computing system environment is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the present system and process. Neither should the computing environment be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment.
  • an exemplary system for implementing the present process includes a computing device, such as computing device 100 .
  • computing device 100 In its most basic configuration, computing device 100 typically includes at least one processing unit 102 and memory 104 .
  • memory 104 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two.
  • device 100 may also have additional features/functionality.
  • device 100 may also include additional storage (removable and/or non-removable) including, but not limited to, magnetic or optical disks or tape.
  • additional storage is illustrated in FIG. 1 by removable storage 108 and non-removable storage 110 .
  • Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Memory 104 , removable storage 108 and non-removable storage 110 are all examples of computer storage media.
  • Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by device 100 . Any such computer storage media may be part of device 100 .
  • Device 100 may also contain communications connection(s) 112 that allow the device to communicate with other devices.
  • Communications connection(s) 112 is an example of communication media.
  • Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
  • modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
  • communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media.
  • the term computer readable media as used herein includes both storage media and communication media.
  • Device 100 may also have input device(s) 114 such as keyboard, mouse, camera, microphone, pen, voice input device, touch input device, etc.
  • input device such as keyboard, mouse, camera, microphone, pen, voice input device, touch input device, etc.
  • output device(s) 116 such as a display, speakers, printer, etc. may also be included. All these devices are well know in the art and need not be discussed at length here.
  • program modules include routines, programs, objects, components, data structures, and so on that perform particular tasks or implement particular abstract data types.
  • the process may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network.
  • program modules may be located in both local and remote computer storage media including memory storage devices.
  • FIG. 2 A more detailed view of an exemplary overall operating environment, such as would be found in a video conferencing application, is shown in FIG. 2 .
  • the present image background blurring technique blurs the background in an image, such as one that would be used in video conferencing, instead of replacing the background completely.
  • background blurring has the similar effect as a wide aperture video camera which always focuses on the foreground objects. It can make the foreground objects stand out as the background is blurred, creating an extra dimension to the video.
  • the present image background blurring technique can be deployed in a typical video conferencing environment.
  • an image is input into a video conferencing participant's computing device 202 from a camera 204 , and the image background blurring module 206 for blurring the background is inserted between the camera 204 and the encoding module 208 .
  • the blurred encoded output image 210 is transmitted to one or more receiving video conference participants 212 over a network 214 .
  • the receiving participants 212 decode the transmitted encoded image via a decoder 216 to recover and display the video of the output image with the background blurred on their display 218 .
  • conventional encoders and decoders can be used to code and decode the image with the background blurred.
  • the image background blurring module divides an input image into pixels in a pixel extraction sub-module 302 , and employs a fast pixel-level background modeling sub-module 304 that to performs foreground/background classification.
  • a background model With such a background model, a soft decision is made at each pixel as to how probable it is that it belongs to the background or foreground (i.e., is non-background), and a background probability map 306 is generated using these probabilities.
  • foreground objects can get blurred if they stay still for a long while. Faces are by far the most important objects that should always stay focused in video conferencing even though they are still.
  • An object detector 308 such as a face detector/tracker, is employed with the above background modeling approach.
  • an object can be detected by a user and manually segmented out.
  • the detected object (e.g., face) regions are used to generate a second background probability map 310 .
  • the object detector 308 can feed background probability data into the fast pixel-pixel level background modeling sub-module 304 so that it object pixels identified by the object detector will not be used in the background modeling done by the fast pixel-level background modeling sub-module 304 .
  • the background probability maps 306 , 310 are then provided to a background blurring sub-module 312 , which is used to blur the background in the image or video frame.
  • the second probability map 310 is used to modulate the blurring radius image, making sure that the objects (e.g., faces) are not blurred.
  • FIG. 4 depicts a flow diagram of one embodiment of the present image background blurring process 400 disclosed herein.
  • process action 402 an input image is divided into pixels.
  • a first background probability map that a pixel is a background pixel is created for each of the pixels in the image (process action 404 ).
  • This first background probability map can be derived using a variety of conventional methods, but is preferably created by using a Gaussian distribution method, which will be described in more detail below.
  • an object detector/tracker e.g., a face detector/tracker
  • this process action designates objects as non-background. Any pixel determined in the background modeling process to be background, but that is determined by the object detector to be an object, is designated as non-background (process action 408 ). A combined probability map is created from the first and second probability maps, as shown in process action 410 . A blurring radius of each pixel is then determined based on the probability it is background using the combined probability map, as shown in process action 412 . The image is then blurred using the blurring radius for each pixel (process action 414 ), resulting in a background blurred image.
  • the background modeling process 500 used in one embodiment of the image background blurring technique is shown in FIG. 5 .
  • a first image of an image sequence is input, as shown in process action 502 .
  • all pixels in this image are designated as foreground (process action 504 ).
  • process action 504 all pixels in this image are designated as foreground (process action 504 ).
  • process action 506 if the image is in red, green, blue (RGB) color space it is converted to YUV color space (process action 506 ).
  • a mean color and variance are computed.
  • the next image in the image sequence (e.g., video sequence) is then input, as shown in process action 510 .
  • the probability of each pixel in this image belonging to the background is computed (e.g., using a Gaussian model) (process action 512 ).
  • the mean and variance for each pixel are computed using the last-computed pixel probabilities, and a running mean and variance are created/maintaned (process action 514 ).
  • a check is then made to see if the variance is large (process action 516 ). If the variance is large, the pixel is designated as not being background (process action 518 ). If the variance is not large, the pixel is designated as being background (process action 520 ).
  • a probability map of each pixel being background is then created using the pixel classification results, as shown in process action 522 . The process so continues for the remaining image sequence by repeating actions 510 - 522 for each image.
  • c t (x) be the color of the pixel at location x in I t .
  • c t (x) is a two dimensional vector. Initially, all pixels are assumed to be foreground pixels. Let the initial mean color be
  • I is a two dimensional identity matrix and C is a tiny number (e.g., 10 3 ).
  • a background mean and a background variance is computed, denoted as m t (x) and
  • the likelihood of a pixel belonging to the background can be computed using the standard Gaussian kernel:
  • the pixel location variable x is ignored for conciseness. If this probability is above a certain threshold, e.g., p t >0.2, the new pixel will be used to update the background model as:
  • ⁇ t ⁇ ( c t - m t - 1 ) ⁇ ( c t - m t - 1 ) T + ( 1 - ⁇ ) ⁇ ⁇ t - 1 ( 2 )
  • m t ⁇ ⁇ ⁇ c t + ( 1 - ⁇ ) ⁇ m t ⁇ - 1 ( 3 )
  • a is a decay factor indicating the updating rate.
  • the above updating mechanism can handle slow background variations very well.
  • Another functionality that is needed in background modeling is the ability to push a pixel into the background if its color does not change for a long period of time.
  • a running mean ⁇ t (x) and a running variance ⁇ t (x) are computed for each pixel. Whenever a new frame comes in, these running means and variances are updated similarly as:
  • ⁇ 1 ⁇ ( c t ⁇ t-1 )( c t ⁇ t-1 ) T +(1 ⁇ ) ⁇ t-1 (4)
  • ⁇ t ⁇ ( x ) ⁇ t ⁇ ( x ) .
  • the background modeling procedure described in Section 2.2 works reasonably well if the foreground person is constantly moving. Unfortunately, many people do not move around all the time during a video conferencing session. When a person stays still for a while, the above procedure will gradually merge the foreground pixels into the background, generating a blurry foreground person. While more sophisticated algorithms exist for background modeling, they inherently suffer from the same problem.
  • an object detector and tracker e.g., a face detector and a face tracker
  • identify foreground objects such as, for example, the face region
  • the object detection process 600 employed in one embodiment of the image background blurring technique is shown in FIG. 6 .
  • An image divided into pixels is input, as shown in process action 602 .
  • the object detector e.g., face detector
  • the object detector is used to detect any objects, such as, for example a face, in order to classify pixels of the object on a per-pixel basis (process action 604 ). If an object is detected, the location of a cropped sub-image of the object (e.g., a face) is verified by comparing it to the location of the cropped sub-image in the same area of the image in a previous frame in order to verify the pixels belong to the object (process action 606 , 608 ).
  • the object detector is used in an attempt to find the object in the whole image (process actions 612 , 614 ). If the object is not found, the pixels in question are held to be background pixels (process actions 616 , 610 ). If the object is verified (process action 612 ), or the object is found in searching the whole image (process action 616 ), the object is not background and is assigned 0 probability of being background. Hence, a probability map is created for all the pixels in the image wherein pixels of any object have a 0 probability of being background pixels, as shown in process action 618 .
  • the object detector is a face detector that employs a three-step detector consisting of a linear pre-filter, a boosting chain and a number of post filtering algorithms such as support vector machine and color filters.
  • the detector has a high detection rate for frontal faces with low false alarms thanks to the post-filters, however its detection rate on profile faces is relatively low and it is too expensive to run the detector on every video frame.
  • the image background blurring technique combines the detector with a color-based non-rigid object tracker called pixel classification and integration (PCI). PCI has a number of advantages over the popular mean-shift (MS) algorithm.
  • the face detector in the working embodiment is used as both a detector and a verifier for the process. In one embodiment, if no face is detected in the image, the detector will be fired once every second. Otherwise, it is used to verify the sub-image cropped by the tracked face twice a second. If a face is not verified for a number of tries, the detector is launched again for a whole image detection. The detected/tracked faces may be expanded slightly up and down to cover the hair and the neck of the person. In this working embodiment, the image background blurring technique then generates a face background likelihood map as:
  • pixels belonging to a face have probability 0 as background, and 1 otherwise.
  • a pixel belongs to a face region it will not be pushed into the background model in the fast pixel-level background modeling no matter how small the running variance, ⁇ t (x), is. (See Section 2.2)
  • the background blurring procedure 700 used in one embodiment of the image background blurring technique is shown in FIG. 7 .
  • An image and its associated background probability map and object detector probability map (the probability map derived by using the object detector) are input, as shown in process action 702 .
  • a combined probability map for each pixel in the image is computed by combining the two input probability maps, as shown in process action 704 .
  • a blurring radius for each pixel is then determined based on the likelihood of it being background which obtained from the combined probability map (process action 706 ).
  • the image can optionally also be smoothed (process action 708 ). If the object detector has determined that a given pixel belongs to an object, the pixel is not blurred (process actions 710 , 712 ). If the object detector has not determined that the pixel is an object, the pixel is blurred using the blurring radius, as is shown in process action 714 .
  • the blurring process is repeated for each subsequent image in the sequence.
  • q t (x) is the combined probability map
  • p t (x) is the background probability map
  • f t (x) is the object detector probability map
  • the image background blurring technique maps this combined likelihood image into a blurring radius image as:
  • r max is the maximum blurring radius set by the user
  • the blurring radius image is then used to blur the original image. That is, for each pixel, the corresponding blurring radius is used to blur the input image by averaging pixels within the radius. This can be done using various methods, such as Gaussian methods. For example, various kernels can be used such as Gaussian or rectangular kernels.
  • R(0,x) is the rectangular region formed by the origin and x, as shown in the region 802 in the figure on the left.
  • the computational cost for calculating the integral image is low—two additions for each pixel in the image.
  • the sum of colors in an arbitrary rectangular region 804 can be computed with 3 additions, as shown in FIG. 8 on the right.
  • the sum of the colors in Region R is computed as
  • the blurred pixel is thus the sum of pixels within the radius divided by the size of the rectangular region, which can be computed efficiently for arbitrary size of neighbors.
  • the image background blurring process does not employ an object or face detector/tracker.
  • this embodiment 900 shown in FIG. 9 , an image of an image sequence is divided into pixels, process action 902 .
  • Foreground/background background modeling is then conducted, as shown in process action 904 , to yield a background pixel probability map defining how likely it is that each pixel in the image is a background pixel.
  • any background modeling technique can be used to determine whether a pixel belongs to the background or not.
  • the background probability map is then used to blur each pixel based on its probability of being a background pixel, as shown in process action 906 .

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

Background blurring is an effective way to both preserve privacy and keep communication effective during video conferencing. The present image background blurring technique is a light weight real-time technique to perform background blurring using a fast background modeling procedure combined with an object (e.g., face) detector/tracker. A soft decision is made at each pixel whether it belongs to the foreground or the background based on multiple vision features. The classification results are mapped to a per-pixel blurring radius image to blur the background. In another embodiment, the image background blurring technique blurs the background of the image without using the object detector.

Description

    BACKGROUND
  • Video conferencing has become more and more popular thanks to the emergence of high speed Internet and reduced prices of high quality web cameras. Wide-spread instant messaging software supports voice/video chatting, where people can view each other while talking. There are, however, privacy concerns with video conferencing. For instance, some people do not want to show their living rooms, bedrooms or offices to other people.
  • There are a number of approaches to overcoming the privacy issue with video conferencing. For example, some applications replace a talking face with a 3D animated avatar. It is fun to play with such effects, though the expressiveness of the avatars is often limited and cannot deliver information as rich as that conveyed by true faces. An alternative solution is to separate the foreground and background objects in the video, so that the background can be replaced by a different image or video. This would be ideal for preserving privacy while maintaining the effectiveness of the conversation, except that automatic video foreground/background segmentation is a very challenging task. In addition, human eyes are very sensitive to segmentation errors during background replacement, which demands the segmentation algorithm to be extremely accurate.
  • Existing approaches to preserving privacy in video conferencing are either too slow to be processed in real time, or assume a known background, or require a stereo camera pair. Few of them have achieved the efficiency, accuracy and convenience needed in real-world applications.
  • SUMMARY
  • The present image background blurring technique employs background blurring as an effective way to both preserve privacy and ensure effective communication during video conferencing. In one embodiment, the present image background blurring technique is a light weight real-time technique to perform background blurring using a fast background modeling procedure combined with an object detector/tracker, such as a face detector/tracker. A soft decision is made at each pixel whether it belongs to the foreground or the background based on multiple vision features. The classification results are mapped to a per-pixel blurring radius image which is used to blur the background.
  • In another embodiment, the image background blurring technique blurs the background of the image without using the object detector. In this embodiment, a background classification procedure is also used to create a probability map to determine the likelihood of each pixel in an image being background. The probability map is then used in blurring the pixels of the image.
  • It is noted that while the foregoing limitations in existing techniques for overcoming privacy issues described in the Background section can be resolved by a particular implementation of the image background blurring technique described, this technique is in no way limited to implementations that just solve any or all of the noted disadvantages. Rather, the present technique has a much wider application as will become evident from the descriptions to follow.
  • This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
  • DESCRIPTION OF THE DRAWINGS
  • The specific features, aspects, and advantages of the claimed subject matter will become better understood with regard to the following description, appended claims, and accompanying drawings where:
  • FIG. 1 is a diagram depicting a general purpose computing device constituting an exemplary system for implementing the present image background blurring technique.
  • FIG. 2 is a diagram depicting an exemplary video conferencing environment wherein the present image background blurring technique can be practiced.
  • FIG. 3 is a block diagram depicting one embodiment of the image background blurring system described herein.
  • FIG. 4 is an exemplary flow diagram of one embodiment of the present image background blurring process.
  • FIG. 5 is an exemplary flow diagram of one embodiment of the background modeling process used in one embodiment of the present image background blurring process.
  • FIG. 6 is an exemplary flow diagram of one embodiment of the object detection process used in one embodiment of the present image background blurring process.
  • FIG. 7 is an exemplary flow diagram of the background blurring process used in one embodiment of the present image background blurring process.
  • FIG. 8 depicts a diagram for calculating an integral image to be used in computing a blurring radius for blurring the pixels in one embodiment of the present image background blurring process. On the left the integral image is calculated. On the right the sum of colors in region R is computed.
  • DETAILED DESCRIPTION
  • In the following description, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration specific embodiments in which the invention may be practiced. It is understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the present disclosure.
  • 1.0 The Computing Environment
  • Before providing a description of embodiments of the present image background blurring technique, a brief, general description of a suitable computing environment in which portions of the technique may be implemented will be described. The technique is operational with numerous general purpose or special purpose computing system environments or configurations. Examples of well known computing systems, environments, and/or configurations that may be suitable for use with the process include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
  • FIG. 1 illustrates an example of a suitable computing system environment. The computing system environment is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the present system and process. Neither should the computing environment be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment. With reference to FIG. 1, an exemplary system for implementing the present process includes a computing device, such as computing device 100. In its most basic configuration, computing device 100 typically includes at least one processing unit 102 and memory 104. Depending on the exact configuration and type of computing device, memory 104 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two. This most basic configuration is illustrated in FIG. 1 by dashed line 106. Additionally, device 100 may also have additional features/functionality. For example, device 100 may also include additional storage (removable and/or non-removable) including, but not limited to, magnetic or optical disks or tape. Such additional storage is illustrated in FIG. 1 by removable storage 108 and non-removable storage 110. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Memory 104, removable storage 108 and non-removable storage 110 are all examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by device 100. Any such computer storage media may be part of device 100.
  • Device 100 may also contain communications connection(s) 112 that allow the device to communicate with other devices. Communications connection(s) 112 is an example of communication media. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. The term computer readable media as used herein includes both storage media and communication media.
  • Device 100 may also have input device(s) 114 such as keyboard, mouse, camera, microphone, pen, voice input device, touch input device, etc. In particular, one such input device is a video camera. Output device(s) 116 such as a display, speakers, printer, etc. may also be included. All these devices are well know in the art and need not be discussed at length here.
  • The present technique may be described in the general context of computer-executable instructions, such as program modules, being executed by a computing device. Generally, program modules include routines, programs, objects, components, data structures, and so on that perform particular tasks or implement particular abstract data types. The process may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
  • The exemplary operating environment having now been discussed, the remaining parts of this description section will be devoted to a description of the program modules embodying the present image background blurring technique. A more detailed view of an exemplary overall operating environment, such as would be found in a video conferencing application, is shown in FIG. 2.
  • 2.0 Image Background Blurring Technique
  • The present image background blurring technique blurs the background in an image, such as one that would be used in video conferencing, instead of replacing the background completely. This has a number of advantages. First, as one would imagine, after background blurring, the foreground objects stay focused while the background objects are blurred. This protects the privacy of the person while maintaining an effective conversation. Second, people are much more forgiving to the errors made in background blurring than background replacement. This allows one to develop very efficient foreground/background classification procedures without much concern about classification errors. Finally, background blurring has the similar effect as a wide aperture video camera which always focuses on the foreground objects. It can make the foreground objects stand out as the background is blurred, creating an extra dimension to the video.
  • 2.1 System and Process Overview
  • The present image background blurring technique can be deployed in a typical video conferencing environment. For example, in one embodiment, shown in FIG. 2, an image is input into a video conferencing participant's computing device 202 from a camera 204, and the image background blurring module 206 for blurring the background is inserted between the camera 204 and the encoding module 208. In this embodiment, the blurred encoded output image 210 is transmitted to one or more receiving video conference participants 212 over a network 214. The receiving participants 212 decode the transmitted encoded image via a decoder 216 to recover and display the video of the output image with the background blurred on their display 218. It should be noted that conventional encoders and decoders can be used to code and decode the image with the background blurred.
  • Referring to FIG. 3, in one embodiment, the image background blurring module divides an input image into pixels in a pixel extraction sub-module 302, and employs a fast pixel-level background modeling sub-module 304 that to performs foreground/background classification. With such a background model, a soft decision is made at each pixel as to how probable it is that it belongs to the background or foreground (i.e., is non-background), and a background probability map 306 is generated using these probabilities. It is noted that foreground objects can get blurred if they stay still for a long while. Faces are by far the most important objects that should always stay focused in video conferencing even though they are still. An object detector 308, such as a face detector/tracker, is employed with the above background modeling approach. Alternately, an object can be detected by a user and manually segmented out. The detected object (e.g., face) regions are used to generate a second background probability map 310. In addition, the object detector 308 can feed background probability data into the fast pixel-pixel level background modeling sub-module 304 so that it object pixels identified by the object detector will not be used in the background modeling done by the fast pixel-level background modeling sub-module 304. The background probability maps 306, 310 are then provided to a background blurring sub-module 312, which is used to blur the background in the image or video frame. The second probability map 310 is used to modulate the blurring radius image, making sure that the objects (e.g., faces) are not blurred. These aspects of the present image background blurring technique will be discussed in greater detail below.
  • FIG. 4 depicts a flow diagram of one embodiment of the present image background blurring process 400 disclosed herein. As shown in FIG. 4, process action 402, an input image is divided into pixels. A first background probability map that a pixel is a background pixel is created for each of the pixels in the image (process action 404). This first background probability map can be derived using a variety of conventional methods, but is preferably created by using a Gaussian distribution method, which will be described in more detail below. Additionally, an object detector/tracker (e.g., a face detector/tracker) is used to detect and track an object such as a face, thereby deriving a second object detector background probability map that a pixel is background or foreground, as shown in process action 406. In general, this process action designates objects as non-background. Any pixel determined in the background modeling process to be background, but that is determined by the object detector to be an object, is designated as non-background (process action 408). A combined probability map is created from the first and second probability maps, as shown in process action 410. A blurring radius of each pixel is then determined based on the probability it is background using the combined probability map, as shown in process action 412. The image is then blurred using the blurring radius for each pixel (process action 414), resulting in a background blurred image.
  • The following sections provide details and variations of the image background blurring technique described above.
  • 2.2 Fast Pixel-Level Background Modeling
  • Fast pixel level background modeling has been extensively studied in literature. Gaussian distributions have been used to model the color variation of the background pixels, mostly for indoor environments. This was later extended to Gaussian mixture models, non-parametric kernel density estimators and three state Hidden Markov Models to adapt to outdoor, dynamic backgrounds. A separate region-level or even object-level model can be added to further improve the background modeling quality in dynamic scenes.
  • Since most video conferencing applications are indoors, a single Gaussian distribution is typically sufficient to model the color variations of background pixels. Another reason to use a single Gaussian distribution is its simplicity and efficiency in implementation.
  • The background modeling process 500 used in one embodiment of the image background blurring technique is shown in FIG. 5. In this embodiment, a first image of an image sequence is input, as shown in process action 502. Initially all pixels in this image are designated as foreground (process action 504). In one version, to simplify computations, if the image is in red, green, blue (RGB) color space it is converted to YUV color space (process action 506). As shown in process action 508, for each pixel, a mean color and variance are computed. The next image in the image sequence (e.g., video sequence) is then input, as shown in process action 510. The probability of each pixel in this image belonging to the background is computed (e.g., using a Gaussian model) (process action 512). The mean and variance for each pixel are computed using the last-computed pixel probabilities, and a running mean and variance are created/maintaned (process action 514). A check is then made to see if the variance is large (process action 516). If the variance is large, the pixel is designated as not being background (process action 518). If the variance is not large, the pixel is designated as being background (process action 520). A probability map of each pixel being background is then created using the pixel classification results, as shown in process action 522. The process so continues for the remaining image sequence by repeating actions 510-522 for each image.
  • More particularly, let an input video frame be It at time t. Let ct(x) be the color of the pixel at location x in It. To make the background model robust to lighting variations, and to simplify computations, convert the video frame from the RGB color space to the YUV color space, and only use the UV components for the task. Thus ct(x) is a two dimensional vector. Initially, all pixels are assumed to be foreground pixels. Let the initial mean color be
  • m 0 ( x ) = [ - 1 - 1 ] T , and 0 ( x ) = I ,
  • where I is a two dimensional identity matrix and C is a tiny number (e.g., 103).
  • At each pixel, a background mean and a background variance is computed, denoted as mt(x) and
  • t ( x ) ,
  • respectively.
  • Given a new input frame, the likelihood of a pixel belonging to the background can be computed using the standard Gaussian kernel:
  • p t = exp { - 1 2 ( c t - m t - 1 ) T ( t 1 ) - 1 ( c t - m t - 1 ) } ( 1 )
  • Here the pixel location variable x is ignored for conciseness. If this probability is above a certain threshold, e.g., pt>0.2, the new pixel will be used to update the background model as:
  • t = ( c t - m t - 1 ) ( c t - m t - 1 ) T + ( 1 - α ) t - 1 ( 2 ) m t = α c t + ( 1 - α ) m t - 1 ( 3 )
  • where a is a decay factor indicating the updating rate. The above updating mechanism can handle slow background variations very well.
  • Another functionality that is needed in background modeling is the ability to push a pixel into the background if its color does not change for a long period of time. To enable this, a running mean μt(x) and a running variance Ωt(x) are computed for each pixel. Whenever a new frame comes in, these running means and variances are updated similarly as:

  • Ω1=α(c t−μt-1)(c t−μt-1)T+(1−α)Ωt-1   (4)

  • μt =αc t+(1−α)μt-1   (5)
  • Initially μ0(x)=c0(x) and Ω0(x)=ρI, where ρ is a big number (e.g., 20). If a pixel's color remains constant for a long period, the trace of the covariance matrix Ωt will decrease. If the trace is smaller than a certain threshold, the pixel will be push into the background, i.e., one sets mt(x)=μt(x) and
  • t ( x ) = Ω t ( x ) .
  • A pixel background probability map is thus created using this information for each pixel. 2.3 Object (Face) Detection and Tracking
  • The background modeling procedure described in Section 2.2 works reasonably well if the foreground person is constantly moving. Unfortunately, many people do not move around all the time during a video conferencing session. When a person stays still for a while, the above procedure will gradually merge the foreground pixels into the background, generating a blurry foreground person. While more sophisticated algorithms exist for background modeling, they inherently suffer from the same problem.
  • It is observed that in video conferencing applications, the face is by far the most important foreground object that should always be in focus. Therefore, as discussed previously, an object detector and tracker (e.g., a face detector and a face tracker) can be adopted to identify foreground objects, such as, for example, the face region, in order to remedy the above-mentioned problem.
  • The object detection process 600 employed in one embodiment of the image background blurring technique is shown in FIG. 6. An image divided into pixels is input, as shown in process action 602. The object detector (e.g., face detector) is used to detect any objects, such as, for example a face, in order to classify pixels of the object on a per-pixel basis (process action 604). If an object is detected, the location of a cropped sub-image of the object (e.g., a face) is verified by comparing it to the location of the cropped sub-image in the same area of the image in a previous frame in order to verify the pixels belong to the object (process action 606, 608). If the location of the object is not verified for a number of tries, the object detector is used in an attempt to find the object in the whole image (process actions 612, 614). If the object is not found, the pixels in question are held to be background pixels (process actions 616, 610). If the object is verified (process action 612), or the object is found in searching the whole image (process action 616), the object is not background and is assigned 0 probability of being background. Hence, a probability map is created for all the pixels in the image wherein pixels of any object have a 0 probability of being background pixels, as shown in process action 618.
  • It should be noted that any conventional object detector can be used with the image background blurring technique. However, in one exemplary working embodiment, the object detector is a face detector that employs a three-step detector consisting of a linear pre-filter, a boosting chain and a number of post filtering algorithms such as support vector machine and color filters. The detector has a high detection rate for frontal faces with low false alarms thanks to the post-filters, however its detection rate on profile faces is relatively low and it is too expensive to run the detector on every video frame. The image background blurring technique combines the detector with a color-based non-rigid object tracker called pixel classification and integration (PCI). PCI has a number of advantages over the popular mean-shift (MS) algorithm. It guarantees a global optimal solution rather than a local optimal solution in MS. PCI is also computationally more efficient than MS, with better scale adaptation and appearance modeling. The face detector in the working embodiment is used as both a detector and a verifier for the process. In one embodiment, if no face is detected in the image, the detector will be fired once every second. Otherwise, it is used to verify the sub-image cropped by the tracked face twice a second. If a face is not verified for a number of tries, the detector is launched again for a whole image detection. The detected/tracked faces may be expanded slightly up and down to cover the hair and the neck of the person. In this working embodiment, the image background blurring technique then generates a face background likelihood map as:

  • f t(x)=0 if the pixel belongs to a face 1 otherwise.   (6)
  • That is, pixels belonging to a face have probability 0 as background, and 1 otherwise. In addition, if a pixel belongs to a face region, it will not be pushed into the background model in the fast pixel-level background modeling no matter how small the running variance, Ωt(x), is. (See Section 2.2)
  • 2.4 Background Blurring
  • The background blurring procedure 700 used in one embodiment of the image background blurring technique is shown in FIG. 7. An image and its associated background probability map and object detector probability map (the probability map derived by using the object detector) are input, as shown in process action 702. A combined probability map for each pixel in the image is computed by combining the two input probability maps, as shown in process action 704. A blurring radius for each pixel is then determined based on the likelihood of it being background which obtained from the combined probability map (process action 706). The image can optionally also be smoothed (process action 708). If the object detector has determined that a given pixel belongs to an object, the pixel is not blurred (process actions 710, 712). If the object detector has not determined that the pixel is an object, the pixel is blurred using the blurring radius, as is shown in process action 714. The blurring process is repeated for each subsequent image in the sequence.
  • Mathematically, the above discussed blurring process can be explained as follows. The two background likelihood maps are combined into one for background blurring. Let:

  • q t(x)=min(p t(x), f t(x)).   (7)
  • where qt(x) is the combined probability map, pt(x) is the background probability map and ft(x) is the object detector probability map.
  • In one embodiment, the image background blurring technique maps this combined likelihood image into a blurring radius image as:
  • r t ( x ) = r max min ( 1 , q t ( x ) δ ) ( 8 )
  • where rmax is the maximum blurring radius set by the user, δ is a small thresholding probability. If qt(x) is greater than δ, the pixel will be fully blurred. In one working embodiment it was found that δ=0.01 works well. The blurring radius image is then used to blur the original image. That is, for each pixel, the corresponding blurring radius is used to blur the input image by averaging pixels within the radius. This can be done using various methods, such as Gaussian methods. For example, various kernels can be used such as Gaussian or rectangular kernels.
  • One challenge that is faced during the blurring process is that it can be very computationally expensive, because each pixel can have a different blurring radius. When the maximum blurring radius rmax is large, the adaptive blurring procedure can be very slow. Fortunately, for certain blurring kernels such as the rectangular kernel, this procedure can be greatly sped up with the help of integral images. As shown in FIG. 8, the integral image is calculated as:
  • C t ( x ) = z R ( 0 , x ) c t ( z ) . ( 9 )
  • where R(0,x) is the rectangular region formed by the origin and x, as shown in the region 802 in the figure on the left. The computational cost for calculating the integral image is low—two additions for each pixel in the image.
  • After the integral image has been calculated, the sum of colors in an arbitrary rectangular region 804 can be computed with 3 additions, as shown in FIG. 8 on the right. The sum of the colors in Region R is computed as
  • x R ( 0 , x ) C l ( x 4 ) + C l ( x 1 ) - C l ( x 2 ) - C l ( x 3 ) ( 10 )
  • The blurred pixel is thus the sum of pixels within the radius divided by the size of the rectangular region, which can be computed efficiently for arbitrary size of neighbors.
  • 3.0 Other Embodiment
  • In an alternate embodiment, the image background blurring process does not employ an object or face detector/tracker. In this embodiment 900, shown in FIG. 9, an image of an image sequence is divided into pixels, process action 902. Foreground/background background modeling is then conducted, as shown in process action 904, to yield a background pixel probability map defining how likely it is that each pixel in the image is a background pixel. It should be noted that any background modeling technique can be used to determine whether a pixel belongs to the background or not. The background probability map is then used to blur each pixel based on its probability of being a background pixel, as shown in process action 906.
  • It should also be noted that any or all of the aforementioned alternate embodiments may be used in any combination desired to form additional hybrid embodiments. Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (20)

1. A computer-implemented process for blurring the background in an image of an image sequence, comprising using a computer to perform the process actions of:
(a) dividing an image of an image sequence into pixels;
(b) creating a first probability map of each pixel's probability it is background;
(c) using an object detector to find an object in the image and using any found object to determine the probability of each pixel being background thereby creating a second probability map;
(d) specifying that each pixel in the first probability map is not background, if it was determined by the object detector to belong to an object;
(e) combining the first and second probability maps to obtain a combined probability map that defines a probability of each pixel in the image being a background pixel;
(f) determining a blurring radius for each pixel based on its probability of being a background pixel; and
(g) blurring each pixel in the image using the blurring radius for each pixel to create an output image with a blurred background.
2. The computer-implemented process of claim 1 further comprising repeating process actions (a) through (g) for subsequent images in the image sequence.
3. The computer-implemented process of claim 1 wherein the process action of creating the first probability map, comprises the process actions of:
inputting a first image of an image sequence;
designating all pixels in the first image as foreground;
for each pixel in the first image, computing a mean color and a variance;
inputting the next image in the image sequence;
for each pixel in the next image, determining the probability of it being a background pixel;
updating the mean color and variance, using the probability of each pixel in said next image being a background pixel, to compute a running mean and variance for each pixel;
for each pixel, determining if the running variance is large;
if the running pixel variance is large, classifying the pixel as not being a background pixel;
if the running pixel variance is not large, classifying the pixel as being a background pixel; and
creating a probability map that each pixel is background based on the pixel classifications.
4. The computer-implemented process of claim 3 wherein the process action of determining the probability of a pixel belonging to the background is computed using a standard Gaussian kernel.
5. The computer-implemented process of claim 3 wherein each pixel in the input image is converted from red, green, blue (RGB) color space to YUV color space prior to computing a mean color and variance.
6. The computer-implemented process of claim 1 wherein the process action of using an object detector to find an object in the image and using any found object to determine the probability of a pixel being background thereby creating a second probability map, comprises the process actions of:
(a) inputting the image divided into pixels;
(b) using an object detector to detect any objects in the image;
if an object is detected,
verifying the location of a cropped sub-image of the object;
if the location of cropped sub-image of the object has not been verified for a number of tries, attempting to use the object detector to find the object in the whole image;
if the object is not found, designating all pixels as background,
if the object is found, designating each pixel in the image belonging to the object as having a 0 probability of being background;
if an object is not detected,
designating all pixels as background; and
(c) creating the second probability map by using the designation for each pixel.
7. The computer-implemented process of claim 1 wherein the object detector is a face detector and the object detected is a face.
8. The computer-implemented process of claim 1 wherein the process action of blurring each pixel in the image using the blurring radius for each pixel to create an output image with a blurred background, comprises the process actions of:
obtaining a combined probability derived from the first and second probability maps of each pixel in the image being background;
determining a blurring radius for each pixel based on the probability of it being background obtained from the combined probability map;
using the second probability map created by using the object detector to specify that pixels that belong to objects are not background; and
using the blurring radius to blur pixels that are background.
9. The computer-implemented process of claim 8 further comprising the process action of smoothing the image after the blurring radius for each image has been determined.
10. The computer-implemented process of claim 1 wherein the blurring radius is larger if the probability is higher that the pixel is background.
11. The computer-implemented process of claim 1 wherein the background in the image is blurred by using the corresponding blurring radius for each pixel and averaging the pixel colors within the radius.
12. The computer-implemented process of claim 1 wherein a Gaussian distribution with a rectangular kernel is used in determining each blurring radius, and wherein integral images are used in determining each blurring radius.
13. A computer-readable medium having computer-executable instructions for performing the computer-implemented process recited in claim 1.
14. A system for blurring the background in an image, comprising:
a general purpose computing device;
a computer program comprising program modules executable by the general purpose computing device, wherein the computing device is directed by the program modules of the computer program to, divide an input image into pixels;
perform background modeling to determine a first probability map that each pixel in the image is background;
perform object detection to find an object and specify that pixels of any object detected are not background pixels to create a second probability map that each pixel in the image is background;
perform image background blurring using the first and second probability maps that each pixel in the image is background to create an image with a blurred background.
15. The system of claim 14 wherein object detection is performed by a user manually segmenting an object from background in the input image.
16. The system of claim 14 wherein object detection is automatically performed by using an object detector.
17. The system of claim 14 wherein the program module to perform image background blurring comprises:
for each pixel, averaging colors of the pixels in an area corresponding to the probability that a pixel is background, and replacing the pixel color with the averaged color.
18. A computer-implemented process for blurring the background in an image of an image sequence, comprising:
inputting an image divided into pixels;
performing foreground/background modeling to determine the probability of each pixel in the image being foreground or background;
using the probability that each pixel is foreground or background to blur background pixels in the image.
19. The computer-implemented process of claim 18 wherein pixels with a high probability of being foreground pixels are not blurred.
20. The computer-implemented process of claim 19 wherein pixels with a probability of being background pixels are blurred proportional to the likelihood that they are background pixels.
US11/422,693 2006-06-07 2006-06-07 Background blurring for video conferencing Expired - Fee Related US7783075B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/422,693 US7783075B2 (en) 2006-06-07 2006-06-07 Background blurring for video conferencing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/422,693 US7783075B2 (en) 2006-06-07 2006-06-07 Background blurring for video conferencing

Publications (2)

Publication Number Publication Date
US20070286520A1 true US20070286520A1 (en) 2007-12-13
US7783075B2 US7783075B2 (en) 2010-08-24

Family

ID=38822065

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/422,693 Expired - Fee Related US7783075B2 (en) 2006-06-07 2006-06-07 Background blurring for video conferencing

Country Status (1)

Country Link
US (1) US7783075B2 (en)

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080211967A1 (en) * 2007-02-21 2008-09-04 Megachips Corporation Imaging unit, portable terminal device, and portable terminal system
US20090195666A1 (en) * 2008-02-06 2009-08-06 Tao Chen Multi-focus camera apparatus and image processing method and program used therein
US20100007759A1 (en) * 2008-07-10 2010-01-14 Yoshikazu Watanabe Image processor, imaging apparatus including the same, and image processing method
CN101686338A (en) * 2008-09-26 2010-03-31 索尼株式会社 System and method for partitioning foreground and background in video
US20100215256A1 (en) * 2009-02-25 2010-08-26 Micro-Star Int'l Co., Ltd. Method and device for maintaining image background by multiple gaussian models
US20110110431A1 (en) * 2009-11-09 2011-05-12 Canon Kabushiki Kaisha Method of coding and decoding a stream of images; associated devices
US20120007939A1 (en) * 2010-07-06 2012-01-12 Tessera Technologies Ireland Limited Scene Background Blurring Including Face Modeling
EP2463821A1 (en) * 2010-12-08 2012-06-13 Alcatel Lucent Method and system for segmenting an image
US20120327172A1 (en) * 2011-06-22 2012-12-27 Microsoft Corporation Modifying video regions using mobile device input
WO2013107037A1 (en) * 2012-01-20 2013-07-25 Thomson Licensing Blur measurement
US20130230244A1 (en) * 2012-03-02 2013-09-05 Chintan Intwala Continuously Adjustable Bleed for Selected Region Blurring
US20130236117A1 (en) * 2012-03-09 2013-09-12 Samsung Electronics Co., Ltd. Apparatus and method for providing blurred image
US20130258138A1 (en) * 2012-03-30 2013-10-03 Samsung Electronics Co., Ltd. Apparatus for generating an image with defocused background and method thereof
US8593542B2 (en) 2005-12-27 2013-11-26 DigitalOptics Corporation Europe Limited Foreground/background separation using reference images
US20130342629A1 (en) * 2012-06-20 2013-12-26 At&T Intellectual Property I, Lp Apparatus and method for modification of telecommunication video content
US20140176663A1 (en) * 2012-12-20 2014-06-26 Microsoft Corporation Privacy camera
US20140184792A1 (en) * 2012-12-27 2014-07-03 Canon Kabushiki Kaisha Image processing apparatus and image processing method
WO2015120385A1 (en) * 2014-02-10 2015-08-13 Alibaba Group Holding Limited Video communication method and system in instant communication
US9118810B1 (en) * 2009-07-02 2015-08-25 United Services Automobile Association (Usaa) Systems and methods for videophone identity cloaking
US20150350255A1 (en) * 2012-11-30 2015-12-03 Intel Corporation Verified Sensor Data Processing
CN105550543A (en) * 2015-06-30 2016-05-04 宇龙计算机通信科技(深圳)有限公司 Iris information processing method and user terminal
US9569854B2 (en) * 2014-06-17 2017-02-14 Tencent Technology (Shenzhen) Company Limited Image processing method and apparatus
US20170070720A1 (en) * 2015-09-04 2017-03-09 Apple Inc. Photo-realistic Shallow Depth-of-Field Rendering from Focal Stacks
US9652854B2 (en) * 2015-04-09 2017-05-16 Bendix Commercial Vehicle Systems Llc System and method for identifying an object in an image
CN107493452A (en) * 2017-08-09 2017-12-19 广东欧珀移动通信有限公司 Video pictures processing method, device and terminal
WO2019040668A1 (en) * 2017-08-22 2019-02-28 Alarm.Com Incorporated Preserving privacy in surveillance
US20200126645A1 (en) * 2006-11-27 2020-04-23 Therap Services, Llc Method and System for Acquiring and Evaluating Goal and Outcome Information for Individuals Under Care
US10957063B2 (en) * 2018-03-26 2021-03-23 Adobe Inc. Dynamically modifying virtual and augmented reality content to reduce depth conflict between user interface elements and video content
US20210142455A1 (en) * 2018-08-01 2021-05-13 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and apparatus for image processing
US11064166B2 (en) 2019-06-24 2021-07-13 Alarm.Com Incorporated Dynamic video exclusion zones for privacy
US11068696B2 (en) * 2016-08-24 2021-07-20 International Business Machines Corporation Protecting individuals privacy in public through visual opt-out, signal detection, and marker detection
EP3910961A1 (en) * 2020-05-12 2021-11-17 Axis AB Video compression stream
US11217345B2 (en) * 2019-05-22 2022-01-04 Mocxa Health Private Limited Anonymization of audio-visual medical data
US20220028066A1 (en) * 2018-12-10 2022-01-27 Voxeleron, LLC System and method for obtaining measurements from imaging data
US11973991B2 (en) * 2019-10-11 2024-04-30 International Business Machines Corporation Partial loading of media based on context

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101587586B (en) * 2008-05-20 2013-07-24 株式会社理光 Device and method for processing images
US8416277B2 (en) * 2009-12-10 2013-04-09 Apple Inc. Face detection as a metric to stabilize video during video chat session
US9083850B1 (en) * 2013-06-29 2015-07-14 Securus Technologies, Inc. Video blurring in a secure environment
US9955140B2 (en) 2015-03-11 2018-04-24 Microsoft Technology Licensing, Llc Distinguishing foreground and background with inframed imaging
CN105227847B (en) * 2015-10-30 2018-10-12 上海斐讯数据通信技术有限公司 A kind of the camera photographic method and system of mobile phone
US10306315B2 (en) 2016-03-29 2019-05-28 International Business Machines Corporation Video streaming augmenting
EP3438929B1 (en) * 2017-08-04 2020-07-08 Université de Liège Foreground and background detection method
CN110009556A (en) * 2018-01-05 2019-07-12 广东欧珀移动通信有限公司 Image background weakening method, device, storage medium and electronic equipment
US10733706B2 (en) * 2018-01-07 2020-08-04 Htc Corporation Mobile device, and image processing method for mobile device
CN109285178A (en) * 2018-10-25 2019-01-29 北京达佳互联信息技术有限公司 Image partition method, device and storage medium
US10785421B2 (en) 2018-12-08 2020-09-22 Fuji Xerox Co., Ltd. Systems and methods for implementing personal camera that adapts to its surroundings, both co-located and remote
US10891128B1 (en) 2019-08-07 2021-01-12 Microsoft Technology Licensing, Llc Software regression detection in computing systems
US11516431B2 (en) 2020-07-30 2022-11-29 Microsoft Technology Licensing, Llc Meeting privacy protection system
TWI757940B (en) * 2020-10-29 2022-03-11 宏碁股份有限公司 Video conferencing system and method of removing interruption thereof
US11838684B2 (en) * 2021-01-26 2023-12-05 Dell Products, Lp System and method for operating an intelligent videoframe privacy monitoring management system for videoconferencing applications
US11800056B2 (en) 2021-02-11 2023-10-24 Logitech Europe S.A. Smart webcam system
US11800048B2 (en) 2021-02-24 2023-10-24 Logitech Europe S.A. Image generating system with background replacement or modification capabilities
US20240089403A1 (en) * 2022-09-14 2024-03-14 Google Llc Chat View Modification Based on User Identification or User Movement

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010037191A1 (en) * 2000-03-15 2001-11-01 Infiniteface Inc. Three-dimensional beauty simulation client-server system
US6415054B1 (en) * 1997-07-15 2002-07-02 Silverbrook Research Pty Ltd. Target detection for dot region alignment in optical storage systems using ink dots
US6526161B1 (en) * 1999-08-30 2003-02-25 Koninklijke Philips Electronics N.V. System and method for biometrics-based facial feature extraction
US6665454B1 (en) * 1997-07-15 2003-12-16 Silverbrook Research Pty Ltd Dot adjacency compensation in optical storage systems using ink dots
US20040218827A1 (en) * 2003-05-02 2004-11-04 Michael Cohen System and method for low bandwidth video streaming for face-to-face teleconferencing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6415054B1 (en) * 1997-07-15 2002-07-02 Silverbrook Research Pty Ltd. Target detection for dot region alignment in optical storage systems using ink dots
US6665454B1 (en) * 1997-07-15 2003-12-16 Silverbrook Research Pty Ltd Dot adjacency compensation in optical storage systems using ink dots
US6526161B1 (en) * 1999-08-30 2003-02-25 Koninklijke Philips Electronics N.V. System and method for biometrics-based facial feature extraction
US20010037191A1 (en) * 2000-03-15 2001-11-01 Infiniteface Inc. Three-dimensional beauty simulation client-server system
US20040218827A1 (en) * 2003-05-02 2004-11-04 Michael Cohen System and method for low bandwidth video streaming for face-to-face teleconferencing

Cited By (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8593542B2 (en) 2005-12-27 2013-11-26 DigitalOptics Corporation Europe Limited Foreground/background separation using reference images
US11923053B2 (en) * 2006-11-27 2024-03-05 Therap Services, Llc HIPPA-compliant computer security method and system for recording visual personal health information in an electronic format relating to at least two individuals, at least one of whom is an individual under care, from a video camera, preventing unauthorized access of a user to the information, formatting the information, and populating forms with the information
US20200126645A1 (en) * 2006-11-27 2020-04-23 Therap Services, Llc Method and System for Acquiring and Evaluating Goal and Outcome Information for Individuals Under Care
US11475983B2 (en) * 2006-11-27 2022-10-18 Therap Services, Llc HIPAA-compliant computer security method and system for recording visual personal health information in an electronic format relating to at least two individuals, at least one of whom is an individual under care, from a video camera, and preventing unauthorized access of a user to the information
US20230005579A1 (en) * 2006-11-27 2023-01-05 Therap Services, Llc HIPAA-Compliant Computer Security Method and System for Recording Visual Personal Health Information in an Electronic Format Relating to at least Two Individuals, at least one of whom is an Individual Under Care, from a Video Camera, Preventing Unauthorized Access of a User to the Information, and Initiating Action to Satisfy a Need
US20230076102A1 (en) * 2006-11-27 2023-03-09 Therap Services, Llc HIPAA-Compliant Computer Security Method and System for Recording Visual Personal Health Information in an Electronic Format Relating to at least Two Individuals, at least one of whom is an Individual Under Care, from a Video Camera, Preventing Unauthorized Access of a User to the Information, Formatting the Information, and Populating Forms with the Information
US20230075511A1 (en) * 2006-11-27 2023-03-09 Therap Services, Llc HIPAA-Compliant Computer Security Method and System for Recording Visual Personal Health Information in an Electronic Format Relating to at least Two Individuals, at least one of whom is an Individual Under Care, from a Video Camera, and Preventing Unauthorized Access of a User to the Information, Preparing Automated Electronic Visit Verfication Records
US11901051B2 (en) * 2006-11-27 2024-02-13 Therap Services, Llc HIPAA-compliant computer security method and system for recording visual personal health information in an electronic format relating to at least two individuals, at least one of whom is an individual under care, from a video camera, preventing unauthorized access of a user to the information, and initiating action to satisfy a need
US11915806B2 (en) * 2006-11-27 2024-02-27 Therap Services, Llc HIPAA-compliant computer security method and system for recording visual personal health information in an electronic format relating to at least two individuals, at least one of whom is an individual under care, from a video camera, preventing unauthorized access of a user to the information, and preparing automated electronic visit verification records
US20080211967A1 (en) * 2007-02-21 2008-09-04 Megachips Corporation Imaging unit, portable terminal device, and portable terminal system
US7995121B2 (en) * 2007-02-21 2011-08-09 Megachips Corporation Imaging unit, portable terminal device, and portable terminal system
US8035725B2 (en) 2008-02-06 2011-10-11 Fujinon Corporation Multi-focus camera apparatus and image processing method and program used therein
US20090195666A1 (en) * 2008-02-06 2009-08-06 Tao Chen Multi-focus camera apparatus and image processing method and program used therein
EP2088769A1 (en) * 2008-02-06 2009-08-12 Fujinon Corporation Multi-focus camera apparatus and image processing method and program used therein
US20100007759A1 (en) * 2008-07-10 2010-01-14 Yoshikazu Watanabe Image processor, imaging apparatus including the same, and image processing method
US8149290B2 (en) * 2008-07-10 2012-04-03 Ricoh Company, Ltd. Image processor, imaging apparatus including the same, and image processing method, with blurring processing of background image
US8280165B2 (en) * 2008-09-26 2012-10-02 Sony Corporation System and method for segmenting foreground and background in a video
CN101686338A (en) * 2008-09-26 2010-03-31 索尼株式会社 System and method for partitioning foreground and background in video
US20100098331A1 (en) * 2008-09-26 2010-04-22 Sony Corporation System and method for segmenting foreground and background in a video
US8218864B2 (en) * 2009-02-25 2012-07-10 Msi Computer(Shenzhen)Co., Ltd. Method and device for maintaining image background by multiple Gaussian models
US20100215256A1 (en) * 2009-02-25 2010-08-26 Micro-Star Int'l Co., Ltd. Method and device for maintaining image background by multiple gaussian models
US9118810B1 (en) * 2009-07-02 2015-08-25 United Services Automobile Association (Usaa) Systems and methods for videophone identity cloaking
US20110110431A1 (en) * 2009-11-09 2011-05-12 Canon Kabushiki Kaisha Method of coding and decoding a stream of images; associated devices
US20120007940A1 (en) * 2010-07-06 2012-01-12 Tessera Technologies Ireland Limited Scene Background Blurring Including Range Measurement
US20120007939A1 (en) * 2010-07-06 2012-01-12 Tessera Technologies Ireland Limited Scene Background Blurring Including Face Modeling
US20130194375A1 (en) * 2010-07-06 2013-08-01 DigitalOptics Corporation Europe Limited Scene Background Blurring Including Range Measurement
US8355039B2 (en) * 2010-07-06 2013-01-15 DigitalOptics Corporation Europe Limited Scene background blurring including range measurement
WO2012004682A3 (en) * 2010-07-06 2012-06-14 DigitalOptics Corporation Europe Limited Scene background blurring including range measurement
US8723912B2 (en) * 2010-07-06 2014-05-13 DigitalOptics Corporation Europe Limited Scene background blurring including face modeling
WO2012004682A2 (en) * 2010-07-06 2012-01-12 DigitalOptics Corporation Europe Limited Scene background blurring including range measurement
US9042662B2 (en) 2010-12-08 2015-05-26 Alcatel Lucent Method and system for segmenting an image
CN103262119A (en) * 2010-12-08 2013-08-21 阿尔卡特朗讯公司 Method and system for segmenting an image
WO2012076586A1 (en) * 2010-12-08 2012-06-14 Alcatel Lucent Method and system for segmenting an image
EP2463821A1 (en) * 2010-12-08 2012-06-13 Alcatel Lucent Method and system for segmenting an image
US20120327172A1 (en) * 2011-06-22 2012-12-27 Microsoft Corporation Modifying video regions using mobile device input
US9153031B2 (en) * 2011-06-22 2015-10-06 Microsoft Technology Licensing, Llc Modifying video regions using mobile device input
US9280813B2 (en) 2012-01-20 2016-03-08 Debing Liu Blur measurement
WO2013107037A1 (en) * 2012-01-20 2013-07-25 Thomson Licensing Blur measurement
US20130230244A1 (en) * 2012-03-02 2013-09-05 Chintan Intwala Continuously Adjustable Bleed for Selected Region Blurring
US8831371B2 (en) 2012-03-02 2014-09-09 Adobe Systems Incorporated Methods and apparatus for applying blur patterns to images
US8824793B2 (en) 2012-03-02 2014-09-02 Adobe Systems Incorporated Methods and apparatus for applying a bokeh effect to images
US9019310B2 (en) 2012-03-02 2015-04-28 Adobe Systems Incorporated Methods and apparatus for applying complex continuous gradients to images
US8693776B2 (en) * 2012-03-02 2014-04-08 Adobe Systems Incorporated Continuously adjustable bleed for selected region blurring
US20130236117A1 (en) * 2012-03-09 2013-09-12 Samsung Electronics Co., Ltd. Apparatus and method for providing blurred image
CN103366352A (en) * 2012-03-30 2013-10-23 北京三星通信技术研究有限公司 Device and method for producing image with background being blurred
US9118846B2 (en) * 2012-03-30 2015-08-25 Samsung Electronics Co., Ltd. Apparatus for generating an image with defocused background and method thereof
US20130258138A1 (en) * 2012-03-30 2013-10-03 Samsung Electronics Co., Ltd. Apparatus for generating an image with defocused background and method thereof
US8982179B2 (en) * 2012-06-20 2015-03-17 At&T Intellectual Property I, Lp Apparatus and method for modification of telecommunication video content
US20130342629A1 (en) * 2012-06-20 2013-12-26 At&T Intellectual Property I, Lp Apparatus and method for modification of telecommunication video content
US20150350255A1 (en) * 2012-11-30 2015-12-03 Intel Corporation Verified Sensor Data Processing
US10104122B2 (en) * 2012-11-30 2018-10-16 Intel Corporation Verified sensor data processing
US10181178B2 (en) 2012-12-20 2019-01-15 Microsoft Technology Licensing, Llc Privacy image generation system
US9729824B2 (en) 2012-12-20 2017-08-08 Microsoft Technology Licensing, Llc Privacy camera
US20140176663A1 (en) * 2012-12-20 2014-06-26 Microsoft Corporation Privacy camera
US9124762B2 (en) * 2012-12-20 2015-09-01 Microsoft Technology Licensing, Llc Privacy camera
US10789685B2 (en) * 2012-12-20 2020-09-29 Microsoft Technology Licensing, Llc Privacy image generation
CN108184086A (en) * 2012-12-20 2018-06-19 微软技术许可有限责任公司 Video camera with privacy mode
CN108234920A (en) * 2012-12-20 2018-06-29 微软技术许可有限责任公司 Video camera with privacy mode
US20180365809A1 (en) * 2012-12-20 2018-12-20 Microsoft Technology Licensing, Llc Privacy image generation
US9485436B2 (en) * 2012-12-27 2016-11-01 Canon Kabushiki Kaisha Image processing apparatus and image processing method
US20140184792A1 (en) * 2012-12-27 2014-07-03 Canon Kabushiki Kaisha Image processing apparatus and image processing method
US9881359B2 (en) 2014-02-10 2018-01-30 Alibaba Group Holding Limited Video communication method and system in instant communication
TWI650976B (en) * 2014-02-10 2019-02-11 阿里巴巴集團服務有限公司 Video communication method and system in instant messaging process
WO2015120385A1 (en) * 2014-02-10 2015-08-13 Alibaba Group Holding Limited Video communication method and system in instant communication
US9369669B2 (en) 2014-02-10 2016-06-14 Alibaba Group Holding Limited Video communication method and system in instant communication
KR101855224B1 (en) 2014-06-17 2018-05-08 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 Image processing method and apparatus
US9569854B2 (en) * 2014-06-17 2017-02-14 Tencent Technology (Shenzhen) Company Limited Image processing method and apparatus
CN107667391A (en) * 2015-04-09 2018-02-06 奔迪士商业运输系统公司 System and method for the object in identification image
CN107667391B (en) * 2015-04-09 2021-02-26 奔迪士商业运输系统公司 System and method for identifying objects in an image
US9652854B2 (en) * 2015-04-09 2017-05-16 Bendix Commercial Vehicle Systems Llc System and method for identifying an object in an image
CN105550543A (en) * 2015-06-30 2016-05-04 宇龙计算机通信科技(深圳)有限公司 Iris information processing method and user terminal
US10284835B2 (en) * 2015-09-04 2019-05-07 Apple Inc. Photo-realistic shallow depth-of-field rendering from focal stacks
US20170070720A1 (en) * 2015-09-04 2017-03-09 Apple Inc. Photo-realistic Shallow Depth-of-Field Rendering from Focal Stacks
US11068696B2 (en) * 2016-08-24 2021-07-20 International Business Machines Corporation Protecting individuals privacy in public through visual opt-out, signal detection, and marker detection
CN107493452A (en) * 2017-08-09 2017-12-19 广东欧珀移动通信有限公司 Video pictures processing method, device and terminal
WO2019040668A1 (en) * 2017-08-22 2019-02-28 Alarm.Com Incorporated Preserving privacy in surveillance
US11032491B2 (en) 2017-08-22 2021-06-08 Alarm.Com Incorporated Preserving privacy in surveillance
US20190068895A1 (en) * 2017-08-22 2019-02-28 Alarm.Com Incorporated Preserving privacy in surveillance
US10798313B2 (en) 2017-08-22 2020-10-06 Alarm.Com Incorporated Preserving privacy in surveillance
US10957063B2 (en) * 2018-03-26 2021-03-23 Adobe Inc. Dynamically modifying virtual and augmented reality content to reduce depth conflict between user interface elements and video content
US20210142455A1 (en) * 2018-08-01 2021-05-13 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and apparatus for image processing
US11783462B2 (en) * 2018-08-01 2023-10-10 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and apparatus for image processing
US20220028066A1 (en) * 2018-12-10 2022-01-27 Voxeleron, LLC System and method for obtaining measurements from imaging data
US11217345B2 (en) * 2019-05-22 2022-01-04 Mocxa Health Private Limited Anonymization of audio-visual medical data
US11064166B2 (en) 2019-06-24 2021-07-13 Alarm.Com Incorporated Dynamic video exclusion zones for privacy
US11457183B2 (en) 2019-06-24 2022-09-27 Alarm.Com Incorporated Dynamic video exclusion zones for privacy
US12114101B2 (en) 2019-06-24 2024-10-08 Alarm.Com Incorporated Dynamic video exclusion zones for privacy
US11973991B2 (en) * 2019-10-11 2024-04-30 International Business Machines Corporation Partial loading of media based on context
US11610461B2 (en) 2020-05-12 2023-03-21 Axis Ab Video compression stream
EP3910961A1 (en) * 2020-05-12 2021-11-17 Axis AB Video compression stream

Also Published As

Publication number Publication date
US7783075B2 (en) 2010-08-24

Similar Documents

Publication Publication Date Title
US7783075B2 (en) Background blurring for video conferencing
JP4898800B2 (en) Image segmentation
US10275892B2 (en) Multi-view scene segmentation and propagation
US7720282B2 (en) Stereo image segmentation
Fang et al. A video saliency detection model in compressed domain
US9153031B2 (en) Modifying video regions using mobile device input
US7634108B2 (en) Automated face enhancement
Johnston et al. A review of digital video tampering: From simple editing to full synthesis
Butler et al. Real-time adaptive foreground/background segmentation
JP2009526495A (en) Region of interest image object segmentation between modes
US9965882B2 (en) Generating image compositions
US9934818B1 (en) Automated seamless video loop
CN108305267B (en) Object segmentation method, device, apparatus, storage medium, and program
Yu et al. A robust method for detecting and counting people
CN107368817B (en) Face recognition method and device
US10062409B2 (en) Automated seamless video loop
US20180090172A1 (en) Automated seamless video loop
Parolin et al. Bilayer video segmentation for videoconferencing applications
CN113313635A (en) Image processing method, model training method, device and equipment
US10122940B2 (en) Automated seamless video loop
CN104732503B (en) Image defogging Enhancement Method and device
JP2017143339A (en) Image synthesizing apparatus, operation method of image synthesizing apparatus, and computer program
Karageorgos et al. Semantic filtering for video stabilization
Chen et al. Online learning of region confidences for object tracking
Yang et al. Saliency‐aware Real‐time Volumetric Fusion for Object Reconstruction

Legal Events

Date Code Title Description
AS Assignment

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ZHANG, CHA;HE, LI-WEI;RUI, YONG;REEL/FRAME:017737/0726;SIGNING DATES FROM 20060605 TO 20060606

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ZHANG, CHA;HE, LI-WEI;RUI, YONG;SIGNING DATES FROM 20060605 TO 20060606;REEL/FRAME:017737/0726

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034542/0001

Effective date: 20141014

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552)

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20220824