System and method for lightweight color quick response code

The method and system for lightweight color QR codes address data storage and security limitations by optimizing color selection and structure transformation, ensuring compatibility and robustness against color distortions, enhancing QR code functionality.

WO2025146699A1PCT designated stage expired Publication Date: 2025-07-10GUPTA DR GARIMA
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/IN2025/050002
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-03
Filing Date
2025-01-01
Publication Date
2025-07-10

AI Technical Summary

Technical Problem

Existing QR codes face challenges with limited data storage capacity, security, and compatibility with public readers, as well as issues related to color-specific distortions and interference.

Method used

A method and system for generating and recognizing lightweight color QR codes that utilize a public and private QR code structure, with an optimized color selection process to minimize interference and ensure compatibility, incorporating a similarity structure transformation and color palette to enhance data storage and security.

Benefits of technology

The solution provides enhanced data storage capacity, improved security through private data storage, and compatibility with public QR readers, addressing color-specific distortions and interference, making QR codes more versatile and robust for real-world applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IN2025050002_10072025_PF_FP_ABST
    Figure IN2025050002_10072025_PF_FP_ABST
Patent Text Reader

Abstract

The disclosure relates to quick response (QR) code 102 generation and recognition. The generation includes an input module 1130 for selecting an input set of QR codes having a public QR code and a private QR code, and an optimal mask module 1132 for using an optimal mask pattern, from a plurality of mask patterns, to invert colors of the input set of QR codes and a SSTM module 1134 to create a transitional set of QR codes that retains data encoded in the input set of QR codes, and a color module 1136 for assigning a color from an optimal set of colors to the transitional set of QR codes, that is calculated while maximizing a distance among a set of colors to generate a lightweight color QR code 102 from the transitional set of QR codes having the assigned colors to each of modules.
Need to check novelty before this filing date? Find Prior Art

Description

SYSTEM AND METHOD FOR LIGHTWEIGHT COLOR QUICK RESPONSE CODEFIELD OF THE INVENTION

[0001] The present disclosure generally relates to the field of quick response (QR) codes, more specifically the present disclosure relates to a system and method for providing a lightweight color QR code.BACKGROUND OF THE INVENTION

[0002] QR codes, or quick response codes, have become indispensable tools for efficiently storing and retrieving data in various fields. These two-dimensional barcodes consist of black squares arranged on a white square grid, encoding information that can be swiftly scanned and deciphered by mobile devices equipped with cameras. The use of QR codes for data storage is widespread and diverse, ranging from inventory management and product tracking to contactless payments and event ticketing. Their versatility lies in their capacity to store various data types, including text, URLs, contact information, and even Wi-Fi network credentials. Businesses leverage QR codes to streamline processes, enhance customer engagement, and facilitate seamless information exchange.

[0003] Due to widespread usage, there is a growing demand for increased data storage capacity and enhanced security in QR codes. Various techniques have been explored to achieve these goals. In one method, a framework for generating and decoding three-layer color QR codes is used. The data is encoded separately in each layer (cyan, magenta, and yellow) and combined to create the final color QR code. However, their approach is limited to three layers and lacks partial compatibility with public QR readers.

[0004] Another approach involves the generation of secure QR codes by combining a public QR code with a private one for added security. Decoding the secret QR requires a specialized QR scanner with enhanced software and a private key. While providing security, this method falls short in significantly enhancing data storage capacity and may necessitate the use of special inks and reading devices, limiting its practicality for the public.

[0005] Using color QR codes has challenges, such as chromatic distortion and crosschannel color interference. Researchers have tried to address these issues using various machine learning algorithms to correctly classify colors. In addition, they made the process of geometric transformation more robust, which is used to oversee geometric distortions. This solution,designed for three layers, entails increased decoding complexity due to machine learning, and its performance depends on the diversity of training samples. Moreover, it does not allow for partial decoding using public QR readers.

[0006] The accessibility and simplicity of QR codes make them an ideal solution for sharing large information as well. But the current solutions are unable to utilize QR codes as a practical and efficient means of large data storage. Thus, there exists a need to develop and overcome these challenges, offering a more versatile and user-friendly approach to modified QR codes.SUMMARY OF THE INVENTION

[0007] This summary is provided to introduce concepts related to systems and methods for lightweight color QR code and the concepts are further described below in the detailed description. This summary is neither intended to identify essential features of the claimed subject matter nor is it intended for use in determining or limiting the scope of the claimed subject matter.

[0008] In one implementation, a method for quick response (QR) code generation is disclosed. The method comprises selecting, by an interface of a QR device, an input set of QR codes having a public QR code and a private QR code. Further, using an optimal mask pattern, by a processor of the QR device, from a plurality of mask patterns, to invert colors of each module of the input set of QR codes and transforming, by the processor, the input set of QR codes, using a similarity structure transformation, to create a transitional set of QR codes, the transitional set of QR codes retains data encoded in the input set of QR codes. The method comprises assigning a color from an optimal set of colors to each module of the transitional set of QR codes, by the processor, the optimal set of colors is calculated while maximizing a distance among a set of colors and generating, by the processor, a lightweight color QR code from the transitional set of QR codes having the assigned colors to each of modules.

[0009] In yet another implementation, embedding a color palette into the lightweight color QR code.

[0010] In yet another implementation, the input set of QR codes has n number of monochrome codes having a public QR code and n-1 number of private QR codes.

[0011] In yet another implementation, the optimal set of colors enhances color contrast and minimizes color interference.

[0012] In yet another implementation, the optimal mask pattern is selected from the plurality of mask patterns based on a penalty score.

[0013] In yet another implementation, the distance among the set of colors is maximized where required number of colors are chosen using standard RGB combinations.

[0014] In yet another implementation, the distance among the set of colors is maximized where required number of colors are chosen using hexagonal close packing.

[0015] In yet another implementation, generating a look up table to map the optimal set of colors to each of the modules.

[0016] In one implementation, a method for quick response (QR) code recognition is disclosed. The method comprises acquiring, by an interface of a QR device, an image, and extracting a lightweight color QR code from the image and identifying, by a processor of the QR device, the size and location of each of modules from the lightweight color QR code. The method comprises extracting, by the processor, a color palette from the lightweight color QR code, determining, by the processor, colors for each of the modules of the lightweight color QR code, colors for each of the modules is determined using nearest neighbor distance taken with respect to colors in the color palette and preparing, by the processor, a corrected lightweight color QR code using the determined colors and retrieving an encoded data from the corrected lightweight color QR code.

[0017] In yet another implementation, obtaining a private data from the retrieved encoded data from the corrected lightweight color QR code.

[0018] In yet another implementation, obtaining a public data from the extracted lightweight color QR code from the image using a public QR decoder.

[0019] In yet another implementation, the corrected lightweight color QR code is prepared using a color lookup table.

[0020] In yet another implementation, for a blurred extracted lightweight color QR code, the color for each of the module is determined by using the color palette and mapping it to an original color.

[0021] In yet another implementation, the image is acquired using an application installed on a mobile device.

