Sign In to Follow Application
View All Documents & Correspondence

Method And System For Generating A Visual Code

Abstract: Present disclosure relates generally to visual codes which discloses method and system for generating visual codes. A visual code generation system is configured to encode identifier corresponding to at least one type of input information received via electronic device from user and generate visual code points corresponding to at least one type of input information. The visual code generation system is configured to divide generated digital array arranged in at least one concentric square pattern into pre-determined count, to assign generated plurality of visual code points in each of at least one respective concentric square pattern and mark one or more region of interest corresponding to visual code points in divided digital array. Finally, visual code generation system is configured to generate visual code by embedding marked one or more region of interest corresponding visual code points surrounding identifier, in at least one concentric square pattern. FIG. 3C

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
04 September 2020
Publication Number
10/2022
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
ipo@nestip.com
Parent Application

Applicants

GEMN Research and Development Pvt. Ltd.
#11, 4th Cross Rd, Balaji Layout, OMBR Layout, Dodda Banaswadi, Bengaluru.

Inventors

1. Vajramuni B
66/1, 9th cross, Nagavara Palya main road, C V Raman Nagar Post, Bangalore-560096.

Specification

Claims:WE CLAIM:
1. A method of generating a visual code comprising:
encoding, by a visual code generation system configured in an electronic device, an identifier corresponding to at least one type of input information received via the electronic device from a user, wherein the identifier comprises a sequence of at least one of numerals, alphabets, and alpha numeric characters;
generating, by the visual code generation system, a plurality of visual code points corresponding to the at least one type of input information, wherein the generated plurality of visual code points is used for generating a digital array such that the digital array of the plurality of visual code points are arranged in at least one concentric square pattern surrounding the identifier;
dividing, by the visual code generation system, the generated digital array arranged in at least one concentric square pattern into a pre-determined count, to assign the generated plurality of visual code points in each of the at least one respective concentric square pattern, wherein each of the plurality of visual code points is assigned to each side of the each concentric square pattern;
marking, by the visual code generation system, one or more region of interest corresponding to the plurality of visual code points in the divided digital array, wherein marking the one or more region of intertest comprises determining edges of each side of the each concentric square pattern in the divided digital array as a reference to mark the one or more region of interest corresponding to the plurality of visual points; and
generating, by the visual code generation system, a visual code by embedding the marked one or more region of interest corresponding to the plurality of visual code points surrounding the identifier, in at least one concentric square pattern.
2. The method as claimed in claim 1, further comprises:
embedding, by the visual code generation system, one or more anchor points surrounding an identifier area of the visual code, wherein the one or more anchor points comprises at least four anchor points and an orientation anchor point, wherein the orientation anchor comprises a visual code identification image; and
27
outputting, by the visual code generation system, the generated visual code on a user interface of the electronic device, comprising the plurality of visual code points and one or more anchor points.
3. The method as claimed in claim 1, further comprises:
identifying, by the visual code generation system, relevant linkable information corresponding to the received at least one type of input information, from at least one data source communicatively coupled to the electronic device;
creating, by the visual code generation system, a hash code corresponding to the identified relevant linkable information; and
embedding, by the visual code generation system, the created hash codes into the plurality of visual code points by converting the hash codes into relevant binary codes, wherein the binary codes comprises information related to one of assigning and non- assigning the generated plurality of visual code points in each of the at least one respective concentric square pattern.
4. The method as claimed in claim 1, wherein the generated visual code connects adjacent plurality of visual code points within the digital array in two different dimensions, wherein the diving the digital array into pre-determined count comprises slicing the digital array into 10 count each side of the at least one concentric square pattern.
5. The method as claimed in claim 1, wherein the generated plurality of visual code points comprises at least one of numerals, alphabets, and alpha numeric characters, and wherein the each of the visual code point is assigned in each side of the at least one concentric square pattern, wherein each numeral is assigned to each side of the at least one concentric square and the subsequent numerals is assigned in subsequent concentric squares, and wherein each alphabet is assigned to each side out of three sides of the at least one concentric square and the fourth side of the at least one concentric square can be used to assign at least one of numerals and subsequent alphabets.
6. A visual code generation system for generating a visual code comprising:
a processor; and
a memory communicatively coupled to the processor, wherein the memory stores the processor instructions, which, on execution, causes the processor to:
28
encode an identifier corresponding to at least one type of input information received via the electronic device from a user, wherein the identifier comprises a sequence of at least one of numerals, alphabets, and alpha numeric characters;
generate a plurality of visual code points corresponding to the at least one type of input information, wherein the generated plurality of visual code points is used for generating a digital array such that the digital array of the plurality of visual code points are arranged in at least one concentric square pattern surrounding the identifier;
divide the generated digital array arranged in at least one concentric square pattern into a pre-determined count, to assign the generated plurality of visual code points in each of the at least one respective concentric square pattern, wherein each of the plurality of visual code points is assigned to each side of the each concentric square pattern;
mark one or more region of interest corresponding to the plurality of visual code points in the divided digital array, wherein marking the one or more region of intertest comprises determining edges of each side of the each concentric square pattern in the divided digital array as a reference to mark the one or more region of interest corresponding to the plurality of visual points; and
generate a visual code by embedding the marked one or more region of interest corresponding to the plurality of visual code points surrounding the identifier, in at least one concentric square pattern.
7. The visual code generation system as claimed in claim 8, wherein the processor is further configured to:
embed one or more anchor points surrounding an identifier area of the visual code, wherein the one or more anchor points comprises at least four anchor points and an orientation anchor point, wherein the orientation anchor comprises a visual code identification image; and
output the generated visual code on a user interface of the electronic device, comprising the plurality of visual code points and one or more anchor points.
8. The visual code generation system as claimed in claim 8, wherein the processor is further configured to:
29
identify relevant linkable information corresponding to the received at least one type of information, from at least one data source communicatively coupled to the electronic device;
create a hash code corresponding to the identified relevant linkable information; and
embed the created hash codes into the plurality of visual code points by converting the hash codes into relevant binary codes, wherein the binary codes comprises information related to one of assigning and non- assigning the generated plurality of visual code points in each of the at least one respective concentric square pattern.
9. The visual code generation system as claimed in claim 8, wherein the generated visual code connects adjacent plurality of visual code points within the digital array in two different dimensions, wherein the diving the digital array into pre-determined count comprises slicing the digital array into 10 count each side of the at least one concentric square pattern.
10. The visual code generation system as claimed in claim 8, wherein the generated plurality of visual code points comprises at least one of numerals, alphabets, and alpha numeric characters, and wherein the each of the visual code point is assigned in each side of the at least one concentric square pattern, wherein each numeral is assigned to each side of the at least one concentric square and the subsequent numerals is assigned in subsequent concentric squares, and wherein each alphabet is assigned to each side out of three sides of the at least one concentric square and the fourth side of the at least one concentric square can be used to assign at least one of numerals and subsequent alphabets. , Description:TECHNICAL FIELD
[0001] The present subject matter relates generally to visual codes. More particularly, but not exclusively, discloses method and system for generating visual codes, which can be detected from long distance.
BACKGROUND
[0002] In current scenario, individuals and businesses have increasingly turned to mobile computing devices to convey information or make transaction. For instance, individuals routinely utilize mobile computing devices to send and receive electronic communications, communicate demographic data, or facilitate payment transactions, and so on. Although, computing devices and corresponding digital systems allow users to interact in a variety of ways, conventional digital systems still have a plurality of problems. For instance, in order to convey information/demographic data to others, many conventional digital systems require users to first identify and/or digitally connect with a third party. For example, in order to provide address in shortest way or make payment to another individual, conventional digital systems require a user to somehow identify information corresponding to the other individual. This typically involves asking for, and manually entering, identifying information (e.g., a phone number, location address, e-mail address, or bank account information) or searching through a list of users provided by the digital system. In addition, users often express frustration with such conventional digital systems. Further, the process of searching for, or otherwise trying to obtain, an identifier corresponding to other users of a digital system often requires an extensive amount of time and leads to user frustration. For example, upon meeting a new person, users often express frustration with the process of exchanging and manually entering personal information into mobile devices. Similarly, although some conventional digital systems provide searching user lists, identifying other parties utilizing such lists is often unreliable (e.g., users often incorrectly select a different user/ user information with a similar name) and inconvenient (e.g., users often take a significant amount of time to identify the correct user/ user information). One will appreciate that such problems are exacerbated when searching among millions or billions of users/ user information, many with the same or similar names or other identifying information. Further, remembering such user/demographic information may not be possible always or to remember for long time.
3
[0003] In general, bar codes are machine readable markings that are used to encode and store information in a normal geometric pattern, or compressed symbol. Early two dimensional 2D bar codes were simply multiple rows of one dimensional 1D bar codes. Matrix-type codes later evolved with black and white dots or squares arranged in a regular rectangular pattern. Currently, there are a variety of 2D code patterns. Of the 2D codes, only the 3-D code is based on a circular geometry. While a variety of codes configurations exist today, a need for a code which can be detected and scanned from long distance, which uses less processing power to recognize and produce the information. It is to the solution of these and other problems that the present disclosure is directed.
SUMMARY
[0004] Disclosed herein is a method of generating a visual code. The method includes encoding an identifier corresponding to at least one type of input information received via the electronic device from a user. The identifier includes a sequence of at least one of numerals, alphabets, and alpha numeric characters. Further, the method includes generating a plurality of visual code points corresponding to the at least one type of input information. The generated plurality of visual code points is used for generating a digital array such that the digital array of the plurality of visual code points are arranged in at least one concentric square pattern surrounding the identifier. Furthermore, the method includes dividing the generated digital array arranged in at least one concentric square pattern into a pre-determined count, to assign the generated plurality of visual code points in each of the at least one respective concentric square pattern. Each of the plurality of visual code points is assigned to each side of each concentric square pattern. Thereafter, the method includes marking one or more region of interest corresponding to the plurality of visual code points in the divided digital array. Marking the one or more region of intertest includes determining edges of each side of each concentric square pattern in the divided digital array as a reference to mark the one or more region of interest corresponding to the plurality of visual points. Finally, the method includes generating a visual code by embedding the marked one or more region of interest corresponding to the plurality of visual code points surrounding the identifier, in at least one concentric square pattern.
[0005] Further, the present disclosure includes a visual code generation system for generating a visual code comprising a processor and a memory communicatively coupled to the
4
processor, wherein the memory stores the processor instructions, which, on execution, causes the processor to encode an identifier corresponding to at least one type of input information received via the electronic device from a user. The identifier comprises a sequence of at least one of numerals, alphabets, and alpha numeric characters. Further, the processor is configured to generate a plurality of visual code points corresponding to the at least one type of input information. The generated plurality of visual code points is used for generating a digital array such that the digital array of the plurality of visual code points are arranged in at least one concentric square pattern surrounding the identifier. Furthermore, the processor is configured to divide the generated digital array arranged in at least one concentric square pattern into a pre-determined count, to assign the generated plurality of visual code points in each of the at least one respective concentric square pattern. Each of the plurality of visual code points is assigned to each side of each concentric square pattern. Thereafter, the processor is configured to mark one or more region of interest corresponding to the plurality of visual code points in the divided digital array. Marking the one or more region of intertest comprises determining edges of each side of each concentric square pattern in the divided digital array as a reference to mark the one or more region of interest corresponding to the plurality of visual points. Finally, the processor is configured to generate a visual code by embedding the marked one or more region of interest corresponding to the plurality of visual code points surrounding the identifier, in at least one concentric square pattern.
[0006] The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.
BRIEF DESCRIPTION OF THE ACCOMPANYING DIAGRAMS
[0007] The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the figures to reference like features and components. Some embodiments of system and/or methods in accordance with embodiments of the present subject matter are now described, by way of example only, and with reference to the accompanying figures, in which:
5
[0008] FIG. 1 illustrates an exemplary architecture for generating a visual code, in accordance with some embodiments of the present disclosure;
[0009] FIG. 2 illustrates a detailed block diagram of a visual code generation system, in accordance with some embodiments of the present disclosure;
[0010] FIG. 3A-3O illustrates a schematic diagram of an exemplary sequence of generation of visual code in accordance with some embodiments of the present disclosure;
[0011] FIG. 4 is a flowchart depicting a method for generating a visual code, in accordance with some embodiments of the present disclosure; and
[0012] FIG. 5 is a block diagram of an exemplary computer system for implementing embodiments consistent with the present disclosure.
[0013] It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and executed by a computer or processor, whether or not such computer or processor is explicitly shown.
DETAILED DESCRIPTION
[0014] In the present document, the word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any embodiment or implementation of the present subject matter described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.
[0015] While the disclosure is susceptible to various modifications and alternative forms, specific embodiment thereof has been shown by way of example in the drawings and will be described in detail below. It should be understood, however that it is not intended to limit the disclosure to the forms disclosed, but on the contrary, the disclosure is to cover all modifications, equivalents, and alternative falling within the scope of the disclosure.
[0016] The terms “comprises”, “comprising”, “includes” or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, device or method that includes a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or device or method. In other words, one or more elements in a system or apparatus
6
proceeded by “comprises… a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or method.
[0017] Disclosed herein are method and system for generating a visual code A visual code generation system associated with an electronic device may encode an identifier corresponding to at least one type of input information received via the electronic device from a user. The identifier includes a sequence of at least one of numerals, alphabets, and alpha numeric characters. Further, the visual code generation system generates a plurality of visual code points corresponding to the at least one type of input information. The generated plurality of visual code points is used for generating a digital array such that the digital array of the plurality of visual code points are arranged in at least one concentric square pattern surrounding the identifier. Furthermore, the visual code generation system divides the generated digital array arranged in at least one concentric square pattern into a pre-determined count, to assign the generated plurality of visual code points in each of the at least one respective concentric square pattern. Each of the plurality of visual code points is assigned to each side of each concentric square pattern. Thereafter, the visual code generation system marks one or more region of interest corresponding to the plurality of visual code points in the divided digital array. Marking the one or more region of intertest includes determining edges of each side of each concentric square pattern in the divided digital array as a reference to mark the one or more region of interest corresponding to the plurality of visual points. Finally, the visual code generation system generates a visual code by embedding the marked one or more region of interest corresponding to the plurality of visual code points surrounding the identifier, in at least one concentric square pattern.
[0018] A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary, a variety of optional components are described to illustrate the wide variety of possible embodiments of the invention. In the following detailed description of the embodiments of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the disclosure, and it is to be understood that other embodiments may be utilized and that changes may be made without departing from the scope of the present disclosure. The following description is, therefore, not to be taken in a limiting sense.
7
[0019] FIG. 1 illustrates an exemplary architecture 100 for generating a visual code, in accordance with some embodiments of the present disclosure.
[0020] The architecture 100 includes an electronic device 102, a visual code generation system 104 associated with the electronic device 102. In some embodiments, the visual code generation system 104 may be configured within the electronic device 102. In an embodiment, the electronic device 102 may include, but not limited to, a mobile phone, a cellular phone, a smartphone, a tablet, a phablet, a smartwatch, a laptop, a computer, a notebook, a personal digital assistant, an e-reader, a dedicated visual code generation, and the like. In some embodiments, the visual code generation system 104 may be associated with the electronic device 102 via a communication network (not shown in FIG. 1). The communication network may be at least one of a wired communication network and a wireless communication network. The visual code generation system 104 can be configured in at least one of, but not limited to, a mobile device, a server, a cloud server, a cloud computing device, and the like. The visual code generation system 104 may include a processor 106, an Input/Output (I/O) interface 108 and a memory 110. The I/O interface 108 may be configured to receive inputs such as input information, a demographic data, a print input for printing a visual code, a visual code scan input, generating a visual code output, which includes marked one or more region of interest corresponding to the plurality of visual code points surrounding the identifier, in at least one concentric square pattern, and so on, from a user of the electronic device 102. Further, the visual code generation system 104 may determine a connectivity to a printer, connectivity to a mobile data/Wi-Fi, and the like.
[0021] As used herein, the term “visual code” refers to a machine-readable matrix. In particular, the term “visual code” includes a plurality of modules (e.g., blocks, dots, triangular, or other shapes) encoded in a digital array that can be read by an imaging (e.g., scanning) device such as the electronic device 102. For example, in one or more embodiments, the digital visual code comprises a plurality of marked visual code points arranged in the digital array of concentric square pattern surrounding the identifier. In addition to a plurality of concentric square, the digital visual codes can also include other designs or shapes (e.g., a concentric circle, a rounded circle or other shape). In addition to the digital visual code points, as described in greater detail below, the digital visual code can also include one or more anchor points and/or orientation anchors. As used herein, the term “digital array” refers to a matrix of visual code points. In particular, the term “digital array” includes a plurality of visual code points arranged in
8
a pattern or shape. For example, the digital array comprises the plurality of visual code points arranged in four concentric circles around the identifier. As used herein, the term “visual code points” refers to entries in a digital array. In particular, the term “visual code points” can be toggled (e.g., on or off, marked, or unmarked, assign or unassign). The digital array can also include one or more anchor points and/or one or more orientation anchors. As used herein, the term “anchor points” refers to a digital item embedded in the visual code that provides a visual reference for the location of visual code points or for identifying a type of the visual code. In particular, the term “anchor points” includes a circle, square, dot, or other shape in the visual code that provides a visual reference to assist an imaging device such as electronic device 102 to decode the digital visual code and/or the digital visual code points or to identify the type of visual code by the imaging device such as electronic device 102. Specifically, the digital array comprises the four anchor points, which are represented as a block encompassed by a larger square. As described in greater detail below, the visual code generation system 104 utilizes the anchor points to accurately identify the location of visual code points in decoding the visual code.
[0022] Similarly, as used herein, the term “orientation anchor” refers to a digital item embedded in the digital visual code that provides a visual reference for orientation of the digital visual code and/or visual code points. In particular, the term “orientation anchor” refers to a standard image portraying a shape, symbol, mark, or brand with a particular orientation (e.g., rotation in relation to the remainder of the visual code). As described in greater detail below, the visual code generation system 104 can utilize the orientation anchor to orient the visual code. In one or more embodiments, the visual code generation system 104 generates the identifier, visual code points, anchor points, orientation points, and/or the digital media item utilizing particular dimensions. For example, in one or more embodiments, the visual code generation system 104 increases the speed and efficiency of scanning and decoding the visual code by utilizing defined dimensions amongst the visual code points, the anchor points, orientation points, and/or the digital media item area. In an embodiment, the visual code generation system 104 associated with the electronic device 102 is configured to encode the identifier corresponding to at least one type of input information received via the electronic device from a user. In an embodiment, the identifier includes a sequence of at least one of numerals, alphabets, alpha numeric characters, and so on. In an embodiment, the visual code generation system 104 is configured to identify relevant linkable information
9
corresponding to the received at least one type of information, from at least one data source communicatively coupled to the electronic device 102. In an embodiment, the visual code generation system 104 is configured to create a hash code corresponding to the identified relevant linkable information. In an embodiment, the visual code generation system 104 is configured to embed the created hash codes into the plurality of visual code points by converting the has codes into relevant binary codes. In an embodiment, the binary codes include information related to one of assigning and non-assigning the generated plurality of visual code points in each of the at least one respective concentric square pattern. In an embodiment, the visual code generation system 104 is configured to generate a plurality of visual code points corresponding to the at least one type of input information. In an embodiment, the generated plurality of visual code points is used for generating a digital array such that the digital array of the plurality of visual code points are arranged in at least one concentric square pattern surrounding the identifier. In an embodiment, the generated plurality of visual code points comprises at least one of numerals, alphabets, and alpha numeric characters, and wherein the each of the visual code point is assigned in each side of the at least one concentric square pattern. Each numeral is assigned to each side of the at least one concentric square and the subsequent numerals is assigned in subsequent concentric squares, and wherein each alphabet is assigned to each side out of three sides of the at least one concentric square and the fourth side of the at least one concentric square can be used to assign at least one of numerals and subsequent alphabets.
[0023] In an embodiment, the visual code generation system 104 is configured to divide the generated digital array arranged in at least one concentric square pattern into a pre-determined count, to assign the generated plurality of visual code points in each of the at least one respective concentric square pattern. In an embodiment, the digital array is divided into pre-determined count by slicing the digital array into 10 count each side of the at least one concentric square pattern. In an embodiment, each of the plurality of visual code points is assigned to each side of each concentric square pattern. In an embodiment, the visual code generation system 104 is configured to mark one or more region of interest corresponding to the plurality of visual code points in the divided digital array. In an embodiment, marking the one or more region of intertest comprises determining edges of each side of the each concentric square pattern in the divided digital array as a reference to mark the one or more region of interest corresponding to the plurality of visual points. In an embodiment, the visual code generation system 104
10
is configured to embed one or more anchor points surrounding an identifier area of the visual code. In an embodiment, the one or more anchor points comprises at least four anchor points and an orientation anchor point. In an embodiment, the orientation anchor comprises a visual code identification image. In an embodiment, the visual code generation system 104 is configured to generate a visual code on a user interface of the electronic device 102, by embedding the marked one or more region of interest corresponding to the plurality of visual code points surrounding the identifier, in at least one concentric square pattern, including one or more anchor points. In an embodiment, the generated visual code connects adjacent plurality of visual code points within the digital array in two different dimensions.
[0024] FIG. 2 illustrates a detailed block diagram of the visual code generation system 104, in accordance with some embodiments of the present disclosure.
[0025] In some implementations, the visual code generation system 104 may include data 202 and modules 204. As an example, the data 202 is stored in the memory 110 configured in the visual code generation system 104 as shown in the FIG. 2. In one embodiment, the data 202 may include identifier data 206, visual code point data 208, digital array data 210, Region of Interest (ROI) mark data 212, visual code data 214, and other data 216. In the illustrated FIG.2, modules 204 are described herein in detail. In an embodiment, the data 202 may be stored in the memory 110 in the form of various data structures. Additionally, the data 202 can be organized using data models, such as relational or hierarchical data models. The other data 216 may store data, including temporary data and temporary files, generated by the modules 204 for performing the various functions of the visual code generation system 104.
[0026] In an embodiment, the data 202 stored in the memory 110 may be processed by the modules 204 of the visual code generation system 104. The modules 204 may be stored within the memory 110. In an example, the modules 204 communicatively coupled to the processor 106 configured in the visual code generation system 104, may also be present outside the memory 110 as shown in FIG. 2 and implemented as hardware. As used herein, the term modules refer to an application-specific integrated circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and memory that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that provide the described functionality. In an embodiment, the modules 204 may include, for example, an identifier encoding module 218, a visual code point generation module 220, a digital array dividing module 222, a Region of
11
Interest (ROI) marking module 224, a visual code generation module 226, and other modules 228. The other modules 228 may be used to perform various miscellaneous functionalities of the visual code generation system 104. It will be appreciated that such aforementioned modules 204 may be represented as a single module or a combination of different modules. In an embodiment, the identifier encoding module 218 may encode the identifier corresponding to at least one type of input information received via the electronic device from a user. In an embodiment, the identifier data 206 includes a sequence of at least one of numerals, alphabets, alpha numeric characters, and so on. For example, FIG. 3A illustrates a representation of generating an identifier corresponding to input information, in accordance with some embodiments of the present disclosure. In particular, FIG. 3A illustrates the visual code generation system 104 converting via the identifier encoding module 218 at least one type of input information inputted by a user, into a binary code. Once the at least one type of input information inputted by the user via electronic device 102, the visual code generation system 104 identifies a relevant linkable information corresponding to the received at least one type of input information, from at least one data source (not shown) communicatively coupled to the electronic device 102. The at least one data source can be, at least one of, but not limited to, a dedicated server, a social media server, a geographic maps server, a payments server, and so on. The at least one type of input information and the linkable information can be at least one of, but not limited to, a user information, demographic information, bank account information, address information, contact information, payment link information, and so on.
[0027] As mentioned previously, in one or more embodiments, the identifier encoding module 218 embeds one or more identifiers into a digital array to generate the visual code. As used herein, the term “identifier” refers to a sequence of characters/numbers or both used to identify the visual code or input information in the visual code. In particular, the term “identifier” includes a username, a user Identity (ID), a payment identity, a demographic identity, a hash, or a binary code indicating the at least one type of input information. Depending on the embodiment, the identifier encoding module 218 can utilize username, user Identity (ID), payment identity, demographic identity, hash, or binary code indicating the at least one type of input information corresponding to at least one type of input information as the identifier and encode the identifier into the digital visual code.
12
[0028] As an example, the identifier can comprise a string of characters chosen by the user by which the user/business chooses to identify themselves on the visual code. The identifier can also be non-coded information. The identifier may or may not be unique to the user/business. For example, the user may select “ABCD” or “1234” or “AB12” as the username. There may be ten, hundreds, or even thousands of other users that selected “ABCD” or “1234” or “AB12” as the identifier. The visual code generation system 104 can associate one or more of a user ID or a unique identifier with the user/business to uniquely identify the user/business or demographic information of the user/business. For example, a user ID for the user/business may comprise a unique string of characters based on the identifier. In particular, in an embodiment, the user ID can comprise the username with a random string, such as CD1122, where 1122 is a randomly generated string. The identifier can allow the visual code generation system 104 to identify and link to an account/data of the user/business. The account can be social media account, bank account, and so on. In still further embodiments, the identifier encoding module 218 can utilize a hash code. For example, the hash code for the user can be a string of numbers or alpha/alphanumeric characters (such as 6666) obtained by performing a hashing algorithm on the at least one type of information/ linkable information provided by the user of the electronic device 102.
[0029] In an embodiment, the identifier encoding module 218 transforms at least one type of information such as the username, user ID, payment identity, demographic identity and/or hash into a binary code. For example, the identifier encoding module 218 can transform alphanumeric characters of the linkable information associated with the at least one type of information into binary codes to generate a binary code corresponding to identifier. The binary codes need not be just 1 and 0, it can be any number or string or alphabets which are represented using the binary codes. Thus, as illustrated in relation to FIG. 3A, the identifier encoding module 218 transforms the linkable information into the identifier 302. In addition, the electronic device 102 can also identify the generated identifier 302 corresponding to the at least one type of information, transform the identifier into a hash using a hashing algorithm, and transform the hash into the binary code to perform corresponding action relevant to the identifier 302 or the visual code. It will be appreciated that although FIG. 3A illustrates generating the identifier 302 of single user associated with the at least one type of input information, the visual code generation system 104 can generate the identifier 302 that reflects a group, a plurality of users, or a business, and so on. Furthermore, in addition
13
to identifying at least one type of input information, the visual code generation system 104 can also generate other identifier that reflects other information. For example, the visual code generation system 104 can generate an action identifier (not shown) corresponding to a particular action. As used herein, the term “action identifier” refers to digital information indicating an action. For example, an action identifier includes a code that indicates an action to perform for the electronic device 102. The action identifier can take a variety of forms. In an embodiment, the identifier encoding module 218 can generate a binary code that reflects a particular action. For example, the identifier encoding module 218 can generate a binary code that indicates initiating a payment transaction, initiating a database search, initiating route map, initiating a call, initiating or some other action. The action identifier can comprise a binary code separate from (e.g., in addition to) the identifier or the action identifier can be part of the same binary code as the identifier (e.g., the digital identification system can generate a binary code that identifies both the at least one type of information and the action).
[0030] As mentioned above, in an embodiment, the visual code generation module 226 embeds one or more identifiers 302 in between a surrounded digital array of visual code points to generate the visual code. In particular, FIG. 3B illustrates embedding the identifier 302 on to the digital array of visual code points 304. Specifically, FIG. 3B illustrates embedding the identifier 302 on to the digital array of the visual code points 304. In an embodiment, the visual code point generation module 220 may generate a plurality of visual code points 304 corresponding to the at least one type of input information. In an embodiment, the generated plurality of visual code points 304 is used for generating the digital array, such that the digital array of the plurality of visual code points 304 are arranged in at least one concentric square pattern surrounding the identifier 302. In an embodiment, the visual code point data 208 includes at least one of numerals, alphabets, and alpha numeric characters. Each of the visual code point 304 is assigned in each side of the at least one concentric square pattern. Each numeral is assigned to each side of the at least one concentric square and the subsequent numerals is assigned in subsequent concentric squares. Each alphabet is assigned to each side out of three sides of the at least one concentric square and the fourth side of the at least one concentric square can be used to assign at least one of numerals and subsequent alphabets.
[0031] As shown in FIG. 3C, the visual code point generation module 220 may embed the bits of a binary array into corresponding visual code points 304a-304n (collectively referred hereinafter as 304) of the digital array. Therefore, the visual code points 304a-304n are
14
toggled according to the corresponding binary array. The visual code point generation module 220 can also embed information in the visual code in other ways. For instance, the visual code point generation module 220 can vary the colour or thickness or size or width of the visual code points 304 to further embed additional information. Further, in addition to connecting adjacent visual code points within the concentric squares, visual code point generation module 220 can also connect adjacent points across concentric squares. For example, the visual code point generation module 220 can connect two visual code points in two different concentric squares. Furthermore, the visual code comprises the plurality of visual code points 304 within the concentric square. However, the visual code connects adjacent visual code points within the digital array in two different dimensions (i.e., vertically, and horizontally). In an embodiment, the digital array dividing module 222 may divide the generated digital array arranged in at least one concentric square pattern into a pre-determined count, to assign the generated plurality of visual code points 304 in each of the at least one respective concentric square pattern. In an embodiment, the digital array data 210 is divided into pre-determined count by slicing the digital array data 210 into 10 count each side of the at least one concentric square pattern. In an embodiment, each of the plurality of visual code point data 208 is assigned to each side of each concentric square pattern. In an embodiment, the ROI marking module 224 may mark one or more region of interest corresponding to the plurality of visual code points 304 in the divided digital array. In an embodiment, marking the one or more region of intertest includes ROI mark data 212 which helps in determining edges of each side of the each concentric square pattern in the divided digital array as a reference to mark the one or more region of interest corresponding to the plurality of visual points.
[0032] In particular, the ROI marking module 224 selectively marks visual code points 304 based on the binary array to embed the binary array into the digital array. Thus, in one or more embodiments, bits marked as “1” in the binary array are encoded in the digital array by selectively marking a corresponding visual code point 304 in the digital array. Specifically, in relation to FIG. 3C, the affirmatively marked visual code points 304 correspond to “1” values in the binary array. The unmarked visual code points 304 corresponding to “0” values in the binary array. As discussed previously, the ROI marking module 224 can also connect selectively marked visual code points 304 to generate the visual code. In particular, in an embodiment, the ROI marking module 224 connects adjacent digital visual code points and removes unmarked visual code points.
15
In particular, the ROI marking module 224 determines that the visual code points 304 are selectively marked and adjacent visual code points within the concentric square of the digital array. Accordingly, the ROI marking module 224 connects the visual code points 304 with a sequence in generating the visual code. In an embodiment, the ROI marking module 224 also removes visual code points that are not marked. Accordingly, the visual code leaves open space corresponding to the location of the unmarked visual code points. In another instance, the visual code utilizes visual code points 304 in concentric square, similar to the visual code of FIG. 3C. In some instances, the visual code utilizes two/three concentric square rather than four. Similarly, in yet some instances, the visual code utilizes three sides of the concentric square and not four. Therefore, the utilized concentric square or side of the concentric square is not marked or shown during the generation of the visual code.
[0033] In an embodiment, the visual code generation module 226 may embed one or more anchor points surrounding an identifier area of the visual code. In an embodiment, the one or more anchor points comprises at least four anchor points 306a, 306b and an orientation anchor point 308 as shown in FIG. 3A and 3D. In an embodiment, the orientation anchor 308 can also include a visual code identification image or direction of reading the visual code. In an embodiment, the visual code generation module 226 may generate the visual code on a user interface of the electronic device 102, by embedding the marked one or more region of interest corresponding to the plurality of visual code points 304 surrounding the identifier 302, in at least one concentric square pattern, including one or more anchor points 306a. In an embodiment, the visual code data 214 connects adjacent plurality of visual code points 304 within the digital array in two different dimensions. Furthermore, the visual code utilizes visual code points 304 within the concentric square pattern. In addition, the anchor points 306b in visual code can be used as reference points for marking the visual code points 304. Thereafter, the visual code includes anchor points 306b outside of the identifier area and in the edges of concentric square pattern for reference of marking the visual code points 304 or scanning the visual code points 304. Further, rather than utilizing four anchor points 306a around the identifier, the visual code utilizes three anchor points or no anchor points. As discussed above, the visual code generation module 226 can generate and utilize visual code(s) to provide one or more information associated with the at least one type of information, to direct to a payment gate way, to direct to the geographic map, and so on. In an embodiment, the electronic device 102 capable of scanning visual
16
code(s) such as mobile devices, smartphones, or tablets, which include scanning devices capable of scanning visual codes.
[0034] The present disclosure is explained below with the help of some exemplary scenarios. However, this should not be construed as a limitation of the present disclosure as the present disclosure may be applicable to other scenarios as well.
Exemplary scenario 1
[0035] FIG. 3E illustrates plurality of positions of the values of the visual code points 304 in columns. The position of the values of the visual code points 304 in the left side of the column starts from the bottom array of the concentric square. Further, in the right side of the column values of the visual code points 304 starts from the top array of the column, that is 0,1,2,3,4,5,6,7,8 and 9 as shown in FIG. 3E. For instance, the left side of the column can have one marked/colour block placed on the 5th position and on the right side of the column the block is placed on 6th position, so that each side represents each value of the visual code points. Similarly, FIG. 3F illustrates plurality of positions of the values of the visual code points 304 in rows. In the top side of the row the value of the visual code points starts from left array, were as in the bottom of the row the values of the visual code points 304 starts from the right cell, that is 0,1,2,3,4,5,6,7,8 and 9. Each row or column parallel to the main concentric square, that can represent only one coded value that is single digit or alphabet or both. That is in any single layer of rows and columns parallel to the main concentric square can have maximum four digits. To illustrate, with regard to FIG. 3E, for example, each visual code points 304 may have a diameter of one unit. The anchor points 306a and the orientation anchor 308 each have a diameter of five units (relative to the one unit of the visual code points). It will be appreciated that the visual code generation system 104 can utilize different relative dimensions in other embodiments. For example, the visual code points 304 can each have a diameter of half unit, the anchor points 306a or 306b can each have a diameter of two or two and half units, the orientation anchor 308 can have a diameter of three or four units.
[0036] In addition, although FIG. 3E and 3F illustrates a particular shape of the digital array with a particular arrangement of visual code points 304 (i.e., digital visual code points in concentric square), anchor points 306a or 306b, and the orientation anchor 308, it will be appreciated that the visual code generation system 104 can utilize the digital array with a different shape, with a different arrangement of visual code points, a
17
different number and arrangement of anchor points, and a different number and arrangement of orientation anchors. For example, rather than utilizing four anchor points aligned with horizontal and vertical axes of the digital array, the digital identification system can utilize a different number (e.g., two, five, at least three, or some other number) of anchor points arranged at some other location in relation to the digital array (e.g., above, below, outside, or some other location). Similarly, rather than arranging visual code points in concentric squares, the visual code generation system 104 can generate a digital array with visual code points in a variety of other shapes and arrangements (e.g., rows and columns in a rectangle, triangle, rounded square, and so on).
Exemplary scenario 2
[0037] FIG. 3G illustrates a placement of first four-digit coded values of the visual code points 304 in the first layer of the concentric square. The values in each array of the concentric square, the values of the visual code points 304 start from left side of the column in clockwise direction or anti-clockwise direction. The first value is in the left side of the column, the second value is in the top row, third value is in the right column and the fourth value in the bottom row as depicted in the FIG. 3G. Further, FIG. 3H depicts the generated visual code comprising visual code points 304 and anchors points 306a, 306b, 308. The final generated visual code may not include the reference numbers such as 1, 2, and so on, of the visual code points.
[0038] FIG. 3I illustrates a placement of eight-digit coded values of the visual code points 304 in the first layer and second layer of the concentric square. The first four-digit values are placed in the first layer and the next four-digit values are placed in the second layer of the concentric square. FIG. 3J illustrates a placement of sixteen-digit coded values of the visual code points 304 from the first layer to fourth layer of the concentric square. The first set of eight digit codes is placed in the two layers inside the main square box and the next set of eight digit code is placed on the two outer layers of the main reference square of the visual code, that is four digits in the first outer layer and the next four digits in the next outer layer. The visual code can have multi-layer of rows and columns inside the perimeter of the main reference square or outside of the perimeter of the main reference square or it can have both inside and outside the perimeter of the main reference square. The reference anchor points 306b are placed in all the four corners of the main reference square as a boundary of identification of the visual code points 304.
18
Exemplary scenario 3
In an embodiment, the one or more anchor points as shown in FIG. 3A and 3D can also be extended to each digital array of the visual points. For instance, FIG. 3K illustrates a placement of second anchor points 306c. Accordingly, the visual code can include anchor points 306b outside of the identifier area and in the edges of first concentric square pattern, and also second anchor points 306c outside of the first concentric square pattern and in the edges of a second concentric square pattern as depicted in FIG. 3K, for reference of marking the visual code points 304 or scanning the visual code points 304. Consider an exemplary scenario, where the visual code for geographical location is generated. For instance, the address of a location can be No. 123, ABC street, GHI state/county, MNOP city, PIN: 11223344ABC. The electronic device 102 identify relevant linkable information corresponding to the received at least one type of information (i.e. address), from at least one data source communicatively coupled to the electronic device 102. The visual code generation system 104 determines latitude =45.655676, and longitude= 124.47355 from the linkable information. The latitude and longitude can be generated as single number= 4565567612447355, on the visual code. Generation and representation of first four digit of the address (i.e. latitude and longitude) which is 4565 is placed in the first concentric circle from left side of the visual code. The first digit which is 4 is placed in fifth place of the left column of the first concentric square, which is equally divided column that is 0 to 9. The second digit which is 5 is placed in sixth place in the top row (i.e. e.g. clockwise direction) of the first concentric square of the equally divided column that is 0 to 9. The third digit that is 6 is seventh place placed in the right column of the first concentric square in of the equally divided column that is 0 to 9. The fourth digit that is 5 is placed sixth place in the bottom row of the first concentric square in of the equally divided column that is 0 to 9 as depicted in the FIG. 3L and FIG. 3M. FIG. 3M is the final visual code which does not include the digital array reference marks/division of visual code points 304 such as 0-9. Further, the subsequent digits are placed in subsequent sides of the subsequent square pattern in either clock/anti clockwise pattern as depicted in FIG. 3L. For instance, next four digit from 5 to 8 that is 5676 is placed in the second concentric circle, in which the fifth digit (i.e. 5) is placed in the left column of the second concentric square in sixth place of the equally divided column that is 0 to 9 plus one empty space before 0 and one space after 9. The sixth digit (i.e. 6) is placed in the top row of the
19
second concentric square in seventh place of the equally divided column that is 0 to 9 plus one empty space before 0 and one space after 9. The seventh digit that is 7 is placed in the right column of the second concentric square in eighth place of the equally divided column that is 0 to 9 plus one empty space before 0 and one space after 9. The eighth digit (i.e. 6) is placed in the bottom row of the second concentric square, in sixth place of the equally divided column that is 0 to 9 plus one empty space before 0 and one space after 9. Further, the next four digits from 9 to 12 that is 1244 is placed in the third concentric circle. The ninth digit that is 1 is placed in the left column of the third concentric square in 4th place of the equally divided column that is 0 to 9 plus two empty space before 0 and two space after 9. The tenth digit that is 2 is placed in the top row of the third concentric square in fifth place of the equally divided column that is 0 to 9 plus two empty space before 0 and two space after 9. The eleventh digit that is 4 is placed in the right column of the third concentric square in seventh place of the equally divided column that is 0 to 9 plus two empty space before 0 and two space after 9. The 12th digit that is 4 is laced in the bottom row of the third concentric square in seventh place of the equally divided column that is 0 to 9 plus two empty space before 0 and two space after 9. Furthermore, next four digit from 13 to 16 that is 7355 is placed in the fourth concentric circle. The 13th digit that is 7 is placed in the left column of the fourth concentric square in 11th place of the equally divided column that is 0 to 9 plus three empty space before 0 and three empty space after 9. The 14th digit that is 3 is placed in the top row of the fourth concentric square in 7th place of the equally divided column that is 0 to plus three empty space before 0 and three empty space after 9. The 15th digit that is 5 is placed in the right column of the fourth concentric square in 9th place of the equally divided column that is 0 to 9 plus three empty space before 0 and three empty space after 9. The 16th digit that is 5 is laced in the bottom row of the fourth concentric square in 9th place of the equally divided column that is 0 to 9 plus three empty space before 0 and three empty space after 9.
Exemplary scenario 4
In another example, FIG. 3N and FIG. 3O illustrates a representation of alphanumeric character in a visual code, in which FIG. 3N and FIG. 3O are with and without the digital array reference marks/division of visual code points 304. For instance, consider, the alphanumeric character is “GE55”. In the first four alpha-numeric character (i.e. GE55) in the visual code, the first digit (i.e. ‘G’) is in 7th place in numerical
20
representation in A-Z, (i.e. 1 to 26) and it is placed in the top row 7th place of equally divided column that is 0 to 9. The top row, right column and bottom row is reserved for alphabet presentation and each row, column is equally divided as 0 to 9. The left column is left empty without any graphical code since there is no numerical number before alphabet. The second digit that is ‘E’ is in 5th place in numerical representation in A-Z, and it is placed in the top row 6th place of equally divided column of 0 to 9 in second concentric square. The top row, right column and bottom row is reserved for alphabet presentation and each row and column is equally divided that is 0 to 9 plus one empty space before 0 and one space after 9. the left column is left empty without any graphical code since there is no numerical number before alphabet. The third digit that is ‘5’ is placed in the top row of the third concentric square in 7th place of the equally divided column of 0 to 9 plus two empty space before 0 and two empty space after 9. The forth digit that is ‘5’ is placed in the right column of the first concentric square in 8th place of the equally divided column that is 0 to 9 plus three empty space before 0 and three empty space after 9.
[0039] FIG. 4 is a flowchart depicting a method 400 for generating the visual code, in accordance with some embodiments of the present disclosure.
[0040] As illustrated in FIG. 4, the method 400 includes one or more blocks illustrating a method of generating the visual code. The method 400 may be described in the general context of computer-executable instructions. Generally, computer-executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform functions or implement abstract data types. The order in which the method 400 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 400. Additionally, individual blocks may be deleted from the methods without departing from the scope of the subject matter described herein. Furthermore, the method 400 can be implemented in any suitable hardware, software, firmware, or combination thereof.
[0041] At block 402, the method 400 may include encoding, by a processor 106 configured in the visual code generation system 104, an identifier corresponding to at least one type of input information received via the electronic device from a user. The identifier comprises a sequence of at least one of numerals, alphabets, and alpha numeric characters. At block 404, the method 400 may include generating, by the processor 106, a plurality of visual code points corresponding to the at least one type of input
21
information. The generated plurality of visual code points is used for generating a digital array such that the digital array of the plurality of visual code points are arranged in at least one concentric square pattern surrounding the identifier. At block 406, the method 300a may include dividing, by the processor 106, the generated digital array arranged in at least one concentric square pattern into a pre-determined count, to assign the generated plurality of visual code points in each of the at least one respective concentric square pattern. Each of the plurality of visual code points is assigned to each side of each concentric square pattern. At block 408, the method 300a may include marking, by the processor 106, one or more region of interest corresponding to the plurality of visual code points in the divided digital array. Marking the one or more region of intertest comprises determining edges of each side of each concentric square pattern in the divided digital array as a reference to mark the one or more region of interest corresponding to the plurality of visual points. At block 410, the method 300a may include generating, by the processor 106, a visual code by embedding the marked one or more region of interest corresponding to the plurality of visual code points surrounding the identifier, in at least one concentric square pattern.
[0042] FIG. 5 is a block diagram of an exemplary computer system 500 for implementing embodiments consistent with the present disclosure.
[0043] In some embodiments, FIG.5 illustrates a block diagram of an exemplary computer system 500 for implementing embodiments consistent with the present invention. In some embodiments, the computer system 500 can be a visual code generation system 104 that is used for performing context-based application disablement on an electronic device. The computer system 500 may include a central processing unit (“CPU” or “processor”) 502. The processor 502 may include at least one data processor for executing program components for executing user or system-generated business processes. A user may include a person, a person using a device such as those included in this invention, or such a device itself. The processor 502 may include specialized processing units such as integrated system (bus) controllers, memory management control units, floating-point units, graphics processing units, digital signal processing units, etc. The processor 502 may be disposed in communication with input devices 511 and output devices 512 via I/O interface 501. The I/O interface 501 may employ communication protocols/methods such as, without limitation, audio, analog, digital, stereo, IEEE-1395, serial bus, Universal Serial Bus (USB), infrared, PS/2, BNC, coaxial, component, composite, Digital Visual Interface (DVI), high-definition
22
multimedia interface (HDMI), Radio Frequency (RF) antennas, S-Video, Video Graphics Array (VGA), IEEE 802.n /b/g/n/x, Bluetooth, cellular (e.g., Code-Division Multiple Access (CDMA), High-Speed Packet Access (HSPA+), Global System For Mobile Communications (GSM), Long-Term Evolution (LTE), WiMax, or the like), etc.
[0044] Using the I/O interface 501, computer system 500 may communicate with input devices 511 and output devices 512. In some embodiments, the processor 502 may be disposed in communication with a communication network 509 via a network interface 503. The network interface 503 may communicate with the communication network 509. The network interface 503 may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), Transmission Control Protocol/Internet Protocol (TCP/IP), token ring, IEEE 802.11a/b/g/n/x, etc. Using the network interface 503 and the communication network 509, the computer system 500 may communicate with an electronic device 102. The electronic device 105 may include, but not limited to, a mobile phone, a laptop, a tablet, a desktop, a smartwatch, Augmented Reality (AR) devices, Mixed Reality (MR) devices, Virtual Reality (VR) devices, Extended Reality (XR) devices, ROBOTs, speakers, server, a voice assistant such as Alexa and the like. The communication network 509 can be implemented as one of the different types of networks, such as intranet or Local Area Network (LAN) and such within the organization. The communication network 509 may either be a dedicated network or a shared network, which 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), etc., to communicate with each other. Further, the communication network 509 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, etc. In some embodiments, the processor 502 may be disposed in communication with a memory 505 (e.g., RAM, ROM, etc. not shown in FIG. 5) via a storage interface 505. The storage interface 505 may connect to memory 505 including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as Serial Advanced Technology Attachment (SATA), Integrated Drive Electronics (IDE), IEEE-1395, Universal Serial Bus (USB), fiber channel, Small Computer Systems Interface (SCSI), etc. The memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, Redundant Array of Independent Discs
23
(RAID), solid-state memory devices, solid-state drives, etc. The memory 505 may store a collection of program or database components, including, without limitation, a user interface 506, an operating system 507, a web browser 508, etc. In some embodiments, the computer system 500 may store user/application data, such as the data, variables, records, etc. as described in this invention. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle or Sybase. Operating system 507 may facilitate resource management and operation of the computer system 500. Examples of operating systems include, without limitation, APPLE® MACINTOSH® OS X®, UNIX®, UNIX-like system distributions (E.G., BERKELEY SOFTWARE DISTRIBUTION® (BSD), FREEBSD®, NETBSD®, OPENBSD, etc.), LINUX® DISTRIBUTIONS (E.G., RED HAT®, UBUNTU®, KUBUNTU®, etc.), IBM®OS/2®, MICROSOFT® WINDOWS® (XP®, VISTA®/7/8, 10 etc.), APPLE® IOS®, GOOGLETM ANDROIDTM, BLACKBERRY® OS, or the like. User interface 506 may facilitate display, execution, interaction, manipulation, or operation of program components through textual or graphical facilities. For example, user interfaces may provide computer interaction interface elements on a display system operatively connected to computer system 500, such as cursors, icons, checkboxes, menus, scrollers, windows, widgets, etc. Graphical User Interfaces (GUIs) may be employed, including, without limitation, Apple® Macintosh® operating systems’ Aqua®, IBM® OS/2®, Microsoft® Windows® (e.g., Aero, Metro, etc.), web interface libraries (e.g., ActiveX®, Java®, Javascript®, AJAX, HTML, Adobe® Flash®, etc.), or the like.
[0045] Computer system 500 may implement a web browser 508 stored-program components. Web browser 508 may be a hypertext viewing application, such as MICROSOFT® INTERNET EXPLORER®, GOOGLETM CHROMETM, MOZILLA® FIREFOX®, APPLE® SAFARI®, etc. Secure web browsing may be provided using Secure Hypertext Transport Protocol (HTTPS), Secure Sockets Layer (SSL), Transport Layer Security (TLS), etc. Web browsers 508 may utilize facilities such as AJAX, DHTML, ADOBE® FLASH®, JAVASCRIPT®, JAVA®, Application Programming Interfaces (APIs), etc. Computer system 500 may implement a mail server stored program component. The mail server may be an Internet mail server such as Microsoft Exchange, or the like. The mail server may utilize facilities such as ASP, ACTIVEX®, ANSI® C++/C#, MICROSOFT®, NET, CGI SCRIPTS, JAVA®, JAVASCRIPT®, PERL®, PHP, PYTHON®, WEBOBJECTS®, etc. The mail server may utilize communication
24
protocols such as Internet Message Access Protocol (IMAP), Messaging Application Programming Interface (MAPI), MICROSOFT® exchange, Post Office Protocol (POP), Simple Mail Transfer Protocol (SMTP), or the like. In some embodiments, the computer system 500 may implement a mail client stored program component. The mail client may be a mail viewing application, such as APPLE® MAIL, MICROSOFT® ENTOURAGE®, MICROSOFT® OUTLOOK®, MOZILLA® THUNDERBIRD®, etc. Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present invention. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., non-transitory. Examples include Random Access Memory (RAM), Read-Only Memory (ROM), volatile memory, non-volatile memory, hard drives, Compact Disc (CD) ROMs, Digital Video Disc (DVDs), flash drives, disks, and any other known physical storage media.
[0046] Embodiments herein generates a visual code that allows to be scanned from long distance. Visual recognition distance of the visual code by electronic devices or human eye higher than the existing code for the similar dimensions. Embodiments herein minimizes machine error or human error due to minimum codes for each digit representation. Embodiments herein allows faster machine reading/digital scan of the visual code, and error free, due to short length identifier (i.e. un-coded alpha numeric information). The processing power and time is lesser compared to other codes. Further, the processing power and time for generating the code and displaying is less compared to the existing codes. Embodiments herein reduces the amount of required ink for printing the visual code, compared to other codes. The amount of printing material required to represent the code is very much less than the existing codes
[0047] A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary, a variety of optional components are described to illustrate the wide variety of possible embodiments of the invention. When a single device or article is described herein, it will be apparent that more than one device/article (whether or not they cooperate) may
25
be used in place of a single device/article. Similarly, where more than one device or article is described herein (whether or not they cooperate), it will be apparent that a single device/article may be used in place of the more than one device or article or a different number of devices/articles may be used instead of the shown number of devices or programs. The functionality and/or the features of a device may be alternatively embodied by one or more other devices which are not explicitly described as having such functionality/features. Thus, other embodiments of the invention need not include the device itself.
[0048] The specification has described a method and a system for performing context-based application disablement on an electronic device. The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments. Also, the words "comprising," "having," "containing," and "including," and other similar forms are intended to be equivalent in meaning and be open-ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise.
[0049] Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based here on. Accordingly, the embodiments of the present invention are intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.

