[go: nahoru, domu]

US20140253702A1 - Apparatus and method for executing system commands based on captured image data - Google Patents

Apparatus and method for executing system commands based on captured image data Download PDF

Info

Publication number
US20140253702A1
US20140253702A1 US14/137,263 US201314137263A US2014253702A1 US 20140253702 A1 US20140253702 A1 US 20140253702A1 US 201314137263 A US201314137263 A US 201314137263A US 2014253702 A1 US2014253702 A1 US 2014253702A1
Authority
US
United States
Prior art keywords
image data
system command
user
human
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/137,263
Inventor
Yonatan Wexler
Amnon Shashua
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orcam Technologies Ltd
Original Assignee
Orcam Technologies Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orcam Technologies Ltd filed Critical Orcam Technologies Ltd
Priority to US14/137,263 priority Critical patent/US20140253702A1/en
Assigned to ORCAM TECHNOLOGIES LTD. reassignment ORCAM TECHNOLOGIES LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SHASHUA, AMNON, WEXLER, YONATAN
Priority to PCT/IB2014/000758 priority patent/WO2014140800A1/en
Publication of US20140253702A1 publication Critical patent/US20140253702A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/163Wearable computers, e.g. on a belt
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F9/00Methods or devices for treatment of the eyes; Devices for putting-in contact lenses; Devices to correct squinting; Apparatus to guide the blind; Protective devices for the eyes, carried on the body or in the hand
    • A61F9/08Devices or methods enabling eye-patients to replace direct visual perception by another kind of perception
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06K9/18
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/22Character recognition characterised by the type of writing
    • G06V30/224Character recognition characterised by the type of writing of printed characters having additional code marks or containing code marks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B21/00Teaching, or communicating with, the blind, deaf or mute
    • G09B21/001Teaching or communicating with blind persons
    • G09B21/006Teaching or communicating with blind persons using audible presentation of the information
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B21/00Teaching, or communicating with, the blind, deaf or mute
    • G09B21/001Teaching or communicating with blind persons
    • G09B21/008Teaching or communicating with blind persons using visual presentation of the information for the partially sighted
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/52Details of telephonic subscriber devices including functional features of a camera