[0022] In yet another implementation, the application acquires the image, by capturing a plurality of frames from the image, merging values from the plurality of frames, repeating the capturing, and merging for all the frames of the image.

[0023] In yet another implementation, determining preprocessing algorithms to increase the quality of the image.

[0024] In one implementation, a system for quick response (QR) code generation is disclosed. The system comprises a processor; and a memory coupled to the processor, the processor executes a plurality of modules stored in the memory, and the plurality of modules comprises an input module for selecting an input set of QR codes having a public QR code and a private QR code, and an optimal mask module for using an optimal mask pattern, from a plurality of mask patterns, to invert colors of the input set of QR codes. The modules further comprises a SSTM module for transforming the input set of QR codes to create a transitional set of QR codes, the transitional set of QR codes retains data encoded in the input set of QR codes, and a color module for assigning a color from an optimal set of colors to each of modules of the transitional set of QR codes, the optimal set of colors is calculated while maximizing a distance among a set of colors to generate a lightweight color QR code from the transitional set of QR codes having the assigned colors to each of modules.

[0025] In yet another implementation, a printing device coupled to the processor, the printing device prints the generated lightweight color QR code on a printing medium.

[0026] In yet another implementation, the input set of QR codes has n number of monochrome codes having a public QR code and n-1 number of private QR codes.

[0027] In yet another implementation, the color module embeds a color palette into the lightweight color QR code.

[0028] In yet another implementation, the optimal set of colors is calculated by the color module while enhancing color contrast and minimizing color interference.

[0029] In one implementation, a system for quick response (QR) code recognition is disclosed. The system comprises a processor; and a memory coupled to the processor, the processor executes a plurality of modules stored in the memory, and the plurality of modules comprises a scanning module for acquiring an image, and extracting a lightweight color QR code from the image, an identification module for identifying the size and location of each of modules from the lightweight color QR code, a color module for extracting a color palette from the lightweight color QR code and determining colors for each of the modules from the lightweight color QR code, colors for each of the modules is determined using nearest neighbor distance that is taken with respect to colors in the color palette and preparing a corrected lightweight color QR code using the determined colors and retrieving an encoded data from the corrected lightweight color QR code.

[0030] In yet another implementation, the scanning module comprises an image sensor for acquiring the image having the lightweight color QR code from the image.

[0031] In yet another implementation, obtaining a public data and a private data contained in the lightweight color QR code.

[0032] These and other implementations, embodiments, processes, and features of the subject matter will become more fully apparent when the following detailed description is read with the accompanying experimental details. However, both the foregoing summary of the subject matter and the following detailed description of it represent one potential implementation or embodiment and are not restrictive of the present disclosure or other alternate implementations or embodiments of the subject matter.BRIEF DESCRIPTION OF THE DRAWINGS

[0033] A clear understanding of the key features of the subject matter summarized above may be had by reference to the appended drawings, which illustrate the method and system of the subject matter, although it will be understood that such drawings depict preferred embodiments of the subject matter and, therefore, are not to be considered as limiting its scope with regard to other embodiments which the subject matter is capable of contemplating. Accordingly:

[0034] FIGURE.1 illustrates exemplary lightweight color quick response (QR) codes, in accordance with an embodiment of the present subject matter.

[0035] FIGURE.2 illustrates an exemplary generation process for a lightweight color QR code, in accordance with an embodiment of the present subject matter.

[0036] FIGURE.3 illustrates an exemplary recognition process for a lightweight colorQR code, in accordance with an embodiment of the present subject matter.

[0037] FIGURE.4 illustrates various exemplary masking patterns available to be used in an exemplary generation process for a lightweight color QR code, in accordance with an embodiment of the present subject matter.

[0038] FIGURE.5 illustrates transformation used in an exemplary generation process for a lightweight color QR code, in accordance with an embodiment of the present subject matter.

[0039] FIGURE.6 illustrates a public QR reader for a lightweight color QR code, in accordance with an embodiment of the present subject matter.

[0040] FIGURE.7 illustrates a two layered lightweight color QR code, in accordance with an embodiment of the present subject matter.

[0041] FIGURE.8 illustrates a three-layered lightweight color QR code, in accordance with an embodiment of the present subject matter.

[0042] FIGURE.9 illustrates a four layered lightweight color QR code, in accordance with an embodiment of the present subject matter.

[0043] FIGURE.10 illustrates a mobile application employing a lightweight color QR code used on handheld devices, in accordance with an embodiment of the present subject matter.

[0044] FIGURE.11 illustrates a block diagram illustrating one implementation of a lightweight color QR code, in accordance with an embodiment of the present subject matter.

[0045] FIGURE.12 illustrates a flow chart of the method of generation of a lightweight color QR code, in accordance with an embodiment of the present subject matter.

[0046] FIGURE.13 illustrates a flow chart of the method of recognition of a lightweight color QR code, in accordance with an embodiment of the present subject matter.DETAILED DESCRIPTION OF THE INVENTION

[0047] The following is a detailed description of implementations of the present disclosure depicted in the accompanying drawings. The implementations are in such detail as to clearly communicate the disclosure. However, the amount of detail offered is not intended to limit the implementations. While aspects of described systems and methods for lightweight color QR code generation and recognition can be implemented in any number of different computing systems, environments, and / or configurations, the embodiments are described in the context of the following exemplary system (s).

[0048] Lightweight color QR (LWCQR) codes have been meticulously optimized to overcome practical color-specific challenges encountered in real-world scenarios. These challenges include cross-channel interference, which results from the interaction of colorants from different channels during printing; cross-module interference, where colorant overflow affects neighbouring data modules, causing distortion. Color shifting occurs as a consequence of fluctuations in the recorded colors. This phenomenon may arise from changes in illumination, such as low contrast situations, color degradation, diverse image processing methods employed by various smartphones, or even discrepancies in printing capabilities where printers struggle to reproduce the exact same color. These optimizations significantly enhance the robustness of LWCQR codes, ensuring their compatibility for real-world applications.

[0049] The distinguishing features of LWCQR encompass a trifecta of advantages. First and foremost, it boasts a high data storage capacity, allowing for the efficient handling of extensive information. In addition to this, LWCQR places a premium on data privacy, ensuring that sensitive information remains secure and protected. Furthermore, its partial compatibility with public QR readers enhances its overall utility, providing a seamless integration with existing systems and devices. These features collectively position LWCQR as a versatile and secure solution for diverse data storage and sharing needs.

[0050] LWCQR codes can effectively address the constraints posed by the limited data storage capacity of traditional QR codes. A prime example of this challenge arises in the utilization of QR codes to store sensitive data within identity documents, such as the facial image in India’s Aadhaar system, which is vital for authentication purposes. QR codes’ limited storage capacity necessitates data compression when encoding, inadvertently compromising the precision and accuracy of authentication procedures. LWCQR, on the other hand, serves as an effective remedy for these issues. By providing an expanded data storage capacity, it empowers authorities to incorporate considerably more information while shielding sensitive data from potential adversaries.

