The present invention relates to methods and systems for unique identification of articles of fabric, and more particularly to use of such methods and systems in the context of social networking.
In accordance with one embodiment of the invention, there is provided an article, the article being a selected one of a set of articles. In this embodiment, each article of the set includes a fabric and is associated with a unique identification code. Additionally, the selected article has a pattern distributed over at least 10% of an exposed surface of the selected article. In this embodiment, the pattern encodes the identification code associated with the selected article, wherein the pattern is configured to be read and decoded by a mobile computing device in a manner wherein the selected article is contextually recognizable.
In a related embodiment, the identification code is represented in the pattern in a large format, wherein each item of information content in the identification code is represented in the pattern by a set of attributes, each attribute of the set of attributes having a minimum dimension of 1 mm.
In yet another related embodiment, each attribute of the set of attributes has a minimum dimension of 2 mm. Optionally, each attribute of the set of attributes has a minimum dimension of 3 mm. Optionally, the pattern is distributed over at least 30% of the exposed surface of the selected article.
In a further related embodiment, the exposed surface of the selected article includes a front and a back of the selected article. Optionally, the pattern includes an error correction code. Alternatively or in addition, the error correction code is a forward error correction code.
Optionally, the pattern includes a repetition of encoding of the identification code. Further optionally, the pattern encodes a minimum of 24 bits of information comprising the identification code. Optionally, the pattern encodes a minimum of 32 bits of information comprising the identification code. Also optionally, the pattern encodes a minimum of 64 bits of information comprising the identification code.
In a related embodiment, the unique identification code, encoded by the pattern, was transmitted by a server system for use in manufacturing of the article. In a further related embodiment, the unique identification code has been associated with an owner of the article by updating information in the server system in connection with a sale of the article to the owner.
In yet another related embodiment, the pattern is not discernible to an ordinary unaided human observer.
Optionally, the pattern includes a plurality of horizontal lines having varying thickness, spacing, and color, wherein the plurality of horizontal lines extending over at least 80% of a first dimension of the exposed surface of the article of clothing. Also optionally, the article of clothing is from a group consisting of a shirt, jacket, sweater, and vest, wherein the first dimension is parallel to a line drawn from shoulder-to-shoulder of the article of clothing.
In another embodiment, the invention provides a server-based method for identifying a specific article of fabric in a social context, the method includes computer processes which include:
receiving at a server system a request message, from a first instance of a fabric identification application executing on a mobile computing device of a regarding individual who has caused the mobile computing device to capture an image in which at least a part of the specific article appears, the request message containing identity data corresponding to a pattern on the article, the pattern encoding a unique identification code associated with the specific article and the pattern configured to render the article contextually recognizable,
processing by the server system the identity data, in relation to a database system storing identification codes for a set of articles in relation to corresponding user information, to identify a specific user associated with the specific article of fabric; and
sending by the server system a reply message to the application executing on the mobile computing device that, consistent with permissions of the specific user, includes user-defined content, such content defined by the specific user.
Optionally, the user-defined content includes personal information concerning the specific user. Also optionally, the user-defined content includes music selected according to preferences of the specific user.
In a related embodiment, the invention provides a method that further includes, before sending the reply message by the server system:
receiving by the server system, from the first instance of the fabric identification application executing on the mobile computing device of the regarding individual, first geolocation data defining a location of the computing device of the regarding individual;
receiving, by the server system, from a second instance of the fabric identification application executing on a mobile computing device of the specific user, second geolocation data defining a location of the specific user's computing device;
processing by the server system the first and second geolocation data to determine if the mobile computing device of the regarding individual is within a predetermined distance from the specific user's mobile computing device, and, if not within the predetermined distance, configuring the reply message to convey denial of permission to provide personal information about the specific user.
In a further related embodiment, the method includes sending by the server system, after receiving the identity data, to the application executing on the mobile computing device, a confirmatory message including validity information associated with the identity data.
In yet a further related embodiment, the identity data has been derived by the application executing on the mobile computing device from a processed version of the image, the processed version being a result of processing of the image on the mobile computing device.
In another related embodiment, the method includes receiving by the server system the image captured by the mobile computing device and processing by the server system the image to derive the identity data. Optionally, the method further includes configuring by the server system the reply message to the application to initiate a request to a third-party application executing on the mobile computing device using the identity data.
In yet another embodiment, the method includes, if the permissions of the specific user prevent the personal information about the specific user from being included in the reply message, configuring, by the server system, the reply message to redirect the application executing on the mobile computing device of the regarding individual to cause other appropriate content to be displayed thereon.
In another related embodiment, wherein the user-defined content includes a plurality of content items, a specific one thereof being selected, for transmission to the mobile computing device of the regarding individual, according to a set of selection criteria specified by the specific user. Optionally, the set of selection criteria includes an identity of the regarding individual. Also optionally, the set of selection criteria includes an item selected from the group consisting of time of day of receipt by the server system of the request message, date of such receipt, geolocation of the mobile computing device of the regarding individual, and combinations thereof.
In yet another related embodiment, the reply message includes at least some third party-defined content. Optionally, the at least some third party-defined content includes advertising.
In another related embodiment, the fabric identification application is a portion of a social network application, wherein a first instance of the social network application is executing on the mobile computing device of the regarding individual.
In a further related embodiment, the fabric identification application is a portion of a social network application, wherein a first instance of the social network application is executing on the mobile computing device of the regarding individual and a second instance of the social network application is executing on the mobile computing device of the specific user.
In another embodiment, the invention provides a server-based method for identifying a specific article of fabric in a social context, the method comprising computer processes including:
receiving at a server system a request message, from a first instance of a fabric identification application executing on a mobile computing device of a regarding individual who has caused the mobile computing device to capture an image in which at least a part of the specific article appears, the request message containing identity data corresponding to a pattern on the article, the pattern encoding a unique identification code associated with the specific article and the pattern configured to render the article contextually recognizable,
processing by the server system the identity data, in relation to a database system storing identification codes for a set of articles in relation to corresponding user information, to identify a specific user associated with the specific article of fabric; and
sending by the server system a reply message to the application executing on the mobile computing device that, consistent with permissions of the specific user, includes third party-defined content.
In another embodiment, the invention provides a method for alerting a regarding individual having a first mobile computing device that an encoded pattern is present in an article of clothing of a specific user having a second mobile computing device, the encoded pattern not discernible to an ordinary unaided human observer, the method comprising initiating wireless communication from the first mobile computing device to the second mobile computing device, the wireless communication including an alert viewable on a fabric identification application executing on the first mobile computing device that the encoded pattern is not discernible to the ordinary unaided human observer.
In another embodiment, the invention provides a fabric onto which has been impressed a pattern, the pattern including at least one repeatable unit wherein the repeatable unit includes, in a first direction, a first leading strip and a first set of associated data strips and, in a second direction, a second leading strip and a second set of associated data strips, the second direction distinct from the first direction, each data strip having a set of stripes shaped to convey data, each stripe defined by a first transition edge from a first color to a second color and a second transition edge from the second color to a third color, the first transition having a distance D1 from a leading edge of the data strip and the second transition having a distance D2 from the leading edge of the data strip, wherein D2>D1, and D1 and D2 collectively encode data. Optionally, this embodiment includes all of the features associated with the embodiment described in the first paragraph of this Summary of Embodiments. Also optionally, the first and second directions correspond to local directions associated with a warp and a weft of the fabric respectively, and the warp and weft directions vary over at least a portion of the fabric.
In a related embodiment, the first and second directions are orthogonal to one another. Optionally, the first direction is vertical and the second direction is horizontal.
In another related embodiment, the first set encodes data distinct from the data encoded by the second set.
In yet another related embodiment, each of the first and second leading strips comprises stripes of the first and second color, the first leading strip having a stripe of the first color with a minimum width W1 and the second leading strip having a stripe of the first color with a minimum width W2, wherein W1 does not equal W2.
In another related embodiment, the repeatable unit has no more than three data strips in the first set and no more than three data strips in the second set. Optionally, the repeatable unit has a dimension of at least 75 mm in the first direction and a dimension of at least 75 mm in the second direction.
In yet another related embodiment, the repeatable unit has a dimension of at least 75 mm in the first direction and a dimension of at least 75 mm in the second direction.
In another related embodiment, the surface has a dimension and the pattern includes no more than five repeatable units along the dimension. Optionally, the surface has a dimension and the pattern includes no more than ten repeatable units along the dimension.
In yet another related embodiment, the repeatable unit has no more than five data strips in the first set and no more than five strips in the second set. Optionally, the repeatable unit has no more than eight data strips in the first set and no more than eight strips in the second set.
In another embodiment, the invention provides a tangible item onto which has been applied a pattern, the pattern including at least one repeatable unit wherein the repeatable unit includes, in a first direction, a first leading strip and a first set of associated data strips and, in a second direction, a second leading strip and a second set of associated data strips, the second direction distinct from the first direction, each data strip having a plurality of stripes shaped to convey data, each stripe defined by a first transition edge from a first color to a second color and a second transition edge from the second color to a third color, the first transition having a distance D1 from a leading edge of the data strip and the second transition having a distance D2 from the leading edge of the data strip, wherein D2>D1, and D1 and D2 collectively encode data.
In another related embodiment, the repeatable unit has no more than three data strips in the first set and no more than three data strips in the second set. Optionally, the repeatable unit has a dimension of at least 75 mm in the first direction and a dimension of at least 75 mm in the second direction.
In yet another related embodiment, the repeatable unit has a dimension of at least 75 mm in the first direction and a dimension of at least 75 mm in the second direction.
In another related embodiment, the surface has a dimension and the pattern includes no more than five repeatable units along the dimension. Optionally, the surface has a dimension and the pattern includes no more than ten repeatable units along the dimension.
In yet another related embodiment, the repeatable unit has no more than five data strips in the first set and no more than five strips in the second set. Optionally, the repeatable unit has no more than eight data strips in the first set and no more than eight strips in the second set.
In another embodiment, there is provided a method of decoding an image of a pattern in fabric, the pattern encoding text, the image having been captured by a camera, the method carried out to capture the encoded text and employing computer processes. In this embodiment, the method includes:
selecting a first portion of the image for analysis;
slicing the image into sub-images; and
processing each of the sub-images.
In turn, processing each of the sub-images includes:
locating edge boundaries of the sub-image;
mapping the edge boundaries into a set of symbols; and
determining for each decoded symbol set, determining whether it applies to a weft or to a warp.
In a further related embodiment, processing each of the sub-images further comprises validating each symbol set for closeness of fit and validating each symbol set against a set of design rules. In another related embodiment, processing each of the sub-images further comprises collecting votes for symbol candidates for each sub-image and determining a wining symbol candidate for reach sub-image.
In another embodiment there is provided an article, the article being a selected one of a set of articles, each article of the set comprising a fabric and being associated with a unique identification code, the selected article having a pattern, distributed over at least 10% of an exposed surface of the selected article, the pattern encoding the identification code associated with the selected article, wherein the pattern is incorporated into a representational aesthetic environment.
In another embodiment there is provided a wearable article comprising a fabric, the fabric including a set of fiber transmitters embedded therein, the transmitters operating in a set of wavelengths selected from the group consisting of visible, invisible, and combinations thereof, the transmitters configured to transmit information that can be detected by a mobile computing device, directed to the wearable article, and executing a suitable application.
In yet another embodiment there is provided a method of decoding data transmitted from a set of fiber transmitters embedded in a fabric of a wearable article, the data being captured in a set of images by a camera of a mobile computing device, the method utilizing computer processes carried out by an application executing on the mobile computing device, the processes comprising: selecting a first portion of the image for analysis; dividing the image into sub-images; and processing each of the sub-images, such processing including: determining possible transmitting source within the sub-image; assigning a specific tracker to follow the source through subsequent images to read the data; and determining for each tracker, whether a valid data stream is present, and, if so, decoding the stream; otherwise, discarding the data and returning tracker to the resource pool.
In a further related embodiment, determining whether a valid data stream is present includes validating each received symbol set against a set of design rules.
In another embodiment, there is provided a computer-implemented method of authenticating communication between a first mobile device detecting an encoded sequence from an article of fabric having embedded therein a set of fiber transmitters, the article worn by a specific user having a second mobile computing device, the method utilizing computer processes executed by a server system. The processes of this embodiment include: receiving by the server system a connection request from the first mobile computing device, such connection request including the encoded sequence; transmitting by the server system a follow-on connection request to the second mobile computing device with a one-time verification code that is downloadable by the second mobile computing device, the second mobile computing device configured to cause the set of fiber transmitters to transmit the verification code for detection by the first mobile computing device; receiving by the server system from the first mobile computing device a signal corresponding to the verification code detected by the first mobile computing device; determining by the server system whether there is a match between the verification code transmitted to the second mobile computing unit and the verification code received by the server system from the first mobile computing unit, and, in the event of a match, sending a connection signal to at least the first mobile computing device to authenticate communication between the first mobile computing device and the second mobile computing device.
Unless the context otherwise suggests, in these drawings, like elements in related figures are indicated by like numerals. The drawings and the elements depicted therein are not necessarily drawn to consistent scale or to any scale.
The foregoing features of embodiments will be more readily understood by reference to the following detailed description, taken with reference to the accompanying drawings, in which:
In
In
In
In
In
In
Definitions. As used in this description and the accompanying claims, the following terms shall have the meanings indicated, unless the context otherwise requires:
A “plaid code” is a two-dimensional plaid pattern, encoding information in a fabric article, based in part on geometry of strips incorporated into the pattern, as explained in paragraphs 186-209 and 217-227 of the present patent application and in paragraphs 158-181 and 189-199 of the Prior Application.
A “representational aesthetic environment” is a graphical rendering (as in the case of art that is “representational”) that evokes objects that exist in the physical world.
A “fabric” is a flexible material that is made of woven or knitted yarn or threads or filaments or of felted fibers.
A “set” includes at least one member.
The “exposed surface” of an article is a portion of the entire surface of an article that is normally visible to an observer when the article is in normal use. In cases where the article is a garment worn by a human, the exposed surface of the article includes the front, back, and sides of the garment, but only those portions thereof that are normally visible to an ordinary observer when the garment is worn. (For this definition, we assume that the wearer of the article is standing and that the observer has an opportunity to walk 360 degrees around the wearer, and is approximately the same height as the wearer.) In a case where the garment is a coat, for example, the exposed surface of the garment includes the front, back, and sides of the coat, but excludes (a) the under-arm region of the coat, (b) the contiguous portion of the sleeve of the coat that faces the coat when the arms of the wearer of the coat are hanging straight down, and (c) the portion of the side of the coat that is covered when the arms of the wearer of the coat are hanging straight down. The exposed surface of the coat also excludes, for example, the entire interior of the coat.
A pattern encodes, in an article, an identification code in a “large format” wherein each item of information content in the identification code is represented in the pattern by a set of attributes wherein each attribute has a minimum dimension of 1 mm.
A pattern that is “configured to be readable and decodable by a mobile computing device” need not in practice actually be read and decoded by the mobile computing device as long as the pattern is capable of being read and decoded by the mobile computing device. Thus, in some applications, equipment other than a mobile computing device can be used to read and decode the pattern, such as a computer coupled to a digital imaging device having a telephoto lens.
A specific article of fabric is “contextually recognizable” if a mobile computing device having a typical camera with a resolution of at least 8 megapixels can read, while the article is in normal use and at a distance of at least 2 m from the mobile computing device, a pattern on the article that enables identifying the article in a manner that distinguishes the specific article from other articles.
A “mobile computing device” is any device selected from the group consisting of a smartphone, a tablet computer, and a portable computer, such device including a camera.
A pattern on an article of fabric encoding a unique identification code is “not discernable” to an ordinary unaided human observer if (a) this observer is unable to see any features of the pattern (as, for example, when the pattern exists only in the infrared region of the spectrum) or (b) features of the pattern do not appear to this observer as encoding information (as, for example, when the pattern is visible to this observer but appears to be either random or regular).
A “computer process” is the performance of a described function in a computer using computer hardware (such as a processor, field-programmable gate array or other electronic combinatorial logic, or similar device), which may be operating under control of software or firmware or a combination of any of these or operating outside control of any of the foregoing. All or part of the described function may be performed by active or passive electronic components, such as transistors or resistors. In using the term “computer process” we do not necessarily require a schedulable entity, or operation of a computer program or a part thereof, although, in some embodiments, a computer process may be implemented by such a schedulable entity, or operation of a computer program or a part thereof. Furthermore, unless the context otherwise requires, a “process” may be implemented using more than one processor or more than one (single- or multi-processor) computer.
To “impress a pattern” onto fabric includes establishing a pattern on the fabric by weaving or knitting, applying the pattern to the fabric by printing or embossing or other means, and adhering to the fabric a decal having the pattern. To “impress a pattern” onto a tangible item includes establishing a pattern on the tangible item by weaving or knitting (when compatible with the nature of the item), applying the pattern to the item by printing or embossing or other means, and adhering to the item a decal having the pattern.
A “leading strip” of a repeatable unit of a pattern impressed on a tangible item is a strip having spatial properties that mark the presence of the repeatable unit on the item. The leading strip is used to identify a set of associated data strips. Although a leading strip can be considered to fall at the boundary of the repeatable unit, in fact, it is valuable, for decoding purposes, to consider that the actual position of the leading strip in the repeatable unit is arbitrarily located. The reason for this conceptualization is to address a circumstance wherein the leading strip cannot conveniently be recognized at a boundary of the unit.
A “color” of a pattern refers to a characteristic spectral content of the pattern involving electromagnetic energy in any or all of the visible, ultraviolet, or infrared spectra, and any other spectra of electromagnetic energy, in which the energy is subjected by the pattern to a process selected from the group consisting of reflection, absorption, transmission, and combinations thereof.
In the case of “a stripe defined by a first transition edge from a first color to a second color and a second transition edge from the second color to a third color,” the third color need not be distinct from the first color. In such a case, the stripe would have a width defined by the second color and appear against a background defined by the first color. On the other hand, the first color can also be distinct from the third color.
A “tangible item” includes any item having a physical existence, including an item of fabric, a display of a computing device, a billboard, a pamphlet, a briefcase, a backpack, a messenger bag, a piece of luggage, etc.
A unit of a pattern is “repeatable” when (i) the unit includes a first set of components of which each component includes a leading strip and a set of associated data strips conforming to a symbol constellation distinct to such set of components and (ii) further instances of the set of components may optionally be present, but, if present, need not be oriented in the same direction or have the same overall size as the first set of components.
In some embodiments, the fabric identification application can be a module of another application, including social network applications such as Facebook, Twitter, Instagram, Snapchat, and the like. For example, the fabric identification module of a social network application, such as Facebook, can scan and process the pattern on the article of clothing 102 to read the embedded code in the pattern. The module can then send the decoded information to a server system connected to the specific network application (in this case, a Facebook server system). In some embodiments, the Facebook server can communicate with the server system 302 to request authorized information related to the article of clothing 102. If the user 616 has authorized information to be shared, the information can be transmitted back to the mobile computing device 106 of the regarding individual 803.
In some embodiments, the regarding individual 616 using the mobile computing device 106 gives the fabric identification application access to certain data from a social network account, such as his or her Facebook account. The fabric identification application can send, to the server system 302, the embedded code in the pattern of the article of clothing 102 together with data from the Facebook account of the user 616. The server system 302 can determine what data related to the article of clothing 102 to return to the mobile computing device of the regarding individual based on the specifics of the data from the Facebook account of user 616.
The returned authorized data can be provided to a third-party application 810, such as Facebook, and in step 812, the user of the mobile computing device 106 may be redirected to the third-party application 810. In some embodiments, a third-party application 810 (such as Facebook) itself can be used for authentication (using standard third-party authentication methods). Optionally, in step 813, the scanned image of the article of clothing 102 can be processed, by an application specific to the server system 302 or by a third-party application 810 (in this example, Facebook).
Note that this pattern 1006, 1008 is distributed over at least 10% of the exposed surface of the article of clothing 1004, allowing the pattern 1006, 1008 to be scanned by a mobile computing device at a distance to return information about the user or wearer of the article of clothing 1004. In embodiments, for a pattern to be resolved by the camera of mobile computing device, the minimum dimension of the attributes of the barcode is at least 1 mm. In other embodiments, for a pattern to be resolved by the camera of mobile computing device, the minimum dimension of the attributes of the barcode is at least 2 mm. In yet other embodiments, for a pattern to be resolved by the camera of mobile computing device, the minimum dimension of the attributes of the barcode is at least 3 mm. Note that the width of the narrow bars of the pattern 1006, 1008 in
In some embodiments, other standard one-dimensional barcode symbologies can be used, such as Code 128, UPC, EAN, etc. Further, barcodes can be customized such that the widths of bars and spaces could be chosen to improve the aesthetics of the garment. For example, the spaces between the bars can be made wider to create a more subtle design that looks less like a standard barcode. In some embodiments, the barcodes can be further customized such that the color of the bars and spaces can be used to encode information.
Note that the patterns may be applied to the fabric of the articles of clothing described herein in a variety of manners, including by weaving into the fabric in a manner so as to be integral with the fabric, by printing, and/or by applying a carrier in which the pattern has been embedded to the fabric by means of an adhesive. Note also that articles of clothing can include standard forms of dress, including shirts, jackets, pants, shorts, dresses, skirts, outerwear, and accessories such as hats, bags, umbrellas, and the like.
In some embodiments, the pattern in or on the article of clothing can include an error correction code (ECC), such as a forward error correction (FEC) code. This can ensure that any errors that may occur during a scan of the pattern by the mobile computing device can be detected and corrected. FEC can be used to encode the unique identification code in the pattern in a redundant manner to limit errors in scanning and decoding. Further, in some embodiments, the pattern may be repeated to ensure that scanning is more reliable in less than ideal situations, such as when the camera of the mobile computing device can scan only a portion of the pattern on the article of clothing. In the example used in
In some embodiments, the unique identification code can be linked to third party-defined content provided by marketers, campaigns, organizations, institutions, and the like. For example, the content that appears on the mobile computing device of a regarding individual as a result of scanning a pattern on an article of clothing can be an advertisement to a product or service. In some embodiments, the unique identification code can be linked to a plurality of content items including user-defined content and third party-defined content. For example, a first portion of the interface to the fabric identification application can be reserved for the profile of the specific user wearing the article of clothing with the scanned pattern while a second portion can be dedicated to an advertisement.
In some embodiments, the network includes a first mobile computing device of the specific user wearing the article of clothing and a second mobile computing device of the regarding individual. The network can allow unique isomorphic exchange of customized messages between the first mobile computing device and the second mobile computing device.
In some embodiments, the server system 302 can track usage by the regarding individual of the fabric identification application or module. This usage can be logged in a database by the server system. The log can have usage information such as when the regarding individual scanned a specific user's article of clothing. The specific user can view the log of scans of his or her article of clothing. In some embodiments, the regarding individual may not be able to view decoded information related to the scanned article of clothing unless the specific user has released his or her information. For example, the specific can review the log after some time of wearing his or her article of clothing in a social setting and determine if each regarding individual can view the decoded information encoded in the pattern of the article of clothing.
In an exemplary embodiment, codes that are embedded within clothing can be decoded differently based on the profile type of the app user that scans the code. For example, such a code may be particularly suited for a conference or tradeshow environment. A user wearing an encoded shirt or jacket can be scanned by people in a conference, such as professional contacts, friends, or members of the public. The user can pre-set the types of information that each of these categories of people may see. For example, the user may categorize the conference attendee list (or a subset of) as “professional contacts”. When a professional contact scans the encoded shirt or jacket, he or she may be linked to the user's LinkedIn page, prompted with a meeting invite, provided with a booth location at a trade show, and the like. In an embodiment, the user may link LinkedIn contacts to a “professional contacts” list in his or her profile so that anyone from the user's LinkedIn community can view the same material. Similarly, the user can add lists of friends or friend groups which, upon decoding the encoded clothing, may be privy to the user's Facebook profile, music playlists, and the like. For a member of the public, the user may link to a website, advertisement, blog, charity organization, and the like. Thus, in the above described example, the same code can be decoded in three different ways depending on who scans the code.
In some embodiments, the profile of the scanning user may be automatically provided to the server that is coupled to the scanning user's mobile device. The server may then determine to which category the scanning user's profile belongs based on, for example, a lookup table (such as the conference attendee list in the above example). The categories may be pre-set by the user of encoded clothing as described above or may be determined by the server. In some embodiments, the user of the encoded clothing may receive a notification on his or her mobile device to categorize the profile of a particular scanning user. In some embodiments, once a profile of a scanning user has been categorized (for example, into an “acquaintance” category), the user of the encoded clothing can re-categorize (or be prompted to re-categorize) the profile of the scanning user to another category (such as “close friend” category).
Returning to the example of a conference or tradeshow environment, the user may be prompted to register his or her encoded clothing to a particular profile at the start or registration phase of the conference. In an exemplary embodiment, even if a user does not have encoded clothing, his or her profile may be registered at a conference to facilitate social connections between attendees. For example, the registrations may be used in a game at a gathering or conference—such as a game to encourage attendees to scan as many people and collect rewards.
In an exemplary embodiment, information can be communicated to users of encoded clothing.
In an exemplary embodiment, encoded apparel can be used for navigation purposes. One or more users wearing encoded apparel can be tracked and provided information to move around a space or a building based on the encoding. For example, indoor navigation has been a particular challenge to conventional means such as GPS. By positioning scanners around a building, a person wearing encoded apparel can be scanned and information can be provided (by wireless communication such as WiFi, Bluetooth, cellular, radio, etc.) in real time or near real time to a mobile device. The information can include directions, maps, items of interest, and the like. A further advantage of such a scheme is that different information can be provided to different people. For example, advertisement can be targeted to specific users wearing encoded apparel in a commercial space (such as a shopping mall, downtown area of a city, etc.). An article of encoded apparel may be encoded with the profile of the user having information such as age, gender, residence, previous purchases, likes, dislikes, etc. This information can be used to better guide the particular user to areas of a commercial space suited to his or her tastes.
In another exemplary embodiment, encoded apparel can be scanned by aerial vehicles equipped with a scanner such as helicopters, planes, unmanned aerial vehicles (UAVs), drones, and the like. These aerial vehicles can provide information to the wearer of the encoded apparel. For example, in a rescue situation, a UAV may be able scan a side of a mountain or the woods for encoded apparel that may be otherwise difficult to detect. The UAV can attempt to transmit information to the wearer or use the location of the encoded apparel to aid a rescue effort.
In another exemplary embodiment, encoded apparel can be used for collision prevention. A vehicle equipped with a scanner may be able to detect the presence of a pedestrian having encoded apparel before the driver is able to see the pedestrian. For example, encoded apparel that can include reflective materials or materials with optical properties outside of the visible spectrum. Such clothing can be scanned by a scanner on a vehicle and processed to provide feedback to the driver or control system of the vehicle to avoid a collision with the pedestrian.
In some embodiments, the encoding of an article of clothing can be changed by the user in real time or near real time. For example, the user can access a portal to change profile information linked with the particular article to convey different information at different times. In this way, a user can communicate with a scanner at will.
In some embodiments, certain encoded fabrics can be “public use” articles in that they may be used a first user and encoded with a first information and subsequently released to be used by a second user and encoded with a second information, and so on. For example, an encodable life vest may be rented by a kayaker for a duration of time. At the rental registration, the life vest may be encoded with the kayaker's personal information in the case of an emergency such that, as previously described, a rescue vehicle is able to locate the kayaker. In another example, a user can communicate messages to a scanner. A user may change the encoding of his or her clothing based on the types of social settings he or she is in on a particular day. For example, the user may encode a first message or profile during the day time or in a professional setting and encode a second message or profile in the evening or casual setting. In another example, a user can pre-program messages and profiles such that the encoding of apparel changes over time or based on the location of the user. The server system having the encoded information for a particular article of clothing may be triggered to change the encoded information based on feedback from the user or the user's mobile device. The mobile device may provide information such as location of the user. The location of user, as described, can determine the type of information that is encoded in an article of clothing.
In an exemplary embodiment, military apparel can be encoded. For example, clothing with a camouflage pattern may be encoded such that a soldier wearing such clothing can be scanned in the field. A scanner used in the field can be configured to detect “friend v. foe” status, identity, or other information about the soldier. The scanner may be also used for rescue or recovery missions as described above. In some embodiments, weapons can be outfitted with a scanner to determine whether the weapon should fire upon trigger. In other words, the scanner may provide a control signal to allow a user to trigger the weapon.
In an exemplary embodiment, encoded apparel can be used to get through security checkpoints. For example, queues for security checkpoints at airports and stations are regularly held up due to the processing time needed to scan a person and their belongings. However, a person can don encoded apparel that is provides sufficient information to an agency such as the Transportation Security Administration (TSA) of the United States to process them at a faster rate than a person without encoded apparel.
In another exemplary embodiment, a unique code can be assigned to a group of articles owned by a single user instead of a unique code per article. For example, a hiker may choose encode all of his or her clothing or accessories with the same code. In another example, a unique code can be assigned per user, such as a soldier, such that the particular code is used in the camouflaging pattern in any or all of the soldier's gear. In an exemplary embodiment, a particular code can consist of a user code (which can be the same for a group of articles) and an article code (which can be unique per article of clothing or gear).
In an exemplary embodiment, the code can be stitched on or beaded onto an article. For example, a pattern of beads can encode information in similar ways to other methods of impressing codes described herein. In some embodiments, a craftsperson can make and encode his or her own apparel or accessories.
In an exemplary embodiment, an animal-skin pattern may be encoded with information. This can include fashion patterns leopard print, zebra print, snakeskin print, alligator skin print, and the like.
In some exemplary embodiments, apparel can be encoded with active fibers or materials, such as fibers that change color or properties based on heat exposure (thermochromic fibers) or electric current, voltage, or power (electrochromic fibers). For example, fiber affected by temperature can be used to encode at least two different data. The fiber in this example can be configured to have a first state at temperature T1 and a second state at temperature T2. In another example, encoded apparel having electrochromic fibers can be coupled to a controller that can determine amounts of current, voltage or power to be applied to the fibers. A user wearing the encoded apparel can determine the encoding by manipulating the controller. In some embodiments, the controller of the encoded apparel may be coupled, with or without a wire, to the user's mobile device, through which the user may affect changes to the fibers.
Note that any two or more of the methods or technologies of encoding of apparel may be combined or layered. In this way, the encoding may be enhanced or more data can be encoded in an article of clothing.
Plaid (also referred to as ‘tartan’) is an exemplary aesthetic pattern that can be encoded with information. Typically, a plaid pattern includes horizontal and vertical bars of different thicknesses, spacing, colors, and opacities. In an exemplary embodiment, a two-dimensional code can be incorporated as part of a plaid pattern. In other words, a plaid pattern can constitute a two-dimensional code carrying information. In some embodiments, one or more aspects of a plaid pattern can be used to encode information such that the code is not discernable to a human but is decodable by a processor. Such an encoded plaid pattern may be hereinafter referred to as a “plaid code”. An exemplary plaid code can include a first set of two or more strips in a first direction and a second set of two or more strips in a second direction, where the first set and second set are positioned relative to one another in the plane of a material, such as a fabric or a surface of a tangible item. For instance, the first set and second set can be positioned orthogonally relative to one another. In another instance, the first set and second set can be positioned at any angle greater than 0 degrees and less than 90 degrees. For instance, an encoded argyle pattern can include a first set of strips at an angle 30-60 degrees relative to the second set of strips.
In an exemplary embodiment of a plaid code, a plaid pattern is established by use of a “repeatable unit” that is repeated contiguously in or over a fabric. A plaid code implemented in this way can be virtually undetectable by the untrained human eye. The subtlety of such encoding promotes aesthetic desirability of the encoded article of clothing.
The distribution of the repeatable unit of the plaid code can further the goal of inconspicuousness. For example, the repeatable unit may be distributed over at least 70% of the visible portions of an article of clothing or tangible item (such as a purse, blanket, or furniture cover). In other cases, the repeatable unit may be distributed over at least 50% of the visible portions of an article of clothing or tangible item.
In an exemplary embodiment, the aesthetic component of the plaid code can be inspired initially from an existing plaid pattern or be composed by a plaid designer. From an established aesthetic component, the code component can be implemented.
In this example, each of the associated strips 2606a-2606c and 2608a-2608c correspond to a “symbol” having two transition edges. The first transition edge 2618 marks the line of transition from a first color to a second color. Note that x1 corresponds to a distance from a leading edge 2620 of the associated strip to the first transition edge 2618. The second transition edge 2622 marks the line of transition from a second color to a third color. Note that y1 corresponds to a distance from the leading edge 2620 of the associated strip to the second transition edge 2622. A first stripe in an associated strip may be defined by the leading edge 2620 and the first transition edge 2618. A second stripe in an associated strip may be defined by the first transition edge 2618 and the second transition edge 2622. In the example shown in
In an exemplary embodiment, the shifting of the first set of strips in the first direction relative to the second set of strips in the second direction can encode information. In another exemplary embodiment, the colors, and their shades, used within the strips can further encode information.
The above described encoding has advantages of being latent or otherwise hidden from detection by the human eye. However, in many embodiments, to enable proper decoding of the plaid code, the following exemplary guidelines are used:
In some embodiments, to address the guideline (i) of isolatability of the repeatable unit, the dark stripe 2610 (or a stripe of a first color) of the leading strip 2602 is restricted to have a narrow width compared to the stripes in the associated strips 2606a-2606c (see
In some embodiments, to address the guideline (ii) of distinguishability of the strips of the first direction from the strips of the second direction, a light stripe 2614 of the leading strip 2602 can be included. Further, the width of the light stripe 2614 of the first direction 2404a is different from the width of the light stripe 2616 of the second direction 2404b (see
As previously discussed, the leading strip may be positioned in any part of a repeatable unit. For decoding, however, such positioning may present a challenge in correctly identifying the direction of the associated strips. Thus, in some embodiments, to address the guideline (iii) of the plaid code's being read in any orientation, the validity of the encoded symbols can be assessed by the processor coupled to the scanner.
The transition edges x1a′ and y1c′ of set 3001 can be defined by the following relationships:
x
1a′(1−b)−y1c
y
1c′=(1−b)−x1c
where b is the width of the light padding stripe within the leading strip 2602. The processing of the plaid code ensures that if (x1c, y1c) is a valid symbol and that the possible symbol (x1a′, y1a′) is not a valid symbol. This ensures that a valid code exists in one direction (such as the direction along the set 3000) and not in the mirror direction (such as the direction along set 3001).
Design rules can be characterized as the aesthetic component of a plaid code, as described in detail above. In an embodiment, design rules can include constraints on choosing certain symbols in the x-y space for one or more of the strips of the repeatable unit. In some embodiments, the results of the decoded strips may be checked against a database of aesthetically acceptable plaid patterns. For example, an exemplary database entry may include the following: a set of strips in a direction of a repeatable unit containing a first strip with a first stripe having a width of 2 mm of a first color, a second stripe having a width of 10 mm of a second color, and a third stripe having a width of 21 mm of a third color; a second strip with a first stripe having a width of 7 mm of a first color, a second stripe having a width of 25 mm of a second color, and a third stripe of 1 mm of a third color; and a third strip with a first stripe having a width of 1 mm of a first color, a second stripe having a width of 25 mm of a second color, and a third stripe having a width of 7 mm of a third color. Such entries create visually pleasing dimensions while maintaining readability. In process 3218, the results of the decoded strips are combined to determine if there is a ‘winning code’. In an embodiment, the ‘winning code’ can be the result that is the closest match to an entry in a lookup table. If, at process 3220, a winning code is determined, then the winning code is returned to the calling function in order to trigger additional application behavior, in process 3222. If no unit cells are located at process 3210 or no winning code is determined at process 3220, then the message “Code Not Found” is provided to the calling function at process 3212, and control passes back to the start of the decoding process (process 3202). In some embodiments, the calling function provides the message to the user interface to provoke the user to rescan the image.
At process 3318, the strips in each direction of the repeatable unit are decoded, by the processor, to determine the corresponding symbols. At process 3320, the symbols are validated for ‘goodness of fit’ and, at process 3322, the code is validated against design rules by the processor. At process 3324, the processor collects votes per portion of the image. The votes are cast by features of the image seeking compatible model parameters. This scheme is used in an edge detection technique called the Hough transform. At process 3326, the processor applies voting rules (of the edge detection technique) to determine if there is a winning code. If, at process 3328, a winner is not selected, then control passes to process 3316. If, at process 3328, a winner is selected, then, at process 3330, the winning code is returned to the calling function to trigger additional application behavior. In an embodiment, additional application behavior can include displaying the decoded message of the plaid code on the user interface. In another embodiment, the behavior can include proving the winning code for further processing by, for example, a social media server system.
In an exemplary embodiment, the plaid code can be configured such that a scanner, configured to scan such a code, can collect portions of two or more repeatable units to successfully decode the plaid code. For example, the scanner may collect a first portion of a first repeatable code and a second portion of a second repeatable code. If the portions have any overlap or can be pieced together side-by-side to reconstruct a single repeatable unit, then the collected portions can be processed to enable efficacious decoding. If the features, such as folds, pockets, wrinkles, etc., of an article of clothing or tangible item force the repeatable unit to be represented in portions less than one whole unit, the scanner may be able to “piece” together the repeatable unit for decoding. Returning to the example of the backpack 2502, some features of the backpack may not contain a whole single repeatable unit (such as the sides of the backpack) and thus may require the “piecing” together of the unit for successful decoding.
In another exemplary embodiment, the scanner of the plaid code is configured to decode the first set of strips in the first direction separately from the second set of strips in the second direction. In another exemplary embodiment, the scanner is configured to decode the combination of the first set and the second.
In another exemplary embodiment, the size of the repeatable unit can be determined by a minimum distance required for imaging, and ultimately decoding, the plaid code. For example, a mobile phone having a camera positioned too close to the article of clothing having the repeatable unit and, therefore, may not be able to successfully decode the plaid code. In an exemplary repeatable unit, there can be four strips having equivalent widths (1 leading strip and 3 data strips). The leading dark stripe is about 10% of the symbol width, which makes it 2.5% of the repeatable unit width (in one direction), or the repeatable unit is 40 times the width of the leading dark stripe. If the leading dark stripe is 25 pixels, repeatable unit would be 1000 pixels, approximately filling the display of a smartphone. This is unlikely in a real use case. On the other hand, if the leading dark stripe is 1 pixel, the repeatable unit is 40 pixels. This is the resolution limit for the display and would result in a repeatable unit that is barely 4% of the display width. Thus, the actual operation range is in between these two extremes.
Exemplary Application for Interacting with Encoded Apparel and Tangible Items
A user can be enabled to interact with encoded articles, such as apparel or tangible items, via a user interface coupled to a scanner, such as a camera. An application executing on a mobile electronic device, such as a smartphone, tablet, laptop, notebook computer, and the like, can be used to interact with the encoded articles.
Similarly,
At process 4218, it is determined whether the decoded symbol is for the weft or for the warp. Because this embodiment does not require a fixed set of orientation directions for successful decoding, the directions for weft and warp need not necessarily be constant. In other words, the local directions associated with a warp and a weft of the fabric can vary over at least a portion of the fabric.
At process 4420, the symbols are validated for closeness of fit (to assure that a symbol is not selected that is outside a range of dimensional tolerances for selection) and, at process 4222, the code is validated against design rules by the processor (to assure that selection of a given code complies with system context requirements, such as check-sum or other error checking methods). At process 4224, the processor collects “votes” for symbol candidates for each sub-image. (Although up to this point we have discussed the processes as if only a single symbol candidate is presented as part of the decoding processes, in fact the system allows for a plurality of symbol candidates.) Criteria giving rise to selection of a given symbol candidate as the decoded result of a given pattern element are evaluated to produce a number of “votes” or weights in favor of selection of a given symbol candidate.
At process 4226, the processor applies voting rules to determine if there is a winning symbol set. If, at process 4228, a winner is not selected, then control passes to process 4216. If, at process 4228, a winner is selected, then, at process 4230, the winning symbol set is returned to the calling function to trigger additional application behavior. In an embodiment, additional application behavior can include displaying the decoded message of the code on the user interface. In another embodiment, the behavior can include providing the winning code for further processing by, for example, a social media server system. In a further related embodiment, the processor is configured to handle a situation, as illustrated in
An example of evaluating the votes provided for symbol candidates is provided in Table 1:
In various embodiments, one or more image frames capturing one or more encoded articles can be modified based on one or more codes contained in the encoded article(s) to provide an augmented or virtual reality experience. For example, a graphical element can be overlayed over part or all of an image frame, where the graphical element is selected based on one or more codes contained in the encoded article(s). The graphical element can include any type of graphic that can be displayed in an image frame, such as, for example, textual information, a digital image in any suitable format (e.g., gif, tiff, etc.), a computer-generated icon, an avatar, an animation (with or without sound), an “emoji,” or other type of graphic. In appropriate contexts, the graphical element may be fixed (e.g., pre-selected and stored) or may be generated or updated in real-time. Multiple graphical elements may be displayed simultaneously based on multiple codes captured in the image frame, e.g., graphical elements for multiple people or items identified in the image frame.
In some embodiments, the owner of an encoded article (e.g., an article of clothing, a backpack, etc.) may be permitted to specify the graphical element to be displayed when the encoded article is captured in one or more image frames. For example, the owner of the encoded article may specify a photograph or avatar to be displayed.
In some embodiments, the graphical element can be interactive. For example, a user may be permitted to select or otherwise interact with a graphical element, e.g., to contact or obtain additional information about the owner of the encoded article associated with the graphical element. Additionally or alternatively, when multiple graphical elements are displayed, the graphical elements can be programmed to interact either under the control of a user or independently in order to provide additional augmented or virtual reality experiences.
In some embodiments, the position and/or size of a graphical element can be updated in real-time, such as to reflect changes across a sequence of image frames (e.g., changes in the position of a person wearing an encoded article). In this respect, the image processor may be configured to identify the location and visible size of a code in each image frame, select an appropriate graphical element based on the code (e.g., obtain a user-specified graphical element from a database), resize the selected graphical element if needed based on the visible size of the code in the image frame, and overlay the selected and optionally resized graphical element on the image frame based on the location of the code in the image frame.
It should be noted that augmented and virtual reality experiences can be used in a wide range of applications, including, without limitation, entertainment applications (e.g., social media and video games), security/tracking applications (e.g., identifying security personnel in security videos), and military applications (e.g. monitoring soldiers on a battlefield).
In
In
In
Pattern in Aesthetic Environment
Accordingly, the representational aesthetic environment of
In another set of embodiments, the present invention can be used to inspire, not simply social interaction using social networks and the like as discussed herein and in the Prior Application, but also e-commerce. We begin with
Fabrics with Embedded Fiber Transmitters
In another set of embodiments, there is provided an article including a fabric in which is embedded a set of fiber transmitters, operating in visible or invisible wavelengths, that are configured to transmit information. In one embodiment, a single fiber can include one or more light-emitting diodes (LEDs) that typically are no wider than the width of the fiber itself, thereby making the LED(s) virtually undetectable when not turned on, and one or more of such fibers can be embedded in a fabric. In another embodiment, a single fiber can change a visual property such as color or opacity, and one or more of such fibers can be embedded in a fabric. In one embodiment, as described herein and in the Prior Application, the article is a selected one of a set of articles, each article of the set comprising a fabric and being associated with a unique identification code; in that embodiment, the transmitted information includes the unique identification code. However, because the fiber transmitters are active elements, the transmitted information can be changed at will according to needs or context. Virtually any type of data can be encoded in a transmission, e.g., a unique identification code (e.g., identifying the fabric or the wearer), an emergency beacon (e.g., indicating that the wearer is in distress or needs assistance), streaming media (e.g., a video or music stream), a file identifier, a web address, a secret message, etc. Signals can be transmitted on a continual basis or only upon the occurrence of a particular event (e.g., activation by the user, such as in an emergency, or activated automatically, such as in a “person down” situation). Different codes can be transmitted for different types of events under user control or otherwise. In any case, the transmitted data are configured to be read and decoded by a receiver such as a mobile computing device, typically in a manner wherein the selected article is contextually recognizable. In a related embodiment, the encoded information is represented in the on-off pattern of the fiber transmitters, wherein the fiber transmitter typically operates at 60 Hz to 120 Hz and can be varied so fast that the on-off pattern will be undetectable by the naked eye (e.g., above around 80 Hz). In a further related embodiment, the fiber transmitters of the selected article are visible from the front and the back of the selected article.
In
In
In
Exemplary basic modules executing on an iPhone to implement the foregoing logical flow are attached as Exhibits A and B (for the light code reader) and Exhibits C and D (for the light code tracker). Each of these Exhibits is hereby incorporated herein physically and by reference in its entirety.
Accordingly, in various of these embodiments, there is provided a method of decoding the transmitted data from the fiber transmitters embedded in fabric, the images having been captured by a camera, the method carried out to capture the encoded text and employing computer processes. In this embodiment, the method includes: selecting a first portion of the image for analysis; dividing the image into sub-images; and processing each of the sub-images. In turn, processing each of the sub-images includes: determining possible transmitting source within the sub-image; assigning a specific tracker to follow the source through subsequent images to read the data; and determining for each tracker, whether a valid data stream is present, and, if so, decoding the stream; otherwise, discarding the data and returning tracker to the resource pool.
In a further related embodiment, processing each tracker further comprises validating the received symbol set and validating each symbol set against a set of design rules.
In some embodiments, at least one fiber embedded in a fabric can sense light and therefore can act as a receiver, such as for receiving light-based signals generated from another nearby fabric as discussed above. Among other things, the use of such receiver fibers can allow for fabric-to-fabric communications. Fabrics can include both transmitter and receiver fibers (or a combination transmitter/receiver fiber) to allow for communication in one or both directions. Such fabrics can be made to monitor for a specific signal and transmit an appropriate reply signal (e.g., fabrics can be individually polled by a central controller).
Fibers that can change visual properties can be used in fabrics that include an encoded pattern in order to allow for dynamically changing the encoded pattern. For example, when such fibers are used as part of an encoded pattern in a fabric (e.g., in the warp or weft direction), the ability to change visual properties of the fibers can be used to program an encoded pattern (e.g., multiple fabrics can be produced using the same configuration of fibers but programmed to encode different patterns) and/or to dynamically change an encoded pattern (e.g., by changing the color or opacity of one or more fibers to dynamically increase or decrease the effective width of a stripe within an encoded pattern).
Novel Authentication Arrangement
In another embodiment, the invention provides a method where a first mobile computing device detects the encoded pattern from an article of clothing of a specific user having a second mobile computing device. The first mobile computing device sends the detected code to a server, requesting connection. The server sends the request to the second mobile computing device to determine between the two a one-time verification code that the second mobile computing device downloads to the article of clothing to transmit. The first mobile computing device reads this one-time verification code and sends it to the server to complete the verification that it is indeed looking at that article of clothing in real time. Because the ability to perform a real-time in-person confirmation of the digital/physical links is not present in the previous static-pattern system described herein and in the Prior Application, in that context, because the communicated code is static, a recorded picture can as well be used for authentication.
In another embodiment, which does not depend on whether the transmitted code is active or passive, the device reading the code need not be another individual holding a mobile computing device. The reading device may be a set of cameras as part of a vendor's infrastructure, such as in a store or in another commerce venue. In these cases, the reading of the identification on an article of clothing allows the vendor to provide an individualized experience to each user wearing an article of clothing having a uniquely identifiable code in accordance with various embodiments of the present invention.
More generally, one or more transmitters and/or receivers (referred to generally herein as “active elements”) operating in visible or invisible wavelengths can be integrated into an article or fabric. In some exemplary embodiments described above, transmitters and/or receivers in the form of fiber transmitters/receivers are embedded into an article or fabric such as by weaving the fiber into the article or fabric, although transmitters and/or receivers of other forms can be integrated into an article or fabric in other ways. For example, individual transmitters and/or receivers (e.g., LEDs) can be integrated into an article or fabric such as by attaching the individual transmitters/receivers to the article or fabric (e.g., by gluing, sewing, etc.), or one or more transmitters and/or receivers can be integrated into a separate device that in turn is integrated into an article or fabric.
In certain additional embodiments, one or more transmitters and/or receivers operating in visible or invisible wavelengths are integrated into a button that can be placed on an article or fabric. For example, one or more transmitters and/or receivers can be embedded in, attached to, or otherwise made part of a button. Generally speaking, buttons of typical embodiments include a button shank that is covered by a covering material such as a cloth or other fabric, although some buttons are not covered. The button shank may be a single piece of material or may be formed from multiple pieces of material. In some embodiments, active elements are molded into the button shank, such as during a plastics molding process.
In various exemplary embodiments, active elements can be placed under the covering material, can be placed on or over the covering material, or can be woven into the covering material. In embodiments where transmitters are placed under the covering material, the transmitters and covering material may be selected so that the button appears to be a regular button (i.e., without active elements) when the transmitters are off but light from the transmitters passes through the covering material when the transmitters are on such that transmitted signals can be detected and decoded by an outside device such as described above. Similarly, the covering material can be chosen to allow light to pass through and be received by receivers under the covering material.
The button can be attached to an article or fabric using any appropriate mechanism, such as by sewing or by attachment using a rivet, grommet, pin, clip, or other attachment mechanism. The button can include other elements for operating the transmitters and/or receivers, such as, for example, a power source (e.g., a battery, an electromagnetically-actuated energy source such as used in passive RFID tags, a light-actuated energy source such as photocell or photoresistor, etc.), a processor such as for controlling transmitters and/or processing signals from receivers, a wireless receiver or transceiver such as for communication with an external device, various electrical leads (e.g., wire, thin conductive yarn, fiber transmitter or receiver, etc.) that can be attached to a power source or controller, and/or other elements.
Shank buttons of the types shown in
As discussed above, buttons can include other elements for operating the transmitters and/or receivers. It is envisioned that such elements can be included in or on the shank insert, the shank cap, and/or the rivet or other connector of buttons of the types described herein.
It should be noted that, while various exemplary embodiments are described herein with reference to buttons, other types of devices having active elements may be produced. Devices of the type described herein can be permanently or temporarily affixed to an article or fabric. For example, devices that are sewn on or attached by rivet might considered permanently affixed, while buttons that are pinned or clipped onto an article or fabric might be considered temporarily affixed, which may be desirable for certain uses (e.g., distributing devices for a particular event in which participants can be tracked using the active devices). Such devices can be used on virtually any type of product, such as, for example, baseball caps, beanies, handbags, apparel, home furnishings, and consumer soft goods products, to name but a few.
As with other exemplary embodiments described above, each button or other device may be associated with a unique identification code, which may be hard-coded or programmable, and the information transmitted by the button may include the unique identification code. In some cases, because the transmitters are active elements, the transmitted information can be changed at will according to needs or context. Virtually any type of data can be encoded in a transmission (e.g., a unique identification code (e.g., identifying the fabric or the wearer), an emergency beacon (e.g., indicating that the wearer is in distress or needs assistance), streaming media (e.g., a video or music stream), a file identifier, a web address, a secret message, etc. Signals can be transmitted on a continual basis or only upon the occurrence of a particular event (e.g., activation by the user, such as in an emergency, or activated automatically, such as in a “person down” situation). Different codes can be transmitted for different types of events under user control or otherwise. In any case, the transmitted data are configured to be read and decoded by a receiver such as a mobile computing device, typically in a manner wherein the selected article is contextually recognizable. In a related embodiment, the encoded information is represented in the on-off pattern of the transmitters, wherein the transmitter typically operates at 60 Hz to 120 Hz and can be varied so fast that the on-off pattern will be undetectable by the naked eye (e.g., above around 80 Hz). In a further related embodiment, when the button or other device is placed on an article such as at the top of a hat (e.g., a baseball cap or similar type of hat), the transmitters are visible from the front and the back of the article and also from the top of the article, allowing transmitted information to be read from virtually any direction.
One potential advantage of a button or other device that includes the active transmitter and/or receiver elements and can be attached to an article or garment is that the active elements can be protected from potentially harmful fabrication processes involved in production of the article or fabric, such as, for example, molding, heat setting, sewing, welding, weaving, or knitting processes. The article or fabric can be produced, and then the button or other device can be added to the article or fabric in order to integrate the active elements.
Obfuscated Codes
In other embodiments, a coded pattern that is woven into a fabric as discussed herein and in the Prior Application can be obfuscated such as by applying additional graphics onto the fabric (e.g., by printing) in such a way that the coded pattern can still be read and decoded by a reader through the additional graphics.
Providing Personalized Experiences
In certain exemplary embodiments, light-based communications of the type described above are used to provide personalized experiences to visitors in museums, sports stadiums, stores, shopping centers, and other facilities such as to tailor an experience to a person's individual needs or tastes (e.g., based on a user profile or user responses to a questionnaire) or to provide location-specific information (e.g., exhibit information, advertising, wayfinding/navigation, etc.). For purposes of the following discussion, the term “facility” is virtually unlimited and can include any area or space in which cameras and optionally also lighting can be placed, including enclosed areas (e.g., within a building or vehicle) and open areas (e.g., in a park). Generally speaking, such experiences have been provided through private tour guides or have been limited to a small fraction of visitors able to pay premium prices using specialized equipment.
In exemplary embodiments, visitors to a facility are equipped with a user device that transmits information to the facility infrastructure via light-based communications, e.g., from an LED. The user device may be provided by the facility or may be provided by the visitor or other source. The information transmitted by the user device to the infrastructure typically includes a device identifier and additionally or alternatively could include other information such as, for example, information about the device, information about the device user, requests or other inputs from the device user, etc. Cameras located in the facility infrastructure allow for receiving light-based communications from such devices, allowing the infrastructure to identify the devices, the locations of the devices (e.g., at a particular exhibit, entrance/exit, floor, etc.), the orientations of the devices (e.g., facing toward or away from a particular exhibit), and/or other parameters, enabling precision locational and directional guidance not easily achievable with other technology, such as Bluetooth, GPS, WiFi, etc.
Once the infrastructure identifies the devices via light-based communications, the infrastructure can then transmit personalized information to each device using the reception capabilities of the devices, e.g., BLE RSSI, Wi-Fi, Bluetooth, etc. However, the aforementioned approaches generally require the use of a smart phone or other similar communication device in order to function. Moreover, each has limitations with respect to spatial resolution and orientation of the visitor.
Therefore, in certain exemplary embodiments, the devices are equipped with a light-based receiver for receiving information from the infrastructure as well as an output device through which personalized information received from the infrastructure can be conveyed to the device user. Typically, the device would include an audio output device such as a speaker, headphones/earphones, or a headphone/earphone interface (e.g., audio jack, Bluetooth, etc.), although the device additionally or alternatively could include other types of output devices such as a display device, a tactile output device for vision-impaired users, etc. In this way, the infrastructure can transmit personalized information to the device for output to the user such as using existing LED lighting infrastructure and/or supplemental LED lighting that can be modulated to transmit information to the user devices. The light-based transmissions from the infrastructure to the user devices can be carried on separate logical or physical communication channels (e.g., using wavelength-division multiplexing) or can be carried over a common communication channel and addressed for individual devices (e.g., using packet-based communications). Broadcast and multicast communications also could be supported, e.g., for providing the same information to a group of users (e.g., members of a particular tour group), or to broadcast a message to all users (e.g., in case of an emergency or a public announcement).
Thus, exemplary embodiments can provide a free space optical communication system that can leverage existing LED lighting infrastructure in conjunction with cameras to create a bidirectional optical communication stream between the infrastructure and the customer such as for indoor navigation or personalized experience streaming. Each visitor to a facility can enjoy a personalized experience by simply donning a typically low-profile, light-weight device (e.g., upgraded versions of commercially-available wireless earphones, or a button or hat of the types described above to be carried or worn by the user or attached to the user's clothing). Such embodiments do not require expensive private human guides and would not require the visitor to use any other devices such as smart phones, smart watches, etc.
The infrastructure generally includes a processor system (which may include one or more physical or virtual machines and may be cloud-based) to control the cameras and decode light-based transmissions received from the user devices, to generate personalized information to transmit to the user devices, and to control the infrastructure lights to transmit the personalized information to the user devices, e.g., using wavelength division multiplexing or by modulating the lights to transmit information. Many LED lighting providers are adding modulation capabilities to their lights and lighting systems, and such modulation capabilities can be leveraged in exemplary embodiments described herein. Generally speaking the modulation circuitry modulates the LED at a rate that is not perceivably by human vision.
The personalized information transmitted to a given device can be based on various types of inputs, such as, for example, the user's identity (e.g., based on a user login or a correlation between the user and the device), the user's location and directional orientation (e.g., as determined by the infrastructure from light-based communications), the user's intentions or desires (e.g., based on a user profile or user inputs such as responses to questions), information from social media and other online sources (e.g., personal posts, browsing history, purchasing history, etc.), and decisions made by the infrastructure as to what information to present to each user (e.g., advertiser-driven information). Thus, for example, visitors to a museum may be provided with different experiences even when viewing the same exhibit based on the users' individual intentions/desires (e.g., one visitor might be interested a particular artist and therefore might receive information about the artist including instructions for locating other artworks by the same artist while another visitor might be interested in a particular artwork genre and therefore might receive information about the genre including instructions for locating other artworks of the same genre) or may be provided with exhibit-specific information selected by the infrastructure based on the direction the user is facing (e.g., from one location, a visitor may view multiple different exhibits, and the information presented to the visitor may be selected based on which exhibit the visitor is facing).
The following scenario describes various aspects and capabilities of an exemplary free-space optical communication system.
Visitor experience: As visitors enter a facility equipped with this technology, they may be greeted by an automatic Kiosk Stand, where they are invited by displayed words and/or audio to pick up a Mobile Unit.
Mobile Unit: The mobile unit may be a lightweight, low-profile headphone or speaker unit that contains a free-space optical communication capability and a LED for identification transmission. When the visitor dons the unit, the lights above the user begin to stream audio directions to the Mobile Unit (and hence to the visitor) optically. These instructions can orient the visitor on how optical communications work and how to enter information into the kiosk. The mobile unit preferably is invisible from the perspective of the visitor, e.g., it should not impede the movement of the visitor or detract from the visitor's experience in any way.
Kiosk Stand: The kiosk stand may be an iPad or other electronic device that may be connected to the cloud and contains a camera to read the LED identification transmission from the mobile unit. The kiosk stand may contain a software app that allows the visitor to select a custom experience from a list of available experiences. In the context of indoor navigation, for example, the custom experience may be to select a destination or tour within the building. Once the experience has been selected, the camera at the kiosk will read the unique ID being transmitted by the LED on the mobile unit. This information will be coupled with the visitor's intentions and transmitted to the cloud.
Infrastructure units: The infrastructure units consist of two elements—LED and camera. In the context of existing LED infrastructure, the LEDs can be dual-purpose, e.g., to provide necessary lighting within the facility and to facilitate optical communications through modulation of the LED lighting. The LED unit preferably disappears into the infrastructure, e.g., it can look like (and in fact can be) a standard ceiling light in the building. The camera element associated with the LED is used to read the unique IDs being transmitted by mobile units and to ascertain the orientation of the visitor. Each infrastructure unit typically possesses a unique address within the infrastructure such that when a camera reads the ID of a mobile unit, information specific to the visitor's intention and local address of the infrastructure unit can be transmitted to the cloud.
Devices for use in the free space optical communication system can be equipped with ancillary input devices to allow additional information to be conveyed to the infrastructure. As but one simple example, the devices can include one or more pushbutton switches that can be pressed by the user in response to a prompt from the infrastructure, e.g., to answer “yes” or “no” to a question or to convey user intention. Of course, more complex user interfaces, such as, for example, graphical user interfaces, can be included in devices. User inputs can be conveyed by the device to the infrastructure via the light-based transmitter of the device and received by the infrastructure camera, similar to the transmission of a device identifier.
In some exemplary embodiments, a smart phone or similar smart device may be used as the user device. For example, the “flash” of the smart device could be used to transmit information to the infrastructure, while the camera of the smart device could be used to receive light-based communications from the infrastructure using the type of camera-based reception and decoding of light-based communications described above. In such a scenario, a special app may be developed to run on the device to operate the flash and camera.
Exemplary embodiments of the free space optical communication system can be used for virtually unlimited purposes. The following are but a few additional examples.
The free space optical communication system can be used to provide personalized advertising. For example, different shoppers may receive different offers when entering a particular store.
The free space optical communication system can be used to provide information about a specific product or exhibit based on the location and directional orientation of the user, as mentioned above.
The free space optical communication system can be used to provide personalized instructions to the user based on the location and directional orientation of the user, e.g., directions to get to a particular store within a shopping mall or to a particular exhibition booth at a convention, directions to the nearest exit in the event of an emergency, or directions back to a safe place if the user is lost. Thus, for example, the free space optical communication system can be used to provide real-time wayfinding directions as the user moves within a facility.
The free space optical communication system can be used to provide security and monitoring of people in a facility, with information transmitted by the infrastructure based on the identity of a particular user or user device not required to be directed to that particular user or user device. For example, the infrastructure can be configured to monitor the location of users based on user devices carried or worn by the users (e.g., children at a daycare center or on a field trip) and the infrastructure can be configured to transmit information to another user or user device (e.g., transmitting the last known location of a lost child to an administrator or tour guide).
Aspects of the present invention may be embodied in many different forms, including, but in no way limited to, computer program logic for use with a processor (e.g., a microprocessor, microcontroller, digital signal processor, or general purpose computer), programmable logic for use with a programmable logic device (e.g., a Field Programmable Gate Array (FPGA) or other PLD), discrete components, integrated circuitry (e.g., an Application Specific Integrated Circuit (ASIC)), or any other means including any combination thereof.
Computer program logic implementing all or part of the functionality previously described herein may be embodied in various forms, including, but in no way limited to, a source code form, a computer executable form, and various intermediate forms (e.g., forms generated by an assembler, compiler, networker, or locator.) Source code may include a series of computer program instructions implemented in any of various programming languages (e.g., an object code, an assembly language, or a high-level language such as Fortran, C, C++, JAVA, or HTML) for use with various operating systems or operating environments. The source code may define and use various data structures and communication messages. The source code may be in a computer executable form (e.g., via an interpreter), or the source code may be converted (e.g., via a translator, assembler, or compiler) into a computer executable form.
The computer program may be fixed in any form (e.g., source code form, computer executable form, or an intermediate form) either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed disk), an optical memory device (e.g., a CD-ROM), a PC card (e.g., PCMCIA card), or other memory device. The computer program may be fixed in any form in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analog technologies, digital technologies, optical technologies, wireless technologies, networking technologies, and internetworking technologies. The computer program may be distributed in any form as a removable storage medium with accompanying printed or electronic documentation (e.g., shrink wrapped software or a magnetic tape), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the communication system (e.g., the Internet or World Wide Web).
Hardware logic (including programmable logic for use with a programmable logic device) implementing all or part of the functionality previously described herein may be designed using traditional manual methods, or may be designed, captured, simulated, or documented electronically using various tools, such as Computer Aided Design (CAD), a hardware description language (e.g., VHDL or AHDL), or a PLD programming language (e.g., PALASM, ABEL, or CUPL).
Various embodiments of the present invention may be characterized by the potential claims listed in the paragraphs following this paragraph (and before the actual claims provided at the end of the application). These potential claims form a part of the written description of the application. Accordingly, subject matter of the following potential claims may be presented as actual claims in later proceedings involving this application or any application claiming priority based on this application. Inclusion of such potential claims should not be construed to mean that the actual claims do not cover the subject matter of the potential claims. Thus, a decision to not present these potential claims in later proceedings should not be construed as a donation of the subject matter to the public.
Without limitation, potential subject matter that may be claimed (prefaced with the letter “P” so as to avoid confusion with the actual claims presented below) includes:
P1. An article, the article being a selected one of a set of articles, each article of the set comprising a fabric and being associated with a unique identification code, the selected article having a pattern, distributed over at least 10% of an exposed surface of the selected article, the pattern encoding the identification code associated with the selected article, wherein the pattern is configured to be readable and decodable by a mobile computing device in a manner wherein the selected article is contextually recognizable.
P2. An article according to claim P1, wherein the identification code is represented in the pattern in a large format, wherein each item of information content in the identification code is represented in the pattern by a set of attributes, each attribute of the set of attributes having a minimum dimension of 1 mm.
P3. An article according to claim P2, wherein each attribute of the set of attributes has a minimum dimension of 2 mm.
P4. An article according to claim P2, wherein each attribute of the set of attributes has a minimum dimension of 3 mm.
P5. An article according to claim P1, wherein the pattern is distributed over at least 30% of the exposed surface of the selected article.
P6. An article according to claim P1, wherein the exposed surface of the selected article includes a front and a back of the selected article.
P7. An article according to claim P1, wherein the pattern includes an error correction code.
P8. An article according to claim P7, wherein the error correction code is a forward error correction code.
P9. An article according to claim P1, wherein the pattern includes a repetition of encoding of the identification code.
P10. An article according to claim P1, wherein the pattern encodes a minimum of 24 bits of information comprising the identification code.
P11. An article according to claim P1, wherein the pattern encodes a minimum of 32 bits of information comprising the identification code.
P12. An article according to claim P1, wherein the unique identification code, encoded by the pattern, was transmitted by a server system for use in manufacturing of the article.
P13. An article according to claim P12, wherein the unique identification code has been associated with an owner of the article by updating information in the server system in connection with a sale of the article to the owner.
P14. An article according to claim P1, wherein the pattern is not discernible to an ordinary unaided human observer.
P15. An article according to claim P1, wherein the pattern comprises a plurality of horizontal lines having varying thickness, spacing, and color, the plurality of horizontal lines extending over at least 80% of a first dimension of the exposed surface of the article of clothing.
P16. An article according to claim P15, wherein the article of clothing is from a group consisting of a shirt, jacket, sweater, and vest, and wherein the first dimension is parallel to a line drawn from shoulder-to-shoulder of the article of clothing.
P17. A server-based method for identifying a specific article of fabric in a social context, the method comprising computer processes including: receiving at a server system a request message, from a first instance of a fabric identification application executing on a mobile computing device of a regarding individual who has caused the mobile computing device to capture an image in which at least a part of the specific article appears, the request message containing identity data corresponding to a pattern on the article, the pattern encoding a unique identification code associated with the specific article and the pattern configured to render the article contextually recognizable, processing by the server system the identity data, in relation to a database system storing identification codes for a set of articles in relation to corresponding user information, to identify a specific user associated with the specific article of fabric; and sending by the server system a reply message to the application executing on the mobile computing device that, consistent with permissions of the specific user, includes user-defined content, such content defined by the specific user.
P18. A method according to claim P17, wherein the user-defined content includes personal information concerning the specific user.
P19. A method according to claim P18, further comprising: before sending the reply message by the server system: receiving by the server system, from the first instance of the fabric identification application executing on the mobile computing device of the regarding individual, first geolocation data defining a location of the computing device of the regarding individual; receiving, by the server system, from a second instance of the fabric identification application executing on a mobile computing device of the specific user, second geolocation data defining a location of the specific user's computing device; processing by the server system the first and second geolocation data to determine if the mobile computing device of the regarding individual is within a predetermined distance from the specific user's mobile computing device, and, if not within the predetermined distance, configuring the reply message to convey denial of permission to provide the personal information about the specific user.
P20. A method according to claim P17, further comprising sending, by the server system, after receiving the identity data, to the application executing on the mobile computing device, a confirmatory message including validity information associated with the identity data.
P21. A method according to claim P17, wherein the identity data has been derived by the application executing on the mobile computing device from a processed version of the image, the processed version being a result of processing of the image on the mobile computing device.
P22. A method according to claim P17, further comprising receiving by the server system the image captured by the mobile computing device and processing by the server system the image to derive the identity data.
P23. A method according to claim P17, further comprising configuring by the server system the reply message to the application to initiate a request to a third-party application executing on the mobile computing device using the identity data.
P24. A method according to claim P17, further comprising, if the permissions of the specific user prevent the personal information about the specific user from being included in the reply message, configuring, by the server system, the reply message to redirect the application executing on the mobile computing device of the regarding individual to cause other appropriate content to be displayed thereon.
P25. A method according to claim P17, wherein the user-defined content includes a plurality of content items, a specific one thereof being selected, for transmission to the mobile computing device of the regarding individual, according to a set of selection criteria specified by the specific user.
P26. A method according to claim P25, wherein the set of selection criteria includes an identity of the regarding individual.
P27. A method according to claim P25, wherein the set of selection criteria includes an item selected from the group consisting of time of day of receipt by the server system of the request message, date of such receipt, geolocation of the mobile computing device of the regarding individual, and combinations thereof.
P28. A method according to claim P17, wherein the reply message includes at least some third party-defined content.
P29. A method according to claim P28, wherein the at least some third party-defined content includes advertising.
P30. A method according to claim P17, wherein the fabric identification application is a portion of a social network application, wherein a first instance of the social network application is executing on the mobile computing device of the regarding individual.
P31. A method according to claim P19, wherein the fabric identification application is a portion of a social network application, wherein a first instance of the social network application is executing on the mobile computing device of the regarding individual and a second instance of the social network application is executing on the mobile computing device of the specific user.
P32. A method according to claim P17, wherein the user-defined content includes music selected according to preferences of the specific user.
P33. A server-based method for identifying a specific article of fabric in a social context, the method comprising computer processes including: receiving at a server system a request message, from a first instance of a fabric identification application executing on a mobile computing device of a regarding individual who has caused the mobile computing device to capture an image in which at least a part of the specific article appears, the request message containing identity data corresponding to a pattern on the article, the pattern encoding a unique identification code associated with the specific article and the pattern configured to render the article contextually recognizable, processing by the server system the identity data, in relation to a database system storing identification codes for a set of articles in relation to corresponding user information, to identify a specific user associated with the specific article of fabric; and sending by the server system a reply message to the application executing on the mobile computing device that, consistent with permissions of the specific user, includes third party-defined content.
P34. A method for alerting a regarding individual having a first mobile computing device that an encoded pattern is present in an article of clothing of a specific user having a second mobile computing device, the encoded pattern not discernible to an ordinary unaided human observer, the method comprising initiating wireless communication from the first mobile computing device to the second mobile computing device, the wireless communication including an alert viewable on a fabric identification application executing on the first mobile computing device that the encoded pattern is not discernible to the ordinary unaided human observer.
P35. An article according to claim P1, wherein the pattern includes at least one repeatable unit having, in a first direction, a first leading strip and a first set of associated data strips and, in a second direction, a second leading strip and a second set of associated data strips, the second direction distinct from the first direction, each data strip having a set of stripes shaped to convey data, each stripe defined by a first transition edge from a first color to a second color and a second transition edge from the second color to a third color, the first transition having a distance D1 from a leading edge of the data strip and the second transition having a distance D2 from the leading edge of the data strip, wherein D2>D1, and D1 and D2 collectively encode data.
P36. An article according to claim P35, wherein the first and second directions correspond to local directions associated with a warp and a weft of the fabric respectively, and wherein the warp and weft directions vary over at least a portion of the fabric.
P37. An article according to claim P36, wherein the first and second directions are orthogonal to one another.
P38. An article according to claim P37, wherein the first direction is vertical and the second direction is horizontal.
P39. An article according to claim P36, wherein the first set encodes data distinct from the data encoded by the second set.
P40. An article according to claim P36, wherein each of the first and second leading strips comprises stripes of the first and second color, the first leading strip having a stripe of the first color with a minimum width W1 and the second leading strip having a stripe of the first color with a minimum width W2, wherein W1 does not equal W2.
P41. An article according to claim P36, wherein the repeatable unit has no more than three data strips in the first set and no more than three data strips in the second set.
P42. An article according to claim P41, wherein the repeatable unit has a dimension of at least 75 mm in the first direction and a dimension of at least 75 mm in the second direction.
P43. An article according to claim P36, wherein the repeatable unit has a dimension of at least 75 mm in the first direction and a dimension of at least 75 mm in the second direction.
P44. An article according to claim P36, wherein the surface has a dimension and the pattern includes no more than five repeatable units along the dimension.
P45. An article according to claim P36, wherein the surface has a dimension and the pattern includes no more than ten repeatable units along the dimension.
P46. An article according to claim P36, wherein the repeatable unit has no more than five data strips in the first set and no more than five strips in the second set.
P47. An article according to claim P36, wherein the repeatable unit has no more than eight data strips in the first set and no more than eight strips in the second set.
P48. A method for providing an augmented or virtual reality experience, the method comprising: capturing an image including an article according to any of claims 1-16 and 35-47; decoding the pattern to recover the unique identification code; identifying a user associated with the article based on the unique identification code; selecting a graphical element based on the identity of the user; and producing a display including the selected graphical element on a computer display device.
P49. A method according to claim P48, wherein the display includes a portion of the captured image overlayed with the selected graphical element.
P50. A method according to claim P49, wherein the selected graphical element is overlayed at a location corresponding to a location of the pattern in the displayed portion of the captured image.
P51. A method according to claim P49, wherein the selected graphical element is sized according to a size of the pattern in the displayed portion of the captured image.
P52. A method according to claim P48, wherein the selected graphical element is an interactive graphical element.
P53. A method according to claim P48, wherein the selected graphical element is an animated graphical element.
P54. A method according to claim P48, wherein the selected graphical element includes an identifier associated with the user.
P55. A method of decoding an image of a pattern in fabric, the pattern encoding text, the image having been captured by a camera, the method carried out to capture the encoded text and employing computer processes comprising: selecting a first portion of the image for analysis; slicing the image into sub-images; processing each of the sub-images by: locating edge boundaries of the sub-image; mapping the edge boundaries into a set of symbols; and determining for each decoded symbol set, determining whether it applies to a weft or to a warp.
P56. A method according to claim P55, wherein processing each of the sub-images further comprises validating each symbol set for closeness of fit and validating each symbol set against a set of design rules.
P57. A method according to claim P55, wherein processing each of the sub-images further comprises collecting votes for symbol candidates for each sub-image and determining a winning symbol candidate for reach sub-image.
While the invention has been particularly shown and described with reference to specific embodiments, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention as defined by the appended clauses. While some of these embodiments have been described in the claims by process steps, an apparatus comprising a computer with associated display capable of executing the process steps in the claims below is also included in the present invention. Likewise, a computer program product including computer executable instructions for executing the process steps in the claims below and stored on a computer readable medium is included within the present invention.
This patent application is a continuation-in-part of, and therefore claims priority from, international patent application no. PCT/US2019/026549 entitled Uniquely Identifiable Articles of Fabric Configured for Data Communication having an International Filing Date of Apr. 9, 2019, which claims priority from U.S. Provisional Patent Application No. 62/682,975 entitled Uniquely Identifiable Articles of Fabric Configured for Data Communication filed on Jun. 10, 2018, U.S. Provisional Patent Application No. 62/743,913 entitled Uniquely Identifiable Articles of Fabric Configured for Data Communication filed on Oct. 10, 2018, and U.S. Provisional Patent Application No. 62/781,437 entitled Uniquely Identifiable Articles of Fabric Configured for Data Communication filed Dec. 18, 2018. Each of these patent applications is hereby incorporated herein by reference in its entirety. This patent application is also a continuation-in-part of, and therefore claims priority from, U.S. patent application Ser. No. 16/457,075 filed Jun. 28, 2019, which is a continuation of international patent application no. PCT Patent Application No. PCT/US2018/012193 having an international filing date of Jan. 3, 2018, which claims priority from U.S. Provisional Patent Application No. 62/442,283 filed Jan. 4, 2017 and also claims priority from U.S. Provisional Patent Application No. 62/521,150 filed Jun. 16, 2017. Each of these patent applications is hereby incorporated herein by reference in its entirety. Also, the contents of PCT Patent Application No. PCT/US2018/012193 (referred to herein as the “Prior Application”) are physically incorporated into this patent application (Detailed Description paragraphs 123-239 of the present patent application correspond to paragraphs 95-211 of PCT Patent Application No. PCT/US2018/012193).
This invention was made with U.S. Government support under Agreement No. W15QKN-16-3-0001 awarded by the ACC-NJ. The Government has certain rights in the invention.
Number | Date | Country | |
---|---|---|---|
62682975 | Jun 2018 | US | |
62743913 | Oct 2018 | US | |
62781437 | Dec 2018 | US | |
62442283 | Jan 2017 | US | |
62521150 | Jun 2017 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/US18/12193 | Jan 2018 | US |
Child | 16457075 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/US2019/026549 | Apr 2019 | US |
Child | 17109037 | US | |
Parent | 16457075 | Jun 2019 | US |
Child | PCT/US2019/026549 | US |