Dynamic depth power equalization

Information

  • Patent Grant
  • 9313376
  • Patent Number
    9,313,376
  • Date Filed
    Wednesday, April 1, 2009
    16 years ago
  • Date Issued
    Tuesday, April 12, 2016
    9 years ago
Abstract
Disclosed herein are systems and methods to control the power consumption of a battery powered platform comprising at least one depth camera. The battery powered platform may adjust the consumption of one or more systems of the depth camera, or other systems on the battery powered platform to alter the power consumption of the battery powered platform.
Description
BACKGROUND

A battery powered platform is limited in its functionality by the charge capacity and output capabilities of the battery. Adding certain types of systems to a battery powered platform, such as a depth camera, further complicates this problem because the functionality of the depth camera may be heavily reliant on costly bursts of infrared emission for sensing the depth of a scene.


Other types of systems on a battery operated platform may also exhibit similar costly drains on a battery; drains which may be exacerbated or rendered unnecessary because of movement of the system.


SUMMARY

The following discloses systems and methods to conserve the limited power afforded by a battery to a battery operated platform. In various embodiments, these systems and methods to conserve power may be provided to a stereoscopic platform or an augmented reality platform with a depth camera. Information about the motion of the depth camera or the motion of one or more objects in a capture area may be used to adjust the output power to each of one or more systems on a battery operated platform. One or more sensors may provide the information about motion of the depth camera and objects in a capture area.


A processing unit of the battery operated platform may use the information provided by one or more sensors to determine the acceptable output power provided to a depth camera. The processing unit of the battery operated platform may also determine the acceptable output power provided to other systems of the battery operated platform. Changes in power may be related to changes in the processes of one or more subsystems of the depth camera, for example, the duration, intensity and frequency of infrared (IR) bursts from emitters on the depth camera. The processing unit may also alter the resolution, frame rate, capture area and capture length to preserve the overall quality of the depth image. Similarly, the frame rate, capture length, capture area, resolution, brightness, or any other aspect of the systems on a battery operated platform may be monitored and adjusted to maintain a steady power state, or minimize the power consumption of the battery powered platform.


In one embodiment, determinations based on information from one or more systems on a battery powered platform may be used at a per-frame granularity to control the output and thus the power consumption of various systems.


The processing unit may also use information about one or more objects in a capture area of a depth camera to determine the output power provided to each system on a battery powered platform. For example, if an object in a capture area is to be detected, the depth camera may adjust the focus and resolution of the depth camera or other cameras in the full x/y and z dimensions of the object.





BRIEF DESCRIPTION OF THE DRAWINGS

The systems, methods, and computer readable media for dynamic depth power equalization in accordance with this specification are further described with reference to the accompanying drawings in which:



FIG. 1 depicts a person standing with a battery powered platform that may have dynamic depth power equalization implemented thereon, where there are objects in capture areas;



FIG. 2 is a block diagram of an equalized battery powered platform comprising several systems, one of which is a depth camera;



FIG. 3 illustrates an example embodiment of a computing environment that may be used to interpret one or more gestures in a battery powered platform, or an external computing environment;



FIG. 4 depicts a three dimensional model of a capture area;



FIG. 5 depicts emitters and a detector on a depth camera, and the relationship between the emitters and depth detection;



FIG. 6 is a block diagram of an example method of dynamic power equalization on a battery powered platform;



FIG. 7 is an example implementation of dynamic depth power equalization to determine the output power to the several systems on a battery powered platform.





DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

As will be described herein, a battery powered platform comprising a depth camera and a processor may determine power consumption of the platform. The battery powered platform may then adjust the consumption of one or more systems on the battery powered platform to alter the power consumption.



FIG. 1 illustrates an example embodiment of a battery operated platform 10. The battery operated platform 10 may comprise a depth camera 12, along with any other devices that may be powered by a battery. The battery operated platform may be operated by user 14. The device may be a portable device for user 14, which may be handheld or otherwise carried by user 14. Alternatively, the device may be mounted in other ways that may be useful for a user. For example, the device may be mounted in a vehicle such as an automobile, plane or boat. In one embodiment, such a device may be mounted in a vehicle, then carried by a user and used portably, and then used as part of a desktop computing system.


According to an example embodiment, the depth camera 12 may be configured to capture depth information (indicated as the Z axis in FIG. 1) including a depth image that may include depth values via any suitable technique including, for example, time-of flight, structured light, stereo image or the like. According to one embodiment, the depth camera may organize the calculated depth information in Z layers, or layers that may be perpendicular to a Z axis extending from the depth camera along its line of sight.


The depth camera 12 may include an infrared (IR) light component, a three-dimensional (3-D) camera, and a red, green, blue (RGB) camera that may be used to capture the depth image of capture areas 18. For example, in time-of-flight analysis, the IR light component may emit an infrared light onto the capture areas 18 and may then use the depth camera detector to detect the backscattered light from the surface of one or more targets and objects in the scene using, for example, a 3-D camera and/or an RGB camera. In some embodiments, pulsed infrared light may be used such that the time between an outgoing light pulse and a corresponding incoming light pulse may be measured and used to determine a physical distance from the battery powered platform to a particular location on the targets or objects 16 in the capture area. Additionally, in other example embodiments, the phase of the outgoing light wave may be compared to the phase of the incoming light wave to determine a phase shift. The phase shift may then be used to determine a physical distance from the capture device to a particular location on the targets or objects 16.


According to another example embodiment, time-of-flight analysis may be used to indirectly determine a physical distance from the depth camera to a particular location on the targets or objects 16 by analyzing the intensity of the reflected beam of light over time via various techniques including, for example, shuttered light pulse imaging.


In another example embodiment, the depth camera may use a structured light to capture depth information. In such an analysis, patterned light (i.e., light displayed as a known pattern such as grid pattern or a stripe pattern) may be projected onto the scene via, for example, the IR emitters. Upon striking the surface of one or more targets or objects in the scene, the pattern may become deformed in response. Such a deformation of the pattern may be captured by, for example, a 3-D camera and/or the RGB camera and may then be analyzed to determine a physical distance from the capture device to a particular location on the targets or objects.


The depth camera 12 may be able to capture information including depth information about one or more objects 16 using one or more of the methods described above. The depth information about the one or more objects 16 may be contained in a depth image, which may include a two-dimensional (2-D) pixel area of the captured scene where each pixel in the 2-D pixel area may represent a depth value such as a length or distance in, for example, centimeters, millimeters, or the like of an object in the captured scene from the camera.


One or more capture areas 18 may be associated with one or more depth cameras such as depth camera 12 or other detectors on a battery powered platform. The capture areas may comprise an area of space that a depth camera may view. For example, the capture areas may be the full field of view of a depth camera. In another embodiment, the capture areas may be one or more smaller portions of the full field of view of the depth camera. Capture areas may be centered on one or more objects 16.


The depth camera 12 may include one or more emitters (not shown) including, for example, IR emitters, which may be used to sense the depth of one or more objects 16 or users 14 in capture areas 18. In an example embodiment, objects at a greater distance from the depth camera 12 may require a stronger output from the emitters. Accordingly, two or more of the available emitters may emit radiation. The radiation from the emitters may be reflected or scattered off of one or more objects 16 according to the methods described above, which may be used to determine, through any means known in the art, the distance from the one or more objects 16 to the depth camera 12.


The one or more emitters may be any emitters that may be used in the sensing of depth via a depth camera. In one embodiment, the emitters may emit IR radiation. In another embodiment, the emitters may emit in the visible portion of the spectrum, or the ultraviolet, while in another embodiment, the emitters may be microwave emitters or the like.



FIG. 2 depicts a sample embodiment of battery powered platform 10. As noted above, battery powered platform 10 may comprise a depth camera 12 along with other systems. In one embodiment, the battery powered platform may comprise at least one of a stereoscopic device or an augmented reality device. The battery powered platform may integrate a phone, PDA, laptop or desktop computer, gaming system, display or any other device. There may be one or more displays, where the display may be at least one of a cathode ray display, plasma, liquid crystal display (LCD), a light emitting diode (LED) display, an image projection device or any other display.


A computing environment 22 may be included in the battery powered platform 10. The computing environment may be in operative communication with each of the systems on a battery powered platform. The computing environment may include a standardized processor, a specialized processor, a microprocessor, or the like that may execute instructions that may include instructions for receiving the depth image, determining whether a suitable target may be included in the depth image, determining the power consumption of a depth camera and configuring subsystem power consumption or any other suitable instruction.


In an example embodiment, the computing environment 22 may receive information from the depth camera 12, along with other detectors 24. The computing environment 22 may use the information from other detectors 24 and the depth camera 12 to control the power consumption of each of the systems on the battery operated platform.


The battery powered device 10 may further include a memory component 26 that may store the instructions that may be executed by the computing environment 22, images or frames of images captured by the depth camera, a 3-D camera or RGB camera, user profiles or any other suitable information, images, or the like. According to an example embodiment, the memory component 26 may include random access memory (RAM), read only memory (ROM), cache, flash memory, a hard disk, or any other suitable storage component. As shown in FIG. 1, in one embodiment, the memory component 26 may be a separate component in communication with the depth camera and the computing environment 22. According to another embodiment, the memory component 26 may be integrated into the processor 22 and/or the depth camera or the other systems.


As shown in FIG. 2, the battery powered device 10 may be in communication with an outside computing environment 36 or outside databases 38 via a communication link 28. The communication link 28 may be a wired connection including, for example, a USB connection, a Firewire connection, an Ethernet cable connection, or the like and/or a wireless connection such as a wireless 802.11b, g, a, or n connection.


The other detectors 24 on a battery operated platform may include sensing systems such as a gyroscope 42, an accelerometer 44, an RGB camera 48, a magnetometer 46 or the like. Sensing systems may also be audio sensing devices such as a microphone shown as other sensors 50 in other detectors 24. The other detectors 24 may be used to provide information concerning the motion of the battery operated platform. The other detectors 24 may also be used to capture images of one or more objects that may be used as a reference, a means of comparison or the like. In one embodiment, multiple images are captured by other detectors 24 to provide stereoscopic images that may be used by the battery powered platform 10, while images of a user may also be captured to provide information to the battery powered platform about the user. The images of the user may be used to provide stereoscopic information to the user.


Information from the other detectors 24 may be used in combination with information from a depth camera such as depth camera 12. Use of the information from an other detector, such as, for example, one or more of a gyroscope 42, accelerometer 44, magnetometer 46, RGB camera 48 or other sensor 50 may allow a computing environment such as computing environment 22 to determine the motion of the battery operated platform and the motion of one or more objects in a capture area.


In an example embodiment, the other detectors may provide information to computing environment 22, which may adjust the power consumption of one or more of the other detectors. For example, in an embodiment of a battery powered platform that includes an RGB camera, the resolution, field of view and refresh rate of the RGB camera may be adjusted by the processing system as a means of adjusting the power consumption of the RGB camera.


In an example embodiment, the other detectors 24 and depth camera 12 on a battery operated platform may provide updates to the computing environment 22 on a real time basis. The computing environment 22 may also provide feedback to the other detectors 24 and the depth camera on a real time basis, which may allow the system to adapt at each frame. In other words, each time an image is captured by the depth camera, or by any other detector on the battery powered platform, the system may adapt the power consumption of the platform, as well as the usage of the device for the next frame.


