Reconstructed code segments and methods of using the same
By dividing visual codes into multiple parts and combining or moving them in different states to form functional visual codes, the problem of static visual codes being unable to control reading time and readers is solved, thereby improving information security and privacy protection. It is suitable for item tracking, accountability, security authentication, and transactions.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- RVC TECH INC
- Filing Date
- 2020-02-20
- Publication Date
- 2026-04-10
AI Technical Summary
Existing static visual code cannot control the reading time and the reader, resulting in insufficient information security and privacy protection.
Visual codes are divided into multiple parts, and these parts are combined or moved in different states to form functional visual codes. Information is extracted using a visual scanning system and then operated in an augmented reality environment.
It enables dynamic control of visual codes, improving information security and privacy protection, and is suitable for applications such as item tracking, accountability, security authentication, and transactions.
Smart Images

Figure CN113966508B_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of U.S. Patent Application No. 62 / 808,804, filed February 21, 2019, which is incorporated by reference herein in its entirety. BACKGROUND
[0003] Visual codes (e.g., bar codes) are used in some applications, including, for example, tracking (e.g., monitoring and / or recording), accountability, security (e.g., lock key mechanisms), authentication, transfer of one or more items (or devices). Examples of such items include computer data containing information, items (e.g., documents, mailed packages, food, pharmaceuticals, etc.), animals (e.g., wild and domesticated animals), and individuals (participants in events and patients, etc.), and the like. Visual codes can include graphical and / or textual elements that encode information related to the item or link to such information stored in a separate database (e.g., a cloud database). Visual codes can be printed on the item and read by a reading device (e.g., an electronic reading device), thereby identifying the item and allowing transfer or modification of the encoded information (e.g., updating to provide a time stamp).
[0004] Because visual codes are printed or made on items in a readable format, visual codes are generally static (e.g., are non-hidden). In some cases, such static visual codes do not control when the visual code is read and / or who can read the visual code. SUMMARY
[0005] The present invention relates to systems and methods related to dynamic visual codes. In particular, the present invention describes systems and methods related to visual codes that can be divided into multiple parts that can be read by a reader. The multiple parts of the visual code can be combined (e.g., at the time of activation) to form a visual code that can be read by the reader. The present application describes software and hardware configurations that use such reconfigurable visual codes. The present application also describes methods that use reconfigurable visual codes, for example, for security and user identity detection in the case of obtaining a prescription drug at a pharmacy.
[0006] One aspect of the present invention provides a reconfigurable visual code, comprising a visual code divided into multiple separate parts, the multiple separate parts configured to transition between two or more states, wherein in a first state, the multiple separate parts are placed apart to form a non-functional visual code, wherein in a second state, the multiple separate parts are moved relative to each other to form a functional visual code.
[0007] In some embodiments, in the second state, the plurality of separate portions (i) are directly adjacent to each other, and / or (ii) are one on top of the other, to form the functional visual code.
[0008] In some embodiments, each of the plurality of separate portions is disposed on one of a plurality of separate substrates. In some embodiments, at least one of the plurality of separate substrates is movable.
[0009] In some embodiments, the visual code is operatively linked with a visual scanning system configured to extract information from the functional visual code based in part on an image and / or video of the functional visual code. In some embodiments, the visual scanning system is further configured to distinguish between the visual code in the first state and the visual code in the second state.
[0010] In some embodiments, the reconfigurable visual code can be used for tracking, accountability, security, authentication, and / or transactions of an item carrying the reconfigurable visual code.
[0011] In some embodiments, the functional visual code is formed in an augmented reality environment. In some embodiments, in the first state, a first separate portion is in a physical environment and a second separate portion is in the augmented reality environment. In some embodiments, the first separate portion is different from the second separate portion. In the second state, images and / or videos of the first separate portion and the second separate portion are moved relative to each other in the augmented reality environment to form the functional visual code.
[0012] In some embodiments, the plurality of separate portions includes a first portion and a second portion, and, in the first state, the first portion and the second portion are separated to form the non-functional visual code, and, in the second state, the first portion and the second portion are combined to form a functional visual code. In some embodiments, the first portion is provided by a pharmacy and the second portion is provided by a user of a medication or an agent of the user. In some embodiments, the first portion is provided (i) in an augmented reality environment associated with the pharmacy, or (ii) on a container or packaging configured to hold the medication assigned to the user. In some embodiments, a prescription for a medication is provided to a user. In some embodiments, the second portion is provided (i) in an augmented reality environment associated with the user or an agent of the user, or (ii) on an identification of the user or the agent of the user.
[0013] In some embodiments, the scanning device is configured to scan one or both of the first portion and the second portion to form the functional visual code in an augmented reality environment associated with the scanning device. In some embodiments, the scanning device is part of a device of a pharmacy, and in some embodiments, the scanning device is part of a personal device of the user or an agent of the user. In some embodiments, the personal device comprises a mobile device.
[0014] In some embodiments, the first portion is provided with an object, and the second portion is provided by a user device. In some embodiments, the first portion is provided (i) on top of the object, or (ii) on top of or inside a container or storage unit configured to hold the object. In some embodiments, the object is a good, a shipping container configured to hold the good, a shipping storage unit configured to hold the good, luggage, or an electronic display. In some embodiments, the first portion is provided on a tag attached to the luggage. In some embodiments, the second portion is provided in an augmented reality environment associated with the user device.
[0015] In some embodiments, the scanning device is configured to scan one or both of the first portion and the second portion to form the functional visual code in an augmented reality environment associated with the scanning device. In some embodiments, the scanning device is part of a user device, and the augmented reality environment is associated with the user device. In some embodiments, the personal device comprises a mobile device.
[0016] In some embodiments, the system further comprises a user device operatively associated with the visual code. In some embodiments, the user device is configured to provide an augmented reality environment associated with at least a portion of the visual code. In some embodiments, the system comprises the scanning device described elsewhere.
[0017] Another aspect of the present application provides a method of reconstructing a visual code, comprising: (a) providing a visual code, the visual code being divided into a plurality of separate portions, the plurality of separate portions being configured to transition between two or more states; and (b) transitioning the plurality of separate portions from a first state to a second state, wherein (i) in the first state, the plurality of separate portions are positioned apart from one another, thereby forming a non-functional visual code, and (ii) in the second state, the plurality of separate portions are moved relative to one another, thereby forming a functional visual code.
[0018] In some embodiments, in the second state, the plurality of individual portions are (i) directly adjacent to each other, and / or (ii) one is superimposed on another, to form the functional visual code.
[0019] In some embodiments, each of the plurality of individual portions is disposed on one of a plurality of individual substrates. In some embodiments, the transforming includes moving at least one of the plurality of individual substrates.
[0020] In some embodiments, the visual code is operatively linked with a visual scanning system configured to extract information from the functional visual code based in part on an image and / or video of the functional visual code. In some embodiments, the visual scanning system is further configured to distinguish between the visual code in the first state and the visual code in the second state.
[0021] In some embodiments, the reconfigurable visual code can be used for tracking, accountability, security, authentication, and / or transaction of an item carrying the reconfigurable visual code.
[0022] In some embodiments, a functional visual code is formed in an augmented reality environment. In some embodiments, in a first state, a first individual portion is in a physical environment and a second individual portion is in an augmented reality environment. In some embodiments, the first individual portion is different from the second individual portion. In some embodiments, in the second state, an image and / or video of the first individual portion and the second individual portion are moved relative to each other in the augmented reality environment to form the functional visual code.
[0023] In some embodiments, the plurality of separate portions includes a first portion and a second portion, and (i) in the first state, the first portion and the second portion are separated to form the non-functional visual code, and (ii) in the second state, the first portion and the second portion are combined together to form a functional visual code. In some embodiments, the first portion is provided by a pharmacy and the second portion is provided by a user of the medication or an agent of the user. In some embodiments, the method further comprises (i) providing the first portion in an augmented reality environment associated with the pharmacy, or (ii) providing the first portion on a container or packaging configured to hold the medication assigned to the user. In some embodiments, a prescription for the medication is provided to the user. In some embodiments, the method further comprises (i) providing the second portion in an augmented reality environment associated with the user or an agent of the user, or (ii) providing the second portion on an identification of the user or the agent of the user. In some embodiments, the method further comprises scanning one or both of the first portion and the second portion with a scanning device to form the functional visual code in an augmented reality environment associated with the scanning device. In some embodiments, the scanning device is part of a pharmacy device. In some embodiments, the scanning device is part of a personal device of the user or the agent of the user. In some embodiments, the personal device comprises a mobile device.
[0024] In some embodiments, the method further comprises the first portion being provided with an object, and the second portion being provided by a user device. In some embodiments, the first portion is provided (i) on the object, or (ii) on or in a container or storage unit configured to hold the object. In some embodiments, the object is a good, a shipping container configured to hold the good, a shipping storage unit configured to hold the good, luggage, or an electronic display. In some embodiments, the first portion is provided on a tag attached to the luggage.
[0025] In some embodiments, the method further comprises providing the second portion in an augmented reality environment associated with the user device. In some embodiments, the method further comprises scanning one or both of the first portion and the second portion with a scanning device to form the functional visual code in an augmented reality environment associated with the scanning device. In some embodiments, the scanning device is part of the user device, wherein the augmented reality environment is associated with the user device. In some embodiments, the personal device comprises a mobile device.
[0026] Another aspect of the present application provides a non-transitory computer readable medium containing machine executable code that, when executed by one or more computer processors, implements any of the specific methods disclosed herein.
[0027] Another aspect of the present application provides a computer system comprising one or more processors for executing a product of a computer program, the product of the computer program comprising a non-transitory computer readable medium containing computer executable code written thereon, the computer executable code being adapted to be executed by a computer to perform any of the specific methods of the present application, for example, a method comprising reconfiguring a visual code.
[0028] To those skilled in the art, other aspects and advantages of the present application will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the application. The description herein is intended to be illustrative, but not limiting, of the scope of the application.
[0029] INCORPORATION BY REFERENCE
[0030] All publications, patents, and patent applications mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent, or patent application was specifically and individually indicated to be incorporated by reference. BRIEF DESCRIPTION OF DRAWINGS
[0031] The novel features of the application are set forth with particularity in the appended claims. A better understanding of the features and advantages of the present application will be obtained by reference to the following detailed description that sets forth illustrative embodiments, in which the principles of the application are utilized, and the accompanying drawings of which:
[0032] FIGS. 1A-1C An example of a device comprising a reconfigurable visual code having multiple segments is schematically illustrated.
[0033] FIGS. 2A-2C An example of a device comprising a reconfigurable visual code having two segments is schematically illustrated.
[0034] FIG. 2D and FIG. 2E Another example of a device comprising a reconfigurable matrix code having two segments is schematically illustrated.
[0035] FIGS. 3A-3C An example of a device comprising a reconfigurable visual code having three segments is schematically illustrated.
[0036] FIGS. 4A-4C Another example of a device comprising a reconfigurable visual code with three segments is schematically illustrated.
[0037] FIG. 4D and FIG. 4E A different example of a device comprising a reconfigurable matrix code with three segments is schematically illustrated.
[0038] FIGS. 5A-5C An example of a device comprising a reconfigurable visual code with four segments is schematically illustrated.
[0039] FIGS. 6A-6C An example of a device comprising a reconfigurable visual code with six segments is schematically illustrated.
[0040] FIGS. 7A-7C Top and side views of a device comprising a reconfigurable visual code with three segments is schematically illustrated.
[0041] FIGS. 8A-8B An example of a device comprising a reconfigurable visual code with two segments is schematically illustrated.
[0042] FIG. 9 Top and side views of a device comprising a reconfigurable visual code with three partially overlapping segments is schematically illustrated.
[0043] FIG. 10 An example of a device comprising a three-dimensional (3D) reconfigurable visual code with multiple segments is schematically illustrated.
[0044] FIG. 11A and FIG. 11B Detection of a unique pattern of a reconfigurable visual code of a device with a visual scanning system is schematically illustrated.
[0045] FIG. 12A and FIG. 12B Detection of a unique pattern of a reconfigurable visual code of multiple devices with a visual scanning system is schematically illustrated.
[0046] FIG. 13 An ecosystem of the use of reconfigurable visual codes is schematically illustrated.
[0047] FIG. 14 A computer system for programming or configured to implement the methods provided by the present invention is shown.
[0048] FIGS. 15A-15H A covert visual code system that can be augmented reality revealed is schematically illustrated.
[0049] FIGS. 16A-16C An obscured visual code system that can be augmented by augmented reality in a medical pick-up is illustratively shown.
[0050] FIG. 17 An example process for a medical pick-up using an obscured visual code system is illustratively shown.
[0051] FIG. 18 An example of using a reconfigurable visual code system in tracking of package delivery is illustratively shown.
[0052] FIG. 19 An example of using a reconfigurable visual code system in baggage retrieval is illustratively shown. DETAILED DESCRIPTION
[0053] The systems and methods described herein are operable to utilize dynamic visual codes in a number of applications, such as one or more of tracking, accountability, security, authentication, and transactions of articles. The systems and methods can provide mechanisms for reconfiguring portions of a visual code such that an electronic reader can read the reconfigurable visual. The systems and methods can provide configurations for dividing a visual code into portions, and corresponding techniques for reconfiguring the divided visual code (e.g., upon automatic and / or manual activation).
[0054] Systems and methods for reconfigurable visual codes
[0055] As used herein, the term "visual code" can refer to a representation (e.g., a construct) of optically and / or mechanically readable data, where the data generally describes something about an article carrying the visual code. In some cases, the article can include one or more devices. The visual code can include one or more graphical visual elements (e.g., one or more pictorial and / or textual data tables), including but not limited to, one-dimensional (ID) visual codes representing data by varying the width or spacing of parallel lines, two-dimensional (2D) visual codes representing data in geometric patterns, such as a Quick Response Code (QR), and / or three-dimensional (3D) visual codes. In some cases, a three-dimensional (3D) visual code can be a layer including multiple one-dimensional (ID) visual codes and / or two-dimensional (2D) visual codes, or multiple one-dimensional (ID) visual codes and / or two-dimensional (2D) visual codes having different depths from each other. The visual code can or can not be visible to the naked eye.
[0056] In some cases, a visual scanning system (e.g., a sensor) can read a visual code such that the visual scanning system can extract information stored in the visual code (e.g., information related to an item carrying the visual code). In some cases, a visual scanning system (e.g., a sensor) can read a visual code such that the visual scanning system can operatively connect with an external database containing such information. In some cases, a user can read a visual code.
[0057] A visual code can include a linear (ID) visual code, which can be static and / or dynamic (e.g., static and dynamic at different points in time). A linear visual code can contain one or more lines (e.g., one or more static lines) that produce a unique linear pattern. The one or more lines that produce the unique linear pattern can be of the same color (e.g., monochromatic) or of different colors (e.g., multichromatic). In one example, a linear visual code can be a black and white (B&W) pattern. In another example, a linear visual code can be a multichromatic pattern. In a different example, a linear visual code can be a multichromatic infrared pattern, in which different portions of the linear visual code are configured to emit different temperatures due to emitted infrared radiation that can be read by an infrared sensor. Alternatively or additionally, the color of the one or more lines can vary over time (e.g., meta-color). The one or more lines of the linear visual code can be printed on a surface of an item (e.g., an object) using an ink-like material. Alternatively or additionally, the surface of the item can be mechanically processed to produce the one or more lines of the visual code on the surface of the item such that the one or more lines can protrude outward from the surface of the item or be recessed inward into the surface of the item. The one or more lines can or can not be on the same plane. The portion of the surface that has been mechanically processed or that excludes the one or more lines can be colored (one or more colors). The one or more lines can be resolved with one or more spaces (e.g., one or more static spaces) to produce a unique one-dimensional (ID) linear pattern. The one or more lines can or can not be straight (e.g., curved, zigzagged, or angled).
[0058] A visual code can vary continuously, periodically, according to a pre-set schedule, or in response to a detected activity or condition.
[0059] Commonly used linear visual codes can include two or more sub-visual codes. At least a portion of the sub-visual codes can overlap each other. In some cases, the sub-visual codes can include a "non-visible" (e.g., not visible to the naked eye) visual code and a visible (e.g., visible to the naked eye) visual code. The non-visible visual code can be embedded in the visible visual code. In some cases, the visible visual code can be used as a decoy, while the non-visible visual code can contain or be operatively connected to data carrying information of the item bearing the linear visual code. In one example, one or more rows of the linear visual code can appear black to the naked eye, but can exhibit a plurality of and distinguishable wavelengths of the electromagnetic spectrum (e.g., distinguishable using an infrared (IR) or ultraviolet (UV) visual scanning system).
[0060] In some cases, one or more rows of dynamic changes with or without static or dynamic change spaces can produce one-dimensional (ID) linear patterns in real time. The one or more rows of dynamic changes can produce a plurality of one-dimensional (ID) linear patterns (e.g., different one-dimensional (ID) linear patterns) at a plurality of time points. In some examples, the plurality of different one-dimensional (ID) linear patterns can be unique, time-dependent one-dimensional (ID) linear patterns that can be read by a visual scanning system, and in some examples, only a portion of the plurality of different one-dimensional (ID) linear patterns can be unique, time-dependent one-dimensional (ID) linear patterns that can be read by a visual scanning system.
[0061] Examples of linear visual codes include Australia Post barcode, Codabar, Code 25 (interleaved or non-interleaved), Code 11, Code 32 (or Farmacode), Code 39, Code 49, Code 93, Code 128, DigitalindeX (DX), European Article Numbers (EAN), Facing Identification Mark, Intelligent Mail barcode, Interleaved 2 of 5 (ITF), Modified Plessey, Pharmacode, Postal Alpha Numeric Encoding Technique (PLANET), PostBar, Postal Numeric Encoding Technique, Universal Product Code (e.g., UPC-A and UPC-E), modifications thereof, or combinations thereof.
[0062] One or more features of the embodiments of the one-dimensional (ID) visual codes provided herein (e.g., static and / or dynamic visual codes, monochromatic, multichromatic, and / or metachromatic visual codes, sub-visual codes, etc.) can be used to produce any of the embodiments of the visual codes provided elsewhere in the present disclosure (e.g., two-dimensional (2D) and / or three-dimensional (3D) visual codes).
[0063] The visual code can comprise a matrix (2D) visual code. In some cases, the matrix (2D) visual code comprises more data (or information) per unit area of the visual code than a linear visual code. The matrix visual code can comprise a plurality of rows that are not parallel to each other. The matrix visual code can comprise 2, 3, 4, 5, 6, 7, 8, 9, 10, or more rows that are not parallel. The matrix visual code can comprise at most 10, 9, 8, 7, 6, 5, 4, 3, 2 rows that are not parallel. The angle between two rows of the matrix visual code can be acute, right, or obtuse. At least a portion of the plurality of rows of the matrix visual code can intersect at one or more points. The matrix visual code can comprise a plurality of regions. The plurality of regions can be the same shape or different shapes, e.g., can be circular, triangular, square, rectangular, pentagonal, hexagonal, or any portion of these shapes or combinations of these shapes. The plurality of regions can be the same color or different colors, e.g., can indicate different wavelengths of the electromagnetic radiation spectrum. At least a portion of the plurality of regions of the matrix visual code can overlap each other or can not overlap each other.
[0064] The matrix visual code can be a static and / or dynamic matrix visual code. The matrix visual code can be a monochromatic, multichromatic (e.g., in the visible and / or infrared spectrum), and / or metachromatic matrix visual code. The matrix visual code can comprise two or more sub-visual codes. The sub-visual codes of the matrix visual code can be matrix visual codes or a combination of matrix visual codes and non-matrix visual codes, e.g., linear visual codes. In some cases, at least one of the plurality of sub-visual codes of the matrix visual code can be invisible (e.g., to the naked eye).
[0065] Examples of matrix visual codes include Aztec, ColorCode, Color Construct Code, CrontoSign, CyberCode, d-touch, DataGlyphs, Data Matrix, Datastrip Code, Digimarc Barcode, DotCode, DWCode, EZcode, High Capacity Color Barcode, Han Xin Barcode, HueCode, InterCode, MaxiCode, Mobile Multi-Colored Composite (MMCC), NexCode, PDF417, Qode, QR code, ShotCode, Snapcode, SPARQCode, VOICEYE, modifications thereof, or combinations thereof. Other examples of matrix visual codes include one and / or more images and / or one or more texts.
[0066] Matrix visual codes (e.g., QR codes) can be of various sizes as long as they can be scanned by imaging devices from a suitable distance. Matrix visual codes can be in any image format (e.g., EPS or SVG vector graphics, PNG, GIF, JPEG raster graphics formats).
[0067] A visual code can include a three-dimensional (3D) visual code. In some cases, a three-dimensional (3D) visual code can include more data (or information) per unit area of the visual code than a linear visual code or a matrix visual code. The terms "2.5-dimensional (2.5D)" and "3D" can be used interchangeably herein and can refer to a visual code that provides a perception of depth. A three-dimensional (3D) visual code can have a pattern that provides a perception of depth. A three-dimensional (3D) visual code can have two or more portions disposed at different depths. In some cases, a first portion of a three-dimensional (3D) visual code is disposed at a higher position than a second portion of the three-dimensional (3D) visual code (e.g., at a higher position relative to a reference position in an article carrying the three-dimensional (3D) visual code). In one example, a three-dimensional (3D) visual code includes a holographic pattern. A holographic pattern can be an interference pattern that produces a three-dimensional image under suitable lighting conditions.
[0068] A three-dimensional (3D) visual code can be a static and / or dynamic three- dimensional (3D) visual code. A three-dimensional (3D) visual code can be a monochromatic, polychromatic (e.g., in the visible and / or infrared spectrum), and / or metachromatic matrix visual code. A three-dimensional (3D) visual code can comprise two or more sub-visual codes. A sub-visual code of a three-dimensional (3D) visual code can be a linear visual code, a matrix visual code, a three-dimensional (3D) visual code, or a combination thereof. In some cases, at least one of the plurality of sub-visual codes of a three-dimensional (3D) visual code can be invisible (e.g., to the naked eye). In some cases, a plurality of portions of a 3D visual code can have different heights (and / or depths), whereby each group of one or more portions having the same height (and / or depth) can produce a unique sub-visual 3D code.
[0069] Examples of a three-dimensional (3D) visual code can include a one-dimensional (ID) and / or a two-dimensional (2D) visual code, e.g., can be a 3D variant of one or more barcodes, one or more images, one or more texts, or a combination thereof.
[0070] A visual code can be divided into a plurality of portions. A visual code can be divided into at least 2, 3, 4, 5, 6, 7, 8, 9, 10, or more portions. A visual code can be divided into at most 10, 9, 8, 7, 6, 5, 4, 3, 2 portions. The plurality of portions of a divided visual code can be moved relative to each other using a mechanism similar to the aperture of a photographic camera. The terms "divided", "segmented", "split", "separated", "separated", "split", "divided into portions" can be used interchangeably. The terms "portion", "leaflet", "branchlet", "portion", "fragment", "base", "bit", "segment", "divided portion", "section", "component", and "position" can be used interchangeably and can refer to each of the plurality of portions of a divided visual code. The plurality of portions of a visual code can have the same or different shapes, sizes, depths, textures, colors, temperatures, motions (e.g., stationary or moving), magnetic fields, electric fields, and constituent components (e.g., metallic, ceramic, and / or polymeric materials, e.g., inks, or a substrate layer carrying the visual code).
[0071] A visual code can be substantially flat, convex, concave, or have any texture.
[0072] The divided visual code can be reconstituted to form an integrated visual code that is read by the visual scanning system. The terms "reconstituted," "combined," "generated," "re-generated," "created," "re-created," "completed," and "united" can be used interchangeably and can refer to the integrated visual code from the divided visual code. The divided (and unreconstituted) visual code can not be readable by the visual scanning system. The reconstitution of the divided visual code (e.g., the combination of the multiple portions of the visual code) can be reversible (e.g., non-permanent) or non-reversible (e.g., permanent). The non-reversible reconstitution of the divided visual code can include the use of a locking (e.g., automatic or manual) mechanism.
[0073] Alternatively or additionally, the divided and reconstituted visual codes can be readable by the visual scanning system. In such a case, the divided visual code encodes a first visual code and the reconstituted visual code encodes a second visual code, the first visual code can be different from the second visual code, such that the visual scanning system can distinguish between the divided visual code and the reconstituted visual code from one another.
[0074] In another alternative or additional scenario, a first visual code of the divided visual code can be readable by a first visual scanning system and a second visual code of the reconstituted visual code can be readable by a second visual scanning system, wherein the first visual scanning system is different from the second visual scanning system, such that the first visual code can be distinguished from the second visual code.
[0075] A visual code can be added (e.g., printed, machined, and adhered, etc.) on top of an article. The divided portions of the visual code can be on a common substrate layer or multiple substrate layers (e.g., at least 2, 3, 4, 5, 6, 7, 8, 9, 10, or more substrate layers, or, at most, 10, 9, 8, 7, 6, 5, 4, 3, or 2 substrate layers). The common substrate layer containing the portions of the visual code can be altered in shape (e.g., folded) such that the visual code is reconfigured. Alternatively or additionally, the multiple substrate layers can be aggregated together (e.g., using mechanical force) such that the visual code is reconfigured. The multiple substrate layers can or can not overlap each other when aggregated together. In some cases, the multiple substrate layers can be aggregated together side-by-side without overlapping. The multiple substrate layers can or can not be in contact with each other when aggregated side-by-side. In some cases, the multiple substrate layers can be aggregated together with at least one portion of a first substrate layer overlapping at least one portion of a second substrate layer. In such cases, one or both of the first and second substrate layers can contain one of the portions of the visual code. In one example, the visual code can be a covert visual code, where the divided portions of the visual code can be aggregated together and overlapped to reveal the covert unique visual code. The covert unique visual code can be readable by a visual scanning device. The reconfiguration of the divided visual code can include overlapping at least one of 2, 3, 4, 5, 6, 7, 8, 9, 10, or more portions of the divided visual code. The reconfiguration of the divided visual code can include overlapping at most one of 10, 9, 8, 7, 6, 5, 4, 3, 2 portions of the divided visual code.
[0076] In some cases, at least one portion of the reconfigurable visual code can be covert initially, and the covert visual code can be revealed using one or more revealing mechanisms. The revealing mechanisms can be manual (e.g., manually triggered by a user) and / or automatic (e.g., determined by a detection of a factor such as humidity, temperature, pressure, etc. or a predetermined time). In some cases, the covert visual code can be revealed by a user who is authenticated to possess or initiate the revealing mechanism. In some cases, all of the visual code is covert and later revealed, reconfiguring the visual code into a functional visual code. In some cases, one portion of the visual code is covert, later revealed, and combined with a permanently visible portion of the visual code, reconfiguring the visual code into a functional visual code.
[0077] In some cases, the revealing of the covert visual code can include an appearance of the visual code, a change in one or more colors of the visual code, and / or a change in the morphology of the visual code.
[0078] The revealing mechanism of the hidden visual code can include augmented reality (AR), virtual reality (VR), electromagnetic radiation (e.g., visible light, infrared, ultraviolet light, radio frequency, etc.) from sunlight or one or more alternative light sources (e.g., light bulbs, flashlights, stroboscopic flashlights, etc.), magnetic fields (e.g., magnets), electrical energy, temperature, pH, oxygen levels or density, other chemicals (e.g., chemical sensors that can be communicatively linked to the reconfigurable visual code), touch and / or pressure, vibration (e.g., vibration frequency), audio, wind, motion (e.g., detected by gyroscopes and / or accelerometers that can be communicatively linked to the reconfigurable visual code), or geographic location (e.g., detected by a global positioning system (GPS) that can be communicatively linked to the reconfigurable visual code).
[0079] As used herein, the terms "augmented reality" and "AR" can refer to a physical, real-world object and / or environment that is enhanced or supplemented by computer-generated or digital information such as video, sound, and / or graphics. The digital information can be registered directly with the user's physical, real-world environment so that the user can interact with the digital information in real time. The digital information can take the form of images, sound, haptic feedback, video, text, etc. For example, a two- or three-dimensional representation of a digital object can be overlaid in real time on a user's view of a real-world environment.
[0080] As used herein, the terms "virtual reality" and "VR" can refer to a simulation of a user's presence in a real or imagined environment so that the user can interact with it.
[0081] In some cases, the revealing mechanism of the hidden visual code can be augmented reality. In such cases, a first portion of the visual code (e.g., a bar code, a QR code, etc.) can be a physical visual code, and a second portion of the visual code can be a virtual visual code. The physical visual code can be in a physical environment or space. The first and second portions of the visual code can be combined together in an augmented reality space to produce a functional visual code. The physical visual code can be arranged on or next to a physical object. The virtual visual code can be presented on a graphical user interface (GUI) of a user's device (e.g., an authorized scanner, a tablet display device, or a mobile device). The graphical user interface (GUI) can be displayed on a screen (e.g., a black and white or color screen) of the device.
[0082] In some cases, a device can scan a user's fingerprint or retina and confirm the user's identity, thereby activating a graphical user interface (GUI) of the device and / or authorizing the user to reveal a covert visual code using the graphical user interface (GUI). Additionally, the device can include a sensor (e.g., a camera disposed on an opposite side from the graphical user interface (GUI)) that can be operatively linked with the graphical user interface (GUI). With the graphical user interface (GUI) activated and / or the user authorized, the user can use the sensor (e.g., camera) of the device to: (1) capture images and / or video of the physical visual code and display the captured images and / or video on the graphical user interface (GUI) of the device, and / or (2) view the physical visual code in real-time through the graphical user interface (GUI) of the device. Subsequently, an augmented reality software in operative communication with the graphical user interface (GUI) can render a virtual visual code on the graphical user interface (GUI) and reconstruct / combine the physical visual code with the virtual visual code into a functional visual code. The augmented reality software can be configured to read the reconstructed functional visual code internally on the graphical user interface (GUI). Alternatively or additionally, the user can use a different device (e.g., a visual code scanner) to read the reconstructed functional visual code.
[0083] In some cases, temperature can be a revealing mechanism for a covert visual code. The covert visual code can be revealed upon detecting a change in temperature (e.g., an increase and / or decrease in ambient temperature). The covert visual code can be revealed upon reaching a predetermined temperature (e.g., an ambient temperature above or below a temperature). In some cases, the change in temperature can be induced by a user, for example, by directing a hot and / or cold fan towards the covert code. The temperature or change in temperature can be measured by a sensor (e.g., a temperature sensor or a piezoelectric sensor) that can be in operative communication with the reconstructable visual code. Alternatively or additionally, the material of the covert visual code (e.g., a temperature-responsive polymer or the like) can be capable of detecting the temperature or change in temperature.
[0084] Temperature-responsive polymers can include, but are not limited to: poly(N- isopropylacrylamide) (poly(NIPAM)); poly(N-isopropylacrylamide) (poly(NIPAM)) with one or more of the following polymers: e.g., polyacrylic acid, poly(dimethylaminopropylacryl-amide), poly(diallyldimethylammonium chloride) (DADMAC); polyethylene oxide; poly propylene oxide; methylcellulose; ethyl hydroxyethyl cellulose; carboxymethyl cellulose; hydrophobically modified ethyl hydroxyethl cellulose; poly dimethylacrylamide / N-4-phenylazophenylacrylamide (DMAAm) and polydimethylacrylamide / 4-phenylazophenylacrylate (DMAA), gelatine, agarose, amylase, agar, pectin, carragenan, xanthan gum, guar gum, locust bean gum, hyaluronate, dextran, starches, alginic acid, functional variants thereof, and combinations thereof.
[0085] In some cases, the revealing mechanism of the hidden visual code can be pH. (For example, the pH of the environment, or the pH of another object functionally linked to the visual code.) The pH or change in pH can be measured by a pH sensor communicably linked to the reconfigurable visual code. Alternatively or additionally, the material of the hidden visual code (e.g., a polymer responsive to pH) can detect the pH or change in pH.
[0086] Examples of pH sensitive polymers can include, but are not limited to, poly(L- histidine-co-phenylalanine)-poly(ethylene glycol) block copolymer, poly(L-lactic acid)- poly(ethylene glycol) block copolymer, poly(acrylic acid) polymers, poly(ethyl acrylic acid), poly(propylacrylic acid), poly(butyl acrylic acid), functional variants thereof, and combinations thereof. Other pH sensitive polymers include polyelectrolytes with a large number of ionizable groups, such as poly(sulfonic acid) polymers and derivatives thereof, hyaluronic acid, poly(vinylamine), poly(N-isopropylacrylamide), functional variants thereof, and combinations thereof.
[0087] In some cases, the revealing mechanism of the hidden visual code can be electrical energy. Electrical energy (e.g., from a battery operably linked to the reconfigurable visual code) can be directed to the hidden visual code, thereby revealing the visual code and reconfiguring the visual code. In some cases, the hidden visual code can be composed of a material sensitive to electrical energy (e.g., electrically sensitive, electrically responsive, electrically adaptive, etc.). The electrically sensitive material can include a piezoelectric material. The piezoelectric material can exhibit a converse piezoelectric effect, in which the application of an electric field or electrical energy produces a morphological change (e.g., material deformation) in the piezoelectric material such that the hidden visual code is converted to the revealed visual code.
[0088] The piezoelectric material can include a piezoelectric polymer. Examples of piezoelectric polymers can include polyvinylidene fluoride, a copolymer of vinylidene fluoride and trifluoroethylene, a copolymer of vinylidene fluoride and trifluoroethylene, a vinylidene cyanide-vinyl acetate copolymer, polylactic acid, and functional variants of these and combinations thereof.
[0089] The divided visual code can be reconstructed to produce a one-dimensional (ID), two-dimensional (2D), or three-dimensional (3D) visual code.
[0090] The divided visual code can be reconstructed to produce one or more images (e.g., the same image or different images) of one or more objects (e.g., the same object or different objects). The images can include photographic images and / or stereoscopic visual images. Photographic images can be images that do not provide a perception of depth (e.g., one-dimensional (ID) or two-dimensional (2D) images). Stereoscopic visual images (e.g., stereoscopic pair images) can include at least two images (e.g., a "left eye" image intended for a viewer's left eye and a "right eye" image intended for a viewer's right eye) that provide a perception of depth. Viewing of the images by a viewer's left and right eyes processes the images of the left and right eyes into a unique visual code. In one example, the images of the left and right eyes can be different lobes of the divided visual code, and reconstruction from the overlap of at least a portion of each of the left and right eyes can provide a readable stereoscopic visual image. The images of the visual code can be symbols (e.g., mathematical symbols).
[0091] The divided visual code can include one or more text codes, which can include numbers and characters. The characters can include one or more letters from the following languages: Afrikaans, Albanian, Amharic, Arabic, Armenian, Assamese, Assyrian, Avar, Azerbaijani, Balinese, Bamara Bantu, Bashkir, Basque, Bengali Birhari, Bulgarian, Buluba-Lulua, Burmese, Buryat, Byelorussian, Caddoan, Cantonese, Catalan, Chechen, Chikaranga, Chippewa, Choctaw, Church Slavik, Chuvash, Coptic, Cree, Croatian, Cyrillic, Czech, Dakota, Danish, Dari, Devanagari, Dutch, Dzongkha, English, Eskimo, Esperanto, Estonian, Ewe, Farsi, Fijian, Filipino, Finnish, Flemish, French, Fulani, Gaelic, Galician, Gcorgian, German, Greek, Gujarati, Gurmakhi, Harari, Hausa, Hawaiian, Hebrew, Hindi, Hiragana, Ibo, Icelandic,Indonesian, Irish, Irogquoian, Italian, Japanese, Kabardian, Kalmyk, Kannada, Kanuri, Kashmiri, Katakana, Kazakh, Khasi, Khmer, Kirghiz, Kishmiri, Komi, Kongo, Korean, Kurdish, Lao, Latin, Latvian, Lithuanian, Lu-Guanda, Macedonian, Magahi Maithili, Makua, Malagasy, Malay, Malayalam, Maltese, Mandarin, Mandingo, Manipuri, Marathi, Masai, Mizo, Moldavian, Mongolian, Munda, Naga, Navaho, Nyanja, Nepalese, Norwegian, Oriya, Oromo, Ossetian, Pashto, Polish, Portugese, Punjabi, Rajasthani, Rhaeto-Romanic, Rumanian, Russian, Samoan, Sangs, Serbian, Serbo-Croatian, Sinhalese, Sinhi, Sioux, Slovak, Slovenia, Spanish, Sundanese, Swahili, Swedish, Syriac, Tamil, Telugu, Thai, Tibetan, Tigrinya, Tonga, Turkish, Turkmen, Ukrainian, Urdu, Uyghur, Uzbek, Vietnamese, Welsh, Xhosa, Yiddish, Yoruba, ZuluSwedish, Syriac, Tadzhik, Tagalog, Tajik, Tamil, Tatar, Telugu, Thai, Tibetan, Turkish, Turknen, Udmurt, Uighur, Ukranian, Umbundu, Urdu, Uzbek, Vietnamese, Visayan, Welsh, Yakut, Yoruba, and combinations thereof.
[0092] In some cases, the textual code can include a "Completely Automated Public Turing test to tell Computer and Human Apart (CAPTCHA)" code (e.g., reCAPTCHA) that cannot be read by a visual scanning device. Such a reconfigurable visual code containing a CAPTCHA code can be read (scanned) by a user or recorded by a user (e.g., on a computer) in cases where it cannot be read by a visual scanning device. In some cases, the textual code contains code that is not a CAPTCHA and can be read by a visual scanning device.
[0093] As described elsewhere in this application, the images and text of the divided visual codes can be monochromatic, polychromatic (e.g., visible and / or infrared spectrum), and / or metameric. As described elsewhere in this application, the images and text of the divided visual codes can be static (e.g., one or more images) or dynamic (e.g., one or more videos). The movement and / or adjustment of two or more of the lobes of the divided visual code can result in two or more integrated visual codes that can be read and distinguished by a visual scanning system.
[0094] The reconstructed visual code can emit vibrations or sounds that can be picked up by a microphone or any type of acoustic sensor. Such vibrations or sounds of the reconstructed visual code can be different from the vibrations or sounds of the divided visual code. In some cases, the reconstructed visual code can emit vibrations or sounds for a determined duration of time when it is reconstructed (e.g., at least 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 60 minutes or more, at most 60, 30, 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 minute or less). Such time-controlled vibrations or sounds can become a notification for a user (e.g., a nurse or a hospital) to read the reconstructed visual code for a determined duration of time. Such time-controlled vibrations or sounds can stop after the determined duration of time has elapsed. In some cases, each part of the divided visual code emits vibrations or sounds, and the reconstruction of such divided visual code can result in a new vibration or sound characteristic of the reconstructed visual code. The reconstructed visual code can be characterized by the frequency, intensity, harmonic components, range, and pattern of sounds it emits that can be detected. The vibrations and / or sounds of the reconstructed visual code can or can not be distinguishable by human ears and / or touch. In some cases, the visual code can emit wireless signals, such as video signals, Bluetooth signals, Wifi signals, or any other type of signals.
[0095] The reconstructed visual code can be associated with one or more driving components. In some cases, the reconstructed visual code can be added to one or more moving components of an article carrying the visual code (or marked by it). The moving components (e.g., leaflets) can be operatively associated with the driving components. One or more gaps between (or among) the segments of the reconstructable visual code can be adjusted to reconstruct or disassemble the reconstructable visual code.
[0096] At least one moving component carrying a segment of the reconstructable visual code can be movable. In some cases, (i) a first leaflet of an article carrying a first segment of the reconstructable visual code and / or (ii) a second leaflet of an article carrying a second segment of the reconstructable visual code can be moved relative to each other to be reconstructed (overlapped or not) to produce at least a portion of the reconstructed visual code. The moving components can be the first leaflet, the second leaflet, or both, as the movement is a relative movement. Such configuration can be used for other reconstructable visual codes provided by the present invention.
[0097] The drive component can include one or more elastic components that drive and / or close the gap between segments of the reconfigurable visual code. Non-limiting examples of elastic components include various suitable elastic types, such as, for example, nested compression springs, clasp posts, conical springs, variable force springs, clasp rings, dual torsion springs, wire forms, range limited springs, band springs, etc. Alternatively or additionally, the drive component (e.g., spring component) can be constructed of any of a variety of metals, plastics, or composite materials. In some cases, the elastic component can include a deployment spring and / or a retraction spring that guide the relative motion of the segments of the reconfigurable visual code.
[0098] The drive component can include mechanical and / or electromechanical components that are capable of being controlled by one or more drives to move in the direction of one or more axes (e.g., in one or more planes of the XYZ plane). Non-limiting examples of drive components include magnets, electromagnets, pneumatic drives, hydraulic drives, electric motors (e.g., brushless electric motors, direct current (DC) brush electric motors, rotary electric motors, servo electric motors, direct current driven rotary electric motors, direct current torque motors, linear solenoid stepper motors, rod electric motors (e.g., hollow rod electric motors), ultrasonic electric motors, geared electric motors, reduction electric motors, or back-pack shipping motor combinations), gears, cams, linear drives, belts, pulleys, and conveyors, etc. Another non-limiting example of a drive component includes a heating and / or cooling component (e.g., a wire component) that emits radiation (e.g., infrared radiation) that can be read by a sensor (e.g., an infrared sensor). In such cases, the heating and / or cooling component can be operatively linked with a temperature controller that regulates the temperature of the heating and / or cooling component, thereby controlling the reconfigurable visual code.
[0099] One or more drives of the moving component that carries the segments of the reconfigurable visual code can be operatively connected with a controller (e.g., a computer). The controller can direct the motion of the moving component relative to one another to produce at least a portion of the reconfigured visual code.
[0100] The drive mechanism of the one or more drive components can be reversible or irreversible. Alternatively or additionally, the reconfigured visual code can be irreversible (e.g., once the gap carrying the reconfigurable visual code is closed) by activating a locking mechanism that prevents the one or more segments of the reconfigurable visual code from moving again once the reconfigured visual code is produced.
[0101] Reconfiguration of the reconfigurable visual code can be triggered by an activation component. Operation of one or more drive components that cause reconfiguration of the reconfigurable visual code can be triggered by the activation component. The activation component can be automatic and / or manual. In some cases, the article carrying the reconfigurable visual code can include a mechanical switch (e.g., a button) operatively linked with the one or more drive components, and a user of the article can be required to manipulate (e.g., push, pull, press, rotate, etc.) the switch to activate the activation component. Alternatively or additionally, the article carrying the reconfigurable visual code can include a time-dependent switch (e.g., a timer) operatively linked with the drive components, which can activate the activation component at a predetermined time without any user input. In some cases, the activation component can include both automatic and manual components. In one example, a switch that activates the one or more drive components can only be functional within a predetermined time frame, and thus, the reconfigurable visual code can be reconfigured within the predetermined time frame.
[0102] The reconfigurable visual code can be permanent or temporary in its existence. In some cases, the reconfigurable visual code can be operatively linked with a concealment mechanism configured to automatically (e.g., at a predetermined time) and / or manually (e.g., by user input) conceal (e.g., mask, cover, make disappear) the reconfigured visual code.
[0103] Any visual code can be reconfigured using any of the features or embodiments provided herein.
[0104] The terms "reader," "sensor," and "scanner," which can be used interchangeably herein, refer to a visual scanning system configured to read visual codes (e.g., reconfigurable and reconfigured digital codes). The visual scanning system can be configured to read visual codes at a reasonable distance from the visual codes. A user can utilize the visual scanning system to obtain an image or video of a reconfigurable visual code, configure the visual scanning system to transmit the image or video data to an optical character recognition (OCR) engine for processing to extract relevant information from the image and video data. The visual scanning system can include one or more visual scanning devices (e.g., at least 1, 2, 3, 4, 5, or more visual scanning devices, or at most 5, 4, 3, 2, 1 visual scanning devices) configured to read visual codes. The visual scanning system can be configured to read visual codes in partitioned non-reconfigurable form and / or integrated reconfigured form. The visual scanning system can be used to read one-dimensional (ID) visual codes (e.g., barcodes), two-dimensional (2D) visual codes (e.g., QR codes), and / or three-dimensional (3D) visual codes (e.g., patterns with perception of depth). Examples of visual scanning devices include detectors, visual systems, computer vision, machine vision, imaging devices, cameras, binocular cameras, digital cameras, electromagnetic radiation sensors (e.g., infrared sensors, ultraviolet sensors, color sensors, etc.), proximity sensors, densitometers (e.g., optical densitometers), composition analyzers, spectroscopic instruments, motion sensors, magnetic field sensors (e.g., microelectromechanical systems), and electric field sensors, etc.
[0105] A visual scanning device can be implemented as a stand-alone system that does not need to be provided on another device, e.g., a user device (e.g., a desktop computer, a mobile phone, a smart phone, a smart watch, smart glasses, etc.). In some cases, the stand-alone visual scanning system can be a customized visual scanning system that is specifically designed for scanning the reconstructed visual code. The customized visual scanning system can be sold to end users of the reconstructed visual code and / or licensed to one or more original equipment manufacturers (OEMs). Alternatively or additionally, the customized visual scanning system can be an accessory (e.g., a hardware and / or software accessory) to a user device. The reconstructed visual code can not be read, captured, and / or processed without such an accessory. In some cases, the hardware accessory can be operatively coupled to the user device via a wireless signal (e.g., Bluetooth, Wifi, etc.) or a cable connection (e.g., USB 2.0, USC-C, micro-USB, etc.). In some cases, the hardware accessory can be an optical device (e.g., a lens) that is coupled to or adjacent to one or more cameras on the user device. In some cases, the software accessory (e.g., a download) can be provided and operatively coupled to the user device (e.g., one or more cameras of the user device). In another alternative, or additionally, the visual scanning system can be provided on the user device (e.g., the user device can have an operable camera that is the visual scanning system). In some cases, the visual scanning system can utilize one or more cameras on the user device. The visual scanning system can be implemented using the off-the-shelf one or more cameras without requiring any modification to the one or more cameras.
[0106] In some cases, a user can register with a control entity by providing a visual code to the control entity. The user can enter the visual code into an application of a visual scanning system configured to transmit the code to the control entity, an application of a user device, and / or a web-based application. For example, the user can use the visual scanning system or a built-in sensor (e.g., a built-in camera) on the user device to enter the visual code by capturing or scanning the visual code. The application of the visual scanning system, the application of the user device, and / or the web-based application can decrypt the visual code and transmit the code to a server (e.g., operated by the control entity). In some cases, the application of the visual scanning system, the application of the user device, and / or the web-based application can transmit the visual code to the server in the original format for decoding / decryption.
[0107] One or more visual scanning devices provided herein can be used as image capture and / or scanning devices. The one or more visual scanning devices can be physical imaging devices. The one or more visual scanning devices can be configured to detect electromagnetic radiation (e.g., visible, infrared, ultraviolet light) and generate image data based on the detected electromagnetic radiation. The one or more visual scanning devices can include charge-coupled device (CCD) sensors or complementary metal-oxide-semiconductor (CMOS) sensors that generate electrical signals in response to wavelengths of light. The resulting electrical signals can be processed to generate image data. The image data generated by the one or more visual scanning devices can include one or more images, which can be still images (e.g., visual codes, photographs, etc.), dynamic images (e.g., videos), or a combination of still images and dynamic images. The image data can be multi-colored (e.g., RGB, CMYK, HSV) or monochromatic (e.g., grayscale, black and white, or sepia). The imaging devices can include lenses configured to direct light toward the one or more visual scanning devices.
[0108] The one or more visual scanning devices can be cameras. The cameras can be movie or video cameras that capture dynamic image data (e.g., videos). The cameras can be still cameras that capture still image data (e.g., photographs). Examples of still images can include characters, numbers, icons, shapes, symbols, pictures, one-dimensional, two-dimensional, or three-dimensional barcodes, quick response (QR) codes, or other types of images. The cameras can capture both still images and dynamic images. The cameras can switch between capturing dynamic image data and still images. While some embodiments provided herein are provided in the context of cameras, it is understood that the present application can be applied to any suitable one or more visual scanning devices, and the descriptions herein relating to cameras are equally applicable to any suitable one or more visual scanning devices. A two-dimensional image of a three-dimensional code can be generated with a camera. The image generated with the camera can represent a projection of the three-dimensional code onto a two-dimensional image plane. Thus, each point in the two-dimensional image can correspond to a three-dimensional spatial coordinate of the three-dimensional code. The camera can include optical components (e.g., lenses, mirrors, and filters, etc.). The camera can capture color images, grayscale images, and infrared images, etc. The camera can be one or more thermal imaging scanning devices when configured to capture infrared images.
[0109] The one or more visual scanning devices can capture images or image sequences at a given image resolution. In some cases, the image resolution can be defined in terms of the number of pixels in an image. In some embodiments, the image resolution can be greater than or equal to about 352x420 pixels, 480x430 pixels, 720x480 pixels, 1280x720 pixels, 1440x1080 pixels, 1920x1080 pixels, 2048x1080 pixels, 3840x2160 pixels, 4096x2160 pixels, 7680x4320 pixels, 15360x8640 pixels. In some cases, the one or more visual scanning devices can be a 4k camera or a camera with a lower or higher resolution.
[0110] The one or more visual scanning devices can capture image sequences at a given capture rate. In some cases, the image sequences can be captured at a standard video frame rate of, for example, about 24 images per second ("p", or the number of full images per second), 25p, 30p, 48p, 50p, 60p, 72p, 90p, 100p, 120p, 300p, 50 interlaced ("i", or fields per second), or 60i. In some cases, the rate at which the image sequences are captured can be less than or equal to about one image per 0.0001 seconds, one image per 0.0002 seconds, one image per 0.0005 seconds, one image per 0.001 seconds, one image per 0.002 seconds, one image per 0.005 seconds, one image per 0.01 seconds, one image per 0.02 seconds, one image per 0.05 seconds, one image per 0.1 seconds, one image per 0.2 seconds, one image per 0.5 seconds, one image per 1 second, one image per 2 seconds, one image per 5 seconds, or one image per 10 seconds. In some cases, the capture rate can vary depending on user input and / or the target application.
[0111] In some cases, the one or more visual scanning devices can be a high-speed camera, which can have a higher sampling frequency. In some cases, the high-speed camera of the one or more visual scanning systems can capture reconstructed visual codes that update or change at a frequency higher than the maximum frame rate that can be resolved by the human eye.
[0112] The one or more visual scanning devices can have adjustable parameters. Different parameters can be selected to cause the one or more visual scanning devices to capture different images and / or videos under the same external conditions (e.g., location, light). The adjustable parameters can include exposure conditions (e.g., exposure time, shutter speed, aperture, film speed), gain, range, region of interest, binning / sub-sampling, pixel clock, bias, trigger, ISO, etc. Exposure-related parameters can control the amount of light that reaches the image sensors in the one or more visual scanning devices. For example, shutter speed can control the amount of time light reaches the one or more image sensors, aperture can control the amount of light that reaches the one or more image sensors over a given time range. Gain-related parameters can control the amplification of the signals from the optical sensors. In some cases, ISO can control the level of sensitivity of the camera to available light.
[0113] In some cases, the one or more visual scanning devices can extend beyond the physical scanning device. For example, the one or more visual scanning devices can include technology capable of capturing and / or producing an image or video frame of a code. In some cases, the one or more visual scanning devices can refer to an algorithm capable of processing an image obtained from another physical device.
[0114] The one or more visual scanning systems can detect multiple layers in a visual image (in a reconstructed visual image). In some cases, the reconstructed visual image can contain an overlap of two or more layers of the divided visual image, and the one or more visual scanning systems can distinguish, resolve, and recognize each layer of the overlap. In some examples, the reconstructed visual image can contain an overlap of three layers of the divided visual image, and the real visual code can be a combination of two of the three layers. In such cases, the one or more visual scanning systems can recognize the real visual code after scanning the reconstructed visual image of the overlap of the three layers.
[0115] One or more visual scanning systems can be operatively connected with a controller capable of using artificial intelligence techniques (e.g., one or more machine learning algorithms) to analyze a database containing (i) visual codes before each visual code is divided, (ii) visual codes in divided, non-reconstructed form, and (iii) visual codes in integrated, reconstructed form. The one or more machine learning algorithms of the artificial intelligence techniques can analyze captured images and videos of reconstructed visual codes. The one or more machine learning algorithms of the artificial intelligence techniques can distinguish and recognize reconstructed visual codes from their corresponding non-reconstructed visual codes. In the event that the physical reconstruction of a visual code is incomplete, the one or more machine learning algorithms of the artificial intelligence techniques can further reconstruct images and / or videos of visual codes in integrated, reconstructed form.
[0116] In some cases, the unique pattern of a reconstructable visual code can have a wide range of tolerance. The reconstructable visual code can have a predetermined range of alignment threshold. Upon completion of the reconstruction of a visual code, the variable alignment configuration of the segments of the reconstructable visual code can be accepted and detected by one or more visual scanning systems as long as the variable alignment configuration is within the predetermined range of alignment threshold. Such a predetermined alignment threshold can be defined by the distance between two or more segments of the visual code, the total area of the reconstructed visual code, the degree of overlap of two or more segments of the visual code, etc.
[0117] The reconstructable visual codes provided herein can be used in various practical application scenarios, such as identity verification, tracking (e.g., monitoring and / or logistics), accountability, security (e.g., lock-and-key mechanism), authentication, transaction, and / or delivery of one or more items (people or items). Examples of such items include computer data containing information, objects (e.g., documents, mail packages, food and medicine, etc.), animals (e.g., wild or domesticated animals), and individuals (e.g., event participants, hospital patients, etc.), etc. In some cases, two or more items (e.g., two or more pieces of luggage) can each contain at least one segment of a divided visual code, and the corresponding reconstructed visual code can be scanned to confirm the correct pairing of the two or more items. In the industry, for example, the medical industry (e.g., patient care, medicine dispensing and / or management, etc.), logistics (involving operations of personnel, suppliers, and / or facilities), supply chain, mailing, disposal (e.g., disposal of controlled medicine and / or toxic waste), retail, banking, finance, or a combination of these businesses can benefit from the use of reconstructable visual codes.
[0118] For example, in the medical industry, reconfigurable visual codes can be used to track two or more patients. In one example, each of the two or more patients has a tag, where each tag carries at least one portion of a divided visual code. The individual tags of the two or more patients can be merged together, can overlap, or can not overlap, and one or more visual scanning systems can be used to track the population of two or more patients. In one example, the population of two or more patients can be a mother and a newborn after delivery, or a bone marrow recipient and a donor.
[0119] The type of transaction that can be authenticated, for example, includes a medical pick-up or delivery (e.g., completed at a pharmacy by a user of the medical or an agent of the user), a web-based financial transaction, a point-of-sale financial transaction, a transaction for security, or a transaction for identity verification. The device can be configured to display a visual code (e.g., a QR code) to the user. The device can be a computer (e.g., a tablet computer, a desktop computer), a mobile device (e.g., a smart phone, a tablet device, a pager, and a personal digital assistant (PDA), etc.), a vending machine, etc., which requires the user to perform authentication and verification for a session or a transaction displayed by the device in order to complete a transaction running on a server.
[0120] FIGS. 1A-1C One example of a device 100 including a reconfigurable visual code 110 having multiple segments is schematically illustrated. Referring to FIG. 1A The reconfigurable visual code 110 of the device 100 is divided into two segments: a first segment 110-1 and a second segment 110-2. The first segment 110-1 can be added (e.g., printed, machined, adhered) to an entire surface of a first lobe of the device 100. The second segment 110-2 can be added to an entire surface of a second lobe of the device 100. The device 100 can also include a cover 102 having an opening 104. The first segment 110-1 and / or the second segment 110-2 of the reconfigurable visual code 110 can be hidden (or covered) by a portion of the cover 102 that is not the opening 104 prior to reconfiguration of the reconfigurable visual code 110. Thus, a visual scanning system (e.g., a sensor) can not be able to detect the visual code 110 encoded by the reconfigurable visual code 110. One or both of the first segment 110-1 and the second segment 110-2 can be operably linked to one or more actuation components (e.g., springs or motors) configured to bring the two segments 110-1 and 110-2 together. The first lobe and / or the second lobe of the device 100 can be movable relative to each other (and / or relative to the opening 104). Such movement of the lobes can be lateral and / or rotational relative to a center of the opening 103. Referring to FIG. 1BThe gap between the two segments 110-1 and 110-2 can be reduced during reconfiguration of the reconfigurable visual code 110 (e.g., with one or more actuation components), thereby exposing at least a portion of the first segment 110-1 and / or the second segment 110-2 through the opening 104 of the cover 102. Referring to FIG. 1C The gap between the two segments 110-1 and 110-2 can be completely or substantially closed such that the reconfigurable visual code 110 can be reconfigured to reveal the encoded visual code 110 that can be detected by a visual scanning system.
[0121] The reconfigurable visual code 110 of the device 100 can be divided into at least about 2, 3, 4, 5, 6, 7, 8, 9, 10 or more segments. The reconfigurable visual code 110 of the device 100 can be divided into at most about 10, 9, 8, 7, 6, 5, 4, 3, 2 segments. Each segment of the reconfigurable visual code 110 can cover at least about 1%, 5%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90%, or 100% of the surface of the leaflet. Each segment of the reconfigurable visual code 110 can cover at most about 100%, 95%, 90%, 80%, 70%, 60%, 50%, 40%, 30%, 20%, 10%, 5%, 1%, or less of the surface of the leaflet. The cover 102 can include at least about 1, 2, 3, 4, 5 or more openings configured to expose the visual code encoded by the reconfigurable visual code 110. The cover 102 can include at most about 5, 4, 3, 2, or 1 opening configured to expose the visual code encoded by the reconfigurable visual code 110. The opening 104 of the cover 102 can be at least about 1%, 5%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90%, or more of the area of the cover 102. The opening 104 of the cover 102 can be at most about 90%, 80%, 70%, 60%, 50%, 40%, 30%, 20%, 10%, 5%, 1%, or less of the area of the cover 102. The opening 104 can or can not have an additional cover that shields the opening 104 and / or exposes the opening 104, such that anything (e.g., the reconfigured visual code) that is revealed through the opening 104 of the cover 102 can be shielded and / or exposed. The reconfigurable visual code 110, when reconfigured, can or can not overlap each other. At least about 1%, 5%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90%, or more of the area of a first segment of the reconfigurable visual code 110 can overlap a second segment of the reconfigurable visual code 110. At most about 90%, 80%, 70%, 60%, 50%, 40%, 30%, 20%, 10%, 5%, 1%, or 0% of the area of a first segment of the reconfigurable visual code 110 can overlap a second segment of the reconfigurable visual code 110. In the absence of overlap, the sides (or edges) of the various segments of the reconfigurable visual code 110 can or can not touch. The opening 104 of the cover 102 can be hollow. Alternatively, the opening 104 of the cover 102 can be a transparent or translucent material, such that anything underneath the opening 104 is visible to the naked eye and / or can be detected by a visual scanning system.
[0122] One or more features or implementations of the device 100 provided herein including the reconfigurable visual code 110 can be utilized to produce implementations of additional devices (e.g., devices 200, 300, 400, etc.) provided elsewhere in the present application.
[0123] One or more features of the device provided in FIGS. 1A-14 including the reconfigurable visual code can be modified and / or combined to produce new reconfigurable codes.
[0124] FIGS. 2A-2C One example of a device 200 including a reconfigurable visual code 210 having multiple segments is schematically illustrated. Referring to FIG. 2A the reconfigurable visual code 210 of the device 200 is divided into two segments: a first segment 210-1 and a second segment 210-2. The first segment 210-1 can be added (e.g., printed, machined, adhered) to a portion of the surface of a first lobe of the device 200. The second segment 210-2 can be added to a portion of the surface of a second lobe of the device 200. The device 200 can also include a cover 202 having an opening 204. The first segment 210-1 and / or the second segment 210-2 of the reconfigurable visual code 210 can be hidden (or covered) by a portion of the cover 202 that is not the opening 204 prior to reconfiguration of the reconfigurable visual code 210. Thus, a visual scanning system (e.g., a sensor) can not be able to detect the encoded visual code 210 by the reconfigurable visual code 210. One or both of the first segment 210-1 and the second segment 210-2 can be operatively coupled to one or more actuation components (e.g., springs or motors) configured to bring the two segments 210-1 and 210-2 together. The first lobe and / or the second lobe can be movable relative to one another (and / or relative to the opening 204). Referring to FIG. 2B the gap between the two segments 210-1 and 210-2 can be reduced (e.g., using one or more actuation components) during reconfiguration of the reconfigurable visual code 210, thereby exposing at least a portion of the first segment 210-1 and / or the second segment 210-2 through the opening 204 of the cover 202. Referring to FIG. 2C the gap between the two segments 210-1 and 210-2 can be completely or substantially closed such that the reconfigurable visual code 210 can be reconfigured to reveal the encoded visual code 210 that is detectable by the visual scanning system.
[0125] FIG. 2D and FIG. 2E Another example of a device 200 including a reconfigurable visual code 210 having two segments is schematically illustrated. Referring to FIG. 2DThe visual code 210 encoded by the first segment 210-1 and the second segment 210-2 can be a matrix visual code, such as a QR code. The first segment 210-1 and the second segment 210-2 of the QR code can be outside of the visual range of the opening 204 through the cover 202 of the device 200. Referring to FIG. 2E The gap between the two segments 210-1 and 210-2 of the QR code can be fully or substantially closed, such that the reconfigurable visual code 210 can be reconfigured to reveal the encoded QR code 210 that can be detected by a visual scanning system, such as a camera of a personal device, such as a mobile device.
[0126] FIGS. 3A-3C An example of a device 300 including a reconfigurable visual code 310 having three segments is schematically illustrated. Referring to FIG. 3A The reconfigurable visual code 310 of the device 300 is divided into three segments: a first segment 310-1, a second segment 310-2, and a third segment 310-3. The first segment 310-1 can be added (e.g., printed, machined, adhered) to the entire surface of a first lobe of the device 300. The second segment 310-2 can be added to the entire surface of a second lobe of the device 300. The third segment 310-3 can be added to the entire surface of a third lobe of the device 300. The device 300 can also include a cover 302 having an opening 304. The first segment 310-1, the second segment 310-2, and / or the third segment 310-3 of the reconfigurable visual code 310 can be hidden (or covered) by portions of the cover 302 that are not the opening 304 prior to reconfiguration of the reconfigurable visual code 310. Thus, a visual scanning system (e.g., a sensor) can not be able to detect the visual code 310 encoded by the reconfigurable visual code 310. At least one of the first segment 310-1, the second segment 310-2, and the third segment 310-3 can be operatively coupled to one or more actuation components (e.g., springs or motors) configured to bring the three segments 310-1, 310-2, and 310-3 together. The first, second, and / or third lobes of the device 300 can be movable relative to each other (and / or relative to the opening 304). Referring to FIG. 3B The gap between the three segments 310-1, 310-2, and 310-3 can be reduced (e.g., using one or more actuation components) during reconfiguration of the reconfigurable visual code 310, thereby exposing at least a portion of the first segment 310-1, the second segment 310-2, and / or the third segment 310-3 through the opening 304 of the cover 302. Referring to FIG. 3CThe gap between the three segments 310-1, 310-2, and 310-3 can be completely or substantially closed so that the reconfigurable visual code 310 can be reconfigured to reveal the encoded visual code 310 that is detected by the visual scanning system.
[0127] FIGS. 4A-4C One example of a device 400 including a reconfigurable visual code 410 having three segments is schematically illustrated. Referring to FIG. 4A The reconfigurable visual code 410 of the device 400 is divided into three segments: a first segment 410-1, a second segment 410-2, and a third segment 410-3. The first segment 410-1 can be added (e.g., printed, machined, adhered) to a portion of a surface of a first lobe 406-1 of the device 400. The second segment 410-2 can be added to a portion of a surface of a second lobe 406-2 of the device 400. The third segment 410-3 can be added to a portion of a surface of a third lobe 406-3 of the device 400. The device 400 can also include a cover 402 having an opening 404. The first segment 410-1, the second segment 410-2, and / or the third segment 410-3 of the reconfigurable visual code 410 can be hidden (or covered) by a portion of the cover 402 that is not the opening 404 prior to reconfiguration of the reconfigurable visual code 410. Thus, a visual scanning system (e.g., a sensor) can not be able to detect the visual code 410 encoded by the reconfigurable visual code 410. At least one of the first segment 410-1, the second segment 410-2, and the third segment 410-3 can be operatively coupled to one or more actuation components (e.g., springs or motors) configured to bring the three segments 410-1, 410-2, and 410-3 together. The first lobe 406-1, the second lobe 406-2, and / or the third lobe 406-3 of the device 400 can be movable relative to one another (and / or relative to the opening 404). Referring to FIG. 4B The gap between the three segments 410-1, 410-2, and 410-3 can be reduced (e.g., using one or more actuation components) during reconfiguration of the reconfigurable visual code 410 to thereby expose at least a portion of the first segment 410-1, the second segment 410-2, and / or the third segment 410-3 through the opening 404 of the cover 402. Referring to FIG. 4C The gap between the three segments 410-1, 410-2, and 410-3 can be completely or substantially closed so that the reconfigurable visual code 410 can be reconfigured to reveal the encoded visual code 410 that is detected by the visual scanning system.
[0128] FIG. 4D and FIG. 4EAnother example of a device 400 including a reconfigurable matrix code 410 having multiple segments is schematically illustrated. Referring to FIG. 4D The reconfigurable visual code 410 encoded by the first segment 410-1, the second segment 410-2, and the third segment 410-3 can be a matrix visual code, such as a QR code. At least one of the first segment 410-1, the second segment 410-2, and the third segment 410-3 of the QR code can be outside of a visual range of the opening 404 through the cover 402 of the device 400. Referring to FIG. 4E The gap between the three segments 410-1, 410-2, and 410-3 of the QR code can be wholly or substantially closed so that the reconfigurable visual code 410 can be reconfigured to reveal the encoded QR code 410 that can be detected by a visual scanning system, such as a camera of a personal device, such as a mobile device.
[0129] FIGS. 5A-5C An example of a device 500 including a reconfigurable visual code 510 having multiple segments is schematically illustrated. Referring to FIG. 5A The reconfigurable visual code 510 of the device 500 is divided into four segments: a first segment 510-1, a second segment 510-2, a third segment 510-3, and a fourth segment 510-4. The first segment 510-1 can be added (e.g., printed, machined, adhered) to a portion of a surface of a first lobe of the device 500. The second segment 510-2 can be added to a portion of a surface of a second lobe of the device 500. The third segment 510-3 can be added to a portion of a surface of a third lobe of the device 500. The fourth segment 510-4 can be added to a portion of a surface of a fourth lobe of the device 500. The device 500 can also include a cover 502 having an opening 504. The first segment 510-1, the second segment 510-2, the third segment 510-3, and / or the fourth segment 510-4 of the reconfigurable visual code 510 can be hidden (or covered) by a portion of the cover 502 that is not the opening 504 prior to reconfiguration of the reconfigurable visual code 510. Thus, a visual scanning system (e.g., a sensor) can not be able to detect the visual code 510 encoded by the reconfigurable visual code 510. At least one of the first segment 510-1, the second segment 510-2, the third segment 510-3, and the fourth segment 510-4 can be operably coupled to one or more actuation components (e.g., springs or motors) configured to bring the four segments 510-1, 510-2, 510-3, and 510-4 together. The first lobe, the second lobe, the third lobe, and / or the fourth lobe of the device 500 can be movable relative to one another (and / or relative to the opening 504). Referring to FIG. 5BThe gap between the four segments 510-1, 510-2, 510-3, and 510-4 can be reduced during reconfiguration of the reconfigurable visual code 510 (e.g., with one or more actuation components), thereby exposing at least a portion of the first segment 510-1, the second segment 510-2, the third segment 510-3, and / or the fourth segment 510-4 through the opening 504 of the cover 502. Referring to FIG. 5C The gap between the four segments 510-1, 510-2, 510-3, and 510-4 can be completely or substantially closed such that the reconfigurable visual code 510 can be reconfigured to reveal the encoded visual code 510 detected by the visual scanning system.
[0130] FIGS. 6A-6C One example of a device 600 including a reconfigurable visual code 610 having a plurality of segments is schematically illustrated. Referring to FIG. 6A The reconfigurable visual code 510 of the device 600 is divided into six segments: a first segment 610-1, a second segment 610-2, a third segment 610-3, a fourth segment 610-4, a fifth segment 610-5, and a sixth segment 610-6. Each of the six segments 610-1, 610-2, 610-3, 610-4, 610-5, and 610-6 can be added (e.g., printed, machined, adhered) to a portion of the surface of a corresponding lobe of the device 600. The device 600 can also include a cover 602 having an opening 604. The first segment 610-1, the second segment 610-2, the third segment 610-3, the fourth segment 610-4, the fifth segment 610-5, and / or the sixth segment 610-6 of the reconfigurable visual code 610 can be hidden (or covered) by the portion of the cover 602 that is not the opening 604 prior to reconfiguration of the reconfigurable visual code 610. Thus, a visual scanning system (e.g., a sensor) can not be able to detect the visual code 610 encoded by the reconfigurable visual code 610. At least one of the first segment 610-1, the second segment 610-2, the third segment 610-3, the fourth segment 610-4, the fifth segment 610-5, and / or the sixth segment 610-6 can be operatively coupled with one or more actuation components (e.g., springs or motors) configured to bring the six segments 610-1, 610-2, 610-3, 610-4, 610-5, and 610-6 together. The first lobe, the second lobe, the third lobe, the fourth lobe, the fifth lobe, and / or the sixth lobe of the device 600 can be movable relative to one another (and / or relative to the opening 604). Referring to FIG. 6BThe gaps between the six segments 610-1, 610-2, 610-3, 610-4, 610-5, and 610-6 can be reduced during reconfiguration of the reconfigurable visual code 610 (e.g., with one or more actuation components), thereby exposing at least a portion of the first segment 610-1, the second segment 610-2, the third segment 610-3, the fourth segment 610-4, the fifth segment 610-5, and / or the sixth segment 610-6 through the opening 604 of the lid 602. See FIG. 6C The gaps between the six segments 610-1, 610-2, 610-3, 610-4, 610-5, and 610-6 can be completely or substantially closed, such that the reconfigurable visual code 610 can be reconfigured, thereby revealing the encoded visual code 610 detected by a visual scanning system.
[0131] FIGS. 7A-7C One example of an apparatus 300 including a reconfigurable visual code 310 having three segments 310-1, 310-2, and 310-3 is schematically illustrated. See FIG. 7A The three segments 310-1, 310-2, and 310-3 are each disposed adjacent to or on at least a portion of a surface of the three leaflets 306-1, 306-2, and 306-3, respectively. Each of the leaflets 306-1, 306-2, and 306-3 carrying each of the three segments 310-1, 310-2, and 310-3, respectively, can be moved relative to one another, relative to the opening 304 of the lid 302, and / or relative to the dish 305 of the apparatus 300. The dish 305 can have an opening (e.g., an annular opening) that is aligned with the opening 304 of the lid 302. Alternatively, in some cases, the dish 305 can be free of an opening that is aligned with the opening 304 of the lid 302. See FIG. 7B The gaps between the three segments 310-1, 310-2, and 310-3 can be reduced during reconfiguration of the reconfigurable visual code 310 (e.g., with one or more actuation components), thereby exposing at least a portion of the first segment 310-1, the second segment 310-2, and / or the third segment 310-3 through the opening 304 of the lid 302. See FIG. 7C The gaps between the three segments 310-1, 310-2, and 310-3 can be completely or substantially closed, such that the reconfigurable visual code 310 can be reconfigured, thereby revealing the encoded visual code 310 detected by a visual scanning system. The three segments 310-1, 310-2, and 310-3 can converge at the center of the opening 304 of the lid 302.
[0132] FIGS. 8A-8BOne example of a device 800 including a reconfigurable visual code having six segments is shown schematically. Referring to FIG. 8A The device 800 includes six leaflets 806, each of which carries six segments of a reconfigurable visual code. Prior to reconfiguration of the visual code, at least one of the six leaflets 806 is arranged (e.g., underneath the lid 800 of the device) such that at least one of the six segments of the reconfigurable visual code can be "hidden" and cannot be detected through the opening of the lid. The six leaflets 806 can be configured to rotate towards the center of the opening 804 such that, with reference to FIG. 8B The six leaflets can be aggregated together and the reconfigurable visual code can be reconfigured, thereby revealing the encoded visual code 810. The movement (e.g., rotation) of the leaflets of the device 800 required to reconfigure the visual code 810 can be similar to the iris diaphragm of the aperture of a camera.
[0133] FIG. 9 Top and side views of a device 900 including a reconfigurable visual code having three partially overlapping segments 910-1, 910-2 and 910-3 are shown schematically. At least one of the three segments 910-1, 910-2 and 910-3 can overlap one of the other remaining segments (e.g., segments 910-2 and 910-3) in the case that the visual code 910 is reconfigured. Referring to FIG. 9 One portion of the first segment 910-1 of the visual code can overlap one portion of the second segment 910-2 of the visual code. Additionally, one additional portion of the first segment 910-1 of the visual code can overlap one portion of the third segment 910-3 of the visual code. In some cases, the first segment 910-1 of the visual code can not be transparent or translucent. Additionally, the first leaflet carrying the first segment 910-1 can not be transparent or translucent. In such cases, the portions of the second and third segments 910-2 and 910-3 overlapping the first segment 910-1 can not be visible through the first segment 910-1. Thus, the unique pattern of the device 900 can be the combination of the exposed surfaces of the three segments 910-1, 910-2 and 910-3. Any portion of any of the three segments 910-1, 910-2 and 910-3 arranged underneath another segment can be excluded from the unique pattern of exposed surfaces.
[0134] Referring to FIG. 9In some cases, the first segment 910-1 of the visual code can be transparent or translucent. Additionally, the first petal carrying the first segment 910-1 can be transparent or translucent. As shown, through the first segment 910-1, portions of the second segment 910-2 and the third segment 910-3 overlapping the first segment 910-1 can be visible, such overlap of the segments 910-1, 910-2, and 910-3 can result in a unique pattern that can be detected by a visual scanning system.
[0135] FIG. 10 A top view and a side view of a device 1000 including a three-dimensional reconfigurable visual code having multiple segments are schematically illustrated. The reconfigurable visual code of the device 1000 can include two segments 1010-1 and 1010-2. One or both of the two segments 1010-1 and 1010-2 can have a three-dimensional pattern corresponding to the three-dimensional reconfigurable visual code. Thus, reconfiguration of the two segments can result in a unique three-dimensional pattern 1010 that can be detected by a visual scanning system. In some cases, the non-planar aspect of the three-dimensional pattern 1010 can provide an additional "dimension" or aspect of information detected by the visual scanning system.
[0136] Referring to FIG. 10 In some cases, the curved structure of the segments 1010-1 and 1010-2 can be respectively caused by the structural design of each petal carrying the segments, the non-planar aspect of the three-dimensional pattern 1010 can not provide an additional "dimension" or aspect of information detected by the visual scanning system. In such cases, in a particular example, the reconfigurable visual code can be used on a flat or non-flat surface without affecting the integrity of the visual code.
[0137] FIG. 11A A use of a visual scanning system 412 to detect a unique pattern of a reconfigurable visual code 410 is schematically illustrated. In some cases, multiple segments (e.g., three segments) of the visual code 410 can be combined to result in a unique pattern encoded by the reconfigurable visual code 410. The unique pattern can be a QR code, and the visual scanning system 412 can be a handheld QR reader / scanner.
[0138] FIG. 11B A use of a personal device 414 to detect a unique pattern of a reconfigurable visual code 410 is schematically illustrated. In some cases, multiple segments (e.g., three segments) of the visual code 410 can be combined to result in a unique pattern encoded by the reconfigurable visual code 410. The unique pattern can be a QR code, and the personal device 414 can be used to detect the QR code using one or more cameras of the personal device 414. The detected QR code can be visualized in real-time using a screen or a user interface of the personal device 414.
[0139] FIG. 12A and FIG. 12B An illustrative diagram showing a unique pattern of a reconfigurable visual code 1210 detected using multiple devices 1210 with visual scanning systems 412. The reconfigurable visual code 1210 can be divided and added to at least 2, 3, 4, 5, 6, 7, 8, 9, 10, or more devices (e.g., at least 2, 3, 4, 5, 6, 7, 8, 9, 10, or more segments of the reconfigurable visual code 1210, respectively). The reconfigurable visual code 1210 can be divided and added to at most 10, 9, 8, 7, 6, 5, 4, 3, 2 devices (e.g., at most 10, 9, 8, 7, 6, 5, 4, 3, 2 segments of the reconfigurable visual code 1210, respectively). Referring to FIG. 12A The reconfigurable visual code 1210 can be divided into a first segment 1210-1 and a second segment 1210-2. The first segment 1210-1 can be added to a surface of a first device 1208-1 and the second segment 1210-2 can be added to a surface of a second device 1208-2. Referring to FIG. 12B Aggregating the two devices 1208-1 and 1208-2 together can effectively reconfigure the visual code 1210. Such a unique pattern can be detected by a visual scanning system 412 (e.g., a handheld QR reader / scanner). Such a reconfigurable visual code can provide one or more benefits, for example, two or more items (e.g., luggage, constituent parts in a large system) can be identified and tracked among a plurality of different items.
[0140] FIGS. 15A-15HA hidden visual code that can be revealed by an augmented reality presentation is shown schematically. The visual code can be broken into a first portion 1510-1 and a second portion 1510-2. The first portion 1510-1 and the second portion 1510-2 can be reconstructed or combined (e.g., by computer software) in the space of the augmented reality to produce a functional visual code 1510. The first portion 1510-1 of the visual code can be a physical visual code that is disposed on or adjacent to a physical object. The second portion 1510-2 of the visual code can be a virtual visual code (e.g., a virtual visual code in the space of the augmented reality). The virtual visual code 1510-2 can be displayed on a graphical user interface (GUI) 1504 of a user's device (e.g., an authorized scanner, tablet, or mobile device). The graphical user interface (GUI) 1504 can be displayed on a display screen (e.g., a black and white display screen or a color display screen) of the device 1502. Additionally, the device 1502 can include a camera 1056 (e.g., a camera disposed opposite a display that displays the graphical user interface (GUI) 1504), can be operatively coupled with the camera to the device 1502, and can configure the graphical user interface (GUI) 1504 to reconstruct the two portions of the visual code 1510-1 and 1510-2.
[0141] In some cases, the visual code 1510-2 can be displayed to the user by the graphical user interface (GUI) 1504 before, during, or after acquisition of the visual code 1510-1. In some cases, the user can need to activate the graphical user interface (GUI) 1504 and / or be authorized to use the device 1502 (e.g., by fingerprint and / or retinal scan).
[0142] Referring to FIG. 15A The visual code 1510-2 can initially be hidden or invisible. Referring to FIG. 15B The device 1502 can need to be brought within a range (e.g., within a given distance, height, and / or angle) of the physical visual code 1510-1 (indicated by arrow 1515) to initiate reconstruction of the visual code 1510. Referring to FIG. 15C The virtualized visual code 1510-2 can be revealed by the graphical user interface (GUI) 1504 when the user (e.g., by an authorized user) brings the device 1502 within the vicinity of the physical visual code 1510-1. In some cases, the distance between the device and the physical visual code 1510-1 can be determined by the camera 1506 and / or one or more additional sensors.
[0143] Referring to FIG. 15DOnce the virtualized visual code 1510-2 is presented on the graphical user interface (GUI) 1504, the user can use the camera to capture an image and / or video of the physical visual code 1510-1 and display the captured image and / or video of the physical visual code 1510-1 on the graphical user interface (GUI) 1504 of the device 1502. Once the image and / or video of the physical visual code 1510-1 is captured and displayed by the augmented reality controller (e.g., software), the image and / or video of the physical visual code 1510-1 can be combined with the virtualized visual code 1510-2 in the augmented reality space (as represented by arrow 1520), thereby reconstructing the visual code. Referring to FIG. 15E The graphical user interface (GUI) 1504 presents the reconstructed form of the functional visual code 1510.
[0144] FIGS. 15F-15H Another concealed visual code that can be presented by augmented reality is schematically illustrated. Referring to FIG. 15F As described above, the visual code 1510 can be decomposed into the physical visual code 1510-1 (first portion of the visual code) and the virtualized visual code 1510-2 (second portion of the visual code). Referring to FIG. 15G With the graphical user interface (GUI) 1504 of the device 1502 activated and / or the user authorized to use the device 1502 (e.g., by fingerprint and retina screening), the user can move the device 1502 towards the physical visual code 1510-1 (as represented by arrow 1525) while viewing the physical visual code 1510-1 in real-time through the graphical user interface (GUI) 1504 of the device 1502 using the camera 1506 of the device 1502. At the same time, the virtualized visual code 1510-2 can be displayed to the user via the graphical user interface (GUI) 1504, thereby allowing the user to align the view of the physical visual code 1510-1 and the virtualized visual code 1510-2 in real-time in the augmented reality space shown in the graphical user interface (GUI) 1504. In some cases, the physical visual code 1510-1 and the virtualized visual code 1510-2 need to be aligned in the augmented reality to a predetermined distance range to trigger the full reconstruction of the visual code. Referring to FIG. 15H The graphical user interface (GUI) 1504 presents the reconstructed form of the functional visual code 1510.
[0145] FIGS. 16A-16CA hidden visual code for medical pick-up and / or delivery is shown schematically by an augmented reality presentation. In an aspect, a reconfigurable visual code can be used in a medical pick-up. In some cases, a reconfigurable visual code can be used to authenticate a user of a medication (or an agent of the user, e.g., an agent for a patient who is unable to move) and / or to authenticate a medication assigned to the user (e.g., prescribed by a medical industry worker such as a physician or a caregiver to the user, and / or purchased by the user at a pharmacy or remotely using one or more online purchasing services). In some cases, the visual code can be divided into a first portion and a second portion that are configured to transition between two or more states. In a first state, the first portion and the second portion can be separated, thereby forming a non-functional visual code. The first portion and the second portion can be provided on the same object (or the same augmented reality environment) or different objects (or different augmented reality environments). In a second state, the first portion and the second portion can be combined together, thereby forming a functional visual code. The functional visual code can be formed physically (e.g., on top of one or more objects) or in an augmented reality environment. In some cases, the first portion of the visual code can be provided by a pharmacy (or any other type of medication provider) and the second portion of the visual code can be provided by the user of the medication or an agent of the user.
[0146] The first portion of the visual code can be provided in an augmented reality environment associated with the pharmacy. The first portion can be stored and / or represented in a record file of the user (or an agent of the user) or in a prescription record of the user in a database associated with the pharmacy. The database associated with the pharmacy can be operatively in communication with an electronic medical administration record system (eMAR) of the user. In some cases, a medical worker can select an appropriate dosage and / or a duration of taking or using the medication when prescribing the medication to the user. Next, a computer processor in operative communication with the electronic medical administration record system (eMAR) or a database of the pharmacy can generate the first and second portions of the visual code and assign at least the first portion of the visual code to the electronic medical administration record system (eMAR) or the database of the pharmacy. The first portion of the visual code can be accessed via the augmented reality environment associated with the pharmacy (e.g., a graphical user interface (GUI) of a computer software used by the pharmacy). Alternatively or additionally, the first portion of the visual code can be provided on top of a container (e.g., a pill bottle) or a package (e.g., a bag, a cartridge, or a box, etc.) configured to hold the medication assigned to the user (or a bottle holding the medication). In such cases, the first portion of the visual code can be physically accessed.
[0147] The second portion of the visual code can be provided in an augmented reality environment associated with the user (or user agent). In some cases, the first and second portions of the visual code can be generated (e.g., by an electronic medical administration record system (eMAR)) once a prescription is written for the user, and the second portion can be provided to an augmented reality environment associated with the user (e.g., a user profile record in the electronic medical administration record system (eMAR), a pharmacy database, a medical insurance database, etc.). In some cases, the augmented reality environment associated with the user can be operatively linked to a personal device of the user or user agent. Examples of personal devices include mobile devices, such as smart phones, smart watches, tablet devices, and smart glasses, among others. Alternatively or additionally, the second portion of the visual code can be substantially the same as a user-specific code provided (or printed) on an identification of the user (e.g., an identification card) of the user (or user agent). Examples of identification cards can be a driver's license, a passport, an insurance card, a hospital-issued identification card, a pharmacy-issued identification card, etc. of the user or user agent. In another alternative, the second portion of the visual code can be provided (e.g., printed on an object like a prescription paper of the user) when a medical prescription is written by a medical worker for the user.
[0148] In some embodiments, the first portion of the visual code can be provided on an object (e.g., printed on a label of a container of the medication), and the second portion of the visual code can be provided in an augmented reality environment associated with the user (or user agent). In some embodiments, the first portion of the visual code can be provided on one object (e.g., printed on a label of a container of the medication), and the second portion of the visual code can be provided on another object (e.g., provided on an identification of the user or a prescription paper of the user). In some embodiments, the first portion of the visual code can be provided in an augmented reality environment associated with a pharmacy, and the second portion of the visual code can be provided in an augmented reality environment associated with the user (or user agent). In some embodiments, the first portion of the visual code can be provided in an augmented reality environment associated with a pharmacy, and the second portion of the visual code can be provided on an object (e.g., provided on an identification of the user or a prescription paper of the user).
[0149] In some cases, the following functions can be accomplished using a scanner (e.g., a sensor such as a camera): (i) scanning one or both of the first and second portions of the visual code, and (ii) forming a functional visual code in an augmented reality environment associated with the scanner. In some examples, the scanner can be part of a pharmacy device. In some examples, the scanner can be part of a personal device of the user or user agent. In examples, the scanner can be a mobile phone of the user or user agent.
[0150] Referring toFIG. 16A A first portion of the visual code can be printed on a label 1610 of a pill bottle 1600 containing one or more prescribed medications 1605 (e.g., pills) of the user. The pill bottle 1600 can contain a label 1610 on which the first portion 1510-1 of the visual code 1510 can be printed. A second portion 1510-2 of the visual code 1510 can be provided in an augmented reality environment 1504 of the personal device 1502 of the user (e.g., a graphical user interface (GUI) of the personal device 1502). Referring to FIG. 16B In the case where the augmented reality environment 1504 of the device 1502 is activated and / or the user is authorized to use the device 1502 (e.g., by fingerprint or iris screening), the user can move the device 1502 towards the first portion 1510-1 of the visual code (as represented by arrow 1525) while using one or more scanners (e.g., viewing at least the first portion 1510-1 of the visual code in real-time through the augmented reality environment 1504 of the device 1502 using the camera 1506 of the device 1502). At the same time, the second portion 1510-2 of the visual code 1510 is displayed to the user via the augmented reality environment 1504, such that the user is allowed to align the view of the first portion 1510-1 of the visual code with the second portion 1510-2 of the visual code 1510 in real-time in the augmented reality environment 1504. In some cases, the first portion 1510-1 of the visual code needs to be aligned with the second portion 1510-2 of the visual code 1510 in the augmented reality environment to a predetermined distance range, triggering the full reconstruction of the visual code. Referring to FIG. 16C The augmented reality environment 1504 can reveal the reconstructed form of the functional visual code 1510. Once the functional visual code 1510 is confirmed, the pharmacy is allowed to provide the medication to the user (or a proxy of the user). If the functional visual code is not confirmed, the pharmacy is not allowed to provide the medication to the user. In some cases, the pharmacy or medical worker is alerted in the case where the visual code 1510 cannot form a functional visual code of the user and the prescription of the user.
[0151] FIG. 17A process is provided that provides an example of a medical pick-up using a reconfigurable visual code. A user or agent of the user of a medication (e.g., a prescription medication) can arrive at a pharmacy. For example, a first portion of a visual code can be provided by the pharmacy, e.g., in an augmented reality environment associated with the pharmacy (process 1710). For example, a second portion of the visual code can be provided by the user or agent of the user, e.g., in a second augmented reality environment associated with the user (process 1720). One or both of the first portion and the second portion of the visual code can be scanned (e.g., by the pharmacy using a scanner associated with the first augmented reality environment associated with the pharmacy) to form the visual code (process 1730). In an example, the visual code can be formed in the first augmented reality environment of the pharmacy. Next, the visual code containing the first portion and the second portion can be verified, e.g., by a processor operatively linked to the first augmented reality environment associated with the pharmacy, (process 1740). If the visual code is verified as correct ("yes"), the medication can be provided to the user or agent of the user (1750). If the visual code is not verified as correct ("no"), the medication can not be provided to the user or agent of the user.
[0152] In some embodiments, the first portion and / or the second portion of the visual code provided in the augmented reality environment can have a time limit, such that the first portion and the second portion are required to be reconfigured into the functional code within a predetermined duration of time. Once the predetermined duration of time is exceeded, the first portion or the second portion present in the augmented reality environment can be disabled or no longer valid (e.g., can be permanently changed or deleted). The predetermined duration of time can be at least 5 minutes, 10 minutes, 20 minutes, 30 minutes, 40 minutes, 50 minutes, 60 minutes, 1.5 hours, 2 hours, 3 hours, 4 hours, 8 hours, 12 hours, 16 hours, 20 hours, 24 hours, 2 days, 3 days, 4 days, 5 days, 6 days, a week, two weeks, or more. The predetermined duration of time can be at most 2 weeks, a week, 6 days, 5 days, 4 days, 3 days, 2 days, 1.5 days, 24 hours, 20 hours, 16 hours, 12 hours, 8 hours, 4 hours, 3 hours, 2 hours, 1.5 hours, 60 minutes, 50 minutes, 40 minutes, 30 minutes, 20 minutes, 10 minutes, 5 minutes, or less. The predetermined duration of time can be determined by a medical worker (e.g., at the time of prescribing the medication to the user) or the user (at the time of forwarding the second portion of the visual code to the agent of the user).
[0153] In some embodiments, the reconfiguration of the first portion and the second portion of the visual code for verification of the user / medication can be used at the time of delivering the medication to the user or agent of the user.
[0154] In some embodiments, the manner in which the medication is provided can be one or more of a tablet, a capsule, a pill, a powder, a granule, a sugar-coated pill, a gel, a syrup, a salve, a solvent component, an injection medication, an inhalation medication, an aerosol, a skin patch medication, or a modification thereof, or a combination thereof. In some embodiments, the medication can be provided in the form of one or more tablets, capsules, or pills. In some embodiments, the medical supply can be provided in the form of one or more skin patch medications.
[0155] In some embodiments, the medication can or can not require a prescription (e.g., by a medical professional). In some examples, a prescription can not be required for over-the-counter medical supplies such as robitussin, Tylenol, Sudafed. The medical supplies provided herein can or can not be controlled. Examples of uncontrolled substances can include antibiotics, steroid medicals, and Viagra. Examples of controlled substances can include narcotics and depressants and stimulants of the central nervous system (CNS). Examples of narcotics can include morphine, codeine, thebaine, oripavine, morphine dipropionate, morphine dinicotinate, dihydrocodeine, buprenorphine, etorphine, hydrocodone, hydromorphone, oxycodone, oxymorphone, fentanyl, alpha-methylfentantyl, alfentanyl, trefantinil, brifentanil, remifentanil, octfentanil, sufentanil, carfentanyl, meperidine, prodine, promedol, propoxyphene, dextropropoxyphene, methadone, diphenoxylate, dezocine, pentazocine, phenazocine, butorphanol, nalbuphine, levorphanol, levomethorphan, tramadol, tapentadol, anileridine, or any functional variant of these drugs or any functional combination of these drugs.Examples of inhibitors and stimulants of the central nervous system can include methylphenobarbital, pentobarbital, diazepam, clonazepam, chlordiazepoxide, alprazolam, triazolam, estazolam, or any functional variant of these drugs or any functional combination of these drugs.
[0156] Additional examples of medical supplies and related therapeutic applications also include scopolamine for motion sickness, nitroglycer for angina, clonidine for hypertension, and estradiol for female hormone replacement therapy. Other examples of drugs include, but are not limited to, methylphenidate, selegiline, rivastigmine, rotigotine, granisteron, buprenorphine, oestrodiol, fentanyl, nicotine, testosterone, and the like.
[0157] According to an aspect of the present application, a reconfigurable visual code (RVC) can include an augmented reality code (ARC) and a physical code (PHC). The combination of the augmented reality code (ARC) and the physical code (PHC) of the reconfigurable visual code (RVC) can form a functional visual code (e.g., a digital code such as a QR code). The augmented reality code (ARC) can be provided in an augmented reality environment and can be visualized on a digital display, and the physical code (PHC) can be provided on a physical object (e.g., printed or represented on a digital display). Examples of such digital displays can include, but are not limited to, liquid crystal displays, light emitting diode displays, quantum dot (QD) displays, electronic ink (e-ink) displays, and the like. The augmented reality code (ARC) and the physical code (PHC) can be permanent or static. Alternatively, the augmented reality code (ARC) and / or the physical code (PHC) can be updated at least once within its product cycle. In some cases, a user can manually update the augmented reality code (ARC) and / or the physical code (PHC) (e.g., through a graphical user interface (GUI) operably linked to the augmented reality code (ARC) and / or the physical code (PHC)). In some cases, the augmented reality code (ARC) and / or the physical code (PHC) can be dynamically updated (i.e., ARC-D, PHC-D) by a code generator, for example, once every 10 minutes, 20 minutes, 30 minutes, 40 minutes, 50 minutes, 60 minutes, 1.5 hours, 2 hours, 3 hours, 4 hours, 5 hours, 6 hours, 12 hours, 24 hours, 2 days, 3 days, 4 days, 5 days, 6 days, 7 days, two weeks, three weeks, four weeks, two months, three months, or more. Alternatively, the augmented reality code (ARC) and / or the physical code (PHC) can be updated at one or more random and irregular times. The augmented reality code (ARC) and / or the physical code (PHC) can be updated (manually or automatically) at least 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, or more times. The augmented reality code (ARC) and / or the physical code (PHC) can be updated (manually or automatically) at most 20, 15, 10, 9, 8, 7, 6, 5, 4, 3, 2, or 1 times.
[0158] In some embodiments, a user of the reconfigurable visual code (RVC) system of the present application can be incentivized (e.g., to combine the augmented reality code (ARC) and the physical code (PHC) in an augmented reality environment to form a functional visual code). Examples of incentives can include membership upgrades (e.g., additional and improved services) or financial incentives (e.g., cash, business credit cards, discounts, etc.).
[0159] In some embodiments, the reconfigurable visual code (RVC) of the present application is useful for a security system method. The combination of the augmented reality code (ARC) and the physical code (PHC) of the reconfigurable visual code (RVC) is necessary for the authentication of the identity of the user, the item of the transaction, and / or the time of such transaction. In some cases, the reconfigurable visual code (RVC) can be used for a two-factor authentication process. Instead of the standard password of the user and the temporary password (e.g., a temporary personal identification number (PIN) provided to the personal device of the user or the security key system), one of the augmented reality code (ARC) and the physical code (PHC) can be used for the standard password of the user, and the other of the augmented reality code (ARC) and the physical code (PHC) can be used for the temporary password of the user. The augmented reality code (ARC) and the physical code (PHC) can not be programmed with a timer, in which case both the augmented reality code (ARC) and the physical code (PHC) can be valid at least until they are combined to form the functional visual code. Alternatively, the augmented reality code (ARC) and the physical code (PHC) can be programmed with a time limit (e.g., a digital timer) such that the combination of the augmented reality code (ARC) and the physical code (PHC) to form the functional visual code can only occur within a predetermined duration of time or a predetermined time window. After the predetermined duration of time has passed, or outside the predetermined time window, a new version of the augmented reality code (ARC) and / or the physical code (PHC) can be generated, and the old version of them can be invalidated. The predetermined duration of time can be at least 5 minutes, 10 minutes, 20 minutes, 30 minutes, 40 minutes, 50 minutes, 60 minutes, 1.5 hours, 2 hours, 3 hours, 4 hours, 8 hours, 12 hours, 16 hours, 20 hours, 24 hours, 2 days, 3 days, 4 days, 5 days, 6 days, a week, two weeks, or more. The predetermined duration of time can be at most 2 weeks, a week, 6 days, 5 days, 4 days, 3 days, 2 days, 1.5 days, 24 hours, 20 hours, 16 hours, 12 hours, 8 hours, 4 hours, 3 hours, 2 hours, 1.5 hours, 60 minutes, 50 minutes, 40 minutes, 30 minutes, 20 minutes, 10 minutes, 5 minutes, or less. The predetermined time window can be a time window of a day, a day of a week, a week of a month, a month of a year, and / or a specific year.
[0160] In some embodiments, the reconfigurable visual code (RVC) of the present application can be used in a portal security system and method. The portal security system and method can be used, for example, to control and / or track user access to, entry into, and exit from a location of interest, which can be, for example, a campus, a facility, a building, an office, an apartment, a room, a hall, a hotel room, a locker room, and the like. In some cases, a locking system at an entryway to the location of interest can exhibit a physical code (PHC) (e.g., a display operatively associated with the locking system). A user can approach the entryway to the location of interest and activate an augmented reality code (ARC) on the user's personal device (e.g., a mobile device such as a smart phone or a smart watch). The augmented reality code (ARC) can be displayed or "floom" in an augmented reality environment of the personal device (e.g., in a graphical user interface (GUI) of the personal device). The augmented reality environment can be operatively linked to a sensor (e.g., a scanner, a camera, and the like) of the user's personal device such that the augmented reality code (ARC) can be displayed to the user (e.g., through a graphical user interface (GUI) of the sensor of the personal device) in the event that the user attempts to visualize and capture a picture / image / video of the physical code (PHC) with the sensor. In such a case, the augmented reality code (ARC) and the physical code (PHC) can be displayed in the augmented reality environment such that the user is allowed to combine them and form a functional visual code. The formation (or verification, e.g., by a processor operatively associated with the augmented reality environment) of the functional visual code from the augmented reality code (ARC) and the physical code (PHC) can prompt verification of the identity of the user. The user can be allowed to access the entryway only in the event that the functional visual code is formed.
[0161] In some cases, the augmented reality code (ARC) and the physical code (PHC) can be static. The augmented reality code (ARC) and the physical code (PHC) can be unchangeable at least from the time the augmented reality code (ARC) and the physical code (PHC) are assigned to the user until the augmented reality code (ARC) and the physical code (PHC) are combined to form the functional visual code. In some cases, the augmented reality code (ARC) and the physical code (PHC) can be changeable, e.g., dynamically changeable. In an example, the user's personal device can be a code generator. A processor operatively associated with the user's personal device (e.g., an application installed on the user's personal device) can generate a recurring and unique augmented reality code (ARC) that matches the physical code (PHC) at the time the user attempts to access the locking system at the entryway to the location of interest.
[0162] In some embodiments, the reconfigurable visual code (RVC) of the present application can be used for one or more vehicle sharing services. Vehicle sharing services can include, but are not limited to, car sharing services (e.g., Uber, Lyft, Turo, Zipcar, Zipvan, Enterprise CarShare, Getaround, Car2Go, Curb Mobility, Zimride, Flywheel, HourCar, Hui, Juno, Maven, etc.), bike sharing services (e.g., Capital Bikeshare, Divvy, Citi Bike, BIXI, Nice Ride Minnesota, Discover Bike, Hubway, Denver B-Cycle, Bike Chattanooga, etc.), and scooter sharing services (Bird, Bolt, gruv, JUMP, Lime, Lyft, Sherpa, Spin, VeoRide, Wheels, etc.). In some cases, a physical code (PHC) can be displayed on a shared vehicle. In some examples, a physical code (PHC) can be displayed on a car (e.g., can be displayed by a window or handle of a door, can be displayed on or next to a seat), or on an electronic device of a driver (e.g., displayed on a smartphone of a driver). In some examples, a physical code (PHC) can be printed on a bike or scooter, or displayed on an electronic display screen of a scooter’s deck. An augmented reality code (AR) can be displayed in an augmented reality environment associated with a personal device (e.g., a smartphone) of a user of a shared vehicle. Matching an augmented reality code (AR) to a physical code (PHC) (e.g., in an augmented reality environment of a user’s smartphone) thereby forming a functional visual code can allow access to, entry into, and use of a vehicle sharing system.
[0163] In some implementations, the reconfigurable visual code (RVC) of the present application can be used for delivery services (e.g., Amazon, Walmart, Target, USPS, UPS, FedEx, etc.), such as package delivery services. Other examples can include grocery delivery services (e.g., Amazon Fresh, Fresh Direct, Instacart, Google Express, Foodkick, Peapod, Jet, Postmates, Max Delivery, etc.) and food delivery services (e.g., GrubHub, Seamless, DoorDash, Uber Eats, Caviar, Postmates, etc.). In some cases, a package delivered to a recipient requires the recipient to verify. In some examples, a physical code (PHC) can be printed on the package (e.g., on top of a shipping label of the package), and the recipient needs to provide an augmented reality code (ARC) (e.g., on top of a graphical user interface (GUI) application of a personal device of the recipient) to form a functional visual code and verify the identity or delivery address of the recipient. Alternatively, the physical code can be provided by the recipient (e.g., on top of a graphical user interface (GUI) application of a personal device of the recipient), and the augmented reality code (ARC) can be provided by the delivery service provider (e.g., on top of a graphical user interface (GUI) application on an electronic device of the delivery service provider). The delivery service provider can use the electronic device to scan the physical code (PHC) such that the physical code (PHC) is combined with the augmented reality code (ARC) in an augmented reality space, thereby forming a functional visual code. Only in the case of verification of the newly formed functional visual code, the delivery service provider can deliver the package.
[0164] In some cases, a physical code (PHC) can be provided inside a delivery package for enabling verification or tracking of the package by a provider of the package. In some cases, the physical code (PHC) can be printed on or next to a product being delivered inside the package. Alternatively, the physical code (PHC) can be printed on an invoice or a separate document provided inside the package. Upon receiving the package, a recipient can open the package and determine a location of the physical code (PHC) inside the package. Next, the user can use the user's personal device to capture the physical code (PHC) into an augmented reality space associated with the user's personal device, such that the physical code (PHC) is combined with an augmented reality code (ARC) in the augmented reality space and a functional visual code is formed. The formation and verification of such a functional visual code can notify a product provider who has provided the product and / or a recipient who is expected to have received the product. In order to track and / or verify the identity of the recipient, the personal device of the recipient can be pre-registered in a database of the product provider.
[0165] FIG. 18An example of tracking package delivery with a reconfigurable visual system of the present disclosure is schematically illustrated. A provider can use a package delivery service to deliver one or more items to a recipient. The items can be packaged in a box 2100 for shipping. On top of the external service and / or inside the box 2100, the provider can include a tracking label 2102. The tracking label 2102 can be the same or different from the shipping label used by the package delivery service. A physical code 2105-1 can be provided (e.g., printed) on top of the tracking label 2102. Once the recipient receives the box 2100 and confirms the items inside the box 2100, the recipient can determine the location of the tracking label 2102. Using a personal device 2110 (e.g., a smartphone), the recipient can open a graphical user interface (GUI) 2115 (e.g., an application) that is operably in communication with the provider or a database of the provider. The graphical user interface (GUI) 2115 can display an augmented reality environment on top of the personal device 2110 that includes an augmented reality code (ARC) 2105-2 that is compatible with the physical code 2105-1. The recipient can move the personal device 2110 over the physical code 2105-1 and scan the physical code 2105-1 until the image or video of the physical code 2105-1 is combined with the augmented reality code (ARC) 2105-2 in the augmented reality environment to form a functional visual code 2105. The formation of the functional visual code 2105 can send a signal (e.g., a prompt) to the provider or the database of the provider indicating that the items have been delivered to the recipient. In some cases, such a method and system of package delivery confirmation by the recipient can be more accurate than the confirmation by the package delivery provider. In some cases, the recipient can be incentivized to complete the scan of the reconfigurable visual code once the functional visual code is formed and verified.
[0166] In some embodiments, the reconfigurable visual code of the present application can be used for self-delivery. Self-delivery can include package delivery (e.g., Amazon Locker, USP Access Point, Box24, etc.), grocery delivery, laundry drop-off and pick-up, etc. Generally, instead of direct delivery to a recipient, one or more items can be stored in a designated locker of a self-service locker station. Next, the recipient is required to go to the self-service locker station, provide a code (e.g., provided by the provider of the self-delivery service) to the graphical user interface (GUI) of the self-service locker station to open the designated locker, and retrieve the items. Conversely, the self-service locker station can use the reconfigurable visual code of the present application to replace the code to confirm the identity of the recipient. For example, when the items are assigned to the designated locker, a physical code (PHC) and an augmented reality code (ARC) can be generated. The physical code (PHC) can be sent to a database associated with the self-service locker station, while the augmented reality code (ARC) can be provided to the user, e.g., sent to an augmented reality environment associated with the user's personal device. When retrieving the items, the physical code (PHC) can be provided by the self-service locker station (e.g., displayed on an electronic display), the recipient can capture an image / video of the physical code (PHC), combine the physical code (PHC) with the augmented reality code (ARC) in the augmented reality environment associated with the user's personal device, and generate a functional visual code. The user's personal device can be operatively linked with the self-service locker station such that the formation and / or verification of the functional visual code in the augmented reality triggers the self-service locker station to open the designated locker, thereby allowing the recipient to retrieve the items. Alternatively, the physical code (PHC) can be provided by the recipient, while the augmented reality code (ARC) can be provided by the augmented reality environment associated with the self-service locker station.
[0167] In some cases, RVCs of the present application can be used for item retrieval or retrieval. In some cases, RVCs of the present application can be used for luggage retrieval. For example, in the case of checked luggage, a special luggage tag can be generated for the luggage, and a physical code (PHC) can be printed on the luggage tag. At the same time, a user can be generated and provided with an augmented reality code (ARC) complementary to the physical code (PHC) of the luggage tag, e.g., sent to an augmented reality environment associated with the user's personal device. Once the luggage arrives at the destination and is transferred to the luggage retrieval location (e.g., a luggage carousel at an airport), the owner of the luggage can be required to verify the luggage, scan the physical code (PHC) of the luggage tag using the user's personal device, combine the physical code (PHC) with the augmented reality code (ARC) to form a functional visual code in the augmented reality environment. Such augmented reality environment of the user's personal device can be operatively communicated with a database of the airline or luggage courier service, such that the airline or luggage courier service can track and ensure that the owner of the luggage retrieves the luggage. In some cases, the airline can track when one or more passengers scan an incompatible physical code (PHC). In some cases, the airline can confirm when a physical code (PHC) of the luggage cannot be scanned to form a functional visual code within a predetermined duration of time. For example, one hour after the luggage arrives at the destination or the luggage retrieval location (which can indicate that the luggage has not been retrieved). In such cases, the airline can alert local staff at the airport and / or the personal device of the owner of the luggage.
[0168] FIG. 19 An example of luggage retrieval using RVC systems of the present application is schematically illustrated. Checked luggage can be tagged with a tag 2202. The tag 2202 can contain a physical code 2205-1, and a user can be provided with an augmented reality code 2205-2 complementary to the physical code 2205-1, e.g., sent to an augmented reality environment (e.g., a graphical user interface (GUI) of an application) associated with the user's personal device 2210. During the luggage / box luggage declaration, the owner of the luggage 2200 can determine the location of the luggage 2200 (e.g., a luggage carousel at an airport), move the personal device 2210 over the tag 2202, scan the physical code 2205-1, until a digital image or video of the physical code 2205-1 is combined with the augmented reality code 2205-2 in the augmented reality environment 2215 to form a functional visual code 2205. The formation of the functional visual code 2205 can signal to a database of the airline or luggage courier service that the luggage 2200 has been retrieved by the owner.
[0169] In some embodiments, reconfigurable visual codes (RVCs) containing augmented reality codes (ARCs) and physical codes (PHCs) can be used in games (e.g., contests, raffles, etc.) to attract one or more users and / or to maintain engagement (e.g., brand loyalty) of one or more users over a longer period of time. Games using reconfigurable visual codes can be provided online (e.g., via a web-based interface) and / or by physical activities.
[0170] In some cases, the game can be a hidden treasure contest. A provider (e.g., a retailer, a hotel, a professional sports team) can provide a product to be sold and distributed with a physical code (PHC) of a reconfigurable visual code (RVC) to one or more customers. In one example, the product can be a candy, and the PHC can be provided within the candy wrapper. One or more users can have a graphical user interface (GUI) application associated with the provider on their personal device (e.g., a smartphone). The one or more users can be provided with unique codes that can be combined (e.g., in an augmented reality environment of the graphical user interface (GUI) application) to form a functional visual code. In some examples, the one or more users can receive or purchase the product and form the functional visual code, and a predetermined number (or a highest number) can result in winning the hidden treasure contest. In some examples, a particular "winning" physical code (PHC) can be generated and provided in the product, and a user who combines the winning physical code (PHC) with his or her augmented reality code to form a functional visual code can win a prize / contest. In some cases, the one or more winners can receive the prize "online" via the graphical user interface (GUI) application and / or a physical prize (e.g., a product, a gift card, etc.). Additionally, other users of the graphical user interface (GUI) application of the provider can be alerted to a message of the announcement of the one or more winners. The provider can further post to one or more social media platforms (e.g., Facebook, Instagram, Twitter, a website of the provider, etc.) to announce the one or more winners and can attract more new users. In some cases, the physical code (PHC) is not provided to a user with a purchased or distributed product (e.g., a real object), but is provided to the user via the graphical user interface (GUI) application associated with the provider or one or more electronic messages (e.g., text, email, etc.) provided to the user. In an example, the provider can request the user to provide personal information of the user (e.g., a phone number, an email address, access to online data of the user, such as cookie data, etc.) and provide the physical code (PHC) as a reward. In an example, the physical code (PHC) can be provided to one or more users without requiring the one or more users to purchase any product, item, or service.
[0171] In some cases, the game can be a sweepstakes. In some examples, each ticket of the sweepstakes can include a physical code (PHC). Such tickets can be purchased by the user or assigned to the user (e.g., for free with other purchased products, goods, or services). Once received, the user can use their personal device and combine the physical code (PHC) with an augmented reality code (ARC) in a graphical user interface (GUI) application on their personal user device using the augmented reality code (ARC) to create a functional visual code. Once created, each functional visual code and corresponding user information can be retrieved by a database associated with the provider of the sweepstakes. After a set time (e.g., every week, every two weeks, every month, every year, etc.), one or more functional visual codes can be selected (e.g., randomly) to select one or more winners of the sweepstakes.
[0172] In some cases, a game can include or incorporate an advertisement. An advertisement, such as a billboard, magazine advertisement, social media advertisement, online display advertisement, etc., can display a physical code (PHC). The physical code (PHC) can be compatible with a plurality of augmented reality codes (ARC), can provide a user with one of the plurality of augmented reality codes (ARC). The user can download a graphical user interface (GUI) application associated with the advertisement on the user's personal device, can provide the user's unique augmented reality code (ARC) via the graphical user interface (GUI) application. Using the user's personal device and the GUI application, the user can capture an image (e.g., a "selfie") and / or a video of the ARC to combine the PHC and the ARC and produce a functional visual code. In some examples, the image / video can be captured manually by the user. Alternatively, the graphical user interface (GUI) application can be programmed such that the image / video can only be captured if both (i) the user's augmented reality code (ARC) is superimposed over or near the physical code (PHC) on the advertisement, and (ii) the functional visual code is produced. In some examples, the graphical user interface (GUI) application can be programmed to automatically transmit the picture / video to a database associated with the advertisement. The database can or can not share the picture / video with one or more social media platforms associated with the advertisement. Alternatively or additionally, the user can be required to post the picture / video to one or more social media platforms associated with the advertisement and / or associated with the user. In the latter case, the user can be required to provide a metadata tag (e.g., a hash tag) associated with the advertisement, which can allow one or more "tagged" images / videos to be uploaded (e.g., automatically) to a database associated with the advertisement and the metadata tag. One or more active winners can be selected from the images / videos containing the functional visual code. In some cases, the one or more winners can be selected randomly, in some cases, the one or more winners can be selected according to one or more criteria, such as the content of the image / video, a description of the image / video by the user, etc. In an example, a user can access the user's augmented reality code (ARC) via a graphical user interface (GUI) application on the user's mobile phone. The user can use the graphical user interface (GUI) application to take a selfie, while attempting to combine the augmented reality code (ARC) with a virtual copy of the physical code (PHC) of the augmented reality billboard of the graphical user interface (GUI) application. An image or video of the user and the billboard can be captured and stored only if a functional code is produced from the augmented reality code (ARC) and the physical code (PHC). In another example, an advertisement can be associated with a new song by an artist.The advertisement can require participants to post images / videos (which include the aforementioned functional visual codes) with a cover of a new song (e.g., a karaoke cover) to one or more social media platforms. Winners can be selected based on the performance of each user on the cover. Providers of products, goods, and / or services can use the reconfigurable visual code system to leverage advertisements to increase user engagement, user competition, and / or user creativity, and to increase brand value of the providers through interaction with users, customers, and followers, etc.
[0173] Live events, e.g., festivals (e.g., Burning Man, Coachalla, Lollapalooza, etc.), concerts, sporting events, etc., can also use advertisements that include the reconfigurable visual code system of the present invention. Physical codes (PHC) (e.g., static physical codes (PHC) or PHC-D) can be displayed on one or more electronic display screens at the live event. The one or more electronic display screens are played while the live event is being played (e.g., played to a television or mobile device). Alternatively or additionally, a separate advertisement (e.g., a television advertisement) can be transmitted to provide the same physical codes (PHC). As mentioned previously, participants can use personal devices to combine unique augmented reality codes (ARC) with the physical codes (PHC) (e.g., in an augmented reality environment of a graphical user interface (GUI) application) to produce functional visual codes, and each of the produced functional visual codes and corresponding profile information of the participants can be provided to a database associated with the advertisement (e.g., a database associated with a sponsor of the advertisement). In the event that one or more winners are selected, the winners' names and / or images (with consent) can be displayed on the electronic display screens at the live event in real time.
[0174] In some cases, the reconfigurable visual code (RVC) of the present application can be used to provide information to a user. In some cases, one or more products (e.g., gift cards, electronic devices, groceries, clothing, etc.) can be printed with a physical code (PHC). In some examples, the physical code (PHC) can be provided on a label (e.g., a metal tag, a sewn-in tag, and a sticker label, etc.) associated with the one or more products. In some examples, the physical code (PHC) can be printed directly on the one or more products. At the time of shopping, the user can use his or her personal device (e.g., a smartphone) and its graphical user interface (GUI) application to capture an image and / or a video of the physical code (PHC). The captured physical code (PHC) can be combined with the user's augmented reality code (ARC) in an augmented reality environment of the graphical user interface (GUI) application to produce a functional visual code. By producing the functional visual code, the user can access information about the product and / or a discount (or a coupon) for the product. In some cases, the coupon can only be obtained by producing the functional visual code. By having the user interact with the reconfigurable visual code, a store selling the product and / or an original provider of the product can receive information about the user (e.g., a phone number, an email address, an acquisition of the user's online data such as cookie data, etc.).
[0175] Blockchain
[0176] A database storing one or more portions of reconfigurable visual codes (e.g., user / medical verifications for medical pickups; physical codes (PHCs), augmented reality codes (ARCs), and / or reconfigurable functional visual codes thereof, etc.) of the present disclosure can include or utilize a blockchain (or “blockchain”) database. Here, the term “blockchain” refers to a suite of distributed ledger technologies that can be programmed to record and track any value (e.g., financial transactions, land titles, medical records, etc.). A blockchain can be a peer-to-peer, decentralized ledger (or its computer organization) that relies on a distributed network shared by its users. Each user can use the organization to hold a public ledger of every transaction performed, which can be checked against another public ledger to ensure accuracy and auditability. A blockchain-based database (or blockchain database) can thus be used to record and process one or more transactions of digital objects (e.g., data) in place of a physical, centralized database. Maintenance of a blockchain can be performed by a peer-to-peer network (or computer system) of communicating nodes running software. The software can be programmed with specialized applications (e.g., cryptocurrency software, financial services software, supply chain software, smart contract software, etc.). Transactions such as “Party X transfers object (e.g., digital object, e.g., cryptocurrency, prescription, etc.) Y to object Z” can be broadcast to the peer-to-peer network (e.g., using one or more software applications). Network nodes can validate the transactions, add them to their copy of the ledger, and then broadcast the added portion of the ledger to other nodes. Thus, a blockchain can be a distributed database in which each network node stores its own copy of the blockchain in order to independently verify the chain of ownership or any verifiability with each transferred object. In some cases, a new set of transactions (e.g., a block) is created (e.g., at a fixed frequency, e.g., 6 times per hour) and added to the blockchain, which is promptly published to all nodes of the peer-to-peer network. Each block can thus contain a cryptographic hash of the previous block to keep the previous block “auditable.”
[0177] Over time, processing transactions on a blockchain becomes exponentially more difficult and requires an extremely large amount of computing power to attempt, not to mention succeed. In some cases, data stored in a blockchain can be included in an integer proof in which transactions are assembled into a transaction Merkle tree and hashed to produce a block header. Any change to a transaction in the blockchain database can become apparent because the block will be invalid when indexed. Thus, a consensus mechanism of a blockchain allows a hash of data to be published to the blockchain as an irrevocable proof that the data existed at a given time in the past. Both the timestamp and the hash can be unalterable.
[0178] In some embodiments, the scanning of at least one or both of the first portion and the second portion of the visual code for a medical pick-up can update a blockchain database for verification and / or closed loop tracking of the visual code in such medical products, for example, tracking (i) production, supply, use, and retrieval of the medical product, (ii) personal linkage (e.g., record of identity of a responsible practitioner of application and / or removal of the medical product), (iii) linkage of user or patient, and / or (iv) drug tracking (dispensing, coverage, and receipt of the device including the cover). In an example, the blockchain database can provide a record (e.g., permanent or irrevocable record) of each transaction as the medical product moves along the supply chain to a hospital (e.g., in ADM), to a user (e.g., patient), or a user agent. The blockchain database provided herein can be a point-to-point network that is tamper-proof and secure between a patient, a prescription provider, a pharmacy, a government agency (e.g., FDA, EDA, etc.), a medical product manufacturer, etc. to record and transfer data (e.g., medical history, prescription history, date of prescription, date of medical pick-up, etc.).
[0179] In some embodiments of the present disclosure, the functional visual code resulting from the combination of the physical code (PHC) and the augmented reality code (ARC) (e.g., in an augmented reality environment associated with a user) can be updated to a blockchain database with information of the user (e.g., phone number, email address, access to online data of the user such as cookie data, etc.) for verification of the visual code and tracking of the user. In an example, the blockchain database can provide a record (e.g., permanent and irrevocable record) of the functional visual code, for example, location, date, time, or user associated with the generation of the functional visual code. The blockchain database provided herein can be a point-to-point network that is tamper-proof and secure between (i) providers of products, items, services, and activities associated with the reconfigurable visual code (RVC), (ii) stores selling such products / items, and (iii) customers of the products / items, users of the services, and / or participants of the activities.
[0180] Computer system
[0181] FIG. 13An ecosystem 1300 according to the present application is shown schematically. The ecosystem 1300 includes a server 1302. The server 1302 can be in communication with a network 1430. The network can be in operable communication with the operable functions of a variety of applications, such as logistics, supply chain, shipping, disposal (e.g., garbage disposal, controlled substance disposal), retail, banking / finance, etc. Each of the operable functions of the variety of applications can be in communication with one or more visual scanning systems. The visual scanning systems can be configured to acquire images and / or videos of reconstructed and non-reconstructed visual codes (e.g., reconstructed visual code 1350) from one or more persons or things of interest (e.g., documents, objects, animals, individuals, etc.). The server 1302 can include a tracking module 1304 configured to analyze the images and / or videos of the reconstructed visual codes. The tracking module 1304 can also be configured to track, monitor, and / or record items according to sequential scans of corresponding reconstructable visual codes over time. Additionally, the server 1302 can be in communication with a database 1306 to store the images and / or videos of the reconstructed and non-reconstructed visual codes and analyzed by the tracking module 1304.
[0182] FIG. 14 A computer system 1401 is shown programmed or configured to communicate with and adjust different operational aspects or scans of reconstructable visual codes. The computer system 1401 can be in communication with one or more items (e.g., one or more devices including reconstructable visual codes) or one or more visual scanning systems (e.g., sensors) configured to scan and analyze reconstructed visual codes. The computer system 1401 can be a user's electronic device or a computer system relatively remote from the electronic device. The electronic device can be a mobile electronic device.
[0183] The computer system 1401 can include a central processing unit 1405 (CPU), which can be a single-core or multi-core processor, or a plurality of processors capable of parallel processing. The computer system 1401 further includes a memory or other storage locations (e.g., random access memory, read only memory, and flash memory), an electronic storage unit 1415 (e.g., a hard disk), a communication interface 1420 (e.g., a network adapter) that enables communication with one or more other systems, and peripheral devices 1425 such as a cache, other memory, data storage and / or an electronic display adapter. The memory 1410, storage unit 1415, interface 1420 and peripheral devices 1425 communicate with the central processing unit 1405 (CPU) via a communication bus (solid lines) that can include a power bus and a data bus. The storage unit 1415 can be a data storage unit (e.g., a data repository) for storing data. The computer system 1401 can be operatively connected to a computer network (“network”) 1430 via the communication interface 1420. The computer network can be the Internet, an intranet and / or an extranet, a private network using communication protocols that allow the computer system 1401 to communicate over the Internet, and / or the World Wide Web. In some cases, the network 1430 is a telecommunications network and / or a data network. The network 1430 can include one or more computer servers that can support distributed computing, for example, cloud computing. In some cases, the network 1430 can implement a point-to-point network capable of enabling the computer system 1401 to function as a client or a server in a client-server model or a peer-to-peer model.
[0184] The central processing unit 1405 (CPU) can execute a sequence of machine-readable instructions, which can be embodied in a program or software. The instructions can be stored in a memory location, such as the memory 1410. The instructions can be directed to the central processing unit 1405 (CPU) which can subsequently program or configure the central processing unit 1405 (CPU) to implement a method of the present application. Examples of operations performed by the central processing unit 1405 (CPU) can include reading, decoding, executing, and writing back.
[0185] The central processing unit 1405 (CPU) can be part of a circuit, such as an integrated circuit. One or more other components of the system 1401 can be included in the circuit. In some cases, the circuit can be an application specific integrated circuit (ASIC).
[0186] Storage unit 1415 may store files, such as drivers, libraries, and stored programs. Storage unit 1415 may store user data, such as user preferences and user programs. In some cases, computer system 1401 may include one or more additional data storage units external to computer system 1401, such as a remote server located and communicating with computer system via an intranet or the Internet.
[0187] Computer system 1401 can communicate with one or more remote computer systems via network 1430. For example, computer system 1401 can communicate with a user's remote computer system. Examples of remote computer systems include personal computers (e.g., portable personal computers), small or tablet personal computers (e.g., ...). iPad Galaxy Tab), phone, smartphone (e.g., iPhone, Android-enabled devices (or personal digital assistant). Users can access computer system 1401 via the network.
[0188] The methods described herein can be implemented by machine (e.g., computer processor) executable code stored in an electronic storage location of the computer system 1401, such as memory 1410 or electronic storage device 1415. The machine executable code or machine readable code can be provided in software form. During use, the code can be executed by processor 1405. In some cases, the code can be retrieved from electronic storage unit 1415 and stored on memory 1410 for access by processor 1405 at any time. In some cases, electronic storage unit 1415 may not be included, and the machine executable instructions can be stored in memory 1410.
[0189] The code can be pre-compiled and configured to be used on a machine with a processor suitable for executing the code, or it can be compiled at runtime. The code can be provided in a programming language, which can be selected to enable the code to be executed in a pre-compiled or pre-compiled manner.
[0190] Various aspects of the systems and methods provided herein, such as the computer system 1401, can be embodied in programming. Each of the aspects of the technology can be considered a "product" or "article of manufacture" under 35 U.S.C. § 101 or 101 et seq. As used herein, unless expressly stated to the contrary, "programming" or a "program" shall include any type of computer instruction or computer executable code located within or on a machine or device (e.g., internal or attached to an internal component of a machine) used in association with a computer system. Furthermore, the various types of programming can include: (1) firmware or microcode, (2) resident software, (3) resident applications, (4) software applications, (5) runtime applications, (6) other software, and (7) combinations of any of the above, such as, by way of illustration, the software performed / implemented by a processor whether software or firmware. In addition, the various types of programming can include: software components, sets of instructions, program elements, or computer code stored in a machine- or device-readable medium so as to perform the tasks or implement the abstract data types identified herein such as the computer system 1401. Furthermore, the methods may
[0191] Hence, a computer readable medium carrying computer executable code can take many forms, including but not limited to, a tangible storage medium, a carrier wave medium or physical transmission medium. Non-volatile storage media include, for example, optical or magnetic disks, such as any of the storage devices in any computer(s) or the like, which might be used to implement a database, etc. and shown in the drawings. Volatile storage media include dynamic memory, such as the main memory of such a computer platform. Tangible transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise a bus within a computer system. Carrier wave transmission media can take the form of electric or electromagnetic signals, or acoustic or light waves such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer readable media include, for example: a floppy disk, a flexible disk, a hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD or DVD-ROM, any other optical medium, punch cards, any other physical storage medium, RAM, ROM, PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave transported over a cable or a link, either optical or analog, or any other medium from which a computer can read programming code and / or data. Many of these forms of computer readable media can be involved in carrying one or more sequences of one or more instructions to a processor for execution.
[0192] The computer system 1401 can include or be in communication with an electronic display 1435, which can represent a flatscreen, cathode ray tube (CRT), plasma, liquid crystal display (LCD), or any other electromechanical or electronic means of displaying information. The electronic display 1435 includes a user interface (UI), which, for example, provides the following functionality: (i) activates one or more actuation elements to reconfigure the reconfigurable visual code to produce a unique visual code, (ii) controls a visual scanning system (e.g., a handheld QR reader, a personal device including one or more cameras, etc.) to capture and analyze images / videos of such unique visual code of the reconfigurable visual code, and (iii) stores images / videos and their corresponding analyses over time. Examples of the user interface (UI) can include, but are not limited to, a graphical user interface (GUI) and a web-based user interface.
[0193] The methods and systems of the application can be implemented by one or more algorithms. The algorithms can be implemented by the central processing unit 1405 through execution of software. For example, the algorithms can distinguish between reconfigured visual codes and non-reconfigured visual codes.
[0194] While the application has been shown and described with reference to particular embodiments thereof, it will be apparent to those skilled in the art that various changes in the details of the present application can be made without departing from the scope of the application. It is therefore intended that the application be construed as including all such variations as fall within the scope of the appended claims and their equivalents.
Claims
1. A system comprising a reconfigurable visual code, wherein the visual code is divided into a plurality of separate portions, the plurality of separate portions configured to transition between two or more states, the plurality of separate portions including a first separate portion and a second separate portion, the first separate portion being a physical separate portion in a physical environment, the second separate portion being a virtual separate portion in an augmented reality environment, wherein in a first state, the plurality of separate portions are placed apart from one another, thereby forming a non-functional visual code, wherein in a second state, the plurality of separate portions are moved relative to one another in the augmented reality environment, thereby forming a functional visual code.
2. The system of claim 1, wherein in the second state, the plurality of separate portions are (i) directly adjacent to one another, and / or (ii) one on top of another, to form the functional visual code.
3. The system of claim 1, wherein each of the plurality of separate portions is disposed on one of a plurality of separate substrates.
4. The system of claim 3, wherein at least one of the plurality of separate substrates is movable.
5. The system of claim 1, wherein the visual code is coupled with a visual scanning system configured to extract information from the functional visual code based in part on an image and / or video of the functional visual code.
6. The system of claim 5, wherein the visual scanning system is further configured to distinguish between the visual code in the first state and the visual code in the second state.
7. The system of claim 1, wherein the reconfigurable visual code is used for tracking, accountability, security, authentication, and / or transaction of an item carrying the reconfigurable visual code.
8. The system of claim 1, wherein the first separate portion is different from the second separate portion.
9. The system of claim 8, wherein in the second state, images and / or videos of the first separate portion and the second separate portion are moved relative to one another in the augmented reality environment to form the functional visual code.
10. The system of claim 1, wherein: (i) in the first state, the first separate portion and the second separate portion are separated to form the non-functional visual code, and, (ii) in the second state, the first separate portion and the second separate portion are combined together to form a functional visual code.
11. The system of claim 10, wherein the first separate portion is provided by a pharmacy and the second separate portion is provided by a user of a medication or an agent of the user.
12. The system of claim 11, wherein (i) the first separate portion is provided in an augmented reality environment associated with the pharmacy, or (ii) on a container or packaging configured to hold the medication dispensed to the user.
13. The system of claim 12, wherein a prescription for the medication is provided to the user.
14. The system of claim 11, wherein (i) the second separate portion is provided in an augmented reality environment associated with the user or an agent of the user, or (ii) on an identification of the user or the agent of the user.
15. The system of claim 11, wherein a scanning device is configured to scan one or both of the first separate portion and the second separate portion to form the functional visual code in an augmented reality environment associated with the scanning device.
16. The system of claim 15, wherein the scanning device is part of a pharmacy device.
17. The system of claim 15, wherein the scanning device is part of a personal device of the user or an agent of the user.
18. The system of claim 17, wherein the personal device comprises a mobile device.
19. The system of claim 10, wherein the first separate portion is provided with an object, and the second separate portion is provided in the augmented reality environment provided by a graphical user interface application, wherein the graphical user interface application is displayed on a display of a device.
20. The system of claim 19, wherein (i) the first separate portion is provided on the object, or (ii) on or in a container or storage unit configured to hold the object.
21. The system of claim 19, wherein the object is a good, a shipping container configured to hold the good, a shipping storage unit configured to hold the good, luggage, or an electronic display.
22. The system of claim 21, wherein the first separate portion is provided on a tag attached to the luggage.
23. The system of claim 19, further comprising a scanning device configured to scan one or both of the first separate portion and the second separate portion to form the functional visual code in an augmented reality environment associated with the scanning device.
24. The system of claim 23, wherein the scanning device is part of the device, wherein the augmented reality environment is associated with the device.
25. The system of claim 19, wherein the device comprises a mobile device.
26. The system of claim 19, wherein the graphical user interface application is programmed to validate the formed functional visual code to access digital information associated with the object from a database.
27. A method of reconstructing a visual code, the method comprising: (a) providing a reconfigurable visual code, the reconfigurable visual code being divided into a plurality of separate portions, the plurality of separate portions being configured to transition between two or more states, the plurality of separate portions including a first separate portion and a second separate portion, the first separate portion being a physical separate portion in a physical environment, the second separate portion being a virtual separate portion in an augmented reality environment; and (b) transitioning the plurality of separate portions from a first state to a second state, wherein in the first state, the plurality of separate portions are placed apart from one another, thereby forming a non-functional visual code, wherein in the second state, the plurality of separate portions are moved relative to one another in the augmented reality environment, thereby forming a functional visual code.
28. The method of claim 27, wherein in the second state, the plurality of separate portions (i) are directly adjacent to one another, and / or (ii) are overlaid on one another, to form the functional visual code.
29. The method of claim 27, wherein each of the plurality of separate portions is disposed on one of a plurality of separate substrates.
30. The method of claim 29, wherein the transitioning includes moving at least one of the plurality of separate substrates.
31. The method of claim 27, wherein the visual code is coupled with a visual scanning system, the visual scanning system being configured to extract information from the functional visual code based in part on an image and / or video of the functional visual code.
32. The method of claim 31, wherein the visual scanning system is further configured to distinguish between the visual code in the first state and the visual code in the second state.
33. The method of claim 27, wherein the reconfigurable visual code is used for tracking, accountability, security, authentication, and / or transactions of an item carrying the reconfigurable visual code.
34. The method of claim 27, wherein the first separate portion and the second separate portion are different.
35. The method of claim 34, wherein in the second state, images and / or videos of the first separate portion and the second separate portion are moved relative to one another in the augmented reality environment to form the functional visual code.
36. The method of claim 27, wherein: (i) in the first state, the first separate portion and the second separate portion are separated to form the non-functional visual code, and (ii) in the second state, the first separate portion and the second separate portion are combined together to form a functional visual code.
37. The method of claim 36, wherein the first separate portion is provided by a pharmacy and the second separate portion is provided by a user of a medication or an agent of the user.
38. The method of claim 37, further comprising providing (i) the first separate portion in an augmented reality environment associated with the pharmacy, or (ii) on a container or packaging configured to hold the medication dispensed to the user.
39. The method of claim 38, wherein the user is provided a prescription for the medication.
40. The method of claim 37, further comprising providing (i) the second separate portion in an augmented reality environment associated with the user or an agent of the user, or (ii) on an identification of the user or the agent of the user.
41. The method of claim 37, further comprising: scanning one or both of the first separate portion and the second separate portion with a scanning device to form the functional visual code in an augmented reality environment associated with the scanning device.
42. The method of claim 41, wherein the scanning device is part of a pharmacy device.
43. The method of claim 41, wherein the scanning device is part of a personal device of the user or an agent of the user.
44. The method of claim 43, wherein the personal device comprises a mobile device.
45. The method of claim 36, wherein the first separate portion is provided with an object, and the second separate portion is provided in the augmented reality environment provided by a graphical user interface application, wherein the graphical user interface application is displayed on a display of a device.
46. The method of claim 45, wherein the first separate portion is provided (i) on the object, or (ii) on or in a container or storage unit configured to hold the object.
47. The method of claim 45, wherein the object is a good, a shipping container configured to hold the good, a shipping storage unit configured to hold the good, luggage, or an electronic display.
48. The method of claim 47, wherein the first separate portion is provided on a tag attached to the luggage.
49. The method of claim 45, further comprising scanning one or both of the first separate portion and the second separate portion with a scanning device to form the functional visual code in an augmented reality environment associated with the scanning device.
50. The method of claim 49, wherein the scanning device is part of the device, wherein the augmented reality environment is associated with the device.
51. The method of claim 45, wherein the device comprises a mobile device.
52. The method of claim 45, further comprising verifying the formed functional visual code to access digital information associated with the object from a database.
Citation Information
Patent Citations
Manufacturing method for combined QR code and medium with combined QR code
CN106447002A
Barcode
US20070145140A1
Container disposal
US20110186623A1