PATENT DOCUMENT

Publication Number: US-10891800-B1
Application Number: US-202016897551-A
Country: US
Kind Code: B1

Title: Providing features of an electronic product in an augmented reality environment

Abstract:
The present disclosure relates to providing a software feature of an electronic product in an augmented reality (AR) environment. In some embodiments, images are obtained using one or more image sensors, a determination is made whether the obtained images include printed media depicting the electronic product, when the obtained images include the printed media depicting the electronic product, a virtual object corresponding to the electronic product is displayed in the AR environment, and the software feature of the electronic product is provided with the virtual object.

Claims:
What is claimed is: 
     
       1. A device for providing a software feature of an electronic product in an augmented reality (AR) environment, comprising:
 one or more processors; and 
 memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: 
 obtaining images using one or more image sensors; 
 determining whether the obtained images include printed media depicting the electronic product; 
 in accordance with a first set of one or more conditions being satisfied, the first set of one or more conditions including a first condition that is satisfied when the obtained images include the printed media depicting a screen of the electronic product:
 displaying a virtual object corresponding to the electronic product in the AR environment, wherein the virtual object includes a virtual screen overlaying the screen of the electronic product depicted in the printed media; and 
 
 in accordance with a second set of one or more conditions being satisfied, the second set of one or more conditions including a second condition that is satisfied when the virtual object corresponding to the electronic product is displayed:
 displaying, with the virtual screen of the virtual object, the software feature of the electronic product. 
 
 
     
     
       2. The device of  claim 1 , wherein the one or more programs further include instructions for:
 detecting a user interaction with the software feature; and 
 modifying the virtual object corresponding to the electronic product based on the user interaction. 
 
     
     
       3. The device of  claim 2 , wherein detecting the user interaction comprises:
 detecting a touch contact on a touch-screen display at a location corresponding to the provided software feature. 
 
     
     
       4. The device of  claim 2 , wherein detecting the user interaction comprises:
 detecting that a physical position of the user&#39;s hand or finger corresponds to a position in the AR environment of the software feature. 
 
     
     
       5. The device of  claim 1 , wherein the first set of one or more conditions include a third condition that is satisfied when the printed media corresponds to predefined printed media. 
     
     
       6. The device of  claim 5 , wherein the predefined printed media is a predefined book, a predefined page of a predefined book, or a predefined depiction of the electronic product. 
     
     
       7. The device of  claim 1 , wherein the first set of one or more conditions include a sixth condition that is satisfied when a user input is detected. 
     
     
       8. The device of  claim 1 , wherein the second set of one or more conditions include a seventh condition that is satisfied when a user interaction with the virtual object is detected. 
     
     
       9. The device of  claim 1 , wherein providing the software feature includes displaying, with the virtual screen of the virtual object corresponding to the electronic product, an artificial boot-up sequence that depicts a boot-up sequence of the electronic product. 
     
     
       10. The device of  claim 1 , wherein providing the software feature includes displaying, with the virtual screen of the virtual object corresponding to the electronic product, a video depicting one or more aspects of the software feature. 
     
     
       11. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors, the one or more programs including instructions for:
 obtaining images using one or more image sensors; 
 determining whether the obtained images include printed media depicting the electronic product; 
 in accordance with a first set of one or more conditions being satisfied, the first set of one or more conditions including a first condition that is satisfied when the obtained images include the printed media depicting a screen of the electronic product:
 displaying a virtual object corresponding to the electronic product in the AR environment, wherein the virtual object includes a virtual screen overlaying the screen of the electronic product depicted in the printed media; and 
 
 in accordance with a second set of one or more conditions being satisfied, the second set of one or more conditions including a second condition that is satisfied when the virtual object corresponding to the electronic product is displayed:
 displaying, with the virtual screen of the virtual object, the software feature of the electronic product. 
 
 
     
     
       12. The non-transitory computer-readable storage medium of  claim 11 , wherein the one or more programs further include instructions for:
 detecting a user interaction with the software feature; and 
 modifying the virtual object corresponding to the electronic product based on the user interaction. 
 
     
     
       13. The non-transitory computer-readable storage medium of  claim 12 , wherein detecting the user interaction comprises:
 detecting a touch contact on a touch-screen display at a location corresponding to the provided software feature. 
 
     
     
       14. The non-transitory computer-readable storage medium of  claim 12 , wherein detecting the user interaction comprises:
 detecting that a physical position of the user&#39;s hand or finger corresponds to a position in the AR environment of the software feature. 
 
     
     
       15. The non-transitory computer-readable storage medium of  claim 11 , wherein the first set of one or more conditions include a third condition that is satisfied when the printed media corresponds to predefined printed media. 
     
     
       16. The non-transitory computer-readable storage medium of  claim 15 , wherein the predefined printed media is a predefined book, a predefined page of a predefined book, or a predefined depiction of the electronic product. 
     
     
       17. The non-transitory computer-readable storage medium of  claim 11 , wherein the first set of one or more conditions include a sixth condition that is satisfied when a user input is detected. 
     
     
       18. The non-transitory computer-readable storage medium of  claim 11 , wherein the second set of one or more conditions include a seventh condition that is satisfied when a user interaction with the virtual object is detected. 
     
     
       19. The non-transitory computer-readable storage medium of  claim 11 , wherein providing the software feature includes displaying, with the virtual screen of the virtual object corresponding to the electronic product, an artificial boot-up sequence that depicts a boot-up sequence of the electronic product. 
     
     
       20. The non-transitory computer-readable storage medium of  claim 11 , wherein providing the software feature includes displaying, with the virtual screen of the virtual object corresponding to the electronic product, a video depicting one or more aspects of the software feature. 
     
     
       21. A method for providing a software feature of an electronic product in an augmented reality (AR) environment, the method comprising:
 obtaining images using one or more image sensors; 
 determining whether the obtained images include printed media depicting the electronic product; 
 in accordance with a first set of one or more conditions being satisfied, the first set of one or more conditions including a first condition that is satisfied when the obtained images include the printed media depicting a screen of the electronic product:
 displaying a virtual object corresponding to the electronic product in the AR environment, wherein the virtual object includes a virtual screen overlaying the screen of the electronic product depicted in the printed media; and 
 
 in accordance with a second set of one or more conditions being satisfied, the second set of one or more conditions including a second condition that is satisfied when the virtual object corresponding to the electronic product is displayed:
 displaying, with the virtual screen of the virtual object, the software feature of the electronic product. 
 
 
     
     
       22. The method of  claim 21 , further comprising:
 detecting a user interaction with the software feature; and 
 modifying the virtual object corresponding to the electronic product based on the user interaction. 
 
     
     
       23. The method of  claim 22 , wherein detecting the user interaction comprises:
 detecting a touch contact on a touch-screen display at a location corresponding to the provided software feature. 
 
     
     
       24. The method of  claim 22 , wherein detecting the user interaction comprises:
 detecting that a physical position of the user&#39;s hand or finger corresponds to a position in the AR environment of the software feature. 
 
     
     
       25. The method of  claim 21 , wherein the first set of one or more conditions include a third condition that is satisfied when the printed media corresponds to predefined printed media. 
     
     
       26. The method of  claim 25 , wherein the predefined printed media is a predefined book, a predefined page of a predefined book, or a predefined depiction of the electronic product. 
     
     
       27. The method of  claim 21 , wherein the first set of one or more conditions include a sixth condition that is satisfied when a user input is detected. 
     
     
       28. The method of  claim 21 , wherein the second set of one or more conditions include a seventh condition that is satisfied when a user interaction with the virtual object is detected. 
     
     
       29. The method of  claim 21 , wherein providing the software feature includes displaying, with the virtual screen of the virtual object corresponding to the electronic product, an artificial boot-up sequence that depicts a boot-up sequence of the electronic product. 
     
     
       30. The method of  claim 21 , wherein providing the software feature includes displaying, with the virtual screen of the virtual object corresponding to the electronic product, a video depicting one or more aspects of the software feature.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 16/140,286, entitled “PROVIDING FEATURES OF AN ELECTRONIC PRODUCT IN AN AUGMENTED REALITY ENVIRONMENT,” filed on Sep. 24, 2018, which claims the benefit of U.S. Provisional Patent Application No. 62/565,668, entitled “PROVIDING FEATURES OF AN ELECTRONIC PRODUCT IN AN AUGMENTED REALITY ENVIRONMENT,” filed on Sep. 29, 2017, which is hereby incorporated by reference in its entirety. 
    
    
     TECHNICAL FIELD 
     The present disclosure relates generally to augmented reality environments, and more specifically to representations of electronic products in augmented reality environments. 
     BACKGROUND 
     Printed media are physical objects that include depictions of text and/or images. Examples of printed media include books, magazines, newspapers, flyers, billboards, posters, and the like. In some cases, printed media include depictions of physical, real-world products, such as mobile phones, computers, televisions, and so on. 
     SUMMARY 
     Described herein are techniques for providing features of an electronic product in an augmented reality (AR) environment. In some embodiments, a technique for providing software features of the electronic product in the AR environment includes obtaining images using one or more image sensors; determining whether the obtained images include printed media depicting the electronic product; in accordance with a first set of one or more conditions being satisfied, the first set of one or more conditions including a first condition that is satisfied when the obtained images include the printed media depicting the electronic product, displaying a virtual object corresponding to the electronic product in the AR environment; and in accordance with a second set of one or more conditions being satisfied, the second set of one or more conditions including a second condition that is satisfied when the virtual object corresponding to the electronic product is displayed, providing, with the virtual object, the software feature of the electronic product. 
     In some embodiments, the technique further includes detecting a user interaction with the software feature; and modifying the virtual object corresponding to the electronic product based on the user interaction. In some embodiments, detecting the user interaction includes detecting a touch contact on a touch-screen display at a location corresponding to the provided software feature. In some embodiments, detecting the user interaction includes detecting that a physical position of the user&#39;s hand or finger corresponds to a position in the AR environment of the software feature. 
     In some embodiments, the first set of one or more conditions include a third condition that is satisfied when the printed media corresponds to predefined printed media. In some embodiments, the predefined printed media is a predefined book, a predefined page of a predefined book, or a predefined depiction of the electronic product. In some embodiments, the first set of one or more conditions include a fifth condition that is satisfied when the depiction of the electronic product in the printed media includes a depiction of a screen of the electronic product. In some embodiments, the first set of one or more conditions include a sixth condition that is satisfied when a user input is detected. 
     In some embodiments, the second set of one or more conditions include a seventh condition that is satisfied when a user interaction with the virtual object is detected. 
     In some embodiments, providing the software feature includes displaying, with the virtual object corresponding to the electronic product, an artificial boot-up sequence that depicts a boot-up sequence of the electronic product. In some embodiments, providing the software feature includes displaying, with the virtual object corresponding to the electronic product, a video depicting one or more aspects of the software feature. 
     In some embodiments, a device for providing the software feature of the electronic product in the AR environment includes one or more processors and memory storing one or more programs configured to be executed by the one or more processors. The one or more programs include instructions for obtaining images using one or more image sensors; determining whether the obtained images include printed media depicting the electronic product; in accordance with a first set of one or more conditions being satisfied, the first set of one or more conditions including a first condition that is satisfied when the obtained images include the printed media depicting the electronic product, displaying a virtual object corresponding to the electronic product in the AR environment; and in accordance with a second set of one or more conditions being satisfied, the second set of one or more conditions including a second condition that is satisfied when the virtual object corresponding to the electronic product is displayed, providing, with the virtual object, the software feature of the electronic product. 
     In some embodiments, a non-transitory (or, optionally, transitory) computer-readable storage medium storing one or more programs configured to be executed by one or more processors provides the software feature of the electronic product in the AR environment. The one or more programs include instructions for obtaining images using one or more image sensors; determining whether the obtained images include printed media depicting the electronic product; in accordance with a first set of one or more conditions being satisfied, the first set of one or more conditions including a first condition that is satisfied when the obtained images include the printed media depicting the electronic product, displaying a virtual object corresponding to the electronic product in the AR environment; and in accordance with a second set of one or more conditions being satisfied, the second set of one or more conditions including a second condition that is satisfied when the virtual object corresponding to the electronic product is displayed, providing, with the virtual object, the software feature of the electronic product. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       In the following description, reference is made to the accompanying drawings which form a part thereof, and which illustrate several embodiments of the present disclosure. It is understood that other embodiments may be utilized and structural and operational changes may be made without departing from the scope of the present disclosure. The use of the same reference symbols in different drawings indicates similar or identical items. 
         FIGS. 1A-1B  depict exemplary systems for use in various computer-generated reality technologies, including virtual reality and mixed reality. 
         FIGS. 1C-1E  illustrate embodiments of the system in the form of mobile devices. 
         FIGS. 1F-1H  illustrate embodiments of the system in the form of head-mounted display devices. 
         FIG. 1I  illustrates an embodiment of the system in the form of a head-up display device. 
         FIG. 2  illustrates an example of physical printed media. 
         FIG. 3  illustrates an embodiment of a device displaying a representation of printed media. 
         FIG. 4  illustrates an embodiment of a device displaying a virtual electronic product overlaying a representation of printed media. 
         FIG. 5  illustrates an embodiment of a device displaying a virtual electronic product after a user interaction with an emulated software feature. 
         FIG. 6  illustrates another embodiment of a device displaying a virtual electronic product overlaying a representation of printed media. 
         FIG. 7  illustrates an exemplary technique for providing a software feature of an electronic product in an augmented reality environment. 
     
    
    
     DETAILED DESCRIPTION 
     Various embodiments of electronic systems and techniques for using such systems in relation to various computer-generated reality technologies, including virtual reality and mixed reality (which incorporates sensory inputs from a physical environment), are described. In particular, the present disclosure provides techniques for displaying a virtual object corresponding to an electronic product in an AR environment. The electronic product is identified in physical printed media (e.g., magazine, newspaper, flyer, billboard, poster, and so forth), and then a virtual object corresponding to the electronic product is displayed in the AR environment. The virtual object includes one or more software features (e.g., boot-up sequence, user interfaces) of the physical electronic product. User interactions with the virtual object cause the virtual object to be modified in a manner resembling the physical electronic product. For example, a user may interact with a user interface displayed on virtual mobile phone in a similar manner as would be done on a real-world user interface of a physical mobile phone. 
     A physical environment (or real environment) refers to a physical world that people can sense and/or interact with without aid of electronic systems. Physical environments, such as a physical park, include physical articles (or physical objects or real objects), such as physical trees, physical buildings, and physical people. People can directly sense and/or interact with the physical environment, such as through sight, touch, hearing, taste, and smell. 
     In contrast, a computer-generated reality (CGR) environment refers to a wholly or partially simulated environment that people sense and/or interact with via an electronic system. In CGR, a subset of a person&#39;s physical motions, or representations thereof, are tracked, and, in response, one or more characteristics of one or more virtual objects simulated in the CGR environment are adjusted in a manner that comports with at least one law of physics. For example, a CGR system may detect a person&#39;s head turning and, in response, adjust graphical content and an acoustic field presented to the person in a manner similar to how such views and sounds would change in a physical environment. In some situations (e.g., for accessibility reasons), adjustments to characteristic(s) of virtual object(s) in a CGR environment may be made in response to representations of physical motions (e.g., vocal commands). 
     A person may sense and/or interact with a CGR object using any one of their senses, including sight, sound, touch, taste, and smell. For example, a person may sense and/or interact with audio objects that create a 3D or spatial audio environment that provides the perception of point audio sources in 3D space. In another example, audio objects may enable audio transparency, which selectively incorporates ambient sounds from the physical environment with or without computer-generated audio. In some CGR environments, a person may sense and/or interact only with audio objects. 
     Examples of CGR include virtual reality and mixed reality. 
     A virtual reality (VR) environment (or virtual environment) refers to a simulated environment that is designed to be based entirely on computer-generated sensory inputs for one or more senses. A VR environment comprises a plurality of virtual objects with which a person may sense and/or interact. For example, computer-generated imagery of trees, buildings, and avatars representing people are examples of virtual objects. A person may sense and/or interact with virtual objects in the VR environment through a simulation of the person&#39;s presence within the computer-generated environment, and/or through a simulation of a subset of the person&#39;s physical movements within the computer-generated environment. 
     In contrast to a VR environment, which is designed to be based entirely on computer-generated sensory inputs, a mixed reality (MR) environment refers to a simulated environment that is designed to incorporate sensory inputs from the physical environment, or a representation thereof, in addition to including computer-generated sensory inputs (e.g., virtual objects). On a virtuality continuum, a mixed reality environment is anywhere between, but not including, a wholly physical environment at one end and virtual reality environment at the other end. 
     In some MR environments, computer-generated sensory inputs may respond to changes in sensory inputs from the physical environment. Also, some electronic systems for presenting an MR environment may track location and/or orientation with respect to the physical environment to enable virtual objects to interact with real objects (that is, physical articles from the physical environment or representations thereof). For example, a system may account for movements so that a virtual tree appears stationary with respect to the physical ground. 
     Examples of mixed realities include augmented reality and augmented virtuality. 
     An augmented reality (AR) environment refers to a simulated environment in which one or more virtual objects are superimposed over a physical environment, or a representation thereof. For example, an electronic system for presenting an AR environment may have a transparent or translucent display through which a person may directly view the physical environment. The system may be configured to present virtual objects on the transparent or translucent display, so that a person, using the system, perceives the virtual objects superimposed over the physical environment. Alternatively, a system may have an opaque display and one or more imaging sensors that capture images or video of the physical environment, which are representations of the physical environment. The system composites the images or video with virtual objects, and presents the composition on the opaque display. A person, using the system, indirectly views the physical environment by way of the images or video of the physical environment, and perceives the virtual objects superimposed over the physical environment. As used herein, a video of the physical environment shown on an opaque display is called “pass-through video,” meaning a system uses one or more image sensor(s) to capture images of the physical environment, and uses those images in presenting the AR environment on the opaque display. Further alternatively, a system may have a projection system that projects virtual objects into the physical environment, for example, as a hologram or on a physical surface, so that a person, using the system, perceives the virtual objects superimposed over the physical environment. 
     An augmented reality environment also refers to a simulated environment in which a representation of a physical environment is transformed by computer-generated sensory information. For example, in providing pass-through video, a system may transform one or more sensor images to impose a select perspective (e.g., viewpoint) different than the perspective captured by the imaging sensors. As another example, a representation of a physical environment may be transformed by graphically modifying (e.g., enlarging) portions thereof, such that the modified portion may be representative but not photorealistic versions of the originally captured images. As a further example, a representation of a physical environment may be transformed by graphically eliminating or obfuscating portions thereof. 
     An augmented virtuality (AV) environment refers to a simulated environment in which a virtual or computer generated environment incorporates one or more sensory inputs from the physical environment. The sensory inputs may be representations of one or more characteristics of the physical environment. For example, an AV park may have virtual trees and virtual buildings, but people with faces photorealistically reproduced from images taken of physical people. As another example, a virtual object may adopt a shape or color of a physical article imaged by one or more imaging sensors. As a further example, a virtual object may adopt shadows consistent with the position of the sun in the physical environment. 
     There are many different types of electronic systems that enable a person to sense and/or interact with various CGR environments. Examples include head mounted systems, projection-based systems, heads-up displays (HUDs), vehicle windshields having integrated display capability, windows having integrated display capability, displays formed as lenses designed to be placed on a person&#39;s eyes (e.g., similar to contact lenses), headphones/earphones, speaker arrays, input systems (e.g., wearable or handheld controllers with or without haptic feedback), smartphones, tablets, and desktop/laptop computers. A head mounted system may have one or more speaker(s) and an integrated opaque display. Alternatively, a head mounted system may be configured to accept an external opaque display (e.g., a smartphone). The head mounted system may incorporate one or more imaging sensors to capture images or video of the physical environment, and/or one or more microphones to capture audio of the physical environment. Rather than an opaque display, a head mounted system may have a transparent or translucent display. The transparent or translucent display may have a medium through which light representative of images is directed to a person&#39;s eyes. The display may utilize digital light projection, OLEDs, LEDs, uLEDs, liquid crystal on silicon, laser scanning light source, or any combination of these technologies. The medium may be an optical waveguide, a hologram medium, an optical combiner, an optical reflector, or any combination thereof. In one embodiment, the transparent or translucent display may be configured to become opaque selectively. Projection-based systems may employ retinal projection technology that projects graphical images onto a person&#39;s retina. Projection systems also may be configured to project virtual objects into the physical environment, for example, as a hologram or on a physical surface. 
       FIG. 1A  and  FIG. 1B  depict exemplary system  100  for use in various computer-generated reality technologies, including virtual reality and mixed reality. 
     In some embodiments, as illustrated in  FIG. 1A , system  100  includes device  100   a . Device  100   a  includes various components, such as processor(s)  102 , RF circuitry(ies)  104 , memory(ies)  106 , image sensor(s)  108 , orientation sensor(s)  110 , microphone(s)  112 , location sensor(s)  116 , speaker(s)  118 , display(s)  120 , and touch-sensitive surface(s)  122 . These components optionally communicate over communication bus(es)  150  of device  100   a.    
     In some embodiments, elements of system  100  are implemented in a base station device (e.g., a computing device, such as a remote server, mobile device, or laptop) and other elements of the system  100  are implemented in a head-mounted display (HMD) device designed to be worn by the user, where the HMD device is in communication with the base station device. In some examples, device  100   a  is implemented in a base station device or a HMD device. 
     As illustrated in  FIG. 1B , in some embodiments, system  100  includes two (or more) devices in communication, such as through a wired connection or a wireless connection. First device  100   b  (e.g., a base station device) includes processor(s)  102 , RF circuitry(ies)  104 , and memory(ies)  106 . These components optionally communicate over communication bus(es)  150  of device  100   b . Second device  100   c  (e.g., a head-mounted device) includes various components, such as processor(s)  102 , RF circuitry(ies)  104 , memory(ies)  106 , image sensor(s)  108 , orientation sensor(s)  110 , microphone(s)  112 , location sensor(s)  116 , speaker(s)  118 , display(s)  120 , and touch-sensitive surface(s)  122 . These components optionally communicate over communication bus(es)  150  of device  100   c.    
     In some embodiments, system  100  is a mobile device, such as in the embodiments described with respect to device  100   a  in  FIGS. 1C-1E . In some embodiments, system  100  is a head-mounted display (HMD) device, such as in the embodiments described with respect to device  100   a  in  FIGS. 1F-1H . In some embodiments, system  100  is a wearable HUD device, such as in the embodiments described with respect to device  100   a  in FIG. H. 
     System  100  includes processor(s)  102  and memory(ies)  106 . Processor(s)  102  include one or more general processors, one or more graphics processors, and/or one or more digital signal processors. In some embodiments, memory(ies)  106  are one or more non-transitory computer-readable storage mediums (e.g., flash memory, random access memory) that store computer-readable instructions configured to be executed by processor(s)  102  to perform the techniques described below. 
     System  100  includes RF circuitry(ies)  104 . RF circuitry(ies)  104  optionally include circuitry for communicating with electronic devices, networks, such as the Internet, intranets, and/or a wireless network, such as cellular networks and wireless local area networks (LANs). RF circuitry(ies)  104  optionally includes circuitry for communicating using near-field communication and/or short-range communication, such as Bluetooth®. 
     System  100  includes display(s)  120 . In some examples, display(s)  120  include a first display (e.g., a left eye display panel) and a second display (e.g., a right eye display panel), each display for displaying images to a respective eye of the user. Corresponding images are simultaneously displayed on the first display and the second display. Optionally, the corresponding images include the same virtual objects and/or representations of the same physical objects from different viewpoints, resulting in a parallax effect that provides a user with the illusion of depth of the objects on the displays. In some examples, display(s)  120  include a single display. Corresponding images are simultaneously displayed on a first area and a second area of the single display for each eye of the user. Optionally, the corresponding images include the same virtual objects and/or representations of the same physical objects from different viewpoints, resulting in a parallax effect that provides a user with the illusion of depth of the objects on the single display. 
     In some embodiments, system  100  includes touch-sensitive surface(s)  122  for receiving user inputs, such as tap inputs and swipe inputs. In some examples, display(s)  120  and touch-sensitive surface(s)  122  form touch-sensitive display(s). 
     System  100  includes image sensor(s)  108 . Image sensors(s)  108  optionally include one or more visible light image sensor, such as charged coupled device (CCD) sensors, and/or complementary metal-oxide-semiconductor (CMOS) sensors operable to obtain images of physical objects from the real environment. Image sensor(s) also optionally include one or more infrared (IR) sensor(s), such as a passive IR sensor or an active IR sensor, for detecting infrared light from the real environment. For example, an active IR sensor includes an IR emitter, such as an IR dot emitter, for emitting infrared light into the real environment. Image sensor(s)  108  also optionally include one or more event camera(s) configured to capture movement of physical objects in the real environment. Image sensor(s)  108  also optionally include one or more depth sensor(s) configured to detect the distance of physical objects from system  100 . In some examples, system  100  uses CCD sensors, event cameras, and depth sensors in combination to detect the physical environment around system  100 . In some examples, image sensor(s)  108  include a first image sensor and a second image sensor. The first image sensor and the second image sensor are optionally configured to capture images of physical objects in the real environment from two distinct perspectives. In some examples, system  100  uses image sensor(s)  108  to receive user inputs, such as hand gestures. In some examples, system  100  uses image sensor(s)  108  to detect the position and orientation of system  100  and/or display(s)  120  in the real environment. For example, system  100  uses image sensor(s)  108  to track the position and orientation of display(s)  120  relative to one or more fixed objects in the real environment. 
     In some embodiments, system  100  includes microphones(s)  112 . System  100  uses microphone(s)  112  to detect sound from the user and/or the real environment of the user. In some examples, microphone(s)  112  includes an array of microphones (including a plurality of microphones) that optionally operate in tandem, such as to identify ambient noise or to locate the source of sound in space of the real environment. 
     System  100  includes orientation sensor(s)  110  for detecting orientation and/or movement of system  100  and/or display(s)  120 . For example, system  100  uses orientation sensor(s)  110  to track changes in the position and/or orientation of system  100  and/or display(s)  120 , such as with respect to physical objects in the real environment. Orientation sensor(s)  110  optionally include one or more gyroscopes and/or one or more accelerometers. 
       FIGS. 1C-1E  illustrate examples of system  100  in the form of device  100   a . In  FIGS. 1C-1E , device  100   a  is a mobile device, such as a cellular phone.  FIG. 1C  illustrates device  100   a  carrying out a virtual reality technique. Device  100   a  is displaying, on display  120 , a virtual environment  160  that includes virtual objects, such as sun  160   a , birds  160   b , and beach  160   c . Both the displayed virtual environment  160  and virtual objects (e.g.,  160   a ,  160   b ,  160   c ) of the virtual environment  160  are computer-generated imagery. Note that the virtual reality environment depicted in  FIG. 1C  does not include representations of physical objects from the real environment  180 , such as physical person  180   a  and physical tree  180   b , even though these elements of real environment  180  are within the field of view of image sensor(s)  108  of device  100   a.    
       FIG. 1D  illustrates device  100   a  carrying out a mixed reality technique, and in particular an augmented reality technique, using pass-through video. Device  100   a  is displaying, on display  120 , a representation  170  of the real environment  180  with virtual objects. The representation  170  of the real environment  180  includes representation  170   a  of person  180   a  and representation  170   b  of tree  180   b . For example, the device uses image sensor(s)  108  to capture images of the real environment  180  that are passed through for display on display  120 . Device  100   a  overlays hat  160   d , which is a virtual object generated by device  100   a , on the head of the representation  170   a  of person  180   a . Device  100   a  tracks the location and/or orientation of physical objects with respect to the position and/or orientation of device  100   a  to enable virtual objects to interact with physical objects from the real environment in the augmented reality environment. In this example, device  100   a  accounts for movements of device  100   a  and person  180   a  to display hat  160   d  as being on the head of the representation  170   a  of person  180   a , even as device  100   a  and person  180   a  move relative to one another. 
       FIG. 1E  illustrates device  100   a  carrying out a mixed reality technique, and in particular an augmented virtuality technique. Device  100   a  is displaying, on display  120 , a virtual environment  160  with representations of physical objects. The virtual environment  160  includes virtual objects (e.g., sun  160   a , birds  160   b ) and representation  170   a  of person  180   a . For example, device  100   a  uses image sensor(s)  108  to capture images of person  180   a  in real environment  180 . Device  100   a  places representation  170   a  of person  180   a  in virtual environment  160  for display on display  120 . Device  100   a  optionally tracks the location and/or orientation of physical objects with respect to the position and/or orientation of device  100   a  to enable virtual objects to interact with physical objects from real environment  180 . In this example, device  100   a  accounts for movements of device  100   a  and person  180   a  to display hat  160   d  as being on the head of representation  170   a  of person  180   a . Notably, in this example, device  100   a  does not display a representation of tree  180   b  even though tree  180   b  is also within the field of view of the image sensor(s) of device  100   a , in carrying out the mixed reality technique. 
       FIGS. 1F-1H  illustrate examples of system  100  in the form of device  100   a . In  FIGS. 1F-1H , device  100   a  is a HMD device configured to be worn on the head of a user, with each eye of the user viewing a respective display  120   a  and  120   b .  FIG. 1F  illustrates device  100   a  carrying out a virtual reality technique. Device  100   a  is displaying, on displays  120   a  and  120   b , a virtual environment  160  that includes virtual objects, such as sun  160   a , birds  160   b , and beach  160   c . The displayed virtual environment  160  and virtual objects (e.g.,  160   a ,  160   b ,  160   c ) are computer-generated imagery. In this example, device  100   a  simultaneously displays corresponding images on display  120   a  and display  120   b . The corresponding images include the same virtual environment  160  and virtual objects (e.g.,  160   a ,  160   b ,  160   c ) from different viewpoints, resulting in a parallax effect that provides a user with the illusion of depth of the objects on the displays. Note that the virtual reality environment depicted in  FIG. 1F  does not include representations of physical objects from the real environment, such as person  180   a  and tree  180   b  even though person  180   a  and tree  180   b  are within the field of view of the image sensor(s) of device  100   a , in carrying out the virtual reality technique. 
       FIG. 1G  illustrates device  100   a  carrying out an augmented reality technique using pass-through video. Device  100   a  is displaying, on displays  120   a  and  120   b , a representation  170  of real environment  180  with virtual objects. The representation  170  of real environment  180  includes representation  170   a  of person  180   a  and representation  170   b  of tree  180   b . For example, device  100   a  uses image sensor(s)  108  to capture images of the real environment  180  that are passed through for display on displays  120   a  and  120   b . Device  100   a  is overlaying a computer-generated hat  160   d  (a virtual object) on the head of representation  170   a  of person  180   a  for display on each of displays  120   a  and  120   b . Device  100   a  tracks the location and/or orientation of physical objects with respect to the position and/or orientation of device  100   a  to enable virtual objects to interact with physical objects from real environment  180 . In this example, device  100   a  accounts for movements of device  100   a  and person  180   a  to display hat  160   d  as being on the head of representation  170   a  of person  180   a.    
       FIG. 1H  illustrates device  100   a  carrying out a mixed reality technique, and in particular an augmented virtuality technique, using pass-through video. Device  100   a  is displaying, on displays  120   a  and  120   b , a virtual environment  160  with representations of physical objects. The virtual environment  160  includes virtual objects (e.g., sun  160   a , birds  160   b ) and representation  170   a  of person  180   a . For example, device  100   a  uses image sensor(s)  108  to capture images of person  180   a . Device  100   a  places the representation  170   a  of the person  180   a  in the virtual environment for display on displays  120   a  and  120   b . Device  100   a  optionally tracks the location and/or orientation of physical objects with respect to the position and/or orientation of device  100   a  to enable virtual objects to interact with physical objects from real environment  180 . In this example, device  100   a  accounts for movements of device  100   a  and person  180   a  to display hat  160   d  as being on the head of the representation  170   a  of person  180   a . Notably, in this example, device  100   a  does not display a representation of tree  180   b  even though tree  180   b  is also within the field of view of the image sensor(s)  108  of device  100   a , in carrying out the mixed reality technique. 
       FIG. 1I  illustrates an example of system  100  in the form of device  100   a . In  FIG. 1I , device  100   a  is a HUD device (e.g., a glasses device) configured to be worn on the head of a user, with each eye of the user viewing a respective heads-up display  120   c  and  120   d .  FIG. 1I  illustrates device  100   a  carrying out an augmented reality technique using heads-up displays  120   c  and  120   d . The heads-up displays  120   c  and  120   d  are (at least partially) transparent displays, thus allowing the user to view the real environment  180  in combination with heads-up displays  120   c  and  120   d . Device  100   a  is displaying, on each of heads-up displays  120   c  and  120   d , a virtual hat  160   d  (a virtual object). The device  100   a  tracks the location and/or orientation of physical objects in the real environment with respect to the position and/or orientation of device  100   a  and with respect to the position of the user&#39;s eyes to enable virtual objects to interact with physical objects from real environment  180 . In this example, device  100   a  accounts for movements of device  100   a , movements of the user&#39;s eyes with respect to device  100   a , and movements of person  180   a  to display hat  160   d  at locations on displays  120   c  and  120   d  such that it appears to the user that the hat  160   d  is on the head of person  180   a.    
       FIG. 2  illustrates an example of physical printed media  200  (e.g., a book). Printed media  200  includes pages  202   a - 202   b  that depict electronic products. For example, page  202   a  of printed media  200  depicts electronic product  204   a  (e.g., a mobile phone) and page  202   b  of printed media  200  depicts electronic product  204   b  (e.g., a desktop computer). While shown as a book in  FIG. 2 , printed media  200  may be any physical printed media, such as a magazine, newspaper, flyer, billboard, poster, and so forth. 
       FIG. 3  illustrates an embodiment of device  100   a  displaying, on display  120 , a representation  300  of printed media  200 , meaning that an image sensor of device  100   a  is capturing live image(s) of printed media  200  and display  120  is displaying relevant captured image content. Device  100   a  is an embodiment of system  100 , as described in reference to  FIGS. 1A-1B . In  FIG. 3 , device  100   a  is shown as a mobile device, such as a mobile phone. However, it should be understood that device  100   a  can be any device configured to display an augmented reality environment, such as the devices described in reference to  FIGS. 1D, 1G, and 1I . 
     The representation  300  of printed media  200  shown in  FIG. 3  includes a representation  302   a  of page  202   a  and a representation  304   a  of electronic product  204   a . For example, the device  100   a  uses one or more image sensors (such as image sensor(s)  108  described in reference to  FIGS. 1A-1B ) to capture images of the printed media  200  that are passed through for display on display  120 . In some embodiments, when device  100   a  detects that the captured images include a depiction of electronic product  204   a , an affordance is displayed to indicate that the depiction of electronic product  204   a  is detected, and that a virtual electronic product (e.g., a computer-generated three-dimensional virtual object corresponding to the electronic product) is available for display. 
     In some embodiments, the device  100   a  receives a user input  306 , such as a tap input, on touch-sensitive surface(s)  122 . In some embodiments, the user input  306  is at a location on the display  120  where the representation  304   a  of the electronic product  204   a  is being displayed. In some embodiments, the user input  306  is at a location of an affordance indicating the availability of a virtual electronic product (e.g., a computer-generated three-dimensional virtual object corresponding to the electronic product) for display. In response to receiving user input  306 , device  100   a  overlays or replaces the representation  304   a  of electronic product  204   a  with a virtual electronic product, as shown in  FIGS. 4-6 . 
     In some embodiments (such as with a HMD device or a HUD device), device  100   a  detects user input  306  by tracking the position of a user&#39;s hand or finger. When the device  100   a  determines that the user&#39;s hand or finger touches the depiction of electronic product  204   a  in printed media  200 , device  100   a  overlays or replaces the representation  304   a  of electronic product  204   a  with a virtual electronic product (e.g., a computer-generated three-dimensional virtual object corresponding to the electronic product), as shown in  FIGS. 4-6 . 
     In some embodiments, device  100   a  automatically displays a virtual electronic product (e.g., a computer-generated three-dimensional virtual object corresponding to the electronic product) in response to device  100   a  determining that printed media  200  depicts electronic product  204   a . In some embodiments, device  100   a  determines printed media  200  depicts electronic product  204   a  by detecting the appearance of electronic product  204   a  in images captured by device  100   a  (such as with image sensor(s)  108  described in reference to  FIGS. 1A-1B ). In some embodiments, device  100   a  determines printed media  200  depicts electronic product  204   a  by determining that images of the printed media  200  include other characteristics associated with electronic product  204   a , such as predefined text in the printed media  200 , unique symbols (such as a QR code) in the printed media  200 , and/or the location and orientation of content (such as text or images) in the printed media  200 . 
       FIG. 4  illustrates an embodiment of device  100   a  displaying, on display  120 , a virtual electronic product  404   a  overlaying representation  300  of printed media  200 . Device  100   a  is an embodiment of system  100 , as described in reference to  FIGS. 1A-1B . In  FIG. 4 , device  100   a  is shown as a mobile device, such as a mobile phone. However, it should be understood that device  100   a  can be any device configured to display an augmented reality environment, such as the devices described in reference to  FIGS. 1D, 1G , and H. 
     As shown in  FIG. 4 , representation  300  of printed media  200  includes representation  302   a  of page  202   a . Virtual electronic product  404   a  (e.g., a computer-generated three-dimensional virtual object corresponding to the electronic product) overlays the representation  302   a  of page  202   a . Device  100   a  tracks the location and/or orientation of printed media  200  with respect to the position and/or orientation of device  100   a  to enable the display of virtual electronic product  404   a  overlaying the representation  302   a  of page  202   a . In this way, the representation  304   a  of electronic product  204   a  (as shown in  FIG. 3 ) appears to be replaced with virtual electronic product  404   a.    
     In some embodiments, virtual electronic product  404   a  is displayed in response to the device  100   a  receiving a user input (such as user input  306  described in reference to  FIG. 3 ). In some embodiments, virtual electronic product  404   a  is automatically displayed in response to device  100   a  determining that printed media  200  depicts electronic product  204   a . In some embodiments, device  100   a  determines that printed media  200  depicts electronic product  204   a  by detecting the appearance of electronic product  204   a  in images captured by device  100   a  (such as with image sensor(s)  108  described in reference to  FIGS. 1A-1B ). In some embodiments, device  100   a  determines printed media  200  depicts electronic product  204   a  by determining that images of the printed media  200  include other characteristics associated with electronic product  204   a , such as predefined text in the printed media  200 , unique symbols (such as a QR code) in the printed media  200 , and/or the location and orientation of content (such as text or images) in the printed media  200 . 
     In some embodiments, before displaying virtual electronic product  404   a , device  100   a  determines whether printed media  200  is predefined printed media, such as a specific book, a specific page of a book, or a specific depiction of the electronic product. In some embodiments, device  100   a  determines that printed media  200  is predefined printed media by detecting that images of the printed media  200  include characteristics associated with the predefined printed media, such as predefined text in the printed media  200 , unique symbols (such as a QR code) in the printed media  200 , and/or the location and orientation of content (such as text or images) in the printed media  200 . By determining whether printed media  200  is predefined printed media, device  100   a  limits access to the virtual electronic product  404   a  to devices having access to the predefined printed media. Printed media other than the predefined printed media that depict the electronic product would not result in device  100   a  displaying virtual electronic product  404   a . Alternatively or in addition, in some embodiments, when predefined printed media is detected, device  100   a  provides additional information about the predefined printed media and/or electronic products depicted in the predefined printed media, in addition to the virtual electronic product  404   a  (e.g., extra content is provided when device  100   a  has access to the predefined printed media). 
     In some embodiments, access to virtual electronic product  404   a  is limited to predefined depictions of electronic product  204   a  in printed media  200 . For example, device  100   a  determines whether the depiction of electronic product  204   a  in printed media  200  includes a depiction of a screen of electronic product  204   a  before displaying virtual electronic product  404   a . If the depiction of electronic product  204   a  in printed media  200  is from a point of view not showing the screen (e.g., top view, side view, rear view), then the virtual electronic product  404   a  is not displayed. 
     In cases where electronic product  204   a  is a depiction of a physical electronic product that includes a software feature (e.g., a user interface), the displayed virtual electronic product  404   a  includes an emulation  410   a  of the software feature. The emulated software feature  410   a  recreates the appearance and operation of the physical electronic product&#39;s software feature. In some embodiments, the emulated software feature  410   a  recreates the appearance of the physical electronic product&#39;s boot-up sequence. In some embodiments, the emulated software feature  410   a  is a predefined video depicting the appearance and operation of the physical electronic product&#39;s software feature. 
     In some embodiments, virtual electronic product  404   a  and/or emulated software feature  410   a  are modified in response to device  100   a  detecting a user interaction. In some embodiments, device  100   a  detects the user interaction when a user contacts touch-sensitive surface(s)  122 . For example, when device  100   a  detects a contact on touch-sensitive surface(s)  122  at a location on display  120  where the virtual electronic product  404   a  is being displayed, device  100   a  interprets the contact as a user interaction with virtual electronic product  404   a  and/or emulated software feature  410   a . In this way, device  100   a  treats interactions with touch-sensitive surface(s)  122  as interactions with virtual electronic product  404   a  and/or emulated software feature  410   a.    
     In some embodiments (such as with a HMD device or HUD device), device  100   a  detects the user interaction by tracking the position of a user&#39;s hand or finger. For example, when the device  100   a  determines that the user&#39;s hand or finger touches the depiction of electronic product  204   a  in printed media  200 , device  100   a  interprets the user&#39;s hand or finger placement as a user interaction with virtual electronic product  404   a  and/or emulated software feature  410   a.    
     The virtual electronic product  404   a  and/or emulated software feature  410   a  responds to the user interaction in a manner resembling a user interaction with the physical electronic product. For example, when device  100   a  detects a user interaction on display  120  at a location where a power button of virtual electronic product  404   a  is being displayed, virtual electronic product  404   a  is modified to correspond to how the physical electronic product would respond to a user interaction with a physical power button (e.g., turn the screen on or off). When device  100   a  detects a user interaction on display  120  at a location where an interactive element of emulated software feature  410   a  is being displayed (e.g. “continue” element shown in  FIG. 4 ), emulated software feature  410   a  is modified to correspond to the selected element (e.g., the emulated user interface is modified to display historical information about the electronic product, as shown in  FIG. 5 ). 
     In some embodiments, device  100   a  modifies virtual electronic product  404   a  based on the depiction of electronic product  204   a  in printed media  200 . For example, if the printed media  200  depicts a top view of the electronic product  204   a , then the displayed virtual electronic product  404   a  is rotated to correspond to the orientation being depicted in the printed media  200 . In some embodiments, the orientation of virtual electronic product  404   a  is modified (e.g., rotated) in response to a user interaction, such as a swipe on touch-sensitive surface(s)  122 . 
       FIG. 5  illustrates an embodiment of device  100   a  displaying, on display  120 , virtual electronic product  404   a  after a user interaction with emulated software feature  410   a  (shown in  FIG. 4 ). Device  100   a  is an embodiment of system  100 , as described in reference to  FIGS. 1A-1B . In  FIG. 5 , device  100   a  is shown as a mobile device, such as a mobile phone. However, it should be understood that device  100   a  can be any device configured to display an augmented reality environment, such as the devices described in reference to  FIGS. 1D, 1G, and 1I . 
     As shown in  FIG. 5 , in response to detecting a user interaction with emulated software feature  410   a  (shown in  FIG. 4 ), device  100   a  modifies emulated software feature  410   a  and displays emulated software feature  410   b . For example, when device  100   a  detects a user interaction on display  120  at a location where an interactive element of emulated software feature  410   a  is being displayed (e.g. “continue” element shown in  FIG. 4 ), emulated software feature  410   b  corresponding to the selected element is displayed (e.g., the emulated user interface is modified to display historical information about the electronic product, as shown in  FIG. 5 ). As another example, if device  100   a  detects a user interaction at a location of an application icon being displayed as part emulated software feature  410   a , then device  100   a  displays emulated software feature  410   b  corresponding to an emulated version of the application being launched within virtual electronic product  404   a  (e.g., emulated software feature  410   b  corresponds to a software feature of the launched application). 
       FIG. 6  illustrates another embodiment of device  100   a  displaying, on display  120 , a virtual electronic product  404   a  overlaying representation  300  of printed media  200 . Device  100   a  is an embodiment of system  100 , as described in reference to  FIGS. 1A-1B . In  FIG. 6 , device  100   a  is shown as a mobile device, such as a mobile phone. However, it should be understood that device  100   a  can be any device configured to display an augmented reality environment, such as the devices described in reference to  FIGS. 1D, 1G, and 1I . 
     As shown in  FIG. 6 , representation  300  of printed media  200  includes representation  302   a  of page  202   a . In contrast to  FIG. 4 , virtual electronic product  404   a  (e.g., a computer-generated three-dimensional virtual object corresponding to the electronic product) is displayed such that it appears to be hovering above the representation  304   a  of electronic product  204   a . Device  100   a  tracks the location and/or orientation of printed media  200  with respect to the position and/or orientation of device  100   a  to enable the display of virtual electronic product  404   a  hovering above the representation  304   a  of electronic product  204   a . Device  100   a  detects user interactions with virtual electronic product  404   a  as described in reference to  FIGS. 4-5 . 
       FIG. 7  illustrates an exemplary technique  700  for providing a software feature of an electronic product (e.g., a computer, mobile phone, tablet, watch, or video game console) in an augmented reality environment. In some embodiments, the technique is carried out by system  100  described in reference to  FIGS. 1A-6 . At block  702 , images are obtained using one or more image sensors (e.g., image sensor(s)  108  described in reference to  FIGS. 1A-1B ). 
     At block  704 , a determination is made whether the obtained images include printed media (e.g., printed media  200  described in reference to  FIGS. 2-6 ) depicting the electronic product (e.g., electronic product  204   a  described in reference to  FIGS. 2-6 ). 
     At block  706 , in accordance with a first set of one or more conditions being satisfied, a virtual object corresponding to the electronic product (e.g., virtual electronic product  404   a  described in reference to  FIGS. 2-6 ) is displayed in the AR environment. The first set of one or more conditions includes a condition that is satisfied when the obtained images include the printed media depicting the electronic product. In some embodiments, the first set of one or more conditions also includes a condition that is satisfied when the printed media corresponds to predefined printed media. In some embodiments, the predefined printed media is a predefined book, a predefined page of a predefined book, or a predefined depiction of the electronic product. In some embodiments, the first set of one or more conditions includes a condition that is satisfied when the depiction of the electronic product in the printed media includes a depiction of a screen of the electronic product. In some embodiments, the first set of one or more conditions includes a condition that is satisfied that is satisfied when a user input is detected (e.g., user input  306  described in reference to  FIG. 3 ). 
     At block  708 , in accordance with a second set of one or more conditions being satisfied, the software feature of the electronic product is provided with the virtual object. The second set of one or more conditions includes a condition that is satisfied when the virtual object is displayed. In some embodiments, the second set of one or more conditions also includes a condition that is satisfied when a user interaction with the virtual object is detected (e.g., detecting a user interaction at a location corresponding to a virtual power button). In some embodiments, providing the software feature includes displaying, with the virtual object, an artificial boot-up sequence that depicts a boot-up sequence of the physical electronic product. In some embodiments, the software feature is provided by displaying, with the virtual object, a video depicting one or more aspects of the software feature (e.g., a video that recreates the appearance of the product&#39;s boot-up sequence). 
     At block  710 , a user interaction with the software feature is detected. In some embodiments, the user interaction is an touch contact on a touch-screen display at a location corresponding to the displayed software feature (e.g., a tap gesture is detected on the touch-screen display at a location corresponding to where the software feature is displayed). In some embodiments, the user interaction is detected by detecting that a physical position of the user&#39;s hand or finger corresponds to a position in the AR environment of the software feature (e.g., the physical position of the user&#39;s hand or finger corresponds to where the virtual object appears to be positioned, such as on a page of the printed media). 
     At block  712 , the virtual object corresponding to the electronic product is modified based on the user interaction. For example, an application is launched, additional information is displayed, or a user interface is modified based on the user interaction. In some embodiments, in accordance with detecting a first type of user interaction with the virtual object, the virtual object is modified according to a first function, and in accordance with detecting a second type of user interaction (different from the first type) with the virtual object, the virtual object is modified according to a second function that is different from the first function. For example, the virtual object is modified to provide different feedback based on different locations of user touch inputs on the virtual object. 
     While the present disclosure has been shown and described with reference to the embodiments provided herein, it will be understood by those skilled in the art that various changes in form and details may be made without departing from the scope of the present disclosure.

Metadata:
Filing Date: 20200610
Publication Date: 20210112
Grant Date: 20210112
Priority Date: 20170929
Inventors: STOYLES, Justin D.
KUHN, MICHAEL
Assignee: APPLE INC
CPC Classifications: [{"code": "G06F3/011", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06T19/006", "inventive": true, "first": true, "tree": "[]"}, {"code": "G06F3/04815", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06T7/0002", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F3/04883", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06T19/006", "inventive": true, "first": true, "tree": "[]"}, {"code": "G06T7/0002", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F3/04815", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F3/04883", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06T19/006", "inventive": true, "first": true, "tree": "[]"}]
Family ID: 74067065