Definitions

  • This disclosure generally relates to devices and methods for providing information to a user. More particularly, this disclosure relates to devices and methods for providing information to a user by processing images captured from the environment of the user.
  • Visual acuity is an indication of the clarity or clearness of a person's vision that is commonly measured twenty feet from an object.
  • the ability of a person to identify black symbols on a white background at twenty feet is compared to the ability of a person with normal eyesight. This comparison can be symbolized by a ratio.
  • a ratio of 20/70 vision means a person located at a distance of twenty feet can see what a person with normal vision can see at seventy feet.
  • a person has low vision if he or she has a visual acuity between 20/70 and 20/200 in the better-seeing eye that cannot be corrected or improved with regular eyeglasses.
  • the prevalence of low vision is about one in a hundred for people in their sixties and rapidly increases to one in five for people in their nineties. Low vision may also depend on the environment. For example, some individuals may be able to see only when there is ample light.
  • a person may have low vision (also known as visual impairment) for several reasons. Other than eye damage and failure of the brain to receive visual cues sent by the eyes, different medical conditions may cause visual impairment. Medical conditions that may cause visual impairment include Age-related Macular Degeneration (AMD), retinitis pigmentosa, cataract, and diabetic retinopathy.
  • AMD Age-related Macular Degeneration
  • retinitis pigmentosa cataract
  • diabetic retinopathy diabetic retinopathy
  • AMD which usually affects adults, is caused by damage to the retina that diminishes vision in the center of a person's visual field.
  • the lifetime risk for developing AMD is strongly associated with certain genes. For example, the lifetime risk of developing AMD is 50% for people that have a relative with AMD, versus 12% for people that do not have relatives with AMD.
  • Retinitis pigmentosa is an inherited, degenerative eye disease that causes severe vision impairment and often blindness. The disease process begins with changes in pigment and damage to the small arteries and blood vessels that supply blood to the retina. There is no cure for retinitis pigmentosa and no known treatment can stop the progressive vision loss caused by the disease.
  • a cataract is a clouding of the lens inside the eye which leads to a decrease in vision. Over time, a yellow-brown pigment is deposited within the lens and obstructs light from passing and being focused onto the retina at the back of the eye. Biological aging is the most common cause of a cataract, but a wide variety of other risk factors (e.g., excessive tanning, diabetes, prolonged steroid use) can cause a cataract.
  • Diabetic retinopathy is a systemic disease that affects up to 80% of all patients who have had diabetes for ten years or more. Diabetic retinopathy causes microvascular damage to a blood-retinal barrier in the eye and makes the retinal blood vessels more permeable to fluids.
  • a person with low vision who wears magnifying glasses may still have a difficult time recognizing details from a distance (e.g., people, signboards, traffic lights, etc.). Accordingly, there is a need for other technologies that can assist people who have low vision accomplish everyday activities.
  • Embodiments consistent with the present disclosure provide devices and methods for providing information to a user by processing images captured from the environment of the user.
  • the disclosed embodiments may assist persons who have low vision.
  • an apparatus may be operated by at least one command retrieved from a captured image.
  • the apparatus includes an image sensor configured to be worn by a user and to capture image data from an environment of the user, a mobile power source for powering at least the image sensor, and at least one portable processor device configured for tethering to the image sensor.
  • the at least one portable processor device may be configured to access a database of a plurality of predefined system commands associated with printed information in the image data, and identify in the image data an existence of printed information associated with a specific system command stored in the database.
  • the at least one portable processor device may be further configured to execute the specific system command after the printed information associated with the specific system command is identified.
  • an apparatus may be operated by at least one command retrieved from a captured image.
  • the apparatus may include an image sensor configured to be worn by a user and to capture image data from an environment of the user, and at least one portable processor device configured for tethering to the image sensor.
  • the at least one portable processor device may be configured to receive the image data from the image sensor.
  • the image data may include printed information associated with a specific system command.
  • the at least one portable processor device may be further configured to identify in the image data an existence of the printed information, identify the specific system command associated with the printed information, and execute the specific system command after the specific system command is identified.
  • a method for executing at least one command retrieved from a captured image includes receiving image data from an image sensor.
  • the image data includes printed information associated with a specific system commands.
  • the method further includes accessing a database including a plurality of predefined system commands associated with printed information, identifying in the image data an existence of the printed information associated with the specific system command stored in the database, and executing the specific system command after the printed information associated with the specific system command is identified.
  • non-transitory computer-readable storage media may store program instructions, which are executed by at least one processor device and perform any of the methods described herein.
  • FIG. 1 is a schematic illustration of a user wearing an apparatus for aiding persons who have low vision
  • FIG. 2A is a schematic illustration of an example of a support from a first viewpoint
  • FIG. 2B is a schematic illustration of the support shown in FIG. 2A from a second viewpoint
  • FIG. 2C is a schematic illustration of the support shown in FIG. 2A mounted on a pair of glasses;
  • FIG. 2D is a schematic illustration of a sensory unit attached to the support that is mounted on the pair of glasses shown in FIG. 2C ;
  • FIG. 2E is an exploded view of FIG. 2D ;
  • FIG. 3A is a schematic illustration of an example of a sensory unit from a first viewpoint
  • FIG. 3B is a schematic illustration of the sensory unit shown in FIG. 3A from a second viewpoint
  • FIG. 3C is a schematic illustration of the sensory unit shown in FIG. 3A from a third viewpoint
  • FIG. 3D is a schematic illustration of the sensory unit shown in FIG. 3A from a fourth viewpoint
  • FIG. 3E is a schematic illustration of the sensory unit shown in FIG. 3A in an extended position
  • FIG. 4A is a schematic illustration of an example of a processing unit from a first viewpoint
  • FIG. 4B is a schematic illustration of the processing unit shown in FIG. 4A from a second viewpoint
  • FIG. 5A is a block diagram illustrating an example of the components of an apparatus for aiding persons who have low vision according to a first embodiment
  • FIG. 5B is a block diagram illustrating an example of the components of an apparatus for aiding persons who have low vision according to a second embodiment
  • FIG. 5C is a block diagram illustrating an example of the components of an apparatus for aiding persons who have low vision according to a third embodiment
  • FIG. 5D is a block diagram illustrating an example of the components of an apparatus for aiding persons who have low vision according to a fourth embodiment
  • FIG. 6 illustrates an exemplary set of application modules and databases, according to disclosed embodiments
  • FIG. 7 is a flow diagram of an exemplary process for identifying and executing system commands based on captured image data, according to disclosed embodiments
  • FIG. 8 is a flow diagram of an exemplary process for identifying and executing system commands based on textual information within captured image data, according to disclosed embodiments
  • FIG. 9 is a flow diagram of an exemplary process for executing an identified system command, according to disclosed embodiments.
  • FIGS. 10-15 illustrate exemplary image data captured by an apparatus for aiding persons who have low vision, according to disclosed embodiments.
  • Disclosed embodiments provide devices and methods for assisting people who have low vision.
  • One example of the disclosed embodiments is a device that includes a camera configured to capture real-time image data from the environment of the user.
  • the device also includes a processing unit configured to process the real-time image data and provide real-time feedback to the user.
  • the real-time feedback may include, for example, an output that audibly identifies individuals from a distance, reads signboards, and/or identifies the state of a traffic light.
  • FIG. 1 illustrates a user 100 wearing an apparatus 110 connected to glasses 105 , consistent with a disclosed embodiment.
  • Apparatus 110 may provide functionality for aiding user 100 with various daily activities that are otherwise difficult for user 100 to accomplish due to low vision.
  • Glasses 105 may be prescription glasses, magnifying glasses, nonprescription glasses, safety glasses, sunglasses, etc.
  • apparatus 110 includes a sensory unit 120 and a processing unit 140 .
  • Sensory unit 120 may be connected to a support (not shown in FIG. 1 ) that is mounted on glasses 105 .
  • sensory unit 120 may include an image sensor (not shown in FIG. 1 ) for capturing real-time image data of the field-of-view of user 100 .
  • image data includes any form of data retrieved from optical signals in the near-infrared, infrared, visible, and ultraviolet spectrums. The image data may be used to form video clips and/or photographs.
  • Processing unit 140 may communicate wirelessly or via a wire 130 connected to sensory unit 120 .
  • processing unit 140 may produce an output of audible feedback to user 100 (e.g., using a speaker or a bone conduction headphone).
  • Apparatus 110 is one example of a device capable of implementing the functionality of the disclosed embodiments.
  • Other devices capable of implementing the disclosed embodiments include, for example, a mobile computer with a camera (e.g., a smartphone, a smartwatch, a tablet, etc.) or a clip-on-camera configured to communicate with a processing unit (e.g., a smartphone or a dedicated processing unit, which can be carried in a pocket).
  • a mobile computer with a camera e.g., a smartphone, a smartwatch, a tablet, etc.
  • a clip-on-camera configured to communicate with a processing unit (e.g., a smartphone or a dedicated processing unit, which can be carried in a pocket).
  • a processing unit e.g., a smartphone or a dedicated processing unit, which can be carried in a pocket.
  • FIG. 2A is a schematic illustration of an example of a support 210 .
  • support 210 may be mounted on glasses 105 and connect to sensory unit 120 .
  • the term “support” includes any device or structure that enables detaching and reattaching of a device including a camera to a pair of glasses or to another object (e.g., a helmet).
  • Support 210 may be made from plastic (e.g., polycarbonate), metal (e.g., aluminum), or a combination of plastic and metal (e.g., carbon fiber graphite).
  • Support 210 may be mounted on glasses 105 using screws, bolts, snaps, or any fastening means used in the art.
  • support 210 includes a base 230 connected to a clamp 240 .
  • a bridge 220 connects base 230 with clamp 240 .
  • Base 230 and clamp 240 enable sensory unit 120 to easily attach to and detach from support 210 .
  • base 230 may include an internally threaded member 250 for cooperating with a screw (not shown in FIG. 2A ) to mount support 210 on glasses 105 .
  • FIG. 2B illustrates support 210 from a second viewpoint.
  • the viewpoint shown in FIG. 2B is from a side orientation of support 210 .
  • FIG. 2C illustrates support 210 mounted on glasses 105 .
  • Support 210 may be configured for mounting on any kind of glasses (e.g., eyeglasses, sunglasses, 3D glasses, safety glasses, etc.).
  • sensory unit 120 is not attached to support 210 and, accordingly, support 210 may be sold separately from apparatus 110 .
  • This arrangement makes apparatus 110 compatible with a variety of glasses. For example, some users may have several pairs of glasses and may wish to mount a support on each pair of glasses.
  • support 210 may be an integral part of a pair of glasses, or sold and installed by an optometrist.
  • support 210 may be configured for mounting on the arms of glasses 105 near the frame front, but before the hinge.
  • support 210 may be configured for mounting on the bridge of glasses 105 .
  • FIG. 2D illustrates sensory unit 120 attached to support 210 (not visible in FIG. 2D ), and support 210 mounted on glasses 105 .
  • support 210 may include a quick release mechanism for disengaging and reengaging sensory unit 120 .
  • support 210 and sensory unit 120 may include magnetic elements.
  • support 210 may include a male latch member and sensory unit 120 may include a female receptacle.
  • the field-of-view of a camera associated with sensory unit 120 may be substantially identical to the field-of-view of user 100 . Accordingly, in some embodiments, after support 210 is attached to sensory unit 120 , directional calibration of sensory unit 120 may not be required because sensory unit 120 aligns with the field-of-view of user 100 .
  • support 210 may include an adjustment component (not shown in FIG. 2D ) to enable calibration of the aiming direction of sensory unit 120 in a substantially set position that is customized to user 100 wearing glasses 105 .
  • the adjustment component may include an adjustable hinge to enable vertical and horizontal alignment of the aiming direction of sensory unit 120 . Adjusting the alignment of sensory unit 120 may assist users who have a unique and individual visual impairment. The adjustment may be internal or external to sensory unit 120 .
  • FIG. 2E is an exploded view of the components shown in FIG. 2D .
  • Sensory unit 120 may be attached to glasses 105 in the following way. Initially, support 210 may be mounted on glasses 105 using screw 260 . Next, screw 260 may be inserted into internally threaded member 250 (not shown in FIG. 2E ) in the side of support 210 . Sensory unit 120 may then be clipped on support 210 such that it is aligned with the field-of-view of user 100 .
  • FIG. 3A is a schematic illustration of sensory unit 120 from a first viewpoint. As shown in FIG. 3A , sensory unit 120 includes a feedback-outputting unit 340 and an image sensor 350 .
  • Sensory unit 120 is configured to cooperate with support 210 using clip 330 and groove 320 , which fits the dimensions of support 210 .
  • the term “sensory unit” refers to any electronic device configured to capture real-time images and provide a non-visual output.
  • sensory unit 120 includes feedback-outputting unit 340 .
  • feedback-outputting unit includes any device configured to provide information to a user.
  • feedback-outputting unit 340 may be configured to be used by blind persons and persons with low vision. Accordingly, feedback-outputting unit 340 may be configured to output nonvisual feedback.
  • the term “feedback” refers to any output or information provided in response to processing at least one image in an environment.
  • feedback may include a descriptor of a branded product, an audible tone, a tactile response, and/or information previously recorded by user 100 .
  • feedback-outputting unit 340 may comprise appropriate components for outputting acoustical and tactile feedback that people with low vision can interpret.
  • feedback-outputting unit 340 may comprise audio headphones, a speaker, a bone conduction headphone, interfaces that provide tactile cues, vibrotactile stimulators, etc.
  • sensory unit 120 includes image sensor 350 .
  • image sensor refers to a device capable of detecting and converting optical signals in the near-infrared, infrared, visible, and ultraviolet spectrums into electrical signals. The electric signals may be used to form an image based on the detected signal.
  • image sensor 350 may be part of a camera.
  • image sensor 350 may acquire a set aiming direction without the need for directional calibration. The set aiming direction of image sensor 350 may substantially coincide with the field-of-view of user 100 wearing glasses 105 .
  • a camera associated with image sensor 350 may be installed within sensory unit 120 in a predetermined angle in a position facing slightly downwards (e.g., 5-15 degrees from the horizon). Accordingly, the set aiming direction of image sensor 350 may match the field-of-view of user 100 .
  • housing 310 refers to any structure that at least partially covers, protects, or encloses a sensory unit.
  • the housing may be made from one or more different materials (e.g., plastic or aluminum).
  • housing 310 may be designed to engage with a specific pair of glasses having a specific support (e.g., support 210 ).
  • housing 310 may be designed to engage more than one pair of glasses, each having a support (e.g., support 210 ) mounted thereon.
  • Housing 310 may include a connector for receiving power from an external mobile-power-source or an internal mobile-power-source, and for providing an electrical connection to image sensor 350 .
  • FIG. 3B is a schematic illustration of sensory unit 120 from a second viewpoint.
  • housing 310 includes a U-shaped element.
  • An inner distance “d” between each side of the U-shaped element is larger than the width of the arm of glasses 105 .
  • the inner distance “d” between each side of the U-shaped element is substantially equal to a width of support 210 .
  • the inner distance “d” between each side of the U-shaped element may allow user 100 to easily attach housing 310 to support 210 , which may be mounted on glasses 105 .
  • image sensor 350 is located on one side of the U-shaped element and feedback-outputting unit 340 is located on another side of the U-shaped element.
  • FIG. 3C is a schematic illustration of sensory unit 120 from a third viewpoint.
  • the viewpoint shown in FIG. 3C is from a side orientation of sensory unit 120 and shows the side of the U-shaped element that includes image sensor 350 .
  • FIG. 3D is a schematic illustration of sensory unit 120 from a fourth viewpoint.
  • the viewpoint shown in FIG. 3D is from an opposite side of the orientation shown in FIG. 3C .
  • FIG. 3D shows the side of the U-shaped element that includes feedback-outputting unit 340 .
  • FIG. 3E is a schematic illustration of the sensory unit shown in FIG. 3A in an extended position. As shown in FIG. 3E , a portion of sensory unit 120 is extendable and wire 130 may pass through a channel of sensory unit 120 . This arrangement may allow a user to adjust the length and the angle of sensory unit 120 without interfering with the operation of apparatus 110 .
  • User 100 may adjust the U-shaped element of sensory unit 120 so that feedback-outputting unit 340 is positioned adjacent to the user's ear or the user's temple. Accordingly, sensory unit 120 may be adjusted for use with different users who may have different head sizes. Alternatively, a portion of sensory unit 120 may be flexible such that the angle of feedback-outputting unit 340 is relative to the user's ear or the user's temple.
  • FIG. 4A is a schematic illustration of processing unit 140 .
  • processing unit 140 has a rectangular shape, which easily fits in a pocket of user 100 .
  • Processing unit 140 includes a connector 400 for connecting wire 130 to processing unit 140 .
  • Wire 130 may be used to transmit power from processing unit 140 to sensory unit 120 , and data to and from processing unit 140 to sensory unit 120 .
  • wire 130 may comprise multiple wires (e.g., a wire dedicated to power transmission and a wire dedicated to data transmission).
  • Processing unit 140 includes a function button 410 for enabling user 100 to provide input to apparatus 110 .
  • Function button 410 may accept different types of tactile input (e.g., a tap, a click, a double-click, a long press, a right-to-left slide, a left-to-right side).
  • each type of input may be associated with a different action. For example, a tap may be associated with the function of confirming an action, while a right-to-left slide may be associated with the function of repeating the last output.
  • FIG. 4B is a schematic illustration of processing unit 140 from a second viewpoint.
  • processing unit 140 includes a volume switch 420 , a battery pack compartment 430 , and a power port 440 .
  • user 100 may charge apparatus 110 using a charger connectable to power port 440 .
  • user 100 may replace a battery pack (not shown) stored in battery pack compartment 430 .
  • FIG. 5A is a block diagram illustrating the components of apparatus 110 according to a first embodiment. Specifically, FIG. 5A depicts an embodiment in which apparatus 110 comprises sensory unit 120 and processing unit 140 , as discussed in connection with, for example, FIG. 1 . Furthermore, sensory unit 120 may be physically coupled to support 210 .
  • sensory unit 120 includes feedback-outputting unit 340 and image sensor 350 .
  • sensory unit 120 may include a plurality of image sensors (e.g., two image sensors).
  • each of the image sensors may be face a different direction or be associated with a different camera (e.g., a wide angle camera, a narrow angle camera, an IR camera, etc.).
  • sensory unit 120 may also include buttons and other sensors such as a microphone and inertial measurements devices.
  • processing unit 140 includes a mobile power source 510 , a memory 520 , a wireless transceiver 530 , and a processor 540 .
  • Processor 540 may constitute any physical device having an electric circuit that performs a logic operation on input or inputs.
  • processor 540 may include one or more integrated circuits, microchips, microcontrollers, microprocessors, all or part of a central processing unit (CPU), graphics processing unit (GPU), digital signal processor (DSP), field-programmable gate array (FPGA), or other circuits suitable for executing instructions or performing logic operations.
  • the instructions executed by processor 540 may, for example, be pre-loaded into a memory integrated with or embedded into processor 540 or may be stored in a separate memory (e.g., memory 520 ).
  • Memory 520 may comprise a Random Access Memory (RAM), a Read-Only Memory (ROM), a hard disk, an optical disk, a magnetic medium, a flash memory, other permanent, fixed, or volatile memory, or any other mechanism capable of storing instructions.
  • RAM Random Access Memory
  • ROM Read-Only Memory
  • hard disk an optical disk
  • magnetic medium a magnetic medium
  • flash memory other permanent
  • processing unit 140 may include more than one processor.
  • Each processor may have a similar construction or the processors may be of differing constructions that are electrically connected or disconnected from each other.
  • the processors may be separate circuits or integrated in a single circuit.
  • the processors may be configured to operate independently or collaboratively.
  • the processors may be coupled electrically, magnetically, optically, acoustically, mechanically or by other means that permit them to interact.
  • processor 540 may change the aiming direction of image sensor 350 using image data provided from image sensor 350 .
  • processor 540 may recognize that a user is reading a book and determine that the aiming direction of image sensor 350 is offset from the text. That is, because the words in the beginning of each line of text are not fully in view, processor 540 may determine that image sensor 350 is tilted down and to the right. Responsive thereto, processor 540 may adjust the aiming direction of image sensor 350 .
  • Processor 540 may access memory 520 .
  • Memory 520 may be configured to store information specific to user 100 . For example, data for image representations of known individuals, favorite products, personal items, etc., may be stored in memory 520 .
  • user 100 may have more than one pair of glasses, with each pair of glasses having support 210 mounted thereon. Accordingly, memory 520 may store information (e.g., personal settings) associated with each pair of glasses. For example, when a user wears his sunglasses may have different preferences than when the user wears reading glasses.
  • processing unit 140 includes mobile power source 510 .
  • Mobile power source 510 may be configured to power processing unit 140 and/or sensory unit 120 .
  • the term “mobile power source” includes any device capable of providing electrical power, which can be easily carried by a hand (e.g., the total weight of mobile power source 510 may be less than a pound).
  • mobile power source 510 may include one or more batteries (e.g., nickel-cadmium batteries, nickel-metal hydride batteries, and lithium-ion batteries) or any other type of electrical power supply.
  • mobile power source 510 may be rechargeable and contained within a casing that holds processing unit 140 .
  • mobile power source 510 may include one or more energy harvesting devices for converting ambient energy into electrical energy (e.g., portable solar power units, human vibration units, etc.).
  • Apparatus 110 may operate in a low-power-consumption mode and in a processing-power-consumption mode.
  • mobile power source 510 can produce five hours of processing-power-consumption mode and fifteen hours of low-power-consumption mode.
  • different power consumption modes may allow mobile power source 510 to produce sufficient power for powering processing unit 140 for various time periods (e.g., more than two hours, more than four hours, more than ten hours, etc.).
  • Mobile power source 510 may power one or more wireless transceivers (e.g., wireless transceiver 530 in FIG. 5A ).
  • wireless transceiver refers to any device configured to exchange transmissions over an air interface by use of radio frequency, infrared frequency, magnetic field, or electric field.
  • Wireless transceiver 530 may use any known standard to transmit and/or receive data (e.g., Wi-Fi, Bluetooth®, Bluetooth Smart, 802.15.4, or ZigBee).
  • wireless transceiver 530 may transmit data (e.g., raw image data or audio data) from image sensor 350 to processing unit 140 , or wireless transceiver 530 may transmit data from processing unit 140 to feedback-outputting unit 340 .
  • wireless transceiver 530 may communicate with a different device (e.g., a hearing aid, the user's smartphone, or any wirelessly controlled device) in the environment of user 100 .
  • a different device e.g., a hearing aid, the user's smartphone, or any wirelessly controlled device
  • wireless transceiver 530 may communicate with an elevator using a Bluetooth® controller.
  • apparatus 110 may recognize that user 100 is approaching an elevator and call the elevator, thereby minimizing wait time.
  • wireless transceiver 530 may communicate with a smart TV.
  • apparatus 110 may recognize that user 100 is watching television and identify specific hand movements as commands for the smart TV (e.g., switching channels).
  • wireless transceiver 530 may communicate with a virtual cane.
  • a virtual cane is any device that uses a laser beam or ultrasound waves to determine the distance from user 100 to an object.
  • FIG. 5B is a block diagram illustrating the components of apparatus 110 according to a second embodiment.
  • support 210 is used to couple sensory unit 120 to a pair of glasses.
  • sensory unit 120 and processing unit 140 communicate wirelessly.
  • wireless transceiver 530 A can transmit image data to processing unit 140 and receive information to be outputted via feedback-outputting unit 340 .
  • sensory unit 120 includes feedback-outputting unit 340 , mobile power source 510 A, wireless transceiver 530 A, and image sensor 350 .
  • Mobile power source 510 A is contained within sensory unit 120 .
  • processing unit 140 includes wireless transceiver 530 B, processor 540 , mobile power source 510 B, and memory 520 .
  • FIG. 5C is a block diagram illustrating the components of apparatus 110 according to a third embodiment.
  • FIG. 5C depicts an embodiment in which support 210 includes image sensor 350 and connector 550 B.
  • sensory unit 120 provides functionality for processing data and, therefore, a separate processing unit is not needed in such a configuration.
  • sensory unit 120 includes processor 540 , connector 550 A, mobile power source 510 , memory 520 , and wireless transceiver 530 .
  • apparatus 110 does not include a feedback-outputting unit.
  • wireless transceiver 530 may communicate directly with a hearing aid (e.g., a Bluetooth® hearing aid).
  • image sensor 350 is included in support 210 . Accordingly, when support 210 is initially mounted on glasses 105 , image sensor 350 may acquire a set aiming direction. For example, a camera associated with image sensor 350 may be installed within support 210 in a predetermined angle in a position facing slightly downwards (e.g., 7-12 degrees from the horizon).
  • connector 550 A and connector 550 B may allow data and power to be transmitted between support 210 and sensory unit 120 .
  • FIG. 5D is a block diagram illustrating the components of apparatus 110 according to a fourth embodiment.
  • sensory unit 120 couples directly to a pair of glasses without the need of a support.
  • sensory unit 120 includes image sensor 350 , feedback-outputting unit 340 , processor 540 , and memory 520 .
  • sensory unit 120 is connected via a wire 130 to processing unit 140 .
  • processing unit 140 includes mobile power source 510 and wireless transceiver 530 .
  • apparatus 110 can assist persons who have low vision with their everyday activities in numerous ways.
  • processor 540 may execute one or more computer algorithms and/or signal-processing techniques to find objects relevant to user 100 in image data captured by sensory unit 120 .
  • object refers to any physical object, person, text, or surroundings in an environment.
  • apparatus 110 can perform a hierarchical object identification process.
  • apparatus 110 can identify objects from different categories (e.g., spatial guidance, warning of risks, objects to be identified, text to be read, scene identification, and text in the wild) of image data.
  • apparatus 110 can perform a first search in the image data to identify objects from a first category, and after initiating the first search, execute a second search in the image data to identify objects from a second category.
  • apparatus 110 can provide information associated with one or more of the objects identified in image data. For example, apparatus 110 can provide information such as the name of an individual standing in front of user 100 . The information may be retrieved from a dynamic database stored in memory 520 . If the database does not contain specific information associated with the object, apparatus 110 may provide user 100 with nonvisual feedback indicating that a search was made, but the requested information was not found in the database. Alternatively, apparatus 110 may use wireless transceiver 530 to search for and retrieve information associated with the object from a remote database (e.g., over a cellular network or Wi-Fi connection to the Internet).
  • a remote database e.g., over a cellular network or Wi-Fi connection to the Internet.
  • apparatus 110 can assist persons who have low vision is by performing a continuous action that relates to an object in an environment.
  • a continuous action may involve providing continuous feedback regarding the object.
  • apparatus 110 can provide continuous feedback associated with an object identified within a field-of-view of image sensor 350 , and suspend the continuous feedback when the object moves outside the field-of-view of image sensor 350 .
  • Examples of continuous feedback may include audibly reading text, playing a media file, etc.
  • apparatus 110 may provide continuous feedback to user 100 based on information derived from a discrete image or based on information derived from one or more images captured by sensory unit 120 from the environment of user 100 .
  • apparatus 110 can track an object as long as the object remains substantially within the field-of-view of image sensor 350 . Furthermore, before providing user 100 with feedback, apparatus 110 may determine whether the object is likely to change its state. If apparatus 110 determines that the object is unlikely to change its state, apparatus 110 may provide a first feedback to user 100 . For example, if user 100 points to a road sign, apparatus 110 may provide a first feedback that comprises a descriptor of the road sign. However, if apparatus 110 determines that the object is likely to change its state, apparatus 110 may provide a second feedback to user 100 after the object has changed its state.
  • the first feedback may comprise a descriptor of the current state of the traffic light (e.g., the traffic light is red) and the second feedback may comprise a descriptor indicating that the state of traffic light has changed (i.e., the traffic light is now green).
  • Apparatus 110 may also determine that an object that is expected to change its state is not functioning and provide appropriate feedback. For example, apparatus 110 may provide a descriptor indicating that a traffic light is broken.
  • Apparatus 110 can also assist persons who have low vision by making intelligent decisions regarding a person's intentions. Apparatus 110 can make these decisions by understanding the context of a situation. Accordingly, disclosed embodiments may retrieve contextual information from captured image data and adjust the operation of apparatus 110 based on at least the contextual information.
  • Contextual information refers to any information having a direct or indirect relationship with an object in an environment.
  • apparatus 110 may retrieve different types of contextual information from captured image data.
  • One type of contextual information is the time and/or the place that an image of the object was captured.
  • Another example of a type of contextual information is the meaning of text written on the object.
  • Other examples of types of contextual information include the identity of an object, the type of the object, the background of the object, the location of the object in the frame, the physical location of the user relative to the object, etc.
  • the type of contextual information that is used to adjust the operation of apparatus 110 may vary based on objects identified in the image data and/or the particular user who wears apparatus 110 . For example, when apparatus 110 identifies a package of cookies as an object, apparatus 110 may use the location of the package (i.e., at home or at the grocery store) to determine whether or not to read the list of ingredients aloud. Alternatively, when apparatus 110 identifies a signboard identifying arrival times for trains as an object, the location of the sign may not be relevant, but the time that the image was captured may affect the output. For example, if a train is arriving soon, apparatus 110 may read aloud the information regarding the coming train. Accordingly, apparatus 110 may provide different responses depending on contextual information.
  • Apparatus 110 may use contextual information to determine a processing action to execute or an image resolution of image sensor 350 . For example, after identifying the existence of an object, contextual information may be used to determine if the identity of the object should be announced, if text written on the object should be audibly read, if the state of the object should be monitored, or if an image representation of the object should be saved. In some embodiments, apparatus 110 may monitor a plurality of images and obtain contextual information from specific portions of an environment. For example, motionless portions of an environment may provide background information that can be used to identify moving objects in the foreground.
  • apparatus 110 can assist persons who have low vision is by automatically carrying out processing actions after identifying specific objects and/or hand gestures in the field-of-view of image sensor 350 .
  • processor 540 may execute several actions after identifying one or more triggers in image data captured by apparatus 110 .
  • the term “trigger” includes any information in the image data that may cause apparatus 110 to execute an action.
  • apparatus 110 may detect as a trigger a finger of user 100 pointing to one or more coins. The detection of this gesture may cause apparatus 110 to calculate a sum of the value of the one or more coins.
  • an appearance of an individual wearing a specific uniform e.g., a policeman, a fireman, a nurse
  • a specific uniform e.g., a policeman, a fireman, a nurse
  • apparatus 110 may cause apparatus 110 to make an audible indication that this particular individual is nearby.
  • the trigger identified in the image data may constitute a hand-related trigger.
  • hand-related trigger refers to a gesture made by, for example, the user's hand, the user's finger, or any pointed object that user 100 can hold (e.g., a cane, a wand, a stick, a rod, etc.).
  • the trigger identified in the image data may include an erratic movement of an object caused by user 100 .
  • unusual movement of an object can trigger apparatus 110 to take a picture of the object.
  • each type of trigger may be associated with a different action. For example, when user 100 points to text, apparatus 110 may audibly read the text. As another example, when user 100 erratically moves an object, apparatus 110 may audibly identify the object or store the representation of that object for later identification.
  • Apparatus 110 may use the same trigger to execute several actions. For example, when user 100 points to text, apparatus 110 may audibly read the text. As another example, when user 100 points to a traffic light, apparatus 110 may monitor the state of the traffic light. As yet another example, when user 100 points to a branded product, apparatus 110 may audibly identify the branded product. Furthermore, in embodiments in which the same trigger is used for executing several actions, apparatus 110 may determine which action to execute based on contextual information retrieved from the image data. In the examples above, wherein the same trigger (pointing to an object) is used, apparatus 110 may use the type of the object (text, a traffic light, a branded product) to determine which action to execute.
  • apparatus 100 may follow several procedures for saving processing resources and prolonging battery life.
  • apparatus 110 can use several image resolutions to form images. Higher image resolution provides more detailed images, but requires more processing resources. Lower image resolution provides less detailed images, but saves processing resources. Therefore, to prolong battery life, apparatus 110 may have rules for capturing and processing high resolution image under certain circumstances, and rules for capturing and processing low resolution image when possible. For example, apparatus 110 may capture higher resolution images when performing Optical Character Recognition (OCR), and capture low resolution images when searching for a trigger.
  • OCR Optical Character Recognition
  • Apparatus 110 can assist persons who have low vision by audibly reading text that is present in user 100 environment.
  • Apparatus 110 may capture an image that includes text using sensory unit 120 . After capturing the image, to save resources and to process portions of the text that are relevant to user 100 , apparatus 110 may initially perform a layout analysis on the text.
  • layout analysis refers to any process of identifying regions in an image that includes text. For example, layout analysis may detect paragraphs, blocks, zones, logos, titles, captions, footnotes, etc.
  • apparatus 110 can select which parts of the image to process, thereby saving processing resources and battery life. For example, apparatus 110 can perform a layout analysis on image data taken at a resolution of one megapixel to identify specific areas of interest within the text. Subsequently, apparatus 110 can instruct image sensor 350 to capture image data at a resolution of five megapixels to recognize the text in the identified areas.
  • the layout analysis may include initiating at least a partial OCR process on the text.
  • apparatus 110 may detect a trigger that identifies a portion of text that is located a distance from a level break in the text.
  • a level break in the text represents any discontinuity of the text (e.g., a beginning of a sentence, a beginning of a paragraph, a beginning of a page, etc.). Detecting this trigger may cause apparatus 110 to read the text aloud from the level break associated with the trigger. For example, user 100 can point to a specific paragraph in a newspaper and apparatus 110 may audibly read the text from the beginning of the paragraph instead of from the beginning of the page.
  • apparatus 110 may identify contextual information associated with text and cause the audible presentation of one portion of the text and exclude other portions of the text. For example, when pointing to a food product, apparatus 110 may audibly identify the calorie value of the food product.
  • contextual information may enable apparatus 110 to construct a specific feedback based on at least data stored in memory 520 .
  • the specific feedback may assist user 100 to fill out a form (e.g., by providing user 100 audible instructions and details relevant to a form in the user's field-of-view).
  • processor 540 may use OCR techniques.
  • OCR techniques includes any method executable by a processor to retrieve machine-editable text from images of text, pictures, graphics, etc.
  • OCR techniques and other document recognition technology typically use a pattern matching process to compare the parts of an image to sample characters on a pixel-by-pixel basis. This process, however, does not work well when encountering new fonts, and when the image is not sharp.
  • apparatus 110 may use an OCR technique that compares a plurality of sets of image regions that are proximate to each other. Apparatus 110 may recognize characters in the image based on statistics relate to the plurality of the sets of image regions.
  • apparatus 110 can recognize small font characters defined by more than four pixels e.g., six or more pixels.
  • apparatus 110 may use several images from different perspectives to recognize text on a curved surface.
  • apparatus 110 can identify in image data an existence of printed information associated with a system command stored in a database and execute the system command thereafter. Examples of a system command include: “enter training mode,” “enter airplane mode,” “backup content,” “update operating system,” etc.
  • the disclosed OCR techniques may be implemented on various devices and systems and are not limited to use with apparatus 110 .
  • the disclosed OCR techniques provide accelerated machine reading of text.
  • a system is provided for audibly presenting a first part of a text from an image, while recognizing a subsequent part of the text. Accordingly, the subsequent part may be presented immediately upon completion of the presentation of the first part, resulting in a continuous audible presentation of standard text in less than two seconds after initiating OCR.
  • apparatus 110 may provide a wide range of functionality. More specifically, in embodiments consistent with the present disclosure, apparatus 110 may capture image data that includes textual and non-textual information disposed within a field-of-view of sensory unit 120 , identify one or more system commands associated with the textual information and non-textual information, and subsequently execute the one or more system commands automatically or in response to an input received from a user of apparatus 110 .
  • “textual information” may include, but is not limited to, printed text, handwritten text, coded text, text projected onto a corresponding surface, text displayed to the user through a corresponding display screen or touchscreen, and any additional or alternate textual information appropriate to the user and to apparatus 110 .
  • the “non-textual information” may include, but is not limited to, images of various triggers (e.g., a human appendage, a cane, or a pointer), images of physical objects, images of persons, images of surroundings, and images of other non-textual objects disposed within the field-of-view of sensory unit 120 .
  • apparatus 110 may perform an OCR process on the textual information within the captured image data, and may subsequently identify the one or more system commands based on portions of the recognized text. In other aspects, apparatus 110 may detect elements of non-textual information within the captured image data, and may initiate the identification of the one or more system commands in response to the detected non-textual information.
  • apparatus 110 may include a memory (e.g., memory 520 ) configured to store one or more applications and application modules that, when executed by a processor (e.g., processor 540 ), enable apparatus 110 identify and execute system commands based in textual and non-textual information within captured image data.
  • memory 520 may also be configured to store information that identifies the system commands and associates the system commands with elements of textual information (e.g., characters, words, phrases, and phrases), elements of non-textual information (e.g., images of triggers, physical objects, and persons), other system commands, and other events.
  • FIG. 6 illustrates an exemplary structure of memory 520 , in accordance with disclosed embodiments.
  • memory 520 may be configured to store an image data storage module 602 , an image processing module 604 , and an image database 612 .
  • image data storage module 602 upon execution by processor 540 , may enable processor 540 to receive data corresponding to one or more images captured by sensory unit 120 , and to store the captured image data within image database 612 .
  • the captured image data may include textual information (e.g., printed, handwritten, coded, projected, and/or displayed text) and non-textual information (e.g., images of physical objects, persons, and/or triggers), and processor 540 may store the image data in image database 612 with additional data specifying a time and/or date at which sensory unit 120 captured the image data.
  • image data storage module 602 may further enable processor 540 to configure wireless transceiver 530 to transmit the captured image data to one or more devices (e.g., an external data repository or a user's mobile device) in communication with apparatus 110 across a corresponding wired or wireless network.
  • one or more devices e.g., an external data repository or a user's mobile device
  • image processing module 604 upon execution by processor 540 , may enable processor 540 to process the captured image data and identify elements of textual information within the captured image data.
  • textual information consistent with the disclosed embodiments may include, but is not limited to, printed text (e.g., text disposed on a page of a newspaper, magazine, book), handwritten text, coded text, text displayed to a user through a display unit of a corresponding device (e.g., an electronic book, a television a web page, or an screen of a mobile application), text disposed on a flat or curved surface of an object within a field-of-view of apparatus 110 (e.g., a billboard sign, a street sign, text displayed on product packaging), text projected onto a corresponding screen (e.g., during presentation of a movie at a theater), and any additional or alternate text disposed within images captured by sensory unit 120 .
  • printed text e.g., text disposed on a page of a newspaper, magazine, book
  • handwritten text code
  • processor 540 may perform a layout analysis of the image data to identify textual information within the captured image data.
  • processor 540 may perform a layout analysis to detect paragraphs of text, blocks of text, zones and/or regions that include text, logos, titles, captions, footnotes, and any additional or alternate portions of the image data that includes printed, handwritten, displayed, coded, and/or projected text.
  • memory 520 may also include an optical character recognition (OCR) module 606 that, upon execution by processor 540 , enables processor 540 to perform one or more OCR processes on elements of textual information disposed within the image data.
  • OCR optical character recognition
  • processor 540 may execute image processing module 604 to identify portions of the captured image data that include textual information, and further, may execute OCR module 606 to retrieve machine-readable text from the textual information.
  • Memory 520 may also be configured to store a system command identification module 608 , a system command execution module 610 , and a system command database 614 .
  • system command database 140 may store linking information that associates one or more system commands with corresponding portions of captured image data.
  • a system command may include one or more instructions that, when executed by processor 540 , cause processor 540 to perform one or more actions or processes consistent with an operating system of apparatus 110 .
  • linking information may associate a particular system command with an element of recognized text (e.g., a word, a phrase, or a paragraph), an element of non-textual information (e.g., an image of a physical object, a person, or a trigger), combinations thereof, and any additional or alternate indicia of linkages between captured image data and system commands.
  • an element of recognized text e.g., a word, a phrase, or a paragraph
  • an element of non-textual information e.g., an image of a physical object, a person, or a trigger
  • system command identification module 608 may, upon execution by processor 540 , enable processor 540 to access linking information stored within system command database 614 , and to identify one or more system commands associated with portions of the captured image data based on the linking information. For example, processor 540 may leverage the accessed linking information to determine that a portion of machine-readable text corresponds to a system command executable by processor 540 . Additionally or alternatively, system command identification module 608 may enable processor 540 to identify a system command associated with a particular image within the captured image data, and further, a system command associated with a particular trigger in the captured image data, taken alone or in conjunction with machine-readable text.
  • System command execution module 610 may, upon execution by processor 540 , enable processor 540 to execute the identified system command and perform one or more actions and processes consistent with the operating system of apparatus 110 .
  • the identified system command may enable processor 540 to modify an operational state of apparatus 110 .
  • apparatus 110 may function in accordance with a “training” mode, a “sleep” mode, or an “airplane” mode, or other mode of operation consistent with the captured image data and the operating system of apparatus 110 .
  • the identified system command may enable processor 540 to modify a configuration of apparatus 110 .
  • processor 540 may modify a configuration of one or more of sensory unit 120 and processing unit 130 .
  • processor 540 may execute the identified system command to modify a configuration of an external device in communication with apparatus 110 across a corresponding wired or wireless communications network (e.g., a mobile telephone, a smart phone, or a tablet computer).
  • a corresponding wired or wireless communications network e.g., a mobile telephone, a smart phone, or a tablet computer.
  • the identified system command may enable processor 540 to execute one or more applications and/or perform one or more actions supported by an operating system of apparatus 110 .
  • processor 540 may initiate or terminate a recording of audio or video content, download a stored digital image (e.g., to image database 612 ), transmit a stored digital image to an external device in communication with apparatus 110 , update or restart the operating system of apparatus 110 , and establish, modify, or erase a user customization of apparatus 110 .
  • the identified system command may include a plurality of steps associated with corresponding system sub-commands, and processor 540 may be configured to execute sequentially the corresponding system sub-commands upon execution of system command execution module 610 .
  • the identified system command may update the operating system of apparatus 110 , and the corresponding sub-commands may enable processor 540 to obtain an updated version of the operating system, replace the existing version of the operating system with the updated version, and restart apparatus 110 upon completion of the replacement.
  • the identified system command may cause processor 540 perform an action on one or more files stored locally by apparatus 110 , and additionally or alternatively, on one or more files stored within a data repository or external device accessible to apparatus 110 over a corresponding communications network.
  • processor 540 may store image, video, and/or audio files in memory 520 , overwrite one or more files stored within memory 520 , and additionally or alternatively, transmit one or more files stored within memory 520 to the external device.
  • image database 612 and/or contextual rule database 614 may be located remotely from memory 520 , and be accessible to other components of apparatus 110 (e.g., processing unit 140 ) via one or more wireless connections (e.g., a wireless network). While two databases are shown, it should be understood that image database 612 and contextual rule database 614 may be combined and/or interconnected databases may make up the databases. Image database 612 and/or contextual rule database 614 may further include computing components (e.g., database management system, database server, etc.) configured to receive and process requests for data stored in associated memory devices.
  • computing components e.g., database management system, database server, etc.
  • Image data store module 602 , image processing module 604 , OCR module 606 , system command identification module 608 , and system command execution module 610 may be implemented in software, hardware, firmware, a mix of any of those, or the like. For example, if the modules are implemented in software, they may be stored in memory 520 , as shown in FIG. 6 . Other components of processing unit 140 and/or sensory unit 120 may be configured to perform processes to implement and facilitate operations of image data store module 602 , image processing module 604 , OCR module 606 , system command identification module 608 , and system command execution module 610 .
  • image data store module 602 , image processing module 604 , OCR module 606 , system command identification module 608 , and system command execution module 610 may include software, hardware, or firmware instructions (or a combination thereof) executable by one or more processors (e.g., processor 540 ), alone or in various combinations with each other.
  • image data store module 602 , image processing module 604 , OCR module 606 , system command identification module 608 , and system command execution module 610 may be configured to interact with each other and/or other modules of apparatus 110 to perform functions consistent with disclosed embodiments.
  • any of the disclosed modules may each include dedicated sensors (e.g., IR, image sensors, etc.) and/or dedicated application processing devices to perform the functionality associated with each module.
  • dedicated sensors e.g., IR, image sensors, etc.
  • FIG. 7 is a flow diagram of an exemplary process 700 for identifying and executing system commands based on captured image data, according to disclosed embodiments.
  • sensory unit 120 may capture image data that includes textual information and non-textual information disposed within a corresponding field-of-view.
  • Processing unit 130 may receive the captured image data, and processor 540 may execute one or more application modules to identify the textual and non-textual information, and to execute one or more system commands that correspond to the identified textual and non-textual information.
  • Process 700 provides further details on how processor 540 identifies and executes one or more system commands based on captured image data.
  • processor 540 may obtain captured image data.
  • sensory unit 120 may capture one or more images, and the captured image data may be transmitted to processing unit 140 across wired or wireless communications link 130 .
  • Processor 540 may, in step 702 , obtain the captured image data directly from sensory module 120 across communications link 130 , or alternatively, processor 540 may retrieve the captured image data from a corresponding data repository (e.g., image database 612 of memory 520 ).
  • the captured image data may include one or more regions of printed, displayed, or projected information.
  • processor 540 may analyze the captured image data to identify portions of the captured image data that include textual information.
  • the textual information may include, but is not limited to, printed, handwritten, projected, coded, or displayed text
  • processor 540 may perform a layout analysis to detect the textual information within the captured image data.
  • the detected portions may include, but are not limited to, paragraphs of text, blocks of text, zones and/or regions that include text, logos, titles, captions, footnotes, and any additional or alternate portions of the captured image data that includes printed, handwritten, displayed, coded, and/or projected text.
  • processor 540 may analyze the captured image data using image processing techniques in step 704 to identify non-textual information within the captured image data.
  • the non-textual information may include, but is not limited to, an image of a trigger (e.g., a human appendage or a cane), an image of a person (e.g., a police officer, a firefighter, or an airline employee), an image of a physical object (e.g., a streetlight and/or a pedestrian crossing signal, a particular vehicle, a map), and any additional or alternate image of relevant to the user of apparatus 110 .
  • a trigger e.g., a human appendage or a cane
  • an image of a person e.g., a police officer, a firefighter, or an airline employee
  • an image of a physical object e.g., a streetlight and/or a pedestrian crossing signal, a particular vehicle, a map
  • any additional or alternate image of relevant to the user of apparatus 110 e
  • processor 540 may identify one or more system commands associated with the textual and non-textual information.
  • processor 540 obtain linking information in step 706 that associates the system commands with corresponding portions of textual information, non-textual information, or combinations of textual and non-textual information.
  • processor 540 may access system command database 614 to obtain the linking information.
  • processor 540 may obtain the linking information from a data repository in communication with apparatus 110 across a corresponding communications network using appropriate communications protocols.
  • processor 540 may determine in step 706 that a system command is associated with textual information when the linking information for that system command includes at least a portion of the textual information. Additionally or alternatively, processor 540 may also determine in step 706 that the system command is associated with non-textual information when the linking information for that system command includes information identifying the non-textual information, either alone or in combination with textual information.
  • Processor 540 may execute the one or more identified system commands in step 708 . Upon execution of the one or more identified system commands by processor 540 , exemplary process 700 ends.
  • one or more of the executed system commands may correspond to an operation that modifies a functional state of apparatus 110 or an external device in communications with apparatus 110 (e.g., that causes apparatus 110 to enter a sleep mode, a training mode, or an airplane mode).
  • the executed system commands may also correspond to processes performed by and supported by an operating system of apparatus 110 , which include, but are not limited to, processes that initiate or terminate a recording of audio or video content, download a stored digital image (e.g., to image database 612 ), perform an action on one or more files associated with a user of apparatus 110 , transmit a stored digital image to an external device in communication with apparatus 110 , update or restart the operating system of apparatus 110 , backup stored content, obtain information indicative of a status of a battery of apparatus 110 , obtain audible instructions regarding one or more functions of apparatus 110 , and establish, modify, or erase a user customization of apparatus 110 (e.g., a volume associated with apparatus 110 or a gender of an audible narration provided by apparatus 110 ).
  • At least one of the system commands may be associated with a plurality of steps, which correspond to system sub-commands executed sequentially by processor 540 .
  • the disclosed embodiments are, however, not limited to such exemplary system commands, and in additional embodiments, processor 540 may identify (e.g., step 706 ) and execute (e.g., step 708 ) any additional or alternate system command appropriate to processor 540 , apparatus 110 , and the captured image data.
  • FIG. 8 is a flow diagram of an exemplary process 800 for identifying and executing system commands based on text within captured image data, according to disclosed embodiments.
  • sensory unit 120 of apparatus 110 may capture image data that includes textual information.
  • processor 540 of apparatus 510 may execute one or more application modules to identify the textual information within the captured image data, retrieve machine-readable text from the identified textual information, and execute one or more system commands associated with the machine-readable text.
  • Process 800 provides further details on how processor 540 identifies and executes one or more system commands based on text disposed within portions of captured image data.
  • processor 540 may obtain captured image data.
  • sensory unit 120 may capture one or more images, and the captured image data may be transmitted to processing unit 140 across wired or wireless communications link 130 .
  • processor 540 may obtain the captured image data in step 802 from sensory module 120 across communications link 130 , or alternatively, processor 540 may retrieve the captured image data from a corresponding data repository (e.g., image database 612 of memory 520 ).
  • the captured image data may, in certain aspects, include at least one of textual information (e.g., printed text, handwritten text, displayed text, projected text, and coded text) and non-textual information (e.g., images of physical objects, persons, and triggers).
  • Processor 540 may analyze the captured image data in step 804 to identify portions of the captured image data that include the textual information.
  • processor 540 may perform a layout analysis to detect the textual information within the captured image data.
  • the detected textual information may include, but are not limited to, paragraphs of text, blocks of text, zones and/or regions that include text, logos, titles, captions, footnotes, and any additional or alternate portions of the image data that includes printed, handwritten, displayed, coded, and/or projected text.
  • processor 540 may perform an OCR process on the detected textual information to identify and retrieve machine-readable text. Further, in step 808 , processor 540 may identify one or more system commands associated with the recognized text based on linking information that associates the system commands with corresponding machine-readable text. In certain aspects, system command database 614 may store the linking information, and in step 808 , processor 540 may access system command database 614 to obtain the linking information, as described above.
  • Processor 540 may execute the one or more identified system commands in step 810 . Upon execution of the one or more identified system commands by processor 540 , exemplary process 800 ends.
  • one or more of the system commands may correspond to an operation that modifies a functional state of apparatus 110 or an external device in communications with apparatus 110 (e.g., that causes apparatus 110 to enter a sleep mode, a training mode, or an airplane mode).
  • One or more of the system commands may also correspond to processes performed by and supported by an operating system of apparatus 110 , which include, but are not limited to, processes that initiate or terminate a recording of audio or video content, download a stored digital image (e.g., to image database 612 ), perform actions on one or more files associated with a user of apparatus 110 , transmit a stored digital image to an external device in communication with apparatus 110 , update or restart the operating system of apparatus 110 , backup stored content, obtain information indicative of a status of a battery of apparatus 110 , obtain audible instructions regarding one or more functions of apparatus 110 , and establish, modify, or erase a user customization of apparatus 110 (e.g., a volume associated with apparatus 110 or a gender of an audible narration provided by apparatus 110 ).
  • processor 540 may identify system commands associated with one or more of textual information and non-textual information disposed within captured image data (e.g., step 706 of FIG. 7 and step 808 of FIG. 8 ), and may execute the identified system commands (e.g., in step 708 of FIG. 7 and step 810 of FIG. 8 ) without tactile or audible confirmation from a user.
  • the executed system commands may be associated with significant and often irreversible impacts on an operation of apparatus 110 .
  • the executed system commands may erase a user-established customization of apparatus 110 , or alternatively, delete or modify one or more image filed stored by apparatus 110 .
  • processor 540 may execute the identified system commands in response to user input that confirms the user's intentions to execute the identified system commands.
  • FIG. 9 is a flow diagram of an exemplary process 900 for executing system commands based on received user confirmation, according to disclosed embodiments.
  • processor 540 may identify one or more system commands associated with at least one of textual or non-textual information disposed within captured image data.
  • processor 540 may execute the identified system commands in response to confirmation of the user's intention to execute the identified system commands.
  • Process 900 provides further details on how processor 540 requests a confirmation of the user's intention to execute a system command, receives and processes input from the user, and executes the system command based on the received input.
  • processor 540 may identify a system command associated with textual information, non-textual information, or combinations of textual and non-textual information within captured image data.
  • the identified system command may be associated with one or more portions of machine-readable text retrieved from the textual information using a corresponding OCR process, and additionally or alternatively, may be associated with elements of non-textual information disclosed within the captured image data.
  • the identified system command may correspond to an operation that modifies a functional state of apparatus 110 or an external device in communications with apparatus 110 (e.g., that causes apparatus 110 to enter a sleep mode, a training mode, or an airplane mode).
  • the identified system command may cause processor 540 to initiate or terminate a recording of audio or video content, download a stored digital image (e.g., to image database 612 ), modify one or more files associated with the user, transmit a stored digital image to an external device in communication with apparatus 110 , perform an operation on a stored file, update or restart the operating system of apparatus 110 , backup stored content, obtain information indicative of status of a battery of apparatus 110 , obtain audible instructions regarding one or more functions of apparatus 110 , and establish, modify, or erase a user customization of apparatus 110 (e.g., a volume associated with apparatus 110 or a gender of an audible narration provided by apparatus 110 ).
  • at least one of the system commands may be associated with a plurality of
  • processor 540 may request the user confirm an intention to execute of the identified system command in step 904 .
  • processor 540 may generate an audible request, which may be presented to the user through a speaker or a bone conduction headphone associated with processing unit 140 .
  • the disclosed embodiments are, however, not limited to such audible requests, and in further embodiments, processor 540 may generate and provide a textual request to the user (e.g., by transmitting the textual request as a message to a mobile communications device of the user in communication with apparatus 110 ), a tactile request to the user (e.g., a vibration of apparatus 110 of a predetermined intensity and duration), or through any additional or alternate mechanism appropriate to the user and to apparatus 110 .
  • processor 540 may detect user input indicative of a response to the request for confirmation.
  • the detected user input may include an audible response to the requested spoken by the user into a microphone associated with apparatus 110 .
  • the user input may include a tactile response to the request for confirmation (e.g., the user may tap a sensor or other input device disposed on a surface of apparatus 110 ).
  • the user input may include any additional or alternate form or combination of inputs appropriate to the user and to apparatus 110 .
  • processor 540 may determine in step 908 whether the user confirmed the intention to execute of the identified system command. If processor 540 determine that the user confirms the execution (e.g., step 908 ; YES), processor 540 may execute the identified system command in step 910 , as described above. Exemplary process 900 is then complete. Alternatively, if processor 540 determines that the user elects not to confirm the execution (e.g., step 908 ; NO), exemplary process 900 passes back to step 902 , and processor 540 identified an additional system command for execution, as described above.
  • apparatus 110 may capture image data that includes one or more of textual and non-textual information, identify a system command that corresponds to the textual and/or visual information, and subsequently execute the identified system command to modify an operational state of apparatus 110 .
  • a user of apparatus 110 may board an airplane and, upon locating a corresponding seat, browse through materials placed within a pocket or storage accessible to the user (e.g., a seat-back pocket).
  • the user may access an in-flight menu 1000 for the trip, and apparatus 110 may capture an image that includes a portion 1020 of menu 1000 corresponding to a field-of-view of sensory unit 120 .
  • processor 540 may identify textual information within the captured image, may perform an OCR process that retrieves machine-readable text from the textual information, and may access system command database 614 to obtain linking information associating one or more system commands with corresponding portions of the recognized text. For example, as illustrated in FIG. 10 , processor 540 may leverage the linking information to determine that text portion 1032 (e.g., “UnitedTM Economy”), text portion 1034 (e.g., “Welcome Aboard!”), and text portion 1036 (e.g., “flights”) each correspond to a system command that causes apparatus 110 to enter an airplane mode. In certain embodiments, processor 540 may execute the corresponding system command, which disposes apparatus 110 into an airplane mode for the duration of the flight.
  • text portion 1032 e.g., “UnitedTM Economy”
  • text portion 1034 e.g., “Welcome Aboard!”
  • text portion 1036 e.g., “flights”
  • processor 540 may execute the corresponding system command,
  • processor 540 may identify one or more system commands associated with non-textual information disposed within the captured image data. For example, as illustrated in FIG. 11 , a user of apparatus 110 may view an in-flight safety video 1100 after boarding an airplane, and apparatus 110 may capture an image that includes a portion 1120 of in-flight safety video 1100 . Processor 540 may analyze portion 1120 to identify an image 1140 of a flight attendant demonstrating a proper technique for securing the user's seat belt, and may leverage linking information to determine that image 1140 corresponds to a system command that causes apparatus 110 to enter the airplane mode. As described above, processor 540 may execute the corresponding system command, which places apparatus 110 into an airplane mode during the flight.
  • apparatus 110 may capture image data that includes textual and non-textual information projected onto a corresponding surface visible to a user of apparatus 110 , and may identify and execute one or more system commands associated with the projected textual and/or non-textual information.
  • a user of apparatus 110 may visit a movie theater to view a recently released feature film.
  • the theater may project a reminder onto a screen 1200 asking viewers to turn off or silence their mobile communications devices, and apparatus 110 may capture an image that includes a portion 1220 of the reminder corresponding to a field-of-view of sensory unit 120 .
  • Processor 540 may identify textual information within the captured image, may perform an OCR process that retrieves machine-readable text from the textual information, and may obtain linking information associating one or more system commands with corresponding portions of the recognized text. For example, as illustrated in FIG. 12 , processor 540 may leverage the linking information to determine that text portion 1232 (e.g., “Turn Off Your Phones”) corresponds to a system command that causes apparatus 110 to enter a “sleep” or “silent” mode. In certain embodiments, processor 540 may execute the corresponding system command, which places apparatus 110 into the corresponding sleep or silent mode for the duration of the feature.
  • text portion 1232 e.g., “Turn Off Your Phones”
  • processor 540 may execute the corresponding system command, which places apparatus 110 into the corresponding sleep or silent mode for the duration of the feature.
  • Apparatus 110 may also capture image data including textual and non-textual information displayed to user of apparatus 110 through a display unit or touchscreen of a user device (e.g., a television, a smart phone, tablet computer, laptop, or desktop computer).
  • a user device e.g., a television, a smart phone, tablet computer, laptop, or desktop computer.
  • the user may view a web page 1300 (or other electronic document, such as an email message or text message) that prompts the user to visit a corresponding “app store” and upgrade an operating system without cost
  • apparatus 110 may capture an image that includes a portion 1320 of displayed web page 1300 corresponding to a field-of-view of sensory unit 120 .
  • processor 540 may identify textual information within the captured image, may perform an OCR process that retrieves machine-readable text from the textual information, and may obtain linking information associating one or more system commands with corresponding portions of the recognized text. For example, as shown in FIG. 13 , processor 540 may leverage the linking information to determine that text portion 1332 (e.g., “Upgrade to the New OS”) corresponds to a system command that causes apparatus 110 to retrieve and install an update to an operating system of apparatus 110 . Processor 540 may then execute the corresponding system command, which causes apparatus 110 to obtain and install the corresponding update, and further, to restart apparatus 110 to complete an installation process.
  • text portion 1332 e.g., “Upgrade to the New OS”
  • Processor 540 may then execute the corresponding system command, which causes apparatus 110 to obtain and install the corresponding update, and further, to restart apparatus 110 to complete an installation process.
  • apparatus 110 may capture image data that includes handwritten textual information, and may identify and execute one or more system commands associated with the handwritten textual information. For example, as illustrated in FIG. 14 , a user of apparatus 110 may receive a letter 1400 from his or her mother that asks the user to provide copies of digital images by email. In such an instance, apparatus 110 may capture an image that includes a portion 1420 of letter 1400 corresponding to a field-of-view of sensory unit 120 .
  • Processor 540 may analyze the captured image data to identify the handwritten textual information, perform an OCR process that retrieves machine-readable text from the handwritten textual information, and obtain linking information associating one or more system commands with corresponding portions of the handwritten text. Using the linking information, processor 540 may determine that text portion 1432 (e.g., “send copies of your new pictures to me”) corresponds to a system command that causes apparatus 110 to identify one or more stored digital images (e.g., within image database 612 ), and download the identified digital images to a user device in communications with apparatus 110 over a corresponding wired or wireless communications network.
  • text portion 1432 e.g., “send copies of your new pictures to me”
  • processor 540 may determine that text portion 1432 (e.g., “send copies of your new pictures to me”) corresponds to a system command that causes apparatus 110 to identify one or more stored digital images (e.g., within image database 612 ), and download the identified digital images to a user device in communications with apparatus 110
  • Processor 540 may execute the corresponding system command, which causes apparatus 110 to download the identified images to the user's communications device. Further, in additional embodiments, the executed system command may also provide instructions to the user's communications device to automatically transmit the downloaded photos to the user's mother at email address 1434 .
  • apparatus 100 may identify and execute system commands based on combinations of textual and non-textual information disposed within captured image data. For example, a user of apparatus 110 may approach an exterior exit of a building, but may be unaware of a street onto which the exit leads. In such an instance, the user may point to an exit sign disposed above the exit door, and apparatus 110 may capture an image that include both the exit sign, with its corresponding textual information, and also an existence of the user's finger within the field-of-view of apparatus 110 .
  • a captured image 1500 may include an image of an exit door 1510 , textual information corresponding to an exit sign 1520 (e.g., “EXIT TO STREET”), and an image of a trigger 1530 (which corresponds to the user's finger).
  • processor 540 may identify the existence of the textual information and non-textual information associated with trigger 1530 , may identify a system command that corresponds to the presence of both the textual information (e.g., “EXIT TO STREET”) and trigger 1530 within the captured image data, and execute the system command to provide positional information to the user of apparatus 110 .
  • apparatus 110 may access a positioning system (e.g., a GPS unit) to obtain a current position of apparatus 110 , and access a mapping system to identify a street onto which exit door 1410 leads.
  • a positioning system e.g., a GPS unit
  • the positioning and mapping systems may be executed by apparatus 110 , or alternatively, may be executed by an external device in communication with apparatus 110 over a corresponding wired or wireless communications network.
  • Processor 540 may then provide an audible indication of the determined street to the user of apparatus 110 (e.g., through a speaker or a bone conduction headphone associated with processing unit 140 ).
  • Programs based on the written description and disclosed methods are within the skill of an experienced developer.
  • the various programs or program modules can be created using any of the techniques known to one skilled in the art or can be designed in connection with existing software.
  • program sections or program modules can be designed in or by means of .Net Framework, .Net Compact Framework (and related languages, such as Visual Basic, C, etc.), Java, C++, Objective-C, HTML, HTML/AJAX combinations, XML, or HTML with included Java applets.
  • One or more of such software sections or modules can be integrated into a computer system or existing e-mail or browser software.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Artificial Intelligence (AREA)
  • Ophthalmology & Optometry (AREA)
  • Veterinary Medicine (AREA)
  • Public Health (AREA)
  • Animal Behavior & Ethology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Vascular Medicine (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Biomedical Technology (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

An apparatus and method are provided for identifying and executing system commands based on captured image data. In one implementation, a method is provided for executing at least one command retrieved from a captured image. According to the method, image data is received from an image sensor, and the image data may include printed information associated with a specific system commands. The method further includes accessing a database including a plurality of predefined system commands associated with printed information, and identifying in the image data an existence of the printed information associated with the specific system command stored in the database. The specific system command is executed after the printed information associated with the specific system command is identified.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application claims the benefit of priority of U.S. Provisional Patent Application No. 61/775,603, filed Mar. 10, 2013, U.S. Provisional Patent Application No. 61/799,649, filed on Mar. 15, 2013, and U.S. Provisional Patent Application No. 61/830,122, filed on Jun. 2, 2013, the disclosures of which are incorporated herein by reference in their entirety.
  • BACKGROUND
  • I. Technical Field
  • This disclosure generally relates to devices and methods for providing information to a user. More particularly, this disclosure relates to devices and methods for providing information to a user by processing images captured from the environment of the user.
  • II. Background Information
  • Visual acuity is an indication of the clarity or clearness of a person's vision that is commonly measured twenty feet from an object. When measuring visual acuity, the ability of a person to identify black symbols on a white background at twenty feet is compared to the ability of a person with normal eyesight. This comparison can be symbolized by a ratio. For example, a ratio of 20/70 vision means a person located at a distance of twenty feet can see what a person with normal vision can see at seventy feet. A person has low vision if he or she has a visual acuity between 20/70 and 20/200 in the better-seeing eye that cannot be corrected or improved with regular eyeglasses. The prevalence of low vision is about one in a hundred for people in their sixties and rapidly increases to one in five for people in their nineties. Low vision may also depend on the environment. For example, some individuals may be able to see only when there is ample light.
  • A person may have low vision (also known as visual impairment) for several reasons. Other than eye damage and failure of the brain to receive visual cues sent by the eyes, different medical conditions may cause visual impairment. Medical conditions that may cause visual impairment include Age-related Macular Degeneration (AMD), retinitis pigmentosa, cataract, and diabetic retinopathy.
  • AMD, which usually affects adults, is caused by damage to the retina that diminishes vision in the center of a person's visual field. The lifetime risk for developing AMD is strongly associated with certain genes. For example, the lifetime risk of developing AMD is 50% for people that have a relative with AMD, versus 12% for people that do not have relatives with AMD.
  • Retinitis pigmentosa is an inherited, degenerative eye disease that causes severe vision impairment and often blindness. The disease process begins with changes in pigment and damage to the small arteries and blood vessels that supply blood to the retina. There is no cure for retinitis pigmentosa and no known treatment can stop the progressive vision loss caused by the disease.
  • A cataract is a clouding of the lens inside the eye which leads to a decrease in vision. Over time, a yellow-brown pigment is deposited within the lens and obstructs light from passing and being focused onto the retina at the back of the eye. Biological aging is the most common cause of a cataract, but a wide variety of other risk factors (e.g., excessive tanning, diabetes, prolonged steroid use) can cause a cataract.
  • Diabetic retinopathy is a systemic disease that affects up to 80% of all patients who have had diabetes for ten years or more. Diabetic retinopathy causes microvascular damage to a blood-retinal barrier in the eye and makes the retinal blood vessels more permeable to fluids.
  • People with low vision experience difficulties due to lack of visual acuity, field-of-view, color perception, and other visual impairments. These difficulties affect many aspects of everyday life. Persons with low vision may use magnifying glasses to compensate for some aspects of low vision. For example, if the smallest letter a person with 20/100 vision can read is five times larger than the smallest letter that a person with 20/20 vision can read, then 5× magnification should make everything that is resolvable to the person with 20/20 vision resolvable to the person with low vision. However, magnifying glasses are expensive and cannot remedy all aspects of low vision. For example, a person with low vision who wears magnifying glasses may still have a difficult time recognizing details from a distance (e.g., people, signboards, traffic lights, etc.). Accordingly, there is a need for other technologies that can assist people who have low vision accomplish everyday activities.
  • SUMMARY
  • Embodiments consistent with the present disclosure provide devices and methods for providing information to a user by processing images captured from the environment of the user. The disclosed embodiments may assist persons who have low vision.
  • Consistent with disclosed embodiments, an apparatus may be operated by at least one command retrieved from a captured image. In one aspect, the apparatus includes an image sensor configured to be worn by a user and to capture image data from an environment of the user, a mobile power source for powering at least the image sensor, and at least one portable processor device configured for tethering to the image sensor. The at least one portable processor device may be configured to access a database of a plurality of predefined system commands associated with printed information in the image data, and identify in the image data an existence of printed information associated with a specific system command stored in the database. The at least one portable processor device may be further configured to execute the specific system command after the printed information associated with the specific system command is identified.
  • Consistent with additional disclosed embodiments, an apparatus may be operated by at least one command retrieved from a captured image. In one aspect, the apparatus may include an image sensor configured to be worn by a user and to capture image data from an environment of the user, and at least one portable processor device configured for tethering to the image sensor. The at least one portable processor device may be configured to receive the image data from the image sensor. The image data may include printed information associated with a specific system command. The at least one portable processor device may be further configured to identify in the image data an existence of the printed information, identify the specific system command associated with the printed information, and execute the specific system command after the specific system command is identified.
  • Consistent with further disclosed embodiments, a method for executing at least one command retrieved from a captured image includes receiving image data from an image sensor. In one aspect, the image data includes printed information associated with a specific system commands. The method further includes accessing a database including a plurality of predefined system commands associated with printed information, identifying in the image data an existence of the printed information associated with the specific system command stored in the database, and executing the specific system command after the printed information associated with the specific system command is identified.
  • Consistent with other disclosed embodiments, non-transitory computer-readable storage media may store program instructions, which are executed by at least one processor device and perform any of the methods described herein.
  • The foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the claims.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate various disclosed embodiments. In the drawings:
  • FIG. 1 is a schematic illustration of a user wearing an apparatus for aiding persons who have low vision;
  • FIG. 2A is a schematic illustration of an example of a support from a first viewpoint;
  • FIG. 2B is a schematic illustration of the support shown in FIG. 2A from a second viewpoint;
  • FIG. 2C is a schematic illustration of the support shown in FIG. 2A mounted on a pair of glasses;
  • FIG. 2D is a schematic illustration of a sensory unit attached to the support that is mounted on the pair of glasses shown in FIG. 2C;
  • FIG. 2E is an exploded view of FIG. 2D;
  • FIG. 3A is a schematic illustration of an example of a sensory unit from a first viewpoint;
  • FIG. 3B is a schematic illustration of the sensory unit shown in FIG. 3A from a second viewpoint;
  • FIG. 3C is a schematic illustration of the sensory unit shown in FIG. 3A from a third viewpoint;
  • FIG. 3D is a schematic illustration of the sensory unit shown in FIG. 3A from a fourth viewpoint;
  • FIG. 3E is a schematic illustration of the sensory unit shown in FIG. 3A in an extended position;
  • FIG. 4A is a schematic illustration of an example of a processing unit from a first viewpoint;
  • FIG. 4B is a schematic illustration of the processing unit shown in FIG. 4A from a second viewpoint;
  • FIG. 5A is a block diagram illustrating an example of the components of an apparatus for aiding persons who have low vision according to a first embodiment;
  • FIG. 5B is a block diagram illustrating an example of the components of an apparatus for aiding persons who have low vision according to a second embodiment;
  • FIG. 5C is a block diagram illustrating an example of the components of an apparatus for aiding persons who have low vision according to a third embodiment;
  • FIG. 5D is a block diagram illustrating an example of the components of an apparatus for aiding persons who have low vision according to a fourth embodiment;
  • FIG. 6 illustrates an exemplary set of application modules and databases, according to disclosed embodiments;
  • FIG. 7 is a flow diagram of an exemplary process for identifying and executing system commands based on captured image data, according to disclosed embodiments;
  • FIG. 8 is a flow diagram of an exemplary process for identifying and executing system commands based on textual information within captured image data, according to disclosed embodiments;
  • FIG. 9 is a flow diagram of an exemplary process for executing an identified system command, according to disclosed embodiments; and
  • FIGS. 10-15 illustrate exemplary image data captured by an apparatus for aiding persons who have low vision, according to disclosed embodiments.
  • DETAILED DESCRIPTION
  • The following detailed description refers to the accompanying drawings. Wherever possible, the same reference numbers are used in the drawings and the following description to refer to the same or similar parts. While several illustrative embodiments are described herein, modifications, adaptations and other implementations are possible. For example, substitutions, additions or modifications may be made to the components illustrated in the drawings, and the illustrative methods described herein may be modified by substituting, reordering, removing, or adding steps to the disclosed methods. Accordingly, the following detailed description is not limited to the disclosed embodiments and examples. Instead, the proper scope is defined by the appended claims.
  • Disclosed embodiments provide devices and methods for assisting people who have low vision. One example of the disclosed embodiments is a device that includes a camera configured to capture real-time image data from the environment of the user. The device also includes a processing unit configured to process the real-time image data and provide real-time feedback to the user. The real-time feedback may include, for example, an output that audibly identifies individuals from a distance, reads signboards, and/or identifies the state of a traffic light.
  • FIG. 1 illustrates a user 100 wearing an apparatus 110 connected to glasses 105, consistent with a disclosed embodiment. Apparatus 110 may provide functionality for aiding user 100 with various daily activities that are otherwise difficult for user 100 to accomplish due to low vision. Glasses 105 may be prescription glasses, magnifying glasses, nonprescription glasses, safety glasses, sunglasses, etc.
  • As shown in FIG. 1, apparatus 110 includes a sensory unit 120 and a processing unit 140. Sensory unit 120 may be connected to a support (not shown in FIG. 1) that is mounted on glasses 105. In addition, sensory unit 120 may include an image sensor (not shown in FIG. 1) for capturing real-time image data of the field-of-view of user 100. The term “image data” includes any form of data retrieved from optical signals in the near-infrared, infrared, visible, and ultraviolet spectrums. The image data may be used to form video clips and/or photographs.
  • Processing unit 140 may communicate wirelessly or via a wire 130 connected to sensory unit 120. In some embodiments, processing unit 140 may produce an output of audible feedback to user 100 (e.g., using a speaker or a bone conduction headphone).
  • Apparatus 110 is one example of a device capable of implementing the functionality of the disclosed embodiments. Other devices capable of implementing the disclosed embodiments include, for example, a mobile computer with a camera (e.g., a smartphone, a smartwatch, a tablet, etc.) or a clip-on-camera configured to communicate with a processing unit (e.g., a smartphone or a dedicated processing unit, which can be carried in a pocket). A person skilled in the art will appreciate that different types of devices and arrangements of devices may implement the functionality of the disclosed embodiments.
  • FIG. 2A is a schematic illustration of an example of a support 210. As discussed in connection with FIG. 1, support 210 may be mounted on glasses 105 and connect to sensory unit 120. The term “support” includes any device or structure that enables detaching and reattaching of a device including a camera to a pair of glasses or to another object (e.g., a helmet). Support 210 may be made from plastic (e.g., polycarbonate), metal (e.g., aluminum), or a combination of plastic and metal (e.g., carbon fiber graphite). Support 210 may be mounted on glasses 105 using screws, bolts, snaps, or any fastening means used in the art.
  • As shown in FIG. 2A, support 210 includes a base 230 connected to a clamp 240. A bridge 220 connects base 230 with clamp 240. Base 230 and clamp 240 enable sensory unit 120 to easily attach to and detach from support 210. In one embodiment, base 230 may include an internally threaded member 250 for cooperating with a screw (not shown in FIG. 2A) to mount support 210 on glasses 105.
  • FIG. 2B illustrates support 210 from a second viewpoint. The viewpoint shown in FIG. 2B is from a side orientation of support 210.
  • FIG. 2C illustrates support 210 mounted on glasses 105. Support 210 may be configured for mounting on any kind of glasses (e.g., eyeglasses, sunglasses, 3D glasses, safety glasses, etc.). As shown in FIG. 2C, sensory unit 120 is not attached to support 210 and, accordingly, support 210 may be sold separately from apparatus 110. This arrangement makes apparatus 110 compatible with a variety of glasses. For example, some users may have several pairs of glasses and may wish to mount a support on each pair of glasses.
  • In other embodiments, support 210 may be an integral part of a pair of glasses, or sold and installed by an optometrist. For example, support 210 may be configured for mounting on the arms of glasses 105 near the frame front, but before the hinge. Alternatively, support 210 may be configured for mounting on the bridge of glasses 105.
  • FIG. 2D illustrates sensory unit 120 attached to support 210 (not visible in FIG. 2D), and support 210 mounted on glasses 105. In some embodiments, support 210 may include a quick release mechanism for disengaging and reengaging sensory unit 120. For example, support 210 and sensory unit 120 may include magnetic elements. As an alternative example, support 210 may include a male latch member and sensory unit 120 may include a female receptacle.
  • When sensory unit 120 is attached (or reattached) to support 210, the field-of-view of a camera associated with sensory unit 120 may be substantially identical to the field-of-view of user 100. Accordingly, in some embodiments, after support 210 is attached to sensory unit 120, directional calibration of sensory unit 120 may not be required because sensory unit 120 aligns with the field-of-view of user 100.
  • In other embodiments, support 210 may include an adjustment component (not shown in FIG. 2D) to enable calibration of the aiming direction of sensory unit 120 in a substantially set position that is customized to user 100 wearing glasses 105. For example, the adjustment component may include an adjustable hinge to enable vertical and horizontal alignment of the aiming direction of sensory unit 120. Adjusting the alignment of sensory unit 120 may assist users who have a unique and individual visual impairment. The adjustment may be internal or external to sensory unit 120.
  • FIG. 2E is an exploded view of the components shown in FIG. 2D. Sensory unit 120 may be attached to glasses 105 in the following way. Initially, support 210 may be mounted on glasses 105 using screw 260. Next, screw 260 may be inserted into internally threaded member 250 (not shown in FIG. 2E) in the side of support 210. Sensory unit 120 may then be clipped on support 210 such that it is aligned with the field-of-view of user 100.
  • FIG. 3A is a schematic illustration of sensory unit 120 from a first viewpoint. As shown in FIG. 3A, sensory unit 120 includes a feedback-outputting unit 340 and an image sensor 350.
  • Sensory unit 120 is configured to cooperate with support 210 using clip 330 and groove 320, which fits the dimensions of support 210. The term “sensory unit” refers to any electronic device configured to capture real-time images and provide a non-visual output. Furthermore, as discussed above, sensory unit 120 includes feedback-outputting unit 340. The term “feedback-outputting unit” includes any device configured to provide information to a user.
  • In some embodiments, feedback-outputting unit 340 may be configured to be used by blind persons and persons with low vision. Accordingly, feedback-outputting unit 340 may be configured to output nonvisual feedback. The term “feedback” refers to any output or information provided in response to processing at least one image in an environment. For example, feedback may include a descriptor of a branded product, an audible tone, a tactile response, and/or information previously recorded by user 100. Furthermore, feedback-outputting unit 340 may comprise appropriate components for outputting acoustical and tactile feedback that people with low vision can interpret. For example, feedback-outputting unit 340 may comprise audio headphones, a speaker, a bone conduction headphone, interfaces that provide tactile cues, vibrotactile stimulators, etc.
  • As discussed above, sensory unit 120 includes image sensor 350. The term “image sensor” refers to a device capable of detecting and converting optical signals in the near-infrared, infrared, visible, and ultraviolet spectrums into electrical signals. The electric signals may be used to form an image based on the detected signal. For example, image sensor 350 may be part of a camera. In some embodiments, when sensory unit 120 is attached to support 210, image sensor 350 may acquire a set aiming direction without the need for directional calibration. The set aiming direction of image sensor 350 may substantially coincide with the field-of-view of user 100 wearing glasses 105. For example, a camera associated with image sensor 350 may be installed within sensory unit 120 in a predetermined angle in a position facing slightly downwards (e.g., 5-15 degrees from the horizon). Accordingly, the set aiming direction of image sensor 350 may match the field-of-view of user 100.
  • As shown in FIG. 3A, feedback-outputting unit 340 and image sensor 350 are included in a housing 310. The term “housing” refers to any structure that at least partially covers, protects, or encloses a sensory unit. The housing may be made from one or more different materials (e.g., plastic or aluminum). In one embodiment, housing 310 may be designed to engage with a specific pair of glasses having a specific support (e.g., support 210). In an alternative embodiment, housing 310 may be designed to engage more than one pair of glasses, each having a support (e.g., support 210) mounted thereon. Housing 310 may include a connector for receiving power from an external mobile-power-source or an internal mobile-power-source, and for providing an electrical connection to image sensor 350.
  • FIG. 3B is a schematic illustration of sensory unit 120 from a second viewpoint. As shown in FIG. 3B, housing 310 includes a U-shaped element. An inner distance “d” between each side of the U-shaped element is larger than the width of the arm of glasses 105. Additionally, the inner distance “d” between each side of the U-shaped element is substantially equal to a width of support 210. The inner distance “d” between each side of the U-shaped element may allow user 100 to easily attach housing 310 to support 210, which may be mounted on glasses 105. As illustrated in FIG. 3B, image sensor 350 is located on one side of the U-shaped element and feedback-outputting unit 340 is located on another side of the U-shaped element.
  • FIG. 3C is a schematic illustration of sensory unit 120 from a third viewpoint. The viewpoint shown in FIG. 3C is from a side orientation of sensory unit 120 and shows the side of the U-shaped element that includes image sensor 350.
  • FIG. 3D is a schematic illustration of sensory unit 120 from a fourth viewpoint. The viewpoint shown in FIG. 3D is from an opposite side of the orientation shown in FIG. 3C. FIG. 3D shows the side of the U-shaped element that includes feedback-outputting unit 340.
  • FIG. 3E is a schematic illustration of the sensory unit shown in FIG. 3A in an extended position. As shown in FIG. 3E, a portion of sensory unit 120 is extendable and wire 130 may pass through a channel of sensory unit 120. This arrangement may allow a user to adjust the length and the angle of sensory unit 120 without interfering with the operation of apparatus 110.
  • User 100 may adjust the U-shaped element of sensory unit 120 so that feedback-outputting unit 340 is positioned adjacent to the user's ear or the user's temple. Accordingly, sensory unit 120 may be adjusted for use with different users who may have different head sizes. Alternatively, a portion of sensory unit 120 may be flexible such that the angle of feedback-outputting unit 340 is relative to the user's ear or the user's temple.
  • FIG. 4A is a schematic illustration of processing unit 140. As shown in FIG. 4A, processing unit 140 has a rectangular shape, which easily fits in a pocket of user 100. Processing unit 140 includes a connector 400 for connecting wire 130 to processing unit 140. Wire 130 may be used to transmit power from processing unit 140 to sensory unit 120, and data to and from processing unit 140 to sensory unit 120. Alternatively, wire 130 may comprise multiple wires (e.g., a wire dedicated to power transmission and a wire dedicated to data transmission).
  • Processing unit 140 includes a function button 410 for enabling user 100 to provide input to apparatus 110. Function button 410 may accept different types of tactile input (e.g., a tap, a click, a double-click, a long press, a right-to-left slide, a left-to-right side). In some embodiments, each type of input may be associated with a different action. For example, a tap may be associated with the function of confirming an action, while a right-to-left slide may be associated with the function of repeating the last output.
  • FIG. 4B is a schematic illustration of processing unit 140 from a second viewpoint. As shown in FIG. 4B, processing unit 140 includes a volume switch 420, a battery pack compartment 430, and a power port 440. In one embodiment, user 100 may charge apparatus 110 using a charger connectable to power port 440. Alternatively, user 100 may replace a battery pack (not shown) stored in battery pack compartment 430.
  • FIG. 5A is a block diagram illustrating the components of apparatus 110 according to a first embodiment. Specifically, FIG. 5A depicts an embodiment in which apparatus 110 comprises sensory unit 120 and processing unit 140, as discussed in connection with, for example, FIG. 1. Furthermore, sensory unit 120 may be physically coupled to support 210.
  • As shown in FIG. 5A, sensory unit 120 includes feedback-outputting unit 340 and image sensor 350. Although one image sensor is depicted in FIG. 5A, sensory unit 120 may include a plurality of image sensors (e.g., two image sensors). For example, in an arrangement with more than one image sensor, each of the image sensors may be face a different direction or be associated with a different camera (e.g., a wide angle camera, a narrow angle camera, an IR camera, etc.). In other embodiments (not shown in the figure) sensory unit 120 may also include buttons and other sensors such as a microphone and inertial measurements devices.
  • As further shown in FIG. 5A, sensory unit 120 is connected to processing unit 140 via wire 130. Processing unit 140 includes a mobile power source 510, a memory 520, a wireless transceiver 530, and a processor 540.
  • Processor 540 may constitute any physical device having an electric circuit that performs a logic operation on input or inputs. For example, processor 540 may include one or more integrated circuits, microchips, microcontrollers, microprocessors, all or part of a central processing unit (CPU), graphics processing unit (GPU), digital signal processor (DSP), field-programmable gate array (FPGA), or other circuits suitable for executing instructions or performing logic operations. The instructions executed by processor 540 may, for example, be pre-loaded into a memory integrated with or embedded into processor 540 or may be stored in a separate memory (e.g., memory 520). Memory 520 may comprise a Random Access Memory (RAM), a Read-Only Memory (ROM), a hard disk, an optical disk, a magnetic medium, a flash memory, other permanent, fixed, or volatile memory, or any other mechanism capable of storing instructions.
  • Although one processor is shown in FIG. 5A, processing unit 140 may include more than one processor. Each processor may have a similar construction or the processors may be of differing constructions that are electrically connected or disconnected from each other. For example, the processors may be separate circuits or integrated in a single circuit. When more than one processor is used, the processors may be configured to operate independently or collaboratively. The processors may be coupled electrically, magnetically, optically, acoustically, mechanically or by other means that permit them to interact.
  • In some embodiments, processor 540 may change the aiming direction of image sensor 350 using image data provided from image sensor 350. For example, processor 540 may recognize that a user is reading a book and determine that the aiming direction of image sensor 350 is offset from the text. That is, because the words in the beginning of each line of text are not fully in view, processor 540 may determine that image sensor 350 is tilted down and to the right. Responsive thereto, processor 540 may adjust the aiming direction of image sensor 350.
  • Processor 540 may access memory 520. Memory 520 may be configured to store information specific to user 100. For example, data for image representations of known individuals, favorite products, personal items, etc., may be stored in memory 520. In one embodiment, user 100 may have more than one pair of glasses, with each pair of glasses having support 210 mounted thereon. Accordingly, memory 520 may store information (e.g., personal settings) associated with each pair of glasses. For example, when a user wears his sunglasses may have different preferences than when the user wears reading glasses.
  • As shown in FIG. 5A, processing unit 140 includes mobile power source 510. Mobile power source 510 may be configured to power processing unit 140 and/or sensory unit 120. The term “mobile power source” includes any device capable of providing electrical power, which can be easily carried by a hand (e.g., the total weight of mobile power source 510 may be less than a pound). Thus, the mobility of the power source enables user 100 to use apparatus 110 in a variety of situations. For example, mobile power source 510 may include one or more batteries (e.g., nickel-cadmium batteries, nickel-metal hydride batteries, and lithium-ion batteries) or any other type of electrical power supply. In some embodiments, mobile power source 510 may be rechargeable and contained within a casing that holds processing unit 140. In other embodiments, mobile power source 510 may include one or more energy harvesting devices for converting ambient energy into electrical energy (e.g., portable solar power units, human vibration units, etc.).
  • Apparatus 110 may operate in a low-power-consumption mode and in a processing-power-consumption mode. For example, mobile power source 510 can produce five hours of processing-power-consumption mode and fifteen hours of low-power-consumption mode. Accordingly, different power consumption modes may allow mobile power source 510 to produce sufficient power for powering processing unit 140 for various time periods (e.g., more than two hours, more than four hours, more than ten hours, etc.).
  • Mobile power source 510 may power one or more wireless transceivers (e.g., wireless transceiver 530 in FIG. 5A). The term “wireless transceiver” refers to any device configured to exchange transmissions over an air interface by use of radio frequency, infrared frequency, magnetic field, or electric field. Wireless transceiver 530 may use any known standard to transmit and/or receive data (e.g., Wi-Fi, Bluetooth®, Bluetooth Smart, 802.15.4, or ZigBee). In some embodiments, wireless transceiver 530 may transmit data (e.g., raw image data or audio data) from image sensor 350 to processing unit 140, or wireless transceiver 530 may transmit data from processing unit 140 to feedback-outputting unit 340.
  • In another embodiment, wireless transceiver 530 may communicate with a different device (e.g., a hearing aid, the user's smartphone, or any wirelessly controlled device) in the environment of user 100. For example, wireless transceiver 530 may communicate with an elevator using a Bluetooth® controller. In such an arrangement, apparatus 110 may recognize that user 100 is approaching an elevator and call the elevator, thereby minimizing wait time. In another example, wireless transceiver 530 may communicate with a smart TV. In such an arrangement, apparatus 110 may recognize that user 100 is watching television and identify specific hand movements as commands for the smart TV (e.g., switching channels). In yet another example, wireless transceiver 530 may communicate with a virtual cane. A virtual cane is any device that uses a laser beam or ultrasound waves to determine the distance from user 100 to an object.
  • FIG. 5B is a block diagram illustrating the components of apparatus 110 according to a second embodiment. In FIG. 5B, similar to the arrangement shown in FIG. 5A, support 210 is used to couple sensory unit 120 to a pair of glasses. However, in the embodiment shown in FIG. 5B, sensory unit 120 and processing unit 140 communicate wirelessly. For example, wireless transceiver 530A can transmit image data to processing unit 140 and receive information to be outputted via feedback-outputting unit 340.
  • In this embodiment, sensory unit 120 includes feedback-outputting unit 340, mobile power source 510A, wireless transceiver 530A, and image sensor 350. Mobile power source 510A is contained within sensory unit 120. As further shown in FIG. 5B, processing unit 140 includes wireless transceiver 530B, processor 540, mobile power source 510B, and memory 520.
  • FIG. 5C is a block diagram illustrating the components of apparatus 110 according to a third embodiment. In particular, FIG. 5C depicts an embodiment in which support 210 includes image sensor 350 and connector 550B. In this embodiment, sensory unit 120 provides functionality for processing data and, therefore, a separate processing unit is not needed in such a configuration.
  • As shown in FIG. 5C, sensory unit 120 includes processor 540, connector 550A, mobile power source 510, memory 520, and wireless transceiver 530. In this embodiment, apparatus 110 does not include a feedback-outputting unit. Accordingly, wireless transceiver 530 may communicate directly with a hearing aid (e.g., a Bluetooth® hearing aid). In addition, in this embodiment, image sensor 350 is included in support 210. Accordingly, when support 210 is initially mounted on glasses 105, image sensor 350 may acquire a set aiming direction. For example, a camera associated with image sensor 350 may be installed within support 210 in a predetermined angle in a position facing slightly downwards (e.g., 7-12 degrees from the horizon). Furthermore, connector 550A and connector 550B may allow data and power to be transmitted between support 210 and sensory unit 120.
  • FIG. 5D is a block diagram illustrating the components of apparatus 110 according to a fourth embodiment. In FIG. 5D, sensory unit 120 couples directly to a pair of glasses without the need of a support. In this embodiment, sensory unit 120 includes image sensor 350, feedback-outputting unit 340, processor 540, and memory 520. As shown in FIG. 5D, sensory unit 120 is connected via a wire 130 to processing unit 140. Additionally, in this embodiment, processing unit 140 includes mobile power source 510 and wireless transceiver 530.
  • As will be appreciated by a person skilled in the art having the benefit of this disclosure, numerous variations and/or modifications may be made to the disclosed embodiments. Not all components are essential for the operation of apparatus 110. Any component may be located in any appropriate part of apparatus 110 and the components may be rearranged into a variety of configurations while providing the functionality of the disclosed embodiments. Therefore, the foregoing configurations are examples and, regardless of the configurations discussed above, apparatus 110 can assist persons who have low vision with their everyday activities in numerous ways.
  • One way apparatus 110 can assist persons who have low vision is by identifying relevant objects in an environment. For example, in some embodiments, processor 540 may execute one or more computer algorithms and/or signal-processing techniques to find objects relevant to user 100 in image data captured by sensory unit 120. The term “object” refers to any physical object, person, text, or surroundings in an environment.
  • In one embodiment, apparatus 110 can perform a hierarchical object identification process. In a hierarchical object identification process, apparatus 110 can identify objects from different categories (e.g., spatial guidance, warning of risks, objects to be identified, text to be read, scene identification, and text in the wild) of image data. For example, apparatus 110 can perform a first search in the image data to identify objects from a first category, and after initiating the first search, execute a second search in the image data to identify objects from a second category.
  • In another embodiment, apparatus 110 can provide information associated with one or more of the objects identified in image data. For example, apparatus 110 can provide information such as the name of an individual standing in front of user 100. The information may be retrieved from a dynamic database stored in memory 520. If the database does not contain specific information associated with the object, apparatus 110 may provide user 100 with nonvisual feedback indicating that a search was made, but the requested information was not found in the database. Alternatively, apparatus 110 may use wireless transceiver 530 to search for and retrieve information associated with the object from a remote database (e.g., over a cellular network or Wi-Fi connection to the Internet).
  • Another way apparatus 110 can assist persons who have low vision is by performing a continuous action that relates to an object in an environment. A continuous action may involve providing continuous feedback regarding the object. For example, apparatus 110 can provide continuous feedback associated with an object identified within a field-of-view of image sensor 350, and suspend the continuous feedback when the object moves outside the field-of-view of image sensor 350. Examples of continuous feedback may include audibly reading text, playing a media file, etc. In addition, in some embodiments, apparatus 110 may provide continuous feedback to user 100 based on information derived from a discrete image or based on information derived from one or more images captured by sensory unit 120 from the environment of user 100.
  • Another type of continuous action includes monitoring the state of an object in an environment. For example, in one embodiment, apparatus 110 can track an object as long as the object remains substantially within the field-of-view of image sensor 350. Furthermore, before providing user 100 with feedback, apparatus 110 may determine whether the object is likely to change its state. If apparatus 110 determines that the object is unlikely to change its state, apparatus 110 may provide a first feedback to user 100. For example, if user 100 points to a road sign, apparatus 110 may provide a first feedback that comprises a descriptor of the road sign. However, if apparatus 110 determines that the object is likely to change its state, apparatus 110 may provide a second feedback to user 100 after the object has changed its state. For example, if user 100 points at a traffic light, the first feedback may comprise a descriptor of the current state of the traffic light (e.g., the traffic light is red) and the second feedback may comprise a descriptor indicating that the state of traffic light has changed (i.e., the traffic light is now green).
  • Apparatus 110 may also determine that an object that is expected to change its state is not functioning and provide appropriate feedback. For example, apparatus 110 may provide a descriptor indicating that a traffic light is broken.
  • Apparatus 110 can also assist persons who have low vision by making intelligent decisions regarding a person's intentions. Apparatus 110 can make these decisions by understanding the context of a situation. Accordingly, disclosed embodiments may retrieve contextual information from captured image data and adjust the operation of apparatus 110 based on at least the contextual information. The term “contextual information” (or “context”) refers to any information having a direct or indirect relationship with an object in an environment. In some embodiments, apparatus 110 may retrieve different types of contextual information from captured image data. One type of contextual information is the time and/or the place that an image of the object was captured. Another example of a type of contextual information is the meaning of text written on the object. Other examples of types of contextual information include the identity of an object, the type of the object, the background of the object, the location of the object in the frame, the physical location of the user relative to the object, etc.
  • In an embodiment, the type of contextual information that is used to adjust the operation of apparatus 110 may vary based on objects identified in the image data and/or the particular user who wears apparatus 110. For example, when apparatus 110 identifies a package of cookies as an object, apparatus 110 may use the location of the package (i.e., at home or at the grocery store) to determine whether or not to read the list of ingredients aloud. Alternatively, when apparatus 110 identifies a signboard identifying arrival times for trains as an object, the location of the sign may not be relevant, but the time that the image was captured may affect the output. For example, if a train is arriving soon, apparatus 110 may read aloud the information regarding the coming train. Accordingly, apparatus 110 may provide different responses depending on contextual information.
  • Apparatus 110 may use contextual information to determine a processing action to execute or an image resolution of image sensor 350. For example, after identifying the existence of an object, contextual information may be used to determine if the identity of the object should be announced, if text written on the object should be audibly read, if the state of the object should be monitored, or if an image representation of the object should be saved. In some embodiments, apparatus 110 may monitor a plurality of images and obtain contextual information from specific portions of an environment. For example, motionless portions of an environment may provide background information that can be used to identify moving objects in the foreground.
  • Yet another way apparatus 110 can assist persons who have low vision is by automatically carrying out processing actions after identifying specific objects and/or hand gestures in the field-of-view of image sensor 350. For example, processor 540 may execute several actions after identifying one or more triggers in image data captured by apparatus 110. The term “trigger” includes any information in the image data that may cause apparatus 110 to execute an action. For example, apparatus 110 may detect as a trigger a finger of user 100 pointing to one or more coins. The detection of this gesture may cause apparatus 110 to calculate a sum of the value of the one or more coins. As another example of a trigger, an appearance of an individual wearing a specific uniform (e.g., a policeman, a fireman, a nurse) in the field-of-view of image sensor 350 may cause apparatus 110 to make an audible indication that this particular individual is nearby.
  • In some embodiments, the trigger identified in the image data may constitute a hand-related trigger. The term “hand-related trigger” refers to a gesture made by, for example, the user's hand, the user's finger, or any pointed object that user 100 can hold (e.g., a cane, a wand, a stick, a rod, etc.).
  • In other embodiments, the trigger identified in the image data may include an erratic movement of an object caused by user 100. For example, unusual movement of an object can trigger apparatus 110 to take a picture of the object. In addition, each type of trigger may be associated with a different action. For example, when user 100 points to text, apparatus 110 may audibly read the text. As another example, when user 100 erratically moves an object, apparatus 110 may audibly identify the object or store the representation of that object for later identification.
  • Apparatus 110 may use the same trigger to execute several actions. For example, when user 100 points to text, apparatus 110 may audibly read the text. As another example, when user 100 points to a traffic light, apparatus 110 may monitor the state of the traffic light. As yet another example, when user 100 points to a branded product, apparatus 110 may audibly identify the branded product. Furthermore, in embodiments in which the same trigger is used for executing several actions, apparatus 110 may determine which action to execute based on contextual information retrieved from the image data. In the examples above, wherein the same trigger (pointing to an object) is used, apparatus 110 may use the type of the object (text, a traffic light, a branded product) to determine which action to execute.
  • To assist user 100 throughout his or her daily activities, apparatus 100 may follow several procedures for saving processing resources and prolonging battery life. For example, apparatus 110 can use several image resolutions to form images. Higher image resolution provides more detailed images, but requires more processing resources. Lower image resolution provides less detailed images, but saves processing resources. Therefore, to prolong battery life, apparatus 110 may have rules for capturing and processing high resolution image under certain circumstances, and rules for capturing and processing low resolution image when possible. For example, apparatus 110 may capture higher resolution images when performing Optical Character Recognition (OCR), and capture low resolution images when searching for a trigger.
  • One of the common challenges persons with low vision face on a daily basis is reading. Apparatus 110 can assist persons who have low vision by audibly reading text that is present in user 100 environment. Apparatus 110 may capture an image that includes text using sensory unit 120. After capturing the image, to save resources and to process portions of the text that are relevant to user 100, apparatus 110 may initially perform a layout analysis on the text. The term “layout analysis” refers to any process of identifying regions in an image that includes text. For example, layout analysis may detect paragraphs, blocks, zones, logos, titles, captions, footnotes, etc.
  • In one embodiment, apparatus 110 can select which parts of the image to process, thereby saving processing resources and battery life. For example, apparatus 110 can perform a layout analysis on image data taken at a resolution of one megapixel to identify specific areas of interest within the text. Subsequently, apparatus 110 can instruct image sensor 350 to capture image data at a resolution of five megapixels to recognize the text in the identified areas. In other embodiments, the layout analysis may include initiating at least a partial OCR process on the text.
  • In another embodiment, apparatus 110 may detect a trigger that identifies a portion of text that is located a distance from a level break in the text. A level break in the text represents any discontinuity of the text (e.g., a beginning of a sentence, a beginning of a paragraph, a beginning of a page, etc.). Detecting this trigger may cause apparatus 110 to read the text aloud from the level break associated with the trigger. For example, user 100 can point to a specific paragraph in a newspaper and apparatus 110 may audibly read the text from the beginning of the paragraph instead of from the beginning of the page.
  • In addition, apparatus 110 may identify contextual information associated with text and cause the audible presentation of one portion of the text and exclude other portions of the text. For example, when pointing to a food product, apparatus 110 may audibly identify the calorie value of the food product. In other embodiments, contextual information may enable apparatus 110 to construct a specific feedback based on at least data stored in memory 520. For example, the specific feedback may assist user 100 to fill out a form (e.g., by providing user 100 audible instructions and details relevant to a form in the user's field-of-view).
  • To improve the audible reading capabilities of apparatus 110, processor 540 may use OCR techniques. The term “optical character recognition” includes any method executable by a processor to retrieve machine-editable text from images of text, pictures, graphics, etc. OCR techniques and other document recognition technology typically use a pattern matching process to compare the parts of an image to sample characters on a pixel-by-pixel basis. This process, however, does not work well when encountering new fonts, and when the image is not sharp. Accordingly, apparatus 110 may use an OCR technique that compares a plurality of sets of image regions that are proximate to each other. Apparatus 110 may recognize characters in the image based on statistics relate to the plurality of the sets of image regions. By using the statistics of the plurality of sets of image regions, apparatus 110 can recognize small font characters defined by more than four pixels e.g., six or more pixels. In addition, apparatus 110 may use several images from different perspectives to recognize text on a curved surface. In another embodiment, apparatus 110 can identify in image data an existence of printed information associated with a system command stored in a database and execute the system command thereafter. Examples of a system command include: “enter training mode,” “enter airplane mode,” “backup content,” “update operating system,” etc.
  • The disclosed OCR techniques may be implemented on various devices and systems and are not limited to use with apparatus 110. For example, the disclosed OCR techniques provide accelerated machine reading of text. In one embodiment, a system is provided for audibly presenting a first part of a text from an image, while recognizing a subsequent part of the text. Accordingly, the subsequent part may be presented immediately upon completion of the presentation of the first part, resulting in a continuous audible presentation of standard text in less than two seconds after initiating OCR.
  • As is evident from the foregoing, apparatus 110 may provide a wide range of functionality. More specifically, in embodiments consistent with the present disclosure, apparatus 110 may capture image data that includes textual and non-textual information disposed within a field-of-view of sensory unit 120, identify one or more system commands associated with the textual information and non-textual information, and subsequently execute the one or more system commands automatically or in response to an input received from a user of apparatus 110.
  • In certain aspects, “textual information” consistent with the disclosed embodiments may include, but is not limited to, printed text, handwritten text, coded text, text projected onto a corresponding surface, text displayed to the user through a corresponding display screen or touchscreen, and any additional or alternate textual information appropriate to the user and to apparatus 110. Further, the “non-textual information” may include, but is not limited to, images of various triggers (e.g., a human appendage, a cane, or a pointer), images of physical objects, images of persons, images of surroundings, and images of other non-textual objects disposed within the field-of-view of sensory unit 120.
  • In certain aspects, apparatus 110 may perform an OCR process on the textual information within the captured image data, and may subsequently identify the one or more system commands based on portions of the recognized text. In other aspects, apparatus 110 may detect elements of non-textual information within the captured image data, and may initiate the identification of the one or more system commands in response to the detected non-textual information.
  • In an embodiment, apparatus 110 may include a memory (e.g., memory 520) configured to store one or more applications and application modules that, when executed by a processor (e.g., processor 540), enable apparatus 110 identify and execute system commands based in textual and non-textual information within captured image data. In certain aspects, memory 520 may also be configured to store information that identifies the system commands and associates the system commands with elements of textual information (e.g., characters, words, phrases, and phrases), elements of non-textual information (e.g., images of triggers, physical objects, and persons), other system commands, and other events. FIG. 6 illustrates an exemplary structure of memory 520, in accordance with disclosed embodiments.
  • In FIG. 6, memory 520 may be configured to store an image data storage module 602, an image processing module 604, and an image database 612. In one embodiment, image data storage module 602, upon execution by processor 540, may enable processor 540 to receive data corresponding to one or more images captured by sensory unit 120, and to store the captured image data within image database 612. In some aspects, the captured image data may include textual information (e.g., printed, handwritten, coded, projected, and/or displayed text) and non-textual information (e.g., images of physical objects, persons, and/or triggers), and processor 540 may store the image data in image database 612 with additional data specifying a time and/or date at which sensory unit 120 captured the image data. In additional embodiments, image data storage module 602 may further enable processor 540 to configure wireless transceiver 530 to transmit the captured image data to one or more devices (e.g., an external data repository or a user's mobile device) in communication with apparatus 110 across a corresponding wired or wireless network.
  • In an embodiment, image processing module 604, upon execution by processor 540, may enable processor 540 to process the captured image data and identify elements of textual information within the captured image data. In certain aspects, textual information consistent with the disclosed embodiments may include, but is not limited to, printed text (e.g., text disposed on a page of a newspaper, magazine, book), handwritten text, coded text, text displayed to a user through a display unit of a corresponding device (e.g., an electronic book, a television a web page, or an screen of a mobile application), text disposed on a flat or curved surface of an object within a field-of-view of apparatus 110 (e.g., a billboard sign, a street sign, text displayed on product packaging), text projected onto a corresponding screen (e.g., during presentation of a movie at a theater), and any additional or alternate text disposed within images captured by sensory unit 120.
  • In certain aspects, processor 540 may perform a layout analysis of the image data to identify textual information within the captured image data. By way of example, processor 540 may perform a layout analysis to detect paragraphs of text, blocks of text, zones and/or regions that include text, logos, titles, captions, footnotes, and any additional or alternate portions of the image data that includes printed, handwritten, displayed, coded, and/or projected text.
  • Referring back to FIG. 6, memory 520 may also include an optical character recognition (OCR) module 606 that, upon execution by processor 540, enables processor 540 to perform one or more OCR processes on elements of textual information disposed within the image data. In one embodiment, processor 540 may execute image processing module 604 to identify portions of the captured image data that include textual information, and further, may execute OCR module 606 to retrieve machine-readable text from the textual information.
  • Memory 520 may also be configured to store a system command identification module 608, a system command execution module 610, and a system command database 614. In one embodiment, system command database 140 may store linking information that associates one or more system commands with corresponding portions of captured image data. In some aspects, a system command may include one or more instructions that, when executed by processor 540, cause processor 540 to perform one or more actions or processes consistent with an operating system of apparatus 110. Further, in one aspect, linking information may associate a particular system command with an element of recognized text (e.g., a word, a phrase, or a paragraph), an element of non-textual information (e.g., an image of a physical object, a person, or a trigger), combinations thereof, and any additional or alternate indicia of linkages between captured image data and system commands.
  • In an embodiment, system command identification module 608 may, upon execution by processor 540, enable processor 540 to access linking information stored within system command database 614, and to identify one or more system commands associated with portions of the captured image data based on the linking information. For example, processor 540 may leverage the accessed linking information to determine that a portion of machine-readable text corresponds to a system command executable by processor 540. Additionally or alternatively, system command identification module 608 may enable processor 540 to identify a system command associated with a particular image within the captured image data, and further, a system command associated with a particular trigger in the captured image data, taken alone or in conjunction with machine-readable text.
  • System command execution module 610 may, upon execution by processor 540, enable processor 540 to execute the identified system command and perform one or more actions and processes consistent with the operating system of apparatus 110. In one instance, the identified system command may enable processor 540 to modify an operational state of apparatus 110. For example, upon execution of the identified system command by processor 540, apparatus 110 may function in accordance with a “training” mode, a “sleep” mode, or an “airplane” mode, or other mode of operation consistent with the captured image data and the operating system of apparatus 110.
  • In other aspects, the identified system command may enable processor 540 to modify a configuration of apparatus 110. By way of example, upon execution of the identified system command, processor 540 may modify a configuration of one or more of sensory unit 120 and processing unit 130. Further, in additional embodiments, processor 540 may execute the identified system command to modify a configuration of an external device in communication with apparatus 110 across a corresponding wired or wireless communications network (e.g., a mobile telephone, a smart phone, or a tablet computer).
  • Additionally or alternatively, the identified system command may enable processor 540 to execute one or more applications and/or perform one or more actions supported by an operating system of apparatus 110. By way of example, processor 540 may initiate or terminate a recording of audio or video content, download a stored digital image (e.g., to image database 612), transmit a stored digital image to an external device in communication with apparatus 110, update or restart the operating system of apparatus 110, and establish, modify, or erase a user customization of apparatus 110.
  • Further, in an embodiment, the identified system command may include a plurality of steps associated with corresponding system sub-commands, and processor 540 may be configured to execute sequentially the corresponding system sub-commands upon execution of system command execution module 610. For example, the identified system command may update the operating system of apparatus 110, and the corresponding sub-commands may enable processor 540 to obtain an updated version of the operating system, replace the existing version of the operating system with the updated version, and restart apparatus 110 upon completion of the replacement.
  • In further embodiments, the identified system command may cause processor 540 perform an action on one or more files stored locally by apparatus 110, and additionally or alternatively, on one or more files stored within a data repository or external device accessible to apparatus 110 over a corresponding communications network. By way of example, upon execution of the identified system command, processor 540 may store image, video, and/or audio files in memory 520, overwrite one or more files stored within memory 520, and additionally or alternatively, transmit one or more files stored within memory 520 to the external device.
  • In other embodiments, image database 612 and/or contextual rule database 614 may be located remotely from memory 520, and be accessible to other components of apparatus 110 (e.g., processing unit 140) via one or more wireless connections (e.g., a wireless network). While two databases are shown, it should be understood that image database 612 and contextual rule database 614 may be combined and/or interconnected databases may make up the databases. Image database 612 and/or contextual rule database 614 may further include computing components (e.g., database management system, database server, etc.) configured to receive and process requests for data stored in associated memory devices.
  • Image data store module 602, image processing module 604, OCR module 606, system command identification module 608, and system command execution module 610 may be implemented in software, hardware, firmware, a mix of any of those, or the like. For example, if the modules are implemented in software, they may be stored in memory 520, as shown in FIG. 6. Other components of processing unit 140 and/or sensory unit 120 may be configured to perform processes to implement and facilitate operations of image data store module 602, image processing module 604, OCR module 606, system command identification module 608, and system command execution module 610. Thus, image data store module 602, image processing module 604, OCR module 606, system command identification module 608, and system command execution module 610 may include software, hardware, or firmware instructions (or a combination thereof) executable by one or more processors (e.g., processor 540), alone or in various combinations with each other. For example, image data store module 602, image processing module 604, OCR module 606, system command identification module 608, and system command execution module 610 may be configured to interact with each other and/or other modules of apparatus 110 to perform functions consistent with disclosed embodiments. In some embodiments, any of the disclosed modules (e.g., image data store module 602, image processing module 604, OCR module 606, system command identification module 608, and system command execution module 610) may each include dedicated sensors (e.g., IR, image sensors, etc.) and/or dedicated application processing devices to perform the functionality associated with each module.
  • FIG. 7 is a flow diagram of an exemplary process 700 for identifying and executing system commands based on captured image data, according to disclosed embodiments. As described above, sensory unit 120 may capture image data that includes textual information and non-textual information disposed within a corresponding field-of-view. Processing unit 130 may receive the captured image data, and processor 540 may execute one or more application modules to identify the textual and non-textual information, and to execute one or more system commands that correspond to the identified textual and non-textual information. Process 700 provides further details on how processor 540 identifies and executes one or more system commands based on captured image data.
  • In step 702, processor 540 may obtain captured image data. In some aspects, sensory unit 120 may capture one or more images, and the captured image data may be transmitted to processing unit 140 across wired or wireless communications link 130. Processor 540 may, in step 702, obtain the captured image data directly from sensory module 120 across communications link 130, or alternatively, processor 540 may retrieve the captured image data from a corresponding data repository (e.g., image database 612 of memory 520). By way of example, the captured image data may include one or more regions of printed, displayed, or projected information.
  • In step 704, processor 540 may analyze the captured image data to identify portions of the captured image data that include textual information. As described above, the textual information may include, but is not limited to, printed, handwritten, projected, coded, or displayed text, and processor 540 may perform a layout analysis to detect the textual information within the captured image data. By way of example, the detected portions may include, but are not limited to, paragraphs of text, blocks of text, zones and/or regions that include text, logos, titles, captions, footnotes, and any additional or alternate portions of the captured image data that includes printed, handwritten, displayed, coded, and/or projected text.
  • Additionally or alternatively, processor 540 may analyze the captured image data using image processing techniques in step 704 to identify non-textual information within the captured image data. In certain aspects, the non-textual information may include, but is not limited to, an image of a trigger (e.g., a human appendage or a cane), an image of a person (e.g., a police officer, a firefighter, or an airline employee), an image of a physical object (e.g., a streetlight and/or a pedestrian crossing signal, a particular vehicle, a map), and any additional or alternate image of relevant to the user of apparatus 110.
  • In step 706, processor 540 may identify one or more system commands associated with the textual and non-textual information. In one embodiment, to identify the one or more system commands, processor 540 obtain linking information in step 706 that associates the system commands with corresponding portions of textual information, non-textual information, or combinations of textual and non-textual information. In certain aspects, processor 540 may access system command database 614 to obtain the linking information. Alternatively, processor 540 may obtain the linking information from a data repository in communication with apparatus 110 across a corresponding communications network using appropriate communications protocols.
  • For example, processor 540 may determine in step 706 that a system command is associated with textual information when the linking information for that system command includes at least a portion of the textual information. Additionally or alternatively, processor 540 may also determine in step 706 that the system command is associated with non-textual information when the linking information for that system command includes information identifying the non-textual information, either alone or in combination with textual information.
  • Processor 540 may execute the one or more identified system commands in step 708. Upon execution of the one or more identified system commands by processor 540, exemplary process 700 ends.
  • As described above, one or more of the executed system commands may correspond to an operation that modifies a functional state of apparatus 110 or an external device in communications with apparatus 110 (e.g., that causes apparatus 110 to enter a sleep mode, a training mode, or an airplane mode). The executed system commands may also correspond to processes performed by and supported by an operating system of apparatus 110, which include, but are not limited to, processes that initiate or terminate a recording of audio or video content, download a stored digital image (e.g., to image database 612), perform an action on one or more files associated with a user of apparatus 110, transmit a stored digital image to an external device in communication with apparatus 110, update or restart the operating system of apparatus 110, backup stored content, obtain information indicative of a status of a battery of apparatus 110, obtain audible instructions regarding one or more functions of apparatus 110, and establish, modify, or erase a user customization of apparatus 110 (e.g., a volume associated with apparatus 110 or a gender of an audible narration provided by apparatus 110). Further, and consistent with the disclosed embodiments, at least one of the system commands may be associated with a plurality of steps, which correspond to system sub-commands executed sequentially by processor 540. The disclosed embodiments are, however, not limited to such exemplary system commands, and in additional embodiments, processor 540 may identify (e.g., step 706) and execute (e.g., step 708) any additional or alternate system command appropriate to processor 540, apparatus 110, and the captured image data.
  • FIG. 8 is a flow diagram of an exemplary process 800 for identifying and executing system commands based on text within captured image data, according to disclosed embodiments. As described above, sensory unit 120 of apparatus 110 may capture image data that includes textual information. In some embodiments, processor 540 of apparatus 510 may execute one or more application modules to identify the textual information within the captured image data, retrieve machine-readable text from the identified textual information, and execute one or more system commands associated with the machine-readable text. Process 800 provides further details on how processor 540 identifies and executes one or more system commands based on text disposed within portions of captured image data.
  • In step 802, processor 540 may obtain captured image data. In some aspects, sensory unit 120 may capture one or more images, and the captured image data may be transmitted to processing unit 140 across wired or wireless communications link 130. As described above, processor 540 may obtain the captured image data in step 802 from sensory module 120 across communications link 130, or alternatively, processor 540 may retrieve the captured image data from a corresponding data repository (e.g., image database 612 of memory 520). The captured image data may, in certain aspects, include at least one of textual information (e.g., printed text, handwritten text, displayed text, projected text, and coded text) and non-textual information (e.g., images of physical objects, persons, and triggers).
  • Processor 540 may analyze the captured image data in step 804 to identify portions of the captured image data that include the textual information. In one embodiment, as described herein, processor 540 may perform a layout analysis to detect the textual information within the captured image data. By way of example, the detected textual information may include, but are not limited to, paragraphs of text, blocks of text, zones and/or regions that include text, logos, titles, captions, footnotes, and any additional or alternate portions of the image data that includes printed, handwritten, displayed, coded, and/or projected text.
  • In step 806, processor 540 may perform an OCR process on the detected textual information to identify and retrieve machine-readable text. Further, in step 808, processor 540 may identify one or more system commands associated with the recognized text based on linking information that associates the system commands with corresponding machine-readable text. In certain aspects, system command database 614 may store the linking information, and in step 808, processor 540 may access system command database 614 to obtain the linking information, as described above.
  • Processor 540 may execute the one or more identified system commands in step 810. Upon execution of the one or more identified system commands by processor 540, exemplary process 800 ends.
  • As described above, one or more of the system commands may correspond to an operation that modifies a functional state of apparatus 110 or an external device in communications with apparatus 110 (e.g., that causes apparatus 110 to enter a sleep mode, a training mode, or an airplane mode). One or more of the system commands may also correspond to processes performed by and supported by an operating system of apparatus 110, which include, but are not limited to, processes that initiate or terminate a recording of audio or video content, download a stored digital image (e.g., to image database 612), perform actions on one or more files associated with a user of apparatus 110, transmit a stored digital image to an external device in communication with apparatus 110, update or restart the operating system of apparatus 110, backup stored content, obtain information indicative of a status of a battery of apparatus 110, obtain audible instructions regarding one or more functions of apparatus 110, and establish, modify, or erase a user customization of apparatus 110 (e.g., a volume associated with apparatus 110 or a gender of an audible narration provided by apparatus 110). Further, and consistent with the disclosed embodiments, at least one of the system commands may be associated with a plurality of sequential steps, which correspond to system sub-commands executed sequentially by processor 540.
  • In the embodiments described above, processor 540 may identify system commands associated with one or more of textual information and non-textual information disposed within captured image data (e.g., step 706 of FIG. 7 and step 808 of FIG. 8), and may execute the identified system commands (e.g., in step 708 of FIG. 7 and step 810 of FIG. 8) without tactile or audible confirmation from a user. In some instances, however, the executed system commands may be associated with significant and often irreversible impacts on an operation of apparatus 110. For example, the executed system commands may erase a user-established customization of apparatus 110, or alternatively, delete or modify one or more image filed stored by apparatus 110. In some embodiments, described below in reference to FIG. 9, processor 540 may execute the identified system commands in response to user input that confirms the user's intentions to execute the identified system commands.
  • FIG. 9 is a flow diagram of an exemplary process 900 for executing system commands based on received user confirmation, according to disclosed embodiments. As described above, processor 540 may identify one or more system commands associated with at least one of textual or non-textual information disposed within captured image data. In some embodiments, processor 540 may execute the identified system commands in response to confirmation of the user's intention to execute the identified system commands. Process 900 provides further details on how processor 540 requests a confirmation of the user's intention to execute a system command, receives and processes input from the user, and executes the system command based on the received input.
  • In step 902, processor 540 may identify a system command associated with textual information, non-textual information, or combinations of textual and non-textual information within captured image data. For example, as described above in reference to FIGS. 7 and 8, the identified system command may be associated with one or more portions of machine-readable text retrieved from the textual information using a corresponding OCR process, and additionally or alternatively, may be associated with elements of non-textual information disclosed within the captured image data.
  • Further, as described above, the identified system command may correspond to an operation that modifies a functional state of apparatus 110 or an external device in communications with apparatus 110 (e.g., that causes apparatus 110 to enter a sleep mode, a training mode, or an airplane mode). In other aspects, the identified system command may cause processor 540 to initiate or terminate a recording of audio or video content, download a stored digital image (e.g., to image database 612), modify one or more files associated with the user, transmit a stored digital image to an external device in communication with apparatus 110, perform an operation on a stored file, update or restart the operating system of apparatus 110, backup stored content, obtain information indicative of status of a battery of apparatus 110, obtain audible instructions regarding one or more functions of apparatus 110, and establish, modify, or erase a user customization of apparatus 110 (e.g., a volume associated with apparatus 110 or a gender of an audible narration provided by apparatus 110). Further, and consistent with the disclosed embodiments, at least one of the system commands may be associated with a plurality of steps, which correspond to system sub-commands executed sequentially by processor 540.
  • Referring back to FIG. 9, processor 540 may request the user confirm an intention to execute of the identified system command in step 904. In one embodiment, processor 540 may generate an audible request, which may be presented to the user through a speaker or a bone conduction headphone associated with processing unit 140. The disclosed embodiments are, however, not limited to such audible requests, and in further embodiments, processor 540 may generate and provide a textual request to the user (e.g., by transmitting the textual request as a message to a mobile communications device of the user in communication with apparatus 110), a tactile request to the user (e.g., a vibration of apparatus 110 of a predetermined intensity and duration), or through any additional or alternate mechanism appropriate to the user and to apparatus 110.
  • In step 906, processor 540 may detect user input indicative of a response to the request for confirmation. In one embodiment, the detected user input may include an audible response to the requested spoken by the user into a microphone associated with apparatus 110. Additionally or alternatively, the user input may include a tactile response to the request for confirmation (e.g., the user may tap a sensor or other input device disposed on a surface of apparatus 110). The disclosed embodiments are, however, not limited to such exemplary user input, and in other embodiments, the user input may include any additional or alternate form or combination of inputs appropriate to the user and to apparatus 110.
  • Based on the detected user input, processor 540 may determine in step 908 whether the user confirmed the intention to execute of the identified system command. If processor 540 determine that the user confirms the execution (e.g., step 908; YES), processor 540 may execute the identified system command in step 910, as described above. Exemplary process 900 is then complete. Alternatively, if processor 540 determines that the user elects not to confirm the execution (e.g., step 908; NO), exemplary process 900 passes back to step 902, and processor 540 identified an additional system command for execution, as described above.
  • Using the embodiments described above, apparatus 110 may capture image data that includes one or more of textual and non-textual information, identify a system command that corresponds to the textual and/or visual information, and subsequently execute the identified system command to modify an operational state of apparatus 110. By way of example, a user of apparatus 110 may board an airplane and, upon locating a corresponding seat, browse through materials placed within a pocket or storage accessible to the user (e.g., a seat-back pocket). As illustrated in FIG. 10, the user may access an in-flight menu 1000 for the trip, and apparatus 110 may capture an image that includes a portion 1020 of menu 1000 corresponding to a field-of-view of sensory unit 120.
  • As described above, processor 540 may identify textual information within the captured image, may perform an OCR process that retrieves machine-readable text from the textual information, and may access system command database 614 to obtain linking information associating one or more system commands with corresponding portions of the recognized text. For example, as illustrated in FIG. 10, processor 540 may leverage the linking information to determine that text portion 1032 (e.g., “United™ Economy”), text portion 1034 (e.g., “Welcome Aboard!”), and text portion 1036 (e.g., “flights”) each correspond to a system command that causes apparatus 110 to enter an airplane mode. In certain embodiments, processor 540 may execute the corresponding system command, which disposes apparatus 110 into an airplane mode for the duration of the flight.
  • The disclosed embodiments are, however, not limited to processes that identify system commands associated with machine-readable text, and in additional embodiments processor 540 may identify one or more system commands associated with non-textual information disposed within the captured image data. For example, as illustrated in FIG. 11, a user of apparatus 110 may view an in-flight safety video 1100 after boarding an airplane, and apparatus 110 may capture an image that includes a portion 1120 of in-flight safety video 1100. Processor 540 may analyze portion 1120 to identify an image 1140 of a flight attendant demonstrating a proper technique for securing the user's seat belt, and may leverage linking information to determine that image 1140 corresponds to a system command that causes apparatus 110 to enter the airplane mode. As described above, processor 540 may execute the corresponding system command, which places apparatus 110 into an airplane mode during the flight.
  • In additional embodiments, described above, apparatus 110 may capture image data that includes textual and non-textual information projected onto a corresponding surface visible to a user of apparatus 110, and may identify and execute one or more system commands associated with the projected textual and/or non-textual information. By way of example, a user of apparatus 110 may visit a movie theater to view a recently released feature film. As illustrated in FIG. 12, the theater may project a reminder onto a screen 1200 asking viewers to turn off or silence their mobile communications devices, and apparatus 110 may capture an image that includes a portion 1220 of the reminder corresponding to a field-of-view of sensory unit 120.
  • Processor 540 may identify textual information within the captured image, may perform an OCR process that retrieves machine-readable text from the textual information, and may obtain linking information associating one or more system commands with corresponding portions of the recognized text. For example, as illustrated in FIG. 12, processor 540 may leverage the linking information to determine that text portion 1232 (e.g., “Turn Off Your Phones”) corresponds to a system command that causes apparatus 110 to enter a “sleep” or “silent” mode. In certain embodiments, processor 540 may execute the corresponding system command, which places apparatus 110 into the corresponding sleep or silent mode for the duration of the feature.
  • Apparatus 110 may also capture image data including textual and non-textual information displayed to user of apparatus 110 through a display unit or touchscreen of a user device (e.g., a television, a smart phone, tablet computer, laptop, or desktop computer). For example, as illustrated in FIG. 13, the user may view a web page 1300 (or other electronic document, such as an email message or text message) that prompts the user to visit a corresponding “app store” and upgrade an operating system without cost, and apparatus 110 may capture an image that includes a portion 1320 of displayed web page 1300 corresponding to a field-of-view of sensory unit 120.
  • In certain aspects, processor 540 may identify textual information within the captured image, may perform an OCR process that retrieves machine-readable text from the textual information, and may obtain linking information associating one or more system commands with corresponding portions of the recognized text. For example, as shown in FIG. 13, processor 540 may leverage the linking information to determine that text portion 1332 (e.g., “Upgrade to the New OS”) corresponds to a system command that causes apparatus 110 to retrieve and install an update to an operating system of apparatus 110. Processor 540 may then execute the corresponding system command, which causes apparatus 110 to obtain and install the corresponding update, and further, to restart apparatus 110 to complete an installation process.
  • Further, in additional embodiments, apparatus 110 may capture image data that includes handwritten textual information, and may identify and execute one or more system commands associated with the handwritten textual information. For example, as illustrated in FIG. 14, a user of apparatus 110 may receive a letter 1400 from his or her mother that asks the user to provide copies of digital images by email. In such an instance, apparatus 110 may capture an image that includes a portion 1420 of letter 1400 corresponding to a field-of-view of sensory unit 120.
  • Processor 540 may analyze the captured image data to identify the handwritten textual information, perform an OCR process that retrieves machine-readable text from the handwritten textual information, and obtain linking information associating one or more system commands with corresponding portions of the handwritten text. Using the linking information, processor 540 may determine that text portion 1432 (e.g., “send copies of your new pictures to me”) corresponds to a system command that causes apparatus 110 to identify one or more stored digital images (e.g., within image database 612), and download the identified digital images to a user device in communications with apparatus 110 over a corresponding wired or wireless communications network.
  • Processor 540 may execute the corresponding system command, which causes apparatus 110 to download the identified images to the user's communications device. Further, in additional embodiments, the executed system command may also provide instructions to the user's communications device to automatically transmit the downloaded photos to the user's mother at email address 1434.
  • In additional embodiments, apparatus 100 may identify and execute system commands based on combinations of textual and non-textual information disposed within captured image data. For example, a user of apparatus 110 may approach an exterior exit of a building, but may be unaware of a street onto which the exit leads. In such an instance, the user may point to an exit sign disposed above the exit door, and apparatus 110 may capture an image that include both the exit sign, with its corresponding textual information, and also an existence of the user's finger within the field-of-view of apparatus 110.
  • By way of example, as illustrated in FIG. 15, a captured image 1500 may include an image of an exit door 1510, textual information corresponding to an exit sign 1520 (e.g., “EXIT TO STREET”), and an image of a trigger 1530 (which corresponds to the user's finger). In certain aspects, processor 540 may identify the existence of the textual information and non-textual information associated with trigger 1530, may identify a system command that corresponds to the presence of both the textual information (e.g., “EXIT TO STREET”) and trigger 1530 within the captured image data, and execute the system command to provide positional information to the user of apparatus 110.
  • In an embodiment, upon execution of the identified system command, apparatus 110 may access a positioning system (e.g., a GPS unit) to obtain a current position of apparatus 110, and access a mapping system to identify a street onto which exit door 1410 leads. In certain aspects, the positioning and mapping systems may be executed by apparatus 110, or alternatively, may be executed by an external device in communication with apparatus 110 over a corresponding wired or wireless communications network. Processor 540 may then provide an audible indication of the determined street to the user of apparatus 110 (e.g., through a speaker or a bone conduction headphone associated with processing unit 140).
  • The foregoing description has been presented for purposes of illustration. It is not exhaustive and is not limited to the precise forms or embodiments disclosed. Modifications and adaptations will be apparent to those skilled in the art from consideration of the specification and practice of the disclosed embodiments. Additionally, although aspects of the disclosed embodiments are described as being stored in memory, one skilled in the art will appreciate that these aspects can also be stored on other types of computer readable media, such as secondary storage devices, for example, hard disks, floppy disks, or CD ROM, or other forms of RAM or ROM, USB media, DVD, or other optical drive media.
  • Computer programs based on the written description and disclosed methods are within the skill of an experienced developer. The various programs or program modules can be created using any of the techniques known to one skilled in the art or can be designed in connection with existing software. For example, program sections or program modules can be designed in or by means of .Net Framework, .Net Compact Framework (and related languages, such as Visual Basic, C, etc.), Java, C++, Objective-C, HTML, HTML/AJAX combinations, XML, or HTML with included Java applets. One or more of such software sections or modules can be integrated into a computer system or existing e-mail or browser software.
  • Moreover, while illustrative embodiments have been described herein, the scope of any and all embodiments having equivalent elements, modifications, omissions, combinations (e.g., of aspects across various embodiments), adaptations and/or alterations as would be appreciated by those skilled in the art based on the present disclosure. The limitations in the claims are to be interpreted broadly based on the language employed in the claims and not limited to examples described in the present specification or during the prosecution of the application. The examples are to be construed as non-exclusive. Furthermore, the steps of the disclosed routines may be modified in any manner, including by reordering steps and/or inserting or deleting steps. It is intended, therefore, that the specification and examples be considered as illustrative only, with a true scope and spirit being indicated by the following claims and their full scope of equivalents.

Claims (23)

1. An apparatus operated by at least one command retrieved from a captured image, the apparatus comprising:
an image sensor configured to be worn by a user and to capture image data from an environment of the user;
a mobile power source for powering at least the image sensor; and
at least one portable processor device configured for tethering to the image sensor and configured to:
identify human-readable text in the image data, the human-readable text representing a predefined system command;
and
execute the predefined system command represented by the human-readable text after the human-readable text is identified.
2. The apparatus of claim 1, wherein the image sensor is configured to be movable with a head of the user.
3. The apparatus of claim 1, wherein the tethering between the at least one processor device and the image sensor is based on a wired connection.
4. The apparatus of claim 1, wherein the tethering between the at least one processor device and the image sensor is based on a wireless connection.
5. The apparatus of claim 1, wherein the at least one portable processor device is further configured to:
access a database of a plurality of system commands; and
identify a portion of the printed information that corresponds to the human-readable text, the printed information portion representing a corresponding one of the system commands; and
establish the corresponding one of the system commands as the predefined system command.
6. The apparatus of claim 5, wherein the database is associated with a server having an Internet connection and remotely located with respect to the apparatus.
7. The apparatus of claim 1, wherein the least one processor device is further configured to perform an optical character recognition on the image data to identify the human-readable text.
8. The apparatus of claim 5, wherein the least one processor device is further configured to perform image processing on the image data to identify the human-readable text.
9. The apparatus of claim 1, wherein the at least one portable processor device is further configured to identify non-textual information representing the predefined system command within the image data.
10. The apparatus of claim 1, wherein the human-readable text includes hand-written information.
11. (canceled)
12. The apparatus of claim 5, wherein the least one processor device is further configured to execute the predefined system command without tactile input from the user.
13. The apparatus of claim 1, wherein the least one processor device is further configured to execute the predefined system command without audio input from the user.
14. The apparatus of claim 1, wherein the predefined system command includes a plurality of steps.
15. The apparatus of claim 1, wherein the predefined system command includes at least one of the following: enter training mode, enter sleep mode, enter airplane mode, start recording, end recording, download stored photo, backup content, update operating system, restart system, change device configuration, and erase customization.
16. The apparatus of claim 1, wherein the predefined system command includes preforming an action on a particular file.
17. An apparatus operated by at least one command retrieved from a captured image, the apparatus comprising:
an image sensor configured to be worn by a user and to capture image data from an environment of the user; and
at least one portable processor device configured for tethering to the image sensor and configured to:
receive the image data from the image sensor;
identify human-readable text in the image data, the human-readable text representing a predefined system command;
and
execute the predefined system command represented by the human-readable text after the human-readable is identified.
18. The apparatus of claim 17, wherein identifying the predefined system command includes preforming optical character recognition on the image data, the optical character recognition being executed automatically upon receipt of the image data.
19. The apparatus of claim 17, wherein identifying the predefined system command includes performing image processing on the image data, the image processing being executed automatically upon receipt of the image data.
20. The apparatus of claim 17, wherein the at least one processor device is further configured to execute the predefined specific system command automatically after the predefined system command is identified.
21. The apparatus of claim 17, wherein the at least one processor device is further configured to execute the predefined system command after receiving an audible confirmation from the user.
22. A method for executing at least one command retrieved from a captured image, the method comprising:
receiving image data from an image sensor;
identifying human-readable text in the image data, the human-readable text representing a predefined system command;
and
executing the predefined system command after the human-readable text representing the predefined system command is identified.
23. A software product stored on a tangible non-transitory computer readable medium and comprising data and computer implementable instructions that, when executed by at least one processor, cause the at least one processor to perform a method, comprising:
receiving image data from an image sensor;
identifying human-readable text in the image data, the human-readable text representing a predefined system command; and
executing the predefined-system command represented by the human-readable text after the human-readable text is identified.
US14/137,263 2013-03-10 2013-12-20 Apparatus and method for executing system commands based on captured image data Abandoned US20140253702A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/137,263 US20140253702A1 (en) 2013-03-10 2013-12-20 Apparatus and method for executing system commands based on captured image data
PCT/IB2014/000758 WO2014140800A1 (en) 2013-03-10 2014-02-26 Apparatus and method for executing system commands based oh captured image data

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361775603P 2013-03-10 2013-03-10
US201361799649P 2013-03-15 2013-03-15
US201361830122P 2013-06-02 2013-06-02
US14/137,263 US20140253702A1 (en) 2013-03-10 2013-12-20 Apparatus and method for executing system commands based on captured image data

Publications (1)

Publication Number Publication Date
US20140253702A1 true US20140253702A1 (en) 2014-09-11

Family

ID=51487375

Family Applications (4)

Application Number Title Priority Date Filing Date
US14/136,876 Active 2036-01-19 US9911361B2 (en) 2013-03-10 2013-12-20 Apparatus and method for analyzing images
US14/137,263 Abandoned US20140253702A1 (en) 2013-03-10 2013-12-20 Apparatus and method for executing system commands based on captured image data
US15/882,774 Active US10636322B2 (en) 2013-03-10 2018-01-29 Apparatus and method for analyzing images
US16/820,282 Active US11335210B2 (en) 2013-03-10 2020-03-16 Apparatus and method for analyzing images

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US14/136,876 Active 2036-01-19 US9911361B2 (en) 2013-03-10 2013-12-20 Apparatus and method for analyzing images

Family Applications After (2)

Application Number Title Priority Date Filing Date
US15/882,774 Active US10636322B2 (en) 2013-03-10 2018-01-29 Apparatus and method for analyzing images
US16/820,282 Active US11335210B2 (en) 2013-03-10 2020-03-16 Apparatus and method for analyzing images

Country Status (2)

Country Link
US (4) US9911361B2 (en)
WO (1) WO2014140800A1 (en)

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150198454A1 (en) * 2014-01-14 2015-07-16 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US20150198455A1 (en) * 2014-01-14 2015-07-16 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US20150316979A1 (en) * 2014-05-02 2015-11-05 Wolfcom Enterprises System and method for body-worn camera with re-connect feature
US20160033280A1 (en) * 2014-08-01 2016-02-04 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable earpiece for providing social and environmental awareness
WO2016133477A1 (en) * 2015-02-16 2016-08-25 Kemal KARAOĞLAN Walking stick and audible-eye system embedded in surfaces and tactile paths for the visually impaired
USD768024S1 (en) 2014-09-22 2016-10-04 Toyota Motor Engineering & Manufacturing North America, Inc. Necklace with a built in guidance device
US20160360146A1 (en) * 2015-06-02 2016-12-08 Taser International, Inc. User-Worn Recording System
US9576460B2 (en) 2015-01-21 2017-02-21 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable smart device for hazard detection and warning based on image and audio data
US9578307B2 (en) 2014-01-14 2017-02-21 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US9586318B2 (en) 2015-02-27 2017-03-07 Toyota Motor Engineering & Manufacturing North America, Inc. Modular robot with smart device
US9629774B2 (en) 2014-01-14 2017-04-25 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US9677901B2 (en) 2015-03-10 2017-06-13 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for providing navigation instructions at optimal times
US20170228597A1 (en) * 2016-01-06 2017-08-10 Orcam Technologies Ltd. Wearable apparatus and methods for causing a paired device to execute selected functions
US9811752B2 (en) 2015-03-10 2017-11-07 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable smart device and method for redundant object identification
US9898039B2 (en) 2015-08-03 2018-02-20 Toyota Motor Engineering & Manufacturing North America, Inc. Modular smart necklace
US9922236B2 (en) 2014-09-17 2018-03-20 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable eyeglasses for providing social and environmental awareness
US9958275B2 (en) 2016-05-31 2018-05-01 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for wearable smart device communications
US9972216B2 (en) 2015-03-20 2018-05-15 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for storing and playback of information for blind users
US10012505B2 (en) 2016-11-11 2018-07-03 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable system for providing walking directions
US10024680B2 (en) 2016-03-11 2018-07-17 Toyota Motor Engineering & Manufacturing North America, Inc. Step based guidance system
US10024678B2 (en) * 2014-09-17 2018-07-17 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable clip for providing social and environmental awareness
US10172760B2 (en) 2017-01-19 2019-01-08 Jennifer Hendrix Responsive route guidance and identification system
US10248856B2 (en) 2014-01-14 2019-04-02 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
WO2019053509A3 (en) * 2017-09-18 2019-05-02 Orcam Technologies Ltd. User-augmented wearable camera system with variable image processing
US10360907B2 (en) 2014-01-14 2019-07-23 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US10432851B2 (en) 2016-10-28 2019-10-01 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable computing device for detecting photography
US20190329364A1 (en) * 2016-08-08 2019-10-31 The Johns Hopkins University Object Recognition and Presentation for the Visually Impaired
US10490102B2 (en) 2015-02-10 2019-11-26 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for braille assistance
US10521669B2 (en) 2016-11-14 2019-12-31 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for providing guidance or feedback to a user
US10561519B2 (en) 2016-07-20 2020-02-18 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable computing device having a curved back to reduce pressure on vertebrae
US11474683B2 (en) * 2017-03-10 2022-10-18 Samsung Electronics Co., Ltd. Portable device and screen control method of portable device

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8866809B2 (en) * 2008-09-30 2014-10-21 Apple Inc. System and method for rendering dynamic three-dimensional appearing imagery on a two-dimensional user interface
KR101130817B1 (en) * 2011-09-27 2012-04-16 (주)올라웍스 Face recognition method, apparatus, and computer-readable recording medium for executing the method
US9351641B2 (en) * 2012-10-04 2016-05-31 Cerner Innovation, Inc. Mobile processing device system for patient monitoring data acquisition
US9491365B2 (en) * 2013-11-18 2016-11-08 Intel Corporation Viewfinder wearable, at least in part, by human operator
US10235822B2 (en) 2014-04-25 2019-03-19 Vivint, Inc. Automatic system access using facial recognition
US10274909B2 (en) 2014-04-25 2019-04-30 Vivint, Inc. Managing barrier and occupancy based home automation system
US10127754B2 (en) * 2014-04-25 2018-11-13 Vivint, Inc. Identification-based barrier techniques
US10657749B2 (en) 2014-04-25 2020-05-19 Vivint, Inc. Automatic system access using facial recognition
CN104038827B (en) * 2014-06-06 2018-02-02 小米科技有限责任公司 Multi-medium play method and device
US20150373293A1 (en) * 2014-06-24 2015-12-24 Sony Corporation Video acquisition with adaptive frame rate
CN104217197B (en) * 2014-08-27 2018-04-13 华南理工大学 A kind of reading method and device of view-based access control model gesture
EP3189370A1 (en) * 2014-09-01 2017-07-12 Eyra Ltd Process and wearable device equipped with stereoscopic vision for helping the user
US20160125217A1 (en) * 2014-11-05 2016-05-05 Hand Held Products, Inc. Barcode scanning system using wearable device with embedded camera
US10373178B2 (en) * 2014-12-13 2019-08-06 Spinach Marketing, LLC Display monitoring system
EP3286619B1 (en) * 2015-06-29 2024-08-21 Essilor International A scene image analysis module
US20170038607A1 (en) * 2015-08-04 2017-02-09 Rafael Camara Enhanced-reality electronic device for low-vision pathologies, and implant procedure
US9949056B2 (en) 2015-12-23 2018-04-17 Ecole Polytechnique Federale De Lausanne (Epfl) Method and apparatus for presenting to a user of a wearable apparatus additional information related to an audio scene
JP6742816B2 (en) * 2016-05-26 2020-08-19 キヤノン株式会社 Electronic device, display device, and display control method
US10262010B2 (en) * 2016-11-02 2019-04-16 International Business Machines Corporation Screen capture data amalgamation
US11160688B2 (en) * 2016-11-10 2021-11-02 Samsung Electronics Co., Ltd. Visual aid display device and method of operating the same
US10366286B2 (en) * 2016-12-13 2019-07-30 Google Llc Detection of traffic light signal changes
US10679669B2 (en) * 2017-01-18 2020-06-09 Microsoft Technology Licensing, Llc Automatic narration of signal segment
WO2018207202A1 (en) * 2017-05-07 2018-11-15 Shirpurwala Fazle Imdad Altaf A wearable device assembly
US10706278B2 (en) * 2017-07-14 2020-07-07 Adobe Inc. Syncing digital and physical documents
CN107465813A (en) * 2017-07-14 2017-12-12 上海青橙实业有限公司 Information-reading method, mobile terminal and onboard system
TWI657950B (en) * 2017-07-19 2019-05-01 緯創資通股份有限公司 Auxiliary identification device for indicator object and auxiliary identification and display method therefore
RU2657181C1 (en) * 2017-09-01 2018-06-08 Общество с ограниченной ответственностью "Аби Продакшн" Method of improving quality of separate frame recognition
WO2019093105A1 (en) * 2017-11-07 2019-05-16 株式会社 資生堂 Client device, server, and program
US11538257B2 (en) 2017-12-08 2022-12-27 Gatekeeper Inc. Detection, counting and identification of occupants in vehicles
CN108764007A (en) * 2018-02-10 2018-11-06 集智学园(北京)科技有限公司 Based on OCR with text analysis technique to the measurement method of attention
US10860088B2 (en) * 2018-05-03 2020-12-08 Microsoft Technology Licensing, Llc Method and system for initiating application and system modal control based on hand locations
EP3809267A1 (en) * 2018-05-10 2021-04-21 Techsee Augmented Vision Ltd. Methods and systems for providing interactive support sessions
US10481700B1 (en) * 2018-06-21 2019-11-19 Qualcomm Incorporated Frame rate setting for power efficient gesture detection
US11200656B2 (en) * 2019-01-11 2021-12-14 Universal City Studios Llc Drop detection systems and methods
US11106934B2 (en) * 2019-02-11 2021-08-31 Innovaccer Inc. Automatic visual display overlays of contextually related data from multiple applications
US11521512B2 (en) * 2019-02-19 2022-12-06 Illinois Tool Works Inc. Systems for simulating joining operations using mobile devices
CN109934210B (en) * 2019-05-17 2019-08-09 上海肇观电子科技有限公司 Printed page analysis method, reading aids, circuit and medium
RU193964U1 (en) * 2019-05-22 2019-11-21 Федеральное государственное бюджетное образовательное учреждение высшего образования "Российский государственный университет им. А.Н. Косыгина (Технологии. Дизайн. Искусство.)" Tactile sheath cane
US10867193B1 (en) * 2019-07-10 2020-12-15 Gatekeeper Security, Inc. Imaging systems for facial detection, license plate reading, vehicle overview and vehicle make, model, and color detection
US11944380B1 (en) * 2019-09-25 2024-04-02 Welch Allyn, Inc. Systems and methods to facilitate vision screening and reporting
US11196965B2 (en) 2019-10-25 2021-12-07 Gatekeeper Security, Inc. Image artifact mitigation in scanners for entry control systems
US11580727B2 (en) * 2020-01-06 2023-02-14 Orcam Technologies Ltd. Systems and methods for matching audio and image information
EP3876025A1 (en) 2020-03-02 2021-09-08 Siemens Aktiengesellschaft Obstacle detection and collision warning assembly
US11520974B2 (en) 2020-03-30 2022-12-06 Adobe Inc. Sharing of user markings between printed and digital documents
US11830357B1 (en) * 2020-04-07 2023-11-28 Emmett Murphy Road user vulnerability state classification and reporting system and method
CN113763456A (en) * 2020-06-01 2021-12-07 聚晶半导体股份有限公司 Image detection device and image detection method
TWI786409B (en) * 2020-06-01 2022-12-11 聚晶半導體股份有限公司 Image detection device and image detection method
JP7388297B2 (en) * 2020-06-11 2023-11-29 オムロン株式会社 Communication support device, communication support method, and program
JP2022028263A (en) * 2020-08-03 2022-02-16 オムロン株式会社 Communication support device, communication support method, communication support program, and server device
US11320903B1 (en) 2020-10-20 2022-05-03 Rovi Guides, Inc. Methods and systems of extended reality environment interaction based on eye motions
US11747896B2 (en) 2020-10-20 2023-09-05 Rovi Guides, Inc. Methods and systems of extended reality environment interaction based on eye motions
US11609629B2 (en) 2020-10-20 2023-03-21 Rovi Guides, Inc. Methods and systems of extended reality environment interaction based on eye motions
US11392198B2 (en) * 2020-10-20 2022-07-19 ROVl GUIDES, INC. Methods and systems of extended reality environment interaction based on eye motions
US11281291B1 (en) 2020-10-20 2022-03-22 Rovi Guides, Inc. Methods and systems of extended reality environment interaction based on eye motions
JP7494130B2 (en) * 2021-01-19 2024-06-03 株式会社東芝 Information processing system, information processing method, and program
US11435857B1 (en) * 2021-04-29 2022-09-06 Google Llc Content access and navigation using a head-mounted device
KR20240046552A (en) * 2021-08-12 2024-04-09 구글 엘엘씨 Dynamic capture parameter processing for low power
WO2023118967A1 (en) * 2021-12-23 2023-06-29 Orcam Technologies Ltd. Apparatus and methods for assisting in reading
US20230290150A1 (en) * 2022-03-09 2023-09-14 Motorola Solutions, Inc. Monitoring system and method for identifying a changed object of interest using an access control system
EP4354262A1 (en) * 2022-10-11 2024-04-17 Meta Platforms Technologies, LLC Pre-scanning and indexing nearby objects during load
CN115471874B (en) * 2022-10-28 2023-02-07 山东新众通信息科技有限公司 Construction site dangerous behavior identification method based on monitoring video

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060017810A1 (en) * 2004-04-02 2006-01-26 Kurzweil Raymond C Mode processing in portable reading machine
US20130329023A1 (en) * 2012-06-11 2013-12-12 Amazon Technologies, Inc. Text recognition driven functionality

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742264A (en) 1995-01-24 1998-04-21 Matsushita Electric Industrial Co., Ltd. Head-mounted display
US6115482A (en) * 1996-02-13 2000-09-05 Ascent Technology, Inc. Voice-output reading system with gesture-based navigation
SE0002691D0 (en) * 2000-07-17 2000-07-17 Maarten Hansson Embedded commands in digital images
US6997556B2 (en) 2001-10-01 2006-02-14 Ernst Pfleger Method for detecting, evaluating, and analyzing look sequences
AU2002342067A1 (en) * 2001-10-12 2003-04-22 Hrl Laboratories, Llc Vision-based pointer tracking method and apparatus
FR2834632A1 (en) 2002-01-15 2003-07-18 Oleg Tretiakoff PORTABLE READING MACHINE FOR THE BLIND
US7251346B2 (en) * 2002-11-19 2007-07-31 Honda Motor Co., Ltd. Moving object detection device, moving object detection method, and moving object detection program
US20040233192A1 (en) 2003-05-22 2004-11-25 Hopper Stephen A. Focally-controlled imaging system and method
US7312819B2 (en) 2003-11-24 2007-12-25 Microsoft Corporation Robust camera motion analysis for home video
US20050208457A1 (en) 2004-01-05 2005-09-22 Wolfgang Fink Digital object recognition audio-assistant for the visually impaired
US8442331B2 (en) * 2004-02-15 2013-05-14 Google Inc. Capturing text from rendered documents using supplemental information
US8873890B2 (en) * 2004-04-02 2014-10-28 K-Nfb Reading Technology, Inc. Image resizing for optical character recognition in portable reading machine
US7627142B2 (en) 2004-04-02 2009-12-01 K-Nfb Reading Technology, Inc. Gesture processing with low resolution images with high resolution processing for optical character recognition for a reading machine
WO2007028166A2 (en) 2005-09-02 2007-03-08 Blindsight, Inc. A system and method for detecting text in real-world color images
JP4961850B2 (en) 2006-06-15 2012-06-27 ソニー株式会社 Motion detection method, motion detection method program, recording medium recording motion detection method program, and motion detection apparatus
JP5119636B2 (en) 2006-09-27 2013-01-16 ソニー株式会社 Display device and display method
CN101378456B (en) * 2007-08-28 2010-06-02 鸿富锦精密工业(深圳)有限公司 Apparatus for sensing electronic image and remote-control method thereof
US8200011B2 (en) 2007-09-27 2012-06-12 Behavioral Recognition Systems, Inc. Context processor for video analysis system
EP2065871B1 (en) 2007-11-30 2010-05-26 beyo GmbH Reading device for blind or visually impaired persons
US8154771B2 (en) * 2008-01-29 2012-04-10 K-Nfb Reading Technology, Inc. Training a user on an accessiblity device
US20090313020A1 (en) 2008-06-12 2009-12-17 Nokia Corporation Text-to-speech user interface control
WO2010034025A2 (en) 2008-09-22 2010-03-25 Uni-Pixel Displays, Inc. Field sequential color encoding for displays
US8358834B2 (en) 2009-08-18 2013-01-22 Behavioral Recognition Systems Background model for complex and dynamic scenes
US20110182471A1 (en) * 2009-11-30 2011-07-28 Abisee, Inc. Handling information flow in printed text processing
US20120212406A1 (en) 2010-02-28 2012-08-23 Osterhout Group, Inc. Ar glasses with event and sensor triggered ar eyepiece command and control facility of the ar eyepiece
US8704889B2 (en) * 2010-03-16 2014-04-22 Hi-Tech Solutions Ltd. Method and apparatus for acquiring images of car license plates
US8532336B2 (en) 2010-08-17 2013-09-10 International Business Machines Corporation Multi-mode video event indexing
US8452600B2 (en) 2010-08-18 2013-05-28 Apple Inc. Assisted reader
US20130169536A1 (en) 2011-02-17 2013-07-04 Orcam Technologies Ltd. Control of a wearable device
US20120212593A1 (en) 2011-02-17 2012-08-23 Orcam Technologies Ltd. User wearable visual assistance system
US20130271584A1 (en) 2011-02-17 2013-10-17 Orcam Technologies Ltd. User wearable visual assistance device
US8630454B1 (en) 2011-05-31 2014-01-14 Google Inc. Method and system for motion detection in an image
US9092674B2 (en) * 2011-06-23 2015-07-28 International Business Machines Corportion Method for enhanced location based and context sensitive augmented reality translation
KR101851239B1 (en) 2011-11-08 2018-04-23 삼성전자 주식회사 Device and method for processing an image expression of wireless terminal
US9024844B2 (en) 2012-01-25 2015-05-05 Microsoft Technology Licensing, Llc Recognition of image on external display
US20130253980A1 (en) 2012-03-20 2013-09-26 Nokia Corporation Method and apparatus for associating brand attributes with a user
US20140003654A1 (en) 2012-06-29 2014-01-02 Nokia Corporation Method and apparatus for identifying line-of-sight and related objects of subjects in images and videos
US20140160170A1 (en) 2012-12-06 2014-06-12 Nokia Corporation Provision of an Image Element on a Display Worn by a User
US10339406B2 (en) 2013-03-15 2019-07-02 Orcam Technologies Ltd. Apparatus and method for using background change to determine context

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060017810A1 (en) * 2004-04-02 2006-01-26 Kurzweil Raymond C Mode processing in portable reading machine
US20130329023A1 (en) * 2012-06-11 2013-12-12 Amazon Technologies, Inc. Text recognition driven functionality

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10248856B2 (en) 2014-01-14 2019-04-02 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US9578307B2 (en) 2014-01-14 2017-02-21 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US20150198454A1 (en) * 2014-01-14 2015-07-16 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US20150198455A1 (en) * 2014-01-14 2015-07-16 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US9629774B2 (en) 2014-01-14 2017-04-25 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US9915545B2 (en) * 2014-01-14 2018-03-13 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US10360907B2 (en) 2014-01-14 2019-07-23 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US10024679B2 (en) * 2014-01-14 2018-07-17 Toyota Motor Engineering & Manufacturing North America, Inc. Smart necklace with stereo vision and onboard processing
US20150316979A1 (en) * 2014-05-02 2015-11-05 Wolfcom Enterprises System and method for body-worn camera with re-connect feature
US10024667B2 (en) * 2014-08-01 2018-07-17 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable earpiece for providing social and environmental awareness
US20160033280A1 (en) * 2014-08-01 2016-02-04 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable earpiece for providing social and environmental awareness
US9922236B2 (en) 2014-09-17 2018-03-20 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable eyeglasses for providing social and environmental awareness
US10024678B2 (en) * 2014-09-17 2018-07-17 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable clip for providing social and environmental awareness
USD768024S1 (en) 2014-09-22 2016-10-04 Toyota Motor Engineering & Manufacturing North America, Inc. Necklace with a built in guidance device
US9576460B2 (en) 2015-01-21 2017-02-21 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable smart device for hazard detection and warning based on image and audio data
US10490102B2 (en) 2015-02-10 2019-11-26 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for braille assistance
WO2016133477A1 (en) * 2015-02-16 2016-08-25 Kemal KARAOĞLAN Walking stick and audible-eye system embedded in surfaces and tactile paths for the visually impaired
US9586318B2 (en) 2015-02-27 2017-03-07 Toyota Motor Engineering & Manufacturing North America, Inc. Modular robot with smart device
US10391631B2 (en) 2015-02-27 2019-08-27 Toyota Motor Engineering & Manufacturing North America, Inc. Modular robot with smart device
US9811752B2 (en) 2015-03-10 2017-11-07 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable smart device and method for redundant object identification
US9677901B2 (en) 2015-03-10 2017-06-13 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for providing navigation instructions at optimal times
US9972216B2 (en) 2015-03-20 2018-05-15 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for storing and playback of information for blind users
US20160360146A1 (en) * 2015-06-02 2016-12-08 Taser International, Inc. User-Worn Recording System
US9898039B2 (en) 2015-08-03 2018-02-20 Toyota Motor Engineering & Manufacturing North America, Inc. Modular smart necklace
US20170228597A1 (en) * 2016-01-06 2017-08-10 Orcam Technologies Ltd. Wearable apparatus and methods for causing a paired device to execute selected functions
US10552679B2 (en) * 2016-01-06 2020-02-04 Orcam Technologies Ltd. Wearable apparatus and methods for causing a paired device to execute selected functions
US10733446B2 (en) 2016-01-06 2020-08-04 Orcam Technologies Ltd. Wearable apparatus and methods for causing a paired device to execute selected functions
US10024680B2 (en) 2016-03-11 2018-07-17 Toyota Motor Engineering & Manufacturing North America, Inc. Step based guidance system
US9958275B2 (en) 2016-05-31 2018-05-01 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for wearable smart device communications
US10561519B2 (en) 2016-07-20 2020-02-18 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable computing device having a curved back to reduce pressure on vertebrae
US20190329364A1 (en) * 2016-08-08 2019-10-31 The Johns Hopkins University Object Recognition and Presentation for the Visually Impaired
US10843299B2 (en) * 2016-08-08 2020-11-24 The Johns Hopkins University Object recognition and presentation for the visually impaired
US10432851B2 (en) 2016-10-28 2019-10-01 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable computing device for detecting photography
US10012505B2 (en) 2016-11-11 2018-07-03 Toyota Motor Engineering & Manufacturing North America, Inc. Wearable system for providing walking directions
US10521669B2 (en) 2016-11-14 2019-12-31 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for providing guidance or feedback to a user
US10172760B2 (en) 2017-01-19 2019-01-08 Jennifer Hendrix Responsive route guidance and identification system
US11474683B2 (en) * 2017-03-10 2022-10-18 Samsung Electronics Co., Ltd. Portable device and screen control method of portable device
WO2019053509A3 (en) * 2017-09-18 2019-05-02 Orcam Technologies Ltd. User-augmented wearable camera system with variable image processing

Also Published As

Publication number Publication date
US20180218643A1 (en) 2018-08-02
US20200219414A1 (en) 2020-07-09
US10636322B2 (en) 2020-04-28
US20140253701A1 (en) 2014-09-11
US9911361B2 (en) 2018-03-06
US11335210B2 (en) 2022-05-17
WO2014140800A1 (en) 2014-09-18

Similar Documents

Publication Publication Date Title
US20140253702A1 (en) Apparatus and method for executing system commands based on captured image data
US10592763B2 (en) Apparatus and method for using background change to determine context
US20140272815A1 (en) Apparatus and method for performing actions based on captured image data

Legal Events

Date Code Title Description
AS Assignment

Owner name: ORCAM TECHNOLOGIES LTD., ISRAEL

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:WEXLER, YONATAN;SHASHUA, AMNON;REEL/FRAME:031999/0624

Effective date: 20131216

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION