Abstract:
A small wearable recall device is provided to capture images triggered by a combination of a detection of a capture condition (e.g., changes in motion, temperature or light level) followed by a relatively stable period, as detected by an accelerometer. By triggering on the combination of a detected capture condition followed by a detected stability condition, a clearer image of the environment of an interesting event is expected to be captured. The small size of the recall device makes it possible to integrate it into common portable consumer products, such as MP3 players, purses, clothing, hats, backpacks, necklaces, collars, and other human-wearable products.

Description:
TECHNICAL FIELD  
       [0001]     The invention relates generally to electronic devices, and more particularly to a recall device.  
       BACKGROUND  
       [0002]     An ability to recall events, personal parameters, and environmental parameters experienced by an individual has many applications. For example, a memory-impaired individual, such as a victim of Alzheimer&#39;s Disease, and his/her caregiver can reconstruct a portion of the individual&#39;s daily activity to assist in filling in gaps in the individual&#39;s memory (e.g., to determine where the individual put their house keys, to identify people with whom the individual interacted, etc.). In another application, the events and parameters associated with a traumatic event, such as an elderly person&#39;s fall resulting in injury, etc., may be reconstructed by physicians to better understand the cause and extent of the injuries. Likewise, recalling events and parameters experienced by a child through the day can help a parent or teacher diagnose the child&#39;s behavior problems.  
         [0003]     However, existing approaches for monitoring such events and parameters do not lend themselves to application in an unobtrusive, wearable device. Such approaches include surveillance cameras and microphones in a room or defined area, and bulky, video cameras and other monitoring devices that are not realistically intended for comfortable, personal use for long periods of time (e.g., all day use) because of their size, storage limitations, power limitations, and other limitations.  
       SUMMARY  
       [0004]     Implementations described and claimed herein address the foregoing problems by providing a small wearable recall device to capture images triggered by a combination of a detection of a capture condition (e.g., changes in motion, temperature or light level) followed by a relatively stable period, as detected by an accelerometer. By triggering on the combination of a detected capture condition followed by a detected stability condition, a clearer image of the environment of an interesting event is expected to be captured. The small size of the recall device makes it possible to integrate it into common portable consumer products, such as MP3 players, purses, clothing, hats, backpacks, necklaces, spectacles, watches, bracelets, collars, and other human-wearable products.  
         [0005]     In some implementations, articles of manufacture are provided as computer program products. One implementation of a computer program product provides a computer program storage medium readable by a computer system and encoding a computer program. Another implementation of a computer program product may be provided in a computer data signal embodied in a carrier wave by a computing system and encoding the computer program.  
         [0006]     The computer program product encodes a computer program for executing a computer process on a computer system. Acceleration of a camera along at least one axis is monitored using an accelerometer. A capture condition experienced by the camera is detected. A stable condition is detected by the at least one accelerometer along the at least one axis, responsive to the operation of detecting the capture condition. Capture of an image by the camera is triggered based on detection of the capture condition followed by detection of the stable condition.  
         [0007]     In another implementation, a method is provided. Acceleration of a camera along at least one axis is monitored using an accelerometer. A capture condition experienced by the camera is detected. A stable condition is detected by the at least one accelerometer along the at least one axis, responsive to the operation of detecting the capture condition. Capture of an image by the camera is triggered based on detection of the capture condition followed by detection of the stable condition.  
         [0008]     In yet another implementation, a portable recall device is provided to be carried by a wearer. The portable recall device includes a camera and at least one accelerometer operably connected to the camera. The accelerometer triggering capture of an image by the camera based on detection of a capture condition followed by detection of a stable condition by the at least one accelerometer.  
         [0009]     Other implementations are also described and recited herein. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0010]      FIG. 1  illustrates an exemplary human-wearable recall device.  
         [0011]      FIG. 2  illustrates an internal plan view and an external perspective view of an exemplary recall device.  
         [0012]      FIG. 3  illustrates a schematic of an exemplary recall device.  
         [0013]      FIG. 4  illustrates exemplary operations of a selective image capture process.  
         [0014]      FIG. 5  illustrates exemplary sensor readings relative to image capture events.  
         [0015]      FIG. 6  illustrates an image captured through a normal lens, an image captured through a fish-eye lens, and a corrected version of the captured image.  
     
    
     DETAILED DESCRIPTION  
       [0016]      FIG. 1  illustrates an exemplary human-wearable recall device. A wearer  100  is shown wearing a recall device  102  on a necklace. It should be understood, however, that a wearer need not be human, but that animals, vehicles, and other objects may wear a recall device for the purpose of selectively recording monitored environmental conditions.  
         [0017]     An exploded view of the recall device  102  is shown in box  104 . A camera  106 , which may include a fish-eye lens, a wide angle lens, or any other kind of lens, is positioned in the center of the recall device  102 , although the camera  106  may be positioned at other locations in the recall device  102 .  
         [0018]     Four light emitting diodes (LEDs) are shown on the face of the recall device  102 . LED  108  signals detection of an audio capture condition, such as an increase in detected audio level over a given threshold or a substantial change in average audio level within a given period. LED  110  signals detection of a motion capture condition, such as a detected change of angle of greater than a threshold (e.g.,  200 ). LED  112  signals detection of a light level capture condition, such as a substantial change in average light level within a given period or an increase in detected light level over a given threshold. LED  114  signals detection of a temperature capture condition, such as an increase in detected ambient temperature level over a given threshold or a substantial change in ambient temperature level within a given period. Other capture conditions than those listed above may alternatively be employed.  
         [0019]     A serial port  116  is shown in the recall device  102  to download data monitored by the recall device  102  to a computer system. Recorded data from various in the recall device  102  is saved into memory in the recall device  102 . Such data may also be downloaded via the serial port  116  to a more substantial computer system, such as a desktop computer, for subsequent analysis (e.g., using a Microsoft EXCEL spreadsheet application or other analysis tools). Internal settings, such as condition parameters, time settings, etc., may also be uploaded to the recall device  102  via the serial port.  
         [0020]     A wireless transceiver (not shown) is coupled to an antenna running up the cord  118 . The wireless transceiver may be used to upload and download data as well as to interface with wireless networking protocols, such as Wi-Fi and Bluetooth, and to detect radio frequency signals.  
         [0021]      FIG. 2  illustrates an internal plan view  200  and an external perspective view  202  of an exemplary recall device. Specific components of exemplary recall devices are described herein; however, it should be understood that other components may be employed in other implementations of a recall device. A microcontroller (not shown) is mounted to the underside of the printed circuit (PC) board  204 . In one implementation, a Microchip 20 Mhz PIC16F876 microcontroller is used. A camera  206  and lens  208  are operably connected to the PC board  204  of the recall device. In one implementation, a 50 mm×30 mm×14 mm Sipix Snap 300 kpixel camera module with an additional f2, f2.2, mm lens from Edmunds Optics is employed. In an alternative configuration, a Philips Key008 Camera is employed with an added 2.9 mm lens from Edmunds Optics. An interface to the shutter and mode controls of the camera are provided by reed relays, although other switching elements, such as optical MOSFET transistors, may alternatively be employed.  
         [0022]     An accelerometer  210  is mounted to the PC board  204 . In the illustrated implementation, a single dual axis ±10 g ADXL210 accelerometer from Analog Devices is employed. In alterative implementations, multiple multi-axis or single axis accelerometers may be employed. For example, individual single axis accelerometers may be configured to detect acceleration in each of three axes (X, Y, and Z). In an alternative implementation, the 3 axes are designated as roll, pitch and yaw, and a gyroscope is used to detect yaw (rotational acceleration). A light level sensor  212  mounted to the PC board  204 . In one implementation, a digital ambient light level sensor from TAOS, Inc., such as the TCS230, is employed to detect magnitudes of and changes in ambient light levels in experienced by the recall device and, therefore, by the wearer. A change in ambient light level represents an exemplary capture condition that can indicate movement of the wearer from one room to another or from inside to outside. In addition, a change in ambient light level may be imitated by a gesture, such as waving one&#39;s hand across the recall device to create a shadow on the light level sensor. As such, an image capture may be triggered by the wearer&#39;s gestures without requiring the wearer to actually touching a trigger switch on the recall device. In one such implementation, the delay between detection of the capture event and the triggering of the image capture is prolonged at least as long as a predefined delay period in order to allow proper aiming of the camera at a target.  
         [0023]     An ambient temperature sensor (not shown) is mounted to the PC board  204 . In one implementation, a National Semiconductor LM75 sensor is employed to detect magnitudes and changes in ambient temperature levels experienced by the recall device. A change in ambient light level represents an exemplary capture condition that can indicate, for example, movement of the wearer from inside to outside.  
         [0024]     A serial bus port  214  is mounted to the PC board  204 . In one implementation, a universal serial bus interface is employed, although other serial ports, such as an RS-232 interface or IRDA interface, or any other data port, may be employed. The serial bus port (or other interface) may be used to upload and download data to/from the recall device. LEDs  216  indicate detection of various capture events, as discussed with regard to  FIG. 1 .  
         [0025]      FIG. 3  illustrates a schematic of components  300  in an exemplary recall device. A microcontroller  302  is coupled to control a camera  304  using a shutter control line  306  and a mode control line  308 . A signal issued by the microcontroller  302  on the shutter control line  306  triggers an image capture in the camera  304 . A signal issued by the microcontroller  302  on the mode control line  308  sets the camera in high resolution mode, low resolution, or triggers an erasure of a captured image. A lens  310 , such as a normal lens, a wide angle lens, or a fish eye lens, is connected to the camera  304 .  
         [0026]     A battery  312 , such as a NiMH AA 1.5 volt battery, powers the illustrated recall device, including the camera  304 . A step-up circuit  314  increases the voltage provided by the battery  312  to 3.7 volts to power the microcontroller  302  and other components on the PC board.  
         [0027]     An I 2 C bus  316  connects a memory block  318  to the microcontroller  302 . The memory block  318  may be used to store logged sensor data and captured images and sound. In one implementation, two 128 Kbyte FLASH memory chips (Microchip 24LC512) are employed. In an alternative implementation, a larger and possibly removable memory modules, such as an SD or MMC card, can be connected will allow up to 1 Gbyte of storage. A real time clock chip  320  (Dallas/Maxim) and an ambient temperature sensor  322  (National Semiconductor LM75) also connected to the microcontroller  302  by the I 2 C bus  316 .  
         [0028]     At least one accelerometer  324  is connected to the microcontroller  302  to detected changes in location and movement. In the illustrated implementation, three single axis accelerometers  326  are employed, one for each axis (X, Y, and Z). A serial bus interface  328 , such as a USB or RS-232 interface, is connected to the microcontroller  302  to allow uploading and downloading of data. An audio recording circuit  330  is also connected to the microcontroller  302  to record ambient sound. In one implementation, the audio recording circuit  330  can record continuously for a period of time, although in other implementations, the audio recording circuit  330  is triggered to record in response to detection of a capture condition. A digital light level sensor  332  is connected to the microcontroller  302  to detect light level capture conditions. An RF transceiver  334  and an antenna  336  are connected to the microcontroller to provide or detect Wi-Fi signal communications, to detect RFID transponders, and/or to detect RF signals. In one implementation, a 433 MHz transceiver is employed. In another implementation, a 2.4 GHz radio receiver is employed to detect wireless networks. If the recall device is brought into proximity of a computer having wireless communication capabilities, the recall device can access and transfer images, audio, and other sensor data to the computer (e.g., using Bluetooth or Wi-Fi). As such, a remote computer system can be used to provide device settings, such as camera settings, sensor settings, time settings, etc.  
         [0029]     Another user interface mode may be employed in a recall device having a no capacity or limited capacity for switches, buttons, etc. To enable transmission of captured and logged data to a computer system without requiring switches, the camera may be set in a predefined position (e.g., face-down on a table). On power Up, one or more accelerometers that detect the predefined position can trigger an automatic download of data to a computer over a wireless network link without any user intervention.  
         [0030]     Other exemplary input components that may be employed for monitoring and logging sensor data, including without limitation a Global Positioning System (GPS) transceiver (e.g., a GPS transceiver from Garmin Geko with 10 m resolution and geographic location, altitude, and compass direction detection), a heart rate monitor (e.g., a Polar monitor), a video camera, a gyroscope for detecting rotational conditions (e.g., ADXRS gyroscope from Analog Devices), a chemical sensor (e.g., a Figaro carbon monoxide sensor or a smoke detector), a reverse-biased LED providing a crude optical motion detection based on ambient light changes, and a passive infrared radiation detector (e.g., a Seiko Passive infrared temperature detector) for detecting humans up to 2.5 m from the wearer.  
         [0031]     Other exemplary capture conditions may be satisfied by a change in sound level, a change in light level, a change in motion (e.g., as detected by an accelerometer or gyroscope), a change in heart rate, a change in ambient temperature or the wear&#39;s body temperature, a change in chemical composition of local environment (e.g., air), detection of a Wi-Fi signal, detection of an RFID transponder, or expiration of a real time clock period.  
         [0032]     The various combinations of these components may be used to selectively capture ambient sound and images based on detection of a potentially interesting condition, marked by detection of a capture condition. In this manner, the selective image and sound capture make more efficient use of storage resources by avoiding continuous capture of uninteresting conditions.  
         [0033]      FIG. 4  illustrates exemplary operations  400  of a selective image capture process. A monitoring operation  402  monitors motion of a camera using at least one accelerometer. A detecting operation  404  detects an environmental condition experienced by the camera that is designated as a “capture condition”. A capture condition indicates that something that has been previously associated with a potentially interesting environmental event has occurred. For example, if movement from one room to another is deemed to be an interesting environmental event, changes in ambient light level may be deemed to indicate that the wearer has moved to a different room.  
         [0034]     In one implementation, an exemplary detecting operation includes the following steps described in pseudocode: 
        Detect_light_level: 
            (1) Read ambient light level in Lux using TCS230 in current monitoring interval     (2) Compare current light level reading with the light level reading from previous monitoring interval (e.g., 1 second ago)     (3) If current reading &lt;50% of previous reading or current reading &gt;200% of previous reading, then indicate capture condition     (4) Goto Detect light level    
               
 
         [0040]     A purpose of detecting the capture condition is to “prime” the triggering of an image capture. However, as the recall device is a wearable device, subject to jitter, the image capture itself is delayed (i.e., managed) until a stable condition is detected by the accelerometer. Therefore, a delay operation  406  delays a trigger operation  408  until a stable condition is detected by the accelerometer(s). In this manner, the quality (e.g., clarity) of the captured image is expected to be better than an image from an unmanaged image capture.  
         [0041]     A stable condition is detected when one or more of the accelerometers in the camera detect movement within a predefined range or at or below a predefined threshold. For example, an exemplary recall device may be set to detect a stable condition when all accelerometers sense no movement in their respective axes. However, this setting may severely limit the likelihood of an image capture during periods of otherwise acceptable camera movement, such as when the wearer is standing nearly still. Accordingly, the stable condition may be set to less than a threshold degree change in angle (e.g., 20°) of any given accelerometer output during a measurement period (e.g., 1 second).  
         [0042]     In one implementation, an exemplary delay operation includes the following steps described in pseudocode: 
        Capture_image: 
            (5) Read tilt angle(s) of accelerometer(s) in current monitoring interval     (6) Compare tilt angle(s) with tilt angle(s) from previous monitoring interval (e.g., 1 second ago)     (7) If any tilt angle difference exceed 20 degrees, goto Capture_image     (8) Trigger image capture in camera     (9) Return    
               
 
         [0049]     After detection of the stable condition, a triggering operation  408  triggers an image capture through the camera module. In alternative implementations, other environmental states may also be captured, including without limitation an audio recording for a given period of time, a GPS reading, a real time clock reading, etc. A purpose of the capture events is to establish a snapshot of the environment as it existed in the temporal proximity of a capture condition. Thereafter, the captured data may be downloaded to a computer system to facilitate reconstruction of the environmental conditions associated with a potentially relevant event.  
         [0050]     In another implementation, image capture (including video capture) may occur continuously or periodically, even in the absence of a previous capture condition. For example, the recall device detects a stable condition and triggers an image capture to memory. Thereafter, a temporally proximate capture condition is detected so the captured image is maintained in association with the subsequent capture condition. If no temporally proximate capture condition is detected, the captured image may be deleted from memory to manage storage space. In this manner, the environmental conditions existing just prior to a capture event may be captured and efficiently recorded. A similar algorithm may be applied to audio recordings and other sensory data.  
         [0051]      FIG. 5  illustrates exemplary sensor readings  500  relative to image capture events. Data  502  indicates readings of an accelerometer associated with the X axis over time. Data  504  indicates readings of an accelerometer associated with the Y axis over time. (Accelerometer readings in the chart correspond to an angle. For example, in one implementation, an accelerometer signal with amplitude 0 represents 0 degrees, an accelerometer signal with amplitude 90 represents 90 degrees, etc.) Data  506  indicates readings of an ambient light level sensor. Data  508  indicates image captures triggered by detection of a capture condition followed by detection of a stable condition.  
         [0052]     As shown at time  510 , a capture condition has been detected based on the dramatic change in the light level data  506  followed by detection of a stable condition, as indicated by both data  502  and  504 . In contrast, at time  512 , a dramatic change in light level data  506  represents a capture condition, but an image capture is delayed until time  514 , when the stable condition is detected with regard to both data  502  and  504 . By managing captures in this manner, images are selectively captured based on detection of a potentially interesting event coupled with a stable period.  
         [0053]      FIG. 6  illustrates an image  600  captured through a normal lens, an image  602  captured through a fish-eye lens, and a corrected version  604  of the fish-eye image. Using commercially available image editing software, an image captured through the fish-eye lens may be corrected to remove the radial distortion introduced by the fish-eye lens. Coupling the fish-eye image capture with the correction software allows a wearer to capture a maximum amount of environment in an image and to later remove the radial distortion to obtain a relatively normal image. As such, the use of a fish-eye lens is particularly suited to a recall device which captures images with relatively random alignment with the environment.  
         [0054]     It should be understood that a variety of data can be logged and downloaded to a computer system for post-processing and/or analysis in order to reconstruct events in the wearer&#39;s recent experience. Exemplary outputs of the recall device may include without limitation a continuous audio log; a sequence of audio snapshots; a sequence of image snapshots; a sequence of GPS location, altitude, and direction readings; a motion log; an ambient temperature log; a heart rate log; an RFID detection log; and a wireless network detection log.  
         [0055]     Furthermore, in applications intended to facilitate memory recall, a technique referred to as “Rapid Serial Visual Presentation” or RSVP may be employed. RSVP represents the electronic equivalent of riffling a book in order to assess its content, as described in “Rapid Serial Visual Presentation: A space-time trade-off in information presentation”, Oscar de Bruijn and Robert Spence, http://www.iis.ee.ic.ac.uk/˜o.debruijn/avi2000.pdf, May 2000. Using this technique, a user interface, such as on the recall device or on a client computer system to which the captured data is downloaded, can rapidly display the images in the sequence in which they were captured, under direct user control of various factors, including without limitation speed, direction, and the number of simultaneously visible images. Such display may be combined with temporally synchronized audio captured by the recall device or other logged data.  
         [0056]     Manufacturers have not put GPS features in small portable digital cameras at present due to high battery drain. The ADXL210 accelerometer use about 1/130th of the power of a GPS transceiver when operating (typically, 0.6 mA) and, therefore, may be used as an efficient power management component. In one implementation, an accelerometer may be used as a power management component for the GPS receiver. As GPS receiver integrated circuits generally use much current (e.g. 80 mA), the batteries powering the system can be drained easily. By periodically sampling the motion read by the accelerometer (e.g., every second or so), the GPS can be switched off if there is no movement because no change in GPS location has occurred. When movement is detected by the low power accelerometer, the GPS system can be switched back on. A similar power management mechanism can be used to power off the camera, which also has a high current drain. Other sensor inputs, such as light level sensors, can be used for power saving. For example, a camera need not powered in the presence of total darkness.  
         [0057]     The embodiments of the invention described herein are implemented as logical steps in one or more computer systems. The logical operations of the present invention are implemented (1) as a sequence of processor-implemented steps executing in one or more computer systems and (2) as interconnected machine modules within one or more computer systems. The implementation is a matter of choice, dependent on the performance requirements of the computer system implementing the invention. Accordingly, the logical operations making up the embodiments of the invention described herein are referred to variously as operations, steps, objects, or modules.  
         [0058]     The above specification, examples and data provide a complete description of the structure and use of exemplary embodiments of the invention. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims hereinafter appended.