U.S. patent application number 11/436873 was filed with the patent office on 2006-09-14 for controlling processor-based systems using a digital camera.
Invention is credited to Blake R. Bender, Frederick J. Cooper, Girish Gopal, Keith E. Hopper, Ranjit R. Menon, Teresa L. Urutia.
Application Number | 20060204085 11/436873 |
Document ID | / |
Family ID | 36970956 |
Filed Date | 2006-09-14 |
United States Patent
Application |
20060204085 |
Kind Code |
A1 |
Cooper; Frederick J. ; et
al. |
September 14, 2006 |
Controlling processor-based systems using a digital camera
Abstract
A processor-based system may be controlled using a digital
camera. The digital camera can provide luminance and motion
information which may be analyzed to determine whether to alter one
or more of the power consumption state, the operation of system
utilities, or the operation of a screen saver.
Inventors: |
Cooper; Frederick J.;
(Portland, OR) ; Menon; Ranjit R.; (Beaverton,
OR) ; Urutia; Teresa L.; (Forest Grove, OR) ;
Gopal; Girish; (Hillsboro, OR) ; Hopper; Keith
E.; (Aloha, OR) ; Bender; Blake R.;
(Hillsboro, OR) |
Correspondence
Address: |
TROP PRUNER & HU, PC
1616 S. VOSS ROAD, SUITE 750
HOUSTON
TX
77057-2631
US
|
Family ID: |
36970956 |
Appl. No.: |
11/436873 |
Filed: |
May 18, 2006 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
09430282 |
Oct 29, 1999 |
|
|
|
11436873 |
May 18, 2006 |
|
|
|
Current U.S.
Class: |
382/162 |
Current CPC
Class: |
Y02D 10/173 20180101;
G06F 1/3203 20130101; G06F 1/3231 20130101; Y02D 10/00
20180101 |
Class at
Publication: |
382/162 |
International
Class: |
G06K 9/00 20060101
G06K009/00 |
Claims
1. A processor-based system comprising: a processor, said processor
coupled to a storage device; a digital camera coupled to said
processor; and said storage device storing software that controls
the power consumption state of said system based on information
received from said camera.
2. The system of claim 1 wherein said software controls the power
consumption state of said system based on information from said
camera indicative of motion proximate to said camera.
3. The system of claim 1 wherein said software controls the
operation of system utilities based on information from said
digital camera.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of U.S. patent
application Ser. No. 09/430,282, filed on Oct. 29, 1999.
BACKGROUND
[0002] This invention relates generally to processor-based systems
and particularly to such systems which have a digital camera
coupled to the system.
[0003] A variety of processor-based systems come with a digital
camera or are adaptable to be coupled to a digital camera.
Commonly, digital cameras are tethered through an appropriate input
port to personal computers. A number of users operate the digital
cameras continuously through a tethered connection to the
computer.
[0004] The camera may be maintained always "on", ready to provide a
useful service as the opportunity arises. The camera may be used to
implement a video conferencing feature or to stream video over the
Internet as examples.
[0005] A number of techniques are available for controlling
processor-based systems. Processor-based systems may receive input
commands using a mouse which is tethered to the computer, using an
infrared mouse which controls the computer remotely, using a
variety of remote control devices, and using keyboards either
tethered to the computer or keyboards that are coupled to the
computer through infrared or other airwave communications, as a few
examples.
[0006] In addition, a number of computer systems transition between
power consumption states in response to periods of sustained user
inactivity. That is, if the keyboard, for example, is not operated
for a given time period, the system may transition to a lower power
consumption state. With ensuing periods of inactivity, the system
may progressively transition to even lower power consumption
states. In this way, the amount of power that the system consumes
may be controlled. In addition to environmental advantages, the
lifetime of the computer may be enhanced by such powering down in
response to inactivity.
[0007] Sensors may detect the user's presence in proximity to the
keyboard. These sensors may be piezoelectric sensors that detect
when the user is poised over the keyboard, for example. Again, this
type of sensor provides additional information to the computer
system to make a judgment about whether or not to transition to
lower power consumption modes. If the user is poised over the
keyboard about to operate the keyboard, it makes no sense to
transition to a lower power consumption mode only to immediately
transition back to a higher power consumption mode. Not only is
this awkward, but needless transitions waste time and system
resources.
[0008] Thus, there is a continuing need for better ways to control
the power consumption of computer systems.
SUMMARY
[0009] In accordance with one aspect, a method of controlling a
processor-based system includes receiving video information from a
camera. The power consumption state of the system is controlled
based on the video information.
[0010] Other aspects are set forth in the accompanying detailed
description and claims.
BRIEF DESCRIPTION OF THE DRAWINGS
[0011] FIG. 1 is a front elevational view of a processor-based
system in accordance with one embodiment of the present
invention;
[0012] FIG. 2 is a flow chart for software for implementing one
aspect of one embodiment of the present invention;
[0013] FIG. 3 is a flow chart for software for implementing another
aspect of one embodiment of the present invention;
[0014] FIG. 4 is a flow chart for software for implementing another
aspect of one embodiment of the present invention;
[0015] FIG. 5 is a flow chart for software that implements another
aspect of one embodiment of the present invention; and
[0016] FIG. 6 is a block diagram for the embodiment shown in FIG.
1.
DETAILED DESCRIPTION
[0017] A processor-based system 10 shown in FIG. 1, includes a
processor-based housing 12, a keyboard 13, a display 14 and a
digital camera 16 which may be coupled by a tether (not shown) to
the housing 12. As illustrated, the camera 16 is positioned to
observe the area in front of the processor-based system 10. Thus,
the camera 16 detects the user's presence as well as the lighting
conditions proximate to the system 10.
[0018] Referring now to FIG. 2, light monitoring software 18 stored
on the system 10, is responsible for controlling the power
consumption state of the processor-based system 10 in response to
ambient light. A timer is reset (block 20) and the keyboard and
mouse are checked for their current condition (block 22). At
diamond 24, a check determines whether the keyboard and mouse have
just been used. If so, the timer is again reset. If not, the check
at diamond 26 determines whether the timer has expired. If the
timer has expired, indicating a period of inactivity exceeding a
predetermined time period, a video frame is grabbed as indicated in
block 28. In other words, the camera 16 provides a video frame
which may be analyzed at block 30. In particular, the luminance
value of the frame may be computed at block 30.
[0019] A subsampling of the pixels of a frame may be analyzed, for
example, approximately 250 pixels in one embodiment of the
invention, evenly distributed throughout the frame. Each pixel's
luminance value is computed by converting its red, green, blue
(RGB) color space value to a hue, saturation and luminance (HSL)
color space value using well known techniques. Luminance is the
brightness portion of a composite video signal. The pixel luminance
values are simply summed and divided by the number of samples. The
result is the return luminance value.
[0020] Referring to FIG. 3, the software 42 for determining the
return luminance value begins by taking the video frame as
described previously (see block 44). The pixel stepping for the
pre-set sample set, approximately 250 pixel samples in this
example, is computed (block 46). The software steps to the next
pixel location (block 48). The pixel at the next location has its
RGB color space values converted to an HSL format (blocks 50 and
52). The luminance value of the next pixel (from the HSL space) is
added to the accumulated luminance total value, as indicated in
block 54. If there are more pixels to complete the sample set, the
flow iterates. If not, the luminance total is divided by the number
of pixel samples as indicated in block 58. The result is then
returned to the flow in FIG. 2, as indicated at block 60.
[0021] Returning to FIG. 2, next the motion value is computed
(block 32). As shown in FIG. 4, software 62 for computing the
return motion value begins by taking the video frames from the
previous steps (FIG. 2) as indicated at block 64. The pixel
stepping for a pre-set number of pixels, for example approximately
250 pixels, is computed, as indicated in block 66. The flow steps
through each successive pixel as indicated in block 68. At block
70, the pixel at the new location in the old frame and new frame
are accessed. The red value in the old frame is subtracted from the
red value in the new frame and this process is repeated for the
blue and green values as indicated in block 72. An absolute value
of the difference is computed (block 74).
[0022] If the result is greater than 50 or some other noise
threshold (diamond 76), the result is added to the total motion
return value (block 78). At diamond 80 a determination is made as
to whether there are additional pixels in the initial set of 250
pixel samples. If not, the motion value is returned (block 82).
Otherwise, the flow continues to iterate until all the pixels in
the sample have been processed.
[0023] Returning again to FIG. 2, at diamond 34 the flow determines
whether the returned luminance value differs by more than 40
percent. Of course, 40 percent is merely an exemplary threshold for
testing the returned luminance value. If so, a check at diamond 36
determines whether this is the fourth time (or some other number)
in a row that the luminance value remained at this level. If so, a
check at diamond 38 determines whether motion has occurred during
the time period. If not, appropriate changes can be made as
indicated in block 40. Among the changes that may be made are to
activate a screen saver, implement a power management decision or
implement a system utility.
[0024] Once the camera 16 is activated, it may capture a frame
every second in one embodiment of the invention. The system 10
computes the luminance value for each frame and compares its value
to the luminance value computed for a previous frame. If the number
is significantly lower than that of previous frames, the software
starts to suspect the lights might be out. It keeps capturing
frames, computing both a luminance value and a motion value. If the
luminance value continues to be low for several frames and the
motion value is also low, the computer screen saver and power
management mode may be activated. When full power management is
turned on, a keyboard or mouse input signal may be used to
reactivate the computer. However, the camera 16 can continue to run
with the monitors, printers and hard drives powered down, as long
as the processor remains on.
[0025] The camera continues to capture frames while the computer is
in the lower power usage mode or screen saver mode. It compares the
frames and computes the luminance value for each frame. If the
luminance suddenly increases, the system is immediately returned to
full power status and/or the screen saver is deactivated. If the
luminance values do not change significantly, and motion occurs for
a time period (for example continuously for three seconds), the
system may be returned to full power status and/or the screen saver
may be deactivated.
[0026] Turning now to FIG. 5, the software 84 for leaving the
screen saver, power management, or system utility modes begins by
checking the keyboard and mouse status (block 86). At diamond 88, a
check determines whether the keyboard or mouse was just used. If
so, the computer is returned to full operational status as
indicated in block 102. The timer is reset, as indicated in block
104, and the keyboard and mouse states are checked (block 106).
[0027] At diamond 108, a check determines whether the keyboard or
mouse were just used. If not, the flow determines (at diamond 110)
whether the timer has expired. If so, the screen saver, power
management mode or system utilities may be reactivated, as
indicated in block 112. Otherwise, the system continues to check
the keyboard and mouse state, as indicated in block 106.
[0028] If the keyboard and mouse were not used as determined at
diamond 88, a video frame is grabbed as shown in block 90. A
luminance value and motion value are computed as indicated in
blocks 92 and 94. If the luminance value does not differ by a
preset amount (for example more than 40% at diamond 96), a check at
diamond 98 determines whether motion has occurred. If so, a check
at diamond 100 determines whether motion has occurred two times in
a row. If so, the system returns to full activation (block 102). If
not, the flow returns to block 86 and checks keyboard and mouse
states.
[0029] Referring now to FIG. 6, the system 10 may include a
processor 114 coupled to an interface 116. The interface 116 may be
a chipset or bridge, as two examples. The interface 116 may be
coupled system memory 118 and a display controller 122. The display
controller is coupled to the display 14.
[0030] The interface 116 may also couple a bus 126. The bus 126 in
turn may be coupled through an interface 128 to the camera 16. In
addition, the bus 126 may couple an interface 132. The interface
132 may be coupled to a bus 136 and to a storage device such as a
hard disk drive 134. The software 18, 42, 62 and 84 may be stored
on the hard disk drive 134.
[0031] The bus 136 is coupled to conventional components such as a
serial input/output device 138. The device 138 couples a mouse 142
and a keyboard 13. The basic input/output system (BIOS) 144 may
also be provided on the bus 136.
[0032] While the present invention has been described with respect
to a limited number of embodiments, those skilled in the art will
appreciate numerous modifications and variations therefrom. It is
intended that the appended claims cover all such modifications and
variations as fall within the true spirit and scope of this present
invention.
* * * * *