[0051] LWCQR codes are intelligently designed to segment data into public and private components. This unique property strikes a harmonious balance between usability and privacy. For instance, in identity documents, a user’s non-sensitive details like Name, Address, and Designation can be stored as public information, while highly sensitive biometric data, crucial for user verification, remains private. This approach ensures that anyone can scan the LWCQR code to access basic information about an individual without jeopardizing the security of their biometric data. One of the prominent drawbacks of conventional QR codes is their susceptibility to data tampering. Malicious actors can easily alter the information encoded in QR codes for nefarious purposes, such as phishing or injecting malware. This risk is exacerbated by the prevalent use of dynamic QR codes, primarily containing web URLs that redirect users to online-hosted information. Unfortunately, this creates an opening for fraudsters to substitute these legitimate web URLs with infected ones, often escaping detection until it’s too late. LWCQR codes address this issue by introducing an additional layer of security through the storage of information as private data. This significantly reduces the likelihood of unauthorized alterations, all without relying on encryption techniques that may have their own limitations. To further fortify data integrity, encoding the message hash as public information within the LWCQR code facilitates message authentication during decoding.

[0052] The present subject matter provides a color selection methodology that models the color selection task as an optimization problem to handle the above-mentioned color-specific challenges and gives out a non-interfering set of colors, mitigating cross- channel interference. The present subject matter provides a similar structure transformation method (utilizing optimal mask selection process as an intermediate step) to make the resultant lightweight color QR (LWCQR) code lightweight & sparse, which makes them robust against cross-module interference. The present subject matter provides positioning of color palette without affecting the decoding of the LWCQR code, to handle the problems arising due to color shifting. The present subject matter provides a systematic procedure to generate and decode a custom LWCQR code with enhanced data storage capacity while upholding the security of the encoded data by providing public and private data storage options. Importantly, the LWCQR code is robust to withstand the real-world challenges.

[0053] The techniques introduced herein overcome the deficiencies and limitations of the prior art, at least in part, with a system and methods for automating and streamlining the key dimensions: agility, efficiency, and security.

[0054] FIGURE.1 is an exemplary lightweight color quick response (QR) code illustration 100. The proposed next-generation QR code is a lightweight color QR (LWCQR) code 102, as shown in Figure 1, it is developed to address the imperative to enhance data storage capacity in QR codes and introduce data privacy while upholding partial compatibility with existing publicly available QR code decoders.

[0055] In a color QR code, instead of using a stark black-and-white contrast, different colors are applied to the squares or modules within the QR code's matrix. Colors can be arranged in gradients or patterns to create a visually appealing design while still ensuring that the code remains scannable. This method allows for customization, and the choice of colors can be based on branding preferences or aesthetic considerations. Colors can be added by overlaying an image or logo on top of the QR code. This image can contain various colors, providing a unique and eye-catching appearance. The underlying QR code structure remains intact, and the scanner can still read the code as long as the essential elements are preserved. It's important to note that while adding colors can enhance the visual appeal of QR codes, care must be taken to ensure that the contrast between the modules remains sufficient for reliable scanning. Additionally, users should test the colored QR codes with different scanners to ensure compatibility across a range of devices and applications. The colors can be added in any pattern and for any square matrix patterns, in any shape, combination or otherwise.

[0056] The LWCQR code 102 is generated by merging n different traditional QR codes using color modules in contrast to conventional black-and-white modules. Among these n QR codes, one is designed to be a public QR code and the remaining n - 1 are private QR codes. The public QR code is compatible with publicly available QR code readers while a special application is required to extract the private information. The LWCQR code 102 is optimized to tackle real-world color-specific challenges: cross-channel interference, cross-module interference, and color-shifting.

[0057] The LWCQR code 102 utilizes a method for generation that models the color selection task as an optimization problem to handle the above-mentioned color-specific challenges and gives out a non-interfering set of colors 106, 108, 110, 112 mitigating crosschannel interference. The non-interfering set of colors 106, 108, 110, 112 are in any number, any pattern, any combination and in any ratio on the QR code as per business or code requirement. Importantly, existing color QR codes may suffer from color-shifting, overhead illumination (low contrast, color fading), noise, chromatic interference, and chromatic distortions incurred due to the printing process (printing inconsistencies, poor distribution of ink at surfaces). A color palette 104, corresponding to the set of colors 106, 108, 110, 112 is introduced in the LWCQR code 102 to tackle these problems. And, to address the cross-module interference (observed due to densely packed modules in the color-based QR code), it is crucial to reduce the density of the color-based QR codes and increase the sparsity. For this purpose, a similar structure transformation method is proposed that transforms the initial set of 2D monochrome QR codes into another set of 2D monochrome QR codes such that the resultant LWCQR obtained by merging these new set of 2D QR codes is comparatively sparse and lightweight.

[0058] In another embodiment, a lightweight color QR (LWCQR) code 102a is shown. The LWCQR code 102a utilizes a method for generation that models the color selection task as an optimization problem to handle the mentioned color-specific challenges and gives out a noninterfering set of colors 106a, 108a, 110a, 112a mitigating cross-channel interference. The noninterfering set of colors 106a, 108a, 110a, 112a are in any number, any pattern, any combination and in any ratio on the QR code as per business or code requirement. A color palette 104a, corresponding to the set of colors 106a, 108a, 110a, 112a is introduced in the LWCQR code 102a to tackle these problems as described above.

[0059] FIGURE.2 is an exemplary generation process 200 for generating a lightweight color QR code, such as a lightweight color QR (LWCQR) code 102. In an embodiment, n is the number of 2D monochrome QR codes required to generate into a LWCQR code, where set QArepresents the public QR code. And QB be the set of n-1 private monochrome QR codes. Mathematically, the set QA and set QB are represented as:QA = {Q1 } (1)QB = {Q2, Q3, ..., Qn] (2)Here, QA Cl QB = (|). Importantly, all the QR codes used are assumed to have the same version & error correction so that the positional patterns & other modules overlap each other and the resultant LWCQR code follows the same structure as the traditional QR code.

[0060] In order to generate the LWCQR code 102, the task is to merge multiple monochrome n QR codes 202. Traditional techniques suffer from color-specific challenges: cross channel interference, cross-module interference, and color-shifting and it is crucial to improvise the generation algorithm accordingly for better robustness and readability. Initially, to address these challenges in LWCQR codes a similarity structure transformation method 206 is utilized where all the n QR codes are transformed such that their resultant structure 208 is similar to each other. This transformative process hinges on optimal mask selection 204, strategically amplifying the sparsity of the resulting CQR codes. It is important to note that the transformation step 206 doesn’t alter the data encoded in these QR codes. The optimal mask selection 204 is further detailed in Figure 4.