Battery powered platform 10 may also include user input 30 that may be used by a user such as user 14 described according to FIG. 1. User input 30 may be any means that a user may use to communicate with a battery powered platform. In one embodiment, user input 30 takes the form of a keyboard, a mouse, a touch pad/screen, a microphone, a number pad, a controller such as a game controller or a joystick, gesture based input or any other means currently known or discovered in the future for a user providing input to a computing environment. The user input may comprise one or more of the detectors 24 or depth cameras 12. In another embodiment, the user input is a separate element attached via a USB or serial port. In another embodiment, the user input takes the form of a transmission or communication from an outside computing environment such as 36.


Battery powered platform 10 may also include an audiovisual display device 32. The audiovisual device 32 may be one or more screens, a projector, earphones or a speaker. The screen may be on the handheld device, or may take the form of sunglasses or a helmet with a heads up type display or the like as a visual output. In another embodiment, the battery powered device provides an output to an audiovisual device such as a television or a computer monitor or a laptop or projector or the like.


The additional systems 40 on a battery operated platform may include other systems, such as a USB port for connecting a mouse or a keyboard. Additional systems 40 may include a global positioning system, a security system, a power sensor determining the remaining charge of a battery, or the like which may be included on a battery powered platform such as battery powered platform 10.


Battery operated platform 10 may include a battery 34. The battery 34 may be any device which may store charge. In one embodiment, the battery may be a rechargeable battery such as a lithium ion battery, or any other rechargeable battery that may be known now or in the future. In another embodiment, any type of disposable battery may be used on the battery operated platform 10.



FIG. 3 illustrates an example embodiment of a computing environment that may be used in a battery powered platform such as battery powered platform 10, such as, for example, computing environment 22, or a computing environment that may be connected to battery powered platform 10 by means of communication link 28, such as, for example outside computing environment 36 or external databases 38. The computing system environment of FIG. 3 is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the presently disclosed subject matter. Neither should the computing environment be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment. In some embodiments the various depicted computing elements may include circuitry configured to instantiate specific aspects of the present disclosure. For example, the term circuitry used in the disclosure can include specialized hardware components configured to perform function(s) by firmware or switches. In other examples embodiments the term circuitry can include a general purpose processing unit, memory, etc., configured by software instructions that embody logic operable to perform function(s). In example embodiments where circuitry includes a combination of hardware and software, an implementer may write source code embodying logic and the source code can be compiled into machine readable code that can be processed by the general purpose processing unit. Since one skilled in the art can appreciate that the state of the art has evolved to a point where there is little difference between hardware, software, or a combination of hardware/software, the selection of hardware versus software to effectuate specific functions is a design choice left to an implementer. More specifically, one of skill in the art can appreciate that a software process can be transformed into an equivalent hardware structure, and a hardware structure can itself be transformed into an equivalent software process. Thus, the selection of a hardware implementation versus a software implementation is one of design choice and left to the implementer.


In FIG. 3, the computing environment comprises a computer 241, which typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by computer 241 and includes both volatile and nonvolatile media, removable and non-removable media. The system memory 222 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 223 and random access memory (RAM) 260. A basic input/output system 224 (BIOS), containing the basic routines that help to transfer information between elements within computer 241, such as during start-up, is typically stored in ROM 223. RAM 260 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 259. By way of example, and not limitation, FIG. 3 illustrates operating system 225, application programs 226, other program modules 227, and program data 228.


The computer 241 may also include other removable/non-removable, volatile/nonvolatile computer storage media. By way of example only, FIG. 3 illustrates a hard disk drive 238 that reads from or writes to non-removable, nonvolatile magnetic media, a magnetic disk drive 239 that reads from or writes to a removable, nonvolatile magnetic disk 254, and an optical disk drive 240 that reads from or writes to a removable, nonvolatile optical disk 253 such as a CD ROM or other optical media. Other removable/non-removable, volatile/nonvolatile computer storage media that can be used in the exemplary operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like. The hard disk drive 238 is typically connected to the system bus 221 through a non-removable memory interface such as interface 234, and magnetic disk drive 239 and optical disk drive 240 are typically connected to the system bus 221 by a removable memory interface, such as interface 235.


The drives and their associated computer storage media discussed above and illustrated in FIG. 3, provide storage of computer readable instructions, data structures, program modules and other data for the computer 241. In FIG. 3, for example, hard disk drive 238 is illustrated as storing operating system 258, application programs 257, other program modules 256, and program data 255. Note that these components can either be the same as or different from operating system 225, application programs 226, other program modules 227, and program data 228. Operating system 258, application programs 257, other program modules 256, and program data 255 are given different numbers here to illustrate that, at a minimum, they are different copies. A user may enter commands and information into the computer 241 through input devices such as a keyboard 251 and pointing device 252, commonly referred to as a mouse, trackball or touch pad. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to the processing unit 259 through a user input interface 236 that is coupled to the system bus, but may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB). The cameras 27, 28 and capture device 20 may define additional input devices for the console 100. A monitor 242 or other type of display device is also connected to the system bus 221 via an interface, such as a video interface 232. In addition to the monitor, computers may also include other peripheral output devices such as speakers 244 and printer 243, which may be connected through an output peripheral interface 233.


The computer 241 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 246. The remote computer 246 may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer 241, although only a memory storage device 247 has been illustrated in FIG. 3. The logical connections depicted in FIG. 3 include a local area network (LAN) 245 and a wide area network (WAN) 249, but may also include other networks. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets and the Internet.


When used in a LAN networking environment, the computer 241 is connected to the LAN 245 through a network interface or adapter 237. When used in a WAN networking environment, the computer 241 typically includes a modem 250 or other means for establishing communications over the WAN 249, such as the Internet. The modem 250, which may be internal or external, may be connected to the system bus 221 via the user input interface 236, or other appropriate mechanism. In a networked environment, program modules depicted relative to the computer 241, or portions thereof, may be stored in the remote memory storage device. By way of example, and not limitation, FIG. 3 illustrates remote application programs 248 as residing on memory device 247. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.



