System and method for depth-guided image filtering in a video conference environment

Abstract
A method is provided in one example embodiment that includes receiving a plurality of depth values corresponding to pixels of an image; and filtering the image as a function of a plurality of variations in the depth values between adjacent pixels of a window associated with the image. In more detailed embodiments, the method may include encoding the image into a bit stream for transmission over a network. The filtering can account for a bit rate associated with the encoding of the image.
Description
TECHNICAL FIELD

This disclosure relates in general to the field of communications, and more particularly, to a system and a method for depth-guided image filtering in a video conference environment.


BACKGROUND

Video architectures have grown in complexity in recent times. Some video architectures can deliver real-time, face-to-face interactions between people using advanced visual, audio, and collaboration technologies. In certain architectures, service providers may offer sophisticated video conferencing services for their end users, which can simulate an “in-person” meeting experience over a network. The ability to optimize video encoding and decoding with certain bitrate constraints during a video conference presents a significant challenge to developers and designers, who attempt to offer a video conferencing solution that is realistic and that mimics a real-life meeting.





BRIEF DESCRIPTION OF THE DRAWINGS

To provide a more complete understanding of the present disclosure and features and advantages thereof, reference is made to the following description, taken in conjunction with the accompanying figures, wherein like reference numerals represent like parts, in which:



FIG. 1 is a simplified block diagram illustrating an example embodiment of a communication system in accordance this disclosure;



FIG. 2A is a simplified block diagram illustrating additional details that may be associated with a video processing unit in which a depth-guided filter is coupled with a video encoder to encode an image;



FIG. 2B is a simplified block diagram illustrating additional details that may be associated with a video processing unit in which a depth-guided filter is coupled with a video decoder to decode an image;



FIG. 3 is a simplified block diagram illustrating additional details that may be associated with another embodiment of a video processing unit, in which a depth-guided filter is coupled with a video decoder as a pre-filter;



FIG. 4 is a simplified block diagram illustrating additional details that may be associated with another embodiment of a video encoder in which a depth-guided filter is an in-loop filter;



FIG. 5 is a simplified block diagram illustrating additional details that may be associated with another embodiment of a video decoder in which a depth-guided filter is an in-loop filter; and



FIG. 6 is a simplified flowchart illustrating one possible set of activities associated with the present disclosure.





DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS
Overview

A method is provided in one example embodiment that includes receiving a plurality of depth values corresponding to pixels of an image. The method also includes filtering (e.g., adjusting, modifying, improving) the image as a function of a plurality of variations (e.g., differences) in the depth values between adjacent pixels of a window associated with the image. In more detailed embodiments, the method may include encoding the image into a bit stream for transmission over a network. The filtering can account for a bit rate associated with the encoding of the image.


In other embodiments, the method includes receiving intensity values corresponding to the pixels, where the filtering is a function of variations in the intensity values between the adjacent pixels. The filtering of the image can include smoothing certain adjacent pixels having variations of depth values below a threshold value. The image is filtered in a loop comprising an inverse transform, an inverse quantization, and a prediction compensation that is based on previous encoding. The window may include pixels from a spatial region, or a temporal region. The filtering can preserve pixels corresponding to depth values closer to a viewpoint over pixels corresponding to depth values further away from the viewpoint.


Example Embodiments

Turning to FIG. 1, FIG. 1 is a simplified schematic diagram illustrating a communication system 100 for conducting a video conference in accordance with one embodiment of the present disclosure. FIG. 1 includes multiple endpoints associated with various end users of the video conference. In general, endpoints may be geographically separated, where in this particular example, a plurality of endpoints 112a-112c are located in San Jose, Calif. and remote endpoints (not shown) are located in Chicago, Ill. FIG. 1 includes a multipoint manager element 120 coupled to endpoints 112a-112c. Note that the numerical and letter designations assigned to the endpoints do not connote any type of hierarchy; the designations are arbitrary and have been used for purposes of teaching only. These designations should not be construed in any way to limit their capabilities, functionalities, or applications in the potential environments that may benefit from the features of communication system 100.


In this example, each endpoint 112a-112c is fitted discreetly along a desk and is proximate to its associated participant. Such endpoints could be provided in any other suitable location, as FIG. 1 only offers one of a multitude of possible implementations for the concepts presented herein. In one example implementation, the endpoints are videoconferencing endpoints, which can assist in receiving and communicating video and audio data. Other types of endpoints are certainly within the broad scope of the outlined concepts, and some of these example endpoints are further described below. Each endpoint 112a-112c is configured to interface with a respective multipoint manager element 120, which helps to coordinate and to process information being transmitted by the end users.


As illustrated in FIG. 1, a number of image capture devices 114a-114c and displays 115a-115c are provided to interface with endpoints 112a-112c, respectively. Displays 115a-115c render images to be seen by conference participants and, in this particular example, reflect a three-display design (e.g., a ‘triple’). Note that as used herein in this specification, the term “display” is meant to connote any element that is capable of rendering an image during a video conference. This would necessarily be inclusive of any panel, screen, Telepresence display or wall, computer display, plasma element, television, monitor, or any other suitable surface or element that is capable of such rendering.


The components of communication system 100 may use specialized applications and hardware to create a system that can leverage a network. Communication system 100 can use standard IP technology and can operate on an integrated voice, video, and data network. The system can also support high quality, real-time voice, and video communications using broadband connections. It can further offer capabilities for ensuring quality of service (QoS), security, reliability, and high availability for high-bandwidth applications such as video. Power and Ethernet connections for all end users can be provided. Participants can use their laptops to access data for the meeting, join a meeting place protocol or a Web session, or stay connected to other applications throughout the meeting.


For purposes of illustrating certain example techniques of communication system 100, it is important to understand certain image processing techniques and the communications that may be traversing the network. The following foundational information may be viewed as a basis from which the present disclosure may be properly explained.


Conceptually, an image may be described as any electronic element (e.g., an artifact) that reproduces the form of a subject, such as an object or a scene. In many contexts, an image may be an optically formed duplicate or reproduction of a subject, such as a two-dimensional photograph of an object or scene. In a broader sense, an image may also include any two-dimensional representation of information, such as a drawing, painting, or map. A video is a sequence of images, in which each still image is generally referred to as a “frame.”


A digital image, in general terms, is a numeric representation of an image. A digital image is most commonly represented as a set (rows and columns) of binary values, in which each binary value is a picture element (i.e., a “pixel”). A pixel holds quantized values that represent the intensity (or “brightness”) of a given color at any specific point in the two-dimensional space of the image. A digital image can be classified generally according to the number and nature of those values (samples), such as binary, grayscale, or color. Typically, pixels are stored in a computer memory as a two-dimensional array of small integers (i.e., a raster image or a raster map).


An image (or video) may be captured by optical devices having a sensor that converts lights into electrical charges, such as a digital camera or a scanner, for example. The electrical charges can then be converted into digital values. Some digital cameras give access to almost all the data captured by the camera, using a raw image format. An image can also be synthesized from arbitrary non-image information, such as mathematical functions or three-dimensional geometric models.


Images from digital image capture devices often receive further processing to improve their quality and/or to reduce the consumption of resources, such as memory or bandwidth. For example, a digital camera frequently includes a dedicated digital image-processing unit (or chip) to convert the raw data from the image sensor into a color-corrected image in a standard image file format. Image processing in general includes any form of signal processing for which the input is an image, such as a photograph or video frame. The output of image processing may be either an image or a set of characteristics or parameters related to the image. Most image-processing techniques involve treating the image as a two-dimensional signal and applying standard signal-processing techniques to it.


Digital images can be coded (or compressed) to reduce or remove irrelevance and redundancy from the image data to improve storage and/or transmission efficiency. For example, general-purpose compression generally includes entropy encoding to remove statistical redundancy from data. However, entropy encoding is frequently not very effective for image data without an image model that attempts to represent a signal in a form that is more readily compressible. Such models exploit the subjective redundancy of images (and video). A motion model that estimates and compensates for motion can also be included to exploit significant temporal redundancy usually found in video.


An image encoder usually processes image data in blocks of samples. Each block can be transformed (e.g., with a discrete cosine transform) into spatial frequency coefficients. Energy in the transformed image data tends to be concentrated in a few significant coefficients; other coefficients are usually close to zero or insignificant. The transformed image data can be quantized by dividing each coefficient by an integer and discarding the remainder, typically leaving very few non-zero coefficients, which can readily be encoded with an entropy encoder. In video, the amount of data to be coded can be reduced significantly if the previous frame is subtracted from the current frame.


Digital image processing often also includes some form of filtering intended to improve the quality of an image, such as by reducing noise and other unwanted artifacts. Image noise can be generally defined as random variation of brightness or color information in images not present in the object imaged. Image noise is usually an aspect of electronic noise, which can be produced by the sensor and/or other circuitry of a capture device. Image noise can also originate during quantization. In video, noise can also refer to the random dot pattern that is superimposed on the picture as a result of electronic noise. Interference and static are other forms of noise, in the sense that they are unwanted, which can affect transmitted signals.


Smoothing filters attempt to preserve important patterns in an image, while reducing or eliminating noise or other fine-scale structures. Many different algorithms can be implemented in filters to smooth an image. One of the most common algorithms is the “moving average”, often used to try to capture important trends in repeated statistical surveys. Noise filters, for example, generally attempt to determine whether the actual differences in pixel values constitute noise or real photographic detail, and average out the former while attempting to preserve the latter. However, there is often a tradeoff made between noise removal and preservation of fine, low-contrast detail that may have characteristics similar to noise. Other filters (e.g., a deblocking filter) can be applied to improve visual quality and prediction performance, such as by smoothing the sharp edges that can form between macroblocks when block-coding techniques are used.


Image textures can also be calculated in image processing to quantify the perceived texture of an image. Image texture data provides information about the spatial arrangement of color or intensities in an image or a selected region of an image. The use of edge detection to determine the number of edge pixels in a specified region helps determine a characteristic of texture complexity. After edges have been found, the direction of the edges can also be applied as a characteristic of texture and can be useful in determining patterns in the texture. These directions can be represented as an average or in a histogram. Image textures may also be useful for classification and segmentation of images. In general, there are two primary types of segmentation based on image texture: region-based and boundary-based. Region-based segmentation generally attempts to group or cluster pixels based on texture properties together, while boundary-based segmentation attempts to group or cluster pixels based on edges between pixels that come from different texture properties. Though image texture is not always a perfect measure for segmentation, it can be used effectively along with other measures, such as color, to facilitate image segmentation.


In 3-D imaging, an image may be accompanied by a depth map that contains information corresponding to a third dimension of the image: indicating distances of objects in the scene to the viewpoint. In this sense, depth is a broad term indicative of any type of measurement within a given image. Each depth value in a depth map can correspond to a pixel in an image, which can be correlated with other image data (e.g., intensity values). Depth maps may be used for virtual view synthesis in 3-D video systems (e.g., 3DTV, or for gesture recognition in human-computer interaction, for example, MICROSOFT KINECT).


From a video coding perspective, depth maps may also be used for segmenting images into multiple regions, usually along large depth discontinuities. Each region may then be encoded separately, with possibly different parameters. Segmenting each image into foreground and background is one example, in which foreground objects in closer proximity to the viewpoint are differentiated from background objects that are relatively far away from the viewpoint. Such segmentation can be especially meaningful for Telepresence and video conferencing, in which scenes comprise primarily meeting participants, i.e., people.


However, merely using depth maps for image segmentation does not fully exploit the information to optimize image coding. In general, pixels within a region have been treated equally after segmentation in coding: regardless of their locations in the region with respect to other regions. In the foreground-background case, for example, a block of pixels in a color image is encoded as either foreground or background, which lacks a fine grain approach for improving image coding using depth.


In accordance with embodiments disclosed herein, communication system 100 can overcome this shortcoming (and others) by providing depth-guided image filtering. More specifically, communication system 100 can provide a system and method for processing a sequence of images using depth maps that are generated in correspondence to the images. Depth maps and texture data of images can be used to develop a filter, which can be applied to the images. Such a system and method may be particularly advantageous for a conferencing environment such as communication system 100, in which images are encoded under a bitrate constraint and transported over a network, but the filter may also be applied advantageously independent of image encoding.


At its most general level, the system and method described herein may include receiving an image and a depth map, such as from a 3-D camera, and filtering the image according to the depth map such that details in the image that correspond to depth discontinuity and intensity variation can be preserved while substantially reducing or eliminating noise in the image. When coupled with a video encoder, the image may be further filtered such that details of objects closer to a viewpoint are preserved preferentially over objects further away, which may be particularly useful when the bitrate for encoding the image is constrained. For a block-based video encoder such as H.264 or MPEG-4, for example, the filtering may operate to reduce coding artifacts, such as artifacts introduced by quantization errors. When coupled with a video encoder, depth-guided filtering may further operate to conceal errors from partial image corruption, such as might occur with data loss during transmission.