[0061] To increase structural similarity, a two-step process: Unmasking of the n QR codes and re-masking of the unmasked QR codes obtained from step 1 to the new set of QR codes with optimal mask. Both steps are mathematically represented as:Q'A - fnd'Ad'Q.i)) (3)Q s - . / LA , / L i ..• )) (4) where fu & fin represent the unmasking and masking function. In the next step, the similarity matrices are computed corresponding to each private QR code in set QB with public QR code Q A. This is done by computing XOR between public QR code Q'l and each QR code Q'Bi in set QB, referred as Step 5 in Figure 2. This results in new set X with similarity matrices. Mathematically, it is written as:After obtaining the set X, the union of public QR code QT with the set X results in a new set C with n layers, which is mathematically written as:C= Q'l U X = {Q'l, X12,X13,...,Xln} (6)QR codes consist of modules and each module in the public QR code & X has values of either 0 or 1. If n QR codes are arranged in a sequential manner, each module can be represented using different colors, where a particular color represents a particular underlying sequential combination. Since the LWCQR code consists of n layers, therefore, 2n unique sequential combinations can occur while assigning colors. This means 2n colors are required for assigning colors to the sequential combinations. For this purpose, a novel color selection methodology is used that is specially designed to output non-interfering set of colors useful to mitigate the problem of cross channel interference.Let S represents the set with t number of colors where, t = 2n. Each color Si is a 3- dimensional vector with elements xi, yi, and zi representing the red, green, and blue colors in RGB space. The range of xi, yi, and zi is between 0 to 255 i.e., 0 < x,y,z < 255. The aim is to minimize the cross-channel interference among different colors. For this purpose, the distance among the colors is maximized. Mathematically, it is written as: maximizei / =j (7) where, D(.) represents the function to compute the distance between color Si and Sj.

[0062] In this work, two different strategies are used to solve the above problem based on the parameter t, which represents the required number of colors for the LWCQR code 102. If t < 8, then the required colors can be directly chosen using standard RGB combinations where either a color component is present or not. Since there are three color channels, eight different color combinations exist which are sufficient up to 3-layer LWCQR code 102. In the case of t > 8, the above-mentioned color selection problem can be seen as a “sphere packing problem in a cube”. This problem involves arranging non-overlapping spheres within a cubic container to maximize efficiency, which is the ratio of the total volume occupied by the spheres to the volume of the cube itself. Solving this sphere packing problem directly contributes to color selection, as optimally packed spheres are positioned at their maximum possible distances from each other. Consequently, the centres of these spheres can be considered as the desired color selections.

[0063] Among various strategies for addressing the “sphere packing problem in a cube,” the Hexagonal Close Packing (HCP) configuration stands out with an efficiency of nearly 74%. This means that HCP efficiently utilizes about 74% of the available space in the cube, making it an appealing choice for color selection when t > 8.Mathematically, if there are n identical spheres corresponding to n colors in an RGB cube, then the radius of the sphere can be computed as:where r is the radius of the sphere and a is the side of the cube.

[0064] Next, it is critical that the selected colors ensure the compatibility of the LWCQR code 102 with public QR readers. To tackle this challenge, a two-step approach is employed. Initially, the optimal colors obtained earlier are reorganized into ascending order based on their magnitudes. Subsequently, an ordered color set 212 is divided into two equal subsets, each containing 2n-l colors. The first subset comprises dark colors or those with smaller magnitudes, while the second subset contains light colors with larger magnitudes. Following this, each color in these subsets is adjusted by multiplying them by constants kl and k2, where kl < 1 for dark colors and k2 > 1 for light colors. This adjustment or optimization 214 results in dark colors becoming even darker, and light colors becoming lighter. Now, a lookup table 216 is generated to map the optimal set of colors with all possible sequential combinations of modules 208. Importantly, the sequential patterns corresponding to the black color in the public QR code are assigned dark colors and vice versa. Using this lookup table 216, concatenated layers 210 of the set C are assigned colors 218, which outputs the colorbased LWCQR code 102 using a color palette 220.

[0065] Lastly, to effectively address the issues arising from color shifts and variations in illumination, the color palette 220, referred to as P, has been integrated into the LWCQR Code 102. This palette encompasses the complete spectrum of 2n colors utilized in the generation of the LWCQR code 102. Nevertheless, the incorporation of P presents a distinct challenge: it must be integrated in a manner that does not compromise the decodability of the LWCQR code 102.

[0066] The LWCQR code 102 takes advantage of the distinct properties of optimal colors, which can be categorized into two subgroups: light and dark colors, to tackle this challenge. In any QR code, including LWCQR, the outermost structure of the positional pattern is comprised solely of black (dark-colored) modules, followed by a separator composed of white (light-colored) modules. Leveraging this structural pattern, the palette P 104 is positioned towards the end of the top-left positional pattern, as shown in Figure 1. In doing so, light colorsare placed within the separator region, while dark colors are positioned on the outermost structure of the positional pattern. This strategic arrangement ensures that P does not interfere with the core decodability of the LWCQR code 102. The LWCQR code 102 is similar to a LWCQR code described otherwise in other examples.

[0067] FIGURE.3 is an exemplary recognition process 300 for recognising a lightweight color QR code 102. A decoding or a LWCQR code recognition process requires a custom mobile application that captures a real-time image of a LWCQR code, such as a LWCQR code 102, from a readable medium 302, subsequently extracting the embedded data from all n constituent QR codes. The procedure commences by scanning LWCQR code using a public QR decoder 304, providing users with the access to “public” information 306 and associated information.

[0068] The following steps are performed to access the private information contained within the LWCQR code 102: the LWCQR code 102 exhibits a likeness to Q'i in the grayscale & binarized representation. It signifies that public QR code readers 304 can be utilized to acquire this critical information: LWCQR’ s finder pattern and its version. Utilizing this, the exact location of LWCQR code 102 is determined and it is separated from the rest of the readable medium 302. Now due to difference in the camera viewpoints, every time the image is captured, a segmented LWCQR code 308 is not a perfect square. To correct this, the segmented LWCQR code 308 is mapped to a square using a perspective transformation technique 310. Further, certain preprocessing algorithms 312 helps increase the quality of the segmented and transformed LWCQR code 102, reduce unwanted noise and enhance contrast to provide extracted LWCQR code “Is” 314. The extracted QR code “Is” 314 aids in determining the size and location of each module necessary for further decoding. Now, due to the printing process followed by capturing the LWCQR code 102 with illumination variation, the color palette P of the original LWCQR code 102 is transformed to color palette PS in the extracted LWCQR code “Is” 314.

[0069] The extracted QR code “Is” 314 aids in determining the size and location of each module necessary for further decoding at a determining step 316. Now, due to the printing process followed by capturing the LWCQR code 102 with illumination variation, the color palette P of the original LWCQR code 102 is transformed to color palette PS in the captured image of LWCQR code “Is” 314. Since the sequence of the colors is already known in the color palette P and PS, the mapping M of colors from a color palette P 318 to PS is generated. For retrieving the original colors of each data module 320 in the LWCQR code “Is” 314, thenearest neighbor distance is taken with respect to colors in color palette PS. Mathematically, the distance of any data module IS(x,y) is computed as:where, IR,S(x,y) represents the color of the retrieved data module of the captured image. Each color IR,S(x,y) is a subset of set PS i.e. IR,S(x,y) c PS. Using the above equation, all the data modules are retrieved of the captured image, and it gives the output retrieved image, a corrected LWCQR code “Ir,s” 322. At 324, determine underlying combination (using lookup table), in order to retrieve the original LWCQR code IR 102 with pre-determined optima colors, each color IR,S(x,y) of IR,S are mapped to the new colors using the mapping M defined above. Using this method, the final retrieved LWCQR code (multiple monochrome codes n) 202 is obtained.

[0070] Finally, to decode the retrieved LWCQR code 102, the reverse of the encoding process is applied. Initially, the colors in IR are mapped to their corresponding bit patterns using the lookup table. This step effectively translates the colors back into their original binary representations. Subsequently, the sequential pattern is split to obtain the n layer set CR. Within this set, the first layer corresponds to the retrieved public QR code Q'i, while the remaining layers represent the retrieved similarity matrices. In the final step, the XOR (exclusive OR) operation is applied between the retrieved similarity matrices and the retrieved public QR code Q'i. This operation yields the retrieved monochrome QR codes, which are devoid of color information and can be easily decoded using any public QR code reader.

[0071] FIGURE.4 depicts various exemplary masking patterns 400 available to be used in an exemplary generation process for a lightweight color QR code.

[0072] QR code specifications define that there are eight different masking patterns, also represented and discussed as 202, which are used to invert the color of the modules of a QR code according to a specific rule, which helps QR decoders extract the encoded information conveniently. These are represented as 402a-Mask, 402b-Mask, 402c-Mask, 402d-Mask, 402p- Mask, 402q-Mask, 402r-Mask, 402s-Mask. Every monochrome QR code is generated using one of these mask patterns, which is determined on the basis of a penalty score. The mask that results provided the least penalty score is the optimal one. This penalty score depends on various factors including the occurrence of multiple same-colored modules together, the ratio of blackcolored modules to white-colored modules and the existence of some specific patterns. If the penalty function is ignored, then each monochrome QR code can be represented with eightdifferent monochrome QR codes with the same data corresponding to eight different mask patterns.

[0073] To generate the lightweight color QR, all the underlying monochrome QR codes 202 should be of the same mask. However, the same penalty score can’t be directly used for LWCQRs because of the presence of multiple monochrome QR codes. Considering the above- mentioned issue, a custom penalty rule is generated based on the existing penalty rule. Among n QR codes used to generate LWCQR code, the public QR code QI was found to be the most stable due to its compatibility with public QR readers. Hence the custom penalty rule only considers the set QB to determine theOoptimal. As mentioned in Equation (11), the set Oinitial contains the individual optimal masking patterns for the n - 1 QR codes in the set QB.Oinitial = {o2,o3,...om} (11)As per Equation (12), the set Ounqiue is determined which contains the unique masking patterns from the set Oinitial. Suppose there exist k such unique mask patterns where k < 8.Ounique = Unique(Oinitial) = {opl,op2,...opk} (12)Now the penalty score corresponding to opl mask pattern for all the n - 1 QR codes in the set QB is aggregated. This process is repeated for every mask pattern in the set Ounique, resulting in k new aggregated penalty scores. Finally, the mask pattern with minimum aggregated penalty score is chosen as the Ooptimal.

[0074] FIGURE.5 is transformation 500 used in an exemplary generation process for a lightweight color QR code. The figure represents a similar structure transformation method (SSTM) to make a resultant LWCQR code lightweight & sparse, which makes them robust against cross-module interference.

[0075] SSTM is the process used to increase the structural similarity between different QR codes such that the resultant QR code is lightweight and less dense. The process for the same is as follows: Using given n data values, their monochrome QR codes are generated (502, 504, 506 and 508) using publicly available QR generators. Among these only the private QR codes i.e. 504, 506 and 508 are considered and the optimal masking pattern is determined. Then on every QR codes a reverse masking process (unmasking) is applied, where the color of specific modules is flipped based on a defined formula; Every masking pattern has an underlying formula to flip bit color. So, from one unmasked QR codes, new QR codes, whichare 510, 512, 514 and 516, are generated with the optimal masking pattern. Later these structurally similar QR codes are merged to generate modified LWCQR code 518.

[0076] FIGURE.6 is a public QR reader example 600 for a lightweight color QR code, such as a lightweight color QR code 102. The LWCQR codes uses a similarity structure transformation method, as described earlier, that is utilized where all the n QR codes are transformed such that a resultant structure 208. The resultant structure 208 has both public QR code and private QR codes. The figure shows the compatibility of LWCQR codes with public QR code readers. Public QR code readers convert a captured image of LWCQR code 102 to a grayscale code 604 and then binarize it, using standard thresholding techniques. A resultant binarized LWCQR code 606 resembles a public QR code 602a, which is then decoded and the value in 602a can be extracted. This step doesn’t require any custom decoder application. However, private QR codes 602b and 602c can’t be decoded using this strategy, providing privacy. They require a custom application which is detailed further.

[0077] FIGURE.7 is a two layered lightweight color QR code illustration 700 as shown and described further. A lightweight color QR code 710 is depicted. The lightweight color QR code 710 is similar to a lightweight color QR code 102 as described earlier or otherwise in other examples. The lightweight color QR code 710 has a QR code 1 in layer 702 and a QR code 2 in layer 706.

[0078] In one example, the lightweight color QR code 710 is a result of encoding a keyword “Microwave” from the layer 702 and a keyword “Dishwasher” from the layer 706. The layer 702 is merged as the public QR code and the layer 706 is merged as the private QR code and steps 706 and 708, structurally transforms 702 and 704 respectively. The encoding happens using a method for quick response (QR) code generation as shown in illustrations of Figure 2 or otherwise above.

[0079] In one example, the lightweight color QR code 710 decodes a keyword “Radiate positivity, for it is the beacon that illuminates even the darkest paths” for the layer 702 using a public QR code scanner. The lightweight color QR code 710 decodes a keyword Discover the extraordinary within the ordinary; life's magic lies in the details” for the layer 706. The layer 702 is recognised using a public QR code reader. The layer 706 is recognised using a private QR code recognition method. Private values can only be obtained using a custom application as shown in a mobile application in Figure 10. The decoding happens using a method for quick response (QR) code recognition as shown in illustrations of Figure 3 or otherwise above.

[0080] FIGURE.8 is a three-layered lightweight color QR code illustration 800 as shown and described further. A lightweight color QR code 814 is depicted. The lightweight color QRcode 814 is similar to a lightweight color QR code 102, 710 as described earlier or otherwise in other examples. The lightweight color QR code 814 has a QR code 1 in layer 802, a QR code 2 in layer 806, and a QR code3 in layer 810.

[0081] In one example, the lightweight color QR code 814 is a result of encoding a keyword “Rainy days invite warm tea and books” from the layer 802, a keyword “Snowflakes dance, creating a winter wonderland scene” from the layer 806, and a keyword “Sunsets paint the sky with a palette of warm hues” from the layer 810. The layer 802 is merged as the public QR code and the layer 806, 810 are merged as the private QR codes and steps 804, 808 and 812, structurally transforms 802, 806 and 810 respectively. The encoding happens using a method for quick response (QR) code generation as shown in illustrations of Figure 2 or otherwise above.

[0082] In one example, the lightweight color QR code 814 decodes a keyword “In the garden of self-discovery, cultivate the flowers of authenticity, water them with truth and bask in their fragrance” for the layer 802 using a public QR code scanner. The lightweight color QR code 814 decodes a keyword “Navigate through the chapters of life with resilience, learn from the plot twists, and pen your story with courage” for the layer 806, and a keyword “In the orchestra of existence, let each day be a note, composing a symphony that resonates with purpose and fulfilment” for the layer 810. The layer 802 is merged as the public QR code and the layer 806, 810 are merged as the private QR codes and steps 804, 808, and 812, structurally transforms 802, 806, and 810 respectively. Private values can only be obtained using a custom application as shown in a mobile application in Figure 10. The decoding happens using a method for quick response (QR) code recognition as shown in illustrations of Figure 3 or otherwise above.

[0083] FIGURE.9 is a four layered lightweight color QR code illustration 900 as shown and described further. A lightweight color QR code 918 is depicted. The lightweight color QR code 918 is similar to a lightweight color QR code 102, 710, 814 as described earlier or otherwise in other examples. The lightweight color QR code 918 has a QR code 1 in layer 902, a QR code 2 in layer 906, a QR code 3 in layer 910, and a QR code 4 in layer 914.

[0084] In one example, the lightweight color QR code 918 is a result of encoding a keyword “India Delhi” from the layer 902, a keyword “Afghanistan Kabul” from the layer 906, a keyword “Belarus Minsk” from the layer 910, and a keyword “Canada Ottawa” from the layer 914. The layer 902 is merged as the public QR code and the layer 906, 910, 914 are merged as the private QR codes and steps 904, 908, 912, and 916, structurally transforms 902, 906, 910, and 914 respectively. The encoding happens using a method for quick response (QR) code generation as shown in illustrations of Figure 2 or otherwise above.

[0085] In one example, the lightweight color QR code 918 decodes a keyword “Laughter echoes through canyons.” for the layer 902 using a public QR code scanner. The lightweight color QR code 918 decodes a keyword “Cat meow softly at night” for the layer 906, a keyword “Raindrops tap rhythmic tunes” for the layer 910, and a keyword “Sunsets paint skies with hues” for the layer 914. The layer 902 is merged as the public QR code and the layer 906, 910, 914 are merged as the private QR codes and steps 904, 908, 912, and 916, structurally transforms 902, 906, 910, and 914 respectively. Private values can only be obtained using a custom application as shown in a mobile application in Figure 10. The decoding happens using a method for quick response (QR) code recognition as shown in illustrations of Figure 3 or otherwise above.

[0086] In one example, a table 1.1 below shows how large data can be stored in above multi layered lightweight color QR (LWCQR) codes.Table 1.1 : Multi layered lightweight color QR codesThe LWCQR codes decoding ratio depends on various factors including illumination condition, camera resolution, print quality, presence of noise and distortions. Hence, a quality check is performed prior to decoding of the LWCQR code to check whether an image satisfies the predetermined criteria for successful decoding.Decoding Ratio = Total LWCQR codes decoded / Total number of LWCQR codesAs the number of layers in the LWCQR increases the decoding ratio decreases. Further, LWCQR with lower error correction are more difficult to decode in comparison to higher error correction codes.

[0087] FIGURE.10 is a mobile application 1000 employing a method for recognising the lightweight color QR code on handheld devices. A custom mobile application / app has been created to decode / recognise the private values in a lightweight color QR code. The lightweight color QR code is similar to a lightweight color QR code 102, 710, 814, 918 as described earlier or otherwise in other examples. The custom mobile application ensures the compatibility of all lightweight color QR codes with a public QR code reader on various platforms. In one depiction, a mobile device 1002 is shown with a number of mobile application / app as 1004a, 1004b. The custom mobile application is shown in 1006 on the device. The custom application 1006 on the mobile device 1002 is used to scan a lightweight color QR code printed on a paper or any medium for data transfer / read application. The custom application 1006 on the mobile device 1002 invokes the method for quick response (QR) code recognition as disclosed earlier and reads the multiple layer data encoded in the lightweight color QR code 102. In one example, a handheld QR code scanning device 1002a is shown. The custom mobile application 1006 is used by the handheld QR code scanning device 1002a, it has a processor connected through an application in its memory or connected to a server outside the device 1002a. The custom application 1006 is used to scan a lightweight color QR code printed on a paper or any medium for data transfer / read application. Various types of QR code scanners can be used.

[0088] The generation and recognising codes of the mobile application can be designed as a combined application or also as two separate applications. Both the generation and recognising / decoding process can work offline without internet connectivity. The mobile applications can be use on a cell phone, a tablet, a computer, or any other telecom device.

[0089] In one example, an open-source android-based application is utilized. Experimental data is as follows: a total of 1200 lightweight color QR codes were developed & printed using two color printers and then decoded using two smartphones installed with thecustom android application 1006. These lightweight color QR codes comprises of 2-layer, 3 layer and 4-layer lightweight color QR codes with different QR versions & error corrections.

[0090] When a lightweight color QR code is printed and subsequently captured, multiple factors come into play that can impact the color and overall quality of the captured lightweight color QR code. These factors include lighting conditions, printing quality, the resolution and camera quality of the capturing device, paper quality, and various others. Consequently, the color captured differs from the original colors utilized in generating the lightweight color QR code. To address this disparity, the custom application 1006 employs a multi-step approach. Firstly, it locates and extracts a color palette 104. Then, for each module in the lightweight color QR code, its corresponding color is identified. Subsequently, the custom application 1006 calculates the distance between this identified color and every color in the color palette 104. The color with the minimum distance is deemed the true color. Finally, this true color is mapped back to the original color using the known positions of colors in the color palette 104. This comprehensive process aims to reconcile the differences and ensure accurate color reconstruction in the captured LWCQR code.

[0091] The lightweight color QR code decoding application operates in real-time, capturing frames to detect and decode QR codes, akin to popular scanning applications. If lightweight color QR code decoding remains unsuccessful, another frame is captured, and the same process is repeated. For every frame the following scenarios are possible.

[0092] QR detected and successfully decoded: All the values present in the LWCQR are successfully extracted and promptly visible to the user.

[0093] QR detected and partially decoded: LWCQR consists of N monochrome QR codes and this scenario represents when some of the N monochrome QR codes weren’t decoded successfully due to factors such as lighting conditions, printing quality, capturing quality or tampering. Then, the application stores the partially extracted values, captures another frame, and attempts to decode the LWCQR again. The values from both frames are merged and if all values are successfully extracted after merging, the application displays the result. Otherwise, the process is repeated with another frame.

[0094] QR detected but Not Decoded: This scenario represents when the frame contains the QR code but none of the stored values could be extracted by the decoding process. As a result, the application discards the current frame, captures another frame, and repeats the entire process.

[0095] QR code not detected: This indicates the absence of a QR code in the frame. Similar to other cases, the application discards the current frame and searches for a QR code in the next frame.

[0096] The custom application 1006 can discern these cases and display the applicable scenario for each frame.

[0097] In the case of a blurred QR code, certain changes are observed in the color palette as well. Knowing the order of the color palette allows for matching actual colors with blurred colors based on this order. Then, the color for each module is determined by finding the most similar color from the palette and mapping it back to the original color. However, despite these techniques, the application acknowledges that all scenarios remain possible based on the level of blurring and other factors impacting image quality, such as the capturing device, printing device, lighting, or additional noise.

[0098] If the color palette is tampered, the success of decoding an LWCQR code is drastically reduced. The application handles the situation in two steps: First it assumes that the color palette is present and not tampered. It tries to decode the LWCQR code using the colors present at the location of color palette. But since the color palette is modified, only the public information can be extracted using either custom application or publicly available QR code readers. Private information can’t be recovered. In the next step, the process utilizes the initial color information employed in creating the LWCQR code. It's important to note that these colors may not precisely match those perceived in the printed and captured LWCQR code due to potential factors such as illumination variation, print and scan noise, among others. These variations can significantly alter the captured colors from the original ones, posing a challenge to accurate decoding. The outcome is contingent on the quality of the LWCQR code image. In this scenario, it is very difficult to extract the private information.

[0099] FIGURE.11 is a block diagram 1100 illustrating one implementation of a lightweight color QR code. The lightweight color QR code is similar to a lightweight color QR code as described earlier or otherwise in other examples.

[0100] In one implementation, a quick response (QR) code system 1120 implements a method for LWCQR code generation and LWCQR code recognition on a server 1102, the system 1120 includes a processor(s) 1122, an interface(s) 1124, and a memory 1126 coupled to the processor(s) 1122. The quick response (QR) code system 1120 is also implemented on a QR device 1002, 1002a or alike. The processor(s) 1122 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and / or any devices that manipulate signals based onapplication environment migration instructions. Among other capabilities, the processor(s) 1122 is configured to fetch and execute computer-readable instructions stored in the memory 1126. Although the present subject matter is explained by considering a scenario that the system is implemented as an application on a server, the systems and methods can be implemented in a variety of computing systems. The computing systems that can implement the described method(s) include, but are not restricted to, mainframe computers, workstations, personal computers, desktop computers, minicomputers, servers, multiprocessor systems, laptops, tablets, SCADA systems, smartphones, mobile computing devices and the like.

[0101] The interface(s) 1124 may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, etc., allowing the system 1120 to interact with a user. Further, the interface(s) 1124 may enable the system 1120 to communicate with other computing devices, such as web servers and external data servers (not shown in figure). The interface(s) 1124 can facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example LAN, cable, etc., and wireless networks such as WLAN, cellular, or satellite. The interface(s) 1124 may include one or more ports for connecting a number of devices to each other or to another server.

[0102] A network used for communicating between all elements may be a wireless network, a wired network, or a combination thereof. The network can be implemented as one of the different types of networks, such as intranet, local area network LAN, wide area network WAN, the internet, and the like. The network may either be a dedicated network or a shared network. The shared network represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol HTTP, Transmission Control Protocol / Internet Protocol TCP / IP, Wireless Application Protocol WAP, and the like, to communicate with one another. Further the network may include a variety of network devices, including routers, bridges, servers, computing devices. The network further has access to storage devices residing at a client site computer, a host site server or computer, over the cloud, or a combination thereof and the like. The storage has one or many local and remote computer storage media, including one or many memory storage devices, databases, and the like.

[0103] The memory 1126 can include any computer-readable medium known in the art including, for example, volatile memory (e.g., RAM), and / or non-volatile memory (e.g., EPROM, flash memory, etc.). In one embodiment, the memory 1126 includes module(s) 1128 and system data 1142.

[0104] The modules 1128 further includes an input module 1130, an optimal mask module 1132, a SSTM module 1134, a color module 1136, an identification module 1138, ascanning module 1140 and other modules. The memory 1126 further includes system data 1142 that serves, amongst other things, as a repository for storing data fetched, processed, received, and generated by one or more of the modules 1128. The system data 140 includes, for example, operational data, workflow data, and other data at a storage 1144. The system data 1142 has the storage 1144, represented by 1144a, 1144b, ..., n, as the case may be. In one embodiment, the system data 1142 has access to the other databases over a web or cloud network 1110. The storage 1144 includes multiple databases

[0105] The input module 1130 is used for selecting an input set of QR codes having a public QR code and a private QR code. The input set of QR codes has n number of monochrome codes having a public QR code and n-1 number of private QR codes.

[0106] The optimal mask module 1132 is for using an optimal mask pattern, from a plurality of mask patterns, to invert colors of the input set of QR codes. The optimal set of colors is calculated by the color module while enhancing color contrast and minimizing color interference.

[0107] The SSTM module 1134 is for transforming the input set of QR codes to create a transitional set of QR codes, the transitional set of QR codes retains data encoded in the input set of QR codes

[0108] The color module 1136 for assigning a color from an optimal set of colors to each of modules of the transitional set of QR codes, the optimal set of colors is calculated while maximizing a distance among a set of colors. The color module 1136 embeds a color palette into the lightweight color QR code.

[0109] The identification module 1138 is for identifying the size and location of each of modules from the lightweight color QR code.

[0110] The scanning module 1140 is for acquiring an image and extracting a lightweight color QR code from the image. The scanning modulel l40 comprises an image sensor for acquiring the image having the lightweight color QR code from the image.

[0111] The color module 1136 is also for extracting a color palette from the lightweight color QR code and determining colors for each of the modules from the lightweight color QR code, colors for each of the modules is determined using nearest neighbor distance that is taken with respect to colors in the color palette and preparing a corrected lightweight color QR code using the determined colors and retrieving the encoded data from the corrected lightweight color QR code.

[0112] FIGURE.12 is a flow chart 1200 of the method of generation of a lightweight color QR code.

[0113] Further, the flowcharts are provided to aid in understanding the illustrations and are not to be used to limit scope of the claims. The flowcharts depict example operations that can vary within the scope of the claims. Additional operations may be performed; fewer operations may be performed; the operations may be performed in parallel; and the operations may be performed in a different order.

[0114] At step 1202, the system is configured to select an input set of QR codes having a public QR code and a private QR code. In an embodiment, the selecting is by an interface 1124 of a QR device / system 1120.

[0115] At step 1204, the system is configured to use an optimal mask pattern, from a plurality of mask patterns, to invert colors of each module of the input set of QR codes. In an embodiment, the configuring is by a processor 1122 of the QR device / system 1120 using an optimal mask module 1132 of modules 1128 residing in a memory 1126 coupled to the processor 1122.

[0116] At step 1206, the system is configured to transform the input set of QR codes, using a similarity structure transformation, to create a transitional set of QR codes, the transitional set of QR codes retains data encoded in the input set of QR codes. In an embodiment, the transforming is by the processor 1122 using a SSTM module 1134 of the modules 1128 residing in the memory 1126 coupled to the processor 1122.

[0117] At step 1208, the system is configured to assign a color from an optimal set of colors to each modules of the transitional set of QR codes, the optimal set of colors is calculated while maximizing a distance among a set of colors. In an embodiment, assigning is by the processor 1122 using a color module 1136 of the modules 1128 residing in the memory 1126 coupled to the processor 1122.

[0118] At step 1210, the system is configured to generate a lightweight color QR code from the transitional set of QR codes having the assigned colors to each of modules.

[0119] FIGURE.13 is a flow chart 1300 of the method of recognition of a lightweight color QR code.

[0120] At step 1302, the system is configured to acquire an image, and extracting a lightweight color QR code from the image. In an embodiment, the acquiring is by a scanning module of an interface 1124 of a QR device / system 1120.

[0121] At step 1304, the system is configured to identify the size and location of each of modules from the lightweight color QR code. In an embodiment, the identifying is by a processor 1122 of the QR device / system 1120 using an identification module 1138 of modules 1128 residing in a memory 1126 coupled to the processor 1122.

[0122] At step 1306, the system is configured to extract a color palette from the lightweight color QR code. In an embodiment, extracting is by the processor 1122 using a color module 1136 of the modules 1128 residing in the memory 1126 coupled to the processor 1122.

[0123] At step 1308, the system is configured to determine colors for each of the modules of the lightweight color QR code, colors for each of the modules is determined using nearest neighbor distance taken with respect to colors in the color palette. In an embodiment, assigning is by the processor 1122 using the color module 1136 of the modules 1128 residing in the memory 1126 coupled to the processor 1122.

[0124] At step 1310, the system is configured to prepare a corrected lightweight color QR code using the determined colors and retrieving the encoded data from the corrected lightweight color QR code.

[0125] Although implementations of system and method for lightweight color QR code have been described in language specific to structural features and / or methods, it is to be understood that the appended claims are not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as examples of implementations for lightweight color QR code.

Claims

CLAIMS1. A method for quick response (QR) code generation, the method comprising: selecting, by an interface (1124) of a QR device (1002), an input set of QR codes having a public QR code and a private QR code; using an optimal mask pattern, by a processor (1122) of the QR device (1002), from a plurality of mask patterns (202), to invert colors of each module of the input set of QR codes; transforming the input set of QR codes, by the processor (1122), using a similarity structure transformation, to create a transitional set of QR codes, wherein the transitional set of QR codes retains data encoded in the input set of QR codes; assigning a color from an optimal set of colors to each modules of the transitional set of QR codes, by the processor (1122), wherein the optimal set of colors is calculated while maximizing a distance among a set of colors; generating, by the processor (1122), a lightweight color QR code (102) from the transitional set of QR codes having the assigned colors to each of modules.

2. The method as claimed in claim 1, further comprising: embedding a color palette (104), by the processor (1122), into the lightweight color QR code (102).

3. The method as claimed in claim 1, further comprising: generating a look up table, by the processor (1122), to map the optimal set of colors to each of the modules.

4. The method as claimed in claim 1, wherein the input set of QR codes has n number of monochrome codes having a public QR code and n-1 number of private QR codes.

5. The method as claimed in claim 1, wherein the optimal mask pattern is selected from the plurality of mask patterns based on a penalty score.

6. The method as claimed in claim 1, wherein the distance among the set of colors is maximized where required number of colors are chosen using hexagonal close packing.

7. A method for quick response (QR) code recognition, the method comprising: acquiring an image, by an interface (1124) of a QR device (1002), and extracting a lightweight color QR code (102) from the image;identifying, by a processor (1122) of the QR device (1002), the size and location of each of modules from the lightweight color QR code; extracting, by the processor (1122), a color palette (104) from the lightweight color QR code; determining, by the processor (1122), colors for each of the modules of the lightweight color QR code, wherein colors for each of the modules is determined using nearest neighbor distance taken with respect to colors in the color palette (104); preparing, by the processor (1122), a corrected lightweight color QR code using the determined colors and retrieving an encoded data from the corrected lightweight color QR code.

8. The method as claimed in claim 7, the method further comprising: obtaining a private data from the retrieved encoded data from the corrected lightweight color QR code.

9. The method as claimed in claim 7, the method further comprising: obtaining a public data from the extracted lightweight color QR code from the image using a public QR decoder.

10. The method as claimed in claim 7, wherein the corrected lightweight color QR code is prepared using a color lookup table.

11. The method as claimed in claim 7, wherein the image is acquired using an application installed on a mobile device.

12. The method as claimed in claim 7, wherein the application acquires the image, by capturing a plurality of frames from the image, merging values from the plurality of frames, repeating the capturing, and merging for all of the frames of the image.

13. A system for quick response (QR) code generation, the system comprising: a processor (1122); and a memory (1126) coupled to the processor (1122), wherein the processor (1122) executes a plurality of modules (1128) stored in the memory (1126), and wherein the plurality of modules (1128) comprising: an input module (1130) for selecting an input set of QR codes having a public QR code and a private QR code;an optimal mask module (1132) for using an optimal mask pattern, from a plurality of mask patterns, to invert colors of the input set of QR codes; a SSTM module (1134) for transforming the input set of QR codes to create a transitional set of QR codes, wherein the transitional set of QR codes retains data encoded in the input set of QR codes; a color module (1136) for assigning a color from an optimal set of colors to each of modules of the transitional set of QR codes, wherein the optimal set of colors is calculated while maximizing a distance among a set of colors; to generate a lightweight color QR code (102) from the transitional set of QR codes having the assigned colors to each of modules.

14. The system as claimed in claim 13, the color module (1136) embeds a color palette (104) into the lightweight color QR code (102) without interfering with the structure of the lightweight color QR code (102).

15. The system as claimed in claim 13, further comprising: a printing device coupled to the processor (1122), wherein the printing device prints the generated lightweight color QR code (102) on a printing medium.

16. The system as claimed in claim 13, wherein the input set of QR codes has n number of monochrome codes having a public QR code and n-1 number of private QR codes.

17. The system as claimed in claim 13, wherein the color module embeds a color palette (104) into the lightweight color QR code (102).

18. A system for quick response (QR) code recognition, the system comprising: a processor (1122); and a memory (1126) coupled to the processor (1122), wherein the processor (1122) executes a plurality of modules (1128) stored in the memory (1126), and wherein the plurality of modules (1128) comprising: a scanning module (1140) for acquiring an image, and extracting a lightweight color QR code (102) from the image;an identification module (1138) for identifying the size and location of each of modules from the lightweight color QR code; a color module (1136) for extracting a color palette from the lightweight color QR code and determining colors for each of the modules from the lightweight color QR code (102), wherein colors for each of the modules is determined using nearest neighbor distance that is taken with respect to colors in the color palette and preparing a corrected lightweight color QR code using the determined colors and retrieving an encoded data from the corrected lightweight color QR code.

19. The system as claimed in claim 18, wherein the scanning module (1140) comprises an image sensor for acquiring the image having the lightweight color QR code (102) from the image.

20. The system as claimed in claim 18, further comprising: obtaining a public data and a private data contained in the lightweight color QR code (102).

Citation Information

Patent Citations

  • Method for generating color QR code

    US20170185880A1

  • Authentication via typing cadence, gestures, & QR codes

    US20190243955A1

  • Two-dimensional code image generation method and apparatus, storage medium and electronic device

    US20200226440A1