FIG. 4 depicts a three dimensional model of a capture such as capture area 18 described above with reference to FIG. 1. The detector on a depth camera such as depth camera 12 described above with reference to FIGS. 1-3, may be located at 402. In one embodiment, the detector may have one or more optical elements that transmit radiation in a specific portion of the electromagnetic spectrum, such as, for example, the IR portion of the spectrum. These optics may be fixed, or they may be adjustable. Adjusting optics may alter the extent of capture area 404, and may adjust the depth plane 406 that the depth camera 12 may detect. The extent of depth plane 406 that the depth camera can detect, may depend on one or more elements of the depth camera. For instance, the number of depth sensing pixels may determine the resolution that the depth camera may have, and accordingly, if an object is too far from the depth camera, the depth camera may not be able to resolve it. In another example, the amount of radiation, such as IR radiation, that the depth camera outputs from one or more emitters (not shown and described below) may determine the maximum distance that an object may be detected from the depth camera. Increasing the amount of IR radiation emitted from the depth camera may increase the amount of scatter or reflection from one or more objects, which may make objects that are further away detectable, or more easily detectable by depth camera 12.



FIG. 5 depicts a representation of a series of emitters 504 that may be incorporated by a depth camera detector 502. Each emitter may emit the same amount of radiation, or each emitter may be adjustable to emit different amounts of radiation. The amount of radiation emitted by emitters 504 may be related to the maximum detection distance 506 that an object may be from the depth camera. FIG. 5 has units of 1-3 meters, however, these numbers are merely an example, and in no way are limiting on the actual maximum detection distance 506, or the amount of increase that may be seen in the maximum detection distance 506 based on emission from an additional emitter 504.


In one embodiment, if an object of interest is an object near to the depth camera, only one emitter 504 may need to emit to determine the depth of the object. In another example, if an object is at a middle distance or moving at moderate speed, two emitters may be used to determine the depth of the object. In another embodiment, if an objects is far from the depth camera and/or moving at high speed, three or more emitters may be used to determine the distance from the depth camera to the object.


In one embodiment, varying the number of emitters 504 that are emitting, the computing environment 22 referenced in FIG. 2 may adjust the power consumption of the depth camera. In another embodiment, the computing environment 22 may be able to adjust the length, strength and number of emission pulses from one or more emitters 504 in order to adjust the power consumption of the depth camera.


Other aspects of the capture areas 18, the emitters 504, the detector 502 may be adjusted in order to change the current power consumption of the depth camera. The field of view of the detector may be adjusted. The field of view that one or more emitters emits into may be adjusted. The resolution of the 2-D image of the depth camera may be adjusted by, for example, operating only every other pixel of the depth camera detector 502, or by grouping pixels or the like. The refresh rate of the depth camera may be adjusted. The length of individual frame captures may be adjusted. Additionally, areas of the 2-D depth image may be selectively utilized. For example, if there are two or more objects of interest in a capture scene, the computer processor may perform one or more operations to ignore or power off elements of the depth camera that are not related to the two or more objects.


Any other system on the battery powered platform 10 such as other detectors 24 referenced in FIG. 2, or audiovisual device 32 may have their power consumption adjusted by computing environment 22. For example, the brightness, refresh rate, resolution or the like of a visual display device may be adjusted. The volume, range and frequency of an audio device may be adjusted. The sensitivity of a microphone may be adjusted. A wireless device may be powered on or off, or the signal strength may be tuned. If the battery powered platform contains one or more cameras, the refresh rate, resolution, capture area and capture rates may all be adjusted. For any other sensors, refresh rates, capture rates and resolutions may be adjusted as well.



FIG. 6 shows an example method 600 that may be used by a computing environment such as computing environment 22 to control the power provided to a depth camera or other systems on a battery operated device. At step 602, a computing environment may determine the remaining power in a battery such as battery 34 referenced in FIG. 2, and may receive information about one or more systems on the battery powered platform 10 in order to determine the current power state of the battery powered platform. At 604, computer environment 22 may receive information indicative of motion of the depth camera. This information may be provided by one or more of the other detectors 24, which may include a gyroscope, an accelerometer, a magnetometer, a depth camera, a visual camera or any other sensor from which motion can be determined. The information from the various systems described above may be used in combination to determine the motion of the depth camera at step 606.


At step 608, the computer processor may determine the motion of one or more objects in a capture scene. The processor may use the information indicative of motion of the depth camera, and other information received from the various sensors to determine the motion of the one or more objects in the capture scene.


At step 610, the computer processor may use the information about the current power state of the battery powered platform, the information about one or more objects in a capture scene, and information about the motion of the depth camera to allocate power consumption to each system on the battery powered device. The adjustments that may be made have been described above with respect to FIGS. 4-5.


At step 612, each of the systems on a battery powered device may be adjusted as described above. For example, the power consumption of a camera may be adjusted by adapting the frame rate.



FIG. 7 provides further details of one embodiment of a method 700 of that may be used to determine how to adjust power to one or more systems on a battery powered platform, such as the battery powered platform 10 of FIG. 2. At a frame update 702, the current power consumption 704 of the battery powered platform may be determined. The current power consumption 704 may be determined by an additional system 40 on the battery operated platform 10 described in FIGS. 1-2. In one embodiment, the additional system is a sensor which measures the remaining charge in a battery. The additional system may also measure the current charge provided to the battery powered platform by the battery.