Before turning to some of the additional operations of communication system 100, a brief discussion is provided about some of the infrastructure of FIG. 1. Endpoint 112a may be used by someone wishing to participate in a video conference in communication system 100. The term “endpoint” may be inclusive of devices used to initiate a communication, such as a switch, a console, a proprietary endpoint, a telephone, a bridge, a computer, a personal digital assistant (PDA), a laptop or electronic notebook, an iPhone, an iPad, a Google Droid, any other type of smartphone, or any other device, component, element, or object capable of initiating voice, audio, or data exchanges within communication system 100. In some embodiments, image capture devices may be integrated with an endpoint, particularly mobile endpoints.


Endpoint 112a may also be inclusive of a suitable interface to an end user, such as a microphone, a display, or a keyboard or other terminal equipment. Endpoint 112a may also include any device that seeks to initiate a communication on behalf of another entity or element, such as a program, a database, or any other component, device, element, or object capable of initiating a voice or a data exchange within communication system 100. Data, as used herein, refers to any type of video, numeric, voice, or script data, or any type of source or object code, or any other suitable information in any appropriate format that may be communicated from one point to another. Additional details relating to endpoints are provided below with reference to FIG. 2.


In operation, multipoint manager element 120 can be configured to establish, or to foster a video session between one or more end users, which may be located in various other sites and locations. Multipoint manager element 120 can also coordinate and process various policies involving endpoints 112a-112c. In general, multipoint manager element 120 may communicate with endpoints 112a-112c through any standard or proprietary conference control protocol. Multipoint manager element 120 includes a switching component that determines which signals are to be routed to individual endpoints 112a-112c. Multipoint manager element 120 can also determine how individual end users are seen by others involved in the video conference. Furthermore, multipoint manager element 120 can control the timing and coordination of this activity. Multipoint manager element 120 can also include a media layer that can copy information or data, which can be subsequently retransmitted or simply forwarded along to one or more endpoints 112a-112c.



FIG. 2A is a simplified block diagram illustrating additional details that may be associated with a video processing unit 204a, in which a depth-guided filter is coupled with a video encoder to encode an image. In this example embodiment, the video processing unit is integrated with image capture device 114a, which can include also an image sensor unit 202. Video processing unit 204a may further include a processor 206a, a memory element 208a, a video encoder 210 with a depth-guided filter, a filter parameter controller 212a, and a rate controller 214. Video processing unit 204a may be associated with a proprietary element, a server, a network appliance, or any other suitable component, device, module, or element capable of performing the operations discussed herein.


Video processing unit 204a can also be configured to store, aggregate, process, export, and/or otherwise maintain image data and logs in any appropriate format, where these activities can involve processor 206a and memory element 208a. Video processing unit 204a is generally configured to receive information as a signal (e.g., an image signal or a video signal) from image sensor unit 202 via some connection. In the example embodiment of FIG. 2A, video processing unit 204a is integrated with image capture device 114a, but it may be implemented independently of video processing unit 204a, or it may be integrated with other components in communication system 100, such as endpoint 112a or multipoint manager element 120.


Video processing unit 204a may interface with image sensor unit 202 through a wireless connection, or via one or more cables or wires that allow for the propagation of signals between these two elements. These devices can also receive signals from an intermediary device, a remote control, etc., where the signals may leverage infrared, Bluetooth, WiFi, electromagnetic waves generally, or any other suitable transmission protocol for communicating data (e.g., potentially over a network) from one element to another. Virtually any control path can be leveraged in order to deliver information between video processing unit 204a and image sensor unit 202. Transmissions between these two sets of devices can be bidirectional in certain embodiments such that the devices can interact with each other (e.g., dynamically, real-time, etc.). This would allow the devices to acknowledge transmissions from each other and offer feedback, where appropriate. Any of these devices can be consolidated with each other, or operate independently based on particular configuration needs. For example, a single box may encompass audio and video reception capabilities (e.g., a set-top box that includes video processing unit 204a, along with camera and microphone components for capturing video and audio data).


In general terms, video processing unit 204a is a video element, which is intended to encompass any suitable unit, module, software, hardware, server, program, application, application program interface (API), proxy, processor, field programmable gate array (FPGA), erasable programmable read only memory (EPROM), electrically erasable programmable ROM (EEPROM), application specific integrated circuit (ASIC), digital signal processor (DSP), or any other suitable device, component, element, or object configured to process video data. This video element may include any suitable hardware, software, components, modules, interfaces, or objects that facilitate the operations thereof. This may be inclusive of appropriate algorithms and communication protocols that allow for the effective exchange (reception and/or transmission) of data or information.


In yet other embodiments, though, video processing unit 204a may be a network element, or may be integrated with a network element. A network element generally encompasses routers, switches, gateways, bridges, load balancers, firewalls, servers, processors, modules, or any other suitable device, component, element, or object operable to exchange information in a network environment. This includes proprietary elements equally, which can be provisioned with particular features to satisfy a unique scenario or a distinct environment.


Video processing unit 204a may share (or coordinate) certain processing operations with other video elements. Memory element 208a may store, maintain, and/or update data in any number of possible manners. In a general sense, the arrangement depicted herein may be more logical in its representations, whereas a physical architecture may include various permutations/combinations/hybrids of these elements.


In one example implementation, video processing unit 204a may include software (e.g., as part of video encoder 210) to achieve certain operations described herein. In other embodiments, operations may be provided externally to any of the aforementioned elements, or included in some other video element or endpoint (either of which may be proprietary) to achieve this intended functionality. Alternatively, several elements may include software (or reciprocating software) that can coordinate in order to achieve the operations, as outlined herein. In still other embodiments, any of the devices illustrated herein may include any suitable algorithms, hardware, software, components, modules, interfaces, or objects that facilitate operations disclosed herein, including depth-guided image filtering.


In the context of a video conference, image sensor unit 202 can capture participants and other scene elements as a sequence of images 216 and depth maps 218. Each image 216 and depth map 218 can be passed as a signal to video encoder 210 in video processing unit 204a. Video encoder 210 includes a depth-guided filter that can be used to filter and encode the signal into a bit stream 220, which can be transmitted to another endpoint in a video conference, for example. Video encoder 210 may operate under rate controller 214 by receiving instructions from rate controller 214 and providing rate controller 214 with rate statistics of the video encoding. Filter parameter controller 212a may also receive instructions from rate controller 214 and determine parameters for the depth-guided filter based on image 216 and depth map 218. The encoded bit stream may include compressed image data, depth values, and/or parameters from filter parameter controller 212a, for example.



FIG. 2B is a simplified block diagram illustrating additional details that may be associated with a video processing unit 204b, in which a depth-guided filter is coupled with a video decoder to decode an image. Video processing unit 204b is similar to video processing unit 204a in that it also includes a respective processor 206b, a memory element 208b, and a filter parameter controller 212b, and may also be configured to store, aggregate, process, export, and/or otherwise maintain image data and logs in any appropriate format, where these activities can involve processor 206b and memory element 208b. It also shares many of the other characteristics of video processing unit 204a, including characteristics of a video element and/or a network element in various embodiments. In some embodiments, elements of video processing unit 204a and video processing unit 204b may be integrated into a single unit. Video processing unit 204b differs from video processing unit 204a to the extent that it includes a video decoder 222 and operates to decode a bit stream into an image that can be rendered on a suitable output device, such as display 115a, based on received depth values and filter parameters. Video processing unit 204b is generally configured to receive information from a bit stream via some connection, which may be a wireless connection, or via one or more cables or wires that allow for the propagation of signals.



FIG. 3 is a simplified block diagram illustrating additional details that may be associated with another embodiment of a video processing unit in which a depth-guided filter is coupled with a video encoder as a pre-filter. In this example embodiment, video processing unit 302 is integrated with image capture device 114a, which includes image sensor 202. Video processing unit 302 may be similar to video processing unit 204a in that it also includes a respective processor 304, a memory element 308, a filter parameter controller 312, and a rate controller 314, and it may also be configured to store, aggregate, process, export, and/or otherwise maintain image data and logs in any appropriate format, where these activities can involve processor 304 and memory element 308. It also shares many of the other characteristics of video processing unit 204a, including characteristics of a video element and/or a network element in various embodiments.


Video processing unit 302 is generally configured to receive information as a signal from image sensor unit 202 via some connection, which may be a wireless connection, or via one or more cables or wires that allow for the propagation of signals. Video processing unit 302 applies depth-guided filtering to an image 316 based on depth map 318 before it is encoded with video encoder 320, such that edges in image 316 that correspond to depth discontinuity and intensity variations can be preserved while noises in image 316 are removed or reduced.



FIG. 4 is a simplified block diagram illustrating additional details that may be associated with another embodiment of a video encoder, in which a depth-guided filter is an in-loop filter. A video encoder 402 is generally configured to receive image information as a signal via some connection, which may be a wireless connection, or via one or more cables or wires that allow for the propagation of signals. In the example embodiment of video encoder 402, an image can be processed in blocks or macroblocks of samples. In general, a video encoder can transform each block into a block of spatial frequency coefficients, divide each coefficient by an integer, and discard the remainder, such as in a transform and quantization module 404. The resulting coefficients can then be encoded, for example, with entropy encoding module 406.


Prediction (intra/inter prediction module 408) may also be used to enhance encoding, such as with motion compensation. A prediction can be formed based on previously encoded data, either from the current time frame (intra-prediction) or from other frames that have already been coded (inter-prediction). For example, inverse transform and inverse quantization 410 can be used to rescale the quantized transform coefficients. Each coefficient can be multiplied by an integer value to restore its original scale. An inverse transform can combine the standard basis patterns, weighted by the rescaled coefficients, to re-create each block of data. These blocks can be combined together to form a macroblock, and the prediction can be subtracted from the current macroblock to form a residual.


In a video encoder with an in-loop filter, such as video encoder 402, a deblocking filter 412 can also be applied to blocks in decoded video to improve visual quality and prediction performance by smoothing the sharp edges that can form between macroblocks when block-coding techniques are used. In video encoder 402, a depth-guided filter 414 can be applied to an image after inverse transform and inverse quantization, deblocking filtering, and prediction compensation. By fusing depth information with texture data, the depth-guided filtering can help reduce coding artifacts, such as those that can be introduced by quantization errors.



FIG. 5 is a simplified block diagram illustrating additional details that may be associated with another embodiment of a video decoder, in which a depth-guided filter is an in-loop filter. A video decoder 502 is generally configured to receive information from a bit stream via some connection. Entropy decoding, inverse transform, and inverse quantization 504 can be used to decode and rescale quantized transform coefficients from the bit stream. Each coefficient can be multiplied by an integer value to restore its original scale. An inverse transform can combine the standard basis patterns, weighted by the rescaled coefficients, to re-create each block of data. These blocks can be combined together to form a macroblock. In a video decoder with an in-loop filter, such as video decoder 502, a deblocking filter 506 can also be applied to decoded blocks to improve visual quality and prediction performance by smoothing the sharp edges that can form between macroblocks when block-coding techniques are used. In video decoder 502, a depth-guided filter 508 can be applied after deblocking filter 506. Depth-guided filter 508 may also be advantageous for concealing errors if part of an image is corrupted, such as during transmission data loss.


One example form of a depth-guided filter may be defined as:







D





G






F


(
p
)



=


1

W
p







q

S






G

σ
d




(




D
p

-

D
q




)


·


G

σ
r




(




I
p

-

I
q




)


·

I
q








In the equation, p is the center pixel to be filtered, and q is a neighboring pixel in the window S. Dp, Ip, and Dq, Iq denote the depth and intensity values of the two pixels, respectively; Gσd and Gσr are two zero-mean Gaussian distributions with standard deviations σd and σr, which control the strength of Gaussian smoothing according to depth and texture, respectively; and Wp is a normalization factor:







W
p

=




q

S






G

σ
d




(




D
p

-

D
q




)


·


G

σ
r




(




I
p

-

I
q




)








In general, a filter window comprises a finite group of pixels around a pixel to be filtered (the “center” pixel). The window is typically symmetric about the center pixel, but may also be asymmetrical in some embodiments. The window can be square (e.g., 3×3, 5×5, etc.), but can also be circular or other shapes. The window S may include pixels from a spatial or temporal region (e.g., a neighborhood) or both. In this example embodiment of a depth-guided filter, all pixels are given the same weight regardless of their spatial or temporal distance to the center pixel p, but in other embodiments different weights can be assigned to neighboring pixels in accordance to their distance to the center pixel. Such different weights may also follow a Gaussian distribution with respect to the distance of the pixels. Alternatively, other distributions such as the Gibbs distribution (also known as the Gibbs measure) or user-defined piece-wise linear/non-linear functions may be used instead of the Gaussian distribution.


A depth-guided filter as described herein may be applied to remove spatial and temporal noise that is coherent from the production of images (e.g., from the video camera, and to reduce coding errors such as quantization errors). By taking into account both depth and texture variations, the filtering operations can be performed such that pixels with small depth and intensity variations (therefore, likely to be noise) will be smoothed, whereas those with large depth or intensity variations can be preserved. As a result, details corresponding to contour and texture-rich areas in the image may be perceptually enhanced.