Documents

Application Documents

# Name Date
1 202041038175-FER.pdf 2025-02-20
1 202041038175-FORM 13 [17-07-2023(online)].pdf 2023-07-17
1 202041038175-OTHERS [04-09-2020(online)].pdf 2020-09-04
2 202041038175-FORM FOR SMALL ENTITY(FORM-28) [04-09-2020(online)].pdf 2020-09-04
2 202041038175-FORM 18 [17-07-2023(online)].pdf 2023-07-17
2 202041038175-FORM 13 [17-07-2023(online)].pdf 2023-07-17
3 202041038175-FORM-26 [17-07-2023(online)].pdf 2023-07-17
3 202041038175-FORM FOR SMALL ENTITY [04-09-2020(online)].pdf 2020-09-04
3 202041038175-FORM 18 [17-07-2023(online)].pdf 2023-07-17
4 202041038175-FORM-26 [17-07-2023(online)].pdf 2023-07-17
4 202041038175-FORM 1 [04-09-2020(online)].pdf 2020-09-04
4 202041038175-COMPLETE SPECIFICATION [04-09-2020(online)].pdf 2020-09-04
5 202041038175-DRAWINGS [04-09-2020(online)].pdf 2020-09-04
5 202041038175-COMPLETE SPECIFICATION [04-09-2020(online)].pdf 2020-09-04
5 202041038175-EVIDENCE FOR REGISTRATION UNDER SSI(FORM-28) [04-09-2020(online)].pdf 2020-09-04
6 202041038175-DRAWINGS [04-09-2020(online)].pdf 2020-09-04
6 202041038175-EVIDENCE FOR REGISTRATION UNDER SSI(FORM-28) [04-09-2020(online)].pdf 2020-09-04
7 202041038175-COMPLETE SPECIFICATION [04-09-2020(online)].pdf 2020-09-04
7 202041038175-EVIDENCE FOR REGISTRATION UNDER SSI(FORM-28) [04-09-2020(online)].pdf 2020-09-04
7 202041038175-FORM 1 [04-09-2020(online)].pdf 2020-09-04
8 202041038175-FORM 1 [04-09-2020(online)].pdf 2020-09-04
8 202041038175-FORM FOR SMALL ENTITY [04-09-2020(online)].pdf 2020-09-04
8 202041038175-FORM-26 [17-07-2023(online)].pdf 2023-07-17
9 202041038175-FORM 18 [17-07-2023(online)].pdf 2023-07-17
9 202041038175-FORM FOR SMALL ENTITY [04-09-2020(online)].pdf 2020-09-04
9 202041038175-FORM FOR SMALL ENTITY(FORM-28) [04-09-2020(online)].pdf 2020-09-04
10 202041038175-FORM 13 [17-07-2023(online)].pdf 2023-07-17
10 202041038175-FORM FOR SMALL ENTITY(FORM-28) [04-09-2020(online)].pdf 2020-09-04
10 202041038175-OTHERS [04-09-2020(online)].pdf 2020-09-04
11 202041038175-FER.pdf 2025-02-20
11 202041038175-OTHERS [04-09-2020(online)].pdf 2020-09-04
12 202041038175-PETITION UNDER RULE 137 [20-08-2025(online)].pdf 2025-08-20
13 202041038175-OTHERS [20-08-2025(online)].pdf 2025-08-20
14 202041038175-FORM 13 [20-08-2025(online)].pdf 2025-08-20
15 202041038175-FER_SER_REPLY [20-08-2025(online)].pdf 2025-08-20
17 202041038175-COMPLETE SPECIFICATION [20-08-2025(online)].pdf 2025-08-20
18 202041038175-CLAIMS [20-08-2025(online)].pdf 2025-08-20
19 202041038175-ABSTRACT [20-08-2025(online)].pdf 2025-08-20

Search Strategy

1 8175E_06-03-2024.pdf