WO2010115464A1 - Zweidimensionaler symbolcode und verfahren zum lesen des symbolcodes - Google Patents
Zweidimensionaler symbolcode und verfahren zum lesen des symbolcodes Download PDFInfo
- Publication number
- WO2010115464A1 WO2010115464A1 PCT/EP2009/054271 EP2009054271W WO2010115464A1 WO 2010115464 A1 WO2010115464 A1 WO 2010115464A1 EP 2009054271 W EP2009054271 W EP 2009054271W WO 2010115464 A1 WO2010115464 A1 WO 2010115464A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- symbol
- symbols
- code
- image
- matrix
- Prior art date
Links
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
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/22—Character recognition characterised by the type of writing
- G06V30/224—Character recognition characterised by the type of writing of printed characters having additional code marks or containing code marks
Definitions
- the invention relates to a two-dimensional, in particular machine-readable, symbol code for representing binary data, which is constructed from a plurality of preferably horizontal and / or vertical juxtaposed graphic symbols, wherein the symbol code is formed from exactly two different symbols of the same area distinguish their areal brightness distribution and each encode a value of a binary data word. Furthermore, a method for reading this symbol code, a particularly preferred use and a suitable reading device are described according to the invention.
- two-dimensional matrix codes have become established. Compared to one-dimensional bar codes (also called bar code or bar code), two-dimensional codes have a much higher data density, ie more data information can be encoded with the same space requirement on the outer surface of the object to be marked. Simple two-dimensional codes can be understood as a stack of one-dimensional codes. Two-dimensional matrix codes, on the other hand, store data words area by area.
- Common one-dimensional codes are: EAN (European Article Number, ISO / IEC 15420), IAN (International article numbering), JAN (Japanese article numbering), 2/5 Interleaved (ISO / IEC 16390), Code39 (ISO / IEC 16388), Code93 and Code128.
- EAN European Article Number
- ISO / IEC 15420 International article numbering
- IAN International article numbering
- JAN Japanese article numbering
- 2/5 Interleaved ISO / IEC 16390
- Code39 ISO / IEC 16388
- Code93 and Code128 Code128.
- Codablock or PDF417 As stacked one-dimensional codes are known: Codablock or PDF417.
- QR Code Quality Response Code
- DataMatrix DataMatrix
- MaxiCode Aztec Code
- Dot Code / Point Code MicroGlyph
- Panamarks Panamarks
- Semacode UPCODE
- Trillcode Quickmark
- Shotcode connexto or beetagg.
- One-dimensional barcodes are used only for automation where few data are to be stored, the available area for applying the marking is large and no soiling is to be expected. Usually, such an application area is several centimeters in size and many times wider than high. Since numeric or alpha-numeric digits are coded by varying the distances of light and dark bars to each other and the bar width, in practice a contrast of 50 to 60 percent is necessary for successful evaluation. For the same reason, contamination leads to unrecoverable read errors. These barcodes have no capability for error correction, but have built-in parity bits for error detection. A read error can therefore be noticed, but not corrected, which is why they are not robust enough for the purpose mentioned above.
- Stacked two-dimensional codes have an increased data density.
- a typical imprint of the PDF417 code is 7 to 15 cm 2 in size and achieves a typical data density of 15.5 to 46.5 bytes per cm 2 .
- the maximum code size is limited to 2000 8-bit (byte) characters.
- the PDF417 code is error-correcting. With stacked codes, however, the scan line must be located exactly above the equivalent graphical symbol line during the reading process, which limits its achievable compactness.
- the coding can be optimized for numeric, alphanumeric and binary data. Two-dimensional matrix codes are error-correcting and compact because the data values called words are stored flat. Thus, the binary data are stored directly and no distinction is made between numeric or alphanumeric values.
- a graphic symbol which is a one word
- a second graphic symbol which characterizes a zero word.
- the characterization of the null word is also due to the absence of the symbol for a one word at that position.
- this increases the susceptibility to errors, since the failure to recognize one symbol can lead to the assumption that the other symbol is coded there, even if, for example, there is only contamination or cross-fading.
- a marking area is subdivided in rows and columns into mostly equal cells. In each of these cells a symbol is written.
- a two-dimensional symbol code is then either printed on a label made of paper and glued onto the object to be marked, or it is fired or generally applied directly to the object, in particular by a laser, by the so-called DPM (Direct Part Marking) method.
- DPM Direct Part Marking
- the Data Matrix Code is a square or rectangular symbol matrix consisting of white (unprocessed areas) and black (edited areas) square cells, each of which encodes the value of a single bit. It has a solid black line, called the "Finder Pattern", that defines the symbol area in the X and Y directions, and allows the image processing to locate and equalize the symbol matrix, with a fixed pattern for synchronization on each of the opposite sides contains white and black squares in alternating order, which indicate the height or width of a row or column of the symbol matrix, and several of these symbol matrices can be placed side by side and on top of each other 60% redundant information.
- - A
- the QR code (Quick Response Code) is of square shape and was developed to mark assemblies and components in automotive production.
- the QR code has four special symbols called an anchor to easily identify the location and its orientation. These serve for localization and equalization. Three of these anchors serve as the main anchor for position detection and another, smaller anchor is used for alignment.
- Words, i. the associated data values are encoded in graphic symbols representing black filled (machined areas) and white omitted (unprocessed areas) squares, similar to Data Matrix. For synchronization, a line-shaped pattern of alternately filled and unfilled squares for each directional axis is contained within the symbol matrix.
- the QR Code comes in several types and formats, with the type and format hard-coded alongside the three main anchors. Afterwards the actual data symbols can be extracted and decoded.
- the QR Code supports up to 30% redundant information through Reed-Solomon error correction.
- the characteristic of self-clocking is basically achieved by the fact that adjacent graphical symbols do not merge together, as is the case with Data Matrix and QR, for example, if at least two black or white square symbols are direct neighbors.
- the graphical symbols are referred to herein as glyphs and are printed in a predetermined distribution of tiled data cells on a surface.
- the graphic symbol Within a data cell is the graphic symbol, which encodes a word.
- One of these data cells can be regarded as a pixel image in which a graphic symbol is drawn, wherein as far as possible no data cell is drawn in the outer edge region in order to keep adjacent data cells separable from one another.
- the shape of such a graphic symbol is assigned a word. Such a shape has one or more characteristic features.
- the occurrences of the characteristic shape features present in a special instance of such a graphic symbol indicate in their entirety the coded word.
- several filters are applied to the graphic symbol in the image analysis, which each respond particularly well to a single one of the possible given shape features and, if possible, produce no filter response to all other possibly existing shape features. After each filter has been applied, the word is decoded in serial fashion due to the filter responses of all the filters.
- Filter responses should pile up at positions that are attributable to a glyph. Similar concepts are also used in other methods, whereby the problem arises of finding local maxima of the filter responses.
- the filter responses can also vary greatly in their severity and number as a result of (partial) damage to the original of the symbol code to be filtered.
- their topological position is not exactly predictable even in the local area of expected neighbors. Therefore, with the approaches and analysis methods usually pursued, there are regularly problems with the decoding, in particular if the external conditions are not optimal, for example due to reflections or curved surfaces.
- a pixel quantity can be defined on a response picture obtained by absolute threshold value formation, which with high probability contains exclusively symbol centers or pixels very close to these center points.
- This set of points can be divided into subsets, each of which corresponds to the catchment area of a symbol, by minimizing the Euclidean distances of all points in a cluster to its own center of gravity. This can be achieved, for example, with the K-Means algorithm.
- the maximum response value pixel within each subset then describes the most likely symbol center point.
- thresholding may generate a threshold image containing only pixels of a filter response with values above a set threshold.
- the pixel with maximum filter response can be safely adopted as a symbol center.
- a known step size the side length of a symbol template
- successive symbol centers are estimated by incrementing coordinates and then correcting their position by searching for a maximum gray level in the threshold image in a small local environment around that estimate (from about 20 to 25 percent of the page lengths of the symbol template).
- the associated pixel is then set as the symbol center, since it is to be assumed that this is an improved estimate of the position.
- the symbol code can be printed on a paper label, which is then glued to the object to be marked. Although this allows a successful reading of the mark, the extra paper on the object is a foreign object that can lead to quality problems in the production process. If, for example, the marked object is grabbed by a robotic arm for transport, it can cause abrasion of small paper fibers from the paper label, which can fall off the robot arm and destroy electronic components. In heat-intensive production processes, a paper label is not an option due to the risk of fire. If the symbol code is to remain inseparably linked to an object for unambiguous identification, a glued paper label also offers no protection against manipulation by simple replacement.
- the object of the present invention is therefore to propose a robust, effective and with high reliability decodable two-dimensional system code and a read-out method optimized therewith, with which the reliability of the identification can be improved, in particular also in real production environments.
- each of the two symbols may preferably consist of a planar arrangement of at least two regions, each of which has exactly one of two predefined brightness values.
- Each individual symbol thus has two different brightnesses, i. a brightness distribution.
- one of the two brightness values can be assigned the value "bright” and the other of the two brightness values can logically be assigned the value "dark”.
- a certain combination of the locally distributed brightness values "light” and “dark” within a symbol is then assigned a data word.
- any brightness difference between the two areas that can be measured by a detector arrangement is basically sufficient in accordance with the invention.
- these areas will be referred to as "light” and "dark” for simplicity.
- a complementary brightness distribution is achieved, in particular, in that each of the two symbols required for unambiguously coding a binary word has the same areal extent or arrangement of the areas for which, however, the different (opposite) of the two brightness values "bright” and “dark” for each particular symbol , where each section of the area associated with a symbol is assigned to one of these two brightness values. Since each of these complementary symbols is uniquely associated with one of the two possible values of the binary data word, and because of the complementary structure of the symbols, a maximum distinctness has been achieved, this symbol code is particularly robust.
- each symbol of the symbol family thus consists of a plurality (at least two) of spatially contiguous regions, with all symbols of a family having the same arrangement of regions. Each of these areas is filled either logically bright or dark, although not all of these areas of a symbol are at the same time logical light or logical dark.
- two complementary symbols can be represented, and each of the symbols can be unambiguously assigned to a value of a binary word.
- Characteristic of the complementary structure of the symbols is that the decision as to which of the two symbols is shown only requires the use of a single filter which corresponds to one of the two symbols. In the case of a match of the filter with the symbol results in an ideal even complete match. In the case of a filter complementary to the symbol, an ideally complete deviation results.
- a distinction of the complementary symbols is guaranteed even if it comes to overlaps of bright and dark areas of the symbols due to the marking accuracy, because then by the application of the one filter, a predominance with or a predominant deviation from the Symbol of the symbol code.
- each symbol consists of exactly two, in particular, contiguous regions, wherein the two regions are each assigned a different brightness value.
- the areas of the two areas in one symbol can be essentially the same size, with deviations in the area between the two areas in the order of magnitude of up to about 1/9 of the total area being considered substantially equal.
- the background of this deviation is that it is provided according to a preferred embodiment of the invention that a graphical symbol of the symbol code has a square base area which is divided into 3 x 3 pixels for the definition of the areas of the symbol.
- the present invention is not limited to such a matrix arrangement, such an arrangement is particularly easy to evaluate in practice in both generating and reading the symbol code.
- a 3 x 3 matrix offers an optimal balance between the symbol size required for an individual symbol (distinctness) within the scope of an optical resolution and a sufficiently high data density. In such a
- the matrix can be assigned to an area with the first brightness value 4/9 of the total area of the symbol and a second area with a second brightness value 5/9 of the total area of the symbol.
- the size difference of the two areas is therefore in the order of 1/9 of the total surface area of the symbol.
- the two areas are each constructed of spatially contiguous areas.
- This enables a vector-oriented generation of the areal symbol code, for example by moving an activated laser along a defined travel path, without the laser having to be switched on or off during the method in order to generate the marking corresponding to the areal symbol.
- Areal coherent areas further minimizes the in practice always erroneous transition between the two areas of brightness. This improves the achievable distinctness of the symbols and reduces the error rate in reading the areal symbol code.
- a particularly preferred square symbol according to the invention has a distribution of the logical "light” and the logical “dark” regions along a section running parallel to its side edges through the center of the symbol, in each case a ratio of 1: 2 or, in the complementary case 2: 1 on. This means that the bright area along this section covers 1/3 and the dark area 2/3 of the cut length or vice versa. Preferably, this distribution is the same along the two possible cuts running parallel to the sides through the center of the symbol.
- Such a symbol with the precisely two spatially related regions of the brightness distribution is inventively formed, in particular, by a square region with a side length of 2/3 of the side length of the symbol and an L-shaped region with segments of equal length, which are located on two abutting sides of the symbol Square and each have the entire side of the symbol.
- this symbol which is particularly preferred according to the invention, therefore also has a square base area.
- these square base symbols are according to the invention in the horizontal and / or vertical direction, i. the directions running along the sides of the symbols, juxtaposed.
- the pages of the individual symbols abut each other directly and form the symbol code whose visual representation is also referred to as a symbol matrix in which the information is coded by the arrangement of the individual symbols.
- the symbol matrix is made up of individual data cells whose size and geometry correspond exactly to the individual symbols of the two-dimensional system code. Since the individual symbols of the system code are arranged directly adjacent to one another, the symbol matrix forming the graphic representation of the symbol code preferably also has no free space between its individual data cells.
- the symbol matrix may have a rectangular or square shape in its outer shape, for example. However, it is also possible to adapt the width and arrangement in rows and / or columns to the space available on a surface.
- the system code of the present invention can also be used very well to enable the manufacture and quality inspection of products in a production line where individual components are assembled to form an overall product. If the components are provided with externally readable surface positions with such a code, an automatic tracking the individual components throughout the entire production process and even storing them. This improves the quality assurance and makes it possible to reconstruct systematic causes of faults, even in the case of retrospective problems.
- the system code according to the invention can also be used for the automatic control of production processes, as already described above.
- the symbol code can have a plurality of symbol pairs of complementary brightness distribution which differ in their color.
- the brightness distribution is in each case assigned a combination of colors which can be optically separated from one another by a detection system.
- coding with symbols of a complementary brightness distribution makes it possible to code the word length one
- the use of additional colors makes it possible to obtain a multi-word coding which encodes words of a length greater than one by means of graphic symbols.
- the planar arrangement of the brightness distribution in all symbols and their complementary symbols is preferably the same. They only differ in their color.
- the original binary word matrix is then construed as a word matrix expanded by the set of possible color combinations.
- Another aspect of the invention relates to a method of reading a two-dimensional system code according to the features of claim 4.
- the system code is made up of a plurality of juxtaposed graphical symbols, the symbol code being formed from exactly two different symbols of equal area differ in their area brightness distribution and each encode a value of a binary data word.
- the two symbols have a complementary brightness distribution.
- the method for reading such a system code according to the invention provides that a system, preferably a single, filter is applied to the system code.
- the application of a filter to the symbol code is hereinafter also referred to as scanning the symbol code with a filter.
- the one filter may coincide with the brightness distribution of one of the two complementary symbols, wherein in the case of a match the a symbol and in case of non-conformity the other symbol is recognized.
- agreement or disagreement the degree of complete agreement or complete disagreement can also be meant.
- the two-dimensional system code may, for example, be in the form of a graphic symbol matrix or a section thereof, as detected by an optical recording device.
- the aim of the reading is to form a binary word matrix or a binary word, which reproduces the information represented or coded in the system code.
- the application of a single filter to the symbol code both reduces the computation time and improves the reading result because the reading result is either the one or the other symbol is assigned and thus for the recognition of the symbol no comparison with externally determined threshold values is necessary.
- a correlation filter is used as the filter, which determines the result of a distance function which determines the distance. tion of the present brightness distribution, in particular a gray value distribution of the brightness distribution, in particular the gray value distribution of the correlation filter indicates.
- the application of a correlation filter for reading a two-dimensional system code can also be used independently of the presence of symbols of complementary brightness distribution, ie in the case of the various patterns in the arrangement of the patterns. Although this usually requires the use of a plurality of different correlation filters, which would generally be possible with sufficient computing power in the image analysis.
- the correlation filter corresponds to the brightness distribution of one of the two symbols and thus serves as a correlation template. If the correlation is performed over the symbol that exactly matches the correlation template, i. in the brightness distribution corresponds to the symbol of the symbol code, the result of the distance function determined during the correlation is equal to zero. On the other hand, if the same correlation template is placed over the exactly complementary symbol, then the correlation result corresponds to a maximum value, since the brightness or gray value difference between correlation filter and symbol is maximal.
- An advantage of this method is that the entire area of the symbol is used to determine the correlation value, so that no information is lost, even if parts of a symbol in the symbol code are dirty or damaged.
- the correlation value in this case is between the value zero and the maximum value. However, the information is not discarded because there is no comparison with a threshold at which the information may be sorted out as in the prior art.
- a normalization of the brightness values or gray values lying within each symbol region can take place in order to obtain the contrast properties of the O-symbol. surface adaptively and with respect to each individual symbol. It is thereby achieved that there is no differentiation into further brightness or gray-scale levels within the same symbol area and the required contrast lies between a logically "bright” and a logically “dark” area with only one brightness level.
- a brightness value jump is reliably detected at 10% contrast difference due to technical influences of the imaging detection devices of the recording device for imaging the symbol code.
- such a correlation filter is to be applied for each symbol in the symbol code.
- it is particularly useful to divide the graphical symbol matrix and the correlation filter-if appropriate, according to a scaling and / or orientation to be applied to the symbol matrix and / or the correlation filter-into pixels of the same size and to move the correlation filter pixel-by-pixel over the symbol matrix.
- the pixel edges of the correlation filter and the pixel edges of the symbol matrix are superimposed after each movement step. After each movement, the previously explained correlation method is then carried out, wherein the correlation result can be stored for each relative arrangement of correlation filter and symbol code or symbol matrix.
- the confidence value is a measure of the reliability of recognition of individual symbols at the respective positions of correlation filter and read symbol code.
- the correlation value is directly related to the distance function determined in the correlation, with a distance function value of zero or the maximum distance function value each meaning a high confidence for finding the one or the other symbol in the symbol code. In the middle of a the distance function value is the confidence in the read symbol equal to zero, since no distinction can be made between the two symbols.
- a confidence value range of -1 to 1 is suitable, whereby the value 1 indicates complete agreement with the symbol which is the same for the correlation filter and the value -1 indicates complete agreement with the symbol which is complementary to the correlation filter.
- the confidence values are, in addition to the measure for a correct decoding of the system code, thus also a measure of the graphic quality of the system matrix representing the system code.
- the confidence values according to the invention have the advantage that they are directly contained in the applied correlation method in such a way that they are determined independently of one another for all (possible) data cells and nevertheless can be derived from the use of only a single filter. Since the application of the filter over the entire system matrix, i. the entire image of the system code is the same, maximum comparability of the obtained confidence values among the recognized symbols is ensured. Thus, when reading the system code corresponding to the method proposed according to the invention, a relatively (very) reliable statement about the recognition reliability of the individual symbols and thus the reliability of the decoding can be made.
- the center point or the center pixel of the correlation filter are sequentially applied to each pixel of the symbol matrix, the correlation is evaluated and the confidence value associated with the respective pixel is stored.
- This procedure is also called template matching and makes it possible to find or localize the center points of the individual symbols in the symbol matrix representing the symbology at the points with the highest or lowest confidence values.
- the confidence values can be transmitted as parameters to an identification step following the scanning step, in which the position of the individual data cells of the symbol matrix is identified, around the individual ones To determine symbols in the symbol code. This identification then assigns to the individual symbols of the symbol code their word meaning, ie the binary value assigned to the respective symbol.
- the symbol matrix is converted into a word matrix whose entries are the respective binary values.
- the word matrix thus corresponds to the symbol matrix, which has the respective symbols as entries.
- the coded information can then be read from the word matrix by stringing together the individual binary words.
- the other center points of the symbol can be hiked and their symbols can be read.
- each of the symbols recognized by filtering assigns an independent confidence value via the recognition security.
- a greyscale image or more generally an image with different brightness values, which contains the image of the symbol matrix a single filter is applied, which assigns each of the graphic symbol used at the same time such a confidence value.
- the determination of the confi guration value for a symbol depends solely on the location and not on surrounding results of the filter or the confidence values of neighboring symbols. Resulting filter responses at different locations are thus comparable to each other by a metric and have an order without the individual confidence values depending on each other.
- the filter used is a normalized correlation method which, at each location of a rasterization of an image, determines the Euclidean distance of the brightness values, for example after conversion into gray values in the case of a colored symbol representation, of an image section in an environment defined by the filter operator to the presentation of the logical brightness distribution a family of graphic see symbols determined.
- determined confidence values can be forwarded as parameters to a subsequent process step, in which case these confidence values are used for sorting or selecting the corresponding words.
- the color of the symbols can additionally be evaluated.
- a color or color combination may correspond to a word, i. a binary value.
- the original purely binary symbol meaning may be given a further meaning which enables multi-dimensional multi-word coding. If one considers the original symbols as a binary word matrix, then this is understood as a word matrix extended by the set of possible colors or color combinations. In the evaluation of the brightness distribution changes nothing in this case, since the different brightnesses of the individual colors can be detected. This can be done either directly on the basis of the color representation or after a conversion to gray values.
- the decoding it is then also possible to determine a confidence value for a color distribution of the symbols. For example, the average distance of the color values of all the pixels belonging to a graphic symbol to the color distribution of its original can be determined proportionally to the confidence value determined in relation to the brightness distribution of the symbols in the system code compared to the correlation filter. It is even conceivable to combine the two determined confidence values into a single confidence value. For this purpose, the so-called "CIE 1976 u ', v' color space" can be used for the color distribution of the original and also for the image section corresponding to the filter operator. Thus, the determination of the Euclidean distance between template and image section is possible, which leads to an extended confidence value.
- CIE 1976 u ', v' color space can be used for the color distribution of the original and also for the image section corresponding to the filter operator.
- the RGB color image obtained from a sensor which is a vector image
- the RGB color image obtained from a sensor may be decomposed into an amount image (the color vectors) and a corresponding direction image (the color vectors).
- the magnitude image thus obtained is equivalent to a brightness or gray level image obtained by a sensor, so that the same analysis and correlation methods as before can be applied thereto.
- the color distribution in the corresponding RGB directional image can then be determined by Euclidean distance measurement to the templates of possible color distributions.
- the time profile of the confidence values in one area of the system code can be evaluated. This is possible, for example, in automated production plants in which the components or general objects are provided with the two-dimensional system code according to the invention.
- a general or local decrease in confidence values indicates increasing contamination or damage to an object in the entire or a limited area of the graphical symbol matrix.
- a drop in quality or a functional error in the printing technique used also produces such a pattern with confidence values falling over time.
- Confidence values determined at a time are stored and / or updated in a database according to object, detection station and time. Confidence values determined in the future will then be compared with this database and evaluated. If the threshold value of a statistical evaluation is exceeded, for example in the sense of a histogram metric, then the currently measured confidence values deviate from the norm. An expert then determines and eliminates the cause of the indicated fault.
- the system for generating and reading a two-dimensional system code can also operate an internal quality assurance and monitor itself.
- Symbols corresponding filter and the symbol code to be read i.
- the representation of the symbol code in the symbol matrix, as detected by an optical reading system are imaged onto one another by an imaging method, in particular comprising a scaling and / or a rotation.
- another parameter of the method may be a set of possible characterizing forms of expected symbol matrices.
- Each of the specified shapes must be sufficiently different from any other of the shapes contained in the set, so that a unique assignment of a given shape to current symbol matrix is possible.
- a translation-invariant area histogram is created from the current form of the symbol matrix in the image section. This area histogram is compared using a metric with the corresponding area histograms of the given set of characterizing forms of symbol matrices, selecting the symbol matrix of the nearest area histogram defined in terms of the defined metric.
- the word matrix corresponding to the symbol matrix of the image section the word matrix corresponding to the selected characteristic form of the specified quantity is determined.
- the symbol matrix of the current image section is converted into this word matrix.
- scaling and rotation parameters may be derived solely from the confidence values or at least in part from a parent pattern resulting from the arrangement of the symbols within a symbol matrix, such as parallel and orthogonal line segments.
- Parent patterns can cause a preferential direction of the gradients in a brightness value image.
- the preferred direction is then extracted from the derivation of the brightness value image in the X and Y directions, by the application of the Hough trasformation, a Radontrasformation or by applying controllable filters.
- the invention further relates to a preferred use of the above-described two-dimensional system code applied to components of a product in an automated production line by direct product marking (DPM), by attaching labels printed with the system code or the like is and has information on the marking of the components and / or to control the production process.
- the system code is detected by positioned on the production line readers and evaluated by a higher-level control system.
- the system code proposed according to the invention has the advantage that the symbols used in the system code are very robust against damage and soiling and a high degree of redundancy of the data can be achieved in a simple manner since the system code greatly reduces the existing area compared to known two-dimensional system codes effectively exploited.
- By means of evaluation by means of confidence values very reliable reading results are made possible, although on frames, synchronization and other special events. can be dispensed with.
- the effective use of space also makes it possible to accommodate the desired information in the smallest areas of the components.
- a two-dimensional graphic symbol code used for this purpose which is very good and reliable machine-readable due to the overall properties described above, can according to the invention usually provide information about its own type, an identification number, a model name, possibly information about the production process, such as production location - and time, lot number, technical processing and / or other information.
- a component or object can thus describe itself via the data coded in its machine-readable marking and thus contribute to the (partially) autonomous control of the production system.
- this detailed information about the object can not only be used to control the production plant.
- the invention relates to a device for reading a two-dimensional system code with an optical recording device and an evaluation device with a processor which is set up for processing the optical signals supplied by the recording device and for decoding the two-dimensional symbol code.
- the above-described method or parts thereof are implemented in the processor of the evaluation device by means of suitable software.
- the evaluation device can be integrated in the reading device with the optical system or a computer system, in particular in the form of a computer or several networked computers, to which one or preferably a plurality of recording devices are connected.
- the brightness distribution of a symbol is used as the basis for distinctness.
- the symbolic symbols of the symbol code for a one word and a zero word, which are to be distinguished for a binary data coding, are selected in the invention so as to ensure maximum distinctness.
- the graphical symbols are arranged within tiled data cells of a basically arbitrarily shaped symbol matrix. The symbols fill out the data cells completely. A data cell can thus be interpreted as a pixel image in which a graphic symbol is drawn.
- Machined areas of a data cell are logically represented by black pixels, ie logically dark, and unprocessed areas of a data cell are logically represented by white pixels, ie logically bright.
- white pixels ie logically bright.
- the assignment of the symbols to a word is based precisely on complementary brightness, and when only one of the graphical symbols is considered, no decision can be made as to which brightnesses the object background (as a logically bright surface of the symbol) and which of the processed Area (as a logically dark area of the symbol), prior static initialization of the assignments is required.
- a defined symbol could also be provided in the dynamic recognition symbol code.
- the coding and application process as well as the detection and decoding process are considered separately, taking into account both the application and reading method as well as the application material and its physical state.
- an adaptation can take place by means of a scaling factor used in the method, which reverses the binary word assigned to a graphic symbol. This makes it possible according to the invention to consistently assign the logically bright symbol to the optically detected bright symbol. The same applies to the dark symbol.
- a high data density can be achieved by the fact that the individual graphic symbols are square and therefore compact. These symbols can be fitted directly into the cells resulting from the logical matrix-like arrangement of columns and rows. The area of such a data cell can be filled completely with the graphic symbol, so that symbols of adjacent data cells directly merge into one another. As a result, increased reliability is achieved in the subsequent recognition of these graphical symbols, since brightnesses of the pixels in the edge region of a data cell can also be assigned to a symbol and the decision making process as to which graphical symbol is represented in a data cell can be included.
- the graphical symbols for a one word and a zero word may be of a special logical brightness distribution optimized for use in DPM (Direct Part Marking) methods.
- DPM Direct Part Marking
- a surface of the carrier material ie, the region selected for marking on a component
- a laser is usually processed with a laser by removing a thin layer in the micro or nanometer range.
- a spot size corresponds to a 0.15 micron diameter area on the object. This process is very time-intensive, so burning up a square matrix code with the dimension
- 0.5mm at 800dpi resolution takes over twenty seconds. In production practice such a time is usually not available.
- a vector-oriented method works “without settling,” which means that lines and surfaces can be burned quickly. "For example, just three to five seconds are needed, which can be significantly less depending on the laser and the power required For this reason, the use of a vector-oriented method is expedient for the purpose of achieving vector-oriented drawing of these symbols, and according to a preferred embodiment, they each contain only two contiguous surfaces, of which according to the invention Surface must be processed and the other surface remains unprocessed, so that a symbol can be drawn without stopping the laser in one go.
- An inventive criterion for the construction of the brightness distribution can be that an unprocessed surface with the logically bright feature of the machined surface with the logical dark feature is not completely enclosed in order to prevent or reduce a cross-fade. This is achieved in the case of the invention particularly preferred symbol, which is explained in detail in the figure description, even if a symbol is enclosed in an eight-neighborhood entirely without space of any other symbols.
- Machined and unprocessed surfaces can not be inventively mapped according to the invention, which further increases the ability to differentiate. In order to prevent damage to the component, it is often possible to work or burn with lasers only with a maximum permissible energy, which is why, depending on the material surface, the machining is more or less clearly visible.
- Achievable contrast differences are typically 70% or more.
- the contrast properties are also dependent on the respective surface material and may even be different within a marked area, so that different symbols of the same symbol matrix have different contrast properties. Changes in contrast may also be due to erroneous adjustment of other parameters of the hardware for deposition. The perfect setting of such parameters is time consuming and they can change over time. Therefore, according to the invention, a particularly robust symbol code is proposed, which is already achieved to a large extent by using two flat symbols with a brightness distribution, ie at least two different brightnesses in the symbol area, the brightness distribution of the symbols being just complementary to one another. Even if in the present application only two different brightnesses are described in concrete examples, according to the invention more different brightness values can also be present in each symbol which, for example, can be converted into the complementary symbol via complementary gray value levels.
- Symbols should also be robust against scratches, contamination or application errors, such as when a symbol has not been fully applied.
- This invention therefore defines preferred graphical symbols for null words and one-words, which in any case have an area requiring editing of the object. In this way it is additionally possible to reduce erroneous allocations which are caused by soiling on entirely unprocessed surfaces or conversely by reflections on completely processed symbol surfaces.
- a preferred symbol form of the invention provides a special ratio of processed to unprocessed symbol areas. Looking at the preferred symbols as a pixel image and rasterizing each symbol through a 3x3 grid, the ratio of processed symbol area (5/9) to unprocessed symbol area (4/9), or vice versa, is nearly 1: 1, so both Shares are roughly equally represented. The deviations are in a range less than or equal to 1/9 of Total area, which has proven in practical experiments as a reasonable limit for deviations.
- a 3X3 grid of individual symbol pixels makes a meaningful balance between the size of the symbol, which should not be too large with respect to a high achievable surface density and should not be too small in terms of good readability.
- the pixel size of a signal can theoretically be approached to the resolution limit of the application or reading process. Another important criterion for the symbol size are of course the space available on the surface to be marked, which can be utilized according to the invention. The symbol size can then just be chosen so large that the desired information can be encoded.
- the symbols for the zero word and the symbols for the one word each have an almost uniform distribution of brightness values on average, so that neither of the two symbols is favored by a more conspicuous mark in the recognition than in the other ,
- a clearly distinguishable response pattern can be produced in image processing, even if the application quality is deficient, since both regions are far apart.
- the contrast between light and dark area of a symbol required for the method proposed according to the invention is only one level of brightness value.
- current technical imaging devices have to take account of design-related technical influences such as image noise, homogeneous surfaces of the same brightness will not be available as such in the pixel image.
- a brightness or gray value jump is reliably detected with a contrast difference of 10%.
- the difference in contrast actually required can be further reduced if the correlation method is robust against outliers, so that in the reading method according to the invention even a contrast of less than 10% is sufficient to reliably perform the symbol assignments.
- the proposed method does not require preprocessing in image processing, no further brightness value errors are interspersed, so that the required contrast difference can be quantified as above.
- the result of the distance function is zero because there is no difference.
- the correlation result will be a maximum value, since the gray value difference is maximal for each image pixel.
- the proposed method for the recognition of graphic symbols can directly indicate in this embodiment how secure it can be to associate the recognized symbol. This is particularly advantageous in the case of redundant encoding of words, because then, based on the recognition reliability of individual symbols, a set of symbols of high recognition reliability can be determined for the reconstruction of the coded word.
- such values can be requested for each recognized symbol. These are called confidence values. They are directly contained in the applied correlation method, and in such a way that all confidence values of all symbols are determined independently of each other, and yet are derived only from a single filtering. Here, the filtering is the same everywhere in the picture, so that a maximum comparability of the obtained confidence values among the recognized symbols is guaranteed.
- the symbol code can be formed exclusively from the two complementary symbols. It contributes to increasing the data density and the reliability of the recognition that the system code according to the invention preferably no special symbols for localization, equalization or synchronization and also no statically fixed sequences of symbols or predefined areas that serve version or format definitions, contains. On the one hand, leaving out anchor symbols or static patterns leaves more room for data information and eliminating a single point of failure, which means that the pattern for synchronization, an anchor symbol or version description can not be extracted correctly due to reflective surfaces or contamination This will completely prevent the decoding of the symbol matrix.
- Previous prior art markers have often been limited to a rectangular symbol matrix or a circular shape of the array of a certain minimum size to accommodate synchronization symbols in addition to the symbols for the data bits. This prevents any arranging on small components, on Areas with recesses or the division of the symbol code and its application to separate areas.
- the graphical symbols can be hiked and transformed into a suitable word matrix. Alternatively, any amount of application surfaces other than the shape within which the graphical symbols are arranged in tiled data cells may be indicated.
- the most probable form characterizing the symbol matrix is selected and, accordingly, the word matrix is created.
- the proposed method is preferably parameterless in the sense that the input of the algorithm is expected to be a brightness or gray value image which contains an image of the symbol code defined here.
- all required parameters of the symbol code such as scaling, translation, rotation and application surface can be determined by the method itself according to the invention. Therefore, no adjustment of the parameters when commissioning a visual detection station is required.
- This has great advantages, since the manual making of such settings is complex and even with minimal changes to the overall system recalibration could not be avoided.
- the calibration can be carried out automatically, as will be explained later on by way of example.
- the graphic symbol code proposed according to the invention eliminates currently existing limitations in DPM (Direct Part Marking) methods for applying two-dimensional system code due to its adaptable form, the robustness of the selected symbol types or forms and the reliable as well as computation-efficient extraction method (decoding). especially for applications with small components with reflective surfaces.
- DPM Direct Part Marking
- decoding computation-efficient extraction method
- typical and contradictory requirements imposed on such a system code in automated manufacturing have been taken into account. It is the goal to further develop and miniaturize electronic and mechanical components. If these objects are to be given a machine-readable, two-dimensional symbol code, such codes must be available, which must be available even if the available space is small. and provide high data density with additional error correction. The reading should be reliable and efficient, so that cycle times in the production line can be further increased.
- a particular advantage of the invention lies in the quality control by generally decreasing confidence values, which are independent of each other, because they follow directly from the application of a filter on the symbol code constructed in particular from complementary symbols.
- the proposed image-processing method for decoding the symbol matrix representing the symbol matrix into a word matrix outputs the associated confidence values each time a symbol is recognized.
- Such confidence values can be averaged over many temporally successive decodes of the same test station, so that over time generally decreasing confidence values give indications of increasing contamination of the objects.
- Declining confidence values can be determined on an entire symbol matrix or even only on subregions of a symbol matrix, since the confidence values can also be stored spatially resolved according to the arrangement of the data cells in the symbol matrix. As contamination increases, the cause can be found and eliminated in the manufacturing process before it has increased so much that, for example, symbol codes can no longer be decoded.
- a further advantage of the invention is that the binary coding can be easily extended to a multi-word coding by means of two symbols of complementary brightness distribution by using colored graphic symbols, without the evaluation method having to be changed. For additional information, the color must be recognized.
- the coding of the word length is one, i. a binary coding, treated in detail by graphic symbols. It is easy to derive a multi-word encoding that encodes words of length greater than one by graphic symbols. This can be achieved with a color assisted printing technique.
- the graphic symbols are printed in color, so that the black and white brightness distribution (gray value distribution) is assigned a combination of colors. Any number of colors can be used if they can be reliably distinguished from each other.
- the optical system detects the colored symbol code, for example as an RGB color image.
- the color image may then be placed in a brightness channel, i. a gray value image, and further color channels are transformed.
- the brightness channel is processed as previously described for grayscale images. Subsequently, the color information from the color channels can then be added from the extracted symbol cells, and their analysis result can be included in the word matrix before it is output.
- the word matrix with an extended word length and associated additional confidence values can be enriched for color information before being output to the decoding process. If the color selection is taken to ensure that from the detected brightnesses only the assignment of the complementary brightness-based graphical symbols for one-word encoding is possible without the additional To use existing color information, so an encoding can be such that a large binary data set is divided into a part that can be decoded independently of the additional color information from a gray value image alone, and another part that can be decoded only with existing color information and provide additional information that is not mandatory.
- FIG. 1 shows an exemplary embodiment of the brightness distribution of the graphic symbols for a null word (FIG. 1 a) and a one word (FIG. 1 b), which can preferably be used in a binary coding.
- the thin drawn boundary lines are not part of the respective symbols, but serve to represent their spatial boundaries.
- FIG. 2 shows a flow chart for the procedure for selecting, mounting and detecting an optimal symbol code according to the invention under secondary conditions.
- Fig. 3 is a flow chart for the inventive integration of the symbol code for automation of production.
- FIG. 4 shows a flow chart for the embedding of a test or assembly station with recognition and processing of a symbol code according to the invention on an object.
- Fig. 5 shows the schematic sequence of the recognition in an application example according to the invention, in which the symbol code is mounted on a cylindrically curved surface with specular properties.
- FIG. 6 shows the schematic sequence of the recognition in an application example according to the invention, in which a plurality of symbol codes on valve heads of a small control valve with a curved and flat, reflecting and matt surface and of different heights are read by a single detection station from a single recorded image.
- FIG. 7 shows a flow chart for a method according to the invention for generating and assigning different symbol codes, which can be distinguished by the inner and outer shape of their application surface, to the detected graphical symbols in the image currently to be evaluated.
- 8 shows a first embodiment of a symbol matrix representing a symbol code in a rectangular application area consisting of 21 rows and 30 columns of individual data cells with a symbol in accordance with FIG. 1 arranged in each data cell.
- FIG. 9 shows a second embodiment of a symbol matrix representing the symbol code in a rastered circular application area.
- FIG. 10 shows a third embodiment of a symbol matrix representing symbol matrix in a rastered circular application surface with a central recess.
- FIG. 11 shows a fourth embodiment of a symbol matrix representing the symbol matrix as a free-form surface in a polygonal application surface.
- the outer shape is additionally drawn into approximately reproducing boundary lines of the symbol matrix, which, however, are not part of the symbol code.
- FIG. 12 shows a representation of the symbol centers of the individual symbols reproduced as a dot in the data cells of the symbol matrix of the fourth embodiment according to FIG. 1. This highlights the row and columnar matrix-like arrangement of the symbols within the free-form surface, but the edges thereof from line to line or column to column can vary and may even be interrupted.
- FIG. 13 shows a fifth embodiment of a symbol matrix representing symbol matrix consisting of two separate free-form surfaces, each with its own polygonal application surface.
- corresponding boundary lines are again drawn in, which roughly reproduce the outer form of the symbol matrix but are not part of the symbol code.
- 14 shows an illustration of the symbol centers of the individual symbols reproduced as a dot in the data cells of the symbol matrix of the fifth embodiment according to FIG. 13. This highlights the row and columnar matrix-like arrangement of the symbols within the free-form surface which, in this embodiment, both free-form surfaces extends.
- FIG. 15 shows a representation of a surface histogram for the symbol matrix according to FIG. 13, whose geometric center of gravity is identified by a cross.
- the area histogram indicates whether or not a symbol represented by a symbol center is in an area histogram cell. In this case the area histogram cell has the value 1, otherwise the value 0.
- 16 shows a flowchart with an overview of the general method steps for an inventive transformation of the graphic symbol matrix into its corresponding word matrix including determination of confidence values.
- FIG. 17 shows the graphic symbols for the null word (FIG. 1 a) and the one word (FIG. 1 b) with additionally drawn scaling information for illustration purposes. It becomes clear that a graphic symbol is divided into 3x3 pixel blocks of roughly equal square side lengths.
- the main feature takes a summarized 2x2 pixel block at the bottom right in the graphic symbols a and b.
- the remainder of the area is a rectangular line-like area, drawn in the width of a 1x1 pixel block, around the two abutting sides of the outer edge of the main feature.
- the line-like surface in both embodiments runs according to the illustrations a and b from bottom left to top right.
- FIG. 18 shows an embodiment of a double original (also as a double template).
- Symbol templates or double symbol templates of the two symbols of the system code, which can be used to extract unique rotation and scaling parameters.
- the invention is not limited to the exemplary duplicate template. However, it is advantageous if according to the invention both embodiments of the zero-word symbol and the one-word symbol in the two or multiple original are included. With a two or multiple original, ambiguities of the 0 °, 90 °, 180 ° and 270 ° rotations are resolved.
- FIG. 19 shows the graphical result of the testing of various automatically generated dual templates for determining scaling and rotation parameters.
- the duplicate templates reproduced to the right of the representation with confidence values represented by dots of different sizes were applied to the pixels of the image of the symbol matrix in Figure a, ie the image was pixel-matched to the system code shown in the image Scanned duplicate template.
- the duplicate template has been moved relatively over the image to be evaluated and determines the congruence of two-copy template and image. This process is also called correlation. The result of such a determination are confidence values.
- FIG. 19 shows the image detail to be examined with a rotated symbol matrix.
- Illustrated in the figures b, c, d and e are in each case by way of example generated templates according to specifications, which differ in their size and orientation relative to the symbol matrix.
- the respective correlation results are shown for all pixels to the left of the two templates used for the correlation, with thicker dots indicating a higher confidence.
- possible midpoints of the double Symbol template extracts what may be caused by surface texture effects.
- Figure 20 shows in Figure a and Figure b, respectively, a four-neighborhood of cells of zero-word symbols.
- the illustration in Figure b corresponds to that in Figure a after a 90 ° clockwise rotation. It can be seen that Figure b shows a pattern showing only two complete zero word symbols in the orientation shown in Figure 1.
- Fig. 21 graphically illustrates a partial scaling invariance. If a symbol is correlated with a smaller symbol template, then an X- or Y-axis-based ratio of about 1/2 of processed to unprocessed symbol regions will be achieved in the best case, which does not correspond to the original ratio of 1/3 or 2/3. However, taking into account that correlation values are lower than otherwise by the incorrect ratio by a constant factor, according to the invention, the correlation can enable unambiguous assignment.
- FIG. 22 shows a square symbol matrix after filtering with a Sobel filter mask (edge detector) in the Y direction of the image axes.
- Sobel filter mask edge detector
- FIG. 23 shows, by way of example, a method according to the invention for accelerated testing of the image alignment of the symbol matrix by means of a Hough Transformation.
- rotation parameters are approximated by the main alignment of the line segments of the individual graphical symbols.
- Figure a shows an image detail with a rotated symbol matrix.
- an edge detector for gray value edges such as the Sobel operator in the direction of the X and Y intercept, one obtains an image as shown in Figure b.
- the extracted line segments can then be merged into parameterized straight lines by means of a Hough transformation, as shown in FIG. Due to the matrix-like arrangement of the graphical symbols, two main directions of orthogonal orthogonal directions thus result.
- the parameterized lines indicate the two possible and the two preferred rotations to be tested by the two-way template. Each mirror corresponds to its reflection, so that a total of four lines of freedom exist, which are tested by means of the double template. This is shown in Figures d, e, f and g.
- An initialization for the scaling parameters can be obtained according to the invention from the parallel line spacings from FIG.
- Fig. 24 is a flowchart for focussing the symbols and then migrating these centers with consideration of image data noisy center data.
- FIG. 25 shows a correlation image to the symbol matrix according to FIG. 11, wherein only the correlation results to the null word are highlighted.
- the density of the dot distribution indicates the correlation values.
- a high density means a correlation value of near 1.0 and low density means a correlation value close to -1.0. This is due to the representation, the real algorithm has a gray scale distribution available. For emphasis, the application area is additionally drawn.
- FIG. 26 shows a correlation image to the symbol matrix according to FIG. 11, wherein only the correlation results to the one word are highlighted.
- the density of the point distribution indicates the correlation values.
- a high density means a correlation value of near 1.0 and low density means a correlation value close to -1.0. This is due to the representation, the real algorithm has a gray scale distribution available. For emphasis, the application area is additionally drawn.
- FIG. 27 shows a correlation image as an amount image to the symbol matrix according to FIG. 11, wherein the correlations to the zero word and the one word are highlighted.
- the density of the dot distribution indicates the correlation values.
- a high density means a correlation value of near 1.0 or -1.0 and a low density means a correlation value close to 0.0. In the latter case, therefore, no symbol could be identified.
- the real algorithm has a gray scale distribution available. For emphasis, the application area is additionally drawn.
- FIG. 28 shows a dilatation image based on FIG. 27, in which the density of the line segments indicates the confidence for a symbol in this local area. This is due to the representation, the real algorithm has a gray scale distribution available. For emphasis, the application area is additionally drawn.
- FIG. 29 shows a noisy center point image of a square symbol matrix on a curved surface, wherein the extracted symbol centers are drawn in black. Center points are also marked on unprocessed object background. Within the symbol matrix, not all centers lie on an expected orthogonal or parallel grid. These phenomena are called midrange noise.
- FIG. 30 shows a noisy center point image of a square symbol matrix on a flat object surface, wherein the extracted symbol center points are drawn in black. There are also extracted centers on the object surface next to the symbol matrix. At some positions no center points have been extracted in the center point image, even though they should have been located there according to the corresponding symbol matrix. Even within the symbol matrix, due to contamination in the captured image or due to inaccuracies in the plotting of graphic symbols by a laser, midpoints have been extracted at positions where none are expected. Under certain circumstances, the matrix-like lattice structure of the center points may not be exactly reproduced in the center point image due to quantization errors, changing local recognition quality and perspective distortion.
- Fig. 31 is a flowchart for the column and row wandering of all
- FIG 32 shows a schematic representation of the migration according to the invention of the extracted symbol centers by means of the "Region Growing" method in Figure A.
- the symbol center with the highest confidence value was selected in Figure A. From this starting point, a row of center points became from left to right , as well as from right to left as symbolized by the arrows, jumps to the next line below in figure b This and all other lines below are marked according to the same scheme as shown in figure c marked center point image, after the upper lines have been moved from the starting point.
- FIG. 33 shows explanatory illustrations of the method according to the invention for finding an extracted symbol center point after its estimation.
- a symbol of size 6x6 pixels shown.
- the center was estimated. If there is no center point in the center point image at this pixel, the distance to the estimation which takes into account a quantization error is searched in an environment of one pixel.
- the searched pixels are shown in Figure a. If no center is found here either an environment in the size of a symbol template is searched, whereby quantization errors are also taken into account here, as shown in FIG. Figures a and b show the boundary of the symbol whose center is being searched for.
- FIG. 36 shows a rectangular symbol matrix with large-area perturbations which extend over a plurality of adjacent symbols.
- FIG. 37 shows a flow chart for the use of the two-part template for parameter determination according to the invention and a rough representation of the extraction of the logical word matrix according to the invention.
- FIG. 38 is a flowchart for a robust method according to the invention for
- Fig. 39 is a schematic representation of the migration of the extracted centers by the four-neighborhood method.
- Figure a shows the centers of the graphic symbols of a rectangular symbol matrix. At some positions in the grid there are missing expected centers. At other stelae center points are present by midpoint noise, which correspond to no graphic symbol.
- the four-neighborhoods of some centers have already been hiked.
- Figure b shows the iterative process begun in Figure a a few iterations later.
- Figure c shows the intermediate result after all valid four-neighborhoods have been hiked. Gaps are caused by incompletely interchangeable four-neighborhoods and will be filled later.
- Figure d shows only the potential, partly incomplete four-neighborhoods of invalid centers. Since it is assumed that, due to the poorer confidence of invalid centers, these centers are not visited until after the state achieved in Figure c, these neighborhoods can be discarded directly, since the centers adjacent to the invalid centers have already been referenced, namely Figure d shown state.
- Fig. 40 shows a coding and decoding algorithm according to the invention, which uses for decoding the confidence values that this invention outputs to each word of the logical word matrix to implement an error correction.
- FIG. 1 shows the graphical symbols or symbol types for binary zero and one-word words. From these two symbols each arbitrarily malleable symbol code is generated.
- FIGS. 2 to 4 and 7 illustrate the process of decision making for a symbol code and the introduction into the production process as flow diagrams. shown in grams.
- Figs. 5 and 6 show concrete examples of the application of a symbol code to a particular component, the variability and versatility of the application of the specified symbol code being clear.
- FIGS. 8 to 11 and 13 can be easily integrated into a production process, with FIG. 15 and the flowchart of FIG. 7 generating and assigning area histograms to the various Describe symbol codes.
- An algorithm for decoding the binary words represented by symbols can each handle only symbol codes of a certain shape, so that the surface histogram of the recognized symbol code can be used to address the associated algorithm for decoding.
- FIG. 16 shows the general sequence of the method according to the invention.
- the position or rotation parameters and the scaling parameters of the graphical symbols which are present in a received (scanned-in) gray value image of the symbol code, which is also referred to as symbol matrix are to be determined (method step 100).
- method step 100 the position or rotation parameters and the scaling parameters of the graphical symbols which are present in a received (scanned-in) gray value image of the symbol code, which is also referred to as symbol matrix
- a symbol template with the now known parameters is correlated with the image of the symbol code, ie the symbol matrix (method step 101 according to FIG. 16).
- the results of such a correlation are shown schematically by way of example in FIGS. 25 to 27, wherein the type of representation does not correspond to the evaluated images but has been prepared for paper-based presentation.
- the migration (method steps 127 to 144) is shown in the flowchart according to FIG. 24, where a region growth method ("Region Growing") is used as the basis, which is illustrated by FIGS. 32 and 33 and in the flowchart according to FIG. 31 is executed in more detail.
- a region growth method ("Region Growing") is used as the basis, which is illustrated by FIGS. 32 and 33 and in the flowchart according to FIG. 31 is executed in more detail.
- Figures 34-36 illustrate damage to symbols that may lead to poor evidence of a symbol at a location. These difficulties must be taken into account by a method of migrating extracted centers.
- FIG. 37 again shows the general sequence from FIG. 16 in more detailed form.
- Fig. 40 describes how, in a last method step of the invention, the confidence values assigned to a symbol by this method may be usefully employed in implementing a decoding algorithm for transforming a word matrix into a data stream.
- the object may only be a limited size and Number of contiguous surfaces have (method step 14), where the desired or required object properties prevail, such as low reflection, sufficient material thickness, likely low probability of contamination or damage, and where by means of possible application techniques graphical symbols can be applied by the smallest possible size to keep the symbol code compact (step 15).
- the selection of such application surfaces may be limited, for example, by bulges or texture and material thickness of the object surface.
- attention must be paid to the limitations of the assembly or testing station itself (step 16), which allows only a limited number of attachment points to attach and align an optical system (step 17).
- other lighting systems or additional units may also need to be aligned in a particular configuration.
- the part of the object to be detected must be able to be viewed, which in the acquired image reaches a pixel resolution determined by the optical system which specifies a minimum size of the graphic symbols of the symbol code (method step 18) in order to be processable by image processing.
- Process Steps 10 to 12 may not be achieved in part because the resulting limitations of Process Steps 13 to 15 and 16 to 18 are too broad and the resulting solution defined in Process Steps 19 to 24 is not optimal.
- a symbol code which can also be applied to object surfaces with complex properties such as reflection or several contiguous surfaces and is safely decoded under inhomogeneous lighting and changing application quality, extends the application spectrum of symbol codes and optimizes the achievable overall solution (process steps 19 to 24).
- method step 30 a decision of the symbol parameters for a data record is made (method step 30) which is to be applied to the object in a symbol code by machine-readable, and the required redundancy for error correction is specified (method step 31),
- method step 32 the best possible application area can be determined (method step 33).
- the generated word matrix contains in each cell a value of zero or one resulting from the process of encoding the selected data set with additional redundant error correction (step 34) or otherwise specified, or no value if that cell is not part of the application area.
- the corresponding graphic symbol matrix is then generated by generating an image, for example a bitmap image, whose dimensions correspond to those of a graphical symbol in pixels multiplied by the number of rows or columns of the word matrix, where the arrangement is free and the number of columns per row (or vice versa) may vary.
- an image for example a bitmap image, whose dimensions correspond to those of a graphical symbol in pixels multiplied by the number of rows or columns of the word matrix, where the arrangement is free and the number of columns per row (or vice versa) may vary.
- the marked object is then introduced or fed back into a production process (method step 37), where the object is detected in the course of the further production steps at test or assembly stations provided for this purpose (method step 38) in order to decode there the symbol code applied to the objects.
- the detection by an optical system of the inspection or assembly station takes place as soon as the object has reached the station (method step 50), as shown in detail in FIG. 4.
- a trigger is started by the object (method step 51). Possibly, lighting devices are switched after the triggering of the object and triggered by the trigger (method step 52), which produce a homogeneous light distribution during the recording, if necessary.
- the detection of the object by the recording device (method step 53) and the processing of the image material can take place in devices which are different from one another, so that the captured image is sent on to an image processing device (method step 54).
- image processing method step 55
- the symbol matrix is extracted and the centers of the symbol cells in the detected pixel image are determined, as is evident from method step 39 according to FIG. Thereafter, the symbol matrix becomes the one corresponding to the symbol centers Word matrix transformed (step 40), as will be explained in more detail later.
- the decoding algorithm (method step 56, FIG. 4) reconstructs the encoded binary data record (method step 41, FIG. 3), possibly with the aid of existing error correction information.
- the binary data set can then be processed by a process computer of the test or assembly station, as shown in the method steps 42 of FIGS. 3 and 57 of FIG. 4.
- the process computer may send control signals (method step 58, FIG. 4) to remote devices.
- the detection station then waits for a new object (59).
- the further production process can be controlled (method step 43, FIG. 3).
- the same object may be detected at various other stations and in the same manner the symbol code may be evaluated, as indicated by method step 44.
- the main feature for example, from the outset according to the invention can be applied with a slightly smaller area to compensate for the expected effect.
- this does not diminish reliable discrimination, since deviations in the gray values of the detected symbols caused by washout cancel each other out in a relative comparison in a relative comparison, if the correlation method according to the invention is used to identify the symbols, where the Euclidean distance is a measure of Assignment is.
- the symbol code according to the invention and the associated method for reading the symbol code are particularly robust and reliable.
- the rotation and scaling parameters of the individual graphs must be fishing symbols are detected (step 100).
- an object can be rotated differently and positioned at different distances from the camera, so that the determination of the parameters according to the invention preferably takes place dynamically, ie in the respective recording situation.
- the word matrix is then reconstructed only from the subscribed symbol centers (method step 103), the word belonging to a symbol center point being derived from the degree of agreement with one of the two graphic symbols at this pixel position (method step 104).
- the degree of correspondence in the correlation of the symbol template is determined as the confidence value in the correlation and indicates the quality and assignment certainty of a word to this position.
- the determined words and the associated confidence values are used as word
- the word matrix contains rather negative and positive floating-point values, which equivalently represent the two words and the confidence value at the same time.
- This word matrix is either output directly to the method for decoding and restoration of the binary data set or it is previously determined as another parameter, the application area of the symbol code, which is given by its shape. The procedure for this is basically explained in FIG.
- the determination of the rotation and scaling parameters (method step 100) is carried out by so-called testing. This is shown in the process steps 182 to 185 of FIG. 37.
- the procedure is shown in FIG. 19.
- a dual template is used, which is illustrated in FIG. 18 and includes two adjacent graphical symbols.
- the duplicate template is generated dynamically in the bitmap memory with typical parameters (step 182). For example, assuming a symbol size of eight pixels page length and a zero degree rotation, the template may be drawn into a bitmap memory according to the relative size ratios of the processed and unprocessed surfaces as shown in FIG Double original has a height of eight and a width of 16 pixels. When drawing the symbols, only two different gray values are needed, ie the value "255" for filling the white unprocessed areas and the value "0" for black processed areas.
- a double template rather than just a single symbol is used, since superordinate patterns are created when individual symbols are arranged directly next to each other within the symbol matrix without further space between the cells.
- Such superordinate patterns for example, within a four-neighborhood of symbols shown in FIG. 20, are very similar to the pattern of a single symbol, but are many times more than 90 ° different from Rota. tion parameter to the actual orientation of the symbol matrix.
- a good correlation of the parent patterns can be prevented by using the duplicate template.
- This duplicate template is then applied to the gray-scale image to be analyzed in a normalized correlation method (method step 183). Since the described dynamic generation and subsequent correlation may be performed several times with different parameters (step 184), only a relatively small portion or alternatively multiple portions at different positions of the image may be used for correlation instead of the entire image for speeding up. These subregions are then usually chosen rectangular for the sake of simplicity, with their side lengths form a multiple of the height or width of the current two-copy template. A test only makes sense in representative image areas in which the correlated template can also be found. However, since image analysis is not known at this time (unless additional information is available), at which position in the image the symbol code is located, it can be assumed that it extends mainly over the central image area. If, due to the alignment of the acquisition device, other image areas are more relevant, other or several such subregions may be defined.
- confidence values are available as the correlation result for each pixel. These confidence values are evaluated in method step 184.
- the maximum absolute confidence value of all correlated image regions is determined and it is checked whether a predetermined minimum value is exceeded. If such a minimum confidence value is reached, it can be assumed that rotation and scaling parameters were found which are sufficiently close to the actual values and the further search can be aborted. This condition was achieved in Fig. 19e, but not in the correlations shown in Figs. 19b-19d with differently scaled or rotated dual models.
- a threshold value can also be chosen adaptively by creating a two-fold template corresponding to FIG. 18 (method step 182) and correlating (method step 183) for a constant number of rotations and scalings (method step 185). Subsequently, a maximum confidence value of all correlation results is sought (method step 184). The matching parameters are then considered very close to the actual parameters and used later.
- a further improvement of the parameter estimation can be achieved in the same way, if in a local environment of the parameter space close to the estimation made is varied in order to obtain more accurate values for the approximated parameters.
- Predefined parameters must be selected such that the actual parameters can be sufficiently well estimated from the correlation results of the dual template to provide useful confidence values for later correlation with only one symbol template for reading the symbol matrix created with the parameters found here receive.
- rotation parameters can be tried at a distance of 30 °, ie 0 °, 30 °, 60 °, 90 °, 120 °, 150 °, 180 °, 210 °, 240 °, 270 °, 300 ° , 330 °, so that this already means up to twelve executions of the positions method steps 182 to 185 at a fixed scaling parameter.
- the number of trials can be reduced by taking into account the arrangement of the black and white areas, which is approximately the same as the center of a symbol.
- a symbol template with a smaller scaling than the actual value present in the gray-scale image can provide sufficient confidence values with additionally approximated rotation after a correlation.
- Scaling factors can therefore also be under-approximated (FIG. 21), which is why scaling lengths of 6, 10, 14 pixels suffice to arrive at sufficiently accurate estimates, in particular of the rotation parameters, which can then be further refined in their local environment.
- an adaptive method is available.
- landmarks of the components or the environment captured in the image can be used to initialize the rotation parameters (process steps 182 and 185).
- other types of knowledge could also mean that it is known whether subsequent components will have similar rotation and scale parameters, so that the last found parameters can be used as initialization (step 182) of a subsequent acquisition.
- the symbol matrix consists mainly of interrupted straight, parallel and orthogonal line segments, as shown in Figs. 22 and 23.
- a Sobel filter mask can be used, which is an edge detection filter which is frequently used in image processing and is used there as a Sobel algorithm by means of convolution. This filter calculates the first derivative of the pixel brightness values while simultaneously smoothing orthogonal to the direction of the derivative.
- the Hough transformation generates a dual space in which, for each point in the image that lies on one edge, all possible parameters of the figure to be found are entered in the dual space.
- Each point in the dual space thus corresponds to a geometric object in the image space. For example, at one grade this can be the slope and the y-intercept.
- the dual space is evaluated for clusters of its point entries, which then correspond to the desired figure.
- resulting slope values may be either parallel or orthogonal to each other, if an XY Sobel filter is used.
- the slope information thus obtained can now be used for initialization in method step 182 and method step 185.
- Rotations must now be tested only in 90 ° increments relative to the pitch found, as shown in Fig. 20. If the image data to be evaluated is not too noisy, the distance of parallel lines of the Hough transformation can also be used to initialize the scaling parameters. Now that the rotation and scale parameters of the symbols have been extracted, the corresponding symbol template can be created and the entire image area of the symbol code correlated.
- a symbol is drawn in the bitmap memory according to the rotation and scaling parameters obtained by testing (method step 101 according to FIG. 16, method step 122 according to FIG. 24 and method step 186 according to FIG. 37).
- the original image can also be rotated so that the symbol template can be drawn with fixed rotation parameters and only its scaling must be taken into account.
- a symbol of the symbol code is logically divided into a 3x3 field of square cells of equal size, with horizontal and vertical 1/3 black and 2/3 of the area drawn white (or in the reverse division of the one-word symbol ). This is illustrated in FIG. 17.
- This generated bitmap has a histogram with values 0 (black) and 255 (white).
- the template from the bitmap memory is then correlated with the overall image to be evaluated or a previously determined image section in a normalized correlation method (method step 101 according to FIG. 16 or method step 123 according to FIG. 24).
- the result of the correlation is a new image created in method step 123 with the same dimension as the original image to be correlated minus the width or height of a symbol.
- the pixels of the correlation image each contain the correlation result at the corresponding position of the original image as shown for the two complementary symbol templates in Figs.
- the gray value distribution of the symbol template is placed with its center over each pixel of the image to be evaluated. For this pixel, a value between 1, 0 and -1, 0 is determined, which is a measure of whether this pixel is a center of the symbol template.
- the gray values of the image to be evaluated, over which the symbol template lies, are normalized, so that ideally only two values are needed to represent the brightness distribution (as in the creation of the original). Then the Euclidean distance between a pixel of the original and its directly underlying, corresponding and normalized pixels of the image to be evaluated is calculated. The sum of all Euclidean distances of gray values in the catchment area of the symbol template then forms the value of the pixel in the correlation image which has been scaled to a range of 1, 0 to -1, 0. A value of -1, 0 for a pixel means that this point in the original image is by no means the center of a searched symbol.
- a value of 0.82 means that an 82 percent probability pixel is the center of a zero-word symbol.
- a pixel with a value of -0.54 is correspondingly assigned to the center of a one-word symbol with 54 percent probability.
- the chosen shape of the symbols indicates that values around the center of a symbol are very close to ideal values of 1.0 or -1.0, so that all symbol centers can be localized.
- the correlation image created by means of the previously explained template matching contains a gray value distribution with values from 1.0 to -1.0, which in FIGS. 25 and 26 separates for the two ranges 1.0 to 0.0 and -1.0 to 0.0 are shown. From this, the pixel coordinates of the center points of all symbols of the symbol matrix are to be extracted (method step 102 according to FIG. 16, method step 152 according to FIG. 31 and method step 187 according to FIG. 37). This means that maxima must be found within local areas that correspond to the boundary of a symbol template.
- a new image memory which contains the magnitude values of the pixels of the correlation image, such that the value range is between 1.0 and 0.0 (method step 124).
- Such an image is shown in Fig. 27 and ideally shows in each data cell of the symbol code a maximum corresponding to the center of the symbol.
- an adaptive approach to extract local maxima that addresses the problems of global thresholding is pursued. This is on the 27, an amount image of the correlation values (method step 124) is applied to a dilation filter (method step 125).
- the dilation filter causes the complete image of the second object to be inserted at each pixel of a first object.
- the morphological operator works on a gray value image.
- the dilation filter has as a structural element a rectangle of the same dimension and the same outer contour as the symbol template used for the correlation, since it is assumed that these are exactly the dimensions of the symbols actually present in the captured original image. If this dilation filter is applied to a gray scale image such as the absolute value image of the correlation values according to FIG. 27, a maximum formation takes place between the buffered gray value of the dilation filter and the respective gray values of the underlying pixels of the original image corresponding to the structural element. The maximum gray value of two such pixels is then written to the original image in the same place.
- the cached gray level of the texture element is defined as the gray level of the pixel in the original image that is just below the center of the dilation filter, which is centered over each pixel of the original image.
- a copy of the amount image is generated, which is referred to as Dilatationssent (step 125).
- the dilation filter is placed with its center over each pixel of this copy of the magnitude image and within its catchment area the maximum formation of pixel values is performed.
- a gray value image is obtained, the gray value of which is reproduced in FIG. 28 as lines of different densities.
- a homogeneous filled rectangle with the gray value corresponding to the confidence value of the estimated symbol center point is maximized in its local environment determined by the dimensions of the symbol template and adaptively extracted by the maximum formation of the dilation filter (step 125).
- the estimated symbol centers can be located by marking those pixels that have the same gray level in the magnitude image and the dilation image have (method step 126). Pixels with this property can be considered as local maxima, which are very likely to be associated with actual symbol centers. These may be copied to a center point image, as exemplified in Figures 29 or 30, having the same dimensions as the captured original image, with centers assigned, for example, the value 0 (black) and all other pixels 255 (white) get (step 126).
- the method according to the invention described above has the advantage of not using threshold values as parameterization. It adapts locally in an area to the confidence values given to each pixel of the magnitude image. For example, lower detection reliability caused by local reflection, contamination, application errors are taken into account. A threshold would fail with these inequalities and would not extract midpoints if it is too high. The procedure does not have to be initialized by a constant parameter, which would have to be determined by a human expert with a high calibration effort.
- the wandering involves the difficulty that, although the positions of centers are known from method step 102, but on the one hand the obtained coordinates are noisy and on the other hand due to perspective distortion in the image the centers of rows and columns are not strictly orthogonal to each other, ie the rows and columns are not aligned parallel to their respective coordinate axes of the image section to be analyzed.
- the noise results from the fact that the method for extracting local maxima in the method steps 125 and 126 (see FIG. 24) has also extracted such maxima as centers which are caused by the structure of the object surface and thus no centers of graphical symbols represent. These wrong centers should be ignored when wandering, so that they will not be included in the word matrix later.
- a center-wander algorithm distinguish the various types of noise and either correct a mid-point, or instead ignore it and fill in gaps due to missing midpoints.
- it should adaptively adapt to changes in the local slope of the symbol row or column caused by distortion, but at the same time correct for deviations from the expected pixel position caused by midpoint noise.
- Two methods according to the invention with such capabilities are described below, which differ in their transit time behavior.
- the first method described first works according to the "zig-zag" principle and estimates, starting from a starting point, an adjacent center whose adjacent center is again estimated and then refined, etc. The method can thus be classified in the category "Region Growing "are arranged, as is schematically illustrated in Fig. 32. It's easy and fast when the midpoint estimates are good and less noisy. However, especially with dense symbol codes with side lengths of the symbols of less than eight pixels, this method is usually inefficient due to the compute-intensive handling of outliers.
- a second method according to the invention will be described which initially moves to a four-neighborhood at each midpoint. Again, expected midpoint positions are estimated, but refined only locally. These neighborhoods are created separately for each center. Subsequently, adjacent four neighborhoods are summarized and thus the entire symbol matrix is reconstructed. This method can thus be classified in the region-merging category, as illustrated schematically in Fig. 39. Outliers are handled by allowing each center to be referenced only once and, moreover, each center belonging to the symbol matrix is a complete four As a result, outliers are discarded for which at least one of the required properties does not apply.
- Both methods assume a lattice-like structure of the center point distribution such that one symbol cell within the symbol matrix exists one right and one left as well as an upper and lower neighbor, as shown in FIGS. 12 and 14 for the non-edge data cells.
- the imaginary connecting lines from the right to the left and from the upper to the lower neighbor are ideally assumed to be orthogonal to each other, and should intersect at the center of the current symbol cell.
- the symbol center is started with the maximum confidence value (step 153), since it is assumed that this surely represents an actual center of the symbol.
- the confidence value is read from the amount image K2 (method step 124 according to FIG. 24) at the corresponding pixel position (method step 154 according to FIG.
- the center is searched in a local neighborhood of that estimate (step 133). This is shown schematically in FIG. 33.
- a rectangle can be spanned with the estimated coordinate as the center point (method step 130 according to FIG. 24) and in the dimensions known from the symbol template (method step 129).
- This rectangle is usually chosen to be slightly smaller than the dimensions of the symbol template, for example, 25 percent or at least two pixels less extension, to account for noise from slightly too close to symbol centers. It can now be tested (method step 131) whether all four corner points of this rectangle in the dilation image D (method step 125) have the same confidence or brightness value. If this is the case, it can be assumed that the estimated center of the symbol lies approximately in the center of the neighboring symbol and can be regarded as sufficiently correct. If the same confidence value is not present at each of the four corners, the rectangle formed can be shifted further to the right, up or down in order to reach this condition as far as possible (method step 132). The width of the displacements is limited by the dimensions of the symbol template, so that not the adjacent symbol cell can be skipped. By shifting such a rectangle, the first estimate can be corrected if the above assumption that symbol rows of the symbol matrix are parallel to the coordinate axis is not met by perspective distortion.
- This inventive method is more robust than the simple pixel search for the extracted center in a localized environment of the estimate. This prevents a noisy center from being set as a neighbor, possibly adjacent to a borderline of two symbol cells. Marking such a neighbor increases the risk of running into an upper or lower row of the symbol matrix as it continues to wander, resulting in incorrect mappings of the logical rows of the word matrix. If the required condition can not be achieved, the previous estimate can not be improved.
- the method steps 129 to 132 are optional and can be used for more robust roaming in heavily noisy center point images.
- the coordinates of the new center are currently set (step 142 of FIG. 24, step 157 of FIG. 31), the position pointer of the word matrix is incremented, and the word and the confidence value are written to the word matrix (step 143 of FIG. 24, step 158) as shown in FIG. 31).
- the line in the example first is run to the right as long as the pixel coordinates are not outside the image (step 159). Once the pixel coordinates are outside the image, the midpoint pointer is reset to the starting point of that line (step 160). Subsequently, this line is now run to the left according to the same principle (method steps 161 to 164). At the end, the first line is completely hiked and the values for each symbol are. Data cell of this logical line in the word matrix.
- the new logical row is entered by incrementing its position pointer. It is to be expected that in the vicinity of such a symbol, only small disturbances occur and no destroyed areas are found without or with strongly noisy center point information. In this way, all contiguous lines of the symbol matrix are hiked, whereby, for example, first all lines lying below (method step 168) of the symbol with maximum confidence are processed, and then those which are arranged above (method step 167) of this symbol, each time until the current pixel position the picture falls.
- a second independent estimation of the center point can take place by the position of the neighboring symbol not only from the previous symbol of the same logical line, but additionally from an already fully migrated logical over (method steps 143, 142 according to FIG. 24) or below the current line symbol position. Ideally, both estimates lead to the same result. If not, one of the results must be selected (step 141).
- the results of the previous migration of the current logical symbol line can also be subsequently verified according to the invention. For if, for example, in the column direction (method steps 129 to 133) a center pixel is found which satisfies the requirement of method step 131, but in the row direction (method steps 134 to 140) a center pixel is found which is so far away from the currently marked icon center that it represents two steps, it is possible that due to midpoint noise two midpoints have been marked within the same logical symbol cell. The last mark of the current line can thus be reversed and corrected. The already successful entry (method step 158 or 163 according to FIG. 31) in the word matrix is then likewise corrected accordingly.
- the word matrix can be output, which contains the information about the spatial distribution of the words and their respective confidence.
- a word matrix created in this way may contain values at logical positions where there are actually no symbols in the symbol matrix. This is because, according to the invention, partial center pixels are forced to maintain synchronization. These may need to be filtered out later.
- the word matrix can be expired row by row and column by column, and it is counted for each row or column how many of the existing words were read from symbol cells whose center was forced to migrate. This means that the center was not present in the center point image. If the detected number is above a threshold, for example 60 percent of the total number of logical symbols in a row or column, then that row or column can be completely removed from the word matrix or marked as unread to avoid misinformation in the reconstruction. A most probably most wrong reconstruction should be avoided as it In accordance with the invention built-in redundancy is often possible to obtain the information even in the absence of a reconstructed row or column.
- Fig. 38 an alternative method for migrating probable symbol centers is described, which can be applied particularly in the case of strong center noise.
- This process travels to each center pixel in the center point image of its four neighborhood, i. the data cells to the right and left as well as up and down or to the north, south, west, east, to the data cell with the center pixel. Subsequently, these four neighborhoods will be merged into one area or several contiguous areas which will then indicate the symbol matrix and its corresponding word matrix.
- the centers extracted therein are detected as symbol centers (step 202 of FIG. 38) and sorted by decreasing confidence (step 203).
- the confidence values corresponding to a center point are obtained from the amount image K2 (method step 124 according to FIG. 24). For example, in a Quick Sort procedure, it is possible to iterate from the head of the list to the list items.
- a memory similar to a matrix is created in the same dimensions of the center point image.
- the memory contains as elements of a data structure, which represents a symbol so that in it the four neighbors as well as the four symbols, whose neighbor is the center itself, can be stored as a symbol pointer. Further characteristics of the data structure are the pixel coordinates of the center pixel of the symbol, the associated word and the confidence value from the correlation image (process step 123 of Fig.
- the instances of the data structures are preinitialized according to the center point image and updated in the next steps.
- the symbol cells are grid-shaped within the symbol matrix, an inside symbol has direct neighbors to the east, south, west, and north.
- the coordinates of the four neighbors are respectively estimated (step 205 of FIG. 38).
- the center coordinate of the current symbol and the current data cell is respectively incremented, assuming that in such a local neighborhood, the lattice-like structure of the arrangement of the symbols is also given in perspective distortion. If the center point image is registered or equalized in perspective, the incrementation takes place parallel to the axis.
- the rotation parameter from steps 185 and 182 of FIG. 37 may be used.
- the step size is also derived from the dimensions of the symbol template.
- method step 208 By querying whether the neighbor is already marked (method step 208), ambiguities can arise within a neighborhood relationship, because the reference in method step 209 does not necessarily point to the current symbol, although conversely the current symbol always references that neighbor (method step 207). ,
- step 203 the previous sorting was done by decreasing confidence (step 203), because it is assumed that midpoints of high Confidence is very close to real symbolic centers. It is further believed that coordinates of neighboring cells can be more reliably estimated from such high confidence centers than from low confidence centers.
- ambiguities were likely caused by low-confidence symbol centers, they can subsequently be filtered out (step 212). Since it can be assumed that data cells heavily affected by midpoint noise within a symbol matrix have only low confidence values, these false centers can be reliably identified and do not cause any errors in the synchronization of the symbol cells. The midpoint noise within the relevant areas where the symbol code is located is thus removed. However, further midpoint noise outside the code area can not be filtered entirely.
- the search for a center in the local environment of the estimation in step 206 is divided into three steps. First, exactly the estimated position is checked for a midpoint. If there is no midpoint, then the one pixel neighborhood of the estimate is scanned so that quantization errors in the estimate are covered. If there is no mid-point there as well, the estimation as the center within a rectangle corresponding to the symbol template (method step 185 or 182) searches for the center point with maximum confidence, which is then selected.
- the slope parameters may be updated for valid symbols. After that, only those symbols are listed that are likely to be assigned to real symbol centers or center points. The sorting is retained and, starting with the first valid symbol, the first contiguous region is expired and the corresponding part of the logical word matrix is created (process step 213).
- the resulting subarea is mainly the result of the neighborhood assignments in process step 207, so that in most cases only the neighborhood pointers have to be followed (method step 219 or 220 followed by method step 225).
- the word matrix is initialized and a pointer to the current logical element is set (step 214).
- the position of the first element in the word matrix can be set by quantizing the pixel coordinate of the initial center (step 213), taking into account the dimensions of the symbol template (steps 185 and 182 of FIG. 37, respectively).
- the word and the confidence value are copied from the current symbol instance to the current position of the word matrix (process step 215 according to FIG. 38).
- the symbol instance is then marked as visited (step 216).
- the symbol neighbors of the eastern neighbors are tracked (step 217), this being any selection.
- the eastern neighbor of the current symbol instance is addressed and is then itself set as the current symbol (method step 225).
- the position pointer of the logical word matrix is incremented by one step in accordance with the direction of travel (step 226).
- the word and the confidence value are copied from the current symbol instance to the current position of the word matrix (step 227).
- the current symbol is marked as visited (method step 228). If the current symbol has further eastern neighbors or if the end of the midpoint image has not been reached, the iteration is continued in an easterly direction (method step 229).
- the direction is reversed and the symbol in which the iteration of this logical line has been started is searched in the opposite direction to the west (step 229). Once the end of the picture has been reached, a logical line has been completely added to the word matrix.
- any symbol of the current line is marked which has a valid south neighbor and followed this pointer (step 231). If no symbol has been found with a valid south neighbor, then from the symbol of the current line with the highest confidence from a center in the southern direction is set below specified by the symbol template step size. Is located right there or in a direct local environment caused by quantization errors (invalid) Center point, this is raised to a valid, otherwise a center is forced at this position.
- the instance located there is initialized or updated in the memory matrix of the symbol instances.
- the position pointer of the word matrix is incremented accordingly (method step 232), the word and the confidence value copied into the word matrix (method step 215) and the current symbol marked as visited (method step 216).
- step 230 Further southern lines are iterated until there are no more lines in the picture (step 230). Subsequently, any norther line not already iterated is run in the same pattern as the south (step 233). Thus, the first coherent part of the logical word matrix has been hiked. In method step 236, it is checked whether there are further valid symbols which have not yet been visited or hiked. These could mark the beginning of another contiguous part of the word matrix if the symbol code is split into several independent areas. Thus, further sub-areas are entered in the same way in the word matrix, it being ensured that no logical positions of the word matrix are addressed multiple times.
- the resulting word matrix with confidence values is output (method step 239).
- gaps may remain, and therefore each symbol does not have a valid neighbor, so that wandering of the subareas is not sufficient merely by tracking the pointers to neighboring symbols.
- gaps can occur in the case of extensive damage to the symbol code or with very strong internal midpoint noise. They are caused by neighborhood ambiguities or no neighbors.
- the estimation is done by following the neighbor icons of the current symbol to enter an adjacent row and then stop in the new row above or below the symbol to be estimated.
- the position of the symbol center there is used with the position of the current symbol center for estimation.
- the variance of the two known symbol centers can be used for their previous estimation. This information is stored in every symbol instance.
- an adaptive decision is made as to which of the implemented methods is used in a specific instance and how this method is adjusted if necessary by selecting specific parameters.
- the objective of this decision is to runtime on the condition that the reliability does not decrease.
- the confidence levels of the probable midpoints are taken into account for the decision.
- a threshold can be established for this, because a generally high level of confidence is an indication of low midpoint noise.
- the median of all confidence values can be calculated. With a symbol size of 16 by 16 pixels, lower center-point noise can also be expected than with a symbol size with side lengths of 6 by 6 pixels, which is why a complicated method as in FIG. 38 or the optional part in FIG. 24 does not have to be used.
- Another argument for a simpler procedure is a small relative number of probable center points relative to the size of the image detail. Also, a small expected perspective distortion may facilitate simpler methods. Taking these considerations into consideration, optional parts of the method of FIG. 24 may be omitted, or the method of FIG. 38 may be used to ensure high reliability.
- the word matrix may also contain, in data cells which are not associated with a symbol, a value resulting from a local maximum in the correlation image or from a forced center set to bridge gaps during the wandering.
- the application surface of the symbol code is not directly apparent due to the busyness or unoccupiedness of a data cell.
- the extracted word matrix may include an undetermined shift of the logical symbol cells to their template - the symbol matrix created after encoding.
- it is necessary to be able to unambiguously associate the read word matrix with its original template since the decoding to be executed may be bound to a specific symbol matrix, so that the additional information about the present form of the word matrix for successful decoding is a prerequisite. Since the graphic symbols in each symbol code keep their appearance unchanged and no special sequences of symbols for identifying a version of the symbol code are incorporated, each of the symbol codes other than external or internal form (method step 61 of FIG.
- the entire symbol code is subdivided into equally sized square subareas, which are likewise drawn in FIG. 15.
- the rasterization of the symbol matrix in subareas is selected so that several symbols can be assigned to a surface. If the rasterization were exactly one, then each block would contain at most a single symbol and would therefore be equivalent to the symbol matrix. But here coarser screening is desired to robustly characterize the shape of the symbol code.
- a part contains at least one or more symbols, it will be assigned the value one. If no symbol is contained in a subarea, it is assigned the value zero.
- the resulting histogram is stored in a database or a static memory (step 64 of FIG. 7).
- the database contains the area histograms of all symbol codes attached to objects (method step 65) and an assignment of the area histograms to the respective symbol codes.
- method step 66 If an unknown version of a symbol code has been hijacked in a detection station (method step 66), its version is then to be used on the basis of its structure. be determined before the decoding of the word matrix.
- method step 67 the matrix of symbol instances (method step 66) is iterated in order to calculate the center of gravity (method step 68). Only symbols whose center has not previously been enforced are considered. In order to further improve the calculation, it is also possible to sort out symbols whose center has not been estimated exactly or only with quantization errors during migration. Alternatively, based on the quantization of the captured image area by units of the dimensions of the symbol template, an upper limit of the number of expected symbol centers in the image can be defined, as long as the image detail is not significantly distorted in perspective.
- method step 70 the area histogram in the created database which is closest to or closest to the one currently available is searched for. Since all existing symbol codes have filed their area histogram there (procedural steps 60 to 65), the currently searched for must be contained there. For histogram comparison, two histograms are superimposed with their center of gravity, and then the difference between all the data cells of a histogram containing the values to the previously determined current histogram (method step 69) is calculated and their absolute values added up. The histogram from the database with the lowest error sum is selected next (method step 70).
- decoding method is parameterized (method step 72) and then an attempt is made for decoding (method step 73). If this attempt fails because the histogram assignment (70) was erroneous (74), then another closest histogram can be read from the database. This may be the case if symbol codes are too similar in their application area.
- the image processing outputs a word matrix which additionally contains confidence values for determining the recognition quality and recognition reliability.
- the confidence values are statistically independent for each word created by a single filter.
- a further method of decoding this word matrix may use the confidence values to allow efficient error correction.
- the word matrix is created by encoding from a binary data stream (step 90).
- the word matrix to be generated is subdivided into locally independent word blocks, each of which encodes a fixed word length of the binary data stream (method step 91).
- additional copies of such word blocks may be inserted into the resulting word matrix (step 94) (step 93).
- Such an encoded word matrix with confidence values is obtained from the image processing system (method step 95).
- the decoding algorithm identifies the independent code blocks within the word matrix. However, due to the introduced redundancy for decoding, not all of these code blocks are needed. Redundant code blocks can now be sorted in descending order according to the established confidence (method step 96), so that only those with high recognition reliability are considered when decoding the code blocks (method step 97). Because they are more truthful due to their recognition quality. In this case, if the error rate is extracted from the image processing error-free and present in the word matrix, then only valid code blocks are used for decoding, which reduces their transit time, since it is not unnecessarily attempted to decode a faulty code block. The reconstruction of the encoded binary data stream (method step 99) thus takes place efficiently.
- a symbol code according to the invention can be applied to a curved reflective surface, with or without translational transformation, with and without scaling change.
- cylindrical objects of metallic surface are provided with a symbol code. They are on a conveyor belt and are detected by the station in the order A, B, C.
- the image section captured by the recognition station is marked by a dashed rectangle at position A.
- the externally similar objects are marked with a symbol code for differentiation.
- the station controls a production diverter.
- the symbol code itself is distorted perspective in the captured image by the cylindrical shape of the surface. Due to the conveyor belt, there is no change in the rotation and scaling parameters so that they can be fixed. However, only parts of the symbol matrix may be visible, as in positions B and C. Since the graphic symbol code is dependent on special anchor symbols for position detection and equalization, the symbol code can be successfully extracted. Due to the redundant error correction provided by an encoding and decoding algorithm, the binary data set can also be recovered.
- FIG. 6 another application example is shown. There are several symbol codes applied on dull or reflective and curved surface, with rotational and translational transformation and different scaling.
- the upper part of Fig. 6 shows the object as seen from a video camera for imaging.
- the lower part of Fig. 6 is a side view of the same object is shown.
- the station with the video camera aligned in plan view serves for quality control. Because of local limitations of the inspection station and the requirement that the composite component being tested be evaluated in a single shot, the head of a threaded connection was selected to mark with a symbol code.
- An attachment on the side surfaces of the screw connections would mean that some of these objects would be covered in perspective by parts lying in front of them, so that not every symbol code can be detected simultaneously when the camera is aligned laterally.
- the application of the symbol code on the head of the screw requires a compact symbol code to accommodate the desired information in a small area can.
- Some of the screw connections have a domed shape of the head which causes perspective distortions of the symbol code. All heads are metallic, some shiny, others dull. In addition, the heads are of different material thickness, so that when burning by laser not the best possible contrast can be achieved.
- the screw connections have a different height, so that the symbol codes in the captured image are scaled differently. Due to the screwing, each symbol code in the image has different rotation parameters.
- each of the symbol codes of a head is decoded independently of each other, for which purpose an image detail is defined which contains only one of the symbol codes.
- Extraction methods in particular the normalized correlation used, allow each of the symbol codes to be reliably decoded.
- the invention describes a graphic symbol code and methods for its extraction in an image processing process.
- the two binary encoding binary symbols themselves have a complementary brightness distribution and each encode a single word, i. E. a binary value.
- Their inner contour is optimized so that the symbols can not only be read safely and reliably, but can be applied in a DPM process by firing by means of a laser on a mostly metallic or plastic-like object surface on a component.
- Specific properties of the burn process have been analyzed in order to achieve a robust graphical form of the symbols, which enables detection and discrimination even with common burn errors. In addition, this form minimizes application times since each symbol can be drawn in one stroke without dropping a stylus in a vector-oriented manner.
- an extraction method is selected that takes into account local changes in contrast ratios, such as those caused by inhomogeneous illumination, localized contamination, local surface material reflection, and / or material thickness limitations.
- a dilation filter is applied to a gray-scale image of confidence values so that no fixed threshold values have to be set and the determination of a maximum adaptive to the local gray scale environment in the Matching correlation image.
- the proposed symbol code according to the invention is a symbol code without specific symbols for synchronization or position detection and perspective equalization, whereby its density is high and there is no single-point-of-failure situation when such symbols can not be extracted.
- Disadvantages in the runtime behavior of the more complex correlation compared to morphological operators are inventively minimized by the fact that preferably complementary brightness of the graphic symbols only a single filtering is necessary to locate both types of graphical symbols. Preprocessing steps for image rendering are completely eliminated, and this additionally reduces the execution time.
- this symbol code has a property that can be exploited by a decoding algorithm according to the invention for the efficient use of redundant information for error correction.
- the confidence values make it possible to adaptively decide whether, with good quality, a faster, but not quite so robust algorithm for emigrating the graphic symbols and their transformation into a word matrix can be used, or a robust, but time-consuming algorithm is applied due to poor quality.
- the application area of a symbol code and its internal coding are freely selectable.
- the decoding takes place after the assignment of the extracted symbols to one of the predetermined possible forms of the symbol code.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
- Character Input (AREA)
Abstract
Description
Claims
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2009/054271 WO2010115464A1 (de) | 2009-04-08 | 2009-04-08 | Zweidimensionaler symbolcode und verfahren zum lesen des symbolcodes |
CN2009801597267A CN102460478A (zh) | 2009-04-08 | 2009-04-08 | 二维符号代码和用于读取符号代码的方法 |
JP2012503871A JP2012523598A (ja) | 2009-04-08 | 2009-04-08 | 2次元シンボルコードおよびそのシンボルコードを読取るための方法 |
KR1020117026656A KR20120023646A (ko) | 2009-04-08 | 2009-04-08 | 2차원 심볼 코드 및 이 심볼 코드를 판독하는 방법 |
EP09779276.6A EP2417561B1 (de) | 2009-04-08 | 2009-04-08 | Zweidimensionaler symbolcode und verfahren zum lesen des symbolcodes |
RU2011144680/08A RU2011144680A (ru) | 2009-04-08 | 2009-04-08 | Двухмерный символьный код и способ считывания символьного кода |
US13/262,850 US20120145779A1 (en) | 2009-04-08 | 2009-04-08 | Two-dimensional symbol code and method for reading the symbol code |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2009/054271 WO2010115464A1 (de) | 2009-04-08 | 2009-04-08 | Zweidimensionaler symbolcode und verfahren zum lesen des symbolcodes |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010115464A1 true WO2010115464A1 (de) | 2010-10-14 |
Family
ID=40717107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2009/054271 WO2010115464A1 (de) | 2009-04-08 | 2009-04-08 | Zweidimensionaler symbolcode und verfahren zum lesen des symbolcodes |
Country Status (7)
Country | Link |
---|---|
US (1) | US20120145779A1 (de) |
EP (1) | EP2417561B1 (de) |
JP (1) | JP2012523598A (de) |
KR (1) | KR20120023646A (de) |
CN (1) | CN102460478A (de) |
RU (1) | RU2011144680A (de) |
WO (1) | WO2010115464A1 (de) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104751342A (zh) * | 2015-04-21 | 2015-07-01 | 张川 | 一种用于追溯商品的商品信息编解码方法 |
CN104766217A (zh) * | 2015-04-21 | 2015-07-08 | 张川 | 一种商品信息编码方法、受干扰时的解码方法 |
RU2639672C2 (ru) * | 2012-06-06 | 2017-12-21 | Содио Лтд. | Якоря для навигации на основе местоположения и приложения дополненной реальности |
US10147214B2 (en) | 2012-06-06 | 2018-12-04 | Sodyo Ltd. | Display synchronization using colored anchors |
US10635958B2 (en) | 2015-01-28 | 2020-04-28 | Sodyo Ltd. | Hybrid visual tagging using customized colored tiles |
JP2021524106A (ja) * | 2018-05-15 | 2021-09-09 | ウープティックス ソシエダ リミターダ | バーコード検出方法 |
US11423273B2 (en) | 2018-07-11 | 2022-08-23 | Sodyo Ltd. | Detection of machine-readable tags with high resolution using mosaic image sensors |
Families Citing this family (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110029441A1 (en) * | 2009-07-30 | 2011-02-03 | Gupta Pronob K | Method to generate workflow tasks directly from flowcharts for processing events in event-driven judicial case management systems with workflow control |
US8584953B2 (en) * | 2011-02-24 | 2013-11-19 | Psion, Inc. | System and method for decoding barcodes not easily perceptible by human vision |
US8500023B2 (en) | 2011-02-24 | 2013-08-06 | Psion Inc. | System and method for providing sufficient illumination quality for barcodes captured with a color image sensor |
KR20130044652A (ko) * | 2011-10-24 | 2013-05-03 | (주)휴맥스 | 콘텐츠 수신기에서 정보 처리 방법 |
US20150169928A1 (en) | 2012-03-01 | 2015-06-18 | Sys-Tech Solutions, Inc. | Methods and a system for verifying the identity of a printed item |
CN104303192B (zh) | 2012-03-01 | 2016-11-23 | 系统科技解决方案公司 | 来自标记的特征的唯一识别信息 |
US20150379321A1 (en) | 2012-03-01 | 2015-12-31 | Sys-Tech Solutions, Inc. | Methods and a system for verifying the authenticity of a mark |
US9946947B2 (en) * | 2012-10-31 | 2018-04-17 | Cognex Corporation | System and method for finding saddle point-like structures in an image and determining information from the same |
TWI482096B (zh) * | 2013-01-07 | 2015-04-21 | Dinkle Entpr Co Ltd | 光學資訊記錄方法、光學資訊記錄裝置、光學資訊記錄載體與其讀取裝置 |
CN104021409B (zh) * | 2013-02-28 | 2017-03-01 | 国际商业机器公司 | 自动转换标志的方法和设备以及自动读取标志的方法 |
US8958471B2 (en) * | 2013-03-15 | 2015-02-17 | Intel Corporation | Method, apparatus, and system for sliding matrix scoreboard utilized in auto feedback closed loops |
US9056422B2 (en) | 2013-04-09 | 2015-06-16 | Massachusetts Institute Of Technology | Methods and apparatus for encoded textures |
US9928479B2 (en) | 2013-05-06 | 2018-03-27 | HURU Systems Ltd. | Management tracking identifier format, processing, and data associations |
JP6537332B2 (ja) * | 2014-04-28 | 2019-07-03 | キヤノン株式会社 | 画像処理方法および撮影装置 |
JP6045752B2 (ja) * | 2014-05-14 | 2016-12-14 | 共同印刷株式会社 | 二次元コード、二次元コードの解析システム及び二次元コードの作成システム |
DK3742340T3 (da) * | 2014-09-23 | 2022-08-22 | Sys Tech Solutions Inc | Fremgangsmåder og et system til verificering af et mærkes autenticitet |
US9741012B2 (en) | 2014-11-05 | 2017-08-22 | HURU Systems Ltd. | Systems for secure tracking code generation, application, and verification |
US10192198B2 (en) | 2014-11-05 | 2019-01-29 | HURU Systems Ltd. | Tracking code generation, application, and verification using blockchain technology |
JP6090292B2 (ja) * | 2014-12-02 | 2017-03-08 | トヨタ自動車株式会社 | マーカ生成装置、マーカ認識装置、及びプログラム |
US9940572B2 (en) | 2015-02-17 | 2018-04-10 | Sys-Tech Solutions, Inc. | Methods and a computing device for determining whether a mark is genuine |
US10140563B2 (en) * | 2015-04-16 | 2018-11-27 | Infotoo International Limited | Information bearing device |
CA2989349C (en) | 2015-06-16 | 2018-07-17 | Sys-Tech Solutions, Inc. | Methods and a computing device for determining whether a mark is genuine |
US10171764B2 (en) * | 2015-08-27 | 2019-01-01 | Jabil Inc. | Apparatus, system and method for a manufactured imager system |
US10685317B2 (en) * | 2015-09-22 | 2020-06-16 | United States Postal Service | Trackable postage |
US9501682B1 (en) * | 2015-10-12 | 2016-11-22 | Symbol Technologies, Llc | Method of, and arrangement for, reading two-dimensional symbols by translating encoded symbol characters from a local, to a global, character set |
US10311596B2 (en) * | 2015-10-16 | 2019-06-04 | Seiko Epson Corporation | Image processing device, robot, robot system, and marker |
US9396422B1 (en) * | 2015-11-19 | 2016-07-19 | Xerox Corporation | Methods and systems for localizing aztec codes |
US10235547B2 (en) * | 2016-01-26 | 2019-03-19 | Hand Held Products, Inc. | Enhanced matrix symbol error correction method |
CA3016131C (en) | 2016-03-14 | 2019-10-22 | Sys-Tech Solutions, Inc. | Methods and a computing device for determining whether a mark is genuine |
CN106022425B (zh) * | 2016-05-15 | 2019-09-10 | 杭州荣旗科技有限公司 | 一种分层结构二维码的编码及译码方法 |
CN107172386B (zh) * | 2017-05-09 | 2018-06-29 | 西安科技大学 | 一种基于计算机视觉的非接触式数据传输方法 |
JP2019021165A (ja) * | 2017-07-20 | 2019-02-07 | 株式会社デンソーウェーブ | 二次元コード及び二次元コード読取装置 |
US10762405B2 (en) * | 2017-10-26 | 2020-09-01 | Datalogic Ip Tech S.R.L. | System and method for extracting bitstream data in two-dimensional optical codes |
KR102066391B1 (ko) | 2017-11-16 | 2020-01-15 | 상명대학교산학협력단 | 입체기반 다차원 심볼로지 시스템의 정보 삽입 장치 및 방법 |
CN108830362B (zh) * | 2018-04-28 | 2021-07-02 | 深圳果力智能科技有限公司 | 一种图案编码识别方法和系统 |
CN110411446B (zh) * | 2018-04-28 | 2023-09-08 | 深圳果力智能科技有限公司 | 一种机器人的路径规划方法 |
CN109389386B (zh) * | 2018-09-13 | 2020-09-29 | 阿里巴巴集团控股有限公司 | 一种扫码控制方法、装置及系统 |
US11126808B1 (en) | 2019-05-30 | 2021-09-21 | Owens-Brockway Glass Container Inc. | Methods for dot code image processing on a glass container |
FI20195512A1 (en) | 2019-06-14 | 2020-12-15 | Kuvio Automation Oy | A method for correcting a geometrically distorted QR code |
ES2817652B2 (es) * | 2019-10-04 | 2021-10-19 | Univ Murcia | Codigo visual, procedimiento para generar un codigo visual y procedimiento para decodificar un codigo visual |
US11429804B2 (en) * | 2020-09-18 | 2022-08-30 | Google Llc | Platform for registering and processing visual encodings |
US11816529B2 (en) * | 2021-01-11 | 2023-11-14 | Zebra Technologies Corporation | Methods and apparatus for providing out-of-range indications for imaging readers |
CN113572276B (zh) * | 2021-08-02 | 2024-01-26 | 鲁东大学 | 基于线圈结构进行无线充电对位及信息传递的系统与方法 |
DE102021122928A1 (de) | 2021-09-06 | 2023-03-09 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum Betreiben eines beweglichen Roboterarms, Computerprogrammprodukt sowie Roboterarm |
CN113761961B (zh) * | 2021-09-07 | 2023-08-04 | 杭州海康威视数字技术股份有限公司 | 一种二维码识别方法和装置 |
CN114998454B (zh) * | 2022-05-09 | 2023-05-16 | 西南交通大学 | 一种动态多色码的生成、解析方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5869828A (en) * | 1996-04-02 | 1999-02-09 | Braginsky; Philip Yale | Color and shape system for encoding and decoding data |
US6220333B1 (en) * | 1998-11-06 | 2001-04-24 | Jay S. Cantwell | Bar code stencil and method of use |
US20020028015A1 (en) * | 2000-05-09 | 2002-03-07 | Tack-Don Han | Machine readable code image and method of encoding and decoding the same |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6454168B1 (en) * | 1998-09-14 | 2002-09-24 | Psc Scanning, Inc. | Correlation and stitching techniques in a bar code scanning system |
DE19926194C2 (de) * | 1999-06-09 | 2001-05-10 | Datasound Gmbh | Datenstreifen und Verfahren zur Kodierung und Dekodierung gedruckter Daten |
JP2002056346A (ja) * | 2000-08-10 | 2002-02-20 | Ryusaku Sato | Code−256(ハーフ&ハーフコード) |
US6708884B1 (en) * | 2002-06-25 | 2004-03-23 | The United States Of America As Represented By The Secretary Of The Army | Method and apparatus for rapid and precision detection of omnidirectional postnet barcode location |
JP4725148B2 (ja) * | 2005-03-18 | 2011-07-13 | カシオ計算機株式会社 | 印字装置及びプログラム |
JP4669458B2 (ja) * | 2006-09-19 | 2011-04-13 | オムロン株式会社 | 物品管理用コードのマーキング処理システムおよび物品管理用コードのマーキング方法 |
CN101159028B (zh) * | 2007-08-20 | 2015-05-13 | 中兴通讯股份有限公司 | 多图形化矩阵式二维条形码实现方法及装置 |
US8267321B2 (en) * | 2008-02-11 | 2012-09-18 | International Business Machines Corporation | Enhanced-density barcode |
-
2009
- 2009-04-08 CN CN2009801597267A patent/CN102460478A/zh active Pending
- 2009-04-08 RU RU2011144680/08A patent/RU2011144680A/ru not_active Application Discontinuation
- 2009-04-08 JP JP2012503871A patent/JP2012523598A/ja active Pending
- 2009-04-08 EP EP09779276.6A patent/EP2417561B1/de not_active Not-in-force
- 2009-04-08 US US13/262,850 patent/US20120145779A1/en not_active Abandoned
- 2009-04-08 WO PCT/EP2009/054271 patent/WO2010115464A1/de active Application Filing
- 2009-04-08 KR KR1020117026656A patent/KR20120023646A/ko not_active Application Discontinuation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5869828A (en) * | 1996-04-02 | 1999-02-09 | Braginsky; Philip Yale | Color and shape system for encoding and decoding data |
US6220333B1 (en) * | 1998-11-06 | 2001-04-24 | Jay S. Cantwell | Bar code stencil and method of use |
US20020028015A1 (en) * | 2000-05-09 | 2002-03-07 | Tack-Don Han | Machine readable code image and method of encoding and decoding the same |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2639672C2 (ru) * | 2012-06-06 | 2017-12-21 | Содио Лтд. | Якоря для навигации на основе местоположения и приложения дополненной реальности |
US10147214B2 (en) | 2012-06-06 | 2018-12-04 | Sodyo Ltd. | Display synchronization using colored anchors |
US10464154B2 (en) | 2012-06-06 | 2019-11-05 | Sodyo Ltd. | Anchors for location-based navigation and augmented reality applications |
US10635958B2 (en) | 2015-01-28 | 2020-04-28 | Sodyo Ltd. | Hybrid visual tagging using customized colored tiles |
CN104751342A (zh) * | 2015-04-21 | 2015-07-01 | 张川 | 一种用于追溯商品的商品信息编解码方法 |
CN104766217A (zh) * | 2015-04-21 | 2015-07-08 | 张川 | 一种商品信息编码方法、受干扰时的解码方法 |
CN104751342B (zh) * | 2015-04-21 | 2019-01-11 | 张川 | 一种用于追溯商品的商品信息编解码方法 |
JP2021524106A (ja) * | 2018-05-15 | 2021-09-09 | ウープティックス ソシエダ リミターダ | バーコード検出方法 |
JP7200265B2 (ja) | 2018-05-15 | 2023-01-06 | ウープティックス ソシエダ リミターダ | バーコード検出方法 |
US11423273B2 (en) | 2018-07-11 | 2022-08-23 | Sodyo Ltd. | Detection of machine-readable tags with high resolution using mosaic image sensors |
Also Published As
Publication number | Publication date |
---|---|
RU2011144680A (ru) | 2013-05-20 |
JP2012523598A (ja) | 2012-10-04 |
CN102460478A (zh) | 2012-05-16 |
EP2417561A1 (de) | 2012-02-15 |
KR20120023646A (ko) | 2012-03-13 |
US20120145779A1 (en) | 2012-06-14 |
EP2417561B1 (de) | 2013-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2417561B1 (de) | Zweidimensionaler symbolcode und verfahren zum lesen des symbolcodes | |
DE69835358T2 (de) | Verfahren zur Korrektur der Verzerrung beim Abtasten eines optischen Codes | |
DE69504069T2 (de) | Verfahren und gerät zu dekodierung von zweidimensionalen zeichen im raumbereich | |
DE69130786T2 (de) | Verfahren zum Kodieren digitaler Informationen | |
DE69810581T2 (de) | Merkmalkorrelator für Fingerabdrücke | |
DE69603614T2 (de) | System und verfahren zum lesen von paketinformation | |
DE68920617T2 (de) | Artikel, Verfahren und System zur hexagonalen Datenkodierung. | |
EP3428834B1 (de) | Optoelektronischer codeleser und verfahren zum lesen von optischen codes | |
DE68925059T2 (de) | Verfahren und Gerät zur polygonalen Datendekodierung | |
DE69226846T2 (de) | Verfahren zur Bestimmung von Wortgrenzen im Text | |
DE19960555B4 (de) | Verfahren zum Auffinden und Lesen eines zweidimensionalen Strichcodes | |
DE2417282C3 (de) | Vorrichtung zum Lesen von Fingerabdrücken | |
DE69131394T2 (de) | Maschinenlesbares Zeichen mit Mehrfachauflösung | |
DE3425449A1 (de) | Verfahren und vorrichtung zur alphanumerischen handschriftenerkennung | |
EP1260933A2 (de) | Verfahren zum Erfassen von zweidimensionalen Codes | |
EP2558976B1 (de) | Verfahren zur konkretisierung eines substrates | |
DE102013112040B4 (de) | System und Verfahren zum Auffinden von sattelpunktartigen Strukturen in einem Bild und Bestimmen von Informationen daraus | |
DE102009016598A1 (de) | Zweidimensionaler Symbolcode und Verfahren zum Lesen des Symbolcodes | |
EP2639738A1 (de) | Verfahren und Lesegerät zur Erfassung einer Mehrzahl nacheinander auf eine Anzeigevorrichtung dargestellter zweidimensionaler Codes | |
DE102020120887B4 (de) | Verfahren zum erfassen einer einhängeposition eines auflagestegs und flachbettwerkzeugmaschine | |
EP1288843A2 (de) | Verfahren zur Erkennung eines Codes | |
EP3123393B1 (de) | Verfahren zur optischen erkennung von zeichen | |
EP0125266B1 (de) | Verfahren und vorrichtung zum identifizieren von gegenständen | |
EP1333402A1 (de) | Redundanter zweidimensionaler Code und Decodierverfahren | |
CH708994B1 (de) | Verfahren und Vorrichtung zum Identifizieren eines zweidimensionalen Punktcodes. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200980159726.7 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09779276 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2009779276 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2012503871 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 8059/CHENP/2011 Country of ref document: IN |
|
ENP | Entry into the national phase |
Ref document number: 2011144680 Country of ref document: RU Kind code of ref document: A Ref document number: 20117026656 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 13262850 Country of ref document: US |