The strength of the smoothing effect of each Gaussian can be controlled by the standard deviation (i.e., σ). The strength is directly proportional to the size of the standard deviation. Consequently, fewer details may be preserved after filtering. In a video encoding context, this means that there may be less information to be encoded. Therefore, by adjusting the sigma σd according to the depth of pixels, one may preferably preserve more details for objects that are closer to the viewpoint and less for objects that are farther away. When operating under a bit-rate controller, the adjustment may also account for the bit rate that is available for encoding the current image.


When included in a video decoding loop, the depth-guided filter may also operate to conceal decoding errors that may be caused by, for example, loss of image data during transmission over a network, assuming that the corresponding depth data was correctly received. For example, the error concealment process may include first copying image data from previously decoded images from multiple locations, selecting the one that has strong edges best aligned with discontinuities in the received depth map, and applying the depth-guided filter to the image formed by the preceding step.



FIG. 6 is a simplified flowchart 600 illustrating potential operations that may be associated with example embodiments of a video encoder and/or decoder according to this disclosure. At 602, depth values corresponding to pixels of an image may be received. At 604, intensity values corresponding to the pixels may also be received. At 606, the image can be filtered as a function of variations in depth and intensity values between adjacent pixels of a window. For example, the filtering may include smoothing adjacent pixels having variations of depth values below a configurable threshold value. In general, the filtering can preserve pixels corresponding to depth values closer to a viewpoint (preferentially) over pixels corresponding to depth values further away from the viewpoint. At 608, the image can be encoded into a bit stream for transmission (e.g., over a network interface).


At 610, the encoded bit stream may be transmitted, along with depth information and other codec parameters, which may be received at 612. At 614, the depth information and other codec parameters may be used to decode the bit stream into an image. Note that such depth-guided filtering may provide significant advantages, some of which have already been discussed. In particular, a depth map can be used to improve image quality, by reducing noise and coding errors, for example. Depth-guided filtering may also provide a fine granular control of image details.


In certain example implementations, the image processing functions outlined herein may be implemented by logic encoded in one or more tangible media (e.g., embedded logic provided in an application specific integrated circuit (ASIC), digital signal processor (DSP) instructions, software (potentially inclusive of object code and source code) to be executed by a processor, or other similar machine, etc.). In some of these instances, a memory element (as shown in FIG. 2A and FIG. 2B) can store data used for the operations described herein. This includes the memory element being able to store software, logic, code, or processor instructions that are executed to carry out the activities described herein. A processor can execute any type of instructions associated with the data to achieve the operations detailed herein. In one example, a processor (e.g., as shown in FIG. 2A and FIG. 2B) could transform an element or an article (e.g., data) from one state or thing to another state or thing. In another example, the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by a processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an erasable programmable read only memory (EPROM), an electrically erasable programmable ROM (EEPROM)) or an ASIC that includes digital logic, software, code, electronic instructions, or any suitable combination thereof.


In certain implementations, a video processing unit (or other elements of communication system 100) can include software in order to achieve the depth-guided image filtering outlined herein. For example, at least some portions of the activities outlined herein may be implemented in non-transitory logic (i.e., software) provisioned in, for example, video processing units 204a-204b, multipoint manager element 120, and/or any of endpoints 112a-112c. Such a configuration can include one or more instances of video encoder with depth-guided filter 210/video decoder with depth-guided filter 222 being provisioned in various locations of the network. In some embodiments, one or more of these features may be implemented in hardware, provided external to the aforementioned elements, or consolidated in any appropriate manner to achieve the intended functionalities. Moreover, the aforementioned elements may include software (or reciprocating software) that can coordinate in order to achieve the operations as outlined herein. In still other embodiments, these elements may include any suitable algorithms, hardware, software, components, modules, interfaces, or objects that facilitate the operations thereof.


Furthermore, components of communication system 100 described and shown herein may also include suitable interfaces for receiving, transmitting, and/or otherwise communicating data or information in a network environment. Additionally, some of the processors and memories associated with the various components may be removed, or otherwise consolidated such that a single processor and a single memory location are responsible for certain activities. In a general sense, the arrangements depicted in the FIGURES may be more logical in their representations, whereas a physical architecture may include various permutations, combinations, and/or hybrids of these elements. It is imperative to note that countless possible design configurations can be used to achieve the operational objectives outlined here. Accordingly, the associated infrastructure has a myriad of substitute arrangements, design choices, device possibilities, hardware configurations, software implementations, equipment options, etc.


The elements discussed herein may be configured to keep information in any suitable memory element (random access memory (RAM), ROM, EPROM, EEPROM, ASIC, etc.), software, hardware, or in any other suitable component, device, element, or object where appropriate and based on particular needs. Any of the memory items discussed herein (e.g., database, table, cache, key, etc.) should be construed as being encompassed within the broad term “memory element.” Similarly, any of the potential processing elements, modules, and machines described herein should be construed as being encompassed within the broad term “processor.”


Note that with the examples provided above, interaction may be described in terms of two, three, or four elements or components. However, this has been done for purposes of clarity and example only. In certain cases, it may be easier to describe one or more of the functions or operations by only referencing a limited number of components. It should be appreciated that the principles described herein are readily scalable and can accommodate a large number of components, as well as more complicated/sophisticated arrangements and configurations. Accordingly, the examples provided should not limit the scope or inhibit the broad teachings provided herein as potentially applied to a myriad of other architectures. Additionally, although described with reference to particular scenarios, where a particular module is provided within an element, these modules can be provided externally, or consolidated and/or combined in any suitable fashion. In certain instances, such modules may be provided in a single proprietary unit.


It is also important to note that operations in the appended diagrams illustrate only some of the possible scenarios and patterns that may be executed by, or within elements of communication system 100. Some of these operations may be deleted or removed where appropriate, or these operations may be modified or changed considerably without departing from the scope of teachings provided herein. In addition, a number of these operations have been described as being executed concurrently with, or in parallel to, one or more additional operations. However, the timing of these operations may be altered considerably. The preceding operational flows have been offered for purposes of example and discussion. Substantial flexibility is provided in that any suitable arrangements, chronologies, configurations, and timing mechanisms may be provided without departing from the teachings provided herein.


Although a system and method for depth-guided image filtering has been described in detail with reference to particular embodiments, it should be understood that various other changes, substitutions, and alterations may be made hereto without departing from the spirit and scope of this disclosure. For example, although the previous discussions have focused on video conferencing associated with particular types of endpoints, handheld devices that employ video applications could readily adopt the teachings of the present disclosure. For example, iPhones, iPads, Android devices, personal computing applications (i.e., desktop video solutions, Skype, etc.) can readily adopt and use the depth-guided filtering operations detailed above. Any communication system or device that encodes video data would be amenable to the features discussed herein.


It is also imperative to note that the systems and methods described herein can be used in any type of imaging or video application. This can include standard video rate transmissions, adaptive bit rate (ABR), variable bit rate (VBR), CBR, or any other imaging technology in which image encoding can be utilized. Numerous other changes, substitutions, variations, alterations, and modifications may be ascertained to one skilled in the art and it is intended that the present disclosure encompass all such changes, substitutions, variations, alterations, and modifications as falling within the scope of the appended claims.


In order to assist the United States Patent and Trademark Office (USPTO) and, additionally, any readers of any patent issued on this application in interpreting the claims appended hereto, Applicant wishes to note that the Applicant: (a) does not intend any of the appended claims to invoke paragraph six (6) of 35 U.S.C. section 112 as it exists on the date of the filing hereof unless the words “means for” or “step for” are specifically used in the particular claims; and (b) does not intend, by any statement in the specification, to limit this disclosure in any way that is not otherwise reflected in the appended claims.

Claims
  • 1. A method, comprising: receiving, at a video processing unit having a processor, a plurality of depth values corresponding to pixels of an image; andfiltering, at the video processing unit, the image as a function of a plurality of variations in the depth values between adjacent pixels of a window associated with the image.
  • 2. The method of claim 1, further comprising: encoding the image into a bit stream for transmission over a network, wherein the filtering includes accounting for a bit rate associated with the encoding of the image.
  • 3. The method of claim 1, further comprising: receiving intensity values corresponding to the pixels, wherein the filtering is a function of variations in the intensity values between the adjacent pixels.
  • 4. The method of claim 1, wherein filtering the image comprises smoothing certain adjacent pixels having variations of depth values below a threshold value.
  • 5. The method of claim 1, wherein the image is filtered in a loop comprising an inverse transform, an inverse quantization, and a prediction compensation that is based on previous encoding.
  • 6. The method of claim 1, wherein the window comprises pixels from a spatial region.
  • 7. The method of claim 1, wherein the window comprises pixels from a temporal region.
  • 8. The method of claim 1, wherein the filtering preserves pixels corresponding to depth values closer to a viewpoint over pixels corresponding to depth values further away from the viewpoint.
  • 9. Logic encoded in one or more non-transitory media that includes code for execution and when executed by one or more processors is operable to perform operations comprising: receiving a plurality of depth values corresponding to pixels of an image; andfiltering the image as a function of a plurality of variations in the depth values between adjacent pixels of a window associated with the image.
  • 10. The logic of claim 9, the operations further comprising: encoding the image into a bit stream for transmission over a network, wherein the filtering includes accounting for a bit rate associated with the encoding of the image.
  • 11. The logic of claim 9, the operations further comprising: receiving intensity values corresponding to the pixels, wherein the filtering is a function of variations in the intensity values between the adjacent pixels.
  • 12. The logic of claim 9, wherein filtering the image comprises smoothing certain adjacent pixels having variations of depth values below a threshold value.
  • 13. The logic of claim 9, wherein the image is filtered in a loop comprising an inverse transform, an inverse quantization, and a prediction compensation that is based on previous encoding.
  • 14. The logic of claim 9, wherein the window comprises pixels from a spatial region.
  • 15. The logic of claim 9, wherein the window comprises pixels from a temporal region.
  • 16. The logic of claim 9, wherein the filtering preserves pixels corresponding to depth values closer to a viewpoint over pixels corresponding to depth values further away from the viewpoint.
  • 17. An apparatus, comprising: one or more processors;a memory; anda video encoder with a depth-guided filter, wherein the apparatus is configured for: receiving a plurality of depth values corresponding to pixels of an image; andfiltering the image as a function of a plurality of variations in the depth values between adjacent pixels of a window associated with the image.
  • 18. The apparatus of claim 17, the apparatus being further configured for: encoding the image into a bit stream for transmission over a network, wherein the filtering includes accounting for a bit rate associated with the encoding of the image.
  • 19. The apparatus of claim 17, the apparatus being further configured for: receiving intensity values corresponding to the pixels, wherein the filtering is a function of variations in the intensity values between the adjacent pixels.
  • 20. The apparatus of claim 17, wherein the filtering is configured to preserve pixels corresponding to depth values closer to a viewpoint over pixels corresponding to depth values further away from the viewpoint.
