EP3023916A1 - Encoding/decoding of information from a graphical information unit - Google Patents
Encoding/decoding of information from a graphical information unit Download PDFInfo
- Publication number
- EP3023916A1 EP3023916A1 EP15194578.9A EP15194578A EP3023916A1 EP 3023916 A1 EP3023916 A1 EP 3023916A1 EP 15194578 A EP15194578 A EP 15194578A EP 3023916 A1 EP3023916 A1 EP 3023916A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- information
- color
- information unit
- coding
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 48
- 239000003086 colorant Substances 0.000 claims description 68
- 238000001514 detection method Methods 0.000 claims description 35
- 230000003044 adaptive effect Effects 0.000 claims description 27
- 238000012937 correction Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 5
- 238000004040 coloring Methods 0.000 claims description 4
- 238000013459 approach Methods 0.000 description 14
- 239000003550 marker Substances 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 230000036961 partial effect Effects 0.000 description 7
- 238000013461 design Methods 0.000 description 6
- 230000010354 integration Effects 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 230000003203 everyday effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000006378 damage Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 235000019646 color tone Nutrition 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 239000000976 ink Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000032258 transport Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000011016 integrity testing Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06037—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06046—Constructional details
- G06K19/06103—Constructional details the marking being embedded in a human recognizable image, e.g. a company logo with an embedded two-dimensional code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/161—Encoding, multiplexing or demultiplexing different image signal components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/65—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K2019/06215—Aspects not covered by other subgroups
- G06K2019/06225—Aspects not covered by other subgroups using wavelength selection, e.g. colour code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
Definitions
- the invention relates to a method for coding information from a graphic information unit and to a method for decoding information from a coded graphic information unit.
- Auto-ID automatic identification
- mobile tagging offers a large area of application for new barcode techniques.
- Mobile tagging distinguishes three different areas: commercial tagging, such as additional information on products, direct downloads, direct forwarding to the website of a company.
- Public tagging enriches existing public information such as signs, directions, timetables, sights, and the like.
- private tagging where the focus is on the transmission of private information such as for business cards, URL links, etc.
- QR Quick Response
- QR code is increasingly being integrated with mobile tagging into everyday life with a growing trend.
- the reasons for the rapid dissemination of the QR code are largely due to its high information density (up to 4296 characters) with a small footprint and the relatively high reading reliability (integration of algorithms for error correction and error integrity testing) with modern cameras.
- Another important aspect of the high level of awareness of the QR code is the free provision or integration of the QR code into existing barcode scanner software, which can be used on all common smartphones and tablets.
- US 8,144,922 B2 discloses the use of a transparent infrared-absorbing ink for coding.
- US 8,526,670 B2 discloses overlaying a logo with a grid of cell dots having a brightness that is higher than the brightness of the logo.
- EP 2 224 373 A2 discloses that lighter dots are superimposed on a logo. It is essentially provided that the information is displayed by means of white cell dots, which are superimposed on a black logo.
- EP 2 731 057 A1 discloses a method of encoding information into an image by overlaying a visible raster across the image and encoding information in the raster.
- the coding can be arranged above the surface or next to the surface of the image.
- the invention is based on the object of improving the coding or decoding of information.
- the inventive method has the advantage that a novel and more intuitive way of interaction between analog real information, such as logos and symbolic representations in print media or on real signs or stickers in everyday life, and the digital world is possible.
- analog real information such as logos and symbolic representations in print media or on real signs or stickers in everyday life
- the digital world is possible.
- the code is integrated into the information or that the code is applied to the information unit. So far, the original image information and the code were always separated.
- the code is applied only within the area of the information unit, so that individual pixels, pixels or sub-elements of the information unit are changed or coded. By restricting the code application to the information unit, the appearance of the information unit remains largely intact.
- a graphic information unit comprises here first any graphical representation. This can include single or linked symbols such as letters and numbers, logos and / or images.
- the outer contour corresponds to a limitation or delimitation of the information unit from a background.
- the two-dimensional code has two coordinates, for example x and y, where the coordinate system can be defined or specified by the surface on which the information unit is arranged and / or by the information unit itself. This 2D encoding can be implemented as a black and white code.
- the code or the coded information unit can be attached to physical locations and objects and distributed digitally and ensures a contentual reference in visual form of the information to be coded.
- the content to be displayed is directly interpretable for humans and for a capture device such as a scanner.
- the coded information has a much more realistic appearance.
- design-technical measures are of particular importance, particularly with regard to the human-computer interaction, since a realistic understanding of digital content results in a better understanding of the digital content of the barcode and everyday use appears more intuitive.
- these measures increase the user's confidence in scanning the encoded information unit.
- a further advantage would arise from the combination of the product image with the associated code information, since this would result in a lower error rate when assigning the code to the appropriate product when delivering new goods.
- a three-dimensional color coding can be used, wherein a color space of the color code is at least a part of a color space of the information unit.
- the adaptation of the colors to be used to the information unit to be coded is also understood to be realistic, so that the coding of the code with a variable number of color tones can be carried out.
- a sub-color space of the color space of the color code may be locally determined for a contiguous group of elements of the adaptive raster, depending on a so-called group color associated with that group of raster elements.
- This group color is determined locally and separately for that area of the information unit in which the group of elements of the adaptive grid is arranged. In the simplest case that this area of the information unit is monochrome, the group color corresponds to the color of the area. If the area has a color gradient or is generally multicolored, then the group color can be determined as the mean or mode of the color values present in the area.
- a contiguous group of elements of the adaptive grid is formed in particular by elements arranged in adjacent rows and / or columns of the grid, for example by elements of the grid which form an n * m sub-matrix of the grid, where n and m represent integers.
- the sub-color space for a contiguous group of elements is basically independent of a sub-color space which is determined for a further group of elements of the raster which are arranged in a different area of the information unit. In this way, the entire color space of the coding is first formed by the individual locally calculated partial color spaces.
- Each of the colors of such a sub-color space may differ from the corresponding group color-and any other color of the sub-color space-only with respect to at least one predetermined color parameter (such as brightness, saturation, hue).
- a distinction according to the brightness is preferred.
- the colors of the sub-color space are thus all sufficiently similar or matching the group color, which in turn represents the color of the underlying area of the information unit. In this way, an encoding of the information unit is possible, which disturbs the visual impression of the information unit only very slightly.
- all the colors of the sub-color space may deviate "in one direction" along the color parameter from the group color, for example all colors of the sub-color space may be lighter than the group color. This facilitates decoding.
- the colors of the sub-color space in "different directions" along the color parameter may differ from the group color, for example, be lighter or darker than the group color. In this way, an optically even less conspicuous coding is obtained.
- the partial color spaces are determined locally, merely with reference to a contiguous group of elements of the grid, in a corresponding decoding step, when decoding the information encoded by the group's raster elements, only the colors of the partial color space assigned to the group must also be used get noticed. This simplifies decoding as compared to a coding method which uses a global color space for coding.
- the entire color space of the coding which can be understood as a combination of the partial color spaces described, can be so large that the coding can be color-matched in an optimum manner to the graphic information unit.
- a given element of the group of adaptive raster elements may be colored with that color of the sub-color space that is different from the other colors of the sub-color space of the given color parameter most clearly different, for example, as the brightest color of the sub-color space.
- This color then forms a first reference color.
- the group color is clearly recognizable even in the step of decoding, since the corresponding area of the information unit is, for example, monochrome, the group color can serve as the second reference color.
- the colors of the sub-color space other than the first reference color are then arranged with respect to the color parameter "between" the first reference color and the second reference color.
- the two colors of the sub-color space can be selected which differ most clearly from one another with respect to the given color parameter, but also from the group color. For example, this may be the brightest and the darkest color of the sub-color space, for example, in the case that the group color is arranged with respect to the brightness between these two colors.
- a first predetermined element of the group of elements of the adaptive raster may then be colored with the first reference color, and a second predetermined element of the group of elements of the adaptive raster may be colored with the second reference color.
- the two reference colors can then be read out first and, based on their knowledge, a predetermined number of colors of the sub-color space, the remaining colors of the sub-color space can be determined.
- each of the contiguous groups of raster elements has its local color table. Basically, any two colors of the sub-color space can be used as reference colors of the sub-color space, ie it is not necessary for the colors of the most varied colors to serve as reference colors.
- the coding can have at least two markings for position detection of the information unit.
- markers for position detection can be used to clearly indicate the bearings of the coded information unit relative to a detection device during decoding.
- markers for position detection can serve to specify limits of a portion of a grid used for information coding.
- detection of the relative position to the detection device, recognition of the boundaries separate, mutually distinguishable markings are used for position detection.
- the ability to detect position increases the speed of detection of the code, since with the at least two markers a recognition grid or pattern can be placed directly on a coding grid.
- the location detection is important.
- markers for position detection optically conspicuous and automatically, by image recognition, easily identifiable markers can be used, as they are known for example from the QR code.
- markers for position detection - alone or among others - by suitable coloring of at least one element of the adaptive raster with at least one specific one Marking color can be formed.
- a raster element is in each case dyed with one of the marking colors.
- one or more marker colors may be used for this, but always only one of the marker colors for one of the raster elements. In this way, the mark remains visually inconspicuous compared to conventionally known position markings.
- a mark for position detection which is formed by coloring a plurality of elements of the adaptive grid with one or more of the marking colors, can additionally be identified by the elements of the plurality of elements having a predetermined positional relationship with respect to the adaptive grid.
- color information and relative position information play together to form a marker for position detection.
- the coding can have a header with information about the coding.
- This header information may be included, which may make possible or simplify a decoding under certain circumstances.
- the header may include information such as an indication of a decoding library (version), a color coding table, redundancy information, the character set to be used, and encryption information.
- the information to be encoded can be encoded before encoding.
- This integration of a security mechanism enhances security by protecting the encoded information unit from tampering by third parties and by protecting the user from downloading malware or forwarding to paid services without consent.
- an adaptive grid can be used, which is adapted to the outer contour and / or the color space of the information unit.
- the dynamic or adaptive grid allows optimal adaptation of the grid and thus the coding to the information unit, so that the information unit is only slightly changed, so that a human observer of the overall impression is maintained, a machine detection unit, the code is accessible. It is advantageous if the human observer recognizes the coding, so that he can, for example, direct his smartphone to the coded information unit in order to obtain the coded information.
- Detecting includes, for example, recording and / or scanning with a detection unit, such as a smartphone, tablet, or a dedicated scanner unit, such as those used in logistics.
- the decoding can be done with the detection unit and / or an associated computer unit such as a server. For a smartphone, this can preferably be done by an application or app.
- a detection device can transmit the information to a database and receive information associated with the information from the database.
- This so-called online decoding usually works with a coded link pointing to an entry in the database.
- the scanner is connected to the database.
- a detection device can process the information. In this offline decoding, all the information is contained in the coded information unit, so that no online functionality must be present in the recording device.
- a computer program product according to the invention comprises program parts which, when loaded in a computer, are designed to carry out a method as described above. The same advantages and modifications apply as described above.
- an information unit 1 is shown.
- the information unit 1 consists here of a logo or a pictorial representation.
- an information unit may comprise all graphical representations or two-dimensional images.
- the two dimensions are the two dimensions of the surface on which the information unit is mapped.
- the surface may be flat, such as a sheet of paper or a poster.
- the surface may be curved, such as in an advertising medium.
- the two coordinates or dimensions can be referred to as x and y direction.
- the information unit may also consist of one or more symbols such as letters or numbers, or a combination of one or more symbols with one or more pictorial representations.
- the information unit 1 is bounded by an outer contour 2. That is, the outer contour 2 is the boundary between the information unit 1 and a background.
- the background can lie on the same surface or be arranged on another surface or surface.
- the outer contour 2 surrounds an inner space 3, that is to say a region exclusively within the outer contour 2.
- the inner space 3 may comprise a plurality of regions or sections, of which one region 4 is shown by way of example.
- the areas may be defined, for example, by different colors or color spaces.
- the areas may be defined by different contents, such as a symbol and a pictorial representation.
- the right side wall is area 4.
- the side wall may have a different color than the roof and the base of the house.
- the columns at the front of the house can be considered as an area, wherein the three-dimensional effect of the columns is caused by different white or gray tones.
- the information unit 1 can be, for example, a logo for a company, an institution, a service or a product. It can also be an indication of information or application.
- the information unit usually transports a content with which the viewer of the information unit 1 connects or awaits something. In the classical sense, such a logo is used to link ideas with a company and / or its product.
- such information units are also used in the field of logistics in order to identify goods, packaging and / or transport containers and to permit fast and secure allocation or information.
- FIG. 1a an encoded information unit 5 according to FIG. 1 b proposed.
- information or user data are integrated by applying an at least two-dimensional code within the outer contour 2 to pixels of the information unit 1.
- the outer contour 2 and thus the outer shape thus remain.
- the coding can also be applied to the outer contour 2.
- the coding takes into account the external appearance of the original information unit 1. This is done via the retained outer contour 2.
- the outer contour 2 is preferably identical to the original information unit 1 and the coded information unit 5.
- color values or gray levels of the information unit can be taken into account in the coding, so that the overall impression of the original information unit also after Coding is preserved.
- FIG. 1b are exemplified the two areas 3 and 4 coded. It is possible to code all, one or as shown, several subregions or parts of the information unit.
- the code 10 consists of individual pixels 11, of which two pixels 11 a and 11 b are exemplified. To the pixels 11 in the representation of FIG. 1b To better represent each pixel 11 is assigned a pattern. Each pattern or transition between two preferably adjacent patterns may stand for one bit in a black-and-white coding or for a value of one or more bits in a colored coding.
- the pixels 11 are each shown as a pattern.
- This representation is preferably a placeholder for a gray value or color value scale, which can not be represented in the figure, which corresponds to the original representation or original color or colors of the original information unit 1 FIG. 1a is adjusted.
- the overall impression or the aesthetic impression also remains completely or at least almost completely preserved even after the coding for the human observer.
- the information unit additionally contains the coded function.
- the information unit now has the dual function of transporting the original information as well as the additional coded information.
- the encoded information, or the presence of encoded information, or in other words the application of a code to the information unit, may be visible to the human observer so as to provide an indication of the additional encoded information.
- the information unit is determined or determined. This comprises, first of all, the selection for example of at least one symbol and / or at least one image unit.
- the outer contour 2 of the information unit is determined. This can be realized by manual and / or automated techniques such as cropping or cropping.
- the information or user data to be coded is input.
- the information may include, for example, text that already exists or is created on a computer.
- the text may include numbers and / or letters and, for example, provide information about the entity or related companies or the like.
- the information may also include or be a program code or instruction to a program. This may, for example, include or be a link for an Internet address or a database entry.
- the payload or information is preprocessed.
- the preprocessing may include, for example, compression of the information and / or selection of the code.
- the information to be coded can be converted into codewords or compressed in a preprocessing step.
- corresponding existing compression methods can be used and adapted if necessary.
- methods from the field of lossless text compression are considered, such as the LZW algorithm, the Huffman coding or the arithmetic coding.
- the information to be encoded into the information unit 1 is encrypted.
- the so-called mobile threats may include, inter alia, spying on information, loss of information, identity theft and / or installing malicious software.
- these vulnerabilities are often a negative point for existing barcode solutions, such as the QR code, since prior to scanning the barcode, no advance information is visible to the user and the barcode scanners are not checked for decoding Information takes place.
- the coding can be implemented with two different approaches, so that the coding or the code is variably adaptable to a wide variety of applications.
- coding of the entire information can take place directly in the barcode and, on the other hand, storage of all the information within a database and exclusive coding of the database reference can be provided directly in the information unit.
- This first approach of coding the entire information directly in the code is particularly found in the field of mobile tagging, in that, among other things, URLs or contact information are coded directly in the barcode. Since all the information is coded directly in the barcode, this approach allows a much lower information density compared to use with a database. After printing the code, no subsequent changes can be made to the stored information. Then, a subsequent or dynamic change of the information to be encoded, for example, typing errors or no longer existing URL addresses is required.
- the smartphone application includes a communication option such as a TCP / IP functionality.
- a server component which receives the decoded data on the server and has an interface for data exchange with the software used for managing the database entries.
- the decoding of the database reference takes place on the client, such as a smartphone.
- the Data is sent to a central server, which accordingly returns the appropriate information from the database to the client for display or further processing.
- the implementation of this infrastructure can use the identical decoding functionality as in the first approach and can therefore be seen as an extension of the first approach to a TCP / IP transmission component.
- a grid is placed over the information unit 1.
- the grid is not independent or separate from the information unit.
- the raster is effectively a template by which the encoding is applied to the information unit 1.
- the selection of the grid structure is determined by the raster shape or raster expression and an essential parameter for the later code, since the raster shape and the raster color influence the design of the image to be encoded. In addition, the reading reliability of the code and the possible information density also depend on the choice of raster form or color.
- the binary system For encoding the useful characters such as letters, numbers and / or characters within the code, the binary system is preferably used. Accordingly, gray scale changes or color changes between the individual raster elements or pixels of the information unit or of the image are converted into bit sequences.
- a reference table and a corresponding character set must be agreed.
- the reference table specifies the association between the existing bit sequence and the corresponding character from the selected character set.
- common character sets such as the numeric, alphanumeric or the ISO character set are considered for the coding rules.
- a color coding is preferably used in addition to the 2-dimensional position coding, so that a three-dimensional code results. While a black-and-white code has an information density of one bit per pixel, a color code results in an information density of the number of colors per pixel. Since the color space is variable as a function of the information unit, the coding and its information density are also variable.
- the colors suitable for the coding image are preferably used for the coding.
- To determine the color space to be used taking into account the colors of the original image, methods of image processing are used.
- the corresponding font reference table is also variable. Because the number of selected color tones for coding, the expression of the font reference table and the size determine the information density, a corresponding dynamic method is used. The dynamic method used is based on the given color space, which can be selected automatically on the basis of the image template or manually by the user. The assignment of the colors to the individual elements of the coding grid is calculated on the basis of the color differences at the position of this element in the original image.
- the color differences are adjusted accordingly.
- the number of shades used to select the appropriate character set reference table is encoded directly in the code header.
- a final step 150 of coding the design of the encoded data is adapted to the information unit.
- This task includes adapting the code pattern to the image, logo or symbolic representation of the information unit to be coded.
- an automatic or semiautomatic separation of the logo or the symbolic representation from the background must take place before the coding.
- the exclusive use of the logo or the symbolic representation for coding is desirable for reasons of a realistic representation. Separation can be done manually by the user or by image processing techniques. Based on this separated image detail, which serves as an information unit in the course of the coding, a recognition pattern including a header, a coding grid and a variable position recognition for the coding is then automatically or semi-automatically determined.
- a coded information unit 5 has emerged into which additional information has been coded.
- the overall impression of the original information unit 1 has been preserved, because the coding is applied, on the one hand, only within the limits of the information unit and, on the other hand, directly to the information unit itself or to raster elements or picture elements of the information unit.
- a grid is used only as a mask or intermediate step of the coding, but is no longer in the coded information unit in full or directly no longer fully perceptible.
- the coded information unit 5 is scanned or recorded. This can be done, for example, with a smartphone 6, a scanner 7 or a tablet 8.
- an image acquisition unit for example, in the form of a camera and an evaluation or processing unit is necessary, which evaluates the captured image, that is, extracts the coded information.
- a step 200 the user data or the information is decoded.
- the step of decoding 200 comprises several substeps.
- the relational position of the camera is determined to be the information unit 5, which is realized by one or more marks, preferably two or three, for position recognition.
- the pattern for position detection is selected so that an omnidirectional readability with a smartphone, tablet or a camera scanner is possible and yet the design of the original image is not negatively or only insignificantly influenced.
- the code is in most cases linked to a database entry by the associated detailed article information is stored.
- the barcode not only serves to display information, but is also used for administrative tasks. For example, when the article is sold, the quantity in the corresponding database entry is reduced.
- the first commonly used approach to decoding uses a database in which decoded code information is transferred from a client, such as a smartphone, to a central server, which returns information associated with the code through a database query.
- a client such as a smartphone
- This can be a reading of a barcode from an article and a direct display of the corresponding article information.
- used Server is both an in-house and a web server conceivable, so that depending on the security requirements and field of application, a variability in the infrastructure is possible. Even subsequent changes to the barcode, for example, typos or changing article information can be implemented with this solution, since in the code only the database reference is stored and therefore only a central database entry must be changed, rather than all barcodes affected by this change of information to re-encode ,
- the decentralized local decoding approach exists on the terminal, such as a tablet or smartphone, which need not be connected to a network or server.
- This approach does not allow for any subsequent changes in the coded information and obtains the complete information solely from the image data.
- This approach is currently used in almost all mobile tagging applications and offers a high level of flexibility as there is no access to a network.
- the two approaches have advantages and disadvantages and are therefore selected on a case-by-case basis.
- the same decoding functionality is used.
- addable TCP / IP component for transmitting the decoded information to any server then the above approaches can be used in a variety of applications.
- the information unit is decoded.
- the information needed for decoding such as the encoding version used, can be extracted or derived from the header or general information or agreement.
- the decoding algorithm calculates the useful data.
- bit information By using more than two colors, bit information of more than one bit per transition between two pixels is possible.
- two colors eg black-and-white
- encoding of one bit (0 or 1) per transition would be possible.
- the corresponding number of bit information per transition is therefore dependent on the number of colors for encoding.
- the stringing of successive bit information is called a bit sequence.
- the bit string can be converted to the target alphabet or string using the character set reference table (eg, ASCII record - using an 8-bit string to represent one character of a character set of 256 characters) be transferred.
- the character set reference table eg, ASCII record - using an 8-bit string to represent one character of a character set of 256 characters
- step 210 error detection or error correction is carried out.
- the data obtained from the error correction can optionally be used as empirical values or parameters for new codings in order to reduce the error rate during the transmission.
- the error detection can be based on known methods, for example using redundancies or checksums.
- the entire optical / imaging path is to be considered in the context of the efficiently usable code, and when parameter boundaries are reached, the code and / or the coding may once again have an effect.
- the code the following parameters are defined, such as a minimally tolerable contrast, the influence of disturbances due to dirt, wear, damage, the maximum amount of information to be stored and the use of hierarchical information storage.
- the code should also be usable by systems that have conventional fixed focal length cameras, such as smartphones.
- the image pickup path is characterized by the distance of the object to the recording system, the illumination of the object, the lens of the recording system with parameters such as focal length, image quality and light intensity.
- Another criterion is the sensor and the data storage, as well as parameters such as sensor size (resolution), signal-to-noise ratio, image data to be stored, the storage format, possibly lossy storage and additional information on the code information, such as location, time, etc ,
- This feedback may include control of data acquisition, for example, detection of the coding type, analysis of the orientation, and control of the recording distance, with instructions given to the recording device by the recording algorithm.
- Other aspects may include image preprocessing as well as obtaining the destination information.
- fault tolerances are very important for the practical use, in order to enable a reconstruction of the information of faulty codes. Errors within a code can be caused by damage to the code, poor print quality, or interference due to environmental influences during recording. This can be caused, for example, by masking of the code by another object or unfavorable lighting conditions. Such errors must be taken into account for practical use in order to guarantee a high fault tolerance.
- An element in the use of the code can be a redundancy of information to be integrated, in order to be able to reliably detect even severely disturbed data fields.
- the implementable degree of redundancy plays the central role, since this has a direct influence on the still permissible disturbance of the code, for example by decreasing contrast, by missing or non-decodable area proportions and / or by the quality of the illumination.
- Parameters of the required image capture hardware such as the sharpness of the image, the necessary effective image resolution and / or the speed of preprocessing or processing the image data also play a role.
- the required algorithm or the performance of the image processing such as the integration into the target environment / hardware, the real-time capability in the target environment and / or the ease of operation can also be taken into account.
- the actual image processing involves the acquisition and extraction of the information of the code by means of the available surrounding hardware and its interfaces.
- the recognition algorithm and supplementary image processing tools in the sense of preprocessing, such as the acquisition of a pattern, the management of the hardware via a user interface during the creation of the image, such as the adjustment of the image Distance of the camera to the object, the detection and correction of a better recording angle, and / or the use of a hierarchical code, such as the parameters orientation, code type, basic information and / or detail information.
- step 220 the payload is decrypted when the encryption has been performed. This step is therefore optional. Information about the selected encryption may be included in the header, for example.
- the payload data is displayed and / or processed. This can be done in the capture device such as the smartphone 6 or in another instance such as a computer connected to the capture device. Thus, the coded in the information unit and possibly encrypted information is available again.
- Fig. 4 shows a graphical information unit 301 with an outer contour 302, which defines and encloses an inner region 303 to be coded.
- the information unit 301 may be part of a logo, for example.
- a grid adapted to the outer contour 302 is placed on the information unit 301 to code the information unit 301.
- the corresponding elements 320 of the adaptive grid are regularly arranged along lines and columns along predetermined directions (X and Y directions).
- the size and shape of the raster elements 320 as well as a grid spacing in each of the two directions, and thus also a number of raster elements, can be varied.
- Fig. 5 illustrates, by way of example, an optional step of arranging markers 330, 340 which permit position detection of the encoded information unit during decoding.
- the position detection markers 330 are arranged in order to be able to unambiguously determine a position of the encoded information unit relative to a detection device during decoding. That is to say, a detected coding of the information unit 301 can optionally be rotated and / or scaled on the basis of the markers 330, in order to enable unambiguous and correct decoding. A perspective distortion, which can occur when the coding is detected, can also be corrected by means of these markings 330. In the Fig. 5 By way of example, markers shown by way of example can be recognized and processed simply and without additional preparation after detection of the coding during decoding, thereby simplifying decoding as a whole.
- header information 332 may be incorporated into the coded information unit, which may include information or information that simplifies or makes possible the decoding of a coded information unit. Such indications may relate, for example, to the grid, a predetermined number of color gradations, an optionally used encryption and the like. Preferably, such header information is indicated by the dotted lines in FIG Fig. 5 indicated areas between the location marks 330 arranged so that it can be found quickly and easily at the beginning of the decoding process.
- markings 340 may be provided for position detection, which define the boundaries of the grid used for the information coding. These limits are in Fig. 5 indicated by the frame 342.
- FIGS. 6 to 9 It is shown how a concrete embodiment of a three-dimensional color coding can be formed. Different colors are represented in the figures by means of hatched areas.
- the elements of the grid are respectively divided into groups 350 of contiguous elements 320 of the grid.
- a group 350 consists of a 2 * 2 subgrid. It is understood that the dimension of such a sub-grid can be variable, for example, the size of 2 * 3, 4 * 2, 3 * 3, 4 * 4 or similar sizes may have. All that is essential is that all the elements of such a group are arranged in a contiguous region of the information unit, ie in a certain way adjacent to one another.
- a group color 360 is now determined for such a group 350.
- This group color 360 is determined on the basis of a color distribution in the area of the information unit that comprises the grid elements 320 belonging to the group 350.
- Such an area is exemplary in Fig. 6 , shown below. In the case that this area is monochrome, its color corresponds to the group color 360. If the area comprises several colors or a color gradient, the group color 360 is formed as a mean or mode value over the colors of the area.
- a sub-color space 370 is determined which comprises those colors then used to color the raster elements 320 of the group 350, ie to encode the information unit 301 in the area in which the elements 320 of the group 350 are arranged.
- the size of this sub-color space 370 ie the number of different colors in this sub-color space, can be predetermined and specified, for example, for decoding, in the header information 332.
- sub-color space 370 includes four colors 372, 374, 376, and 378.
- the colors 372, 374, 376, 378 of the sub-color space 370 differ from the group color 360 only in one color parameter, in the example shown in the brightness.
- Other color parameters for example saturation or tone value, or predetermined combinations of such color parameters can also be used to form the colors of the sub-color space in a predefined manner, starting from the group color.
- the colors of the sub-color space are thus formed or calculated so that they are always similar to the group color, and thus similar to the color of the area of the information unit in which the elements of the grid colored by these colors are then arranged as part of the encoding. In this way it can be ensured that the color space of the coding and thus the adaptive raster in each area of the information unit is adapted to the color space of the information unit.
- Fig. 8 shows exemplarily how a decoding of a coding introduced by means of the colors 372, 374, 376, 378 of the sub-color space 370 in the corresponding area of the information unit can be decoded in a simple manner.
- two particular colors 372, 378 of the sub-color space 370 are selected as first and second reference colors, namely, those colors of the sub-color space 370 that most clearly differ with respect to the predetermined color parameter within the sub-color space 370. In the example shown, these are the brightest 372 and darkest color 378 of the sub-color space 370.
- These two reference colors color two predetermined elements of the group 350, namely the element 381 in the upper left corner and the element 382 in the lower left corner of the 2 * 2- Partial grid forming the group 350.
- This procedure serves to capture the colors of these two predefined elements in the step of decoding and to evaluate them as reference colors 372, 378. Based on these reference colors 372, 378, and knowing the number of colors of the sub-color space 370, then the remaining colors 374, 376 of the sub-color space 370 can be locally determined uniquely.
- each color 372, 374, 376, 378 of the sub-color space 370 can be uniquely assigned a character string which can be coded by means of this color.
- the two other raster elements 383, 384 of the group 350 can, as in Fig. 9 , right side, indicated, are now freely used to encode information, ie colored by one of the colors 372, 374, 376, 378 of the sub-color space 370, respectively.
- FIG. 10 finally, an information unit 301 completely encoded in the manner described above is shown by way of example.
- all the groups 350 have been colored here with respect to the same group color 360, as would be the case, for example, if the information unit 301 as a whole were monochrome.
- Fig. 11 is a variant 401 of the coded information unit 301 from Fig. 10 shown. This is different from the one Fig. 10 in the manner of the position markings 430, 440.
- the position marks 430, 440 comprise a plurality of raster elements 320, corresponding to the previously described groups 350 of contiguous raster elements 320.
- the position markings 430, 440 are once on it to recognize that individual of the raster elements of the position marks 430, 440 are colored by means of a specific marking color 361.
- the marker color 361 is characterized in that it does not exceed a predetermined color difference to a color of the area in which the raster elements of the position marker are arranged.
- the highlight color 361 is similar to the corresponding color of the area of the information unit.
- a plurality of marking inks could be used, which then each satisfy the color difference criterion specified above.
- the one marking color 361 corresponds to the group color 360, ie the color difference of the marking color 360 to the color of the corresponding area of the information unit is zero.
- the marking color 361 may also differ within predetermined limits from the color of the corresponding area of the information unit as long as no confusion with a color of a corresponding partial color space of a group of raster elements potentially associated with this area is to be feared.
- markers 430, 440 Another characteristic of the markers 430, 440 is the specific spatial arrangement of a plurality of raster elements colored in the marker color 361 to each other - diagonally opposite in the position markings 430, in L-shape in the position marks 440. It may be used in connection with such an embodiment instead a marking color 361 also different marking colors are used.
- Fig. 11 can be obtained by means of appropriately formed position marks 430, 440 a visually very inconspicuous coding of the information unit 301 can be obtained.
- the cost of decoding, recognizing and evaluating the location marks 430, 440 increases as compared to the use of conventional location markers, as in FIG Fig. 10 , This is essentially because the adaptive raster as such in one embodiment Fig. 11 must be detected in a first sub-step of the decoding without the aid of position marks 430, 440.
- the bearing marks 440 which are provided for determining the boundaries of an information-coding area of the information unit, in the context of an in Fig. 11 illustrated embodiment basically omitted, since the grid and its limits can be detected without these marks.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Codieren von Informationen in eine graphische Informationseinheit (1), gekennzeichnet durch die Schritte: - Bestimmen einer Außenkontur (2) der Informationseinheit (1); und - Codieren von Information mittels eines mindestens zweidimensionalen Codes (10) in mindestens einen Bereich (3) ausschließlich innerhalb der Außenkontur (2), wobei die Codierung auf Bildpunkte (11 a, 11 b) der Informationseinheit (1) angewendet wird.The invention relates to a method for coding information into a graphic information unit (1), characterized by the steps: - Determining an outer contour (2) of the information unit (1); and - Coding information by means of at least two-dimensional code (10) in at least one area (3) exclusively within the outer contour (2), wherein the coding on pixels (11 a, 11 b) of the information unit (1) is applied.
Description
Die Erfindung betrifft ein Verfahren zum Codieren von Informationen aus einer graphischen Informationseinheit und ein Verfahren zum Decodieren von Informationen aus einer codierten graphischen Informationseinheit.The invention relates to a method for coding information from a graphic information unit and to a method for decoding information from a coded graphic information unit.
Angefangen in den Bereichen der Logistik, in vielen Dienstleistungsbereichen, im Handel, zur Identifizierung von Waren und Personen und in Produktionsbetrieben haben automatische Identifikationsverfahren (Auto-ID) mit Hilfe von Barcodetechnologien in den letzten Jahren eine große Bedeutung erlangt. Aufgabe und Ziel der Auto-ID ist die Bereitstellung von digitalen Informationen zu Personen, Tieren, Gütern und Waren.Beginning with logistics, many services, commerce, goods and personal identification, and manufacturing companies, automatic identification (Auto-ID) using bar code technologies has become very important in recent years. The purpose and purpose of the Auto-ID is the provision of digital information on persons, animals, goods and goods.
Neben der automatischen Identifikation bietet besonders das sogenannte Mobile-Tagging einen großen Einsatzbereich für neue Barcodetechniken. Beim Mobile-Tagging werden drei unterschiedliche Bereiche unterschieden: Das Commercial Tagging wie zum Beispiel in der Werbung mit Zusatzinformationen auf Produkten, Direktdownloads, direkter Weiterleitung auf die Webseite eines Unternehmens. Das Public Tagging bietet eine Anreicherung bestehender öffentlicher Informationen wie zum Beispiel von Hinweisschildern, Wegbeschreibungen, Fahrplänen, Sehenswürdigkeiten oder ähnlichem. Schließlich das Private Tagging, hier liegt der Fokus auf der Übermittlung privater Informationen wie z.B. bei Visitenkarten, URL-Verlinkungen usw.In addition to automatic identification, so-called mobile tagging offers a large area of application for new barcode techniques. Mobile tagging distinguishes three different areas: commercial tagging, such as additional information on products, direct downloads, direct forwarding to the website of a company. Public tagging enriches existing public information such as signs, directions, timetables, sights, and the like. Finally, private tagging, where the focus is on the transmission of private information such as for business cards, URL links, etc.
Durch die Entwicklung und Verbreitung von mobilen Endgeräten, Druckern, Kameras, Scannern und den damit verbundenen steigenden mobilen Möglichkeiten bei der Integration von Barcodes als digitales Informationsmedium in den Alltag war ein rasanter Wachstum der Anwendungsmöglichkeiten für Barcodes festzustellen. Besonders der QR (Quick Response)-Code wird mit wachsender Tendenz immer stärker zum Mobile-Tagging in den Alltag integriert. Die Gründe für die schnelle Verbreitung des QR-Codes liegen zu großen Teilen in seiner hohen Informationsdichte (bis zu 4296 Zeichen) bei einem geringen Platzbedarf und der verhältnismäßig hohen Lesesicherheit (Integration von Algorithmen zur Fehlerkorrektur- und Fehlerintegritätsprüfung) mit modernen Kameras. Ein weiterer wesentlicher Punkt für den hohen Bekanntheitsgrad des QR-Codes ist die kostenlose Bereitstellung bzw. Integration des QR-Codes in bestehende Barcode-Scanner-Software, die auf allen gängigen Smartphones und Tablets verwendet werden kann.The development and spread of mobile devices, printers, cameras, scanners and the associated increasing mobile possibilities in the integration of barcodes as a digital information medium in everyday life was a rapid growth of applications for barcodes. In particular, the QR (Quick Response) code is increasingly being integrated with mobile tagging into everyday life with a growing trend. The reasons for the rapid dissemination of the QR code are largely due to its high information density (up to 4296 characters) with a small footprint and the relatively high reading reliability (integration of algorithms for error correction and error integrity testing) with modern cameras. Another important aspect of the high level of awareness of the QR code is the free provision or integration of the QR code into existing barcode scanner software, which can be used on all common smartphones and tablets.
Die Entwicklung der gängigen und heutzutage auch in anderen Wirtschaftsbereichen eingesetzten Barcodes (eingeschlossen dem QR-Code) erfolgte unter der hauptsächlichen Berücksichtigung der Logistikbranche als Einsatzgebiet. Diese Fokussierung spiegelt sich vor allem im Design und in den Sicherheitsmechanismen wieder. Besonders für den Marketingbereich und die Anreicherung bestehender öffentlicher Informationen ist das ursprüngliche Schwarz-Weiße Matrixmuster aus graphischer und werbewirksamer Sicht nicht ausreichend.The development of the common barcodes used today in other sectors of the economy (including the QR code) was carried out under the main consideration of the logistics industry as a field of application. This focus is reflected above all in the design and security mechanisms. Especially for the marketing area and the enrichment of existing public information, the original black and white matrix pattern is not sufficient from a graphical and promotional point of view.
Ein weiterer Kritikpunkt an den derzeit eingesetzten Barcodes ist die sehr geringe Individualisierbarkeit, so dass ein individuelles Corporate Design nicht umsetzbar ist. Aus diesem Grunde wurden graphische Erweiterungen z.B. am QR-Code (Customized QR-Code) vorgenommen, die mit Hilfe der hohen Datenredundanz des QR-Codes möglich waren. Trotz einer maximal möglichen Datenredundanz von 30% beim Customized QR-Code dominiert ein nicht an die zusätzliche visuelle Information angepasster und für den Menschen nicht interpretierbarer und vom restlichen graphischen Kontext losgelöster Code das Gesamtbild.Another criticism of the currently used barcodes is the very low customizability, so that an individual corporate design is not feasible. For this reason, graphic extensions have been used e.g. on the QR code (Customized QR Code) made possible by the high data redundancy of the QR code. Despite a maximum possible data redundancy of 30% in the Customized QR code, a code that is not adapted to the additional visual information and that can not be interpreted by humans and is detached from the rest of the graphic context dominates the overall picture.
Ein weiterer großer Nachteil bei den meisten bestehenden Barcodelösungen (eingeschlossen dem QR-Code) liegt in der Umsetzung der Sicherheitsbedingungen. Für den Anwender existiert bei allen gängigen Mobile Tagging-Barcodelösungen, die durch ein Smartphones lesbar sind, kein Sicherheitskonzept, da vor dem Einlesen nicht erkennbar ist, was das Einscannen auslöst. Dieser Schwachpunkt wurde schon durch das Installieren von Schadsoftware auf dem Smartphone oder durch die Weiterleitung zu kostenpflichtigen Diensten ausgenutzt. Ein weiterer großer Schwachpunkt von vielen Barcodes ist die mögliche Verfälschung durch Dritte, die wiederum zu einer Schädigung des Anwenders führen (z.B. Austausch von Produktetiketten) kann.Another major disadvantage of most existing barcode solutions (including the QR code) is the implementation of security conditions. For the user, there is no security concept for all current mobile tagging barcode solutions which can be read by a smartphone, since it is not possible to detect what causes the scanning before reading. This weakness has already been exploited by installing malware on the smartphone or by redirecting to paid services. Another major weakness of many barcodes is the potential for falsification by third parties, which in turn can lead to user harm (e.g., replacement of product labels).
Der Erfindung liegt nun die Aufgabe zugrunde, die Codierung beziehungsweise Decodierung von Information zu verbessern.The invention is based on the object of improving the coding or decoding of information.
Diese Aufgabe wird gelöst mit einem Verfahren zur Codierung gemäß Anspruch 1 beziehungsweise einem Verfahren zur Decodierung gemäß Anspruch 13.This object is achieved with a method for coding according to
Das erfindungsgemäße Verfahren zum Codieren von Informationen in eine graphische Informationseinheit umfasst die Schritte:
- Bestimmen einer Außenkontur der Informationseinheit; und
- Codieren von Information mittels eines mindestens zweidimensionalen Codes in mindestens einen Bereich ausschließlich innerhalb der Außenkontur, wobei die Codierung auf Bildpunkte der Informationseinheit angewendet wird.
- Determining an outer contour of the information unit; and
- Coding information by means of at least two-dimensional code in at least one area exclusively within the outer contour, wherein the coding is applied to pixels of the information unit.
Das erfindungsgemäße Verfahren hat den Vorteil, dass eine neuartige und intuitivere Interaktionsmöglichkeit zwischen analogen realen Informationen, wie zum Beispiel Logos und symbolhaften Darstellungen in Printmedien oder auf realen Schildern beziehungsweise Aufklebern im Alltag, und der digitalen Welt ermöglicht wird. Dies wird dadurch ermöglicht, dass der Code in die Information integriert wird beziehungsweise, dass der Code auf die Informationseinheit angewandt wird. Bislang waren die ursprüngliche Bildinformation und der Code immer separiert. Der Code wird nur innerhalb der Fläche der Informationseinheit angewandt, es werden also einzelne Pixel, Bildpunkte oder Unterelemente der Informationseinheit verändert oder codiert. Durch die Beschränkung der Code-Anwendung auf die Informationseinheit bleibt das Erscheinungsbild der Informationseinheit weitgehend erhalten.The inventive method has the advantage that a novel and more intuitive way of interaction between analog real information, such as logos and symbolic representations in print media or on real signs or stickers in everyday life, and the digital world is possible. This is made possible by the fact that the code is integrated into the information or that the code is applied to the information unit. So far, the original image information and the code were always separated. The code is applied only within the area of the information unit, so that individual pixels, pixels or sub-elements of the information unit are changed or coded. By restricting the code application to the information unit, the appearance of the information unit remains largely intact.
Eine graphische Informationseinheit umfasst hier zunächst jede graphische Darstellung. Dies kann einzelne oder verbundene Symbole wie Buchstaben und Zahlen, Logos und/oder Bilder umfassen. Die Außenkontur entspricht einer Begrenzung oder Abgrenzung der Informationseinheit von einem Hintergrund. Der zweidimensionale Code hat zwei Koordinaten zum Beispiel x und y, wobei das Koordinatensystem von der Fläche, auf der die Informationseinheit angeordnet ist, und/oder von der Informationseinheit selbst definiert oder vorgegeben sein kann. Diese 2D-Codierung kann als ein Schwarz-Weiß Code umgesetzt sein. Der Code beziehungsweise die codierte Informationseinheit kann an physischen Orten und Objekten angebracht und digital verteilt werden und gewährleistet einen inhaltlichen Bezug in visueller Form der zu codierenden Information. Im Unterschied zu den derzeit in der Praxis eingesetzten Barcodeformen, wie zum Beispiel dem QR-Code, ist der darzustellende Inhalt direkt für den Menschen und für ein Erfassungsgerät wie einen Scanner interpretierbar. Die codierte Information weist ein deutlich realitätsnäheres Erscheinungsbild auf. Diese designtechnischen Maßnahmen sind besonders im Hinblick auf die Mensch-Rechner-Interaktion von besonderer Bedeutung, da durch eine realitätsnahe Darstellung von digitalen Inhalten ein besseres Verständnis für den digitalen Inhalt des Barcodes entsteht und die alltägliche Benutzung intuitiver erscheint. Zusätzlich wird durch diese Maßnahmen das Vertrauen des Anwenders beim Einscannen der codierten Informationseinheit vergrößert. Im Bereich der Logistik würde ein weiterer Vorteil durch die Vereinigung des Produktbildes mit der dazugehörigen Codeinformation entstehen, da hierdurch eine geringere Fehlerquote bei der Zuordnung vom Code zum passenden Produkt bei der Anlieferung von neuen Waren entstehen würde.A graphic information unit comprises here first any graphical representation. This can include single or linked symbols such as letters and numbers, logos and / or images. The outer contour corresponds to a limitation or delimitation of the information unit from a background. The two-dimensional code has two coordinates, for example x and y, where the coordinate system can be defined or specified by the surface on which the information unit is arranged and / or by the information unit itself. This 2D encoding can be implemented as a black and white code. The code or the coded information unit can be attached to physical locations and objects and distributed digitally and ensures a contentual reference in visual form of the information to be coded. In contrast to the barcode forms currently used in practice, such as the QR code, the content to be displayed is directly interpretable for humans and for a capture device such as a scanner. The coded information has a much more realistic appearance. These design-technical measures are of particular importance, particularly with regard to the human-computer interaction, since a realistic understanding of digital content results in a better understanding of the digital content of the barcode and everyday use appears more intuitive. In addition, these measures increase the user's confidence in scanning the encoded information unit. In the field of logistics, a further advantage would arise from the combination of the product image with the associated code information, since this would result in a lower error rate when assigning the code to the appropriate product when delivering new goods.
Eine dreidimensionale Farbcodierung kann verwendet werden, wobei ein Farbraum des Farbcodes zumindest ein Teil eines Farbraumes der Informationseinheit ist. Unter realitätsnah wird in diesem Falle auch die Anpassung der zu verwendenden Farben an die zu codierende Informationseinheit verstanden, so dass die Codierung des Codes mit einer variablen Anzahl von Farbtönen durchführbar ist. Durch die Anpassung an den Farbraum der Informationseinheit bleiben neben der Form auch die farbliche Gestaltung der Informationseinheit und damit ihr Wiedererkennungswert weitgehend erhalten.A three-dimensional color coding can be used, wherein a color space of the color code is at least a part of a color space of the information unit. In this case, the adaptation of the colors to be used to the information unit to be coded is also understood to be realistic, so that the coding of the code with a variable number of color tones can be carried out. By adapting to the color space of the information unit in addition to the shape and the color design of the information unit and thus their recognition value remain largely.
Ein Teilfarbraum des Farbraums des Farbcodes kann für eine zusammenhängende Gruppe von Elementen des adaptiven Rasters lokal festgelegt werden, abhängig von einer dieser Gruppe von Rasterelementen zugeordneten so genannten Gruppenfarbe. Diese Gruppenfarbe wird dazu für denjenigen Bereich der Informationseinheit lokal und separat bestimmt, in welchem die Gruppe der Elemente des adaptiven Rasters angeordnet ist. Im einfachsten Fall, dass dieser Bereich der Informationseinheit einfarbig ist, entspricht die Gruppenfarbe der Farbe des Bereichs. Falls der Bereich einen Farbverlauf aufweist oder allgemein mehrfarbig ist, so kann die Gruppenfarbe als Mittelwert oder Modalwert der in dem Bereich vorliegenden Farbwerte bestimmt werden. Eine zusammenhängende Gruppe von Elementen des adaptiven Rasters wird dabei insbesondere durch in benachbarten Zeilen und/oder Spalten des Rasters angeordnete Elemente gebildet, beispielsweise durch Elemente des Rasters, welche eine n*m-Teilmatrix des Rasters bilden, wobei n und m ganze Zahlen darstellen. Ein derart bestimmter Teilfarbraum für eine zusammenhängende Gruppe von Elementen ist dabei grundsätzlich unabhängig von einem Teilfarbraum, der für eine weitere Gruppe von Elementen des Rasters bestimmt wird, die in einem anderen Bereich der Informationseinheit angeordnet sind. Auf diese Weise wird der gesamte Farbraum der Codierung durch die einzelnen lokal berechneten Teilfarbräume erst gebildet.A sub-color space of the color space of the color code may be locally determined for a contiguous group of elements of the adaptive raster, depending on a so-called group color associated with that group of raster elements. This group color is determined locally and separately for that area of the information unit in which the group of elements of the adaptive grid is arranged. In the simplest case that this area of the information unit is monochrome, the group color corresponds to the color of the area. If the area has a color gradient or is generally multicolored, then the group color can be determined as the mean or mode of the color values present in the area. A contiguous group of elements of the adaptive grid is formed in particular by elements arranged in adjacent rows and / or columns of the grid, for example by elements of the grid which form an n * m sub-matrix of the grid, where n and m represent integers. Such a specific one In this case, the sub-color space for a contiguous group of elements is basically independent of a sub-color space which is determined for a further group of elements of the raster which are arranged in a different area of the information unit. In this way, the entire color space of the coding is first formed by the individual locally calculated partial color spaces.
Jede der Farben eines solchen Teilfarbraums kann sich dabei von der entsprechenden Gruppenfarbe - und jeder anderen Farbe des Teilfarbraums - nur bezüglich zumindest eines vorgegebenen Farbparameters (wie z.B. Helligkeit, Sättigung, Farbton) unterscheiden. Bevorzugt wird eine Unterscheidung gemäß der Helligkeit. Die Farben des Teilfarbraums sind somit alle hinreichend ähnlich oder passend zu der Gruppenfarbe, welche wiederum die Farbe des zugrundeliegenden Bereichs der Informationseinheit repräsentiert. Auf diese Weise wird eine Codierung der Informationseinheit möglich, die den optischen Eindruck der Informationseinheit nur sehr geringfügig stört. Gemäß einer ersten Variante können alle Farben des Teilfarbraums dabei "in einer Richtung" entlang des Farbparameters von der Gruppenfarbe abweichen, beispielsweise alle Farben des Teilfarbraums können heller sein als die Gruppenfarbe. Dies erleichtert das Decodieren. Alternativ können die Farben der Teilfarbraums in "verschiedenen Richtungen" entlang des Farbparameters von der Gruppenfarbe abweichen, beispielsweise heller oder dunkler sein als die Gruppenfarbe. Auf diese Weise wird eine optisch noch weniger auffällige Codierung erhalten.Each of the colors of such a sub-color space may differ from the corresponding group color-and any other color of the sub-color space-only with respect to at least one predetermined color parameter (such as brightness, saturation, hue). A distinction according to the brightness is preferred. The colors of the sub-color space are thus all sufficiently similar or matching the group color, which in turn represents the color of the underlying area of the information unit. In this way, an encoding of the information unit is possible, which disturbs the visual impression of the information unit only very slightly. According to a first variant, all the colors of the sub-color space may deviate "in one direction" along the color parameter from the group color, for example all colors of the sub-color space may be lighter than the group color. This facilitates decoding. Alternatively, the colors of the sub-color space in "different directions" along the color parameter may differ from the group color, for example, be lighter or darker than the group color. In this way, an optically even less conspicuous coding is obtained.
Dadurch, dass die Teilfarbräume lokal bestimmt werden, lediglich mit Bezug auf eine zusammenhängende Gruppe von Elementen des Rasters, müssen in einem entsprechenden Decodierschritt, beim Decodieren der Information, welche durch die Rasterelemente der Gruppe codiert wird, auch lediglich die Farben des der Gruppe zugeordneten Teilfarbraums beachtet werden. Dies vereinfacht die Decodierung im Vergleich zu einem Codierverfahren, welches einen globalen Farbraum für die Codierung verwendet. Auf der anderen Seite kann der gesamte Farbraum der Codierung, welcher als Vereinigung der beschriebenen Teilfarbräume verstanden werden kann, so groß sein, so dass die Codierung farblich in optimaler Weise an die graphische Informationseinheit angepasst werden kann.Because the partial color spaces are determined locally, merely with reference to a contiguous group of elements of the grid, in a corresponding decoding step, when decoding the information encoded by the group's raster elements, only the colors of the partial color space assigned to the group must also be used get noticed. This simplifies decoding as compared to a coding method which uses a global color space for coding. On the other hand, the entire color space of the coding, which can be understood as a combination of the partial color spaces described, can be so large that the coding can be color-matched in an optimum manner to the graphic information unit.
Um die Decodierung im Zusammenhang mit einer in der vorstehend beschriebenen Weise gebildeten Farbcodierung zu vereinfachen, kann ein vorgegebenes Element der Gruppe von Elementen des adaptiven Rasters mit derjenigen Farbe des Teilfarbraums gefärbt werden, die sich im Vergleich zu den anderen Farben des Teilfarbraums von der Gruppenfarbe bezüglich des vorgegebenen Farbparameters am deutlichsten unterscheidet, beispielsweise als hellste Farbe des Teilfarbraums. Diese Farbe bildet dann eine erste Referenzfarbe. In dem Fall, dass z.B. die Gruppenfarbe auch im Schritt des Decodierens noch eindeutig erkennbar ist, da der entsprechende Bereich der Informationseinheit z.B. einfarbig ist, kann die Gruppenfarbe als zweite Referenzfarbe dienen. Die von der ersten Referenzfarbe verschiedenen Farben des Teilfarbraums sind dann mit Bezug auf den Farbparameter "zwischen" der ersten Referenzfarbe und der zweiten Referenzfarbe angeordnet. Alternativ können als erste und zweite Referenzfarbe die beiden Farben des Teilfarbraums ausgewählt werden, die sich bezüglich des vorgegebenen Farbparameters am deutlichsten voneinander, aber auch von der Gruppenfarbe, unterscheiden. Beispielsweise können dies die hellste und die dunkelste Farbe des Teilfarbraums sein, z.B. in dem Fall, dass die Gruppenfarbe bezüglich der Helligkeit zwischen diesen beiden Farben angeordnet ist. Ein erstes vorgegebenes Element der Gruppe von Elementen des adaptiven Rasters kann dann mit der ersten Referenzfarbe gefärbt werden und ein zweites vorgegebenes Element der Gruppe von Elementen des adaptiven Rasters kann mit der zweiten Referenzfarbe gefärbt werden. Im Schritt des Decodierens können dann erst jeweils die beiden Referenzfarben ausgelesen werden und auf deren Basis, in Kenntnis einer vorgegebenen Anzahl der Farben des Teilfarbraums, die restlichen Farben des Teilfarbraums bestimmt werden. Mit anderen Worten besitzt gemäß dieser Ausführungsform jede der zusammenhängenden Gruppen von Rasterelementen ihre lokale Farbtabelle. Grundsätzlich können als Referenzfarben des Teilfarbraums beliebige zwei Farben des Teilfarbraums verwendet werden, d.h. es müssen nicht notwendigerweise die bezüglich des Farbparameters verschiedensten Farben als Referenzfarben dienen. Gemäß einer solchen Variante muss dann beim Decodieren zusätzlich zu der Anzahl der Farben des Teilfarbraums vorgegeben werden, z.B. in einer Headerinformation, wie in dem Teilfarbraum die restlichen Farben des Teilfarbraums bezüglich des Farbparameters relativ zu den Referenzfarben angeordnet sind.In order to simplify the decoding associated with color coding formed in the manner described above, a given element of the group of adaptive raster elements may be colored with that color of the sub-color space that is different from the other colors of the sub-color space of the given color parameter most clearly different, for example, as the brightest color of the sub-color space. This color then forms a first reference color. In the case that For example, the group color is clearly recognizable even in the step of decoding, since the corresponding area of the information unit is, for example, monochrome, the group color can serve as the second reference color. The colors of the sub-color space other than the first reference color are then arranged with respect to the color parameter "between" the first reference color and the second reference color. Alternatively, as the first and second reference colors, the two colors of the sub-color space can be selected which differ most clearly from one another with respect to the given color parameter, but also from the group color. For example, this may be the brightest and the darkest color of the sub-color space, for example, in the case that the group color is arranged with respect to the brightness between these two colors. A first predetermined element of the group of elements of the adaptive raster may then be colored with the first reference color, and a second predetermined element of the group of elements of the adaptive raster may be colored with the second reference color. In the step of decoding, the two reference colors can then be read out first and, based on their knowledge, a predetermined number of colors of the sub-color space, the remaining colors of the sub-color space can be determined. In other words, according to this embodiment, each of the contiguous groups of raster elements has its local color table. Basically, any two colors of the sub-color space can be used as reference colors of the sub-color space, ie it is not necessary for the colors of the most varied colors to serve as reference colors. According to such a variant, in addition to the number of colors of the sub-color space, it is then necessary to specify in decoding, for example in header information, how the remaining colors of the sub-color space are arranged relative to the reference colors in the sub-color space with respect to the color parameter.
Die Codierung kann mindestens zwei Markierungen für eine Lageerkennung der Informationseinheit aufweisen. Markierungen zur Lageerkennung können zum einen dazu dienen, beim Decodieren eindeutig die Lager der codierten Informationseinheit relativ zu einem Erfassungsgerät anzuzeigen. Alternativ oder zusätzlich können Markierungen zur Lageerkennung dazu dienen, Grenzen eines zur Informationscodierung verwendeten Anteils eines Rasters anzugeben. Vorzugsweise werden für diese beiden Zwecke (Erkennung der relativen Lage zum Erfassungsgerät, Erkennung der Grenzen) jeweils separate, voneinander unterscheidbare Markierungen zur Lageerkennung verwendet. Die Möglichkeit zur Lageerkennung erhöht die Schnelligkeit bei der Erfassung des Codes, da mit den mindestens zwei Markierungen ein Erkennungsraster oder -muster direkt über ein Codierungsraster gelegt werden kann. Insbesondere für eine Offline-Decodierung, das heißt ohne einen zentralen Server, ist die Lageerkennung wichtig.The coding can have at least two markings for position detection of the information unit. On the one hand, markers for position detection can be used to clearly indicate the bearings of the coded information unit relative to a detection device during decoding. Alternatively or additionally, markers for position detection can serve to specify limits of a portion of a grid used for information coding. Preferably, for each of these two purposes (detection of the relative position to the detection device, recognition of the boundaries) separate, mutually distinguishable markings are used for position detection. The ability to detect position increases the speed of detection of the code, since with the at least two markers a recognition grid or pattern can be placed directly on a coding grid. In particular, for an offline decoding, that is without a central server, the location detection is important.
Als Markierungen zur Lageerkennung können optisch auffällige und automatisch, per Bilderkennung, einfach zu identifizierende Markierungen verwendet werden, wie sie beispielsweise aus dem QR-Code bekannt sind.As markers for position detection optically conspicuous and automatically, by image recognition, easily identifiable markers can be used, as they are known for example from the QR code.
Alternativ können z.B. in dem Fall, dass, wie vorstehend im Detail beschrieben, eine dreidimensionale Farbcodierung verwendet wird und für die Codierung ein adaptives Raster verwendet wird, Markierungen für die Lageerkennung - allein oder unter anderem - durch geeignete Färbung zumindest eines Elements des adaptiven Rasters mit zumindest einer spezifischen Markierungsfarbe ausgebildet werden. Die Markierungsfarbe oder die Markierungsfarben, welche ein Rasterelement oder mehrere Rasterelemente als Lagemarkierung oder Teil einer Lagemarkierung kennzeichnen, überschreiten dabei jeweils eine vorgegebene Farbdifferenz zu einer Farbe eines Bereichs der Informationseinheit nicht, in dem das zumindest eine Element angeordnet ist. Ein Rasterelement wird dabei jeweils mit einer der Markierungsfarbe gefärbt. In dem Fall, dass mehrere Rasterelemente zum Bilden einer Lagemarkierung mit einer der Markierungsfarben gefärbt werden, so kann dazu eine oder mehrere Markierungsfarben verwendet werden, aber stets lediglich eine der Markierungsfarben für eines der Rasterelemente. Auf diese Weise bleibt die Markierung, im Vergleich zu herkömmlich bekannten Lagemarkierungen, optisch unauffälliger.Alternatively, e.g. in the case where, as described in detail above, a three-dimensional color coding is used and an adaptive raster is used for the encoding, markers for position detection - alone or among others - by suitable coloring of at least one element of the adaptive raster with at least one specific one Marking color can be formed. The marking color or the marking colors, which characterize one or more raster elements as a position marker or part of a position marker, each exceed a predetermined color difference to a color of a region of the information unit in which the at least one element is arranged. A raster element is in each case dyed with one of the marking colors. In the case where a plurality of raster elements are colored with one of the marker colors to form a position marker, one or more marker colors may be used for this, but always only one of the marker colors for one of the raster elements. In this way, the mark remains visually inconspicuous compared to conventionally known position markings.
Eine Markierung zur Lageerkennung, welche durch Färben einer Mehrzahl von Elementen des adaptiven Rasters mit einer oder mehreren der Markierungsfarben ausgebildet wird, kann zusätzlich dadurch kenntlich gemacht werden, dass die Elemente der Mehrzahl der Elemente bezüglich des adaptiven Rasters eine vorgegebene Lagebeziehung zueinander aufweisen. Mit anderen Worten spielen hier Farbinformation und relative Lageinformation zusammen, um eine Markierung zur Lageerkennung zu bilden.A mark for position detection, which is formed by coloring a plurality of elements of the adaptive grid with one or more of the marking colors, can additionally be identified by the elements of the plurality of elements having a predetermined positional relationship with respect to the adaptive grid. In other words, here color information and relative position information play together to form a marker for position detection.
Die Codierung kann einen Header mit Angaben zu der Codierung aufweisen. In diesem Header können Angaben enthalten sein, welche eine Decodierung unter Umständen erst möglich machen beziehungsweise vereinfachen. Der Header kann Angaben wie zum Beispiel eine Angabe einer Decodierungsbibliothek (Version), eine Farbcodierungstabelle, Angaben zu Redundanz, dem zu verwendenden Zeichensatz und Verschlüsselungsinformationen enthalten.The coding can have a header with information about the coding. In this header information may be included, which may make possible or simplify a decoding under certain circumstances. The header may include information such as an indication of a decoding library (version), a color coding table, redundancy information, the character set to be used, and encryption information.
Die zu codierende Information kann vor der Codierung verschlüsselt werden. Diese Integration eines Sicherheitsmechanismus erhöht die Sicherheit durch Schutz der codierten Informationseinheit vor Manipulationen durch Dritte und durch Schutz des Anwenders vor dem Herunterladen von Schadsoftware oder dem Weiterleiten an kostenpflichtige Dienste ohne Einwilligung.The information to be encoded can be encoded before encoding. This integration of a security mechanism enhances security by protecting the encoded information unit from tampering by third parties and by protecting the user from downloading malware or forwarding to paid services without consent.
Für die Codierung kann ein adaptives Raster verwendet werden, das an die Außenkontur und/oder den Farbraum der Informationseinheit angepasst wird. Das dynamische oder adaptive Raster erlaubt eine optimale Anpassung des Rasters und damit der Codierung an die Informationseinheit, so dass die Informationseinheit nur gering verändert wird, so dass einem menschlichen Betrachter der Gesamteindruck erhalten bleibt, einer maschinellen Erfassungseinheit der Code aber zugänglich ist. Vorteilig ist, wenn der menschliche Betrachter die Codierung erkennt, so dass er zum Beispiel sein Smartphone auf die codierte Informationseinheit richten kann, um die codierte Information zu erlangen.For the coding, an adaptive grid can be used, which is adapted to the outer contour and / or the color space of the information unit. The dynamic or adaptive grid allows optimal adaptation of the grid and thus the coding to the information unit, so that the information unit is only slightly changed, so that a human observer of the overall impression is maintained, a machine detection unit, the code is accessible. It is advantageous if the human observer recognizes the coding, so that he can, for example, direct his smartphone to the coded information unit in order to obtain the coded information.
Das erfindungsgemäße Verfahren zum Decodieren von Informationen aus einer codierten graphischen Informationseinheit umfasst die Schritte:
- Erfassen einer mit einem Verfahren nach mindestens einem der Ansprüche 1 bis 12 codierten Informationseinheit; und
- Decodieren der Information aus der codierten Informationseinheit.
- Detecting an information unit encoded by a method according to at least one of
claims 1 to 12; and - Decoding the information from the encoded information unit.
Das Erfassen umfasst zum Beispiel ein Aufnehmen und/oder Scannen mit einer Erfassungseinheit wie beispielsweise einem Smartphone, Tablet oder einer dedizierten Scannereinheit, wie sie beispielsweise im Logistikbereich verwendet wird. Das Decodieren kann mit der Erfassungseinheit und/oder einer damit verbundenen Rechnereinheit wie zum Beispiel einem Server erfolgen. Bei einem Smartphone kann dies vorzugsweise durch eine Anwendung oder App geschehen.Detecting includes, for example, recording and / or scanning with a detection unit, such as a smartphone, tablet, or a dedicated scanner unit, such as those used in logistics. The decoding can be done with the detection unit and / or an associated computer unit such as a server. For a smartphone, this can preferably be done by an application or app.
Ein Erfassungsgerät kann die Information an eine Datenbank übertragen und eine der Information zugeordnete weitere Information von der Datenbank erhalten. Diese sogenannte Online-Decodierung arbeitet üblicherweise mit einem codierten Link, der auf einen Eintrag in der Datenbank verweist. Dazu ist der Scanner mit der Datenbank verbunden.A detection device can transmit the information to a database and receive information associated with the information from the database. This so-called online decoding usually works with a coded link pointing to an entry in the database. For this, the scanner is connected to the database.
Ein Erfassungsgerät kann die Information verarbeiten. Bei dieser Offline-Decodierung ist die gesamte Information in der codierten Informationseinheit enthalten, so dass keine Online-Funktionalität im Erfassungsgerät vorhanden sein muss.A detection device can process the information. In this offline decoding, all the information is contained in the coded information unit, so that no online functionality must be present in the recording device.
Bei der Decodierung kann mindestens einer der folgenden Schritte ausgeführt werden:
- Anpassen und/oder Anwenden eines Rasters auf die erfasste, codierte Informationseinheit;
- Erkennen einer Orientierung der erfassten, codierten Informationseinheit anhand mindestens zwei Markierungen;
- Erfassen eines Headers;
- Decodieren der Information basierend auf Angaben des Headers;
- Durchführen einer Fehlerkorrektur;
- Entschlüsseln der Information;
- Anzeigen der Information.
- Adapting and / or applying a raster to the acquired coded information unit;
- Recognizing an orientation of the detected coded information unit based on at least two markings;
- Capturing a header;
- Decoding the information based on indications of the header;
- Performing an error correction;
- Decrypting the information;
- Display the information.
Diese Schritte oder einzelne dieser Schritte können bei der Decodierung ausgeführt werden. Die obige Reihenfolge ist dabei nicht verpflichtend, die Schritte können auch in einer anderen Reihenfolge oder teilweise parallel ausgeführt werden.These steps or some of these steps may be performed during decoding. The above sequence is not mandatory, the steps can also be executed in a different order or partially in parallel.
Ein erfindungsgemäßes Computerprogrammprodukt umfasst Programmteile, welche, wenn in einem Computer geladen, zur Durchführung eines Verfahrens wie zuvor beschrieben ausgelegt sind. Es gelten die gleichen Vorteile und Modifikationen wie zuvor beschrieben.A computer program product according to the invention comprises program parts which, when loaded in a computer, are designed to carry out a method as described above. The same advantages and modifications apply as described above.
Die Erfindung wird nachfolgend in Ausführungsbeispielen anhand der zugehörigen Zeichnungen erläutert. Es zeigen:
Figur 1- eine schematische Darstellung einer Informationseinheit und einer codierten Informationseinheit;
Figur 2- eine schematische Darstellung der Codierung einer Informationseinheit;
- Figur 3
- eine schematische Darstellung der Decodierung einer codierten Informationseinheit,
Figuren 4 bis 9- schematisch spezifische Schritte eines Verfahrens zum Codieren von Informationen in eine graphische Informationseinheit gemäß einer ersten bevorzugten Ausführungsform;
Figur 10- eine entsprechend codierte Informationseinheit; und
- Figur 11
- eine Variante der Informationseinheit aus
Figur 10 .
- FIG. 1
- a schematic representation of an information unit and a coded information unit;
- FIG. 2
- a schematic representation of the coding of an information unit;
- FIG. 3
- a schematic representation of the decoding of a coded information unit,
- FIGS. 4 to 9
- schematically specific steps of a method for encoding information in a graphic information unit according to a first preferred embodiment;
- FIG. 10
- a correspondingly coded information unit; and
- FIG. 11
- a variant of the information unit
FIG. 10 ,
In
Die Informationseinheit kann auch aus einem oder mehreren Symbolen wie zum Beispiel Buchstaben oder Zahlen bestehen oder einer Kombination von einem oder mehreren Symbolen mit einer oder mehreren bildlichen Darstellungen.The information unit may also consist of one or more symbols such as letters or numbers, or a combination of one or more symbols with one or more pictorial representations.
Die Informationseinheit 1 ist von einer Außenkontur 2 begrenzt. Das heißt die Außenkontur 2 ist die Grenze oder Grenzlinie zwischen der Informationseinheit 1 und einem Hintergrund. Der Hintergrund kann dabei auf der gleichen Oberfläche liegen oder auf einer weiteren Fläche oder Oberfläche angeordnet sein.The
Die Außenkontur 2 umschließt einen Innenraum 3, also einen Bereich ausschließlich innerhalb der Außenkontur 2. Der Innenraum 3 kann mehrere Bereich oder Abschnitte umfassen, von denen ein Bereich 4 beispielhaft dargestellt ist. Die Bereiche können beispielsweise durch unterschiedliche Farben oder Farbräume definiert sein. Andererseits können die Bereiche durch unterschiedliche Inhalte definiert sein, wie zum Beispiel ein Symbol und eine bildliche Darstellung. In dem dargestellten Beispiel eines Hauses ist zum Beispiel die rechte Seitenwand der Bereich 4. Die Seitenwand kann eine andere Farbe als das Dach und der Sockel des Hauses aufweisen. Auch die Säulen an der Vorderseite des Hauses können als Bereich angesehen werden, wobei die dreidimensionale Wirkung der Säulen durch unterschiedliche Weiß- beziehungsweise Grautöne hervorgerufen wird.The
Die Informationseinheit 1 kann zum Beispiel ein Logo für ein Unternehmen, eine Institution, eine Dienstleistung oder ein Produkt sein. Sie kann auch ein Hinweis auf eine Information oder Anwendung sein. Die Informationseinheit transportiert üblicherweise einen Inhalt, mit dem der Betrachter der Informationseinheit 1 etwas verbindet oder erwartet. Im klassischen Sinne dient ein derartiges Logo zur gedanklichen Verknüpfung mit einem Unternehmen und/oder seinem Produkt.The
Neben den Funktionen des Marketings und der Informationsvermittlung beispielsweise im öffentlichen Raum werden derartige Informationseinheiten auch im Bereich der Logistik verwendet, um Güter, Verpackungen und/oder Transportbehälter zu kennzeichnen und eine schnelle und sichere Zuordnung beziehungsweise Information zu erlauben.In addition to the functions of marketing and the information exchange, for example in public space, such information units are also used in the field of logistics in order to identify goods, packaging and / or transport containers and to permit fast and secure allocation or information.
Um derartige Informationseinheiten 1 weiter auszugestalten, das heißt mit erweiterter Funktionalität oder erhöhter Informationsdichte zu versehen, wird eine Codierung der Original-Informationseinheit 1 aus
Dabei werden Information oder Nutzdaten integriert, indem ein mindestens zweidimensionaler Code innerhalb der Außenkontur 2 auf Bildpunkte der Informationseinheit 1 angewendet wird. Die Außenkontur 2 und damit die äußere Form bleiben somit erhalten. Die Codierung kann auch auf die Außenkontur 2 angewendet werden. Bei der Codierung wird das äußere Erscheinungsbild der originalen Informationseinheit 1 berücksichtigt. Dies geschieht über die beibehaltene Außenkontur 2. Die Außenkontur 2 ist vorzugsweise identisch bei der originalen Informationseinheit 1 und bei der codierten Informationseinheit 5. Zum anderen können Farbwerte oder Graustufen der Informationseinheit bei der Codierung berücksichtigt werden, so dass der Gesamteindruck der ursprünglichen Informationseinheit auch nach der Codierung erhalten bleibt.In this case, information or user data are integrated by applying an at least two-dimensional code within the
In
Aus Gründen der Darstellbarkeit in der schwarzweißen Darstellung der Figur sind die Bildpunkte 11 als jeweils ein Muster dargestellt. Diese Darstellung ist vorzugsweise ein Platzhalter für eine in der Figur nicht darstellbare Grauwert- oder Farbwertskalierung, welche an die Originaldarstellung beziehungsweise Originalfarbe oder -farben der originalen Informationseinheit 1 aus
Durch diese auf die Informationseinheit abgestimmte Codierung bleibt für den menschlichen Betrachter der Gesamteindruck beziehungsweise der ästhetische Eindruck auch nach der Codierung vollständig oder zumindest nahezu vollständig erhalten. Darüber hinaus enthält die Informationseinheit aber zusätzlich die codierte Funktion. Die Informationseinheit hat also nunmehr die Doppelfunktion des Transports der ursprünglichen Information sowie der zusätzlich codierten Information. Die codierte Information beziehungsweise das Vorhandensein einer codierten Information oder anders ausgedrückt die Anwendung eines Codes auf die Informationseinheit kann für den menschlichen Betrachter sichtbar sein, so dass er einen Hinweis auf die zusätzliche, codierte Information erhält.By means of this coding adapted to the information unit, the overall impression or the aesthetic impression also remains completely or at least almost completely preserved even after the coding for the human observer. In addition, however, the information unit additionally contains the coded function. Thus, the information unit now has the dual function of transporting the original information as well as the additional coded information. The encoded information, or the presence of encoded information, or in other words the application of a code to the information unit, may be visible to the human observer so as to provide an indication of the additional encoded information.
Anhand von
In einem ersten Schritt oder Block 100 wird die Informationseinheit bestimmt oder festgelegt. Dies umfasst als erstes die Auswahl zum Beispiel mindestens eines Symbols und/oder mindestens einer Bildeinheit. Als nächstes wird die Außenkontur 2 der Informationseinheit bestimmt. Dies kann durch manuelle und/oder automatisierte Techniken wie zum Beispiel Freistellen oder Freischneiden realisiert werden.In a first step or block 100, the information unit is determined or determined. This comprises, first of all, the selection for example of at least one symbol and / or at least one image unit. Next, the
In einem weiteren Schritt 110 werden die zu codierenden Informationen oder Nutzdaten eingegeben. Die Information kann zum Beispiel einen Text umfassen, der auf einem Computer bereits vorliegt oder erstellt wird. Der Text kann Zahlen und/oder Buchstaben enthalten und beispielsweise Information zu der Informationseinheit oder zu mit dieser verbundenen Unternehmen oder ähnlichem liefern. Die Information kann auch ein Programmcode oder eine Anweisung an ein Programm enthalten oder sein. Dies kann zum Beispiel ein Link für eine Internetadresse oder einen Datenbankeintrag umfassen oder sein.In a
In einem Schritt 120 werden die Nutzdaten oder die Information vorverarbeitet. Die Vorverarbeitung kann zum Beispiel eine Komprimierung der Information und/oder eine Auswahl des Codes umfassen. Zur Verbesserung der zu codierenden Informationsdichte kann dabei die zu codierende Information in einem Vorverarbeitungsschritt in Codeworte umgeschlüsselt oder komprimiert werden. Hierfür können entsprechende bereits existierende Komprimierungsverfahren verwendet und gegebenenfalls angepasst werden. Es kommen vor allem Verfahren aus dem Bereich der verlustfreien Textkomprimierung in Betracht, wie zum Beispiel der LZW-Algorithmus, die Huffman-Codierung oder die arithmetische Codierung.In
In einem nächsten Schritt 130 wird die in die Informationseinheit 1 zu codierende Information verschlüsselt.In a
Durch die immer größer werdende Verbreitung von mobilen internetfähigen Geräten im privaten und gewerblichen Sektor steigt dementsprechend auch die Anzahl der kriminellen Angriffe auf die Besitzer dieser Geräte. Die sogenannten mobilen Gefahren können unter anderem das Ausspionieren von Informationen, ein Informationsverlust, ein Identitätsdiebstahl und/oder das Installieren von Schadsoftware sein. Besonders im Bereich des Mobile Taggings sind diese Sicherheitslücken für den Anwender ein oft angeführter Negativpunkt bei bestehenden Barcodelösungen wie zum Beispiel dem QR-Code, da vor dem Einscannen des Barcodes keine Vorabinformationen für den Anwender ersichtlich sind und bei den gängigen Barcodescannern keine Überprüfung bezüglich der decodierten Information stattfindet.As a result of the ever increasing proliferation of mobile Internet-enabled devices in the private and commercial sectors, the number of criminal attacks on the owners of these devices is correspondingly increasing. The so-called mobile threats may include, inter alia, spying on information, loss of information, identity theft and / or installing malicious software. Particularly in the field of mobile tagging, these vulnerabilities are often a negative point for existing barcode solutions, such as the QR code, since prior to scanning the barcode, no advance information is visible to the user and the barcode scanners are not checked for decoding Information takes place.
Da die Codierungsvorschriften aller derzeit bekannten Barcodelösungen offen zur Implementierung vorliegen, ist eine Manipulation der codierten Information durch den Austausch des Barcodes durch Dritte möglich. Zur Vermeidung dieser Sicherheitslücken werden Verwendungen von entsprechenden Sicherheitsmechanismen stattfinden.Since the coding rules of all currently known barcode solutions are open to implementation, manipulation of the coded information by the exchange of the barcode by third parties is possible. To avoid these vulnerabilities, uses of appropriate security mechanisms will take place.
Die Codierung kann mit zwei unterschiedlichen Ansätzen umgesetzt werden, so dass die Codierung beziehungsweise der Code variabel an unterschiedlichste Einsatzgebiete anpassbar ist. Zum einen kann eine Codierung der gesamten Information direkt im Barcode erfolgen und zum anderen können eine Speicherung der gesamten Information innerhalb einer Datenbank und eine ausschließliche Codierung der Datenbankreferenz direkt in der Informationseinheit vorgesehen sein.The coding can be implemented with two different approaches, so that the coding or the code is variably adaptable to a wide variety of applications. On the one hand, coding of the entire information can take place directly in the barcode and, on the other hand, storage of all the information within a database and exclusive coding of the database reference can be provided directly in the information unit.
Dieser erste Ansatz der Codierung der gesamten Information direkt im Code ist besonders im Bereich des Mobile Tagging anzutreffen, indem unter anderem URL' s oder Kontaktinformationen direkt im Barcode codiert werden. Da die gesamte Information direkt im Barcode codiert wird, ist mit diesem Ansatz eine deutlich geringere Informationsdichte im Vergleich zum Einsatz mit einer Datenbank zu erreichen. Nach dem Drucken des Codes können keine nachträglichen Änderungen hinsichtlich der gespeicherten Informationen durchgeführt werden. Dann ist eine nachträgliche oder dynamische Veränderung der zu codierenden Informationen zum Beispiel bei Tippfehlern oder nicht mehr existierenden URL-Adressen erforderlich.This first approach of coding the entire information directly in the code is particularly found in the field of mobile tagging, in that, among other things, URLs or contact information are coded directly in the barcode. Since all the information is coded directly in the barcode, this approach allows a much lower information density compared to use with a database. After printing the code, no subsequent changes can be made to the stored information. Then, a subsequent or dynamic change of the information to be encoded, for example, typing errors or no longer existing URL addresses is required.
Dieser zweite Ansatz der Speicherung der gesamten Information innerhalb einer Datenbank und der Codierung der Datenbankreferenz wird in den meisten Fällen innerhalb der Logistikbranche und in vielen Anwendungen von Auto-ID Systemen ausgewählt. Zur Erkennung und Kennzeichnung unter anderem Zählung der Produkte wird eine Datenbank benötigt. Der Code dient in diesen Fällen nur zur Identifikation des Produktes und die dazugehörigen Informationen sind in einer Datenbank gespeichert.This second approach of storing all the information within a database and encoding the database reference is most often selected within the logistics industry and in many applications of Auto-ID systems. For identification and labeling, among other things, counting the products, a database is needed. The code is used in these cases only for the identification of the product and the associated information is stored in a database.
Um eine Übertragung der Daten der Decodierung zum Beispiel bei einer Decodierung auf dem Smartphone zur jeweiligen Software zur Verwaltung der Datenbankeinträge zu ermöglichen, umfasst die Smartphone-Applikation eine Kommunikationsmöglichkeit wie zum Beispiel eine TCP/IP Funktionalität. Weiterhin besteht eine Serverkomponente, die die decodierten Daten auf dem Server empfängt und eine Schnittstelle zum Datenaustausch zur eingesetzten Software zur Verwaltung der Datenbankeinträge aufweist. Somit findet die Decodierung der Datenbankreferenz auf dem Client wie zum Beispiel einem Smartphone statt. Dann werden die Daten an einen zentralen Server geschickt, der dementsprechend die dazu passenden Informationen aus der Datenbank dem Client zur Anzeige oder weiteren Verarbeitung zurückgibt. Die Umsetzung dieser Infrastruktur kann dabei die identische Decodierungsfunktionalität wie im ersten Ansatz nutzen und kann daher gewissermaßen als eine Erweiterung des ersten Ansatzes um eine TCP/IP Übertragungskomponente gesehen werden.In order to enable transmission of the data of the decoding, for example, when decoding on the smartphone to the respective software for managing the database entries, the smartphone application includes a communication option such as a TCP / IP functionality. Furthermore, there is a server component which receives the decoded data on the server and has an interface for data exchange with the software used for managing the database entries. Thus, the decoding of the database reference takes place on the client, such as a smartphone. Then the Data is sent to a central server, which accordingly returns the appropriate information from the database to the client for display or further processing. The implementation of this infrastructure can use the identical decoding functionality as in the first approach and can therefore be seen as an extension of the first approach to a TCP / IP transmission component.
Zum Schutz vor Manipulationen durch Dritte können bereits bestehende Verschlüsselungsverfahren oder digitale Signaturverfahren innerhalb des Codierungs- bzw. Decodierungsprozesses und/oder eines Prüfziffernberechnungsverfahren eingesetzt werden. Dadurch wird eine Manipulation des vorgeschlagenen Codes verhindert oder erschwert. Durch das eingesetzte Signaturverfahren und/oder die Prüfziffernberechnungsverfahren ist erkennbar, ob das ursprüngliche Bild beziehungsweise die Informationseinheit im Nachhinein verändert wurde und somit nicht mehr vertrauenswürdig ist. Zum Schutz des Anwenders vor dem Herunterladen von Schadsoftware oder dem Weiterleiten an kostenpflichtige Dienste ohne Einwilligung sind einerseits Kontrollmechanismen in der Smartphone-Applikation und andererseits eine nicht offene Codierung vorgesehen. Innerhalb der Smartphone-Applikation können schadhafte Auffälligkeiten in der decodierten Information gefiltert und dem Anwender angezeigt werden.For protection against manipulation by third parties already existing encryption methods or digital signature methods within the coding or decoding process and / or a check digit calculation method can be used. This prevents or impedes manipulation of the proposed code. By means of the signature method used and / or the check digit calculation method, it can be recognized whether the original picture or the information unit has subsequently been changed and is thus no longer trustworthy. To protect the user from downloading malware or forwarding to paid services without consent on the one hand control mechanisms in the smartphone application and on the other hand a non-open encoding provided. Within the smartphone application, defective abnormalities in the decoded information can be filtered and displayed to the user.
In einem weiteren Schritt 140 werden die Informationen oder Nutzdaten nun codiert. Dazu wird zunächst ein Raster über die Informationseinheit 1 gelegt. Das Raster ist dabei nicht unabhängig oder getrennt von der Informationseinheit. Erstens wird es lediglich innerhalb der Außenkontur 2 angewendet und zweitens ist es nicht sichtbar, sondern gibt einen Rahmen für die Anwendung der Codierung aus einzelnen Rasterelementen oder Bildpunkten der Informationseinheit 1 vor. Das Raster ist gewissermaßen eine Schablone, durch welche die Codierung auf die Informationseinheit 1 angewendet wird.In a
Die Auswahl des Rasteraufbaus ist bestimmt durch die Rasterform beziehungsweise Rasterausprägung und ein wesentlicher Parameter für den späteren Code, da die Rasterform und die Rasterfarbe das Design des zu codierenden Bildes beeinflussen. Zudem hängen die Lesesicherheit des Codes und die mögliche Informationsdichte ebenfalls von der Wahl der Rasterform- beziehungsweise der Farbe ab.The selection of the grid structure is determined by the raster shape or raster expression and an essential parameter for the later code, since the raster shape and the raster color influence the design of the image to be encoded. In addition, the reading reliability of the code and the possible information density also depend on the choice of raster form or color.
Zur Codierung der Nutzzeichen wie Buchstaben, Nummern und/oder Zeichen innerhalb des Codes wird vorzugsweise das binäre System verwendet. Dementsprechend werden Graustufenwechsel oder Farbwechsel zwischen den einzelnen Rasterelementen oder Pixeln der Informationseinheit beziehungsweise des Bildes in Bitfolgen umgewandelt. Zur Überführung der Bitfolgen in Nutzzeichen muss eine Referenztabelle und ein dementsprechender Zeichensatz vereinbart werden. Die Referenztabelle gibt die Zuordnung zwischen vorliegender Bitfolge und dem entsprechenden Zeichen aus dem gewählten Zeichensatz an. Vorzugsweise werden gängige Zeichensätze wie zum Beispiel der numerische, alphanumerische beziehungsweise der ISO-Zeichensatz für die Codierungsvorschriften betrachtet.For encoding the useful characters such as letters, numbers and / or characters within the code, the binary system is preferably used. Accordingly, gray scale changes or color changes between the individual raster elements or pixels of the information unit or of the image are converted into bit sequences. To convert the bit sequences into useful characters, a reference table and a corresponding character set must be agreed. The reference table specifies the association between the existing bit sequence and the corresponding character from the selected character set. Preferably, common character sets such as the numeric, alphanumeric or the ISO character set are considered for the coding rules.
Zur Verbesserung einer realitätsnahen Darstellung und zur Erhöhung der Informationsdichte wird neben der 2-dimensionalen Lagecodierung vorzugsweise eine Farbcodierung verwendet, so dass sich ein dreidimensionaler Code ergibt. Während bei einem Schwarz-Weiß-Code eine Informationsdichte von einem Bit pro Pixel vorliegt, ergibt sich bei einem Farbcode eine Informationsdichte von der Anzahl der Farben pro Pixel. Da der Farbraum in Abhängigkeit von der Informationseinheit variabel ist, ist auch die Codierung und ihre Informationsdichte variabel.To improve a realistic representation and to increase the information density, a color coding is preferably used in addition to the 2-dimensional position coding, so that a three-dimensional code results. While a black-and-white code has an information density of one bit per pixel, a color code results in an information density of the number of colors per pixel. Since the color space is variable as a function of the information unit, the coding and its information density are also variable.
Durch die Bedingung zur realitätsnahen Darstellung werden vorzugsweise die zum codierenden Bild passenden Farben für die Codierung herangezogen. Zur Festlegung des zu verwendenden Farbraumes unter Berücksichtigung der Farben des Originalbildes werden Methoden aus der Bildverarbeitung verwendet. Um eine variable Anzahl von zu benutzenden Farbtönen zur Codierung zu ermöglichen, ist die entsprechende Zeichensatz-Referenztabelle ebenfalls variabel. Weil die Anzahl der ausgewählten Farbtöne zur Codierung, die Ausprägung der Zeichensatz-Referenztabelle und die Größe die Informationsdichte bestimmen, kommt ein entsprechendes dynamisches Verfahren zum Einsatz. Das eingesetzte dynamische Verfahren orientiert sich dabei an dem vorgegebenen Farbraum, der automatisch anhand der Bildvorlage bzw. manuell durch den Benutzer ausgewählt werden kann. Die Zuweisung der Farben zu den einzelnen Elementen des Codierungsrasters wird anhand der Farbdifferenzen an der Stelle dieses Elementes im Originalbild berechnet. Sollte die entsprechende Farbdifferenz unter der minimalen Grenze liegen, die eine Kamera unter Berücksichtigung von Umgebungseinflüssen (Beleuchtung, Verschmutzung u.a.) benötigt, um diese Farben unter Vorgabe einer Fehlertoleranz als unterschiedliche Farben zu erkennen, werden die Farbdifferenzen dementsprechend angepasst. Die Anzahl der eingesetzten Farbtöne zur Auswahl der entsprechenden Zeichensatz-Referenztabelle wird direkt im Code-Header codiert.Due to the condition for realistic representation, the colors suitable for the coding image are preferably used for the coding. To determine the color space to be used, taking into account the colors of the original image, methods of image processing are used. In order to allow a variable number of colors to be used for encoding, the corresponding font reference table is also variable. Because the number of selected color tones for coding, the expression of the font reference table and the size determine the information density, a corresponding dynamic method is used. The dynamic method used is based on the given color space, which can be selected automatically on the basis of the image template or manually by the user. The assignment of the colors to the individual elements of the coding grid is calculated on the basis of the color differences at the position of this element in the original image. If the corresponding color difference is below the minimum limit that a camera needs, taking into account environmental influences (lighting, contamination, etc.), to recognize these colors as different colors, given a fault tolerance, the color differences are adjusted accordingly. The number of shades used to select the appropriate character set reference table is encoded directly in the code header.
Schließlich wird in einem letzten Schritt 150 der Codierung das Design der codierten Daten an die Informationseinheit angepasst. Diese Aufgabenstellung beinhaltet die Anpassung des Codemusters an das zu codierende Bild, Logo beziehungsweise die symbolhafte Darstellung der Informationseinheit. Um ausschließlich das Logo bzw. die symbolhafte Darstellung und nicht den Hintergrund des Originalbildes codieren zu können, muss vor der Codierung eine automatische oder halbautomatische Separierung des Logos oder der symbolhaften Darstellung vom Hintergrund stattfinden. Die ausschließliche Verwendung des Logos bzw. der symbolhaften Darstellung zur Codierung ist aus Gründen einer realitätsnahen Darstellung erwünscht. Die Separierung kann manuell durch den Anwender oder durch bildverarbeitende Verfahren erfolgen. Basierend auf diesem separierten Bildausschnitt, der im Ablauf der Codierung als Informationseinheit dient, wird dann automatisch oder halbautomatisch ein Erkennungsmuster inklusive Header, ein Codierungsraster und eine variable Lageerkennung für die Codierung bestimmt.Finally, in a
Durch die sehr große Vielfalt von zu codierenden Informationseinheiten beziehungsweise Bildern, Logos oder symbolhaften Darstellungen, in die der Code integriert wird, ist unter Berücksichtigung einer hohen Lesesicherheit durch herkömmliche Smartphones, Tablets beziehungsweise gewerblich genutzte monochrome beziehungsweise nicht-monochrome Kamera-Scanner ein an die Form des Originalbildes anpassbarer Code vorgesehen. Dafür ist eine variable Lageerkennung und ein an die Form des Originalbildes anpassbarer Rasteraufbau vorgesehen.Due to the very large variety of information units to be encoded or images, logos or symbolic representations in which the code is integrated, taking into account a high read security by conventional smartphones, tablets or commercially used monochrome or non-monochrome camera scanner on the form customizable code provided on the original image. For a variable position detection and an adaptable to the shape of the original image grid construction is provided.
Nach diesen Schritten ist eine codierte Informationseinheit 5 entstanden, in welche zusätzliche Information codiert wurde. Dabei ist der Gesamteindruck der ursprünglichen Informationseinheit 1 erhalten geblieben, weil die Codierung einerseits nur innerhalb der Grenzen der Informationseinheit und andererseits direkt auf die Informationseinheit selbst beziehungsweise auf Rasterelemente oder Bildpunkte der Informationseinheit angewendet wird. Damit kommt ein Raster nur als Maske oder Zwischenschritt der Codierung zum Einsatz, ist aber in der codierten Informationseinheit nicht mehr in vollem Umfang direkt oder nicht mehr in vollem Umfang wahrnehmbar.After these steps, a
Anhand von
Zunächst wird die codierte Informationseinheit 5 eingescannt oder aufgenommen. Dies kann zum Beispiel mit einem Smartphone 6, einem Scanner 7 oder einem Tablet 8 erfolgen. Allgemein ist eine Bilderfassungseinheit zum Beispiel in Form einer Kamera und eine Auswertungs- oder Bearbeitungseinheit notwendig, welche das aufgenommene Bild auswertet, das heißt die codierten Informationen extrahiert.First, the coded
Dazu werden zunächst in einem Schritt 200 die Nutzdaten oder die Information decodiert. Der Schritt der Decodierung 200 umfasst mehrere Unterschritte.For this purpose, first in a
Um das definierte Raster, das in der Decodierungsbibliothek enthalten sein kann, korrekt auf die Informationseinheit 5 zu projizieren, wird die relationale Lage der Kamera zur Informationseinheit 5 bestimmt, was durch ein Muster oder mehrere Markierungen, vorzugsweise zwei oder drei, zur Lageerkennung realisiert wird. Das Muster zur Lageerkennung ist gewählt, dass damit eine omnidirektionale Lesbarkeit mit einem Smartphone, Tablet bzw. einem Kamerascanner möglich ist und dennoch das Design des Originalbildes nicht negativ oder nur unwesentlich beeinflusst wird.In order to correctly project the defined raster, which may be contained in the decoding library, onto the
Je nach Anwendungsgebiet werden unterschiedliche Anforderungen an die Höhe der Informationsdichte und die Sicherheit des Codes gestellt. Während beim Mobile Tagging meist nur kürzere Informationen im Code gespeichert werden müssen, wie zum Beispiel digitale Visitenkarten oder URL' s, werden im Bereich der Logistik und der Auto-ID Systeme höhere Anforderungen an den Code gestellt. Neben hohen Sicherheitsanforderungen wird der Code in den meisten Fällen mit einem Datenbankeintrag verknüpft, indem dazugehörige ausführliche Artikelinformationen hinterlegt sind. Der Barcode dient in diesem Falle aber nicht nur zur Anzeige von Informationen, sondern wird auch zu verwaltungstechnischen Aufgaben eingesetzt. So wird zum Beispiel beim Verkauf des Artikels die Stückzahl im dazugehörigen Datenbankeintrag heruntergesetzt.Depending on the field of application, different requirements are placed on the level of information density and the security of the code. While mobile tagging usually only requires shorter information to be stored in the code, such as digital business cards or URLs, higher demands are placed on the code in the area of logistics and Auto-ID systems. In addition to high security requirements, the code is in most cases linked to a database entry by the associated detailed article information is stored. In this case, the barcode not only serves to display information, but is also used for administrative tasks. For example, when the article is sold, the quantity in the corresponding database entry is reduced.
Um die genannten Anforderungen an den Code zu erfüllen, ist eine Erweiterung der reinen Decodierungsfunktionalität um eine TCP/IP Komponente innerhalb der Smartphone-Applikation vorgesehen. Mit dieser Erweiterung ist eine praxisnahe Umsetzung von folgenden in der Praxis am häufigsten anzutreffenden Infrastrukturansätzen zur Verarbeitung und Interpretation von Barcodes möglich.In order to meet the stated requirements for the code, an extension of the pure decoding functionality is provided by a TCP / IP component within the smartphone application. With this extension, a practical implementation of the following in practice the most frequently encountered infrastructure approaches for the processing and interpretation of barcodes is possible.
Der erste in der Praxis häufig genutzte Ansatz zur Decodierung verwendet eine Datenbank, in der eine dezentral decodierte Codeinformation von einem Client wie einem Smartphone zu einem zentralen Server übertragen wird, der durch eine Datenbankabfrage eine dem Code zugeordnete Information zurückgibt. Dies kann ein Einlesen eines Barcodes von einem Artikel und eine direkte Anzeige der entsprechenden Artikelinformationen sein. Beim eingesetzten Server ist sowohl ein firmeninterner als auch ein Webserver denkbar, so dass je nach Sicherheitsanforderungen und Einsatzgebiet eine Variabilität in der Infrastruktur möglich ist. Auch nachträgliche Veränderungen am Barcode zum Beispiel bei Tippfehlern oder sich verändernden Artikelinformationen sind mit dieser Lösung umsetzbar, da im Code nur die Datenbankreferenz gespeichert wird und deshalb nur ein zentraler Datenbankeintrag verändert werden muss, anstatt alle Barcodes die von dieser Informationsänderung betroffen sind, neu zu codieren.The first commonly used approach to decoding uses a database in which decoded code information is transferred from a client, such as a smartphone, to a central server, which returns information associated with the code through a database query. This can be a reading of a barcode from an article and a direct display of the corresponding article information. When used Server is both an in-house and a web server conceivable, so that depending on the security requirements and field of application, a variability in the infrastructure is possible. Even subsequent changes to the barcode, for example, typos or changing article information can be implemented with this solution, since in the code only the database reference is stored and therefore only a central database entry must be changed, rather than all barcodes affected by this change of information to re-encode ,
Im Gegenteil dazu, existiert der Ansatz zur dezentralen lokalen Decodierung auf dem Endgerät wie einem Tablet oder Smartphone, das keine Verbindung zu einem Netzwerk bzw. Server aufweisen muss. Dieser Ansatz lässt keine nachträglichen Änderungen in der codierten Information zu und bezieht die kompletten Informationen ausschließlich aus den Bilddaten. Dieser Ansatz wird aktuell in fast allen Mobile Tagging Anwendungen eingesetzt und bietet eine besonders hohe Flexibilität, da kein Zugriff auf ein Netzwerk vorhanden sein muss.On the contrary, the decentralized local decoding approach exists on the terminal, such as a tablet or smartphone, which need not be connected to a network or server. This approach does not allow for any subsequent changes in the coded information and obtains the complete information solely from the image data. This approach is currently used in almost all mobile tagging applications and offers a high level of flexibility as there is no access to a network.
Die beiden Ansätze haben abhängig vom Einsatzgebiet Vor- und Nachteile und werden daher fallspezifisch ausgewählt. Zur Umsetzung der beiden Ansätze wird die gleiche Decodierungsfunktionalität genutzt. Durch eine optional, gegebenenfalls durch den späteren Anwender, hinzufügbare TCP/IP Komponente zur Übertragung der decodierten Informationen auf einen beliebigen Server sind dann die oben genannten Ansätze in unterschiedlichsten Anwendungsgebieten einsetzbar.Depending on the area of application, the two approaches have advantages and disadvantages and are therefore selected on a case-by-case basis. To implement the two approaches, the same decoding functionality is used. By an optional, optionally by the later user, addable TCP / IP component for transmitting the decoded information to any server then the above approaches can be used in a variety of applications.
Anhand des Headers, der Lageerkennung und des bekannten Decodierungsalgorithmus wird die Informationseinheit decodiert. Die zur Decodierung benötigten Informationen, wie zum Beispiel die verwendete Codierungsversion können aus dem Header oder einer allgemeingültigen Information oder Vereinbarung entnommen oder abgeleitet werden.Based on the header, the position detection and the known decoding algorithm, the information unit is decoded. The information needed for decoding, such as the encoding version used, can be extracted or derived from the header or general information or agreement.
Anhand der Bitinformationen aus den einzelnen Bildelementen beziehungsweise Pixeln beziehungsweise der Bitinformationen aus den Übergängen zwischen den einzelnen Bildelementen beziehungsweise Pixeln berechnet der Decodierungsalgorithmus die Nutzdaten. Durch die Verwendung von mehr als zwei Farben sind Bitinformationen mit mehr als einem Bit pro Übergang zwischen zwei Pixeln bzw. Bildelementen möglich. Bei der Verwendung von zwei Farben (z.B. schwarz-weiß) wäre die Codierung von einem Bit (0 oder 1) pro Übergang möglich. Die diesbezügliche Anzahl von Bitinformationen pro Übergang ist daher abhängig von der Anzahl der Farben zur Codierung. Die Aneinanderreihung von aufeinanderfolgenden Bitinformationen wird als Bitfolge bezeichnet.Based on the bit information from the individual picture elements or pixels or the bit information from the transitions between the individual picture elements or pixels, the decoding algorithm calculates the useful data. By using more than two colors, bit information of more than one bit per transition between two pixels is possible. When using two colors (eg black-and-white), encoding of one bit (0 or 1) per transition would be possible. The corresponding number of bit information per transition is therefore dependent on the number of colors for encoding. The stringing of successive bit information is called a bit sequence.
Anhand der Zeichensatz-Referenztabelle, die im Header der codierten Informationseinheit angegeben ist, kann die Bitfolge anhand der Zeichensatz-Referenztabelle in das Zielalphabet oder der Zielzeichensatz (z.B. ASCII-Datensatz - Verwendung einer 8-Bitfolge um ein Zeichen eines Zeichensatzes von 256 Zeichen abzubilden) überführt werden.Using the character set reference table specified in the header of the encoded information unit, the bit string can be converted to the target alphabet or string using the character set reference table (eg, ASCII record - using an 8-bit string to represent one character of a character set of 256 characters) be transferred.
In einem weiteren, optionalen Schritt 210 wird eine Fehlererkennung beziehungsweise Fehlerkorrektur ausgeführt. Die aus der Fehlerkorrektur gewonnen Daten können optional als Erfahrungswerte oder Parameter für neue Codierungen verwendet werden, um die Fehlerrate bei der Übertragung zu senken. So kann eine Rückkopplungsschleife zur Verbesserung der Codierung/Decodierung entstehen. Die Fehlererkennung kann auf bekannten Verfahren beispielsweise unter Verwendung von Redundanzen oder Prüfsummen basieren.In a further,
Insgesamt ist der gesamte optisch/bildgebende Pfad im Kontext des effizient nutzbaren Codes zu betrachten und bei Erreichen von Parametergrenzen ist unter Umständen wiederum auf den Code und/oder die Codierung zurückzuwirken. Hinsichtlich des Codes sind dazu folgende Parameter wie ein minimal tolerierbarer Kontrast, der Einfluss von Störungen durch Schmutz, Abnutzung, Beschädigung, die maximal zu speichernde Informationsmenge sowie die Nutzung hierarchischer Informationsspeicherung definiert.Overall, the entire optical / imaging path is to be considered in the context of the efficiently usable code, and when parameter boundaries are reached, the code and / or the coding may once again have an effect. With regard to the code, the following parameters are defined, such as a minimally tolerable contrast, the influence of disturbances due to dirt, wear, damage, the maximum amount of information to be stored and the use of hierarchical information storage.
Der Code soll auch durch Systeme nutzbar sein, die über übliche Festbrennweitenkameras verfügen, wie zum Beispiel Smartphones. Der Bildaufnahmepfad wird charakterisiert durch den Abstand des Objekts zum Aufnahmesystem, die Beleuchtung des Objekts, das Objektiv des Aufnahmesystems mit Parametern wie Brennweite, Abbildungsqualität und Lichtstärke. Ein weiteres Kriterium sind der Sensor und die Datenspeicherung, sowie Parameter wie Sensorgröße (Auflösung), Signal-Rausch-Abstand, zu speichernde Bilddaten, das Speicherformat, unter Umständen eine verlustbehaftete Speicherung sowie Zusatzinformation zur Code-Information, wie zum Beispiel Ort, Zeit etc.The code should also be usable by systems that have conventional fixed focal length cameras, such as smartphones. The image pickup path is characterized by the distance of the object to the recording system, the illumination of the object, the lens of the recording system with parameters such as focal length, image quality and light intensity. Another criterion is the sensor and the data storage, as well as parameters such as sensor size (resolution), signal-to-noise ratio, image data to be stored, the storage format, possibly lossy storage and additional information on the code information, such as location, time, etc ,
Es ist im Nutzungskonzept des Codes durchaus sinnvoll, eine Informationsrückkopplung während der Bildaufnahme zu ermöglichen. Diese Rückkopplung kann eine Steuerung der Datenaufnahme, zum Beispiel die Erfassung des Codierungstyps, Analyse der Ausrichtung und eine Regelung des Aufnahmeabstands umfassen, wobei Anweisungen an das Aufnahmegerät durch den Aufnahmealgorithmus vorgegeben werden. Weitere Aspekte können die Bildvorverarbeitung sowie die Gewinnung der Zielinformation umfassen.It makes sense in the usage concept of the code to enable information feedback during image acquisition. This feedback may include control of data acquisition, for example, detection of the coding type, analysis of the orientation, and control of the recording distance, with instructions given to the recording device by the recording algorithm. Other aspects may include image preprocessing as well as obtaining the destination information.
Die einzelnen zuvor beschriebenen Komponenten interagieren und werden vorteilhafterweise gemeinsam betrachtet. Es ist zu erwarten, dass Rekursionen der Entwicklung durchgeführt werden müssen, um ein stabiles Konzept mit hoher Fehlertoleranz und einem einfachen, echtzeitfähigen Algorithmus zu erstellen und umzusetzen.The individual components described above interact and are advantageously considered together. It is expected that development recursions will have to be made in order to create and implement a stable concept with high fault tolerance and a simple, real-time algorithm.
Die Berücksichtigung und die Angabe von Fehlertoleranzen sind sehr maßgeblich für den praktischen Einsatz, um eine Rekonstruktion der Information von fehlerbehafteten Codes zu ermöglichen. Fehler innerhalb eines Codes können durch Beschädigungen am Code, durch eine ungenügende Druckqualität oder durch verursachte Störungen aufgrund von Umwelteinflüssen bei der Aufnahme entstehen. Dies kann zum Beispiel durch eine Verdeckung des Codes durch ein anderes Objekt oder ungünstige Beleuchtungsverhältnisse hervorgerufen werden. Derartige Fehler müssen für den praktischen Einsatz berücksichtigt werden, um eine hohe Fehlertoleranz zu garantieren.The consideration and the indication of fault tolerances are very important for the practical use, in order to enable a reconstruction of the information of faulty codes. Errors within a code can be caused by damage to the code, poor print quality, or interference due to environmental influences during recording. This can be caused, for example, by masking of the code by another object or unfavorable lighting conditions. Such errors must be taken into account for practical use in order to guarantee a high fault tolerance.
Zur Berücksichtigung von Fehlertoleranzen können bestehende Fehlerkorrekturalgorithmen wie zum Beispiel der Reed-Solomon-Algorithmus verwendet werden.To account for error tolerances, existing error correction algorithms such as the Reed-Solomon algorithm can be used.
Ein Element in der Nutzung des Codes kann eine zu integrierende Redundanz von Information sein, um auch begrenzt gestörte Datenfelder sicher erfassen zu können. Hierbei spielt der implementierbare Grad der Redundanz die zentrale Rolle, da dieser direkten Einfluss hat auf die noch zulässige Störung des Codes zum Beispiel durch nachlassenden Kontrast, durch fehlende bzw. nicht decodierbare Flächenanteile und/oder durch die Qualität der Ausleuchtung. Parameter der erforderlichen Bilderfassungshardware wie zum Beispiel die Schärfe der Abbildung, die notwendige effektive Bildauflösung und/oder die Geschwindigkeit der Vorverarbeitung oder Verarbeitung der Bilddaten spielen ebenfalls eine Rolle.An element in the use of the code can be a redundancy of information to be integrated, in order to be able to reliably detect even severely disturbed data fields. Here, the implementable degree of redundancy plays the central role, since this has a direct influence on the still permissible disturbance of the code, for example by decreasing contrast, by missing or non-decodable area proportions and / or by the quality of the illumination. Parameters of the required image capture hardware, such as the sharpness of the image, the necessary effective image resolution and / or the speed of preprocessing or processing the image data also play a role.
Auch der erforderliche Algorithmus beziehungsweise die Leistungsfähigkeit der Bildverarbeitung, wie zum Beispiel die Integrierbarkeit in die Zielumgebung/Hardware, die Echtzeitfähigkeit in der Zielumgebung und/oder die Einfachheit in der Bedienung können berücksichtigt werden.The required algorithm or the performance of the image processing, such as the integration into the target environment / hardware, the real-time capability in the target environment and / or the ease of operation can also be taken into account.
Die eigentliche Bildverarbeitung umfasst die Aufnahme und Extraktion der Information des Codes mittels der verfügbaren umgebenden Hardware und deren Schnittstellen. Hierbei ist zu trennen in den Erkennungsalgorithmus sowie ergänzende Bildverarbeitungstools im Sinne von Vorverarbeitung wie das Erfassung eines Musters, die Führung der Hardware über eine Benutzerschnittstelle bei der Erstellung der Aufnahme, wie zum Beispiel die Justierung des Abstands der Kamera zum Objekt, der Erfassung und Korrekturvorgabe eines besseren Aufnahmewinkels, und/oder der Nutzung eines hierarchischen Codes, wie zum Beispiel anhand der Parameter Orientierung, Code-Typ, Basisinformation und/oder Detailinformation. Schließlich wird die eigentliche Gewinnung der Zielinformation, das heißt der Nutzdaten, berücksichtigt.The actual image processing involves the acquisition and extraction of the information of the code by means of the available surrounding hardware and its interfaces. In this case, it is necessary to separate the recognition algorithm and supplementary image processing tools in the sense of preprocessing, such as the acquisition of a pattern, the management of the hardware via a user interface during the creation of the image, such as the adjustment of the image Distance of the camera to the object, the detection and correction of a better recording angle, and / or the use of a hierarchical code, such as the parameters orientation, code type, basic information and / or detail information. Finally, the actual extraction of the destination information, that is the user data, is taken into account.
In einem Schritt 220 werden die Nutzdaten entschlüsselt, wenn die Codierung mit einer Verschlüsselung durchgeführt worden ist. Dieser Schritt ist daher optional. Angaben zu der gewählten Verschlüsselung können zum Beispiel in dem Header enthalten sein.In
Schließlich werden die Nutzdaten angezeigt und/oder verarbeitet. Dies kann in dem Erfassungsgerät wie zum Beispiel dem Smartphone 6 oder in einer anderen Instanz wie einem mit dem Erfassungsgerät verbundenen Computer geschehen. Damit stehen die in der Informationseinheit codierten und gegebenenfalls verschlüsselten Informationen wieder zur Verfügung.Finally, the payload data is displayed and / or processed. This can be done in the capture device such as the
Mit Bezug auf die
In einem vorbereitenden Schritt wird zum Codieren der Informationseinheit 301 ein an die Außenkontur 302 adaptiertes Raster auf die Informationseinheit 301 gelegt. Die entsprechenden Elemente 320 des adaptiven Rasters sind zeilen- und spaltenförmig regelmäßig entlang vorgegebener Richtungen (X- und Y-Richtung) angeordnet. Größe und Form der Rasterelemente 320 sowie ein Rasterabstand in jeder der beiden Richtungen, und damit auch eine Anzahl von Rasterelementen, kann variiert werden.In a preparatory step, a grid adapted to the
Die Markierungen 330 zur Lageerkennung werden angeordnet, um beim Decodieren eindeutig eine Lage der codierten Informationseinheit relativ zu einem Erfassungsgerät bestimmen zu können. D.h. eine erfasste Codierung der Informationseinheit 301 kann auf Basis der Markierungen 330 gegebenenfalls gedreht und/oder skaliert werden, um eine eindeutige und korrekte Decodierung zu ermöglichen. Auch eine perspektivische Verzerrung, die beim Erfassen der Codierung auftreten kann, kann anhand dieser Markierungen 330 korrigiert werden. Die in
Optional kann Headerinformation 332 in die codierte Informationseinheit eingebracht werden, welche Informationen oder Angaben umfassen kann, die eine Decodierung einer codierten Informationseinheit vereinfacht oder erst möglich macht. Solche Angaben können beispielsweise das Raster, eine vorgegebene Anzahl von Farbabstufungen, eine gegebenenfalls verwendete Verschlüsselung und dergleichen betreffen. Vorzugsweise wird eine solche Headerinformation in - durch die gepunktete Linien in
Weiter optional können zusätzlich Markierungen 340 zur Lageerkennung vorgesehen sein, die die Grenzen des zur Informationscodierung verwendeten Rasters definieren. Diese Grenzen sind in
In den
Wie in
In einem weiteren Teilschritt wird nun für eine solche Gruppe 350 eine Gruppenfarbe 360 bestimmt. Diese Gruppenfarbe 360 wird auf Basis einer Farbverteilung in dem Bereich der Informationseinheit bestimmt, welche die zu der Gruppe 350 gehörenden Rasterelemente 320 umfasst. Ein solcher Bereich ist exemplarisch in
In
Die Farben 372, 374, 376, 378 des Teilfarbraums 370 unterscheiden sich von der Gruppenfarbe 360 lediglich in einem Farbparameter, im gezeigten Beispiel in der Helligkeit. Andere Farbparameter, beispielsweise Sättigung oder Tonwert, oder vorgegebene Kombinationen solcher Farbparameter, können ebenfalls verwendet werden, um ausgehend von der Gruppenfarbe die Farben des Teilfarbraums in vorgegebener Weise zu bilden. Die Farben des Teilfarbraums werden somit derart gebildet oder berechnet, dass sie stets ähnlich zu der Gruppenfarbe sind, und damit ähnlich zu der Farbe des Bereichs der Informationseinheit, in dem die mittels dieser Farben dann im Rahmen der Codierung gefärbten Elemente des Rasters angeordnet sind. Auf diese Weise kann sichergestellt werden, dass der Farbraum der Codierung und damit das adaptive Raster in jedem Bereich der Informationseinheit an den Farbraum der Informationseinheit angepasst ist.The
In
Wie in
In
In
Ein weiteres Kennzeichen der Markierungen 430, 440 ist die spezifische räumliche Anordnung einer Mehrzahl von in der Markierungsfarbe 361 gefärbten Rasterelementen zueinander - diagonal gegenüberliegend in den Lagemarkierungen 430, in L-Form in den Lagemarkierungen 440. Es können im Zusammenhang mit einer solchen Ausführungsform anstatt nur einer Markierungsfarbe 361 auch verschiedene Markierungsfarben verwendet werden.Another characteristic of the
Wie in
Claims (15)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102014116692.2A DE102014116692A1 (en) | 2014-11-14 | 2014-11-14 | Coding / decoding information from a graphic information unit |
Publications (2)
Publication Number | Publication Date |
---|---|
EP3023916A1 true EP3023916A1 (en) | 2016-05-25 |
EP3023916B1 EP3023916B1 (en) | 2020-12-30 |
Family
ID=54608309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP15194578.9A Active EP3023916B1 (en) | 2014-11-14 | 2015-11-13 | Encoding/decoding of information from a graphical information unit |
Country Status (4)
Country | Link |
---|---|
US (1) | US9832471B2 (en) |
EP (1) | EP3023916B1 (en) |
CN (1) | CN105760912B (en) |
DE (1) | DE102014116692A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3617950A1 (en) * | 2018-08-31 | 2020-03-04 | Philippe Guesdon Concept | System for communicating information relating to an object |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239814B (en) * | 2017-06-07 | 2020-02-21 | 上海觉感视觉科技有限公司 | Identification method of stacked two-dimensional codes fused with logo icons |
DE102018204259A1 (en) * | 2018-03-20 | 2019-09-26 | Siemens Aktiengesellschaft | Method for producing a coded component and component with a code |
US11580064B2 (en) | 2021-06-22 | 2023-02-14 | Cypherpunk Llc | Methods and systems for encoding URI for arbitrary payload data based on alphanumeric encoding methods |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2224373A2 (en) | 2006-04-19 | 2010-09-01 | A · T Communications Co., Ltd. | Two-dimensional code with a logo |
US20130215473A1 (en) * | 2012-02-16 | 2013-08-22 | Xerox Corporation | System and method for creating machine-readable codes in combination with other images such as logos |
DE202013103662U1 (en) * | 2013-08-13 | 2013-10-10 | Fotovio Gmbh | Carrier element with a QR code |
US20140108606A1 (en) * | 2012-10-09 | 2014-04-17 | Robert Beadles | Memory tag hybrid multidimensional bar-text code with social media platform |
EP2731057A1 (en) | 2012-11-08 | 2014-05-14 | Michael Ahrweiler | Image with visible information coded therein |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030156752A1 (en) * | 2002-02-12 | 2003-08-21 | Turpin Kenneth A. | Color imaging and format system and methods of making and using same |
US7751585B2 (en) * | 2004-06-28 | 2010-07-06 | Microsoft Corporation | System and method for encoding high density geometric symbol set |
WO2006033626A1 (en) * | 2004-09-24 | 2006-03-30 | Urby Goeran | System for communication and data processing for transmittal and use of digital information in connection with a tangible object |
KR100914515B1 (en) * | 2006-06-23 | 2009-09-02 | 주식회사 칼라짚미디어 | Color classification method for color based image code recognition |
US20090194596A1 (en) * | 2006-07-19 | 2009-08-06 | B-Core Inc. | Optical Symbol, Item to Which Optical Symbol is Attached, Method of Attaching Optical Symbol to Item, and Optical Recognition Code Recognizing Method |
CN102034127A (en) * | 2009-09-28 | 2011-04-27 | 上海易悠通信息科技有限公司 | Novel high-capacity two-dimensional barcode and system, encoding and decoding methods and applications thereof |
CN102147873B (en) * | 2011-03-21 | 2013-01-23 | 上海彩码信息科技有限公司 | Method and system for generating color code as well as method and system for analyzing color code |
US8821277B2 (en) * | 2011-12-16 | 2014-09-02 | Wesley John Boudville | Colour barcodes and cellphone |
CN103390183B (en) * | 2012-05-09 | 2019-07-19 | 顾泽苍 | A kind of generation method of the anti-counterfeiting codes suitable for handset identity |
CN103632182A (en) * | 2012-08-22 | 2014-03-12 | 天津网团科技有限公司 | Three-dimensional (3D) image code generating and analyzing methods and device thereof |
US8820629B1 (en) * | 2013-02-27 | 2014-09-02 | International Business Machines Corporation | Barcode scanning for communication |
-
2014
- 2014-11-14 DE DE102014116692.2A patent/DE102014116692A1/en not_active Withdrawn
-
2015
- 2015-11-13 US US14/940,772 patent/US9832471B2/en active Active
- 2015-11-13 CN CN201511036048.9A patent/CN105760912B/en not_active Expired - Fee Related
- 2015-11-13 EP EP15194578.9A patent/EP3023916B1/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2224373A2 (en) | 2006-04-19 | 2010-09-01 | A · T Communications Co., Ltd. | Two-dimensional code with a logo |
US8144922B2 (en) | 2006-04-19 | 2012-03-27 | A T Communications Co., Ltd. | Two-dimensional code with a logo |
US8526670B2 (en) | 2006-04-19 | 2013-09-03 | A T Communications Co., Ltd. | Two-dimensional code with a logo |
US20130215473A1 (en) * | 2012-02-16 | 2013-08-22 | Xerox Corporation | System and method for creating machine-readable codes in combination with other images such as logos |
US20140108606A1 (en) * | 2012-10-09 | 2014-04-17 | Robert Beadles | Memory tag hybrid multidimensional bar-text code with social media platform |
EP2731057A1 (en) | 2012-11-08 | 2014-05-14 | Michael Ahrweiler | Image with visible information coded therein |
DE202013103662U1 (en) * | 2013-08-13 | 2013-10-10 | Fotovio Gmbh | Carrier element with a QR code |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3617950A1 (en) * | 2018-08-31 | 2020-03-04 | Philippe Guesdon Concept | System for communicating information relating to an object |
FR3085515A1 (en) * | 2018-08-31 | 2020-03-06 | Philippe Guesdon Concept | SYSTEM FOR DISSEMINATING INFORMATION RELATING TO AN OBJECT |
Also Published As
Publication number | Publication date |
---|---|
CN105760912A (en) | 2016-07-13 |
US20160142713A1 (en) | 2016-05-19 |
DE102014116692A1 (en) | 2016-05-19 |
EP3023916B1 (en) | 2020-12-30 |
US9832471B2 (en) | 2017-11-28 |
CN105760912B (en) | 2019-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112020001345T5 (en) | OPTIMIZATION OF RECOGNITION OF IMAGES WITH RESPECT TO TARGETS BASED ON COLOR SPACE TRANSFORMATION TECHNIQUES | |
EP2417561B1 (en) | Two-dimensional code and method | |
DE4202579C2 (en) | Document processing system | |
DE112020006492T5 (en) | Method for generating a quick response code and printing device | |
DE69929572T2 (en) | Method for reading a two-dimensional bar code without clock signal and without edges | |
EP3023916B1 (en) | Encoding/decoding of information from a graphical information unit | |
DE69830383T2 (en) | coding | |
EP2984814B1 (en) | Generation and recognition of image information data that can be printed in a forgery-proof manner | |
WO2006002978A1 (en) | Method and system for automatic color determination and corresponding computer programme and computer-readable storage medium | |
EP2639738A1 (en) | Method and reader for recording a number of two-dimensional codes displayed one after the other on a display device | |
DE112020005864T5 (en) | Method and device for verifying the authenticity of a product | |
WO2020001695A1 (en) | Method for producing security elements in an image which are not visible to the human eye and cannot be copied, and printed image | |
DE102019106406A1 (en) | MACHINABLE SAFETY MARK AND ITS GENERATION | |
DE102008013789A1 (en) | Apparatus, method and program for eliminating character disturbances | |
EP1842361B1 (en) | Method, computer program, computer and printing system for trapping image data | |
DE102012218123A1 (en) | Method for calibrating optical sensor of driver assistance system-camera of e.g. passenger car, involves extracting calibration information from QR-code, where optical sensor of vehicle is calibrated based on calibration information | |
EP1333402A1 (en) | Redundant twodimensional code and decoding method | |
DE102009016598A1 (en) | Two-dimensional symbol code for representing binary data, has symbols of identical area differing from each other in planar brightness distribution, encoding value of binary data word and comprising complementary brightness distribution | |
DE102007006230B4 (en) | Color pixel coding | |
DE102016119510B4 (en) | Adaptive wearable optical character recognition systems and methods | |
DE112019007487T5 (en) | METHOD AND DEVICE FOR VERIFICATION OF THE AUTHENTICITY OF PRODUCTS | |
DE3414455C2 (en) | Method and device for reading and processing information consisting of decodable font information and / or non-decodable graphic information | |
DE4419395C2 (en) | Method and device for analyzing and processing color images | |
DE69825388T2 (en) | Process for embedding signals in a color image | |
DE102019102986A1 (en) | VECTOR GRAPHIC PATTERN INTEGRATION PANTOGRAPH FOR VARIABLE DATA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20161116 |
|
RBV | Designated contracting states (corrected) |
Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
17Q | First examination report despatched |
Effective date: 20170406 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06T 7/73 20170101ALI20200526BHEP Ipc: H04N 13/161 20180101ALI20200526BHEP Ipc: G06K 19/06 20060101AFI20200526BHEP Ipc: G06T 7/13 20170101ALI20200526BHEP Ipc: G06T 7/90 20170101ALI20200526BHEP |
|
INTG | Intention to grant announced |
Effective date: 20200612 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D Free format text: NOT ENGLISH |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 1350664 Country of ref document: AT Kind code of ref document: T Effective date: 20210115 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 502015014067 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D Free format text: LANGUAGE OF EP DOCUMENT: GERMAN |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210331 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210330 Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: NV Representative=s name: SCHAAD, BALASS, MENZL AND PARTNER AG PATENT- U, CH |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210330 |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: MP Effective date: 20201230 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG9D |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210430 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210430 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 502015014067 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
26N | No opposition filed |
Effective date: 20211001 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: IE Payment date: 20211118 Year of fee payment: 7 Ref country code: GB Payment date: 20211123 Year of fee payment: 7 Ref country code: AT Payment date: 20211117 Year of fee payment: 7 Ref country code: FR Payment date: 20211119 Year of fee payment: 7 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: CH Payment date: 20211123 Year of fee payment: 7 Ref country code: BE Payment date: 20211119 Year of fee payment: 7 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20220124 Year of fee payment: 7 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210430 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20211113 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20151113 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R119 Ref document number: 502015014067 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MM01 Ref document number: 1350664 Country of ref document: AT Kind code of ref document: T Effective date: 20221113 |
|
GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 20221113 |
|
REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20221130 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20221130 Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20221130 Ref country code: AT Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20221113 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20221113 Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20221113 Ref country code: DE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20230601 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20221130 Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20221130 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20201230 |