Automatic eye-mounted device sharing system
By integrating automated image capture, synthesis and sharing systems in portable electronic devices, the problem that devices are difficult to achieve instant sharing when capturing images is solved, and the user experience and frequency of device use is improved.
Patent Information
- Application Number
- CN202411911074.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2019-09-30
- Filing Date
- 2020-09-23
- Publication Date
- 2025-04-18
AI Technical Summary
The prior art is difficult to realize instant sharing of portable electronic devices when capturing images, resulting in users being unable to share images at the best moment, affecting user experience and frequency of use of devices.
Instant sharing is achieved by integrating automated image capture, synthesis and sharing systems in portable electronic devices, using eye-wearing devices to capture original images and automatically process and upload them to the network through mobile devices.
Improves users' instant sharing capabilities when capturing images, enhances the device's user experience and user engagement, and ensures that users can share fresh content at the best moments.
Smart Images

Figure CN119847332A_ABST
Abstract
Description
This application is a divisional application for the invention patent with the invention name “Automated Eyewear Device Sharing System”, the application date of September 23, 2020, and the application number of 202080068345.4. CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. Utility Application No. 16 / 587,158, filed on September 30, 2019, and entitled “Automated Eyewear Device Sharing System,” the contents of which are incorporated herein by reference in their entirety. Technical Field
[0002] Examples described in this disclosure relate to portable electronic devices, including companion devices and wearable devices, such as eye-mounted devices. Specifically, but not intended to be limiting, this disclosure describes systems and methods for capturing a series of raw images via such portable electronic devices and automatically processing such raw images via a client mobile device such as a smartphone, including uploading to a network and targeting a target audience. Background Art
[0003] Many types of computers and electronic devices available today, including mobile devices (e.g., smartphones, tablets, and laptops) and companion devices and wearable devices (e.g., smart glasses, digital eyewear, headwear, head-mounted devices, head-mounted displays), include one or more cameras for capturing one or more images (e.g., still photos and videos) and internal sensors for collecting information about the device's position, orientation, motion, and direction. These devices are capable of sending images to other devices. BRIEF DESCRIPTION OF THE DRAWINGS
[0004] From the following detailed description (with reference to the accompanying drawings), it is easy to understand the features of the various embodiments disclosed. In the embodiments and several views of the accompanying drawings, each element corresponds to a reference numeral. When there are multiple similar elements, a single reference numeral can be assigned to the similar elements, and a lowercase letter is added to indicate a specific element.
[0005] Unless otherwise specified, the various elements shown in the figures are not drawn to scale. The sizes of the various elements may be enlarged or reduced for clarity. Several figures illustrate one or more embodiments, which are intended to provide examples and are not limiting. The following figures are included in the drawings:
[0006] Figure 1A is a block diagram illustrating a networked system according to some examples;
[0007] Figure 1B is a block diagram illustrating a networked system including a client and a companion (e.g., wearable) device, according to some examples;
[0008] Figure 2A and 2B are front and top views illustrating an example hardware configuration of an eye-mounted device used in an image capture, composition, and sharing system;
[0009] Figure 3 is a functional block diagram of an example image capture, composition, and sharing system including an eye-mounted device, a mobile device, and a server system connected via various networks;
[0010] Figure 4 yes Figure 3 An example hardware configuration diagram of a mobile device for the image capture, composition and sharing system shown; and
[0011] Figure 5 is a flowchart of example steps for capturing and automatically sharing images. DETAILED DESCRIPTION
[0012] Various implementation methods and details are described with reference to an example: an image and video capture and sharing system for capturing a series of raw image segments using a portable electronic device and automating the process of processing such raw image segments by a client mobile device such as a smart phone, including uploading to a network and targeting a target audience.
[0013] Sometimes a user may want to share immediately upon synchronization with a mobile device, or choose to share images captured with a companion device instantly, or nearly instantly. For example, this may be necessary when the user is driving, or simply does not want to manually process the image at the moment of capturing the image. In this case, the user may not end up sharing the captured image because by the time the user is able to turn his attention to the image, the best moment has been missed (the image has become stale or outdated). The automatic image capture, composition, and sharing system of the examples in this article can solve this and other problems. Because it can enable users to share more content and more fresh content, it can also increase the engagement of users of companion (e.g., eye-mounted devices) devices.
[0014] The following specific embodiments include the systems, methods, techniques, instruction sequences, and computer program products exemplified in this disclosure. In order to provide a thorough understanding of the disclosed subject matter and its related teaching content, many details and examples are adopted. However, technicians in the relevant fields can understand how to apply the related teaching content without these details. Because the related teaching content can be applied or practiced in various ways, the aspects of the disclosed subject matter are not limited to the specific devices, systems, and methods described. The terms and nomenclature used in this article are intended only to describe specific aspects and are not restrictive. In general, well-known instruction instances, protocols, structures, and techniques will not necessarily be shown in detail.
[0015] As used herein, the term "image" includes at least one single image, such as a photograph, or at least one collection or series of related images, such as a video, a time-lapse photograph, and the like.
[0016] The terms "coupled", "connected" or "paired" as used herein refer to any logical, optical, physical or electrical connection, including links, etc., through which an electrical or magnetic signal generated or provided by one system element is transmitted to another coupled, connected or paired system element. Unless otherwise specified, coupled or paired elements or devices are not necessarily directly connected to each other, and may be separated by (one or more) intermediate components, elements or communication media that can modify, manipulate or carry light or signals. The term "paired" usually (although not always) refers to "binding", that is, exchanging long-term keys after pairing occurs, and storing these keys for later use, that is, creating permanent security between devices. The term "on..." refers to being directly supported by an element, or indirectly supported by the element through another element integrated into the element or supported by the element.
[0017] The orientations of the eye-mounted devices, related components, and any complete device incorporating a 3D camera shown in the accompanying drawings are examples only and are used for purposes of illustration and discussion. In actual operation, the eye-mounted device can be oriented in any other direction suitable for the specific application of the eye-mounted device, such as up, down, sideways, or any other direction. In addition, as used herein, any directional terms, such as front, back, inside, outside, direction, left, right, lateral, longitudinal, up, down, upward, downward, top, bottom, side, horizontal, vertical, and diagonal, are used only as examples and do not limit the direction or orientation of any 3D camera or 3D camera assembly constructed as otherwise described herein.
[0018] The following description will partially set forth other objects, advantages and novel features of the examples. Such other objects, advantages and novel features will be apparent to those skilled in the art after reviewing the following and accompanying drawings, or may be understood and grasped by making or operating the examples. The objects and advantages of the subject matter may be realized and obtained by the methods, means and combinations particularly pointed out in the appended claims.
[0019] Many types of visible light cameras are integrated into portable electronic devices, including mobile phones and wearable devices such as electronic eyewear (e.g., smart glasses). A stereo camera has two lenses or two cameras working together, each with its own image sensor or film frame. A stereo camera captures two images of the same scene, with slightly different perspectives because the lenses are separated by a large distance. The separation distance between the lenses can be calibrated to be close to the distance between human eyes to better simulate human binocular vision. A stereo camera captures two separate images of the same scene, with the two images taken from slightly different perspectives.
[0020] Reference will now be made in detail to the examples illustrated in the accompanying drawings and discussed below.
[0021] Figure 1A 1 is a network diagram illustrating a network system 100 that can be used in one example, having a client-server architecture configured for exchanging data over a network. Such a network system can be used to communicate information of virtual objects to be displayed on a client device 110, street view data used to create a facade model, and a final facade model used by an augmented reality system 160. In some examples, the network system 100 can be a messaging system in which clients communicate and exchange data within the network system 100. The data can relate to various functions (e.g., sending and receiving text and media communications, determining geographic location, etc.) and aspects associated with the network system 100 and its users. Although shown herein as a client-server architecture, other examples may include other network architectures, such as a peer-to-peer or distributed network environment.
[0022] like Figure 1A As shown, the network system 100 includes a social messaging system 130. The social messaging system 130 generally adopts a three-layer architecture, including an interface layer 124, an application logic layer 126, and a data layer 128. As those skilled in the art of computers and the Internet know, Figure 1A Each module or engine shown represents a set of executable software instructions and corresponding hardware (e.g., memory and processor) for executing the instructions. To avoid unnecessary details that obscure the subject matter described herein, Figure 1A Various functional modules and engines that are not closely related to conveying an understanding of the subject matter described are omitted. Figure 1A The social messaging system shown in uses additional functional modules and engines to implement additional functions not specifically described herein. In addition, Figure 1A The various functional modules and engines shown in the figure may be fixed on a single server computer, or may be distributed on multiple server computers in various arrangements. Figure 1A The social messaging system 130 is shown as a three-tier architecture, but the subject matter is by no means limited to such architectures.
[0023] like Figure 1AAs shown, the interface layer 124 is composed of an interface module (e.g., a web server) 140, which receives requests from various client computing devices and servers, such as a client device 110 executing a client application 112 and a third-party server 120 executing a third-party application 122. Based on the received request, the interface module 140 transmits an appropriate response to the requesting device via the network 104. For example, the interface module 140 may receive a request, such as a hypertext transfer protocol (HTTP) request or other network-based application programming interface (API) request.
[0024] Client device 110 may execute a traditional web browser application or an application that has been developed for a specific platform (also referred to as an "app") to accommodate a variety of mobile computing devices and mobile-specific operating systems (e.g., iOS). TM ANDROID TM , PHONE). In an example, the client device 110 is executing a client application 112. The client application 112 may provide functionality for presenting information to the user 106 and communicate via the network 104 to exchange information with the social messaging system 130. Each client device 110 may include a computing device that includes at least one display and communication capabilities with the network 104 to access the social messaging system 130. The client devices 110 include, but are not limited to, remote devices, workstations, computers, general-purpose computers, Internet devices, handheld devices, wireless devices, portable devices, wearable computers, cellular or mobile phones, personal digital assistants (PDAs), automotive computing devices with driver heads-up displays (HUDs), smart phones, tablets, ultrabooks, netbooks, laptops, desktops, multiprocessor systems, microprocessor-based or programmable consumer electronics, game consoles, set-top boxes, network personal computers (PCs), mini computers, etc. The user 106 may include a person, a machine, or other means of interacting with the client device 110. In some examples, user 106 interacts with social messaging system 130 via client device 110 .
[0025] like Figure 1AAs shown, the data layer 128 has one or more database servers 132 that facilitate access to information repositories or databases 134. Database 134 is a storage device that stores data, such as a set of images of an external area generated by client device 110 and sent to social messaging system 130; a set of facade data generated from images containing buildings; map data that matches images and facade data with geographic locations; and other such data. In one example, the database stores images captured from the street and associates these images with map data. Certain embodiments of these examples may use filters or image cropping to remove people from images, such as an example of storing only image data above (including people) height. Database 134 may also store data, such as member profile data, social graph data (e.g., relationships between members of social messaging system 130), and other user data.
[0026] Individuals may register with the social messaging system 130 to become members of the social messaging system 130. After registration, members may form social network relationships (e.g., friends, fans, or contacts) on the social messaging system 130 and interact with various applications provided by the social messaging system 130.
[0027] The application logic layer 126 includes various application logic modules 150, which, in conjunction with the interface module 140, utilize data retrieved from various data sources or data services in the data layer 128 to generate various user interfaces. Individual application logic modules 150 may be used to implement functions associated with various applications, services, and functions of the social messaging system 130, including the functions of the augmented reality system 160. For example, one or more application logic modules 150 may be used to implement a social messaging application. The social messaging application provides a messaging mechanism for users of the client device 110 to send and receive messages including text and media content such as pictures and videos. The social messaging application may also include a mechanism for providing an augmented reality display and content that combines pictures and videos with virtual objects. The client device 110 may provide an augmented reality display and may also enable users to access and view messages from the social messaging application within a specified (e.g., limited or unlimited) time period. In one example, a message recipient has access to a particular message within a predetermined duration (e.g., specified by the message sender), which is calculated from the time the particular message is first accessed. After the predefined duration, the message will be deleted and the recipient will no longer be able to access the message. Likewise, augmented reality content may be provided for a predefined duration. Other applications and services may be implemented in their respective application logic modules 150 .
[0028] like Figure 1AAs shown, the social messaging system 130 or the client application 112 may include an augmented reality system 160 that provides functionality for generating augmented reality images. In some examples, the augmented reality system 160 may be implemented as an independent system on the client device 110 and may not necessarily be included in the social messaging system 130. In other examples, the client device 110 includes a portion of the augmented reality system 160 (e.g., a portion of the augmented reality system 160 may be independently incorporated or present in the client application 112). In examples where the client device 110 includes a portion of the augmented reality system 160, the client device 110 may work alone or in conjunction with a portion of the augmented reality system 160 included in a particular application server or included in the social messaging system 130.
[0029] Figure 1B An alternative network system 101 that can be used for certain examples is shown. Network system 101 includes a social messaging system 130 having an interface module 140, an application logic module 150, a database server 132 and a database 134, and a client device 110 that operates a client application 112, as in network system 100. However, network system 101 also includes a client companion device 114 connected to client device 110. Client companion device 114 can be a wearable device such as glasses, goggles, a watch, or other network-enabled item. Client companion device can also be any device described herein that accesses a network such as network 104 via another device such as client device 110. Client companion device 114 includes an image sensor 116, wireless input and output (I / O) 117, and a display 118. Client companion device 114 may include one or more processors, a battery, and memory, but its processing and memory resources may be limited. In such examples, the client device 110 or server computing device for the social messaging system 130 may be used to provide remote processing and memory resources to the client companion device 114 via a network connection. In one example, for example, the client companion device 114 may be a pair of network-enabled glasses, such as Figure 2AThe glasses 200 shown. Such glasses may not include any sensor-based positioning system, so the method for performing initial position estimation described herein can estimate the position of the client device 110 wirelessly connected to the glasses. However, the glasses 200 use the image sensor 116 to collect images, and generate augmented reality information based on these images and present it to the user via the display 118. Therefore, it is necessary to track the perspective of the image and any virtual objects added to the image based on the position of the client companion device 114 (e.g., glasses 200). In such examples, the initial position can be determined based on the location of the client device 110 using a global positioning system (GPS) or a network enhanced location service. Then, the image-based location system 161 running on the client device 110, on the social messaging system 130, or on both can use the image data from the image sensor 116 and the facade data identified by the initial position of the client device 110 to determine the location of the client companion device 114. In some examples, because the wireless input and output 117 system has a shorter coverage range, the system may assume that the client device 110 is located within a sufficiently close range from the client companion device 114 so that the facade data of the buildings near the two devices are the same.
[0030] In one example, the client device 110 is a mobile device, such as a smartphone, and the companion device 114 is an eye-mounted device. Figure 2A and 2B Front and top perspective views of an example eye-mounted device 200 are shown. In general, the eye-mounted device 200 includes a frame 210 and one or more panels 220. The following paragraphs set forth additional details of the eye-mounted device 200.
[0031] The frame 210 includes a pair of frames 212 defining corresponding openings. When a user wears the eye-mounted device 200, the opening defined by the frames 212 is located in front of the user's eyes. Figure 2A As shown, the mirror frames 212 may completely surround or encircle their respective openings, or may only partially surround or encircle their respective openings.
[0032] The frame 210 may further include a nose bridge 214 connected between the frames 212, and a pair of mirror arms 216 extending from the corresponding frames 212. When the user wears the eye-mounted device 200, the nose bridge 214 is located on the upper part of the user's nose. When the user wears the eye-mounted device 200, the mirror arms 216 extend along the sides of the user's head and can be placed on the user's ears. The mirror arms 216 can be rigidly connected to the frame 212, or can be connected to the frame 212 using a hinge so that the mirror arms 216 can be folded.
[0033] The panels 220 are disposed in respective openings defined by the frame 212 of the frame 210. When the user wears the eye-mounted device 200, the panels 220 cover the area in front of the user's eyes.
[0034] At least one panel 220 may employ a waveguide coupled to a display. In addition, in this example, a portion of the frame 210, such as the frame 212, the nose bridge 214, or the leg mirror 216, may support or accommodate components of the display, such as a light source, a controller, or a power source. For example, a diffractive, holographic, or reflective waveguide may be employed. Suitable materials for constituting the panel 220 acting as a waveguide will be given herein.
[0035] In the case where only one panel 220 is coupled to the display, the other panel 220 may take any other form, or may be omitted altogether. The optional panel 220 may include or consist of a transparent, translucent or colored material, and may take the form of a lens if desired.
[0036] Figure 2A Also shown are two cameras 218 capable of capturing scene image information from two independent viewpoints. The left and right visible light cameras 218 may be located on the left and right side blocks 224. The left and right visible light cameras 218 are sensitive to wavelengths in the visible light range. The two captured images may be used to project a three-dimensional display onto a screen for viewing with 3D glasses.
[0037] The eye-mounted device 200 may include an optical assembly 180 having an image display to present an image, such as a depth image.
[0038] The eye-mounted device 200 includes one or more structures for obtaining user input. Figure 2B In the example shown, the structure includes buttons 222 on each side of the device, such as on block 224. It should be understood that such input structures can be implemented in a variety of ways, including physical buttons, touch-sensitive surfaces, etc. and the location and size of such input structures are not limited to Figure 2B It should also be understood that although Figure 2B Two buttons are shown, but the number of input structures may be increased or decreased.
[0039] Examples of visible light cameras 218 include high-resolution complementary metal oxide semiconductor (CMOS) image sensors and digital VGA (video graphics array) cameras capable of 640p (e.g., 640×480 pixels, 0.3 megapixels total), 720p, or 1080p resolution. Other examples of visible light cameras 218 can capture high-definition (HD) still images and store such images at a resolution of 1642×1642 pixels (or higher); and they record HD video at a high frame rate (e.g., 30 to 60 frames per second or higher) and store the recorded content at a resolution of 1216×1216 pixels (or higher).
[0040] The eye-mounted device 200 can capture image sensor data and geographic location data from the visible light camera 218, digitize them through the image processor, and store them in the memory. The left and right raw images captured by the respective visible light cameras 218 are located in a two-dimensional spatial domain and include a pixel matrix on a two-dimensional coordinate system, which includes an X-axis representing a horizontal position and a Y-axis representing a vertical position. Each pixel includes a color value attribute (e.g., a red pixel light value, a green pixel light value, and a blue pixel light value); and a position attribute (e.g., an X-axis coordinate and a Y-axis coordinate).
[0041] To capture stereoscopic images for later display as a three-dimensional projection, the image processor 912 ( Figure 3 218 to receive and store visual image information. A timestamp for each image may be added by image processor 912 or another processor controlling the operation of visible light camera 218, which acts as a stereo camera to simulate human binocular vision. The timestamps on each pair of images enable the images to be displayed together as part of a three-dimensional projection. Three-dimensional projection can create an immersive, lifelike experience that is ideal for a variety of environments, including virtual reality (VR) and video games.
[0042] The generated depth image is in a three-dimensional spatial domain and may include a vertex matrix on a three-dimensional position coordinate system, which includes an X-axis representing horizontal position (e.g., length), a Y-axis representing vertical position (e.g., height), and a Z-axis representing depth (e.g., distance). Each vertex may include color attributes (e.g., red pixel light value, green pixel light value, and blue pixel light value); position attributes (e.g., X position coordinate, Y position coordinate, and Z axis coordinate); texture attributes, and reflectivity attributes. Texture attributes can quantify the perceived texture of the depth image, such as the spatial arrangement of color or intensity in the vertex area of the depth image.
[0043] Various interconnected circuit boards, such as printed circuit boards or flexible printed circuit boards, may be provided within block 224, including circuits for visible light camera 218, microphones, low-power wireless circuits (e.g., for communicating via Bluetooth TM wireless short-range network communications), high-speed wireless circuits (for example, controller circuits for wireless local area network communications via WiFi).
[0044] Figure 3 1 is a functional block diagram of an example image capture, composition, and sharing system 1000, which includes an eye-mounted device 200, a mobile device 890, and a server system 998 connected via various networks 995, such as the Internet. As shown, the system 1000 includes a low-power wireless connection 925 and a high-speed wireless connection 937 between the eye-mounted device 200 and the mobile device 890.
[0045] The eye-mounted device 200 includes one or more visible light cameras 218 that are capable of capturing static images, as described herein. The camera 218 can perform direct memory access (DMA) to the high-speed circuit 930. As described herein, the pair of cameras 218 can be used as a stereo camera. The camera 218 can be used to capture an initial depth image that can be rendered into a three-dimensional (3D) model that is a texture-mapped image of a red, green, and blue (RGB) imaging scene. The device 200 may also include a depth sensor 213 that uses infrared signals to estimate the position of an object relative to the device 200. In some examples, the depth sensor 213 includes one or more infrared emitters 215 and an infrared camera 217.
[0046] The eye-mounted device 200 may also include two image displays (one associated with the left side and one associated with the right side) for each optical component 180A, 180B. The eye-mounted device 200 also includes an image display driver 942, an image processor 912, a low power circuit 920, and a high speed circuit 930. The image display of each optical component 180A, 180B is used to present images, including static images and videos. The image display driver 942 is coupled to the image display of each optical component 180A, 180B to control the displayed image. The eye-mounted device 200 also includes a user input device 222 (e.g., a button, a touch sensor, or a touchpad) to receive a two-dimensional input selection from a user.
[0047] Figure 3The components of the eye-mounted device 200 shown are located on one or more circuit boards, such as printed circuit boards or flexible printed circuit boards in the example frame or temples shown in Figure 2. Alternatively or additionally, the components shown may be located in a block, frame, hinge, or nose bridge of the eye-mounted device 200. The left and right visible light cameras 218 may include digital camera elements, such as complementary metal oxide semiconductor (CMOS) image sensors, charge coupled devices, lenses, or any other corresponding visible light or light capture elements that can be used to capture data, including still images or videos of scenes with unknown objects.
[0048] exist Figure 3 In the example shown, the high-speed circuit 930 includes a high-speed processor 932, a memory 934, and a high-speed wireless circuit 936. In the example, an image display driver 942 is coupled to the high-speed circuit 930 and is operated by the high-speed processor 932 to drive the left and right image displays of each optical assembly 180. The high-speed processor 932 can be any processor capable of managing the high-speed communications required by the eye-mounted device 200 and any general computing system operations. The high-speed processor 932 includes the processing resources required to manage high-speed data transmission to a wireless local area network (WLAN) over a high-speed wireless connection 937 using the high-speed wireless circuit 936. In some examples, the high-speed processor 932 executes an operating system of the eye-mounted device 200, such as a LINUX operating system or other such operating system, and the operating system is stored in the memory 934 for execution. In addition to any other tasks, the high-speed processor 932, which executes the software architecture of the eye-mounted device 200, is used to manage data transmission with the high-speed wireless circuit 936. In some examples, the high-speed wireless circuit 936 is configured to implement the Institute of Electrical and Electronics Engineers (IEEE) 802.11 communication standard, also referred to herein as Wi-Fi. In other examples, other high speed communication standards may be implemented by high speed wireless circuitry 936 .
[0049] The low power circuit 920 includes a low power processor 922 and a low power wireless circuit 924. The low power wireless circuit 924 and the high speed wireless circuit 936 of the eye-mounted device 200 may include a short range transceiver (Bluetooth TM ) and a wireless wide area, local area or wide area network transceiver (e.g., cellular or WiFi). The mobile device 890 includes a transceiver that communicates via a low power wireless connection 925 and a high speed wireless connection 937, and can be implemented using details of the architecture of the eye-mounted device 200, as can other elements of the network 995.
[0050] The memory 934 includes any storage device capable of storing various data and applications, including camera data generated by the left and right visible light cameras 218, the infrared camera 217, the image processor 912, and images generated by the image display driver 942 for display on the image display of each optical assembly 180A, 180B. Although the memory 934 is shown integrated with the high-speed circuit 930, in other examples, the memory 934 can be a separate, offline component of the eye-mounted device 200. In some such examples, the circuit line can provide a connection from the image processor 912 or the low-power processor 922 to the memory 934 through a chip including the high-speed processor 932. In other examples, the high-speed processor 932 can manage the addressing of the memory 934 so that the low-power processor 922 will guide the high-speed processor 932 whenever a read or write operation involving the memory 934 is required.
[0051] like Figure 3 As shown in the example of FIG. 2 , the high-speed processor 932 of the eye-mounted device 200 can be coupled with the camera system (visible light camera 218), the image display driver 942, the user input device 222, and the memory 934. Figure 4 As shown, the CPU 830 of the mobile device 890 can be coupled to the camera system 870, the mobile display driver 882, the user input layer 891, and the memory 840A. The eye-mounted device 200 can perform all or a subset of any functions described herein, which are generated by the eye-mounted device 200 processor 932 executing the image synthesis system 500 in the memory 934. The mobile device 890 performs all or a subset of any functions described herein, which are generated by the CPU 830 of the mobile device 890 executing the image synthesis system 500 in the flash memory 840A. The functions can be divided in the image synthesis system 500 so that the eye-mounted device 200 captures images, collects inertial measurement unit data, and collects sensor data, and the mobile device 890 performs calculations, operations, and combination functions.
[0052] The server system 998 may be one or more computing devices acting as part of a service or network computing system, including, for example, a processor, a memory, and a network communication interface to communicate with the eye-mounted device 200 and the mobile device 890 over the network 995 .
[0053] The output components of the eye-mounted device 200 may include visual elements, such as left and right image displays associated with each lens or optical assembly 180A, 180B as described above (e.g., displays such as liquid crystal displays (LCDs), plasma display panels (PDPs), light emitting diode (LED) displays, projectors, or waveguides). The eye-mounted device 200 may include user-facing indicators (e.g., LEDs, speakers, or vibration actuators) and externally facing signals (e.g., LEDs, speakers). The image displays of each optical assembly 180A, 180B are driven by an image display driver 942. In some exemplary configurations, the output components of the eye-mounted device 200 also include additional indicators, such as auditory elements (e.g., speakers), tactile components (e.g., actuators such as vibration motors that can generate tactile feedback), and other signal generators. For example, the device 200 may include a set of indicators facing the user and a set of signals facing the outside. The set of indicators facing the user is configured to be visible or otherwise perceived by the user of the device 200. For example, device 200 may include an LED display whose position arrangement supports that which a user can see, a speaker that generates a sound that a user can hear, or an actuator that provides tactile feedback that a user can feel. The externally facing signal group configuration may support being seen or felt by an observer near device 200. Similarly, device 200 may include LEDs, speakers, or actuators whose configuration and position arrangement support perception by an observer.
[0054] Although in Figure 2B 222, but the input components of the eye-mounted device 200 can adopt or include alphanumeric input components (e.g., a touch screen or touch pad whose configuration supports receiving alphanumeric input, a photographic optical keyboard, or other alphanumeric configuration type element), pointer-based input components (e.g., a mouse, a touch pad, a trackball, a joystick, a motion sensor, or other alignment tools), tactile input components (e.g., a button switch, a touch screen or touch pad that senses touch or touch gesture location, force, or both, or other tactile configuration type elements), and audio input components (e.g., a microphone), etc. The mobile device 890 and the server system 998 can include alphanumeric, pointer-type, tactile, audio, and other input components.
[0055] In some examples, the eye-mounted device 200 includes a sensor array 980, such as Figure 3The elements of sensor array 980 include visible light camera 218, user input device 222 (e.g., button, touch screen or touchpad, push button switch), microphone 993 (e.g., an array of two or more microphones), depth sensor 213, and a collection of motion sensing components called inertial measurement unit 972. The motion sensing components can be micro-electromechanical systems (MEMS) with miniature moving parts, which are generally small enough to form part of a microchip.
[0056] In some example configurations, the inertial measurement unit (IMU) 972 includes an accelerometer 974, a gyroscope 976, and a magnetometer 978. The accelerometer 974 senses the linear acceleration (including the acceleration of gravity) of the device 200 relative to three orthogonal axes (x, y, z). The gyroscope 976 senses the angular velocity of the device 200 around three rotation axes (pitch, roll, yaw). The accelerometer 974 and the gyroscope 976 can work together to provide position, orientation, and motion data about the device relative to six axes (x, y, z, pitch, roll, yaw). The magnetometer 978 can sense the direction of the device 200 relative to magnetic north. The position of the device 200 can be determined by a position sensor, such as a GPS receiver, one or more transceivers for generating relative position coordinates, an altitude sensor or a barometer, and other orientation sensors. Such positioning system coordinates can also be received from the mobile device 890 via a low-power wireless circuit 924 or a high-speed wireless circuit 936 via a wireless connection 925, 937.
[0057] The inertial measurement unit 972 may include or cooperate with a digital motion processor or program that collects raw data from the components and calculates a number of useful values about the position, orientation, and motion of the device 200. For example, the acceleration data collected from the accelerometer 974 may be integrated to obtain the velocity relative to each axis (x, y, z); and then integrated again to obtain the position of the device 200 (in linear coordinates x, y, and z). The angular velocity data from the gyroscope 976 may be integrated to obtain the position of the device 200 (in spherical coordinates). The program for calculating these useful values may be stored in the memory 934 and executed by the high-speed processor 932 of the eye-mounted device 200.
[0058] The eye-mounted device 200 may optionally include additional peripheral sensors, such as biometric sensors, specialized sensors, or display elements integrated with the eye-mounted device 200. For example, the peripheral device element may include any input / output component, consisting of an output component, a motion component, a position component, an indicator, or any other such component described herein. For example, the biometric sensor may include a component that detects expressions (e.g., hand expressions, facial expressions, vocal expressions, body postures, or eye tracking), measures biosignals (e.g., blood pressure, heart rate, body temperature, sweating, or brain waves), or person recognition (e.g., recognition based on voice, retina, facial features, fingerprints, or electrical biosignals such as EEG data).
[0059] like Figure 3 As shown, the image capture, synthesis and sharing system 1000 includes a computing device, such as a mobile device 890, coupled to the eye-mounted device 200 via a network. As described herein, the sensor array 980 of the eye-mounted device 200 includes one or more visible light cameras 218 for capturing a series of raw image segments, and an inertial measurement unit 972 for collecting position, orientation and motion data about the eye-mounted device 200.
[0060] The image capture, composition, and sharing system 1000 also includes a memory for storing instructions (which may include instructions in the image composition system 500), and a processor for executing instructions. The system 1000 can utilize the memory 934 ( Figure 3 ) or storage elements 840A, 840B ( Figure 4 ). In addition, the system 1000 can utilize the processor elements 932, 922 ( Figure 3 ) or the central processing unit (CPU) 830 ( Figure 4 ). In addition, the system 1000 can also utilize the server system 998 ( Figure 3 In this regard, the storage and processing functions of the image capture, synthesis and sharing system 1000 can be shared or distributed between the eye-mounted device 200 and the mobile device 890 or server system 998.
[0061] The mobile device 890 may be a smartphone, tablet, laptop, access point, or any other such device capable of connecting to the eye-mounted device 200 using both the low power wireless connection 925 and the high speed wireless connection 937. The mobile device 890 accesses the server system 998 and the network 995. The network 995 may include any combination of wired and wireless connections.
[0062] Figure 4840A may include a plurality of images or videos generated via the camera 870.
[0063] As shown, the mobile device 890 includes an image display 880, a mobile display driver 882 and a controller 884 for controlling the image display 880. Figure 4 In the example of FIG. 8 , the image display 880 includes a user input layer 891 (eg, a touch screen) that is layered over or integrated into the screen used by the image display 880 .
[0064] Examples of touch screen mobile devices that may be used include, but are not limited to, smartphones, personal digital assistants (PDAs), tablet computers, laptop computers, or other portable devices. However, the structure and operation of touch screen devices are provided by way of example, and the subject technology described herein is not limited thereto. Therefore, for purposes of this discussion, Figure 4 A block diagram illustration of an example mobile device 890 is provided with a user interface including a touch screen input layer 891 for receiving input (through touch, multi-touch or gestures by a hand, stylus or other tool, etc.) and a graphics display 880 for displaying content.
[0065] exist Figure 4 In the example shown, the mobile device 890 includes at least one digital transceiver (XCVR) 810, shown as a WWAN XCVR, for digital wireless communication via a wide area wireless mobile communication network. The mobile device 890 also includes additional digital or analog transceivers, such as a short-range XCVR 820 for short-range network communication, for example, by means of NFC, VLC, DECT, ZigBee, Bluetooth TM , or WiFi. Taking the short-range XCVR 820 as an example, it can take the form of any available two-way wireless local area network (WLAN) transceiver, the type of which is compatible with one or more standard communication protocols implemented in wireless local area networks, such as one of the Wi-Fi standards under IEEE 802.11.
[0066] To generate location coordinates for positioning the mobile device 890, the mobile device 890 may include a global positioning system (GPS) receiver. Alternatively, or in addition, the mobile device 890 may utilize one or both of the short-range XCVR 820 and the WWAN XCVR 810 to generate location coordinates for positioning. For example, based on a cellular network, WiFi, or Bluetooth TM The positioning system of the XCVR 810 and the XCVR 820 can generate very accurate position coordinates, especially when used in combination. Such position coordinates can be transmitted to the eye-mounted device via one or more network connections using XCVR 810 and 820.
[0067] The transceivers 810, 820 (i.e., network communication interfaces) conform to one or more of the various digital wireless communication standards used by modern mobile networks. Examples of WWAN transceivers 810 include, but are not limited to, transceivers configured to operate according to Code Division Multiple Access (CDMA) and Third Generation Partnership Project (3GPP) network technologies, such as, but not limited to, Third Generation Partnership Project 2 (or 3GPP2) and LTE, sometimes referred to as "4G". For example, transceivers 810, 820 provide two-way wireless information communication, including digitized audio signals, still images and video signals, web page information for display and input related to the web page, and various types of mobile message communications with mobile device 890.
[0068] The mobile device 890 also includes a microprocessor that functions as a central processing unit (CPU); Figure 4 830. A processor is a circuit whose elements are constructed and arranged to perform one or more processing functions, typically various data processing functions. Although discrete logic components can be used, components constituting a programmable CPU are used in the example. For example, a microprocessor includes one or more integrated circuit (IC) chips that integrate electronic components that perform CPU functions. Taking CPU 830 as an example, it can be based on any known or available microprocessor architecture, such as a reduced instruction set computing (RISC) using an ARM architecture, which is very commonly used in today's mobile devices and other portable electronic devices. Of course, other arrangements of processor circuits can be used to constitute CPU 830 or processor hardware in smartphones, laptops, and tablets.
[0069] The CPU 830 functions as a programmable main controller for the mobile device 890 by configuring the mobile device 890 to perform various operations, for example, according to instructions or programs executable by the CPU 830. For example, such operations may include various general operations of the mobile device, as well as operations related to the programming of applications on the mobile device. Although the processor may be configured by employing hard-wired logic, a typical processor in a mobile device is a general processing circuit that is configured by executing programming.
[0070] The mobile device 890 includes a memory or storage system for storing programs and data. In this example, the memory system may include flash memory 840A, random access memory (RAM) 840B, and other memory components as needed. RAM 840B acts as short-term storage for instructions and data processed by CPU 830, such as working data processing memory. Flash memory 840A generally provides longer-term storage.
[0071] Thus, in the example of mobile device 890, flash memory 840A is used to store programming or instructions executed by CPU 830. Depending on the type of device, mobile device 890 stores and runs a mobile operating system through which specific applications are executed. Examples of mobile operating systems include Google Android, Apple iOS (for iPhone or iPad devices), Windows Mobile, Amazon Fire OS, RIM BlackBerry OS, etc.
[0072] Reference again Figure 3 , the example image synthesis and sharing system 1000 includes an eye-mounted device 200 coupled to a mobile device 890 via a network 995. The memory 934 includes the image synthesis system 500 and one or more configuration files for capture and processing. In one example, a capture configuration file 510 and a processing configuration file 520 are shown. In one example, as Figure 5 As shown in step 710 in , before an image is captured by a companion device such as the eye-mounted device 200, a user can set various parameters for capturing and processing a profile on a client device such as a mobile device 890.
[0073] In one example, the user can also select options for one or more automatic sharing profiles, such as Figure 5 One or more automatic sharing profiles may include separate profiles or combined profiles for delivery and audience options, which is Figure 5 The intention of the two combination boxes 730 and 732 is described in FIG. Therefore, it should be understood that Figure 5The terms "sending profile" and "audience profile" as used in the description may include two separate profiles, but unless otherwise noted, two separate profiles are not required and may instead be portions of a single automatically shared profile.
[0074] The automatic sharing configuration file may include one or more input configuration buttons 222 (e.g., Figure 2B ) to perform manual and automatic sharing functions. For example, for an eye-mounted device 200 with two input structures - shown in this example as two buttons 222 - the profile may assign one button 222 to standard photo / video processing without automatic sending functionality, and another button 222 to automatically share captured images through the client (mobile device) when connected. In addition, another profile such as a capture profile may include options for assigning one or more input structure buttons 222 of the eye-mounted device 200 to perform manual and automatic sharing functions. The latter arrangement also enables examples (discussed further as an example in the next paragraph) in which it is not necessary to set up or upload an automatic sharing profile to the mobile device 890 before capturing 760 an image through the eye-mounted device 200, provided that the settings are established when any new captured image is synchronized 770 with the mobile device 890.
[0075] For example, it is understood by those skilled in the art that although in the preferred embodiment, in the Figure 5 In the example of the eye-mounted device 200 (optionally) pairing / synchronizing 740, the automatic sharing profile can be established on the mobile device 890, but in fact the automatic sharing profile can be established on the mobile device 890 at any time, as long as it occurs before the eye-mounted device 200 has captured 760 an image and synchronized 770 with the mobile device 890. In other words, by the time synchronization 770 with the new image occurs, the automatic sharing profile should be established on the mobile device 890 so that the mobile device 890 can automatically execute the profile parameters correctly and timely when synchronizing 770. In these examples, there is no need to set up the profile in advance, which is why Figure 5 The pairing / sync 740 shown in FIG. 7 is optional for one reason.
[0076] In one example, the sending profile 730 includes options for the automation level of the sending feature. For example, a first option may be to simply apply the default option or the last selected automation level. A second option may be to specify that the client should automatically send and share images when connected. A third option may be to automatically send and share after a short (e.g., X seconds) delay, thereby providing the user with a limited time period to perform the option of viewing, modifying, and canceling posts. A fourth option may be to wait for the user to view, allowing the user to perform the option of viewing, modifying, and canceling posts indefinitely. Of course, it is understood by those of ordinary skill in the art that various automatic sending options are foreseeable or included, and include other automatic sending options.
[0077] In one example, the audience profile 732 includes an option for establishing an audience for sharing so that once synchronized 770 with a new image to be automatically shared, the mobile device 890 can appropriately direct the post. For example, a first option may be to simply apply the default options or the last selected audience. A second option may be to direct the post to the user's most recent chat. A third option may be to direct the post to a more general audience, such as the user's "story." It is understood by those of ordinary skill in the art that different programs and mobile applications can provide various arrangements of "user stories", such as "my story", or "our story", or even other non-"story" type audiences, all of which are within the scope of this example.
[0078] As described above, in one example, the instructions of the image composition system 500 executed by the processor 932 configure the eye-mounted device 200 to capture a series 540 of raw image segments according to the capture profile 510, and collect a data set 572 associated with each image segment in the series 540. In such an example, the capture profile 510 may have assignment data of the input structure 222. For example, the profile may assign or instruct the eye-mounted device 200 to assign one button 222 to perform a standard capture 750 of a photo / video without automatic sharing, and assign another button 222 to perform a photo / video capture 752 with automatic sharing. However, it is understood by those skilled in the art that it is not necessary to provide both buttons at the same time, because, for example, there are many ways to configure a single input structure in a programmable manner (e.g., by long pressing, double-clicking a button, manipulating a touch surface, sending an audio command to a microphone, etc.) to allow the user to select between a standard capture 750 and an automatic sharing capture 752. Therefore, although the example shown in FIG. 2 shows that the eye-mounted device 200 has two input structures 222, other numbers and types of input structures 222 may also be combined.
[0079] In one example, the system includes a first processor in the eye-mounted device 200 and a second processor in a client device such as a mobile device 890, the second processor of the mobile device 890 is synchronized with the first processor of the eye-mounted device 200, and the second processor of the mobile device 890 shares at least one image over a network. In another example of this configuration, the second processor of the mobile device 890 applies a sharing profile to an image captured by the eye-mounted device 200, and then shares the image according to an automatic sharing option and an automatic audience option of the sharing profile. In another example, the system is implemented entirely in a single portable electronic device, such as the eye-mounted device 200, so that a single processor on the eye-mounted device 200 can be configured to perform functions including setting a sharing profile with an automatic sharing option and an automatic audience option, capturing an image, applying the automatic sharing option of the sharing profile and the automatic audience option of the sharing profile, and sharing the image over a network.
[0080] In one example including a client device such as the mobile device 890, the eye-mounted device 200 is unaware of the final arrangement of the image at the time of capture. This configuration can be applicable because, as described above, the automatic sharing profile can be created on the mobile device 890 at virtually any time, as long as it is before the eye-mounted device 200 has captured an image and synchronized 770 with the mobile device 890. In this case, as long as the mobile device 890 is equipped with the automatic sharing profile and any data related to the capture (e.g., which input device 222 was used, or how it was used, in terms of automatic sharing) from the eye-mounted device 200 at the time of synchronization 770, the eye-mounted device 200 can be unaware of the allocation of the input structure 222 at the time of capturing the image, so that the mobile device 890 can process the new image according to the automatic sharing profile.
[0081] Each data set 572 includes information about the camera orientation collected by the inertial measurement unit 972. In some embodiments, each data set 572 includes information about the camera orientation associated with each image or frame in each video clip.
[0082] After capturing the series of image segments 540 , according to one embodiment, the mobile CPU 830 continues to execute instructions of the image composition system 500 to configure the mobile device 890 to process the series of image segments 540 according to one or more profiles for capture and processing. Figure 5 The image segment processing according to the capture and processing configuration file 710 is shown as step 780.
[0083] In one example, one or more configuration files 710 for capturing and processing include a selected option for applying at least one "effect" prior to sharing. The effect can be a visual effect, such as a filter, tint, border, subtitle, location tag, augmented reality feature, and an audio effect, such as music, noise, or a change in the recorded audio (pitch, etc.).
[0084] The one or more profiles 710 for capture and processing can be separate from the automatic sharing profile 720, or include portions used as components of the sharing profile 720. According to this example, options identified by the one or more profiles 710 for capture and processing can be automatically applied to the image after capture 752. In three examples, the effects can be applied 760 by the companion device 200 at the time of capture, can be applied 780 by the client device 890 at the time of synchronization and execution of the composition system, or any combination of the two.
[0085] In one example, the processing options and instructions are included in a separate processing configuration file 520. In some example configurations, the processing configuration 520 includes a stabilization setting. Example stabilization settings include "No" (no stabilization is performed during processing), "Yes", and "Custom" (where the user selects a specific stabilization type). The default stabilization setting may be set to "Yes" and may include instructions to: (1) calculate a camera orientation 585 associated with each original image segment based on a data set 572 associated with each particular image segment, (2) calculate a stabilized output path 590 based on the calculated camera orientation 585, and (3) combine the series of image segments 540 according to the stabilized output path 590 to generate an image composite file 600.
[0086] One or more profiles for capturing and processing, such as capture profile 510, include a set of conditions or variables for determining how and when the camera 218 on the eye-mounted device 200 will capture the series of raw video clips 540. In one example, the capture profile 510 includes a start condition, a clip duration, a pause duration (between clips), and a number of clips. For example, the capture profile 510 may include a start condition equal to 9:18 p.m., a clip duration of six seconds, a pause duration of twenty seconds, and a number of ten clips. According to the capture profile, the camera 218 on the eye-mounted device 200 will capture ten six-second video clips starting at 9:18 p.m., with a twenty-second pause between each clip. This example capture profile 510 may be referred to as a fixed capture profile, provided that the conditions are set before image capture and are not changed.
[0087] An inertial measurement unit (IMU) 972 of the eye-mounted device 200 collects information about the position, orientation, and motion of the eye-mounted device 200 during capture. The image synthesis system 500 configures the eye-mounted device 200 to collect data from the inertial measurement unit 972 during the capture of each image segment. Each data set from the inertial measurement unit 972 is associated with at least one image or frame of the original video segment being captured. In some embodiments, the eye-mounted device 200 collects a first data set from the inertial measurement unit 972 that is associated with each first frame of the first original video segment. The data sets 572 collected from the inertial measurement unit 972 can be stored in the memory 934, such as Figure 3 shown.
[0088] For each data set 572 stored in memory 934, image synthesis system 500 configures mobile device 890 to calculate camera orientation 585. Camera orientation 585 calculated by mobile device 890 can be stored in memory 840A, such as Figure 4 shown.
[0089] The synthesis system 500 configures the mobile device 890 to calculate the stabilized output path 590 of the video, which is contemplated as being classified as Figure 5 One of a variety of potential functions is shown within the scope of block 780, although it may also include other synthetic functions described herein or known to those of ordinary skill in the art.
[0090] In some example embodiments, the eye-mounted device 200 is configured to collect sensor data 580 according to a capture profile 510 by executing instructions of the image composition system 500, which includes information collected by the sensor array 980. The sensor array 980 includes a camera 218, a user input device 222 such as a button or touch pad, a microphone 993, a depth sensor 213, and an inertial measurement unit (IMU) 972. In this example, the capture profile 510 is a reactive capture profile; these conditions react to the sensor data 580 collected in real time from the sensor array 980 instead of a fixed set of conditions. For example, a reactive capture profile may include a reactive start condition that is configured to start recording when the sensor data 580 includes a start input. The start input may be an auditory start command received by a microphone 993 in the sensor array 980, a physical start command received by the input device 222 (e.g., a tap or tap pattern on a button or touchpad), a start gesture made by the wearer and captured by the camera 218, a selected orientation of the eye-mounted device 200 (vertical, horizontal, stationary for a period of time) indicated by the data set 572 collected by the inertial measurement unit 972, or a selected lighting condition captured by the camera 218. The selected orientation of the eye-mounted device 200 may include a position component and a time component. For example, the selected orientation may include maintaining a substantially horizontal position (e.g., facing the face) for a minimum period of time (e.g., maintaining a number of seconds without moving beyond a threshold). Similarly, the selected orientation may include maintaining a substantially vertical position (e.g., in a pocket, hanging on a shirt collar) for a minimum period of time.
[0091] In some examples, processing profile 520 includes stabilization settings (e.g., "No," "Yes," a custom selection of a particular stabilization algorithm), spacing effects (visual effects applied between segments, if any; e.g., cut, dissolve, fade, wipe), visual layers (e.g., tint, color fade, border, frame, overlay element), audio layers (e.g., silence, ambient sound, music track, voice-over narration), and playback speed (relative to recording speed). Each setting may include a default setting, as well as a user interface that allows a user to adjust each setting. For example, a default processing profile 520 may include "Yes" for a stabilization setting, cut for spacing effects (making video work 600 seamless between segments), "None" for a visual layer (no tint processing or added elements), "Silence" for an audio layer, and "2x" for playback speed.
[0092] In related aspects, processing profile 520 can be one or more reactive settings; that is, settings that change based on the first or second data set or the first or second camera orientation or the stabilized output path. For example, information within the first data set can indicate that a particular stabilization algorithm is well suited for that data. Information contained in the stabilized output path can indicate that a particular playback speed is well suited for video composition during playback.
[0093] When syncing 770 a client device (e.g., mobile device 890) with a companion device (e.g., eye-mounted device 200), the mobile device 890 applies the automatic sharing profile to the newly captured 752 image. In this way, the sending profile options 730 and the audience profile options 732 can be applied to the captured image at 790 so that the mobile device 890 or other client device can share or post 800 according to the options defined by the profile.
[0094] Thus, users are able to automate image capture, composition, and sharing using a companion device for capturing and a client device for sharing, with either or both devices participating in the composition.
[0095] As described herein, any of the image capture, synthesis, and sharing functions described herein for the eye-mounted device 200, mobile device 890, and server system 998 may be implemented in one or more computer software applications or programming instruction sets. According to some examples, "function(s)", "function(s)", "application(s)", "application(s)", "instruction(s)", "instruction(s)", or "programming" is a program that performs the functions defined in the program. Various programming languages may be used to create one or more applications structured in various ways, such as an object-oriented programming language (e.g., Objective-C, Java, or C++) or a programming language (e.g., C or assembly language). In a specific example, a third-party application (e.g., an application created using ANDROID TM or IOS TM Software Development Kit (SDK) for developing applications) can be included in IOS TM ANDROID TM , Mobile software running on a mobile operating system such as iOS or other mobile operating systems such as Android phones. In this example, the third-party application can call API calls provided by the operating system to facilitate the functions described in this article.
[0096] Therefore, machine-readable media can take the form of tangible storage media in many forms. Taking non-volatile storage media as an example, it includes optical or magnetic disks, such as all storage devices in any computer device, which can be used to implement the client device, media gateway, transcoder, etc. shown in the figure. Volatile storage media include dynamic memory, such as the main memory of a certain computer platform. Tangible transmission media include coaxial cables; copper wires and optical fibers, including wires that constitute the bus within the computer system. The form of carrier transmission media can take the form of electrical or electromagnetic signals, or sound or light waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Therefore, common forms of computer-readable media include: floppy disks, floppy disks, hard disks, magnetic tapes, any other magnetic media, CD-ROMs, DVDs or DVD-ROMs, any other optical media, punch cards, paper tapes, any other physical storage media with hole patterns, RAM, PROMs and EPROMs, FLASH-EPROMs, any other memory chips or cassettes, carriers that transmit data or instructions, cables or links that transmit such carriers, or any other media from which a computer can read programming code or data. Among other things, computer readable media may be involved in carrying one or more sequences of one or more instructions to a processor for execution.
[0097] Except as described above, what is described and shown is not intended and should not be construed to cause any component, step, function, object, benefit, advantage or equivalent to be exclusive to the public regardless of whether it is recited in the claims.
[0098] It should be understood that, unless otherwise specified herein, the terms and expressions used herein have the general meanings assigned to them by their respective fields of investigation and study. Relational terms such as "first" and "second" may be used only to distinguish one entity or action from another entity or action, without requiring or implying any actual such relationship or order between such entities or actions. The terms "comprise", "include", "contain", "included" or any other variant thereof are intended to cover non-exclusive inclusion, such that a process, method, article or device comprising or including a series of elements or steps includes not only these elements or steps, but also other elements or steps that are not explicitly listed or inherent to such processes, methods, articles or devices. Without further limitation, an element preceded by "a" does not exclude the presence of other identical elements in the process, method, article or device comprising the element.
[0099] Unless otherwise stated, any and all measurements, values, ratings, positions, magnitudes, dimensions, etc., described in this specification (including the claims that follow) are approximate values, not exact values. Such quantities are intended to have a reasonable range consistent with the functions to which they are related and consistent with the practices in the field to which they belong. For example, unless otherwise expressly stated, parameter values, etc. may vary from the specified amount by ±10%.
[0100] Furthermore, in the foregoing detailed description, it can be seen that various examples group various features together in order to simplify this disclosure. This method of disclosure should not be interpreted as reflecting an intention that the claimed examples require more features than those expressly recited in each claim. On the contrary, as reflected in the following claims, the subject matter to be protected does not lie in all the features of any single disclosed example. Therefore, the following claims are hereby incorporated into the detailed description, with each claim standing on its own as a separately claimed subject matter.
[0101] Although the foregoing describes what are believed to be the best modes and other examples, it is understood that various modifications may be made in such modes and examples, that the subject matter disclosed herein may be implemented in various forms and examples, and that such modes and examples may be applied to a variety of applications, only some of which are described herein. The following claims are intended to claim any and all modifications and variations that fall within the true scope of the present concept.
Claims
1. An image capturing and sharing system, the system comprising: a camera configured to capture at least one image; a user input device configured to receive at least one sharing instruction; a memory and a processor coupled to the camera and the user input device; as well as Programming in the memory, wherein execution of the programming by the processor configures the system to perform functions, including the following functions: creating a sharing profile including automatic sending options for sending the captured image, the automatic sending options including at least one of a last selected sending option, automatically sending and sharing the at least one captured image upon connection, automatically sending and sharing the at least one captured image after a delay, or saving the at least one captured image for viewing; automatically applying the shared profile to the at least one image after capturing; and The at least one image is shared over a network according to an automatic sending option.
2. A system according to claim 1, wherein the sharing profile also includes an automatic audience option for establishing an audience for sharing the captured image, the automatic audience option including at least one of a last selected audience, a recent chat, or a user's story, and wherein execution of the programming by the processor also configures the system to share the at least one image according to the automatic audience option. 3 . The system of claim 1 , wherein the user input device has at least two buttons for performing the capturing of the at least one image by the camera. 4 . The system of claim 3 , wherein the sharing profile includes an option for designating the button of the user input device to perform at least one of a manual or automatic sharing function.
5. The system of claim 4 further comprising a user device, wherein the sharing profile assigns a first button to standard video / photo processing without an automatic send function, and assigns a second button to automatically share a captured image through the user device when connected to the user device.
6. The system of claim 3, wherein execution of the programming by the processor configures the system to perform functions including: A capture profile is established, the capture profile including an option for assigning one or more buttons of the user input device to perform at least one of a manual or automatic sharing function.
7. A system according to claim 6, wherein the capture profile includes an option for assigning a button to enable the user to select between a standard capture and an automatic shared capture based on at least one of the duration of the button being pressed, the number of times the button is pressed, user manipulation of a touch surface, or an audio instruction from the user.
8. The system of claim 6, further comprising a sensor array that senses a set of conditions or variables that determine how and when the camera will capture a series of raw image segments, wherein the capture profile includes the set of conditions or variables.
9. The system of claim 8, wherein the capture profile comprises at least one of a start condition, a segment duration, a pause duration between segments, or a number of segments.
10. The system of claim 1, wherein the processor executing the programming configures the system to perform functions including the following functions: One or more profiles are established for capturing and processing the at least one image, the one or more profiles for capturing and processing including an option for applying at least one effect prior to sharing the at least one image, the effect including at least one of a visual effect or an audio effect.
11. The system of claim 10, wherein the visual effect comprises at least one of a filter, a tint, a border, a subtitle, a location tag, or an augmented reality feature, and the audio effect comprises at least one of music, noise, or a change in recorded audio.
12. The system of claim 10, further comprising a user device, wherein the one or more profiles for capturing and processing are automatically applied to at least one image when captured by the camera, by the user device when synchronized, or both.
13. The system of claim 1, further comprising an array of sensors that sense conditions, wherein the processor executes programming to configure the system to perform functions including the following: Establishing a processing profile, the processing profile comprising at least one of a stabilization setting, a spacing effect, a visual layer, an audio layer, a playback speed, or one or more reaction settings that vary based on at least one of a condition sensed by the sensor array, an orientation of the camera, or stabilization of the camera during image capture.
14. A method of capturing and sharing an image, comprising: receiving an option of a sharing profile, the sharing profile including an automatic audience option for establishing an audience for sharing a captured image, the automatic audience option including at least one of a last selected audience, a recent chat, or a user's story; automatically applying the shared profile to at least one image after capture; as well as Share at least one image across your network based on the automatic audience selections.
15. The method of claim 14, wherein the sharing profile further comprises an automatic sending option for sending the captured image, the automatic sending option comprising at least one of a last selected sending option, automatically sending and sharing the at least one captured image upon connection, automatically sending and sharing the at least one captured image after a delay, or saving the at least one captured image for viewing, and wherein sharing the at least one image comprises sharing the at least one image according to the automatic sending option.
16. The method of claim 14, further comprising creating a capture profile, the capture profile comprising a set of conditions or variables that determine how and when the camera will capture a series of raw image segments as the captured images, wherein the capture profile comprises at least one of a start condition, a segment duration, a pause duration between segments, or a number of segments.
17. The method of claim 14, further comprising establishing one or more profiles for capturing and processing the at least one image, the one or more profiles for capturing and processing comprising an option for applying at least one effect before sharing the at least one image, the effect comprising at least one of a visual effect or an audio effect, wherein the visual effect comprises at least one of a filter, a tint, a border, a subtitle, a location tag, or an augmented reality function, and the audio effect comprises at least one of music, noise, or a change in recorded audio.
18. The method of claim 17 further comprising creating a processing profile, the processing profile comprising at least one of a stabilization setting, a spacing effect, a visual layer, an audio layer, a playback speed, or one or more reaction settings, the reaction setting varying based on at least one of a condition sensed by the sensor array, an orientation of a camera capturing the at least one captured image, or stabilization of the camera during image capture.
19. A non-transitory computer readable medium comprising instructions which, when executed by a processor, cause an electronic system to: receiving options for a sharing profile, the sharing profile including an automatic send option for sending a captured image, the automatic send option including at least one of a last selected send option, automatically sending and sharing at least one captured image upon connection, automatically sending and sharing at least one captured image after a delay, or saving at least one captured image for viewing; automatically applying the shared profile to at least one image after capture; and Share at least one image over the network using the AutoSend option.
20. The medium of claim 19, wherein the sharing profile further comprises an automatic audience option for establishing an audience for sharing the captured image, the automatic audience option comprising at least one of a last selected audience, a recent chat, or a user's story, and instructions that, when executed by the processor, cause the electronic system to configure the system to share the at least one image according to the automatic audience option.