US Referenced Citations (387)
Number Name Date Kind
2911462 Brady Nov 1959 A
3793489 Sank Feb 1974 A
3909121 De Mesquita Cardoso Sep 1975 A
4400724 Fields Aug 1983 A
4473285 Winter Sep 1984 A
4494144 Brown Jan 1985 A
4750123 Christian Jun 1988 A
4815132 Minami Mar 1989 A
4827253 Maltz May 1989 A
4853764 Sutter Aug 1989 A
4890314 Judd et al. Dec 1989 A
4961211 Tsugane et al. Oct 1990 A
4994912 Lumelsky et al. Feb 1991 A
5003532 Ashida et al. Mar 1991 A
5020098 Celli May 1991 A
5136652 Jibbe et al. Aug 1992 A
5187571 Braun et al. Feb 1993 A
5200818 Neta et al. Apr 1993 A
5249035 Yamanaka Sep 1993 A
5255211 Redmond Oct 1993 A
5268734 Parker et al. Dec 1993 A
5317405 Kuriki et al. May 1994 A
5337363 Platt Aug 1994 A
5347363 Yamanaka Sep 1994 A
5351067 Lumelsky et al. Sep 1994 A
5359362 Lewis et al. Oct 1994 A
5406326 Mowry Apr 1995 A
5423554 Davis Jun 1995 A
5446834 Deering Aug 1995 A
5448287 Hull Sep 1995 A
5467401 Nagamitsu et al. Nov 1995 A
5495576 Ritchey Feb 1996 A
5502481 Dentinger et al. Mar 1996 A
5502726 Fischer Mar 1996 A
5506604 Nally et al. Apr 1996 A
5532737 Braun Jul 1996 A
5541639 Takatsuki et al. Jul 1996 A
5541773 Kamo et al. Jul 1996 A
5570372 Shaffer Oct 1996 A
5572248 Allen et al. Nov 1996 A
5587726 Moffat Dec 1996 A
5612733 Flohr Mar 1997 A
5625410 Washino et al. Apr 1997 A
5666153 Copeland Sep 1997 A
5673401 Volk et al. Sep 1997 A
5675374 Kohda Oct 1997 A
5715377 Fukushima et al. Feb 1998 A
5729471 Jain et al. Mar 1998 A
5737011 Lukacs Apr 1998 A
5748121 Romriell May 1998 A
5760826 Nayar Jun 1998 A
5790182 Hilaire Aug 1998 A
5796724 Rajamani et al. Aug 1998 A
5815196 Alshawi Sep 1998 A
5818514 Duttweiler et al. Oct 1998 A
5821985 Iizawa Oct 1998 A
5889499 Nally et al. Mar 1999 A
5894321 Downs et al. Apr 1999 A
5940118 Van Schyndel Aug 1999 A
5940530 Fukushima et al. Aug 1999 A
5953052 McNelley et al. Sep 1999 A
5956100 Gorski Sep 1999 A
6069658 Watanabe May 2000 A
6088045 Lumelsky et al. Jul 2000 A
6097441 Allport Aug 2000 A
6101113 Paice Aug 2000 A
6124896 Kurashige Sep 2000 A
6148092 Qian Nov 2000 A
6167162 Jacquin et al. Dec 2000 A
6172703 Lee Jan 2001 B1
6173069 Daly et al. Jan 2001 B1
6226035 Korein et al. May 2001 B1
6243130 McNelley et al. Jun 2001 B1
6249318 Girod et al. Jun 2001 B1
6256400 Takata et al. Jul 2001 B1
6266098 Cove et al. Jul 2001 B1
6285392 Satoda et al. Sep 2001 B1
6292575 Bortolussi et al. Sep 2001 B1
6356589 Gebler et al. Mar 2002 B1
6380539 Edgar Apr 2002 B1
6424377 Driscoll, Jr. Jul 2002 B1
6430222 Okadia Aug 2002 B1
6462767 Obata et al. Oct 2002 B1
6493032 Wallerstein et al. Dec 2002 B1
6507356 Jackel et al. Jan 2003 B1
6573904 Chun et al. Jun 2003 B1
6577333 Tai et al. Jun 2003 B2
6583808 Boulanger et al. Jun 2003 B2
6590603 Sheldon et al. Jul 2003 B2
6591314 Colbath Jul 2003 B1
6593955 Falcon Jul 2003 B1
6593956 Potts et al. Jul 2003 B1
6611281 Strubbe Aug 2003 B2
6680856 Schreiber Jan 2004 B2
6693663 Harris Feb 2004 B1
6694094 Partynski et al. Feb 2004 B2
6704048 Malkin et al. Mar 2004 B1
6710797 McNelley et al. Mar 2004 B1
6751106 Zhang et al. Jun 2004 B2
6763226 McZeal Jul 2004 B1
6768722 Katseff et al. Jul 2004 B1
6795108 Jarboe et al. Sep 2004 B2
6795558 Matsuo Sep 2004 B2
6798834 Murakami et al. Sep 2004 B1
6806898 Toyama et al. Oct 2004 B1
6807280 Stroud et al. Oct 2004 B1
6831653 Kehlet et al. Dec 2004 B2
6844990 Artonne et al. Jan 2005 B2
6853398 Malzbender et al. Feb 2005 B2
6867798 Wada et al. Mar 2005 B1
6882358 Schuster et al. Apr 2005 B1
6888358 Lechner et al. May 2005 B2
6909438 White et al. Jun 2005 B1
6911995 Ivanov et al. Jun 2005 B2
6917271 Zhang et al. Jul 2005 B2
6963653 Miles Nov 2005 B1
6980526 Jang et al. Dec 2005 B2
6989754 Kiscanin et al. Jan 2006 B2
6989836 Ramsey Jan 2006 B2
6989856 Firestone et al. Jan 2006 B2
6990086 Holur et al. Jan 2006 B1
7002973 MeLampy et al. Feb 2006 B2
7023855 Haumont et al. Apr 2006 B2
7028092 MeLampy et al. Apr 2006 B2
7031311 MeLampy et al. Apr 2006 B2
7043528 Schmitt et al. May 2006 B2
7046862 Ishizaka et al. May 2006 B2
7057636 Cohen-Solal et al. Jun 2006 B1
7057662 Malzbender Jun 2006 B2
7061896 Jabbari et al. Jun 2006 B2
7072504 Miyano et al. Jul 2006 B2
7072833 Rajan Jul 2006 B2
7080157 McCanne Jul 2006 B2
7092002 Ferren et al. Aug 2006 B2
7111045 Kato et al. Sep 2006 B2
7126627 Lewis et al. Oct 2006 B1
7131135 Virag et al. Oct 2006 B1
7136651 Kalavade Nov 2006 B2
7139767 Taylor et al. Nov 2006 B1
D533525 Arie Dec 2006 S
D533852 Ma Dec 2006 S
D534511 Maeda et al. Jan 2007 S
D535954 Hwang et al. Jan 2007 S
7158674 Suh Jan 2007 B2
7161942 Chen et al. Jan 2007 B2
D539243 Chiu et al. Mar 2007 S
7197008 Shabtay et al. Mar 2007 B1
D541773 Chong et al. May 2007 S
D542247 Kinoshita et al. May 2007 S
7221260 Berezowski et al. May 2007 B2
7239338 Krisbergh et al. Jul 2007 B2
7246118 Chastain et al. Jul 2007 B2
D550635 DeMaio et al. Sep 2007 S
D551184 Kanou et al. Sep 2007 S
7269292 Steinberg Sep 2007 B2
7274555 Kim et al. Sep 2007 B2
D555610 Yang et al. Nov 2007 S
7336299 Kostrzewski Feb 2008 B2
D567202 Rieu Piquet Apr 2008 S
7352809 Wenger et al. Apr 2008 B2
7353279 Durvasula et al. Apr 2008 B2
7359731 Choksi Apr 2008 B2
7399095 Rondinelli Jul 2008 B2
7411975 Mohaban Aug 2008 B1
7413150 Hsu Aug 2008 B1
7428000 Cutler et al. Sep 2008 B2
D578496 Leonard Oct 2008 S
7440615 Gong et al. Oct 2008 B2
7450134 Maynard et al. Nov 2008 B2
7471320 Malkin et al. Dec 2008 B2
7477657 Murphy et al. Jan 2009 B1
D588560 Mellingen et al. Mar 2009 S
7505036 Baldwin Mar 2009 B1
7518051 Redmann Apr 2009 B2
7529425 Kitamura et al. May 2009 B2
7532230 Culbertson et al. May 2009 B2
7532232 Shah et al. May 2009 B2
7534056 Cross et al. May 2009 B2
7545761 Kalbag Jun 2009 B1
7551432 Bockheim et al. Jun 2009 B1
7555141 Mori Jun 2009 B2
7575537 Ellis Aug 2009 B2
7577246 Idan et al. Aug 2009 B2
D602453 Ding et al. Oct 2009 S
7616226 Roessler et al. Nov 2009 B2
7620202 Fujimura et al. Nov 2009 B2
7646419 Cernasov Jan 2010 B2
D610560 Chen Feb 2010 S
7679639 Harrell et al. Mar 2010 B2
7692680 Graham Apr 2010 B2
7707247 Dunn et al. Apr 2010 B2
D615514 Mellingen et al. May 2010 S
7710448 De Beer et al. May 2010 B2
7710450 Dhuey et al. May 2010 B2
7714222 Taub et al. May 2010 B2
7715657 Lin et al. May 2010 B2
7719605 Hirasawa et al. May 2010 B2
7719662 Bamji et al. May 2010 B2
7720277 Hattori May 2010 B2
7725919 Thiagarajan et al. May 2010 B1
D626102 Buzzard et al. Oct 2010 S
D626103 Buzzard et al. Oct 2010 S
D628175 Desai et al. Nov 2010 S
7839434 Ciudad et al. Nov 2010 B2
D628968 Desai et al. Dec 2010 S
7855726 Ferren et al. Dec 2010 B2
7861189 Watanabe et al. Dec 2010 B2
7889851 Shah et al. Feb 2011 B2
7894531 Cetin et al. Feb 2011 B1
D636359 Buzzard et al. Apr 2011 S
D636747 Buzzard et al. Apr 2011 S
D637568 Desai et al. May 2011 S
D637569 Desai et al. May 2011 S
D637570 Desai et al. May 2011 S
8000559 Kwon Aug 2011 B2
8031906 Fujimura et al. Oct 2011 B2
8077857 Lambert Dec 2011 B1
8081346 Anup et al. Dec 2011 B1
8086076 Tian et al. Dec 2011 B2
8135068 Alvarez Mar 2012 B1
8179419 Girish et al. May 2012 B2
8219404 Weinberg et al. Jul 2012 B2
8259155 Marathe et al. Sep 2012 B2
8315466 El-Maleh et al. Nov 2012 B2
8363719 Nakayama Jan 2013 B2
8374456 Vetro et al. Feb 2013 B2
8436888 Baldino et al. May 2013 B1
20020047892 Gonsalves Apr 2002 A1
20020106120 Brandenburg et al. Aug 2002 A1
20020108125 Joao Aug 2002 A1
20020114392 Sekiguchi et al. Aug 2002 A1
20020118890 Rondinelli Aug 2002 A1
20020131608 Lobb et al. Sep 2002 A1
20020140804 Colmenarez et al. Oct 2002 A1
20020149672 Clapp et al. Oct 2002 A1
20020186528 Huang Dec 2002 A1
20020196737 Bullard Dec 2002 A1
20030017872 Oishi et al. Jan 2003 A1
20030048218 Milnes et al. Mar 2003 A1
20030071932 Tanigaki Apr 2003 A1
20030072460 Gonopolskiy et al. Apr 2003 A1
20030160861 Barlow et al. Aug 2003 A1
20030179285 Naito Sep 2003 A1
20030185303 Hall Oct 2003 A1
20030197687 Shetter Oct 2003 A1
20040003411 Nakai et al. Jan 2004 A1
20040032906 Lillig Feb 2004 A1
20040038169 Mandelkern et al. Feb 2004 A1
20040061787 Liu et al. Apr 2004 A1
20040091232 Appling, III May 2004 A1
20040118984 Kim et al. Jun 2004 A1
20040119814 Clisham et al. Jun 2004 A1
20040164858 Lin Aug 2004 A1
20040165060 McNelley et al. Aug 2004 A1
20040178955 Menache et al. Sep 2004 A1
20040189463 Wathen Sep 2004 A1
20040189676 Dischert Sep 2004 A1
20040196250 Mehrotra et al. Oct 2004 A1
20040207718 Boyden et al. Oct 2004 A1
20040218755 Marton et al. Nov 2004 A1
20040246962 Kopeikin et al. Dec 2004 A1
20040254982 Hoffman et al. Dec 2004 A1
20040260796 Sundqvist et al. Dec 2004 A1
20050007954 Sreemanthula et al. Jan 2005 A1
20050024484 Leonard Feb 2005 A1
20050050246 Lakkakorpi et al. Mar 2005 A1
20050081160 Wee et al. Apr 2005 A1
20050110867 Schulz May 2005 A1
20050117022 Marchant Jun 2005 A1
20050129325 Wu Jun 2005 A1
20050147257 Melchior et al. Jul 2005 A1
20050248652 Firestone et al. Nov 2005 A1
20050268823 Bakker et al. Dec 2005 A1
20060013495 Duan et al. Jan 2006 A1
20060017807 Lee et al. Jan 2006 A1
20060028983 Wright Feb 2006 A1
20060029084 Grayson Feb 2006 A1
20060038878 Takashima et al. Feb 2006 A1
20060066717 Miceli Mar 2006 A1
20060072813 Matsumoto et al. Apr 2006 A1
20060082643 Richards Apr 2006 A1
20060093128 Oxford May 2006 A1
20060100004 Kim et al. May 2006 A1
20060104297 Buyukkoc et al. May 2006 A1
20060104470 Akino May 2006 A1
20060120307 Sahashi Jun 2006 A1
20060121568 Drapeau et al. Jun 2006 A1
20060125691 Menache et al. Jun 2006 A1
20060126878 Takumai et al. Jun 2006 A1
20060152489 Sweetser et al. Jul 2006 A1
20060152575 Amiel et al. Jul 2006 A1
20060158509 Kenoyer et al. Jul 2006 A1
20060168302 Boskovic et al. Jul 2006 A1
20060170769 Zhou Aug 2006 A1
20060181607 McNelley et al. Aug 2006 A1
20060200518 Sinclair et al. Sep 2006 A1
20060233120 Eshel et al. Oct 2006 A1
20060256187 Sheldon et al. Nov 2006 A1
20060284786 Takano et al. Dec 2006 A1
20070039030 Romanowich et al. Feb 2007 A1
20070040903 Kawaguchi Feb 2007 A1
20070070177 Christensen Mar 2007 A1
20070080845 Amand Apr 2007 A1
20070112966 Eftis et al. May 2007 A1
20070120971 Kennedy May 2007 A1
20070121353 Zhang et al. May 2007 A1
20070140337 Lim et al. Jun 2007 A1
20070153712 Fry et al. Jul 2007 A1
20070159523 Hillis et al. Jul 2007 A1
20070183661 El-Maleh et al. Aug 2007 A1
20070188597 Kenoyer Aug 2007 A1
20070189219 Navoli et al. Aug 2007 A1
20070192381 Padmanabhan Aug 2007 A1
20070206091 Dunn et al. Sep 2007 A1
20070206556 Yegani et al. Sep 2007 A1
20070206602 Halabi et al. Sep 2007 A1
20070217406 Riedel et al. Sep 2007 A1
20070217500 Gao et al. Sep 2007 A1
20070229250 Recker et al. Oct 2007 A1
20070247470 Dhuey et al. Oct 2007 A1
20070250567 Graham et al. Oct 2007 A1
20070250620 Shah et al. Oct 2007 A1
20070273752 Chambers et al. Nov 2007 A1
20070279483 Beers et al. Dec 2007 A1
20070279484 Derocher et al. Dec 2007 A1
20070285505 Korneliussen Dec 2007 A1
20080043041 Hedenstroem et al. Feb 2008 A2
20080044064 His Feb 2008 A1
20080077390 Nagao Mar 2008 A1
20080151038 Khouri et al. Jun 2008 A1
20080153537 Khawand et al. Jun 2008 A1
20080167078 Eibye Jul 2008 A1
20080198755 Vasseur et al. Aug 2008 A1
20080208444 Ruckart Aug 2008 A1
20080212677 Chen et al. Sep 2008 A1
20080215974 Harrison et al. Sep 2008 A1
20080218582 Buckler Sep 2008 A1
20080219268 Dennison Sep 2008 A1
20080232688 Senior et al. Sep 2008 A1
20080232692 Kaku Sep 2008 A1
20080240237 Tian et al. Oct 2008 A1
20080240571 Tian et al. Oct 2008 A1
20080267282 Kalipatnapu et al. Oct 2008 A1
20080297586 Kurtz et al. Dec 2008 A1
20080298571 Kurtz et al. Dec 2008 A1
20080303901 Variyath et al. Dec 2008 A1
20090009593 Cameron et al. Jan 2009 A1
20090051756 Trachtenberg Feb 2009 A1
20090115723 Henty May 2009 A1
20090122867 Mauchly et al. May 2009 A1
20090129753 Wagenlander May 2009 A1
20090207179 Huang et al. Aug 2009 A1
20090207233 Mauchly et al. Aug 2009 A1
20090207234 Chen et al. Aug 2009 A1
20090244257 MacDonald et al. Oct 2009 A1
20090256901 Mauchly et al. Oct 2009 A1
20090279476 Li et al. Nov 2009 A1
20090322082 Wagoner Dec 2009 A1
20090324023 Tian et al. Dec 2009 A1
20100008373 Xiao et al. Jan 2010 A1
20100014530 Cutaia Jan 2010 A1
20100042281 Filla Feb 2010 A1
20100082557 Gao et al. Apr 2010 A1
20100123770 Friel et al. May 2010 A1
20100208078 Tian et al. Aug 2010 A1
20100225732 De Beer et al. Sep 2010 A1
20100225735 Shaffer et al. Sep 2010 A1
20100241845 Alonso Sep 2010 A1
20100259619 Nicholson Oct 2010 A1
20100268843 Van Wie et al. Oct 2010 A1
20100277563 Gupta et al. Nov 2010 A1
20100283829 De Beer et al. Nov 2010 A1
20100302345 Baldino et al. Dec 2010 A1
20100316232 Acero et al. Dec 2010 A1
20110037636 Alexander Feb 2011 A1
20110085016 Kristiansen et al. Apr 2011 A1
20110090303 Wu et al. Apr 2011 A1
20110109642 Chang et al. May 2011 A1
20110242266 Blackburn et al. Oct 2011 A1
20110249086 Guo et al. Oct 2011 A1
20110276901 Zambetti et al. Nov 2011 A1
20120026278 Goodman et al. Feb 2012 A1
20120038742 Robinson et al. Feb 2012 A1
20120106428 Schlicht et al. May 2012 A1
20120143605 Thorsen et al. Jun 2012 A1
20120169838 Sekine Jul 2012 A1
20120218373 N'guessan Aug 2012 A1
Foreign Referenced Citations (42)
Number Date Country
0 650 299 Oct 1994 EP
0 714 081 Nov 1995 EP
0 740 177 Apr 1996 EP
1143745 Oct 2001 EP
1 178 352 Jun 2002 EP
1 589 758 Oct 2005 EP
1701308 Sep 2006 EP
1768058 Mar 2007 EP
2073543 Jun 2009 EP
2255531 Dec 2010 EP
2277308 Jan 2011 EP
2 294 605 May 1996 GB
2336266 Oct 1999 GB
2355876 May 2001 GB
WO 9416517 Jul 1994 WO
WO 9621321 Jul 1996 WO
WO 9708896 Mar 1997 WO
WO 9847291 Oct 1998 WO
WO 9959026 Nov 1999 WO
WO 0133840 May 2001 WO
WO 2005013001 Feb 2005 WO
WO 2006072755 Jul 2006 WO
WO2007106157 Sep 2007 WO
WO2007123946 Nov 2007 WO
WO 2007123960 Nov 2007 WO
WO2008010929 Jan 2008 WO
WO2008039371 Apr 2008 WO
WO 2008040258 Apr 2008 WO
WO 2008101117 Aug 2008 WO
WO 2008118887 Oct 2008 WO
WO2009088976 Jul 2009 WO
WO 2009102503 Aug 2009 WO
WO 2009120814 Oct 2009 WO
WO 2010059481 May 2010 WO
WO2010096342 Aug 2010 WO
WO 2010104765 Sep 2010 WO
WO 2010132271 Nov 2010 WO
WO2012033716 Mar 2012 WO
WO2012068008 May 2012 WO
WO2012068010 May 2012 WO
WO2012068485 May 2012 WO
WO2013096041 Jun 2013 WO
Non-Patent Literature Citations (189)
Entry
U.S. Appl. No. 13/106,002, filed May 12, 2011, entitled “System and Method for Video Coding in a Dynamic Environment,” Inventor: Dihong Tian.
“3D Particles Experiments in AS3 and Flash CS3,” [retrieved and printed on Mar. 18, 2010]; 2 pages; http://www.flashandmath.com/advanced/fourparticles/notes.html.
3G, “World's First 3G Video Conference Service with New TV Commercial,” Apr. 28, 2005, 4 pages; http://www.3g.co.uk/PR/April2005/1383.htm.
Digital Video Enterprises, “DVE Eye Contact Silhouette,” 1 page, © DVE 2008; http://www.dvetelepresence.com/products/eyeContactSilhouette.asp.
“Eye Gaze Response Interface Computer Aid (Erica) tracks Eye movement to enable hands-free computer operation,” UMD Communication Sciences and Disorders Tests New Technology, University of Minnesota Duluth, posted Jan. 19, 2005; 4 pages http://www.d.umn.edu/unirel/homepage/05/eyegaze.html.
France Telecom R&D, “France Telecom's Magic Telepresence Wall—Human Productivity Lab,” 5 pages, retrieved and printed on May 17, 2010; http://www.humanproductivitylab.com/archive—blogs/2006/07/11/france—telecoms—magic—telepres—1.php.
Joshua Gluckman and S.K. Nayar, “Rectified Catadioptric Stereo Sensors,” 8 pages, retrieved and printed on May 17, 2010; http://cis.poly.edu/˜gluckman/papers/cypr00.pdf.
R.V. Kollarits, et al., “34.3: An Eye Contact Camera/Display System for Videophone Applications Using a Conventional Direct-View LCD,” © 1995 SID, ISSN0097-0966X/95/2601, pp. 765-768; http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=47A1E7E028C26503975E633895D114EC?doi=10.1.1.42.1772&rep=rep1&type=pdf.
Trevor Darrell, “A Real-Time Virtual Mirror Display,” 1 page, Sep. 9, 1998; http://people.csail.mit.edu/trevor/papers/1998-021/node6.html.
Video on TED.com, Pranav Mistry: the Thrilling Potential of SixthSense Technology (5 pages) and Interactive Transcript (5 pages), retrieved and printed on Nov. 30, 2010; http://www.ted.com/talks/pranav—mistry—the—thrilling—potential—of—sixthsense—technology.html.
U.S. Appl. No. 13/707,377, filed Dec. 12, 2012 entitled “System and Method for Depth-Guided Image Filtering in a Video Conference Environment,” Inventor: Dihong Tian.
PCT Mar. 14, 2013 International Search Report and Written Opinion from International Application PCT/US2012/069111.
Kim, Jae Hoon et al., “New Coding Tools for Illumination and Focus Mismatch Compensation in Multiview Video Coding,” IEEE Transactions on Circuits and Systems for Video Technology, IEEE Service Center, Piscataway, NJ, US. vol. 17, No. 11, Nov. 1, 2007; 17 pages.
Hong, Min-Cheol, et al., “A Reduced Complexity Loop Filter Using Coded Block Pattern and Quantization Step Size for H.26L Video Coder,” International Conference on Consumer Electronics, 2001 Digest of Technical Papers, ICCE, Los Angelos, CA, Jun. 19-21, 2001; 2 pages.
“Cisco Expo Germany 2009 Opening,” Posted on YouTube on May 4, 2009; http://www.youtube.com/watch?v=SDKsaSIz4MK; 2 pages.
“Eye Tracking,” from Wikipedia, (printed on Aug. 31, 2011) 12 pages; http://en.wikipedia.org/wiki/Eye—tracker.
“Infrared Cameras TVS-200-EX,” ©2010 Electrophysics Corp. All Rights Reserved [retrieved and printed on May 24, 2010] http://www.electrophysics.com/Browse/Brw—ProductLineCategory.asp?CategoryID=184&Area=IS; 2 pages.
“RoundTable, 360 Degrees Video Conferencing Camera unveiled by Microsoft,” TechShout, Jun. 30, 2006, 1 page; http://www.techshout.com/gadgets/2006/30/roundtable-360-degrees-video-conferencing-camera-unveiled-by-microsoft/#.
“Vocative Case,” from Wikipedia, [retrieved and printed on Mar. 3, 2011] 11 pages; http://en.wikipedia.org/wiki/Vocative—case.
“Custom 3D Depth Sensing Prototype System for Gesture Control,” 3D Depth Sensing, GestureTek, 3 pages; [Retrieved and printed on Dec. 1, 2010] http://www.gesturetek.com/3ddepth/introduction.php.
“Real-time Hand Motion/Gesture Detection for HCI-Demo 2,” video clip, YouTube, posted Dec. 17, 2008 by smmy0705, 1 page; www.youtube.com/watch?v=mLT4CFLIi8A&feature=related.
“Simple Hand Gesture Recognition,” video clip, YouTube, posted Aug. 25, 2008 by pooh8210, 1 page; http://www.youtube.com/watch?v=F8GVeVOdYLM&feature=related.
active8-3D—Holographic Projection—3D Hologram Retail Display & Video Project, [retrieved and printed on Feb. 24, 2009], http://www.activ8-3d.co.uk/3d—holocubes; 1 page.
Andersson, L., et al., “LDP Specification,” Network Working Group, RFC 3036, Jan. 2001, 133 pages; http://tools.ietf.org/html/rfc3036.
Andreopoulos, Yiannis, et al., “In-Band Motion Compensated Temporal Filtering,” Signal Processing: Image Communication 19 (2004) 653-673, 21 pages http://medianetlab.ee.ucla.edu/papers/011.pdf.
Arrington, Michael, “eJamming—Distributed Jamming,” TechCrunch; Mar. 16, 2006; http://www.techcrunch.com/2006/03/16/ejamming-distributed-jamming/; 1 page.
Arulampalam, M. Sanjeev, et al., “A Tutorial on Particle Filters for Online Nonlinear/Non-Gaussian Bayesian Tracking,” IEEE Transactions on Signal Processing, vol. 50, No. 2, Feb. 2002, 15 pages; http://www.cs.ubc.ca/˜murphyk/Software/Kalman/ParticleFilterTutorial.pdf.
Avrithis, Y., et al., “Color-Based Retrieval of Facial Images,” European Signal Processing Conference (EUSIPCO '00), Tampere, Finland; Sep. 2000; http://www.image.ece.ntua.gr/˜ntsap/presentations/eusipco00.ppt#256; 18 pages.
Awduche, D., et al., “Requirements for Traffic Engineering over MPLS,” Network Working Group, RFC 2702, Sep. 1999, 30 pages; http://tools.ietf.org/pdf/rfc2702.pdf.
Bakstein, Hynek, et al., “Visual Fidelity of Image Based Rendering,” Center for Machine Perception, Czech Technical University, Proceedings of the Computer Vision, Winter 2004, http://www.benogo.dk/publications/Bakstein-Pajdla-CVWW04.pdf; 10 pages.
Beesley, S.T.C., et al., “Active Macroblock Skipping in the H.264 Video Coding Standard,” in Proceedings of 2005 Conference on Visualization, Imaging, and Image Processing—VIIP 2005, Sep. 7-9, 2005, Benidorm, Spain, Paper 480-261. ACTA Press, ISBN: 0-88986-528-0; 5 pages.
Berzin, O., et al., “Mobility Support Using MPLS and MP-BGP Signaling,” Network Working Group, Apr. 28, 2008, 60 pages; http://www.potaroo.net/ietf/all-/draft-berzin-malis-mpls-mobility-01.txt.
Boccaccio, Jeff; CEPro, “Inside HDMI CEC: The Little-Known Control Feature,” Dec. 28, 2007; http://www.cepro.com/article/print/inside—hdmi—cec—the—little—known—control—feature; 2 pages.
Boros, S., “Policy-Based Network Management with SNMP,” Proceedings of the EUNICE 2000 Summer School Sep. 13-15,2000, p. 3.
Chan, Eric, et al., “Experiments on block-matching techniques for video coding,” Multimedia Systems; 9 Springer-Verlag 1994, Multimedia Systems (1994) 2 pages 228-241.
Chen et al., “Toward a Compelling Sensation of Telepresence: Demonstrating a Portal to a Distant (Static) Office,” Proceedings Visualization 2000; VIS 2000; Salt Lake City, UT, Oct. 8-13, 2000; Annual IEEE Conference on Visualization, Los Alamitos, CA; IEEE Comp. Soc., US, Jan. 1, 2000, pp. 327-333; http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.35.1287.
Chen, Jason, “iBluetooth Lets iPhone Users Send and Receive Files Over Bluetooth,” Mar. 13, 2009; http://i.gizmodo.com/5169545/ibluetooth-lets-iphone-users-send-and-receive-files-over-bluetooth; 1 page.
Chen, Qing, et al., “Real-time Vision-based Hand Gesture Recognition Using Haar-like Features,” Instrumentation and Measurement Technology Conference, Warsaw, Poland, May 1-3, 2007, 6 pages;http://www.google.com/url?sa=t&source=web&cd=1&ved=0CB4QFjAA&url=http%3A%2F%2 Fciteseerx.ist.psu.edu%2Fviewdoc%2Fdownload%3Fdoi%3D10.1.1.93.103%26rep%3Drep1%26type %3Dpdf&ei=A28RTLKRDeftnQeXzZGRAw&usg=AFQjCNHpwj5MwjgGp-3goVzSWad6CO-Jzw.
Chien et al., “Efficient moving Object Segmentation Algorithm Using Background Registration Technique,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 12, No. 7, Jul. 2002, 10 pages.
Cisco: Bill Mauchly and Mod Marathe; UNC: Henry Fuchs, et al., “Depth-Dependent Perspective Rendering,” Apr. 15, 2008; 6 pages.
Costa, Cristina, et al., “Quality Evaluation and Nonuniform Compression of Geometrically Distorted Images Using the Quadtree Distorion Map,” EURASIP Journal on Applied Signal Processing, Jan. 7, 2004, vol. 2004, No. 12; ©2004 Hindawi Publishing Corp.; XP002536356; ISSN: 1110-8657; pp. 1899-1911; http://downloads.hindawi.com/journals/asp/2004/470826.pdf.
Criminisi, A., et al., “Efficient Dense-Stereo and Novel-view Synthesis for Gaze Manipulation in One-to-one Teleconferencing,” Technical Rpt MSR-TR-2003-59, Sep. 2003 [retrieved and printed on Feb. 26, 2009], http://research.microsoft.com/pubs/67266/criminis—techrep2003-59.pdf, 41 pages.
Cumming, Jonathan, “Session Border Control in IMS, an Analysis of the Requirements for Session Border Control in IMS Networks,” Sections 1.1, 1.1.1, 1.1.3, 1.1.4, 2.1.1, 3.2, 3.3.1, 5.2.3 and pp. 7-8, Data Connection, 2005.
Daly, S., et al., “Face-based visually-optimized image sequence coding,” Image Processing, 1998. ICIP 98. Proceedings; 1998 International Conference on Chicago, IL; Oct. 4-7, 1998, Los Alamitos; IEEE Computing; vol. 3, Oct. 4, 1998; ISBN: 978-0-8186-8821-8; XP010586786; pp. 443-447.
Diaz, Jesus, “Zcam 3D Camera is Like Wii Without Wiimote and Minority Report Without Gloves,” Dec. 15, 2007; http://gizmodo.com/gadgets/zcam-depth-camera-could-be-wii-challenger/zcam-3d-camera-is-like-wii-without-wiimote-and-minority-report-without-gloves-334426.php; 3pages.
Diaz, Jesus, iPhone Bluetooth File Transfer Coming Soon (Yes!); Jan. 26, 2009; http://i.gizmodo.com/5138797/iphone-bluetooth-file-transfer-coming-soon-yes; 1page.
Davoine F., et al., “Head and Facial Animation Tracking Using Appearance-Adaptive Models and Particle Filters,” 20040627; 20040627-20040602, Jun. 27, 2004, 22 pages; Heudiasy Research Lab; http://eprints.pascal-network.org/archive/00001231/01/rtvhci—chapter8.pdf.
DVE Digital Video Enterprises, “DVE Tele-Immersion Room,” ©2006 Digital Video Enterprises, Inc., [retrieved on Feb. 5, 2009] http://www.dvetelepresence.com/products/immersion—room.asp; 2 pages.
“Dynamic Displays,” copyright 2005-2008 [retrieved and printed on Feb. 24, 2009] http://www.zebraimaging.com/html/lighting—display.html, 2 pages.
ECmag.com, “IBS Products,” Published Apr. 2009; ©2003-2010 Electrical Contractor, 3 Bethesda Metro Center, Suite 1100, Bethesda, MD; http://www.ecmag.com/index.cfm?fa=article&articleID=10065; 2 pages.
Eisert, Peter, “Immersive 3-D Video Conferencing: Challenges, Concepts and Implementations,” Proceedings of SPIE Visual Communications and Image Processing (VCIP), Lugano, Switzerland, Jul. 2003; 11 pages;http://iphome.hhi.de/eisert/papers/vcip03.pdf.
“eJamming Audio, Learn More;” ©2010 damming Audio, All Rights Reserved; [retrieved and printed on May 27, 2010] http://www.ejamming.com/learnmore/; 4 pages.
Electrophysics Glossary, “Infrared Cameras, Thermal Imaging, Night Vision, Roof Moisture Detection,” ©2010 Electrophysics Corp. All Rights Reserved;[retrieved and printed on Mar. 18, 2010] http://www.electrophysics.com/Browse/Brw—Glossary.asp; 11 pages.
Farrukh, A., et al., Automated Segmentation of Skin-Tone Regions in Video Sequences, Proceedings IEEE Students Conference, ISCON—apos—02; Aug. 16-17, 2002; pp. 122-128.
Fiala, Mark, “Automatic Projector Calibration Using Self-Identifying Patterns,” National Research Council of Canada, Jun. 20-26, 2005; http://www.procams.org/ procams2005/papers/procams05-36.pdf; 6 pages.
Foote, J., et al., “Flycam: Practical Panoramic Video and Automatic Camera Control,” in Proceedings of IEEE International Conference on Multimedia and Expo, vol. III, Jul. 30, 2000; pp. 1419-1422;http://citeseerx.ist.psu.edu/viewdoc/versions?doi=10.1.1.138.8686.
France Telecom R&D, “France Telecom's Magic Telepresence Wall—Human Productivity Lab,” Human Productivity Lab, Telepresence Consulting, Jun. 11, 2006, 5 pages [retrieved and printed on May 17, 2010];http://www.humanproductivitylab.com/archive—blogs/2006/07/11/france—telecoms—magic—telepres—1.php.
Garg, Ashutosh, et al., “Audio-Visual ISpeaker Detection Using Dynamic Bayesian Networks,” IEEE International Conference on Automatic Face and Gesture Recognition, 2000 Proceedings, 7 pages; http://www.ifp.illinois.edu/˜ashutosh/papers/FG00.pdf.
Gemmell, Jim, et al., “Gaze Awareness for Video-conferencing: A Software Approach,” IEEE MultiMedia, Oct.-Dec. 2000; vol. 7, No. 4, pp. 26-35.
Geys et al., “Fast Interpolated Cameras by Combining a GPU Based Plane Sweep With a Max-Flow Regularisation Algorithm,” Sep. 9, 2004; 3D Data Processing, Visualization and Transmission 2004, pp. 534-541.
Gluckman, Joshua, et al., “Rectified Catadioptric Stereo Sensors,” 8 pages, retrieved and printed on May 17, 2010; http://cis.poly.edu/˜guckman/papers/cypr00.pdf.
Gotchev, Atanas, “Computer Technologies for 3D Video Delivery for Home Entertainment,” International Conference on Computer Systems and Technologies; CompSysTech, Jun. 12-13, 2008; http://ecet.ecs.ru.acad.bg/cst08/docs/cp/Plenary/P.1.pdf; 6 pages.
Gries, Dan, “3D Particles Experiments in AS3 and Flash CS3, Dan's Comments,” [retrieved and printed on May 24, 2010] http://www.flashandmath.com/advanced/fourparticles/notes.html; 3 pages.
Guernsey, Lisa, “Toward Better Communication Across the Language Barrier,” New York Times, Jul. 29, 1999; http://www.nytimes.com/1999/07/29/technology/toward-better-communication-across-the-language-barrier.html; 2 pages.
Guili, D., et al., “Orchestra!: A Distributed Platform for Virtual Musical Groups and Music Distance Learning over the Internet in JavaTM Technology”; [retrieved and printed on Jun. 6, 2010] http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=778626; 2 pages.
Gundavelli, S., et al., “Proxy Mobile IPv6,” Network Working Group, RFC 5213, Aug. 2008, 93 pages; http://tools.ietf.org/pdf/rfc5213.pdf.
Gussenhoven, Carlos, “Chapter 5 Transcription of Dutch Intonation,” Nov. 9, 2003, 33 pages; http://www.ru.nl/publish/pages/516003/todisun-ah.pdf.
Gvili, Ronen et al., “Depth Keying,” 3DV System Ltd., [Retrieved and printed on Dec. 5, 2011] 11 pages; http://research.microsoft.com/en-us/um/people/eyalofek/Depth%20Key/DepthKey.pdf.
Habili, Nariman, et al., “Segmentation of the Face and Hands in Sign Language Video Sequences Using Color and Motion Cues” IEEE Transaction on Circuits and Systems for Video Technology, IEEE Service Center, vol. 14, No. 8, Aug. 1, 2004; ISSN: 1051-8215; XP011115755; pp. 1086-1097.
Hammadi, Nait Charif et al., “Tracking the Activity of Participants in a Meeting,” Machine Vision and Applications, Springer, Berlin, De Lnkd—D01:10.1007/S00138-006-0015-5, vol. 17, No. 2, May 1, 2006, pp. 83-93, XP019323925 http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.106.9832.
He, L., et al., “The Virtual Cinematographer: A Paradigm for Automatic Real-Time Camera Control and Directing,” Proc. SIGGRAPH, ©1996; http://research.microsoft.com/en-us/um/people/lhe/papers/siggraph96.vc.pdf; 8 pages.
Hepper, D., “Efficiency Analysis and Application of Uncovered Background Prediction in a Low BitRate Image Coder,” IEEE Transactions on Communications, vol. 38, No. 9, pp. 1578-1584, Sep. 1990.
Hock, Hans Henrich, “Prosody vs. Syntax: Prosodic rebracketing of final vocatives in English,” 4 pages; [retrieved and printed on Mar. 3, 2011] http://speechprosody2010.illinois.edu/papers/100931.pdf.
Holographic Imaging, “Dynamic Holography for scientific uses, military heads up display and even someday HoloTV Using Ti's DMD,” [retrieved and printed on Feb. 26, 2009] http://innovation.swmed.edu/research/instrumentation/res—inst—dev3d.html; 5 pages.
Hornbeck, Larry J., Texas Instruments, “Digital Light ProcessingTM: A New MEMS-Based Display Technology,” [retrieved and printed on Feb. 26, 2009] http://focus.ti.com/pdfs/dlpdmd/17—Digital—Light—Processing—MEMS—display—technology.pdf; 22 pages.
IR Distribution Category @ Envious Technology, “IR Distribution Category,” ©2009 Envious Technology; [retrieved and printed on Apr. 22, 2009] http://www.envioustechnology.com.au/products/product-list.php?CID=305; 2 pages.
IR Trans—Products and Orders—Ethernet Devices; ©2005-2009 IRTrans GMbH [retrieved and printed on Apr. 22, 2009] http://www.irtrans.de/en/shop/lan.php; 2 pages.
Isgro, Francesco et al., “Three-Dimensional Image Processing in the Future of Immersive Media,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 14, No. 3; XP011108796; ISSN: 1051-8215; Mar. 1, 2004; pp. 288-303.
Itoh, Hiroyasu, et al., “Use of a gain modulating framing camera for time-resolved imaging of cellular phenomena,” SPIE vol. 2979, 1997, pp. 733-740.
Jamoussi, Bamil, “Constraint-Based LSP Setup Using LDP,” MPLS Working Group, Sep. 1999, 34 pages; http://tools.ietf.org/html/draft-ietf-mpls-cr-ldp-03.
Jeyatharan, M., et al., “3GPP TFT Reference for Flow Binding,” MEXT Working Group, Mar. 2, 2010, 11 pages; http:/www.ietf.org/id/draft-jeyatharan-mext-flow-tftemp-reference-00.txt.
Jiang, Minqiang, et al., “On Lagrange Multiplier and Quantizer Adjustment for H.264 Frame-layer Video Rate Control,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 16, Issue 5, May 2006, pp. 663-669.
Jong-Gook Ko et al., “Facial Feature Tracking and Head Orientation-Based Gaze Tracking,” ITC-CSCC 2000, International Technical Conference on Circuits/Systems, Jul. 11-13, 2000, 4 pages http://www.umiacs.umd.edu/˜knkim/paper/itc-cscc-2000-jgko.pdf.
Kannangara, C.S., et al., “Complexity Reduction of H.264 Using Lagrange Multiplier Methods,” IEEE Int. Conf. on Visual Information Engineering, Apr. 2005; www.rgu.ac.uk/files/h264—complexity—kannangara.pdf; 6 pages.
Kannangara, C.S., et al., “Low Complexity Skip Prediction for H.264 through Lagrangian Cost Estimation,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 16, No. 2, Feb. 2006; www.rgu.ac.uk/files/h264—skippredict—richardson—final.pdf; 20 pages.
Kauff, Peter, et al., “An Immersive 3D Video-Conferencing System Using Shared Virtual Team User Environments,” Proceedings of the 4th International Conference on Collaborative Virtual Environments, XP040139458; Sep. 30, 2002; http://ip.hhi.de/imedia—G3/assets/pdfs/CVE02.pdf; 8 pages.
Kazutake, Uehira, “Simulation of 3D image depth perception in a 3D display using two stereoscopic displays at different depths,” Jan. 30, 2006; http://adsabs.harvard.edu/abs/2006SPIE.6055.408U; 2 pages.
Keijser, Jeroen, et al., “Exploring 3D Interaction in Alternate Control-Display Space Mappings,” IEEE Symposium on 3D User Interfaces, Mar. 10-11, 2007, pp. 17-24.
Kim, Y.H., et al., “Adaptive mode decision for H.264 encoder,” Electronics letters, vol. 40, Issue 19, pp. 1172-1173, Sep. 2004; 2 pages.
Klint, Josh, “Deferred Rendering in Leadwerks Engine,” Copyright Leadwerks Corporation © 2008; http://www.leadwerks.com/files/Deferred—Rendering—in—Leadwerks—Engine.pdf; 10 pages.
Kolsch, Mathias, “Vision Based Hand Gesture Interfaces for Wearable Computing and Virtual Environments,” A Dissertation submitted in partial satisfaction of the requirements for the degree of Doctor of Philosophy in Computer Science, University of California, Santa Barbara, Nov. 2004, 288 pages (in three parts); http://fulfillment.umi.com/dissertations/b7afbcb56ba72fdb14d26dfccc6b470f/1291487062/3143800.pdf.
Koyama, S., et al. “A Day and Night Vision Mos Imager with Robust Photonic-Crystal-Based RGB-and-IR,” Mar. 2008, pp. 754-759; ISSN: 0018-9383; IEE Transactions on Electron Devices, vol. 55, No. 3; http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4455782&isnumber=4455723.
Kwolek, B., “Model Based Facial Pose Tracking Using a Particle Filter,” Geometric Modeling and Imaging—New Trends, 2006 London, England Jul. 5-6, 2005, Piscataway, NJ, USA, IEEE LNKD-DOI: 10.1109/Gmai.2006.34 Jul. 5, 2006, pp. 203-208; XP010927285 [Abstract Only].
Lambert, “Polycom Video Communications,” ©2004 Polycom, Inc., Jun. 20, 2004 http://www.polycom.com/global/documents/whitepapers/video—communications—h.239—people—content—polycom—patented—technology.pdf.
Lawson, S., “Cisco Plans TelePresence Translation Next Year,” PC World Communications, Inc.; Dec. 9, 2008; http://www.pcworld.com/article/155237/.html?tk=rss—news; 2 pages.
Lee, J. And Jeon, B., “Fast Mode Decision for H.264,” ISO/IEC MPEG and ITU-T VCEG Joint Video Team, Doc. JVT-J033, Dec. 2003; http://media.skku.ac.kr/publications/paper/IntC/Ijy—ICME2004.pdf; 4 pages.
Liu, Shan, et al., “Bit-Depth Scalable Coding for High Dynamic Range Video,” SPIE Conference on Visual Communications and Image Processing, Jan. 2008; 12 pages http://www.merl.com/papers/docs/TR2007-078.pdf.
Liu, Z., “Head-Size Equalization for Better Visual Perception of Video Conferencing,” Proceedings, IEEEInternational Conference on Multimedia & Expo (ICME2005), Jul. 6-8, 2005, Amsterdam, The Netherlands; http://research.microsoft.com/users/cohen/HeadSizeEqualizationICME2005.pdf; 4 pages.
Mann, S., et al., “Virtual Bellows: Constructing High Quality Still from Video,” Proceedings, First IEEE International Conference on Image Processing ICIP-94, Nov. 13-16, 1994, Austin, TX; http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.50.8405; 5 pages.
Marvin Imaging Processing Framework, “Skin-colored pixels detection using Marvin Framework,” video clip, YouTube, posted Feb. 9, 2010 by marvinproject, 1 page; http://www.youtube.com/user/marvinproject#p/a/u/0/3ZuQHYNlcrl.
Miller, Gregor, et al., “Interactive Free-Viewpoint Video,” Centre for Vision, Speech and Signal Processing, [retrieved and printed on Feb. 26, 2009], http://www.ee.surrey.ac.uk/CVSSP/VMRG/Publications/miller05cvmp.pdf, 10 pages.
Miller, Paul, “Microsoft Research patents controller-free computer input via EMG muscle sensors,” Engadget.com, Jan. 3, 2010, 1 page; http://www.engadget.com/2010/01/03/microsoft-research-patents-controller-free-computer-input-via-em/.
“Minoru from Novo is the worlds first consumer 3D Webcam,” Dec. 11, 2008; http://www.minoru3d.com; 4 pages.
Mitsubishi Electric Research Laboratories, copyright 2009 [retrieved and printed on Feb. 26, 2009], http://www.merl.com/projects/3dtv, 2 pages.
Nakaya, Y., et al. “Motion Compensation Based on Spatial Transformations,” IEEE Transactions on Circuits and Systems for Video Technology, Jun. 1994, Abstract Only http://ieeexplore.ieee.org/Xplore/login.jsp?url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F76%2F7495%2F00305878. pdf%3Farnumber%3D305878&authDecision=-203.
National Training Systems Association Home—Main, Interservice/Industry Training, Simulation & Education Conference, Dec. 1-4, 2008; http://ntsa.metapress.com/app/home/main.asp?referrer=default; 1 page.
Oh, Hwang-Seok, et al., “Block-Matching Algorithm Based on Dynamic Search Window Adjustment,” Dept. of CS, KAIST, 1997, 6 pages; http://citeseerx.ist.psu.edu/viewdoc/similar?doi=10.1.1.29.8621&type=ab.
“Opera Over Cisco TelePresence at Cisco Expo 2009, in Hannover Germany—Apr. 28, 29,” posted on YouTube on May 5, 2009; http://www.youtube.com/watch?v=xN5jNH5E-38; 1 page.
Optoiq, “Vision + Automation Products—VideometerLab 2,” [retrieved and printed on Mar. 18, 2010], http://www.optoiq.com/optoiq-2/en-us/index/machine-vision-imaging-processing/display/vsd-articles-tools-template.articles.vision-systems-design.volume-11.issue-10.departments.new-products.vision-automation-products.htmlhtml; 11 pages.
Optoiq, “Anti-Speckle Techniques Uses Dynamic Optics,” Jun. 1, 2009; http://www.optoiq.com/index/photonics-technologies-applications/lfw-display/lfw-article-display/363444/articles/optoiq2/photonics-technologies/technology-products/optical-components/optical-mems/2009/12/anti-speckle-technique-uses-dynamic-optics/QP129867/cmpid=EnlOptoLFWJanuary132010.html; 2 pages.
Optoiq, “Smart Camera Supports Multiple Interfaces,” Jan. 22, 2009; http://www.optoiq.com/index/machine-vision-imaging-processing/display/vsd-article-display/350639/articles/vision-systems-design/daily-product-2/2009/01/smart-camera-supports-multiple-interfaces.html; 2 pages.
Optoiq, “Vision Systems Design—Machine Vision and Image Processing Technology,” [retrieved and printed on Mar. 18, 2010], http://www.optoiq.com/index/machine-vision-imaging-processing.html; 2 pages.
Patterson, E.K., et al., “Moving-Talker, Speaker-Independent Feature Study and Baseline Results Using the CUAVE Multimodal Speech Corpus,” EURASIP Journal on Applied Signal Processing, vol. 11, Oct. 2002, 15 pages http://www.clemson.edu/ces/speech/papers/CUAVE—Eurasip2002.pdf.
Payatagool, Chris, “Orchestral Manoeuvres in the Light of Telepresence,” Telepresence Options, Nov. 12, 2008;http://www.telepresenceoptions.com/2008/11/orchestral—manoeuvres; 7 pgs.
Perez, Patrick, et al., “Data Fusion for Visual Tracking with Particles,” Proceedings of the IEEE, vol. XX, No. XX, Feb. 2004, 18 pages http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.6.2480.
Pixel Tools “Rate Control and H.264: H.264 rate control algorithm dynamically adjusts encoder parameters,” [retrieved and printed on Jun. 10, 2010] http://www.pixeltools.om/rate—control—paper.html; 7 pages.
Potamianos, G., et a., “An Image Transform Approach for HMM Based Automatic Lipreading,” in Proceedings of IEEE ICIP, vol. 3, 1998, 5 pages http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.13.6802.
Radhika, N., et al., “Mobile Dynamic reconfigurable Context aware middleware for Adhoc smart spaces,” Academic Open Internet Journal, ISSN 1311-4360, vol. 22, 2008; 3 pages http://www.acadjournal.com/2008/V22/part6/p7.
“Rayvel Business-to-Business Products,” copyright 2004 [retrieved and printed on Feb. 24, 2009], http://www.rayvel.com/b2b.html; 2 pages.
Richardson, I.E.G., et al., “Fast H.264 Skip Mode Selection Using and Estimation Framework,” Picture Coding Symposium, (Beijing, China), Apr. 2006; www.rgu.ac.uk/files/richardson—fast—skip—estmation—pcs06.pdf; 6 pages.
Richardson, lain, et al., “Video Encoder Complexity Reduction by Estimating Skip Mode Distortion,” Image Communication Technology Group; [Retrieved and printed Oct. 21, 2010] 4 pages; http://www4.rgu.ac.uk/files/ICIP04—richardson—zhao—final.pdf.
Rikert, T.D., et al., “Gaze Estimation using Morphable models,” IEEE International Conference on Automatic Face and Gesture Recognition, Apr. 1998; 7 pgs. http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.30.9472.
Butler, Darren, et al., “Robust Face Localisation Using Motion, Colour & Fusion” ; Proc. VIIth Digital Image Computing: Techniques and Applications, Sun C. et al (Eds.), Sydney; XP007905630; pp. 899-908; Dec. 10, 2003; http://www.cmis.csiro.au/Hugues.Talbot/dicta2003/cdrom/pdf/0899.pdf.
Satoh, Kiyohide et al., “Passive Depth Acquisition for 3D Image Displays”, IEICE Transactions on Information and Systems, Information Systems Society, Tokyo, JP, Sep. 1, 1994, vol. E77-D, No. 9, pp. 949-957.
School of Computing, “Bluetooth over IP for Mobile Phones,” 2005; http://www.computing.dcu.ie/wwwadmin/fyp-abstract/list/fyp—details05.jsp?year=2005&number=51470574; 1 page.
Schroeder, Erica, “The Next Top Model—Collaboration,” Collaboration, the Workspace: A New World of Communications and Collaboration, Mar. 9, 2009; http//blogs.cisco.com/collaboration/comments/the—next—top—model; 1 page.
Sena, “Industrial Bluetooth,” [retrieved and printed on Apr. 22, 2009] http://www.sena.com/products/industrial—bluetooth; 1 page.
Shaffer, Shmuel, “Translation—State of the Art” presentation; Jan. 15, 2009; 22 pages.
Shi, C. et al., “Automatic Image Quality Improvement for Videoconferencing,” IEEE ICASSP May 2004; http://research.microsoft.com/pubs/69079/0300701.pdf; 4 pages.
Shum, H.-Y, et al., “A Review of Image-Based Rendering Techniques,” in SPIE Proceedings vol. 4067(3); Proceedings of the Conference on Visual Communications and Image Processing 2000, Jun. 20-23, 2000, Perth, Australia; pp. 2-13; https://research.microsoft.com/pubs/68826/review—image—rendering.pdf.
Smarthome, “IR Extender Expands Your IR Capabilities,” [retrieved and printed on Apr. 22, 2009], http://www.smarthome.com/8121.html; 3 pages.
Soliman, H., et al., “Flow Bindings in Mobile IPv6 and NEMO Basic Support,” IETF MEXT Working Group, Nov. 9, 2009, 38 pages; http://tools.ietf.org/html/draft-ietf-mext-flow-binding-04.
Sonoma Wireworks Forums, “Jammin on Rifflink,” [retrieved and printed on May 27, 2010] http://www.sonomawireworks.com/forums/viewtopic.php?id=2659; 5 pages.
Sonoma Wireworks Rifflink, [retrieved and printed on Jun. 2, 2010] http://www.sonomawireworks.com/rifflink.php; 3 pages.
Soohuan, Kim, et al., “Block-based face detection scheme using face color and motion estimation,” Real-Time Imaging VIII; Jan. 20-22, 2004, San Jose, CA; vol. 5297, No. 1; Proceedings of the SPIE—The International Society for Optical Engineering SPIE-Int. Soc. Opt. Eng USA ISSN: 0277-786X; XP007905596; pp. 78-88.
Sudan, Ranjeet, “Signaling in MPLS Networks with RSVP-TE-Technology Information,” Telecommunications, Nov. 2000, 3 pages; http://findarticles.com/p/articles/mi—mOTLC/is—11—34/ai—67447072/.
Sullivan, Gary J., et al., “Video Compression—From Concepts to the H.264/AVC Standard,” Proceedings IEEE, vol. 93, No. 1, Jan. 2005; http://ip.hhi.de/imagecom—G1/assets/pdfs/pieee—sullivan—wiegand—2005.pdf; 14 pages.
Sun, X., et al., “Region of Interest Extraction and Virtual Camera Control Based on Panoramic Video Capturing,” IEEE Trans. Multimedia, Oct. 27, 2003; http://vision.ece.ucsb.edu/publications/04mmXdsun.pdf; 14 pages.
“Super Home Inspectors or Super Inspectors,” [retrieved and printed on Mar. 18, 2010] http://www.umrt.com/PageManager/Default.aspx/PageID=2120325; 3 pages.
Tan, Kar-Han, et al., “Appearance-Based Eye Gaze Estimation,” In Proceedings IEEE WACV'02, 2002, 5 pages; http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.19.8921.
Total Immersion, Video Gallery, copyright 2008-2009 [retrieved and printed on Feb. 26, 2009], http://www.t-immersion.com/en,video-gallery,36.html, 1 page.
Trucco, E., et al., “Real-Time Disparity Maps for Immersive 3-D Teleconferencing by Hybrid Recursive Matching and Census Transform,” [retrieved and printed on May 4, 2010] http://server.cs.ucf.edu/˜vision/papers/VidReg-final.pdf; 9 pages.
Tsapatsoulis, N., et al., “Face Detection for Multimedia Applications,” Proceedings of the ICIP Sep. 10-13 2000, Vancouver, BC, Canada; vol. 2, pp. 247-250.
Tsapatsoulis, N., et al., “Face Detection in Color Images and Video Sequences,” 10th Mediterranean Electrotechnical Conference (MELECON), May 29-31, 2000; vol. 2; pp. 498-502.
Veratech Corp., “Phantom Sentinel,” ©VeratechAero 2006, 1 page; http://www.veratechcorp.com/phantom.html.
Vertegaal, Roel, et al., “GAZE-2: Conveying Eye Contact in Group Video Conferencing Using Eye-Controlled Camera Direction,” CHI 2003, Apr. 5-10, 2003, Fort Lauderdale, FL; Copyright 2003 ACM 1-58113-630-7/03/0004; 8 pages; http://www.hml.queensu.ca/papers/vertegaalchi0403.pdf.
Wachs, J., et al., “A Real-time Hand Gesture System Based on Evolutionary Search,” Vision, Quarter 2006, vol. 22, No. 3, 18 pages; http://web.ics.purdue.edu/˜jpwachs/papers/3q06vi.pdf.
Wang, Hualu, et al., “A Highly Efficient System for Automatic Face Region Detection inMPEG Video,” IEEE Transactions on Circuits and Systems for Video Technology; vol. 7, Issue 4; 1977 pp. 615-628.
Wang, Robert and Jovan Popovic, “Bimanual rotation and scaling,” video clip, YouTube, posted by rkeltset on Apr. 14, 2010, 1 page; http://www.youtube.com/watch?v=7TPFSCX79U.
Wang, Robert and Jovan Popovic, “Desktop virtual reality,” video clip, YouTube, posted by rkeltset on Apr. 8, 2010, 1 page; http://www.youtube.com/watch?v=9rBtm62Lkfk.
Wang, Robert and Jovan Popovic, “Gestural user input,” video clip, YouTube, posted by rkeltset on May 19, 2010, 1 page; http://www.youtube.com/watch?v=3JWYTtBjdTE.
Wang, Robert and Jovan Popovic, “Manipulating a virtual yoke,” video clip, YouTube, posted by rkeltset on Jun. 8, 2010, 1 page; http://www.youtube.com/watch?v=UfgGOO2uM.
Wang, Robert and Jovan Popovic, “Real-Time Hand-Tracking with a Color Glove, ACM Transaction on Graphics,” 4 pages, [Retrieved and printed on Dec. 1, 2010] http://people.csail.mit.edu/rywang/hand.
Wang, Robert and Jovan Popovic, “Real-Time Hand-Tracking with a Color Glove, ACM Transaction on Graphics” (SIGGRAPH 2009), 28(3), Aug. 2009; 8 pages http://people.csail.mitedu/rywang/handtracking/s09-hand-tracking.pdf.
Wang, Robert and Jovan Popovic, “Tracking the 3D pose and configuration of the hand,” video clip, YouTube, posted by rkeltset on Mar. 31, 2010, 1 page; http://www.youtube.com/watch?v=J0XwJkWP6Sw.
Weinstein et al., “Emerging Technologies for Teleconferencing and Telepresence,” Wainhouse Research 2005; http://www.ivci.com/pdf/whitepaper-emerging-technologies-for-teleconferencing-and-telepresence.pdf.
Westerink, P.H., et al., “Two-pass MPEG-2 variable-bitrate encoding,” IBM Journal of Research and Development, Jul. 1991, vol. 43, No. 4; http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.128.421; 18 pages.
Wiegand, T., et al., “Efficient mode selection for block-based motion compensated video coding,” Proceedings, 1995 International Conference on Image Processing IIP 1995, pp. 2559-2562; citeseer.ist.psu.edu/wiegand95efficient.html.
Wiegand, T., et al., “Rate-distortion optimized mode selection for very low bit rate video coding and the emerging H.263 standard,” IEEE Trans. Circuits Syst. Video Technol., Apr. 1996, vol. 6, No. 2, pp. 182-190.
“Wi-Fi Protected Setup,” from Wikipedia, Sep. 2, 2010, 3 pages http://en.wikipedia.org/wiki/Wi-Fi—Protected—Setup.
Wilson, Mark, “Dreamoc 3D Display Turns Any Phone Into Hologram Machine,” Oct. 30, 2008; http://gizmodo.com/5070906/ dreamoc-3d-display-turns-any-phone-into-hologram-machine;4 pgs.
Wirelessdevnet, Melody Launches Bluetooth Over IP, Jun. 5, 2001 [retrieved and printed on Apr. 22, 2009] http://www.wirelessdevnet.com/news/2001/ 155/news5.html; 2 pages.
Xia, F., et al., “Home Agent Initiated Flow Binding for Mobile IPv6,” Network Working Group, Oct. 19, 2009, 15 pages; http://tools.ietf.orghtml/draft-xia-mext-ha-init-flow-binding-01.txt.
Xin, Jun, et al., “Efficient macroblock coding-mode decision for H.264/AVC video coding,” Technical Repot MERL 2004-079, Mitsubishi Electric Research Laboratories, Jan. 2004; www.merl.com/publications/TR2004-079/; 12 pages.
Yang, Jie, et al., “A Real-Time Face Tracker,” Proceedings 3rd IEEE Workshop on Applications of Computer Vision; 1996; Dec. 2-4, 1996; pp. 142-147; http://www.ri.cmu.edu/pub—files/pub1/yang—iie—1996—1/yang—iie—1996—1.pdf.
Yang, Ming-Hsuan, et al., “Detecting Faces in Images: A Survey,” vol. 24, No. 1; Jan. 2002; pp. 34-58; http://vision.ai.uiuc.edu/mhyang/papers/pami02a.pdf.
Yang, Ruigang, et al., “Real-Time Consensus-Based Scene Reconstruction using Commodity Graphics Hardware,” Department of Computer Science, University of North Carolina at Chapel Hill; 2002; http://www.cs.unc.edu/Research/stc/publications/yang—pacigra2002.pdf ; 10 pgs.
Yang, Xiaokang, et al., Rate Control for H.264 with Two-Step Quantization Parameter Determination but Single-Pass Encoding, EURASIP Journal on Applied Signal Processing, Jun. 2006; http://downloads.hindawi.com/journals/asp/2006/063409.pdf; 13 pages.
Yegani, P. et al., “GRE Key Extension for Mobile IPv4,” Network Working Group, Feb. 2006, 11 pages; http://tools.ietf.org/pdf/draft-yegani-gre-key-extension-01.pdf.
Yoo, Byounghun, et al., “Image-Based Modeling of Urban Buildings Using Aerial Photographs and Digital Maps,” Transactions in GIS, 2006, 10(3): p. 377-394.
Zhong, Ren, et al., “Integration of Mobile IP and MPLS,” Network Working Group, Jul. 2000, 15 pages; http://tools.ietf.org/html/draft-zhong-mobile-ip-mpls-01.
“Oblong Industries is the developer of the g-speak spatial operation environment,” Oblong Industries Information Page, 2 pages, [Retrieved and printed on Dec. 1, 2010].
Underkoffler, John, “G-Speak Overview 1828121108,” video clip, Vimeo.com, 1 page, [Retrieved and printed on Dec. 1, 2010] http://vimeo.com/2229299.
Kramer, Kwindla, “Mary Ann de Lares Norris at Thinking Digital,” Oblong Industries, Inc. Web Log, Aug. 24, 2010; 1 page; http://oblong.com/articles/OBS6hEeJmoHoCwgJ.html.
“Mary Ann de Lares Norris,” video clip, Thinking Digital 2010 Day Two, Thinking Digital Videos, May 27, 2010, 3 pages; http://videos.thinkingdigital.co.uk/2010/05/mary-ann-de-lares-norris-oblong/.
Kramer, Kwindla, “Oblong at TED,” Oblong Industries, Inc. Web Log, Jun. 6, 2010, 1 page; http://oblong.com/article/0822LFIS1NVyrOmR.html.
“John Underkoffler points to the future of UI,” video clip and interactive transcript, Video on TED.com, Jun. 2010, 6 pages; http://www.ted.com/talks/john—underkoffler—drive—3d—data—with—a—gesture.html.
Kramer, Kwindla, “Oblong on Bloomberg TV,” Oblong Industries, Inc. Web Log, Jan. 28, 2010, 1 page; http://oblong.com/article/0AN—1KD9q990PEnw.html.
Kramer, Kwindla, “g-speak at RISD, Fall 2009,” Oblong Industries, Inc. Web Log, Oct. 29, 2009, 1 page; http://oblong.com/article/09uW060q6xRIZYvm.html.
Kramer, Kwindla, “g-speak + TMG,” Oblong Industries, Inc. Web Log, Mar. 24, 2009, 1 page; http://oblong.com/article/08mM77zpYMm7kFtv.html.
“g-stalt version 1,” video clip, YouTube.com, posted by ziggles on Mar. 15, 2009, 1 page; http://youtube.com/watch?v=k8ZAql4mdvk.
Underkoffler, John, “Carlton Sparrell speaks at MIT,” Oblong Industries, Inc. Web Log, Oct. 30, 2009, 1 page; http://oblong.com/article/09usAB411Ukb6CPw.html.
Underkoffler, John, “Carlton Sparrell at MIT Media Lab,” video clip, Vimeo.com, 1 page, [Retrieved and printed Dec. 1, 2010] http://vimeo.com/7355992.
Underkoffler, John, “Oblong at Altitude: Sundance 2009,” Oblong Industries, Inc. Web Log, Jan. 20, 2009, 1 page; http://oblong.com/article/08Sr62ron—2akg0D.html.
Underkoffler, John, “Oblong's tamper system 1801011309,” video clip, Vimeo.com, 1 page, [Retrieved and printed Dec. 1, 2010] http://vimeo.com/2821182.
Feld, Brad, “Science Fact,” Oblong Industries, Inc. Web Log, Nov. 13, 2008, 2 pages,http://oblong.com/article/084H-PKI5Tb914Ti.html.
Kwindla Kramer, “g-speak in slices,” Oblong Industries, Inc. Web Log, Nov. 13, 2008, 6 pages; http://oblong.com/article/0866JqfNrFg1NeuK.html.
Underkoffler, John, “Origins: arriving here,” Oblong Industries, Inc. Web Log, Nov. 13, 2008, 5 pages; http://oblong.com/article/085zBpRSY9JeLv2z.html.
Rishel, Christian, “Commercial overview: Platform and Products,” Oblong Industries, Inc., Nov. 13, 2008, 3 pages; http://oblong.com/article/086E19gPvDcktAf9.html.
Related Publications (1)
Number Date Country
20130156332 A1 Jun 2013 US