The battery powered platform may use the information about the current power consumption 704 differently in different embodiments. In one embodiment, the battery powered platform may attempt to match the current power consumption to the final power consumption of the battery powered platform. In such a circumstance, battery life may be extended by providing a constant drain on the charge provided by a battery.


In another embodiment, the battery powered platform may attempt to maintain a constant average output from the battery, but may allow spikes and valleys in power consumption as long as those spikes and valleys stay within pre set limitations. In a third embodiment, the battery powered platform may allow large changes in power consumption, but may only allow relatively small changes in the overall power consumption of the battery powered platform over certain time periods (i.e. allowing large changes in overall power consumption, but only over long periods of time). In another example embodiment, the battery powered platform may allow large and/or rapid changes in power consumption to maintain a certain image quality, but the power consumption may drop significantly if image quality may be maintained at a lower power consumption rate.


At 706, information from one or more sensors is combined or fused for the capture area and depth space of interest 708. The one or more sensors depicted at 706 may correspond to the other detectors 24 referenced in FIG. 2 as well as the depth camera 12 referenced in FIGS. 1-2. These sensors may include an accelerometer 44, a gyroscope 42, a magnetometer 46, an RGB camera 40, any other type of camera or any other system or sensor 50 that may be used to determine the motion of the depth camera. The sensor may fuse the data to determine the motion of the depth camera, or the motion of one or more objects in a capture scene. In one embodiment, sensor fusion may comprise aligning the data from each of the sensors in time and combining that data. The information from the sensors may be combined in any other way to provide input for adjusting the power consumption of a battery operated platform


The motion of the depth camera may factor into the types of adjustments that may be made to one or more systems on a battery powered platform. For example, if a depth camera is moving at a high rate of speed, one or more systems may need more power to maintain quality image capture. In another embodiment, if the depth camera is stationary, the depth camera may need less charge to provide quality image capture.


The information provided to the battery operated platform 10 at 708 may also be used to determine the motion of one or more objects in a capture scene, such as capture scenes 18 referenced in FIG. 1. Information from one or more detectors related to the change in depth of an object and the movement of the object may be combined to determine the motion of that object. The type of motion of the object and the speed of the movement may factor into a determination of the adjustments made in power consumption of one or more systems on a battery powered platform.


At 710, a determination of the motion of the device may be made. If the device is in motion, a further determination of the time period over which the motion takes place and the speed of the motion may be made at 716. If the device is not undergoing rapid and prolonged motion, adjustments to decrease the exposure and resolution 720, and increase the infrared output, the frame rate and the field of view of the depth camera 722 may be made. If the motion is rapid and prolonged, the depth camera may be totally disabled at 718.


At 712, a determination of the motion of the scene or one or more objects in a scene may be made. If the scene is in motion, the exposure may be decreased at 724, and adjustments may be made to increase the infrar-red output, frame-rate and resolution at 726.


At 714, a depth filter may determine the distance to objects and the requirements for detecting the depth of each. Depending on the depth filter, a decrease in infrared emission, frame rate and resolution may be made at 728.


As another example, if the depth camera is not in motion, and objects in the capture are not in motion, the emitters may emit less, the frame rate may decrease, and the resolution may also decrease. Such adjustments may take place because the system may have a high probability of obtaining accurate detection of a capture scene without spending large amounts of charge from a battery.


At 730, the depth settings and power consumption of the battery powered device may be determined based on the outcome of the various scenarios described above, which are merely and example embodiment and not the only way of implementing power consumption controls on a battery powered platform comprising a depth camera.


It should be understood that the configurations and/or approaches described herein are exemplary in nature, and that these specific embodiments or examples are not to be considered limiting. The specific routines or methods described herein may represent one or more of any number of processing strategies. As such, various acts illustrated may be performed in the sequence illustrated, in other sequences, in parallel, or the like. Likewise, the order of the above-described processes may be changed.


Additionally, the subject matter of the present disclosure includes combinations and subcombinations of the various processes, systems and configurations, and other features, functions, acts, and/or properties disclosed herein, as well as equivalents thereof.

