|Publication number||US9118782 B1|
|Application number||US 13/236,294|
|Publication date||25 Aug 2015|
|Filing date||19 Sep 2011|
|Priority date||19 Sep 2011|
|Publication number||13236294, 236294, US 9118782 B1, US 9118782B1, US-B1-9118782, US9118782 B1, US9118782B1|
|Inventors||Christopher Coley, Petr G. Shepelev|
|Original Assignee||Amazon Technologies, Inc.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (107), Non-Patent Citations (23), Classifications (11), Legal Events (2)|
|External Links: USPTO, USPTO Assignment, Espacenet|
The present application is related to U.S. application Ser. No. 12/977,924, filed on Dec. 23, 2010, entitled “Characterization of a Scene with Structured Light.” This pending application is hereby incorporated by reference in its entirety, and the benefit of the filing date of this pending application is claimed to the fullest extent permitted.
Optical signals may be acquired from scenes in a variety of environments including homes, offices, factories, and so forth. These scenes may contain sources of illumination which periodically vary. Light from these sources, either direct or reflected, may impinge on an optical sensor and generate interference with acquired signal data.
The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The use of the same reference numbers in different figures indicates similar or identical components or features.
Optical signals may be used to gather data, with these signals varying in wavelength from infrared through visible light and ultraviolet. These optical signals may be used in environments including homes, offices, factories and so forth. For example, cameras may acquire images, light distance and ranging (LIDAR) may be used to scan a scene, and so forth.
Optical signals may also be used in an augmented reality environment supported by an augmented reality system configured to provide for interactions between objects such as tangible real-world objects and presented virtual objects. The augmented reality system may be configured to monitor objects in the physical environment such as users and their gestures. One way to monitor objects is using structured light.
To monitor objects using structured light, a structured light pattern is generated by a projector or other source and recovered by a camera or other imaging device. This pattern may be generated by light in one or more spectral bands including the infrared, visible, and ultraviolet. By processing the recovered pattern after it interacts with objects in the scene, it is possible to determine three-dimensional characteristics about objects in the scene, as described in U.S. patent application Ser. No. 12/977,924, filed on Dec. 23, 2010, entitled “Characterization of a Scene with Structured Light” and incorporated by reference above.
However, the recovery of the structured light signal may be impaired by optical interference sources in the scene. For example, the periodic changes in amplitude of room lights due to alternating current may introduce optical interference into the environment resulting in erroneous or unusable images. As a result, sources of optical interference in the environment may negatively impact acquisition of data.
Disclosed herein are techniques for the mitigation of optical interference. While the following is described in the context of augmented reality environments using structured light, it is recognized that these techniques may be applied in other contexts such as a camera recovering an image of a scene.
An interference mitigation module may implement one or more of the following techniques to mitigate optical interference while acquiring images of the scene or a portion thereof. Mitigation as used herein described the elimination or reduction (e.g., below a pre-determined threshold) of effects an interfering signal has on a signal of interest.
Sources of optical interference may be determined by detecting periodic narrow-band interference data from a camera. Narrow-band as used herein denotes interference having a frequency less than about the frame rate of an optical scanning source such as a projector. Sources of interference may also be identified either by receiving manual input or by scanning the environment for those objects, even when they are idle or not otherwise generating interference. Once identified, data about interference characteristics of these objects may be retrieved from an object datastore. For example, identification of a particular light emitting diode (LED) light fixture may indicate that it generates optical interference with a frequency of 120 Hz. As a result, the interference mitigation module may use one of the techniques described herein to mitigate interference from this source. In another implementation, the light fixture may receive a timing signal from the interference mitigation module indicating when to operate to illumine.
One of the techniques described herein applies an over- or undersampling coefficient “k” to a camera or other input source. The sampling coefficient “k” is configured to mitigate the interference. A filter may then be applied to the individual frames acquired by the camera to remove the interfering signal, or remove an entire individual frame which contains the interfering signal.
Another of the techniques described herein shifts the frame start timing of a projector or other optical source which is generating a signal which is or may be interfered with by the optical interference source. Interference intervals are determined at which interference with structured light is likely to occur. A frame start timing of the projector is then shifted such that the structured light or other desired signal is emitted at times non-coincident with the interference intervals.
The ARFN 102 is coupled to a computing device 104. This computing device 104 may be within the ARFN 102, or placed at another location and connected to the ARFN 102. The computing device 104 comprises a processor 106, an input/output interface 108, and a memory 110. The processor 106 may comprise one or more processors configured to execute instructions. The instructions may be stored in memory 110, or in other memory accessible to the processor 106.
The input/output interface 108 may be configured to couple the computing device 104 to other components such as projector, cameras, microphones, other ARFNs 102, other computing devices, and so forth. The coupling between the computing device 104 and the devices may be via wire, fiber optic cable, or wireless connection.
The memory 110 may include computer-readable storage media (“CRSM”). The CRSM may be any available physical media accessible by a computing device to implement the instructions stored thereon. CRSM may include, but is not limited to, random access memory (“RAM”), read-only memory (“ROM”), electrically erasable programmable read-only memory (“EEPROM”), flash memory or other memory technology, compact disk read-only memory (“CD-ROM”), digital versatile disks (“DVD”) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computing device.
Several modules such as instructions, datastores, and so forth may be stored within the memory 110 and configured to execute on a processor, such as the processor 106. An operating system module 112 is configured to manage hardware and services within and coupled to the computing device 104 for the benefit of other modules. Modules may be stored in the memory of the ARFN 102, storage devices accessible on the local network, or cloud storage accessible via a wide area network.
A spatial analysis module 114 is configured to perform several functions which may include analyzing a scene to generate a topology, recognizing objects in the scene, dimensioning the objects, modeling the scene, and so forth. Characterization may be facilitated using several technologies including structured light, light detection and ranging (LIDAR), optical time-of-flight, stereoscopic imaging, radar, and so forth either alone or in combination with one another. For convenience, and not by way of limitation, the examples in this disclosure refer to structured light. The spatial analysis module 114 may receive data from input and output components, such as described below with regards to
An object datastore 116 in the memory 110 is configured to maintain information about objects within the scene. This information may be acquired from the ARFN 102, other input devices, or via manual input. For example, the object datastore may include interference characteristics about an object. These characteristics are discussed in more detail below with regards to
An augmented reality module 118 is configured to generate augmented reality output in concert with the physical environment. A tracking and control module 120 may be configured to identify objects within the scene and track their position and in some implementations, orientation. The augmented reality module 118 may access input/output devices within one or more ARFN nodes 102 to generate output, receive input, or both.
The tracking and control module 120 is configured to identify objects within the scene, track their position, and accept gestures as inputs. The tracking and control module 120 may utilize data obtained by the spatial analysis module 114.
The augmented reality module 118 may also include an interference mitigation module 122. The interference mitigation module 122 is configured to determine actual or potential interference sources within the augmented reality environment and mitigate their effects.
A chassis 204 is configured to hold the components of the ARFN 102. Within the chassis may be placed a projector 206. The projector 206 is configured to generate images. These images may be visible light images perceptible to the user, visible light images imperceptible to the user, images with non-visible light, or a combination thereof. This projector 206 may comprise a digital micromirror device (DMD), liquid crystal on silicon display (LCOS), liquid crystal display, 3LCD, and so forth configured to generate an image and project it onto a surface within the environment. This image may in some implementations comprise structured light, such as described below with regards to
The projector 206 has a projector field of view 208 which describes a particular solid angle. The projector field of view 208 may vary according to changes in the configuration of the projector. For example, the projector field of view 208 may narrow upon application of an optical zoom to the projector. In some implementations a plurality of projectors 206 may be used.
A camera 210 or other imager may also be placed within the chassis 204. The camera 210 is configured to image the scene in visible light wavelengths, non-visible light wavelengths, or both. The camera 210 has a camera field of view 212 which describes a particular solid angle. The camera field of view 212 may vary according to changes in the configuration of the camera 210. For example, an optical zoom of the camera may narrow the camera field of view 212. In some implementations a plurality of cameras 210 may be used. In some implementations, the camera 210 may be configured to oversample, that is capture additional frames compared to those generated by the projector 206. For example, the projector 206 may be configured to generate 120 frames per second, while the camera 210 may be configured to oversample and capture 180 frames per second. In another implementation, the camera 210 may be configured to undersample, that is capture fewer frames per second compared to those generated by the projector 206.
The chassis 204 may be mounted with a fixed orientation, or be coupled via an actuator to a fixture such that the chassis 204 may move. Actuators may include piezoelectric actuators, motors, linear actuators, and other devices configured to displace or move the chassis 204 or components therein such as the projector 206 and/or the camera 210. The actuator may comprise a pan motor 214, tilt motor 216, and so forth. The pan motor 214 is configured to rotate the chassis 204 in a yawing motion. The tilt motor 216 is configured to change the pitch of the chassis 204. By panning and/or tilting the chassis 204, different views of the scene may be acquired. The spatial analysis module 114 may use the different views to monitor objects within the environment.
One or more microphones 218 may be placed within the chassis 204, or elsewhere within the scene. These microphones 218 may be used to acquire input from the user, for echolocation, location determination of a sound, or to otherwise aid in the characterization of and receipt of input from the scene. For example, the user may make a particular noise such as a tap on a wall or snap of the fingers which are pre-designated as inputs within the augmented reality environment. The user may alternatively use voice commands.
One or more speakers 220 may also be present to provide for audible output. For example, the speakers 220 may be used to provide output from a text-to-speech module or to playback pre-recorded audio.
A transducer 222 may be present within the ARFN 102, or elsewhere within the environment, and configured to detect and/or generate inaudible signals, such as infrasound or ultrasound. These inaudible signals may be used to provide for signaling between accessory devices and the ARFN 102.
A ranging system 224 may also be provided in the ARFN 102. The ranging system 224 is configured to provide distance information from the ARFN 102 to a scanned object or set of objects. The ranging system 224 may comprise radar, light detection and ranging (LIDAR), ultrasonic ranging, stereoscopic ranging, and so forth. In some implementations the transducer 222, the microphones 218, the speaker 220, or a combination thereof may be configured to use echolocation or echo-ranging to determine distance and spatial characteristics.
In this illustration, the computing device 104 is shown within the chassis 204. However, in other implementations all or a portion of the computing device 104 may be placed in another location and coupled to the ARFN 102. This coupling may occur via wire, fiber optic cable, wirelessly, or a combination thereof. Furthermore, additional resources external to the ARFN 102 may be accessed, such as resources in another ARFN 102 accessible via a local area network, cloud resources accessible via a wide area network connection, or a combination thereof.
Also shown in this illustration is a projector/camera linear offset designated “O”. This is a linear distance between the projector 206 and the camera 210. Placement of the projector 206 and the camera 210 at distance “O” from one another aids in the recovery of structured light data from the scene. The known projector/camera linear offset “O” may also be used to calculate distances, dimensioning, and otherwise aid in the characterization of objects within the scene 202. In other implementations the relative angle and size of the projector field of view 208 and camera field of view 212 may vary. Also, the angle of the projector 206 and the camera 210 relative to the chassis 204 may vary.
In other implementations the components of the ARFN 102 may be distributed in one or more locations within the environment 100. As mentioned above, microphones 218 and speakers 220 may be distributed throughout the scene. The projector 206 and the camera 210 may also be located in separate chassis 204. The ARFN 102 may also include discrete portable signaling devices used by users to issue inputs. For example, these may be acoustic clickers (audible or ultrasonic), electronic signaling devices such as infrared emitters, radio transmitters, and so forth.
A sphere 304 is shown positioned between the projector 206 and a wall in the scene 202. A shadow 306 from the sphere 304 appears on the wall. Inspection of the sphere 304 shows a deformation effect 308 of the structured light pattern 302 as it interacts with the curved surface of the sphere 304. This deformation effect 308 results from the interaction of the structured light pattern 302 generated by the projector 206. The camera 210 may then acquire one or more images of the deformation effect 308 and the structured light pattern 302 otherwise interacting with one or more objects in the environment, such as a wall, floor, furnishing, user, and so forth.
In some implementations other effects, such as dispersion of the structured light pattern 302 may be used to provide information on the topology of the scene. Where the projector 206 and camera 210 have differing fields of view, such as shown in
The camera 210 detects the interaction of the structured light pattern 302 with objects within the scene. For example, the deformation effect 308 on the sphere 304 is detected by the camera 210. The camera 210 is configured to sense or detect the structured light. In some implementations the camera 210 may also sense or detect wavelengths other than those used for structured light pattern 302. The image captured by the camera 210 is processed by the spatial analysis module 114 to characterize the scene 202. In some implementations, multiple cameras may be used to acquire the image.
In this illustration, the user 402 is standing in a room. Overhead, a light fixture 404 provides general illumination to the room. Sources of illumination may include incandescent, fluorescent, electroluminescent, light emitting diodes (LEDs), other structured light emitters, and so forth. Sources of illumination may be subject to periodic changes in their output characteristics, such as flicker resulting from the change in voltage provided by alternating current. For example, a fluorescent light fixture may have amplitude which varies with a frequency of 120 Hz, or twice that of a 60 Hz line frequency, thus exhibiting a flicker rate of 120 Hz.
Sources of illumination may also experience periodic changes in their output characteristics as a result of control circuitry. For example, an LED lamp may be configured to have a particular timing of illumination such as provided by a pulse-width modulator to allow for “dimming” or apparent changes in overall illumination. Because of these periodic changes, sources of illumination may thus produce optical interference.
As described above, the ARFNs 102 may generate structured light as well as images configured for presentation to the user 402. As shown here, one of the ARFNs 102 has generated a projected image 406. This projected image 406 may provide cues or information to the user, such as a list of things as presented here.
A scene may contain a variety of electronic devices such as a tablet computer 408, television 410, cellular phone, desktop computer, consumer electronic device, and so forth. These electronic devices may use display screens which are refreshed at a given frequency. For example, the television 410 may have a refresh rate of 120 Hz, the tablet computer 408 screen may have a refresh rate of 60 Hz, and so forth.
When an electronic display refreshes, it may experience changes in overall brightness, chrominance, and so forth. These changes may result in optical interference when imaged by the camera 210. As a result, the presence of one or more of these interference sources in the scene may impair the acquisition of an image such as a structured light signal suitable for characterization of the objects in the environment.
In some implementations a device that generates interference or which has the potential to interfere may be configured to communicate with other devices in the augmented reality environment such as the computing device 104. This communication may be used to provide for interference data such as a frequency of refresh currently in use, timing synchronization, and so forth. This interference data may then be used by the interference mitigation module 122 to mitigate the interference between the source of the optical interference and the sensor being interfered with. For example, a timing synchronization signal may be configured to be received from the other device by the system to determine when interference is occurring.
In another implementation the interference mitigation module 122 may generate a timing signal used by other devices in the environment to indicate when they are to be active. The timing signal may comprise brightness, chromaticity, and other information, configured such that the interference is mitigated. For example, the interference mitigation module 122 may send a timing pulse indicating a maximum illumination level and specifying that the illumination source is to decrease a level of red light during a particular time interval to minimize interference with structured light.
In another implementation the communication may be used to alter operational characteristics of the interfering source. For example, the interference mitigation module 122 may communicate with the tablet computer to configure it to operate with timing and a refresh rate which mitigates interference with structured light recovery.
In some instances, a user may manually input information about a potential interference source. For example, a user may indicate that the tablet computer 408 is an “Acme Slab”. In other instances, information about interference sources may be gathered from shipment or manifest data. For example, upon opening a box with contents known to be the “Acme Slab” as shipped from a retailer, the object may be identified as the “Acme Slab” tablet computer.
The ARFNs 102 may scan the environment to locate potential interference sources. For example, an ARFN 102 may acquire an image of the inactive television 410 on the wall, and using pattern recognition may determine that the television 410 is a “Lucky Silver Model 3813”.
In other instances, an interfering signal such as acquired by the camera 210 may be used to identify a source. For example, the light fixture 404 may flicker at 137 Hz which allows for the identification as a “Green Tree 39”.
Information about objects which may generate interference may be stored in the object datastore 116. This information may include a geographic region 502 within which the object is typically found. For example, regions may include the United States, Europe, Middle East, Asia, and so forth. The list of interfering objects may be filtered according to the current region of the augmented reality environment. For example, consumer objects which are sold and used in Europe with the 50 Hz power frequency are unlikely to be present in an augmented reality environment in the United States which uses a 60 Hz power frequency.
The object datastore 116 may also store an indication of a device type 504 of the corresponding devices. For example, as shown here the device type 504 indicates whether the object device is a television, tablet computer, cellular phone, LED light, and so forth. A device description 506 comprises a user-friendly designation, such as the “Lucky Silver Model 3813”.
The object datastore 116 may store the interference frequency 508. In some implementations, the interference frequency 508 may be relative to a reference signal, such as when the source is locked to an AC power line frequency. Or it may be indicated that the interference frequency 508 is free-running, such as when using an internal clock. In some implementations other data such as the spectral band of the interference, duration, and so forth may also be stored in the object datastore 116.
Different versions of the same device type 504 and device description 506 may be present with different interference frequencies. For example, as shown here the “Nadir model 5” when located in the United States has an interference frequency of 59.94 Hz, while in Europe the interference frequency is 50 Hz.
By providing details as to the nature of the interference, the object datastore 116 allows the interference mitigation module 122 to more effectively mitigate interference by tailoring the mitigation techniques to the interfering source. For example, given the presence of a “Lucky Silver model 3813” television in the environment with a 120 Hz refresh rate, the interference mitigation module 122 may be configured to synchronize a 120 Hz sampling rate of the camera 210 with the television. Or, where the “Companion” cellular phone is present the timing for the cellphone's 35 Hz refresh rate may be determined and the sampling of the 120 Hz camera shifted to avoid interference from the phone.
The processes described herein may be implemented by the architectures described herein, or by other architectures. These processes are illustrated as a collection of blocks in a logical flow graph. Some of the blocks represent operations that can be implemented in hardware, software, or a combination thereof. In the context of software, the blocks represent computer-executable instructions stored on one or more computer-readable storage media that, when executed by one or more processors, perform the recited operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types. The order in which the operations are described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order or in parallel to implement the processes. It is understood that the following processes may be implemented on other architectures as well.
At 602, the interference mitigation module 122 may detect interference to an image stream, which may comprise data from a camera receiving structure light generated by a projector. For example, the camera 210 may be receiving a stream of images corresponding to structured light projected by the projector 206. This interference may be detected by looking for narrow-band interference. Narrow-band interference comprises interference having a frequency less than the frame rate of the optical source, such as the projector 206. For example, the projector 206 may operate at a frequency of 120 Hz, projecting image frames including structured light 120 times per second. A display operating with a refresh rate of 72 Hz would thus generate optical interference at the camera 210. Interference may be generated by emissive interference sources such as electric lights, display screens, and so forth which emit light. Interference may also be generated by reflective sources such as interferometric displays which are modulated to selectively reflect light.
Interference may also be detected by analyzing amplitude changes in the image stream. For example, over a period of time an interfering source may exhibit increases and decreases in relative brightness as detected by the camera 210. In another implementation, interference may also be detected by looking for particular geometric shapes, a reoccurring pattern, or both within the image stream. For example, a periodic recurring shape of a flashing rectangular pattern across a series of image frames may interpreted as an interference source.
In some implementations, where the presence of an interfering source is known, the details about actual or potential interference may be retrieved from the object datastore 116 such as described above with regards to
At 604, a sampling coefficient “k” is determined which is configured to mitigate at least in part the interference. By over- or undersampling, the time period during which interference is experienced is reduced. In some implementations, the sampling coefficient may have been previously determined and stored in the object datastore 116. In some implementations the sampling coefficient “k” may change dynamically as the interference changes with time. For example, the interference source may change frequency resulting in a corresponding shift to “k” to continue interference mitigation.
At 606, the camera 206 is configured to operate at an oversampled or under-sampled rate comprising the product of k and a projector frame rate. To provide for over- or undersampling, k is not equal to one. Continuing the example above, with the sampling coefficient “k” set to 1.2, the camera 210 acquires images at 144 Hz or frames per second while the projector 206 remains operating at 120 Hz. As a result, the interference by the 72 Hz display is reduced or eliminated.
At 608, a filter is applied to frames acquired by the camera 206 at the sampled frame rate to remove the interference. For example, out of the 144 frames acquired per second by the camera 210 because of the oversampling, frames exhibiting interference, such as frames number 72 and 144, may be discarded without adversely affecting processes which call for the 120 frames per second. In other implementations, these frames exhibiting interference may have additional signal processing applied selectively to minimize the effects of the interference.
As also described above, in some implementations where the presence of an interfering source is known, the details about actual or potential interference may be retrieved from the object datastore 116 such as described above with regards to
At 704, in some implementations the camera 210 acquiring the image stream may be configured to operate at a frame rate different from to the frame rate of the projector 206 generating the structured light. Furthermore, in some implementations this configuration may occur before step 702. For example, information about a potentially interfering device may be available before the interfering device enters the augmented reality environment and the mitigation change made in advance.
The frame rate of the camera 210 may be greater than or equal to the frame rate of the projector 206, or less than the frame rate of the projector 206. In some situations the projector of the structured light may be configured as a static source of structured light, or one with flicker rate or frame rate which is slower than that of the camera 210. For example, a light fixture may be configured to generate and project a static structured light pattern throughout the room. That light fixture may have a flicker rate of less than the camera 210 frame rate.
At 706, frame start timing of the projector 206 is shifted such that the structured light frames are projected at times non-coincident with the interference intervals or such that the interference is mitigated. The frame start timing designates when presentation of a particular frame of the projector is scheduled to begin. Thus, while the interfering signal is absent the structured light frame is presented. Similarly, while the interfering signal is present, the structured light is not presented and recovered. In some implementations, such as when the structured light source has a lower rate, flicker rate, or is static, the camera 210 frame rate may be reduced to allow for improved recovery of the structured light.
A phase-locked loop (PLL) or other mechanism may be used to synchronize the desired frame start timing. For example, where the interfering signal results from a free running clock in a laptop computer display, data about the laptop display such as recovered by the camera 210 or via a wireless connection with the laptop may be locked onto the by the interference mitigation module 122. This data may be used to maintain synchronization of the frame start timing to mitigate the interference. Over time, as the clocks in the computing device 104, the laptop, or both, begin to drive from one another, the PLL may shift timing to maintain the mitigation.
This shifting or hopping of the structured light frames may be ongoing. For example, the presence in the same scene of several sources of optical interference each with different interference frequencies may result in a series of shifts. The timing of each of these shifts may be asymmetrical, for example, one shift at 10 ms, another at 17 ms, another at 9 ms, and so forth.
In another implementation the shifting may comprise transposing frames containing structured light with frames containing non-structured light. Thus, in place of a scheduled structured light frame which would experience interference, a non-structured light frame is presented instead, with the structured light frame being presented at the time scheduled for the non-structured light frame. Mitigation techniques may also be configured to adapt to relative persistence and prevalence of the interference in the environment. For example, interference from a permanent light fixture may be addressed, while a user walking through a room with a tablet computer may be ignored unless they have been determined they will be there long enough.
Although the subject matter has been described in language specific to structural features, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features described. Rather, the specific features are disclosed as illustrative forms of implementing the claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US3835245||7 Aug 1972||10 Sep 1974||Image Analysing Computers Ltd||Information modification in image analysis systems employing line scanning|
|US3840699||25 May 1972||8 Oct 1974||Bowerman W||Television system for enhancing and tracking an object|
|US4112463||31 Mar 1977||5 Sep 1978||Robert Bosch Gmbh||System for detecting a motion in the monitoring area of two or more television cameras|
|US5704836||21 Feb 1996||6 Jan 1998||Perception Systems, Inc.||Motion-based command generation technology|
|US5946209||25 Mar 1997||31 Aug 1999||Hubbell Incorporated||Motion sensing system with adaptive timing for controlling lighting fixtures|
|US6059576||21 Nov 1997||9 May 2000||Brann; Theodore L.||Training and safety device, system and method to aid in proper movement during physical activity|
|US6098091||30 Dec 1996||1 Aug 2000||Intel Corporation||Method and system including a central computer that assigns tasks to idle workstations using availability schedules and computational capabilities|
|US6503195 *||24 May 1999||7 Jan 2003||University Of North Carolina At Chapel Hill||Methods and systems for real-time structured light depth extraction and endoscope using real-time structured light depth extraction|
|US6618076||14 Nov 2000||9 Sep 2003||Justsystem Corporation||Method and apparatus for calibrating projector-camera system|
|US6690618||2 Apr 2002||10 Feb 2004||Canesta, Inc.||Method and apparatus for approximating a source position of a sound-causing event for determining an input used in operating an electronic device|
|US6760045||29 Dec 2000||6 Jul 2004||Gateway, Inc.||Simultaneous projected presentation of client browser display|
|US6789903||18 Feb 2003||14 Sep 2004||Imatte, Inc.||Generating an inhibit signal by pattern displacement|
|US6803928||6 Jun 2001||12 Oct 2004||Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V.||Extended virtual table: an optical extension for table-like projection systems|
|US6811267||9 Jun 2003||2 Nov 2004||Hewlett-Packard Development Company, L.P.||Display system with nonvisible data projection|
|US7046214||29 Mar 2005||16 May 2006||Information Decision Technologies, Llc||Method and system for accomplishing a scalable, multi-user, extended range, distributed, augmented reality environment|
|US7315241||1 Dec 2004||1 Jan 2008||Hrl Laboratories, Llc||Enhanced perception lighting|
|US7418392||10 Sep 2004||26 Aug 2008||Sensory, Inc.||System and method for controlling the operation of a device by voice commands|
|US7538764||19 Jul 2005||26 May 2009||Interuniversitair Micro-Elektronica Centrum (Imec)||System and method to obtain surface structures of multi-dimensional objects, and to represent those surface structures for animation, transmission and display|
|US7720683||10 Jun 2004||18 May 2010||Sensory, Inc.||Method and apparatus of specifying and performing speech recognition operations|
|US7743348||30 Jun 2004||22 Jun 2010||Microsoft Corporation||Using physical objects to adjust attributes of an interactive display application|
|US7774204||24 Jul 2008||10 Aug 2010||Sensory, Inc.||System and method for controlling the operation of a device by voice commands|
|US7911444||31 Aug 2005||22 Mar 2011||Microsoft Corporation||Input method for surface of interactive display|
|US7925996||18 Nov 2004||12 Apr 2011||Microsoft Corporation||Method and system for providing multiple input connecting user interface|
|US7949148||19 Jan 2007||24 May 2011||Digimarc Corporation||Object processing employing movement|
|US8107736||10 Jul 2008||31 Jan 2012||Novell, Inc.||System and method for device mapping based on images and reference points|
|US8159739||29 May 2008||17 Apr 2012||Au Optronics Corporation||Display apparatus|
|US8199966||14 May 2008||12 Jun 2012||International Business Machines Corporation||System and method for providing contemporaneous product information with animated virtual representations|
|US8253746||1 May 2009||28 Aug 2012||Microsoft Corporation||Determine intended motions|
|US8264536||25 Aug 2009||11 Sep 2012||Microsoft Corporation||Depth-sensitive imaging via polarization-state mapping|
|US8284205||24 Oct 2007||9 Oct 2012||Apple Inc.||Methods and apparatuses for load balancing between multiple processing units|
|US8285256||28 Jul 2008||9 Oct 2012||Embarq Holdings Company, Llc||System and method for projecting information from a wireless device|
|US8307388||31 Oct 2007||6 Nov 2012||Porto Vinci Ltd. LLC||Automatic adjustment of devices in a home entertainment system|
|US8308304||27 Oct 2008||13 Nov 2012||The Invention Science Fund I, Llc||Systems associated with receiving and transmitting information related to projection|
|US8382295||30 Jun 2010||26 Feb 2013||Amazon Technologies, Inc.||Optical assembly for electronic devices|
|US8408720||9 Apr 2010||2 Apr 2013||Funai Electric Co., Ltd.||Image display apparatus, image display method, and recording medium having image display program stored therein|
|US8591039||28 Oct 2008||26 Nov 2013||Smart Technologies Ulc||Image projection methods and interactive input/projection systems employing the same|
|US20010049713||16 Mar 2001||6 Dec 2001||Sun Microsystems Inc.||Method and apparatus for dynamic distributed computing over a network|
|US20020001044||27 Jun 2001||3 Jan 2002||Villamide Jesus Mendez||Projection apparatus and method of image projection|
|US20020070278 *||11 Dec 2000||13 Jun 2002||Hung Patrick Siu-Ying||Method and apparatus for scanning electronic barcodes|
|US20020168069 *||28 Feb 2001||14 Nov 2002||Babak Tehranchi||Copy protection for digital motion picture image data|
|US20030156306 *||17 Dec 2002||21 Aug 2003||Dai Nippon Printing Co., Ltd.||Computer-generated hologram fabrication process, and hologram-recorded medium|
|US20040046736||21 Jul 2003||11 Mar 2004||Pryor Timothy R.||Novel man machine interfaces and applications|
|US20040190716 *||27 Mar 2003||30 Sep 2004||Eastman Kodak Company||Projector with enhanced security camcorder defeat|
|US20040201823||11 Apr 2003||14 Oct 2004||Ramesh Raskar||Context aware projector|
|US20050081164||26 Aug 2004||14 Apr 2005||Tatsuya Hama||Information processing apparatus, information processing method, information processing program and storage medium containing information processing program|
|US20050110964||20 Sep 2004||26 May 2005||Matthew Bell||Interactive video window display system|
|US20050128196 *||8 Oct 2004||16 Jun 2005||Popescu Voicu S.||System and method for three dimensional modeling|
|US20050254683||20 Jul 2005||17 Nov 2005||Schumann Robert W||Visual copyright protection|
|US20050264555||28 May 2004||1 Dec 2005||Zhou Zhi Y||Interactive system and method|
|US20050276444||28 May 2004||15 Dec 2005||Zhou Zhi Y||Interactive system and method|
|US20050288078||28 May 2004||29 Dec 2005||Cheok Adrian D||Game|
|US20050289590||28 May 2004||29 Dec 2005||Cheok Adrian D||Marketing platform|
|US20060028400||1 Aug 2005||9 Feb 2006||Silverbrook Research Pty Ltd||Head mounted display with wave front modulator|
|US20060041926||29 Apr 2005||23 Feb 2006||Vulcan Inc.||Voice control of multimedia content|
|US20060080408||2 May 2005||13 Apr 2006||Vulcan Inc.||Smart home control of electronic devices|
|US20060152803||11 Jan 2005||13 Jul 2006||Provitola Anthony I||Enhancement of depth perception|
|US20060170880||3 Dec 2003||3 Aug 2006||Barco Control Rooms Gmbh||Brightness and colour control of a projection appliance|
|US20060262140||18 May 2005||23 Nov 2006||Kujawa Gregory A||Method and apparatus to facilitate visual augmentation of perceived reality|
|US20070005747||30 Jun 2005||4 Jan 2007||Batni Ramachendra P||Control server employment of offer message from resource server to determine whether to add indication of the resource server to resource server mapping table|
|US20070024644||11 Apr 2006||1 Feb 2007||Herman Bailey||Interactive augmented reality system|
|US20070239211||31 Mar 2006||11 Oct 2007||Andras Lorincz||Embedded neural prosthesis|
|US20070260669||10 Jul 2007||8 Nov 2007||Steven Neiman||Method for dividing computations|
|US20080094588||6 Oct 2006||24 Apr 2008||Cole James R||Projector/camera system|
|US20080151195||21 Dec 2006||26 Jun 2008||Texas Instruments Incorporated||Apparatus and Method for Increasing Compensation Sequence Storage Density in a Projection Visual Display System|
|US20080174735||23 Jan 2007||24 Jul 2008||Emiscape, Inc.||Projection Display with Holographic Screen|
|US20080180640||28 Jan 2008||31 Jul 2008||Seiko Epson Corporation||Projector|
|US20080186255||7 Dec 2007||7 Aug 2008||Cohen Philip R||Systems and methods for data annotation, recordation, and communication|
|US20080229318||16 Mar 2007||18 Sep 2008||Carsten Franke||Multi-objective allocation of computational jobs in client-server or hosting environments|
|US20080273754||1 May 2008||6 Nov 2008||Leviton Manufacturing Co., Inc.||Apparatus and method for defining an area of interest for image sensing|
|US20090066805||26 Aug 2008||12 Mar 2009||Sanyo Electric Co., Ltd.||Video camera|
|US20090073034||19 May 2008||19 Mar 2009||Ching-Fang Lin||4D GIS virtual reality for controlling, monitoring and prediction of manned/unmanned system|
|US20090184888||18 Jan 2008||23 Jul 2009||Jyi-Yuan Chen||Display control system and method thereof|
|US20100011637||15 Jul 2008||21 Jan 2010||Yudong Zhang||Displaying device and method thereof|
|US20100026479||2 Aug 2007||4 Feb 2010||Bao Tran||Wireless occupancy and day-light sensing|
|US20100039568 *||6 Mar 2007||18 Feb 2010||Emil Tchoukaleysky||Digital cinema anti-camcording method and apparatus based on image frame post-sampling|
|US20100060723 *||7 Nov 2007||11 Mar 2010||Nec Corporation||Display system|
|US20100066676||10 Sep 2009||18 Mar 2010||Oblong Industries, Inc.||Gestural Control of Autonomous and Semi-Autonomous Systems|
|US20100164990||15 Aug 2006||1 Jul 2010||Koninklijke Philips Electronics, N.V.||System, apparatus, and method for augmented reality glasses for end-user programming|
|US20100199232||3 Feb 2010||5 Aug 2010||Massachusetts Institute Of Technology||Wearable Gestural Interface|
|US20100207872 *||4 Nov 2009||19 Aug 2010||Pixar Imgagin Inc.||Optical displacement detecting device and operating method thereof|
|US20100240455||29 Oct 2008||23 Sep 2010||Wms Gaming, Inc.||Presenting secondary content for a wagering game|
|US20100257252||1 Apr 2009||7 Oct 2010||Microsoft Corporation||Augmented Reality Cloud Computing|
|US20100284055||23 Jul 2010||11 Nov 2010||Qualcomm Mems Technologies, Inc.||Display with integrated photovoltaic device|
|US20110012925||20 Jul 2009||20 Jan 2011||Igrs Engineering Lab. Ltd.||Image marking method and apparatus|
|US20110050885||25 Aug 2009||3 Mar 2011||Microsoft Corporation||Depth-sensitive imaging via polarization-state mapping|
|US20110061100||10 Sep 2009||10 Mar 2011||Nokia Corporation||Method and apparatus for controlling access|
|US20110072047||21 Sep 2009||24 Mar 2011||Microsoft Corporation||Interest Learning from an Image Collection for Advertising|
|US20110087731||8 Oct 2009||14 Apr 2011||Laura Wong||Systems and methods to process a request received at an application program interface|
|US20110093094||22 Oct 2010||21 Apr 2011||Rahul Goyal||In-Wall Occupancy Sensor with RF Control|
|US20110096844||13 Mar 2009||28 Apr 2011||Olivier Poupel||Method for implementing rich video on mobile terminals|
|US20110134204||5 Dec 2008||9 Jun 2011||Florida Gulf Coast University||System and methods for facilitating collaboration of a group|
|US20110154350||18 Dec 2009||23 Jun 2011||International Business Machines Corporation||Automated cloud workload management in a map-reduce environment|
|US20110161912||30 Dec 2009||30 Jun 2011||Qualzoom, Inc.||System for creation and distribution of software applications usable on multiple mobile device platforms|
|US20110164163||5 Jan 2010||7 Jul 2011||Apple Inc.||Synchronized, interactive augmented reality displays for multifunction devices|
|US20110197147||11 Feb 2010||11 Aug 2011||Apple Inc.||Projected display shared workspaces|
|US20110216090||14 Dec 2010||8 Sep 2011||Gwangju Institute Of Science And Technology||Real-time interactive augmented reality system and method and recording medium storing program for implementing the method|
|US20110238751||26 Mar 2010||29 Sep 2011||Nokia Corporation||Method and apparatus for ad-hoc peer-to-peer augmented reality environment|
|US20110249197||7 Apr 2010||13 Oct 2011||Microvision, Inc.||Wavelength Combining Apparatus, System and Method|
|US20120009874||9 Jul 2010||12 Jan 2012||Nokia Corporation||Allowed spectrum information distribution system|
|US20120120296||17 Nov 2010||17 May 2012||Verizon Patent And Licensing, Inc.||Methods and Systems for Dynamically Presenting Enhanced Content During a Presentation of a Media Content Instance|
|US20120124245||17 Nov 2010||17 May 2012||Flextronics Id, Llc||Universal remote control with automated setup|
|US20120127320||8 Apr 2010||24 May 2012||Tibor Balogh||Method And Apparatus For Displaying 3D Images|
|US20120130513||18 Nov 2010||24 May 2012||Verizon Patent And Licensing Inc.||Smart home device management|
|US20120223885||2 Mar 2011||6 Sep 2012||Microsoft Corporation||Immersive display experience|
|US20120306878 *||13 Aug 2012||6 Dec 2012||Microsoft Corporation||Modeling and Rendering of Heterogeneous Translucent Materals Using The Diffusion Equation|
|WO2009112585A1||13 Mar 2009||17 Sep 2009||Alcatel Lucent||Method for implementing rich video on mobile terminals|
|WO2011088053A2||11 Jan 2011||21 Jul 2011||Apple Inc.||Intelligent automated assistant|
|1||Final Office Action for U.S. Appl. No. 12/982,457, mailed on Apr. 8, 2015, William Spencer Worley III, "Utilizing Content Output Devices in an Augmented Reality Environment", 64 pages.|
|2||Final Office Action for U.S. Appl. No. 12/982,457, mailed on May 8, 2014, William Spencer Worley III, "Utilizing Content Output Devices in an Augmented Reality Environment", 58 pages.|
|3||Foscam User Manual, Model:F19821W, retrieved at <<http://foscam.us/downloads/Fl9821W%20user%20manual.pdf, May 2010, pp. 45-46 (71 pages).|
|4||Office Action for U.S. Appl. No. 12/975,175, mailed on Apr. 10, 2014, William Spencer Worley III, "Designation of Zones of Interest Within an Augmented Reality Environment", 33 pages.|
|5||Office Action for U.S. Appl. No. 12/975,175, mailed on Oct. 1, 2014, William Spencer Worley III, "Designation of Zones of Interest Within an Augmented Reality Environment", 36 pages.|
|6||Office action for U.S. Appl. No. 12/977,760, mailed on Jun. 4, 2013, Worley III et al., "Generation and Modulation of Non-Visible Structured Light ", 12 pages.|
|7||Office action for U.S. Appl. No. 12/977,760, mailed on Oct. 15, 2012, Worley III et al., "Generation and Modulation of Non-Visible Structured Light", 13 pages.|
|8||Office Action for U.S. Appl. No. 12/977,760, mailed on Oct. 16, 2014, William Spencer Worley III, "Generation and Modulation of Non-Visible Structured Light", 11 pages.|
|9||Office action for U.S. Appl. No. 12/977,924, mailed on Nov. 15, 2013, Coley, et al., "Characterization of a Scene With Structured Light", 9 pages.|
|10||Office Action for U.S. Appl. No. 12/977,949, mailed on Jan. 22, 2014, William Spencer Worley III, "Powered Augmented Reality Projection Accessory Display Device", 11 pages.|
|11||Office Action for U.S. Appl. No. 12/977,992, mailed on Apr. 4, 2014, William Spencer Worley III, "Unpowered Augmented Reality Projection Accessory Display Device", 6 pages.|
|12||Office Action for U.S. Appl. No. 12/978,800, mailed on Dec. 2, 2014, William Spencer Worley III, "Integrated Augmented Reality Environment", 46 pages.|
|13||Office action for U.S. Appl. No. 12/978,800, mailed on Jun. 17, 2014, Worley III, "Integrated Augmented Reality Environment", 40 pages.|
|14||Office Action for U.S. Appl. No. 12/978,800, mailed on Oct. 25, 2013, William Spencer Worley III, "Integrated Augmented Reality Environment", 36 pages.|
|15||Office Action for U.S. Appl. No. 12/982,457, mailed on Dec. 3, 2013, William Spencer Worley III, "Utilizing Content Output Devices in an Augmented Reality Environment", 56 pages.|
|16||Office Action for U.S. Appl. No. 12/982,457, mailed on Oct. 8, 2014, Worley III et al., "Utilizing Content Output Devices in an Augmented Reality Environment", 62 pages.|
|17||Office Action for U.S. Appl. No. 12/982,519, mailed on Aug. 14, 2014, Worley III, "Complementing Operation of Display Devices in an Augmented Reality Environment", 12 pages.|
|18||Office action for U.S. Appl. No. 12/982,519, mailed on Aug. 29, 2013, Worley III, "Complementing Operation of Display Devices in an Augmented Reality Environment", 12 pages.|
|19||Office Action for U.S. Appl. No. 12/982,519, mailed on Feb. 12, 2014, William Spencer Worley III, "Complementing Operation of Display Devices in an Augmented Reality Environment", 12 pages.|
|20||Office action for U.S. Appl. No. 12/982,519, mailed on Feb. 7, 2013, Worley III , "Complementing Operation of Display Devices in an Augmented Reality Environment", 13 pages.|
|21||Office Action for U.S. Appl. No. 12/982,519, mailed on Mar. 5, 2015, William Spencer Worley III, "Complementing Operation of Display Devices in an Augmented Reality Environment", 13 pages.|
|22||Pinhanez, "The Everywhere Displays Projector: A Device to Create Ubiquitous Graphical Interfaces", IBM Thomas Watson Research Center, Ubicomp 2001, 18 pages.|
|23||Sneath, "The Bumper List of Windows 7 Secrets", retrieved on Aug. 21, 2013, at http://blogs.msdn.com/b/tims/archive/2009/01/12/ the bumper-list-of-windows-7-secrets.aspx, 2009, 13 pages.|
|International Classification||H04N9/00, H04N7/18, H04N5/00|
|Cooperative Classification||G06F3/0304, H04N5/2357, H04N7/18, G06T19/006, G01B11/2513, G06F3/011, H04N9/00, H04N5/00|
|19 Jan 2012||AS||Assignment|
Owner name: RAWLES LLC, DELAWARE
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:COLEY, CHRISTOPHER;SHEPELEV, PETR G.;SIGNING DATES FROM 20111128 TO 20120103;REEL/FRAME:027563/0243
|12 Nov 2015||AS||Assignment|
Owner name: AMAZON TECHNOLOGIES, INC., WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RAWLES LLC;REEL/FRAME:037103/0084
Effective date: 20151106