Claims
  • 1. A method to control the consumption of power by a platform that comprises a depth camera, the method comprising: receiving a depth image captured by the depth camera;determining that an object in a capture area represented by the depth image is in motion, based on the depth image; andin response to determining that the object is in motion, increasing an amount of light output by an infrared component from a first nonzero value to a second value and increasing a field of view of the depth camera, the depth camera using light output by the infrared component to determine depth information of the capture area.
  • 2. The method of claim 1, wherein receiving the depth image comprises: receiving information from a detector, the detector comprising a gyroscope, an accelerometer, a magnetometer, or a visual image scanner.
  • 3. The method of claim 1, wherein increasing the amount of light output by the infrared component comprises adjusting the strength of the infrared component, a frequency of the infrared component, a number of pulses emitted by the infrared component over a time period, or a number of infrared components emitting light.
  • 4. The method of claim 1, further comprising: in response to determining that the object is in motion, increasing a frame rate of an image sensor of the depth camera in capturing depth images from a third nonzero value to a fourth value.
  • 5. The method of claim 1, wherein increasing the field of view of the depth camera comprises: defining a first capture area and a second capture area, each of the first and second capture areas being defined in the x, y and z directions, the second capture area having at least a x, y, or z dimension greater than a corresponding dimension of the first capture area; and adjusting the field of view of the depth camera from the first capture area to the second capture area.
  • 6. The method of claim 1, further comprising: determining that a second object in the capture area represented by the depth image is in motion, based on the depth image; andincreasing the amount of light output by the infrared component based on determining that the object is in motion, and based on determining that the second object is in motion.
  • 7. The method of claim 1, further comprising: in response to determining that the object is in motion, decreasing a length of time of an image capture of the depth camera in capturing depth images.
  • 8. A system to control power consumption by a platform that comprises a depth camera, comprising: a memory; anda processor communicatively coupled to the processor when the system is operational, the memory bearing processor-executable instructions that, when executed on the processor, cause the system to at least: receive a depth image captured by the depth camera;determine that an object in a capture area represented by the depth image is in motion, based on the depth image; andin response to determining that the object is in motion, increase an amount of light output by an infrared component from a first nonzero value to a second value, the depth camera using light output by the infrared component to determine depth information of the capture area, andincrease a field of view of the depth camera in capturing depth images.
  • 9. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the depth camera is in motion for more than a predetermined amount of time, disabling operation of the depth camera.
  • 10. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the depth camera has moved more than a predetermined amount, disabling operation of the depth camera.
  • 11. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the depth camera has moved for less than a predetermined amount of time, or for less than a predetermined amount of distance, increase the amount of light output by the infrared component.
  • 12. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the depth camera has moved for less than a predetermined amount of time, or for less than a predetermined amount of distance, increase the frame rate of the depth camera in capturing depth images.
  • 13. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the depth camera has moved for less than a predetermined amount of time, or for less than a predetermined amount of distance, increase the field of view of the depth camera in capturing depth images.
  • 14. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the depth camera has moved for less than a predetermined amount of time, or for less than a predetermined amount of distance, decrease the length of time of an image capture of the depth camera in capturing depth images.
  • 15. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the depth camera has moved for less than a predetermined amount of time, or for less than a predetermined amount of distance, decrease a resolution of the depth camera in capturing depth images.
  • 16. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the object in the capture area represented by the depth image is closer to the depth camera than the object in the capture area in a previous depth image, decrease the amount of light output by the infrared component.
  • 17. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the object in the capture area represented by the depth image is closer to the depth camera than the object in the capture area in a previous depth image, decrease the frame rate of the depth camera in capturing depth images.
  • 18. The system of claim 8, wherein the memory further bears processor-executable instructions that, when executed on the processor, cause the system to at least: in response to determining that the object in the capture area represented by the depth image is closer to the depth camera than the object in the capture area in a previous depth image, decrease a resolution of the depth camera in capturing depth images.
  • 19. A computer-readable storage device, excluding signals, bearing instructions for controlling a power consumption of a platform comprising a depth camera, that, when executed on a computer, cause the computer to perform operations comprising: receiving a depth image captured by the depth camera;determining that an object in a capture area represented by the depth image is in motion, based on the depth image; andin response to determining that the object is in motion, increase an amount of light output by an infrared component from a first nonzero value to a second value, the depth camera using light output by the infrared component to determine depth information of the capture area,increasing a frame rate of an image sensor of the depth camera in capturing depth images from a third nonzero value to a fourth value,increasing a field of view of the depth camera in capturing depth images, anddecreasing a length of time of an image capture of the depth camera in capturing depth images.
US Referenced Citations (189)
Number Name Date Kind
4627620 Yang Dec 1986 A
4630910 Ross et al. Dec 1986 A
4645458 Williams Feb 1987 A
4695953 Blair et al. Sep 1987 A
4702475 Elstein et al. Oct 1987 A
4711543 Blair et al. Dec 1987 A
4751642 Silva et al. Jun 1988 A
4796997 Svetkoff et al. Jan 1989 A
4809065 Harris et al. Feb 1989 A
4817950 Goo Apr 1989 A
4843568 Krueger et al. Jun 1989 A
4893183 Nayar Jan 1990 A
4901362 Terzian Feb 1990 A
4925189 Braeunig May 1990 A
5101444 Wilson et al. Mar 1992 A
5148154 MacKay et al. Sep 1992 A
5184295 Mann Feb 1993 A
5229754 Aoki et al. Jul 1993 A
5229756 Kosugi et al. Jul 1993 A
5239463 Blair et al. Aug 1993 A
5239464 Blair et al. Aug 1993 A
5288078 Capper et al. Feb 1994 A
5295491 Gevins Mar 1994 A
5320538 Baum Jun 1994 A
5347306 Nitta Sep 1994 A
5385519 Hsu et al. Jan 1995 A
5405152 Katanics et al. Apr 1995 A
5417210 Funda et al. May 1995 A
5423554 Davis Jun 1995 A
5454043 Freeman Sep 1995 A
5469740 French et al. Nov 1995 A
5495576 Ritchey Feb 1996 A
5516105 Eisenbrey et al. May 1996 A
5524637 Erickson Jun 1996 A
5534917 MacDougall Jul 1996 A
5563988 Maes et al. Oct 1996 A
5577981 Jarvik Nov 1996 A
5580249 Jacobsen et al. Dec 1996 A
5594469 Freeman et al. Jan 1997 A
5597309 Riess Jan 1997 A
5616078 Oh Apr 1997 A
5617312 Iura et al. Apr 1997 A
5638300 Johnson Jun 1997 A
5641288 Zaenglein Jun 1997 A
5682196 Freeman Oct 1997 A
5682229 Wangler Oct 1997 A
5690582 Ulrich et al. Nov 1997 A
5703367 Hashimoto et al. Dec 1997 A
5704837 Iwasaki et al. Jan 1998 A
5715834 Bergamasco et al. Feb 1998 A
5875108 Hoffberg et al. Feb 1999 A
5877803 Wee et al. Mar 1999 A
5913727 Ahdoot Jun 1999 A
5933125 Fernie Aug 1999 A
5980256 Carmein Nov 1999 A
5989157 Walton Nov 1999 A
5995649 Marugame Nov 1999 A
6005548 Latypov et al. Dec 1999 A
6009210 Kang Dec 1999 A
6054991 Crane et al. Apr 2000 A
6066075 Poulton May 2000 A
6072494 Nguyen Jun 2000 A
6073489 French et al. Jun 2000 A
6077201 Cheng et al. Jun 2000 A
6098458 French et al. Aug 2000 A
6100896 Strohecker et al. Aug 2000 A
6101289 Kellner Aug 2000 A
6128003 Smith et al. Oct 2000 A
6130677 Kunz Oct 2000 A
6141463 Covell et al. Oct 2000 A
6147678 Kumar et al. Nov 2000 A
6152856 Studor et al. Nov 2000 A
6159100 Smith Dec 2000 A
6173066 Peurach et al. Jan 2001 B1
6181343 Lyons Jan 2001 B1
6188777 Darrell et al. Feb 2001 B1
6215890 Matsuo et al. Apr 2001 B1
6215898 Woodfill et al. Apr 2001 B1
6226396 Marugame May 2001 B1
6229913 Nayar et al. May 2001 B1
6256033 Nguyen Jul 2001 B1
6256400 Takata et al. Jul 2001 B1
6283860 Lyons et al. Sep 2001 B1
6289112 Jain et al. Sep 2001 B1
6299308 Voronka et al. Oct 2001 B1
6308565 French et al. Oct 2001 B1
6316934 Amorai-Moriya et al. Nov 2001 B1
6363160 Bradski et al. Mar 2002 B1
6384819 Hunter May 2002 B1
6411744 Edwards Jun 2002 B1
6430997 French et al. Aug 2002 B1
6476834 Doval et al. Nov 2002 B1
6496598 Harman Dec 2002 B1
6503195 Keller et al. Jan 2003 B1
6539931 Trajkovic et al. Apr 2003 B2
6570555 Prevost et al. May 2003 B1
6633294 Rosenthal et al. Oct 2003 B1
6640202 Dietz et al. Oct 2003 B1
6661918 Gordon et al. Dec 2003 B1
6681031 Cohen et al. Jan 2004 B2
6714665 Hanna et al. Mar 2004 B1
6731799 Sun et al. May 2004 B1
6738066 Nguyen May 2004 B1
6765726 French et al. Jul 2004 B2
6788809 Grzeszczuk et al. Sep 2004 B1
6801637 Voronka et al. Oct 2004 B2
6873723 Aucsmith et al. Mar 2005 B1
6876496 French et al. Apr 2005 B2
6937742 Roberts et al. Aug 2005 B2
6950534 Cohen et al. Sep 2005 B2
7003134 Covell et al. Feb 2006 B1
7036094 Cohen et al. Apr 2006 B1
7038855 French et al. May 2006 B2
7039676 Day et al. May 2006 B1
7042440 Pryor et al. May 2006 B2
7050606 Paul et al. May 2006 B2
7058204 Hildreth et al. Jun 2006 B2
7060957 Lange et al. Jun 2006 B2
7113918 Ahmad et al. Sep 2006 B1
7121946 Paul et al. Oct 2006 B2
7170492 Bell Jan 2007 B2
7184048 Hunter Feb 2007 B2
7202898 Braun et al. Apr 2007 B1
7222078 Abelow May 2007 B2
7227526 Hildreth et al. Jun 2007 B2
7259747 Bell Aug 2007 B2
7304681 Larner Dec 2007 B2
7308112 Fujimura et al. Dec 2007 B2
7312821 Voss et al. Dec 2007 B2
7317836 Fujimura et al. Jan 2008 B2
7348963 Bell Mar 2008 B2
7359121 French et al. Apr 2008 B2
7367887 Watabe et al. May 2008 B2
7379563 Shamaie May 2008 B2
7379566 Hildreth May 2008 B2
7389591 Jaiswal et al. Jun 2008 B2
7409188 Syrjarinne Aug 2008 B2
7412077 Li et al. Aug 2008 B2
7421093 Hildreth et al. Sep 2008 B2
7430312 Gu Sep 2008 B2
7436496 Kawahito Oct 2008 B2
7450736 Yang et al. Nov 2008 B2
7452275 Kuraishi Nov 2008 B2
7460690 Cohen et al. Dec 2008 B2
7489812 Fox et al. Feb 2009 B2
7536032 Bell May 2009 B2
7555142 Hildreth et al. Jun 2009 B2
7560701 Oggier et al. Jul 2009 B2
7570805 Gu Aug 2009 B2
7574020 Shamaie Aug 2009 B2
7576727 Bell Aug 2009 B2
7590262 Fujimura et al. Sep 2009 B2
7593552 Higaki et al. Sep 2009 B2
7598942 Underkoffler et al. Oct 2009 B2
7607509 Schmiz et al. Oct 2009 B2
7620202 Fujimura et al. Nov 2009 B2
7668340 Cohen et al. Feb 2010 B2
7680298 Roberts et al. Mar 2010 B2
7683954 Ichikawa et al. Mar 2010 B2
7684592 Paul et al. Mar 2010 B2
7701439 Hillis et al. Apr 2010 B2
7702130 Im et al. Apr 2010 B2
7704135 Harrison, Jr. Apr 2010 B2
7710391 Bell et al. May 2010 B2
7729530 Antonov et al. Jun 2010 B2
7746345 Hunter Jun 2010 B2
7760182 Ahmad et al. Jul 2010 B2
7809167 Bell Oct 2010 B2
7834846 Bell Nov 2010 B1
7852262 Namineni et al. Dec 2010 B2
RE42256 Edwards Mar 2011 E
7898522 Hildreth et al. Mar 2011 B2
7911496 Sawachi Mar 2011 B2
8035612 Bell et al. Oct 2011 B2
8035614 Bell et al. Oct 2011 B2
8035624 Bell et al. Oct 2011 B2
8072470 Marks Dec 2011 B2
8743226 Lee Jun 2014 B2
20030093805 Gin May 2003 A1
20040179100 Ueyama Sep 2004 A1
20050232491 Chang et al. Oct 2005 A1
20070058038 David et al. Mar 2007 A1
20080026838 Dunstan et al. Jan 2008 A1
20080031327 Wang Feb 2008 A1
20080166115 Sachs et al. Jul 2008 A1
20080220867 Zalewski Sep 2008 A1
20080278580 Bentkovski Nov 2008 A1
20080291288 Tzur Nov 2008 A1
20100225779 Muukki Sep 2010 A1
Foreign Referenced Citations (6)
Number Date Country
101254344 Jun 2010 CN
0583061 Feb 1994 EP
08044490 Feb 1996 JP
9310708 Jun 1993 WO
9717598 May 1997 WO
9944698 Sep 1999 WO
Non-Patent Literature Citations (28)
Entry
Huhle, B. et al, “Integrating 3D Time-of-Flight Camera Data and High Resolution Images for 3DTV Applications”, http://ieeexplore.ieee.org, 4 pages Downloaded Apr. 1, 2009.
Niclass, C. et al., “A CMOS 3D Camera with Millimetric Depth Resolution”, Swiss Federal Institute of Technology, http://aqua.epfl.cg, 4 pages Downloaded Apr. 1, 2009.
Kanade et al., “A Stereo Machine for Video-rate Dense Depth Mapping and Its New Applications”, IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 1996, pp. 196-202,The Robotics Institute, Carnegie Mellon University, Pittsburgh, PA.
Miyagawa et al., “CCD-Based Range Finding Sensor”, Oct. 1997, pp. 1648-1652, vol. 44 No. 10, IEEE Transactions on Electron Devices.
Rosenhahn et al., “Automatic Human Model Generation”, 2005, pp. 41-48, University of Auckland (CITR), New Zealand.
Aggarwal et al., “Human Motion Analysis: A Review”, IEEE Nonrigid and Articulated Motion Workshop, 1997, University of Texas at Austin, Austin, TX.
Shao et al., “An Open System Architecture for a Multimedia and Multimodal User Interface”, Aug. 24, 1998, Japanese Society for Rehabilitation of Persons with Disabilities (JSRPD), Japan.
Kohler, “Special Topics of Gesture Recognition Applied in Intelligent Home Environments”, In Proceedings of the Gesture Workshop, 1998, pp. 285-296, Germany.
Kohler, “Vision Based Remote Control in Intelligent Home Environments”, University of Erlangen-Nuremberg/Germany, 1996, pp. 147-154, Germany.
Kohler, “Technical Details and Ergonomical Aspects of Gesture Recognition applied in Intelligent Home Environments”, 1997, Germany.
Hasegawa et al., “Human-Scale Haptic Interaction with a Reactive Virtual Human in a Real-Time Physics Simulator”, Jul. 2006, vol. 4, No. 3, Article 6C, ACM Computers in Entertainment, New York, NY.
Qian et al., “A Gesture-Driven Multimodal Interactive Dance System”, Jun. 2004, pp. 1579-1582, IEEE International Conference on Multimedia and Expo (ICME), Taipei, Taiwan.
Zhao, “Dressed Human Modeling, Detection, and Parts Localization”, 2001, The Robotics Institute, Carnegie Mellon University, Pittsburgh, PA.
He, “Generation of Human Body Models”, Apr. 2005, University of Auckland, New Zealand.
Isard et al., “Condensation—Conditional Density Propagation for Visual Tracking”, 1998, pp. 5-28, International Journal of Computer Vision 29(1), Netherlands.
Livingston, “Vision-based Tracking with Dynamic Structured Light for Video See-through Augmented Reality”, 1998, University of North Carolina at Chapel Hill, North Carolina, USA.
Wren et al., “Pfinder: Real-Time Tracking of the Human Body”, MIT Media Laboratory Perceptual Computing Section Technical Report No. 353, Jul. 1997, vol. 19, No. 7, pp. 780-785, IEEE Transactions on Pattern Analysis and Machine Intelligence, Caimbridge, MA.
Breen et al., “Interactive Occlusion and Collusion of Real and Virtual Objects in Augmented Reality”, Technical Report ECRC-95-02, 1995, European Computer-Industry Research Center GmbH, Munich, Germany.
Freeman et al., “Television Control by Hand Gestures”, Dec. 1994, Mitsubishi Electric Research Laboratories, TR94-24, Caimbridge, MA.
Hongo et al., “Focus of Attention for Face and Hand Gesture Recognition Using Multiple Cameras”, Mar. 2000, pp. 156-161, 4th IEEE International Conference on Automatic Face and Gesture Recognition, Grenoble, France.
Pavlovic et al., “Visual Interpretation of Hand Gestures for Human-Computer Interaction: A Review”, Jul. 1997, pp. 677-695, vol. 19, No. 7, IEEE Transactions on Pattern Analysis and Machine Intelligence.
Azarbayejani et al., “Visually Controlled Graphics”, Jun. 1993, vol. 15, No. 6, IEEE Transactions on Pattern Analysis and Machine Intelligence.
Granieri et al., “Simulating Humans in VR”, The British Computer Society, Oct. 1994, Academic Press.
Brogan et al., “Dynamically Simulated Characters in Virtual Environments”, Sep./Oct. 1998, pp. 2-13, vol. 18, Issue 5, IEEE Computer Graphics and Applications.
Fisher et al., “Virtual Environment Display System”, ACM Workshop on Interactive 3D Graphics, Oct. 1986, Chapel Hill, NC.
“Virtual High Anxiety”, Tech Update, Aug. 1995, pp. 22.
Sheridan et al., “Virtual Reality Check”, Technology Review, Oct. 1993, pp. 22-28, vol. 96, No. 7.
Stevens, “Flights into Virtual Reality Treating Real World Disorders”, The Washington Post, Mar. 27, 1995, Science Psychology, 2 pages.