EP1779527A2 - Channel coding method with associated code and demodulation and decoding method and devices - Google Patents

Channel coding method with associated code and demodulation and decoding method and devices

Info

Publication number
EP1779527A2
EP1779527A2 EP05771924A EP05771924A EP1779527A2 EP 1779527 A2 EP1779527 A2 EP 1779527A2 EP 05771924 A EP05771924 A EP 05771924A EP 05771924 A EP05771924 A EP 05771924A EP 1779527 A2 EP1779527 A2 EP 1779527A2
Authority
EP
European Patent Office
Prior art keywords
cells
cell
inversion
coding
decoding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
EP05771924A
Other languages
German (de)
French (fr)
Inventor
Hermann Tropf
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
TROPF, HERMANN
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from DE200410038601 external-priority patent/DE102004038601B4/en
Application filed by Individual filed Critical Individual
Publication of EP1779527A2 publication Critical patent/EP1779527A2/en
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/611Specific encoding aspects, e.g. encoding by means of decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/47Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37

Definitions

  • This invention relates to channel coding and the associated decoding of signals related to one-dimensional signals (e.g., timing signals) as well as to two-dimensional signals (e.g., images), corresponding encoding and decoding devices.
  • one-dimensional signals e.g., timing signals
  • two-dimensional signals e.g., images
  • RS codes Very popular and widespread are Reed-Solomon (RS) codes.
  • the decoding of RS codes is purely algebraic and very difficult to understand and unintelligible to the user; there are no ready-made recipes for the integration of soft-decision methods. If one wishes to realize application-specific optimizations of an overall system (with coding, modulation, channel, demodulation and decoding), one must use the known (algebraic) coding and decoding as a finished black box in the overall system; a system optimization can then be realized only around this box, genuinely interlocked modifications, e.g.
  • the decodulator can inform the decoder with what certainty it is making its decisions This information is used by the decoder for decoding by optimizing a numerical security measure extending over several such decisions).
  • turbo codes Two concatenated convolutional codes separated by terleaving, iteratively decoded by soft-in-soft-out Viterbi decoding.
  • Turbo codes can in certain cases decode astonishingly strongly disturbed signals, but they also have disadvantages: the iterative method of operation leads to unpredictable computing time; Turbo codes require convolutional codes with infinite impulse response (HR). Such codes carry the risk of catastrophic error propagation.
  • Good convolutional codes can only be designed using computer-aided design; there are no systematic design methods for "good" convolutional codes (even the definition of a quality criterion is difficult). The effects of Turbo Codes are very difficult to understand, so designing and optimizing is very difficult.
  • the general object of the invention is to provide a robust, technically easily realizable coding and decoding with associated devices whose mode of operation is transparent in their individual steps, so that for the optimization of an overall system at various points, application-specific modifications possible are.
  • Special task is the integration of demodulation and decoding.
  • the data should be able to be differentially evaluated in order to bring about greater security against low-frequency signal fluctuations.
  • the decoding automatically adapts to fluctuations in signal properties.
  • the mode of action is in theirs Single steps transparent. This greatly simplifies application-specific modifications for self-referencing and integration of the demodulation into the decoding process for the optimization of an overall system, with reliability-optimizing decoding directly at the signal level.
  • a method for coding information that can be represented by partial information, wherein cells are to be assigned cell values by the coding, characterized by
  • Inversion cell and at least one non-inversion cell wherein the cells within each cell tuple are either only inversion cells or only non-inversion cells for each preceding coding step. d) for at least one coding step:
  • the cell tuples are cell pairs with an inversion cell and a non-inversion cell.
  • Signal values in particular pixel values of images, can be assigned to the cell values.
  • the pixels can each assume a value of binary values.
  • a further embodiment of the invention wherein a plurality of pixels are assigned to a cell, wherein the pixels are the pixels of an image or an image sequence or the signal values of another signal, is characterized by assignment of pixel patterns to the cell values.
  • a further embodiment of the invention is characterized by a differential coding of the part information processed first in advance.
  • a further embodiment of the invention comprises: XORing the result with a predetermined pattern, wherein the predetermined pattern in pictures is a two-dimensional checkerboard pattern and in the case of one-dimensional signals is a 101010... Pattern.
  • An alternative embodiment comprises: XORing the result with a random pattern.
  • a placement of the cells, in which at least 3 sets of cell pellets can be formed, which are separated from one another via at least one cell, can be provided.
  • an encoding device for information that can be represented by partial information, wherein cells are to be assigned cell values by the coding, characterized by registers with cells, where at least one cell is invertible in coding step by step as a function of partial information per register, preferably via XOR. Gate, wherein at least one invertible cell is interpretable as an inversion cell of one or more cell tubers with inversion cells and non-inversion cells, wherein the cells within each cell tuple for each preceding coding step are either only inversion cells or only non-inversion cells.
  • the registers can be arranged in a pipeline.
  • the invention further comprises a transmitting device which uses a coding method according to one of the embodiments with a phase modulator for at least one feature dimension.
  • a fixed synchronization or referencing pattern is added to the transmission protocol after encoding, preferably in the form of a 010101 series of at least 6 cells.
  • a marking device with deforming marking in particular needle embossing, with an encoding method according to the invention for the marking, the deformation strength being modifiable, preferably via the stop strength or the stroke of the needle, and a marking device with deforming marking, in particular scratch embossing, with a coding method according to the invention for the marking, wherein the direction of line elements which can be connected to one another is modifiable for signal modulation.
  • a labeling device with a Codierverfah ren for the lettering according to the invention, wherein for signal modulation, the width of lines or the size of dots or the color of dots or the size and color of dots or the direction of bar elements is changeable.
  • the invention also encompasses a code carrier for identification purposes with a code which has been created by a coding method according to the invention.
  • the invention also encompasses a method for decoding a code, such as can arise from a coding method according to the invention, wherein the information to be decoded can be represented by partial information and where the partial information is obtained from cells to be decoded, if it is referred to as an encoding method according to the invention emerged,
  • the partial information from cells to be decoded is obtained by cell-cell-wise comparison of inversion cells with non-inversion cells and comparison-result-dependent determination of the relevant partial information
  • C) by comparing result-dependent linking of an inversion information with the inversion cells of the relevant decoding step, provided that at least one decoding step according to B) follows.
  • the comparison of inversion cells and non-inversion cells can be carried out by comparison of cell values which are derived from the cells.
  • the comparison of inversion cells and non-inversion cells can also be done by comparing the contents of the cells in question.
  • a comparison result can be determined by evaluating several comparisons of cell values according to a quality function, preferably via the median of individual comparison measures.
  • a comparison result can be determined by evaluating cell values according to a quality function, by comparing mean values via inversion cells on the one hand with mean values via non-inversion cells on the other hand.
  • a comparison result can also be determined by evaluating a plurality of comparisons, preferably via the median of comparison functions to a plurality of pixels of the respective cells or
  • a link to an inversion information can be carried out and the cell values after the last decoding step can be interpreted as an error or error signal for a quality assessment.
  • the invention comprises a decoding method with a multi-valued logic in the coded cell values, in particular with corresponding multivalued phase modulation at the signal level and with polyvalent fuzzy logic at the cell values to be decoded.
  • Also provided according to the invention is a decoding device for information which can be represented by partial information, from a code in which cells are assigned cell values in each case,
  • registers each comprising register cells, of which at least one register is used for receiving the information to be decoded, and wherein at least one register cell can be reversibly decoded step by step depending on the decoded partial information, preferably via XOR Gate, wherein at least one invertible register cell as an inversion cell of one or more cell tubers with inversion cells and non-inversion cells is inter ⁇ pretierbar, wherein the cells within each cell tuple for each subsequent decoding step either only inversion cells or only non-inversion cells, the partial information is obtained from register cells can be determined by cell-cell-wise comparison of inversion cells with non-inversion cells and comparison-result-dependent determination of the relevant partial information.
  • the decoding device may comprise summation and threshold elements with which it is possible to decide on partial information to be decoded.
  • At least one comparison can be realized by a fuzzy XOR gate.
  • Also provided according to the invention is a decoding device with a decoding method of the invention for a code in which first coded partial information is coded differentially, characterized by a circuit the decoded partial information for the inversion of the differential coding can be temporarily stored.
  • a receiving device with a decoding device as well as a code reading device for a code, which can arise according to one of the coding methods of the invention, characterized by an image recording device in which at least one image recording parameter, in particular Lighting parameter, can be influenced by a quality measure that is dependent on an error image.
  • FIG. 12 is an explanation of FIG. 12,
  • FIGS. 15 to 19 show various implementation variants
  • Figs. 22 to 31 show an example of multi-dimensional auxiliary arrangements.
  • An image is referred to as a two-dimensional signal, a one-dimensional signal also as a time signal.
  • one-dimensional signals in which the signal values are modulated simultaneously according to several dimensions (eg according to amplitude and phase at the same time or in the case of quadrature amplitude modulation), here becomes Distinction of several feature dimensions (although these signals are simply called "multi-dimensional signals" in the coding literature).
  • a color image signal is accordingly addressed as a two-dimensional signal which is modulated, for example, in the three independent feature dimensions color angle, saturation and intensity.
  • An image may be preprocessed into a one-dimensional signal, e.g. by scanning a barcode (1-D code).
  • a matrix code is a two-dimensional array of cells, e.g. in the popular ECC-200 standard.
  • the general block diagram of the message transmission with channel coder, modulator, channel, demodulator and decoder is shown in FIG. 14:
  • the information u to be transmitted is supplied to a channel coder COD with redundant coding x, which in turn is supplied to a modulator MOD which receives the signal S generated.
  • the coding takes place with the aim that, after a faulty transmission via the channel CH (disturbed signal S *), the original information can be reconstructed again.
  • the demodulator provides receive values y, which are converted by the decoder into an estimate u of the original information u.
  • the information is represented by an alphabet of information symbols.
  • the information symbols are infobits with the symbols “0" and “1”, another example would be a ternary alphabet with the symbols “1", "2", "3”.
  • infobits One or more information symbols occurring (in particular: infobits) are summarized in the following partial information.
  • the information thus consists of partial information.
  • the encoder provides code symbols (code bits in binary case) at the output.
  • the modulator transforms the code symbols into a signal that can be decomposed into cells.
  • cells represent image areas of at least one pixel (pixels), for example the (possibly pre-segmented) modules of a two-dimensionally printed matrix code or the image content of small parcels which uniformly scans the overall image.
  • the cells can also consist of only one pixel, then the term cell is identical to the term pixel.
  • the image areas are La, but not necessarily, contiguous.
  • the term pixel is also used here for individual values of any one-dimensional or multidimensional signal.
  • the content of cells can be represented by cell values.
  • cell values are symbolic or numerical representations of the contents of cells.
  • a logical 0 cell (cell value 0) may be realized by a vertical bar and a logical 1 cell (cell value 1) by a horizontal bar, the areal extent of an otherwise unspecified spot ( Dot), or simply by dark or bright pixels, different colors, etc. Cases with more than 2 possible cell values are eg 1 for red, 2 for green, 3 for blue.
  • the cell values are i.a.
  • the cell values can exist in a dimensioned manner, but the cell values can also represent several dimensions in summary.
  • the modulator transforms the code symbols into a signal which can be decomposed into cells, whereby ia, but not necessarily, a one-to-one correspondence exists between the code symbols at the output of the coder and the possible implementations of the cells at the output of the coder Cell values can be represented.
  • a one-to-one correspondence exists between the code symbols at the output of the coder and the possible implementations of the cells at the output of the coder Cell values can be represented.
  • the task of coding is the generation of cell values.
  • cell values appear as reception values y, in which case i.a. the number of possible cell values is greater than the number of possible cell values in coding.
  • ideal "1" signals with the cell value "9” and ideal "0" signals with the cell value "1” appear, with arbitrary, e.g. all intermediate values 2... 8, in order to express how well the cell content corresponds to the corresponding ideal signals.
  • "5" lies exactly in the middle and expresses that the cell content can not be demodulated.
  • soft-decision methods can be realized.
  • the demodulator can also provide "0" - "l” values separately from reliability values.
  • the modulation is performed after the channel coding and the decoding after the demodulation, each independently.
  • the demodulator converts the ia disturbed signal into output symbols of an output alphabet y.
  • the number of output symbols y of the demodulator is identical to the number of symbols x at the input of the modulator; the decoding is purely algebraic.
  • Soft-Decision has the number of output symbols y of the demodulator greater than the number of symbols x at the input of the modulator.
  • the decoding comprises the stepwise extraction of the partial information either from cell values (demodulation and decoding separated) or from cell contents, ie directly from the Signal (demodulation and decoding integrated).
  • Compressive source encoding or decoding or other preprocessing / postprocessing e.g., differential precoding
  • the example Fig. 1 to 10 comes from the field of image processing; the transfer of the following discussion to one-dimensional signals is entered into places where portability may not be obvious.
  • Example FIGS. 1 to 10 Information to be encoded with 10 bits is to be encoded, the information bits 1 to 10.
  • the partial information is one bit each, and 10 encoding steps are required for each one bit ⁇ derlich.
  • Another subdivision into partial information would be, for example, with the possible cell values 1, 2, 3; then correspondingly fewer coding steps would be required. The same applies, for example, if you combine two bits each and work with four possible cell values.
  • the 30 cells are to be used redundantly for coding the 10 information bits.
  • the cells consist in the example of individual binary pixels, possible cell values are initially 0 or 1.
  • the arrangement of the cells does not necessarily correspond to the final arrangement; the arrangement used for the data transmission or data storage (for example inscription with a dot code) will as a rule deviate from the arrangement described here because at the end a scattered placement, similar to interleaving, is performed (see below).
  • the allocation of the same basic values is not technically necessary; one could assign differently and, when decoding in the case of the comparison operations between every two cells (see below), invert the interpretation if the initial assignment of the relevant cells is different.
  • a set Ml of cells which in our example specifically comprises all cells, designated by "i" in FIG.
  • These cells in Ml are all now inverted if the first information bit is 1; if it is 0 they are all not inverted.
  • the cells in M1 are XOR-linked to the first information bit, (assuming the base value 0, this corresponds to a copy of IO to the cells of M1).
  • Cells of cell quantities treated in this way are called inversion cells in the following and are represented by "i" in FIGS. 1 to 10.
  • uninversion cells remain unchanged, irrespective of the value of the information bit, represented by "n” in FIGS. 1 to 10.
  • a set of inversion cells (the remaining cells are non-inversion cells) and a set of cell tuples 1, wherein a cell tuple consists of at least one inversion cell and at least one non-inversion cell of this partial information.
  • inversion cells and non-inversion cells may belong to several cell tubers.
  • step configuration The partial information-specific - and thus dependent on the coding step - division into inversion cells and non-inversion cells and the definition of the partial information-specific cell tuples are referred to below as step configuration, the step configurations of all claimed steps taken together briefly called the configuration.
  • the configuration is predetermined in advance, manually or with computational program, and is known to the encoder and decoder.
  • each inversion cell belongs to a cell tuple, and each cell tuple consists of exactly one inversion cell and one non-inversion cell, and one inversion cell belongs to only one cell tuple at a time.
  • each cell tuple consists of exactly one inversion cell and one non-inversion cell.
  • Some cell tuples 1 are indicated in the figures as double arrows between each one inversion cell and one non-inversion cell.
  • the amount M2 of cell tubers comprises six inversion cells and six non-inversion cells.
  • the amount M2 of cell tubers comprises six inversion cells and six non-inversion cells.
  • the inversion cells of the second step are XOR-linked to the second information bit. That if they have already been inverted due to the first information bit and are now inverted on the basis of the second information bit, they again assume the original basic value.
  • the set M3 comprises in our example exactly the same cells as M2.
  • inversion cells and non-inversion cells again, no special system needs to be used.
  • an additional rule must be observed (which is already fulfilled for Ml and M2 in each case):
  • the cells of a cell tuple must have all been treated the same in XOR operations of previous steps, regardless of the current value of the preceding information bits. This is fulfilled if, for each preceding coding step, they are in each case either all inversion cells or all non-inversion cells.
  • the minimum distance can be increased.
  • Figs. 1 to 10 corresponds to claim 2, i. that all inversion cells listen to a partial information of at least one cell tuple of this partial information.
  • FIG. 11 An arrangement according to claim 1 is shown in FIG. 11, similar to FIG. 6, where, however, compared to FIG. 6, the quantity M6 is reduced, but the remaining inversion cells "i" are retained, marked “I” in FIG , decoding:
  • the decoding is based on the comparison of the contents of inversion cells and non-inversion cells within cell tuples.
  • the cell tuple sets and thus the partial information are processed in the opposite order to coding, here MIO, M9, ... Ml. Since in the example we have binary-coded information symbols and binary coded cells, and since the cell tuples here are cell pairs with one inversion cell and one non-inversion cell, the procedure here is to describe as follows: If the cells of a cell pair considered are unequal, that speaks for itself that the associated current information bit is set; if they are the same, this indicates that the corresponding current information bit is not set.
  • the decision is preferably made by a majority decision of the participating cell pairs of the cell tuple of the step configuration.
  • the inversion cells are inverted to the current step (as a matter of course, corresponding flags can be set). In this way, the information bits 10, 9,... 2 are successively decoded.
  • the information bit 1 again represents a special case:
  • the decision is not made via a comparison of different cells, but via a direct (preferably majority decision) comparison with the base value set in the coding, ie 0 or 1.
  • the first generalization is the transition from conventional logic to a fuzzy approach.
  • the inversion is carried out by:
  • INV (A) (9-A) +1.
  • the equality request on decoding is replaced by an XOR operation on the respective values and the query whether the result of this XOR operation is> 5 or ⁇ 5.
  • the equality query is not performed directly on the cells of a cell tuple, but instead the values of several identical cells (inversion cells or non-inversion cells) are added conventionally and thereafter, with appropriate normalization, the number of cells involved, the> 5 / ⁇ 5 query performed. In between, it may still be advisable to set suitable non-linear characteristics to suppress single small errors.
  • Advantageous as majority decision is also the application of the median operator over the results of several cell pairs, with subsequent> 5 / ⁇ 5 comparison.
  • Fig. 16 shows such a majority decision with fuzzy approach.
  • the cells are signaled with "up bar” or “down bar”.
  • the demodulator calculates received values between 1 and 9 for the received cells, with the meaning: 1: safe downwards 2: almost safe downwards ... 5: insecure ... 8: almost safe upwards 9: safely upwards ,
  • the decoder works only on the basis of fuzzy XOR comparisons of such reception values. In order to bring about a majority decision with evaluation of the collateral, the obtained XOR values are simply averaged and the result of the mediation m compared with "5".
  • FIG. 17 shows another example with a majority decision based on the fuzzy approach.
  • the demodulator calculates reception values between 1 and 9 for the received cells, with the meaning: 1: 0 degree 2: almost certainly 0 degrees ... 5: uncertain ... 8: almost certainly 180 degrees 9: sure 180 degrees.
  • the decoder works only on the basis of fuzzy XOR comparisons of such reception values. In order to bring about a majority decision with evaluation of the collateral, the obtained XOR values are simply averaged and the concatenation result m compared with "5".
  • the second generalization is the integration of demodulation by direct comparison at the signal level.
  • the comparison can preferably and according to the invention be realized directly on the signal plane (pixel plane), in the case of time signals, for example by correlation, in the case of images, for example by comparison of the relevant image sections. This has obvious advantages in particular if the properties of the cell contents (locally or temporally) change at low frequency.
  • Fig. 18 shows a procedure with direct signal comparison.
  • the cells are signaled with "up-bars" or “down-bars”.
  • Demodulation and decoding take place in one based on a comparison of cell contents.
  • a majority decision on such comparison results As an illustration, we shall again work with values 1 ... 9, here with the meaning:
  • the majority decision can in turn be made by averaging such results and subsequent comparison of the mean m with the value "5".
  • the inversion cells of this step are to be inverted. Since the cell contents, that is, the signals, can not always be inverted (this only works in special cases, for example in the case of binary amplitude modulation), it is proposed here to substitute an auxiliary cell field with binary values assigned to the cells. If now an inversion cell is to be inverted, technically the respective binary auxiliary cell is inverted. In cell comparisons in the following steps, it should now be noted how many of the cells to be compared have auxiliary cells with log. "1" zuge ⁇ are assigned. If the number is odd, the result of the comparison is inverted. Of course, the auxiliary field is initialized with log. Filled "0".
  • Fig. 19 shows another example with direct signal comparison. As in Fig. 17, it is the transmission of a binary code as a one-dimensional signal in O / 180-degree phase modulation. Demodulation and decoding take place in an on the basis of a comparison of the cell contents. Here a majority decision on such comparison results is realized. As an illustration, again work with values 1 ... 9, here with the meaning:
  • the majority decision can again be made by averaging such results and then comparing the mean with the value "5".
  • the first comparison output value "5"
  • the second comparison output values "3" both affected cells are at "1", ie an even number. The result is NOT to invert.
  • a third generalization is to move from a logic to base 2 to a multi-valued logic to base 3, etc.
  • the case-by-case inversions (XOR operations) are to be replaced for logic B according to the invention by modulo B additions (in coding) and - subtractions (during decoding) by a multiple of a fixed increment D.
  • the increment D is at Fuzzy procedure greater than 1, preferably straight, otherwise it is 1. If the value of the partial information is j, the cell values for the inversion cells for this partial information are coded by D * j, modulo B * D, elevated.
  • the inversion cells of the partial information are inverted as before, in which case the inversion is done by subtracting t * D, modulo B * D.
  • This third generalization is particularly advantageous in polyvalent phase modulation.
  • Fig. 12 shows a hardware realization for a simple example.
  • Fig. 12 is a schematic showing details such as e.g. Control signals are omitted.
  • the coding is shown above, the decoding below.
  • Partial information 10 is a special case as in FIG. 1 and consists only of inversion cells.
  • Partial information Il has the cell tuples Al with inversion cell zl and noninversion cell z3, and cell tuple A2 with inversion cell z2 and noninversion cell z4.
  • Partial information 12 has the cell tuples Bl with inversion cell zl and noninversion cell z2, and cell tuber B2 with inversion cell z3 and noninversion cell z4.
  • binary cells It is a signal with 3 pieces of information to encode each one bit, 10, II, 12. A total of 4 bits are available for encoding.
  • the coding path is a pipeline consisting of three registers 11 each having 4 binary cells 10. The cells are numbered 1 to 4 for each register from left to right for the following description, as well as from left to right; these numbers are not shown in FIG. 11 for the sake of clarity.
  • the cells are transferred, from left to right, from register to register (line parallel with 4 shift registers of length 3 or line serial with a shift register of length 12).
  • the information bit IO is transferred to the first register (formally this can be considered as an XOR combination with a basic value of logic "0".) If these XOR operations are actually implemented, the basic logic value can just as well "1" are used).
  • the information bit II is XOR-linked to the content of the first two cells of the second register, the result is written back to the cells in question.
  • the information bit 12 is XOR-linked to the contents of the first and third cell of the third register, the result is written back into the relevant cells.
  • the generated code is as follows (cl..c4 corresponds to the cell numbers 1 ... 4 of the registers):
  • registers are processed in reverse order.
  • fuzzy cell values are used, and for this decision both comparison results are considered together by simple summation of the fuzzy XOR values, followed by a threshold value decision, as described for the examples FIG. 16-19, possibly supplemented by a non-linear one Curve.
  • Such summation and threshold elements are indicated at 14 in FIG.
  • the first and the third cell of the third register are inver ⁇ by 12 with the relevant cell values (fuzzy) XOR- is linked and the result is written back to the cells.
  • the contents of the first and third cells of the second register are XOR-linked, as is the content of the second and fourth cells of the second register, and II is preferably obtained by summing the fuzzy XOR values followed by a threshold decision.
  • the first and the second cell of the second register are inverted by XORing Il with the respective cell values (fuzzy) and writing the result back into the cells.
  • the information bit IO is linked to the basic value by (fuzzy) XOR linking of the contents of the four cells. 10 is preferably obtained by summing the fuzzy XOR values followed by a threshold decision.
  • Partial information 10 is a special case as in FIG. 1 and consists only of inversion cells.
  • the decision is not made on the basis of a cell comparison.
  • This can be remedied in a simple manner by a differential coding of (preferably consecutive) 10 values: in coding, the I0 values are replaced by XORing successive 10 values; in decoding, accordingly, before the summation tion and threshold element 14 to 10, a (fuzzy) XOR comparison built with cached from the last IO decision cells.
  • the simple example shown here has a code rate of 3/4.
  • the decoding can also be carried out in a pipelined manner.
  • the error image can be evaluated cell by cell as a deviation from the logical basic value "0" or "1" (see above).
  • the geometric 10 x 3 arrangement of the cells needs to be maintained. It is quite possible to place the cells in an other format at the signal output, in particular one-dimensionally.
  • the placement of cells shown in FIGS. 1 to 10 can therefore be used merely as an auxiliary arrangement, that is to say as a purely conceptual arrangement, for a better illustration of the configuration.
  • the final placement ie the temporal order or local arrangement of the cell contents in the channel, may be identical to the auxiliary arrangement or even deviate therefrom.
  • the auxiliary arrangement can certainly also be realized with more than two dimensions, even for one-dimensional signals.
  • the final placement of the cells is now preferably carried out according to the invention in scattered placement.
  • cell tuples may be scattered to a partial information.
  • placement quantities which are spatially or temporally separated from one another by at least one cell in the case of time signals .
  • the aim of the scattered placement is the same as in the known interleaving, by which not only single errors but also burst errors can be corrected.
  • majority decisions are preferably made for a plurality of cell tuples for each decoding step. If these cell tuples are widely separated, a bundle error affects only one of the cell tuples; With at least three widely spaced amounts of cell tuples, the placement quantities, the right decisions can be made by majority decision on placement quantities.
  • the placement pattern must be known to the encoder as well as the decoder.
  • the inversion and non-inversion cells within a cell tuple should, on the other hand, be close to one another.
  • Cell comparisons to be performed locally are always advantageous if signal disturbances have a similar or similar effect on neighboring cells. This is the case, for example, with pictures where the light conditions within the picture can hardly be local, but very different globally;
  • a good example is needle-embossed matrix codes, where the imprints in the image may appear in very different forms due to different illumination and viewing angles, but hardly differ from each other in closely related imprints due to locally similar illumination conditions.
  • Fig. 20 shows an example of scattered placement for an example similar to Figs. 2 to 10: coding steps 2 and 3 correspond to the step configuration of Figs. 2 and 3, respectively; coding step i corresponds to the step configuration of Fig. 7; However, the cell field is larger with 14 x 3 cells, see Fig. 20 above.
  • the second line (possibly cyclically) is shifted to the right by 5 cells, the third line is shifted to the right by 10 cells, see FIG. 20 below.
  • the assignments to the cell tuples are also shifted.
  • coding steps 2 and 3 one thus obtains three quantities 31 of cell tuplets, which fulfill the condition of placement quantities, ie are separated from one another spatially by at least one cell.
  • FIG. 21 shows a one-dimensional final cell arrangement for coding steps 1 to 8 with three or four cell tuples per step.
  • step 1 to 5 there are three placement quantities each consisting of one cell tuple, each with one inversion cell and one noninversion cell, which are separated from each other by at least two cells each.
  • An extension according to the invention is preferably to link the data with a grid XOR-, after completion of the encoding, e.g. with a chessboard or in one-dimensional with a 010101 .. sequence, or even a random sequence. This is called in the following grid operation.
  • a certain structuring of the data can be achieved, such that, independently of the coded information, (locally) a certain minimum number of cells is always assigned a logical 1 and a minimum number is logically 0 (in the example cited above, too after scattered placement - achieved by using a simple checkerboard grid, that in the 3 x 10 field always at least 7 logical 1 cells and at least 7 logical 0 cells befin ⁇ the).
  • the code gets thereby a certain pattern.
  • This property can advantageously be used for the demodulation, in particular also for the synchronization, with a retroactive effect from the decoding to the demodulation.
  • the most primitive example would be to go through a binarization threshold until the minimum numbers are met.
  • this property is useful; primitive example: a completely black image is automatically rejected without additional special queries.
  • a grid operation is performed to undo it.
  • the coding result can also be supplemented by a fixed synchronization or referencing pattern, for example a sequence of alternating symbols such as 0101010 ... 012012012012 ... etc.
  • Multi-dimensional auxiliary arrangements are explained below with reference to the example according to FIGS. 22 to 31 with a three-dimensional auxiliary arrangement:
  • To encode is originally an 8-bit information. In a preprocessing this is supplemented by a parity bit, so that in the following we assume that a 9-bit information is to be encoded bit by bit in 9 encoding steps S1..S9.
  • the coding is binary, for a total of 64 cells with binary cell values are available.
  • FIGS. 22 to 30 show step configurations for steps S1 to S9.
  • the three dimensions are referred to with reference to the figures with left / right, front / rear and top / bottom.
  • the inversion cells of the respective step are shaded.
  • steps S1, S2, S3 the division into inversion cells and non-inversion cells takes place left / right: in S1 (FIG. 22), in S2 (FIG. 23), and S3 (FIG. 24), one each arises from left to right 4x4x1 disc of inversion cells.
  • the cell tubers 1 each consist of an inversion cell and a (not necessarily exactly one) non-inversion cell farther to the right (not necessarily directly adjoined, as indicated by the hatched arrows in FIGS. 22 and 23).
  • steps S4, S5, S6, the division into inversion cells and non-inversion cells takes place front / rear: in S4 (FIG. 25), in S5 (FIG. 26), and S6 (FIG. 27), one each arises from front to back 4x4xl slice of inversion cells.
  • the cell tubers 1 each consist of an inversion cell and a (not necessarily exactly one) non-inversion cell further back (not necessarily directly adjacent).
  • steps S7, S8, S9 the division into inversion cells and non-inversion cells takes place up / down: in S7 (FIG. 28), in S8 (FIG. 29), and S9 (FIG. 30), one each arises from top to bottom 4x4xl slice of inversion cells.
  • the cell tubers 1 each consist of an inversion cell and a (not necessarily exactly one) non-inversion cell further down (not necessarily directly adjacent).
  • the corresponding inversion cells change at the associated step; these are arranged in the auxiliary arrangement as a 4 ⁇ 4 ⁇ 1 plate, see hatched cells in FIGS. 22 through 30, wherein the discs can be differentiated into disc types by dimension, ie in left / right discs (S1 ), front / rear discs (S4 ... S6) and top / bottom discs (S7 ... S9). Since the source information um a parity bit has been added, two arbitrary words of the 9-bit information differ by at least two bits, the finished coded cells to two such words thus differ by at least two slices.
  • the situation that two disks belong to different types is shown in FIG. 31.
  • the cells which belong to both disks are inverted twice in this case, thus contributing nothing to the differentiation.
  • Such cells are marked with 21 in FIG. 31 and drawn in a checkered manner. It remains 3 x 4 + 3 x 4, so 24 inversion cells, in which the two words concerned differ. The minimum distance is thus 24.
  • the invention may also be used as a chained coding in conjunction with a known coding, e.g. as inner coding, in combination with an algebraic coding (for example Reed Solomon) as outer coding and interleaving / deinterleaving between the coding types.
  • a known coding e.g. as inner coding
  • an algebraic coding for example Reed Solomon
  • the mode of operation of the method is transparent and vivid with its individual steps, in the system design very specific application-specific adjustments can be realized, eg modifications of the comparison functions, installation of characteristics, placement of cells, definition of the configuration, so that optimally adapted to the given application leaving optimizing decoding can be realized, with considerations directly on Signal ⁇ level in the course of decoding. Demodulation and decoding are coupled and cooperative.
  • the information bits can be assigned a specific degree of decoding security by means of suitable configuration (for example, in the coding of numerical measurement data, data is important, where errors in the significant bits have a strong impact, in the least significant bits are tolerable, among others).
  • This can be achieved, in particular, by the following measure: the more significant partial information is coded AFTER the less significant and thus decoded BEFOR to the less significant partial information, namely with more inversion cells than in the less significant partial information. This means that the more significant partial information is decoded more reliably by majority vote.
  • steps to the significant partial information in which the cell tuples are as far apart as possible when scattered and the cells within the tuple are as close together as possible.
  • the signifiers would have partial information, e.g. in Fig. 21, the above-drawn step configurations cheaper than those further down.
  • the example of FIG. 12 serves: the minimum distance of the code is 2, so with algebraic decoding methods only error detections, but no error corrections are possible. Even the described procedure with fuzzy logic (without signal comparisons over several pixels within the cells) permits error corrections, in some cases even for several cells, by automatically retaining in the threshold elements uncertain cells from the decision process and be "overruled" by secure cells.
  • a further increase of the decoding quality results from the fact that the comparison is realized directly on the signal level (pixel level). This has obvious advantages, in particular, when the properties of the cell contents (locally or temporally) change at low frequency.
  • the invention encompasses a method for coding information that can be represented by partial information, wherein cell values are assigned to the cells by the coding, characterized by a) partial information coding steps, b) partial information specific cell tuple sets whose cell tuples consist of two types of cells, inversion cells and noninversion cells , wherein each cell tuple consists of at least one inversion cell and at least one non-inversion cell, wherein the cells within each cell tuple for each preceding coding step either all
  • Inversion cells or all non-inversion cells are c) for at least one coding step:
  • the invention comprises the following embodiments:
  • the cell tuples can be cell pairs with an inversion cell and a non-inversion cell.
  • Signal values in particular also pixel values of images, can be assigned to the cell values.
  • the pixels can assume one of the binary values 0 or 1.
  • a cell may be associated with a plurality of pixels, wherein the pixels are the pixels of an image or a sequence of images or the signal values of other signals, with assignment of pixel patterns to the cell values.
  • a differential coding of the partial information processed first can be carried out in advance.
  • the result can be XORed with a pattern, for images with a two-dimensional checkerboard pattern, for one-dimensional signals with a 101010 ... pattern.
  • the result can also be XORed with a pseudo-random pattern.
  • the invention also comprises an encoding device for a code, which can arise according to one of the aforementioned methods according to the invention, wherein registers are used with cells which can be inverted in dependence on information bits, preferably via XOR gates.
  • the invention comprises a code, which can be characterized by such a coding method, when interpreted as being produced according to one of said coding methods, by a placement of the cells in which 2 different cell tuples of a cell tuple quantity are placed so far apart from each other they are separated by at least one other cell, which does not belong to these cell tuples.
  • the invention comprises a code which can be formed after such a coding method, if it is interpreted as being produced according to such a coding method, by a placement of the cells in which pairs of inversion and non-inversion cells of a cell tuple adjoin at most one intermediate cell are, preferably directly adjacent.
  • a transmitting device which operates with such a coding method, characterized by a phase modulator for at least one feature dimension, as well as a storage medium on which data are stored working with one of the aforementioned codes, and a transmission protocol Code with a code, which can arise according to one of the aforementioned methods, characterized by the addition of a fixed synchronization or referencing pattern, preferably in the form of a 010101 series of at least 6 cells.
  • a further embodiment of the invention comprises a marking device with deforming marking, in particular needle embossing, with an aforementioned coding method for the marking, characterized in that the deformation strength is variable for signal modulation, preferably via the stop strength or the stroke of the needle.
  • a further embodiment of the invention comprises a marking device with deforming marking, in particular scratch embossing, with such a coding method for the marking, characterized in that the direction of bar elements, which can also be connected to one another, can be changed for signal modulation.
  • a further embodiment of the invention comprises a labeling device with such a coding method for the lettering, characterized in that the width of lines or the size of dots or the direction of line elements is variable for signal modulation.
  • a further embodiment of the invention comprises a code carrier for Identifi ⁇ cation purposes, eg RFID, with an aforementioned code.
  • a further embodiment of the invention comprises a decoding method for a code as it can arise from an aforementioned coding method, wherein the partial information is obtained from cells to be decoded, wherein a cell consists of one or more pixels, the pixels representing the image are points of a picture or a picture sequence or the signal values of a signal, characterized in that, when interpreted as a coding method according to any one of claims 1 to 8, the partial information is obtained from the cells to be decoded by zelltupel do Ver equal to Contents of inversion cells with the content of non-inversion cells, further characterized by comparing result-dependent determining the relevant sub-information, comparing result-dependent inversion of the respective inversion cells, if further decoding followed.
  • the comparison result can be determined by a majority decision via cell comparisons, preferably via the comparison of summation values via inversion cells on the one hand with summation values via non-inversion cells on the other hand, or via the median of individual comparison masses.
  • the comparison can be realized by a comparison function on a plurality of pixels of the respective cells, preferably a normalized correlation value.
  • Another embodiment of the invention is characterized by evaluating the resulting defect image for a rejection criterion and / or for a quality assessment.
  • the invention also comprises a decoding device for an aforementioned code, characterized by summation and threshold value elements with which it is possible to decide on partial information to be decoded.
  • the invention also comprises a decoding device for an aforementioned code, characterized by registers with cells which can be inverted in dependence on already obtained information bits, preferably via fuzzy XOR gates.
  • the invention further comprises a decoding device for an aforementioned code in which the first coded partial information (10) is coded differentially, characterized by a circuit with which decoded partial information (10) for the reversal of the differential coding can be temporarily stored.
  • the invention also includes a receiving device with an aforementioned decoding device.
  • the invention also encompasses a code reading device for a previously mentioned code, characterized by an image recording device, in which at least one image recording parameter, in particular also lighting parameters, can be influenced via a quality measure which depends on an error image.

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

The information to be coded is coded by information bit or is recovered by decoding. In each coding step, the actual information bit is combined with a specific number of bits from the XOR code thus arising. During decoding, decisions in the form of a majority decision are taken with regard to the results between specific symbols from demodulation or directly between specific signal sections, preferably using fuzzy XOR operations.

Description

Beschreibung description
Kanalcodierungsverfahren mit zugehörigem Code sowieChannel coding method with associated code as well
Demodulations- und Decodierungsverfahren und -EinrichtungenDemodulation and decoding methods and devices
Die Erfindung betrifft die Kanalcodierung und die dazugehörige Decodierung von Signalen, auf eindimensionale Signale (z.B. Zeitsignale) genauso bezogen wie auf zweidimensionale Signale (z.B. Bilder), entsprechende Codier- und Decodierein- richtungen.This invention relates to channel coding and the associated decoding of signals related to one-dimensional signals (e.g., timing signals) as well as to two-dimensional signals (e.g., images), corresponding encoding and decoding devices.
Sehr beliebt und verbreitet sind Reed-Solomon-(RS)-Codes. Die Decodierung von RS Codes ist rein algebraisch und für den Anwender sehr schwer verständlich und unanschaulich; es gibt keine fertigen Rezepte für die Integration von Soft- Decision-Methoden. Will man anwendungsspezifische Optimierungen eines Ge¬ samtsystems (mit Codierung, Modulation, Kanal, Demodulation und Decodie¬ rung) realisieren, so muss man die bekannte (algebraische) Codierung und Deco¬ dierung als fertige Blackbox im Gesamtsystem einsetzen; eine Systemoptimierung kann dann nur um diese Box herum realisiert werden, echt verzahnte Modifikatio¬ nen, die z.B. im Zusammenhang mit der verwendeten Modulationsmethode ste¬ hen, und die anwendungsspezifische Integration von Soft-Decision-Methoden sind in der Praxis kaum möglich (Bei-Soft-Decision kann beispielsweise der De- modulator dem Decodierer mitteilen, mit welcher Sicherheit er seine Entschei- düngen getroffen hat; diese Information nutzt der Decodierer für die Decodierung durch Optimierung eines numerischen Sicherheitsmaßes, das sich über mehrere solche Entscheidungen erstreckt).Very popular and widespread are Reed-Solomon (RS) codes. The decoding of RS codes is purely algebraic and very difficult to understand and unintelligible to the user; there are no ready-made recipes for the integration of soft-decision methods. If one wishes to realize application-specific optimizations of an overall system (with coding, modulation, channel, demodulation and decoding), one must use the known (algebraic) coding and decoding as a finished black box in the overall system; a system optimization can then be realized only around this box, genuinely interlocked modifications, e.g. in connection with the modulation method used, and the application-specific integration of soft-decision methods are hardly possible in practice (with soft-decision, for example, the decodulator can inform the decoder with what certainty it is making its decisions This information is used by the decoder for decoding by optimizing a numerical security measure extending over several such decisions).
In neuerer Zeit wurden die sog. Turbo-Codes eingeführt und erfolgreich einge- setzt. Bei Turbo-Codes werden zwei verkettete Faltungscodes, getrennt durch In- terleaving, iterativ mittels Soft-in-Soft-out-Viterbi-Decodierung decodiert. Turbo Codes können in bestimmten Fällen erstaunlich stark gestörte Signale decodieren, haben jedoch auch Nachteile: Die iterative Arbeitsweise führt zu nicht vorhersag¬ barer Rechenzeit; Turbo Codes erfordern Faltungscodes mit unendlicher Impuls- antwort (HR = infinite impulse response). Solche Codes bergen die Gefahr der katastrophalen Fehlerfortpflanzung. Gute Faltungscodes können nur computerge¬ stützt entworfen werden; es gibt keine systematischen Entwurfsmethoden für "gu¬ te" Faltungscodes (ja selbst die Definition eines Gütekriteriums ist schwierig). Die Wirkungsweise von Turbo Codes ist sehr schwierig zu durchschauen, daher ges- taltet sich der Entwurf und die Optimierung sehr schwierig.More recently, the so-called turbo codes have been introduced and successfully used. In turbo codes, two concatenated convolutional codes separated by terleaving, iteratively decoded by soft-in-soft-out Viterbi decoding. Turbo codes can in certain cases decode astonishingly strongly disturbed signals, but they also have disadvantages: the iterative method of operation leads to unpredictable computing time; Turbo codes require convolutional codes with infinite impulse response (HR). Such codes carry the risk of catastrophic error propagation. Good convolutional codes can only be designed using computer-aided design; there are no systematic design methods for "good" convolutional codes (even the definition of a quality criterion is difficult). The effects of Turbo Codes are very difficult to understand, so designing and optimizing is very difficult.
Der Stand der Technik Fehler korrigierender Codierung wird beschrieben in R. H. Morelos- Zaragoza: "The Art of Error Correcting Coding"; Wiley 2002, ISBN 0471 49581 6".The prior art error correcting coding is described in R.H. Morelos-Zaragoza: "The Art of Error Correcting Coding"; Wiley 2002, ISBN 0471 49581 6 ".
Allgemeine Aufgabe der Erfindung ist es, eine robuste, technisch einfach reali¬ sierbare Codierung und Decodierung mit zugehörigen Einrichtungen zur Verfü¬ gung zu stellen, deren Wirkungsweise in ihren Einzelschritten transparent ist, so dass für die Optimierung eines Gesamtsystems an verschiedenen Stellen anwen- dungsspezifische Modifikationen möglich sind.The general object of the invention is to provide a robust, technically easily realizable coding and decoding with associated devices whose mode of operation is transparent in their individual steps, so that for the optimization of an overall system at various points, application-specific modifications possible are.
Spezielle Aufgabe ist die Integration von Demodulation und Decodierung. Insbe¬ sondere sollen die Daten differentiell bewertet werden können, um eine höhere Sicherheit gegen niederfrequente Signalschwankungen herbeizuführen.Special task is the integration of demodulation and decoding. In particular, the data should be able to be differentially evaluated in order to bring about greater security against low-frequency signal fluctuations.
Erfindungsgemäß wird diese Aufgabe mit den Gegenständen nach den unabhän¬ gigen Ansprüchen gelöst. Weitere erfindungsgemäße Ausgestaltungen sind den Unteransprüchen definiert.According to the invention, this object is achieved with the objects according to the independent claims. Further embodiments according to the invention are defined in the subclaims.
Aufgrund der Verwendung von Vergleichen adaptiert die Decodierung automa¬ tisch an Schwankungen von Signaleigenschaften. Die Wirkungsweise ist in ihren Einzelschritten transparent. Dadurch wird es sehr vereinfacht, zur Optimierung eines Gesamtsystems ganz gezielt anwendungsspezifische Modifikationen zur Selbstreferenzierung und Integration der Demodulation in den Decodierungspro- zess einzuführen, mit zuverlässigkeitsoptimierender Decodierung direkt auf Sig- nalebene.Due to the use of comparisons, the decoding automatically adapts to fluctuations in signal properties. The mode of action is in theirs Single steps transparent. This greatly simplifies application-specific modifications for self-referencing and integration of the demodulation into the decoding process for the optimization of an overall system, with reliability-optimizing decoding directly at the signal level.
Erfindungsgemäß bereitgestellt wird also ein Verfahren zur Codierung einer durch Teilinformationen darstellbaren Information, wobei durch die Codierung Zellen Zellwerte zuzuweisen sind, gekennzeichnet durchAccording to the invention, therefore, a method is provided for coding information that can be represented by partial information, wherein cells are to be assigned cell values by the coding, characterized by
a) teilinformationsweise Codierschritte, b) teilinformationsspezifische Einteilung der Zellen in Inversionszellen und Nicht- inversionszellen, wobei jeder Teilinformation zumindest eine Inversionszelle zu¬ geordnet ist c) zumindest ein teilinformationsspezifisches Zelltupel, wobei jedes Zelltupel aus mindestens einera) partial information coding steps, b) partial information-specific classification of the cells in inversion cells and non-inversion cells, each partial information being assigned at least one inversion cell c) at least one partial information-specific cell tuple, each cell tuple comprising at least one
Inversionszelle und mindestens einer Nichtinversionszelle besteht, wobei die Zellen innerhalb jedes Zelltupels für jeden vorangehenden Codierschritt entweder nur Inversionszellen oder nur Nichtinversionszellen sind. d) für mindestens einen Codierschritt:Inversion cell and at least one non-inversion cell, wherein the cells within each cell tuple are either only inversion cells or only non-inversion cells for each preceding coding step. d) for at least one coding step:
XOR- Verknüpfung der betreffenden Teilinformation mit den dieser Teilinforma¬ tion aus b) zugeordneten Inversionszellen.XOR linking of the relevant sub-information with the inversion cells assigned to this sub-information from b).
Gemäß einer Weiterbildung der Erfindung ist vorgesehen, dass in dem mindestens einen Codierschritt alle Inversionszellen des Codierschritts mindestens einem Zelltupel angehören.According to one development of the invention, it is provided that in the at least one coding step all inversion cells of the coding step belong to at least one cell tuple.
Gemäß einer weiteren Ausgestaltung der Erfindung sind die Zelltupel Zellpaare mit einer Inversionszelle und einer Nichtinversionszelle. - A -According to a further embodiment of the invention, the cell tuples are cell pairs with an inversion cell and a non-inversion cell. - A -
Den Zellwerten können Signalwerte, insbesondere Pixelwerte von Bildern, zuge¬ ordnet werden.Signal values, in particular pixel values of images, can be assigned to the cell values.
Hierbei können die Pixel jeweils einen Wert von binären Werten annehmen.In this case, the pixels can each assume a value of binary values.
Eine weitere Ausführungsform der Erfindung, wobei einer Zelle mehrere Pixel zugeordnet sind, wobei die Pixel die Bildpunkte eines Bildes oder einer Bildfolge oder die Signalwerte eines sonstigen Signals sind, ist gekennzeichnet durch Zu¬ ordnung von Pixelmustern zu den Zellwerten.A further embodiment of the invention, wherein a plurality of pixels are assigned to a cell, wherein the pixels are the pixels of an image or an image sequence or the signal values of another signal, is characterized by assignment of pixel patterns to the cell values.
Eine weitere Ausführungsform der Erfindung ist gekennzeichnet durch eine vorab vorgenommene differentielle Codierung der zuerst bearbeiteten Teilinformation.A further embodiment of the invention is characterized by a differential coding of the part information processed first in advance.
Eine weitere Ausgestaltung der Erfindung umfasst: XOR- Verknüpfung des Er- gebnisses mit einem vorbestimmten Muster, wobei das vorbestimmte Muster bei Bildern ein zweidimensionales Schachbrettmuster ist und bei eindimensionalen Signalen ein 101010...-Muster ist.A further embodiment of the invention comprises: XORing the result with a predetermined pattern, wherein the predetermined pattern in pictures is a two-dimensional checkerboard pattern and in the case of one-dimensional signals is a 101010... Pattern.
Eine alternative Ausgestaltung umfasst: XOR- Verknüpfung des Ergebnisses mit einem Zufallsmuster.An alternative embodiment comprises: XORing the result with a random pattern.
In einer weiteren Ausgestaltung der Erfindung kann für mindestens einen Schritt eine Platzierung der Zellen, bei der mindestens 3 Mengen von Zelltupeln bildbar sind, die über mindestens eine Zelle voneinander getrennt sind, vorgesehen sein.In a further embodiment of the invention, for at least one step, a placement of the cells, in which at least 3 sets of cell pellets can be formed, which are separated from one another via at least one cell, can be provided.
Erfindungsgemäß ebenfalls bereitgestellt wird eine Codiereinrichtung für eine durch Teilinformationen darstellbare Information, wobei durch die Codierung Zellen Zellwerte zuzuweisen sind, gekennzeichnet durch Register mit Zellen, wo¬ bei codierschrittweise in Abhängigkeit von Teilinformationen je Register mindes- tens eine Zelle invertierbar ist, vorzugsweise über XOR-Gatter, wobei zumindest eine invertierbare Zelle als Inversionszelle von einem oder meh¬ reren Zelltupeln mit Inversionszellen und Nichtinversionszellen interpretierbar ist, wobei die Zellen innerhalb jedes Zelltupels für jeden vorangehenden Codierschritt entweder nur Inversionszellen oder nur Nichtinversionszellen sind.Also provided according to the invention is an encoding device for information that can be represented by partial information, wherein cells are to be assigned cell values by the coding, characterized by registers with cells, where at least one cell is invertible in coding step by step as a function of partial information per register, preferably via XOR. Gate, wherein at least one invertible cell is interpretable as an inversion cell of one or more cell tubers with inversion cells and non-inversion cells, wherein the cells within each cell tuple for each preceding coding step are either only inversion cells or only non-inversion cells.
Die Register können hierbei in einer Pipeline angeordnet sein.The registers can be arranged in a pipeline.
Die Erfindung umfasst des Weiteren eine Sendeeinrichtung, die mit einem Co¬ dierverfahren nach einer der Ausführungsformen arbeitet mit einem Phasenmodu- lator für mindestens eine Merkmalsdimension.The invention further comprises a transmitting device which uses a coding method according to one of the embodiments with a phase modulator for at least one feature dimension.
Ebenfalls umfasst ist ein Code, generiert durch ein Codierverfahren nach einer Ausführungsform der Erfindung, sowie ein Speichermedium, auf dem Daten abgelegt sind mit einem Code, der durch ein Codierverfahren nach einer Ausführungsform entstanden ist, und ein Übertragungsprotokoll mit einem Code, der durch ein Codierverfahren nach einer Ausführungsform entstanden ist.Also included is a code generated by a coding method according to an embodiment of the invention, and a storage medium on which data is stored having a code formed by a coding method according to an embodiment, and a transmission protocol having a code formed by a coding method originated according to one embodiment.
In einer Ausgestaltung der Erfindung wird dem Übertragungsprotokoll nach der Codierung ein festes Synchronisations- oder Referenzierungsmuster hinzugefügt, vorzugsweise in Form einer 010101-Folge von mindestens 6 Zellen.In one embodiment of the invention, a fixed synchronization or referencing pattern is added to the transmission protocol after encoding, preferably in the form of a 010101 series of at least 6 cells.
Erfindungsgemäß ebenfalls bereitgestellt wird eine Kennzeichnungseinrichtung mit verformender Kennzeichnung, insbesondere Nadelprägung, mit einem erfin- dungsgemäßen Codierverfahren für die Kennzeichnung wobei zur Signalmodula¬ tion die Verformungsstärke, veränderbar ist, bevorzugt über die Anschlagsstärke oder den Hub der Nadel, sowie eine Kennzeichnungseinrichtung mit verformender Kennzeichnung, insbesondere Ritzprägung, mit einem erfindungsgemäßen Codierverfahren für die Kennzeich- nung, wobei zur Signalmodulation die Richtung von Strichelementen, die mitein¬ ander verbunden sein können, veränderbar ist. Ferner bereitgestellt wird eine Beschriftungseinrichtung mit einem Codierverfah¬ ren für die Beschriftung gemäß der Erfindung, wobei zur Signalmodulation die Breite von Strichen oder die Größe von Dots oder die Farbe von Dots oder die Größe und Farbe von Dots oder die Richtung von Strichelementen veränderbar ist.Also provided according to the invention is a marking device with deforming marking, in particular needle embossing, with an encoding method according to the invention for the marking, the deformation strength being modifiable, preferably via the stop strength or the stroke of the needle, and a marking device with deforming marking, in particular scratch embossing, with a coding method according to the invention for the marking, wherein the direction of line elements which can be connected to one another is modifiable for signal modulation. Further provided is a labeling device with a Codierverfah ren for the lettering according to the invention, wherein for signal modulation, the width of lines or the size of dots or the color of dots or the size and color of dots or the direction of bar elements is changeable.
Die Erfindung umfasst auch einen Codeträger für Identifikationszwecke mit ei¬ nem Code, der durch ein erfindungsgemäßes Codierverfahren entstanden ist.The invention also encompasses a code carrier for identification purposes with a code which has been created by a coding method according to the invention.
Weiterhin umfasst die Erfindung auch ein Verfahren zum Decodieren eines Co¬ des, wie er durch ein erfindungsgemäßes Codierverfahren entstehen kann, wobei die zu decodierende Information durch Teilinformationen darstellbar ist und wo¬ bei die Teilinformationen aus zu decodierenden Zellen gewonnen werden, wenn man ihn als nach einem erfindungsgemäßen Codierverfahren entstanden interpretiert,Furthermore, the invention also encompasses a method for decoding a code, such as can arise from a coding method according to the invention, wherein the information to be decoded can be represented by partial information and where the partial information is obtained from cells to be decoded, if it is referred to as an encoding method according to the invention emerged,
gekennzeichnetmarked
A) durch teilinformationsweise Decodierschritte,A) by partial information decoding steps,
B) dadurch, dass für mindestens einen Decodierschritt die Teilinformation aus zu decodierenden Zellen gewonnen wird durch zelltupelweisen Vergleich von Inversionszellen mit Nichtinversionszellen und vergleichsergebnisabhängiges Bestimmen der betreffenden Teilin- formation,B) in that, for at least one decoding step, the partial information from cells to be decoded is obtained by cell-cell-wise comparison of inversion cells with non-inversion cells and comparison-result-dependent determination of the relevant partial information,
C) durch vergleichsergebnisabhängiges Verknüpfen einer Invertierungsinfor¬ mation mit den Inversionszellen des betreffenden Decodierschrittes, sofern mindestens ein Decodierschritt gemäß B) nachfolgt. Der Vergleich von Inversionszellen und Nichtinversionszellen kann durch Ver¬ gleich von Zellwerten erfolgen, die von den Zellen abgeleitet werden.C) by comparing result-dependent linking of an inversion information with the inversion cells of the relevant decoding step, provided that at least one decoding step according to B) follows. The comparison of inversion cells and non-inversion cells can be carried out by comparison of cell values which are derived from the cells.
Der Vergleich von Inversionszellen und Nichtinversionszellen kann auch durch Vergleich der Inhalte der betreffenden Zellen erfolgen.The comparison of inversion cells and non-inversion cells can also be done by comparing the contents of the cells in question.
Ein Vergleichsergebnis kann durch Auswerten mehrerer Vergleiche von Zellwer¬ ten gemäß einer Gütefunktion bestimmt werden, vorzugsweise - über den Median von Einzelvergleichsmaßen.A comparison result can be determined by evaluating several comparisons of cell values according to a quality function, preferably via the median of individual comparison measures.
- über das arithmetische Mittel von Einzelvergleichsmaßen.- by the arithmetic mean of individual comparison measures.
Ein Vergleichsergebnis kann durch Auswerten von Zellwerten gemäß einer Güte¬ funktion bestimmt werden, über den Vergleich von Mittelwerten über Inversions- zellen einerseits mit Mittelwerten über Nichtinversionszellen andererseits.A comparison result can be determined by evaluating cell values according to a quality function, by comparing mean values via inversion cells on the one hand with mean values via non-inversion cells on the other hand.
Ein Vergleichsergebnis kann auch durch Auswerten mehrerer Vergleiche be¬ stimmt werden, vorzugsweise - über den Median von Vergleichsfunktionen auf je mehrere Pixel der betreffen¬ den Zellen oderA comparison result can also be determined by evaluating a plurality of comparisons, preferably via the median of comparison functions to a plurality of pixels of the respective cells or
- über das arithmetische Mittel von Vergleichsfunktionen auf je mehrere Pixel der betreffenden Zellen.- About the arithmetic mean of comparison functions on each several pixels of the cells in question.
Auch beim letzten Decodierschritt kann eine Verknüpfung mit einer Invertie¬ rungsinformation durchgeführt werden und die Zellwerte nach dem letzten Deco¬ dierschritt können als Fehlerbild bzw. Fehlersignal interpretiert werden für eine Qualitätsbeurteilung.Also in the last decoding step, a link to an inversion information can be carried out and the cell values after the last decoding step can be interpreted as an error or error signal for a quality assessment.
In einer weiteren Ausgestaltung umfasst die Erfindung ein Decodierverfahren mit einer mehrwertigen Logik bei den codierten Zellwerten, insbesondere mit entspre- chend mehrwertiger Phasenmodulation auf Signalebene und mit mehrwertiger Fuzzy-Logik bei den zu decodierenden Zellwerten.In a further embodiment, the invention comprises a decoding method with a multi-valued logic in the coded cell values, in particular with corresponding multivalued phase modulation at the signal level and with polyvalent fuzzy logic at the cell values to be decoded.
Erfindungsgemäß bereitgestellt wird ebenfalls eine Decodiereinrichtung für eine durch Teilinformationen darstellbare Information aus einem Code, bei dem Zellen jeweils Zellwerte zugewiesen sind,Also provided according to the invention is a decoding device for information which can be represented by partial information, from a code in which cells are assigned cell values in each case,
gekennzeichnet durchmarked by
eine Anzahl von Registern, die jeweils Registerzellen umfassen, von denen zu¬ mindest ein Register zur Aufnahme der zu decodierenden Information dient, und wobei je Register zumindest eine Registerzelle decodierschrittweise in Ab¬ hängigkeit von der decodierten Teilinformation invertierbar ist, vorzugsweise ü- ber XOR-Gatter, wobei mindestens eine invertierbare Registerzelle als Inversionszelle von einem oder mehreren Zelltupeln mit Inversionszellen und Nichtinversionszellen inter¬ pretierbar ist, wobei die Zellen innerhalb jedes Zelltupels für jeden nachfolgenden Decodier- schritt entweder nur Inversionszellen oder nur Nichtinversionszellen sind, wobei die Teilinformationen aus Registerzellen gewonnen werden können durch zelltupelweisen Vergleich von Inversionszellen mit Nichtinversionszellen und vergleichsergebnisabhängiges Bestimmen der betreffenden Teilinformation.a number of registers each comprising register cells, of which at least one register is used for receiving the information to be decoded, and wherein at least one register cell can be reversibly decoded step by step depending on the decoded partial information, preferably via XOR Gate, wherein at least one invertible register cell as an inversion cell of one or more cell tubers with inversion cells and non-inversion cells is inter¬ pretierbar, wherein the cells within each cell tuple for each subsequent decoding step either only inversion cells or only non-inversion cells, the partial information is obtained from register cells can be determined by cell-cell-wise comparison of inversion cells with non-inversion cells and comparison-result-dependent determination of the relevant partial information.
Die Decodiereinrichtung kann Summations- und Schwellwertglieder umfassen, mit denen über zu decodierende Teilinformationen entschieden werden kann.The decoding device may comprise summation and threshold elements with which it is possible to decide on partial information to be decoded.
Zumindest ein Vergleich kann durch ein Fuzzy -XOR-Gatter realisiert sein.At least one comparison can be realized by a fuzzy XOR gate.
Erfindungsgemäß bereitgestellt wird auch eine Decodiereinrichtung mit einem Decodierverfahren der Erfindung für einen Code, bei dem erste codierte Teilin¬ formationen differentiell codiert sind, gekennzeichnet durch eine Schaltung, mit der decodierte Teilinformationen für die Umkehrung der differentiellen Codierung zwischengespeichert werden können.Also provided according to the invention is a decoding device with a decoding method of the invention for a code in which first coded partial information is coded differentially, characterized by a circuit the decoded partial information for the inversion of the differential coding can be temporarily stored.
Ferner bereitgestellt wird eine Empfangseinrichtung mit einer Decodiereinrich- tung nach der Erfindung, sowie eine Code-Leseeinrichtung für einen Code, wie er nach einem der Codierverfah¬ ren der Erfindung entstehen kann, gekennzeichnet durch eine Bildaufnahmeein¬ richtung, bei der mindestens ein Bildaufnahmeparameter, insbesondere Beleuch¬ tungsparameter, über ein Qualitätsmaß beeinflussbar ist, das von einem Fehlerbild abhängig ist.Further provided is a receiving device with a decoding device according to the invention, as well as a code reading device for a code, which can arise according to one of the coding methods of the invention, characterized by an image recording device in which at least one image recording parameter, in particular Lighting parameter, can be influenced by a quality measure that is dependent on an error image.
Die Erfindung wird anhand von Beispielen und der Zeichnung erläutert. In der Zeichnung zeigen:The invention will be explained with reference to examples and the drawing. In the drawing show:
Fig. 1 bis 10 eine einführende Erläuterung der Erfindung anhand eines Beispiels,1 to 10 an introductory explanation of the invention by way of example,
Fig. 11 einen Hinweis zu Inversionszellen,11 an indication of inversion cells,
Fig. 12 eine Hardwarerealisierung zu einem Beispiel,12 shows a hardware realization for an example,
Fig. 13 eine Erläuterung von Fig. 12,13 is an explanation of FIG. 12,
Fig. 14 das allgemeine Schema der Nachrichtenübertragung, Fig. 15 bis 19 verschiedene Realisierungsvarianten,14 shows the general scheme of the message transmission, FIGS. 15 to 19 show various implementation variants,
Fig. 20 und 21 eine Erläuterung des Begriffes "gestreute Platzierung",20 and 21 an explanation of the term "scattered placement",
Fig. 22 bis 31 ein Beispiel für mehrdimensionale Hilfsanordnungen.Figs. 22 to 31 show an example of multi-dimensional auxiliary arrangements.
Zunächst ist eine Vorbemerkung zu hier verwendeten Begriffen erforderlich, da bekannte Begriffe für diese Erfindung teilweise in einem modifizierten Sinn ver¬ wendet, und neue Begriffe eingeführt werden.First of all, a preliminary remark on terms used here is required, since known terms for this invention are partly used in a modified sense, and new terms are introduced.
Ein Bild wird als zweidimensionales Signal bezeichnet, ein eindimensionales Sig¬ nal auch als Zeitsignal. Bei eindimensionalen Signalen, bei denen die Signalwerte nach mehreren Dimensionen gleichzeitig moduliert sind (z.B. nach Amplitude und Phase gleichzeitig oder bei Quadratur- Amplituden-Modulation), wird hier zur Unterscheidung von mehreren Merkmalsdimensionen gesprochen (obwohl diese Signale in der Codierungsliteratur einfach "mehrdimensionale Signale" genannt werden). Ein Färb- Bildsignal wird dementsprechend als zweidimensionales Sig¬ nal angesprochen, das beispielsweise in den drei unabhängigen Merkmalsdimen- sionen Farbwinkel, Sättigung und Intensität moduliert ist.An image is referred to as a two-dimensional signal, a one-dimensional signal also as a time signal. In the case of one-dimensional signals in which the signal values are modulated simultaneously according to several dimensions (eg according to amplitude and phase at the same time or in the case of quadrature amplitude modulation), here becomes Distinction of several feature dimensions (although these signals are simply called "multi-dimensional signals" in the coding literature). A color image signal is accordingly addressed as a two-dimensional signal which is modulated, for example, in the three independent feature dimensions color angle, saturation and intensity.
Ein Bild kann zu einem eindimensionalen Signal vorverarbeitet sein, z.B. durch die Abtastung eines Barcodes (1 -D-Code).An image may be preprocessed into a one-dimensional signal, e.g. by scanning a barcode (1-D code).
Ein Matrixcode ist eine zweidimensionale Anordnung von Zellen, wie z.B. bei dem verbreiteten ECC-200-Standard.A matrix code is a two-dimensional array of cells, e.g. in the popular ECC-200 standard.
Das allgemeine Blockschaltbild der Nachrichtenübertragung mit Kanalcodierer, Modulator, Kanal, Demodulator und Decodierer ist in Fig. 14 dargestellt: Die zu übertragende Information u wird einem Kanalcodierer COD mit redundanter Co¬ dierung x zugeführt, die wiederum einem Modulator MOD zugeführt wird, der das Signal S erzeugt. Die Codierung geschieht mit dem Ziel, dass nach einer stö¬ rungsbehafteten Übertragung über den Kanal CH (gestörtes Signal S*) die ur¬ sprüngliche Information wieder rekonstruiert werden kann. Der Demodulator lie- fert Empfangswerte y, die vom Decodierer in eine Schätzung ü der ursprünglichen Information u überführt werden.The general block diagram of the message transmission with channel coder, modulator, channel, demodulator and decoder is shown in FIG. 14: The information u to be transmitted is supplied to a channel coder COD with redundant coding x, which in turn is supplied to a modulator MOD which receives the signal S generated. The coding takes place with the aim that, after a faulty transmission via the channel CH (disturbed signal S *), the original information can be reconstructed again. The demodulator provides receive values y, which are converted by the decoder into an estimate u of the original information u.
Die Information wird durch ein Alphabet aus Infosymbolen dargestellt. Im Binär¬ fall sind die Infosymbole Infobits mit den Symbolen "0" und "1", ein anderes Bei- spiel wäre ein ternäres Alphabet mit den Symbolen "1", "2", "3". Ein oder mehre¬ re auftretende Infosymbole (speziell: Infobits) zusammengefasst werden im fol¬ genden Teilinformationen genannt. Die Information besteht also aus Teilinforma¬ tionen.The information is represented by an alphabet of information symbols. In the binary case, the information symbols are infobits with the symbols "0" and "1", another example would be a ternary alphabet with the symbols "1", "2", "3". One or more information symbols occurring (in particular: infobits) are summarized in the following partial information. The information thus consists of partial information.
Der Codierer liefert am Ausgang Codesymbole (Codebits im Binärfall). Der Modulator verwandelt die Codesymbole in ein in Zellen zerlegbares Signal.The encoder provides code symbols (code bits in binary case) at the output. The modulator transforms the code symbols into a signal that can be decomposed into cells.
Zellen repräsentieren bei Bildsignalen Bildbereiche von mindestens einem Bild¬ punkt (Pixel), beispielsweise die (ggf. vorsegmentierten) Module eines zweidi- mensional gedruckten Matrixcodes oder der Bildinhalt von kleinen, das Gesamt¬ bild gleichmäßig aufrasternden Parzellen. Die Zellen können auch nur aus einem Pixel bestehen, dann ist der Begriff Zelle mit dem Begriff Pixel identisch. Die Bildbereiche sind La., aber nicht notwendigerweise, zusammenhängend.In the case of image signals, cells represent image areas of at least one pixel (pixels), for example the (possibly pre-segmented) modules of a two-dimensionally printed matrix code or the image content of small parcels which uniformly scans the overall image. The cells can also consist of only one pixel, then the term cell is identical to the term pixel. The image areas are La, but not necessarily, contiguous.
Entsprechendes gilt für Zeitsignale, wo die Zellen (i.a. kurze, zusammenhängen¬ de) Signalbereiche von mindestens einem Signalwert repräsentieren. Zur Verein¬ fachung wird hier der Begriff Pixel auch für einzelne Werte eines beliebigen ein- oder mehrdimensionalen Signals verwandt.The same applies to time signals where the cells (i.a. short, coherent) signal ranges represent at least one signal value. To simplify matters, the term pixel is also used here for individual values of any one-dimensional or multidimensional signal.
Der Inhalt von Zellen kann durch Zellwerte repräsentiert werden. Allgemein sind Zellwerte also symbolische oder numerische Repräsentationen des Inhaltes von Zellen. Beispielsweise kann beim Modulieren eines Matrixcodes eine logisch-0- Zelle (Zellwert 0) durch ein einen senkrechten Balken und eine logisch- 1 -Zelle (Zellwert 1) durch einen waagrechten Balken realisiert sein, das Flächenmass ei- nes ansonsten nicht weiter spezifizierten Fleckens (Dot), oder aber einfach durch dunkle bzw. helle Pixel, verschiedene Farben etc.. Fälle mit mehr als 2 möglichen Zellwerten sind z.B. 1 für rot, 2 für grün, 3 für blau. Bei Zeitsignalen sind die Zellwerte i.a. Symbole für die üblichen Punkte im Signalraum, es können aber auch Symbole für ganz spezielle Geometrien im Zeitbereich sein (z.B. lang/kurz nach Morsecode, oder sich deutlich unterscheidende Geometrien, wie z.B. "Säge¬ zahn steigend" vs. "Sägezahn fallend").The content of cells can be represented by cell values. In general, cell values are symbolic or numerical representations of the contents of cells. For example, when modulating a matrix code, a logical 0 cell (cell value 0) may be realized by a vertical bar and a logical 1 cell (cell value 1) by a horizontal bar, the areal extent of an otherwise unspecified spot ( Dot), or simply by dark or bright pixels, different colors, etc. Cases with more than 2 possible cell values are eg 1 for red, 2 for green, 3 for blue. For time signals, the cell values are i.a. Symbols for the usual points in the signal space, but they can also be symbols for very specific geometries in the time domain (e.g., long / short after Morse code, or distinctly different geometries, such as "saw tooth rising" vs. "saw tooth falling").
Bei mehreren Merkmalsdimensionen können die Zellwerte dimensionsweise exis¬ tieren, die Zellwerte können jedoch auch mehrere Dimensionen zusammenfassend repräsentieren. Der Modulator verwandelt die Codesymbole in ein in Zellen zerlegbares Signal, wobei i.a., aber nicht notwendigerweise, eine Eins-Zu-Eins-Korrespondenz be¬ steht zwischen den Codesymbolen am Ausgang des Codierers und den möglichen Realisierungen der Zellen am Ausgang des Codierers, die durch Zellwerte reprä- sentiert werden können. In den im folgenden aufgeführten Beispielen gehen wir von einer solchen Eins-Zu-Eins-Korrespondenz aus und betrachten Zellwerte gleich am Ausgang des Codierers, wobei der nachgeschaltete Modulator aus den Zellwerten die Zellinhalte erzeugt.In the case of several feature dimensions, the cell values can exist in a dimensioned manner, but the cell values can also represent several dimensions in summary. The modulator transforms the code symbols into a signal which can be decomposed into cells, whereby ia, but not necessarily, a one-to-one correspondence exists between the code symbols at the output of the coder and the possible implementations of the cells at the output of the coder Cell values can be represented. In the examples below, we assume such one-to-one correspondence and look at cell values just at the output of the encoder, with the downstream modulator generating the cell contents from the cell values.
Allgemein besteht die Aufgabe der Codierung also in der Erzeugung von Zellwer¬ ten.In general, therefore, the task of coding is the generation of cell values.
Am Demodulator- Ausgang erscheinen umgekehrt als Empfangswerte y Zellwerte, wobei hier i.a. die Anzahl möglicher Zellwerte größer ist als die Anzahl möglicher Zellwerte beim Codieren. So können beispielsweise bei binärem Eingangsalpha¬ bet am Demodulator- Ausgang ideale "1 "-Signale mit dem Zellwert "9", und ideale "O"-Signale mit dem Zellwert "1" erscheinen, mit beliebigen, z.B. ganzen Zwi¬ schenwerten 2...8, um zum Ausdruck zu bringen, wie gut der Zellinhalt den ent¬ sprechenden idealen Signalen entspricht. "5" liegt genau in der Mitte und bringt so zum Ausdruck, dass der Zellinhalt nicht demoduliert werden kann. Auf Basis sol¬ cher Zellwerte können Soft-Decision-Methoden realisiert werden. Natürlich kann der Demodulator auch "0"-"l"-Werte getrennt von Zu verlas sigkeits werten liefern.Conversely, at the demodulator output, cell values appear as reception values y, in which case i.a. the number of possible cell values is greater than the number of possible cell values in coding. Thus, for example, in the case of a binary input alpha at the demodulator output, ideal "1" signals with the cell value "9" and ideal "0" signals with the cell value "1" appear, with arbitrary, e.g. all intermediate values 2... 8, in order to express how well the cell content corresponds to the corresponding ideal signals. "5" lies exactly in the middle and expresses that the cell content can not be demodulated. On the basis of such cell values, soft-decision methods can be realized. Of course, the demodulator can also provide "0" - "l" values separately from reliability values.
Bei konventionellen Systemen wird nach der Kanalcodierung die Modulation durchgeführt und nach der Demodulation die Decodierung, jeweils unabhängig voneinander. Nach diesem Schema wird durch den Demodulator das i.a. gestörte Signal in Ausgangssymbole eines Ausgangsalphabets y gewandelt. Bei konventi¬ oneller Hard-Decision ist die Anzahl der Ausgangssymbole y des Demodulators identisch mit der Anzahl der Symbole x am Eingang des Modulators; die Deco- dierung erfolgt rein algebraisch. Bei Soft-Decision ist die Anzahl der Ausgangs- symbole y des Demodulators größer als die Anzahl der Symbole x am Eingang des Modulators.In conventional systems, the modulation is performed after the channel coding and the decoding after the demodulation, each independently. According to this scheme, the demodulator converts the ia disturbed signal into output symbols of an output alphabet y. With a conventional hard decision, the number of output symbols y of the demodulator is identical to the number of symbols x at the input of the modulator; the decoding is purely algebraic. Soft-Decision has the number of output symbols y of the demodulator greater than the number of symbols x at the input of the modulator.
Hier wird jedoch - je nach Realisierungsvariante - keine strenge begriffliche Tren- nung zwischen Codierung und Modulation bzw. zwischen Demodulation und De- codierung durchgeführt. Ähnlich wie bei der bekannten codierten Modulation (z.B. TCM: trellis coded modulation) werden hier diese Grenzen aufgehoben: Verallgemeinernd umfasst daher die Decodierung die schrittweise Gewinnung der Teilinformationen entweder aus Zellwerten (Demodulation und Decodierung ge- trennt) oder aus Zellinhalten, also direkt aus dem Signal (Demodulation und De¬ codierung integriert).However, depending on the implementation variant, no strict conceptual separation between coding and modulation or between demodulation and decoding is carried out here. Similar to the known coded modulation (eg TCM: trellis coded modulation), these limits are hereby abolished: Generally speaking, the decoding comprises the stepwise extraction of the partial information either from cell values (demodulation and decoding separated) or from cell contents, ie directly from the Signal (demodulation and decoding integrated).
Letzteres ist der Fall bei einer erfindungsgemäßen Decodiermethode, die auf ei¬ nem direktem Vergleich von Zellinhalten basiert; dieser Vergleich findet also di- rekt auf Signalebene statt. So kann z.B. große Unähnlichkeit zweier Zellen durch den Wert "9" und große Ähnlichkeit durch den Wert "1" repräsentiert werden, mit beliebigen, z.B. ganzen Zwischenwerten 2...8, um zum Ausdruck zu bringen, wie sehr sich die Zellinhalte (Signalabschnitte) ähneln. "5" liegt genau in der Mitte und bringt so zum Ausdruck, dass der Vergleich der Zellinhalte weder für "ähn- lieh" noch für "unähnlich" spricht.The latter is the case with a decoding method according to the invention which is based on a direct comparison of cell contents; This comparison thus takes place directly on the signal level. Thus, e.g. large dissimilarity of two cells represented by the value "9" and high similarity by the value "1", with any, e.g. whole intermediate values 2 ... 8, to express how similar the cell contents (signal sections) are. "5" lies exactly in the middle and expresses that the comparison of the cell contents neither speaks for "similar" nor for "dissimilar".
Randbemerkung: die in dieser Patentanmeldung aufgeführten Beispiele "1"..."9" sind nur der besonderen Anschaulichkeit halber gewählt und können natürlich durch beliebige andere Bewertungsschemata ersetzt werden.Side note: the examples "1" ... "9" listed in this patent application are chosen only for the sake of clarity and can of course be replaced by any other evaluation schemes.
Eine komprimierende Quellcodierung oder -Decodierung oder sonstige Vorverar- beitung/-Nachverarbeitung (z.B. Differentielle Vorcodierung) ist möglich und wird hier nicht weiter betrachtet.Compressive source encoding or decoding or other preprocessing / postprocessing (e.g., differential precoding) is possible and will not be considered further here.
Zellen und Zellwerte sind im oben angegebenen Sinne zu verstehen, also nicht nur für Bilder, sondern auch für eindimensionale Signale. Ausgangspunkt für die Co- dierung ist eine Anordnung von Zellen mit vorzugsweise gleichartig belegten Zel¬ len. Entsprechend Merkmal d) in Anspruch 1 werden für einen Codierschritt XOR- Verknüpfungen der zu codierenden Teilinformation mit den Inversionszel¬ len des Codierschritts durchgeführt. Nach dem letzten Codierschritt nehmen als Ergebnis die Zellen die gewünschten Zellwerte an. Diesem letzten Codierschritt können sich weitere nachverarbeitende Schritte anschließen, wie z.B. die XOR- Verknüpfung mit einem Schachbrettmuster oder einem pseudozufälligen Muster, siehe unten.Cells and cell values are to be understood in the sense given above, not only for images, but also for one-dimensional signals. Starting point for the co-operation Dierung is an arrangement of cells with preferably identically occupied Zel¬ len. According to feature d) in claim 1, XOR operations of the partial information to be coded with the inversion cells of the coding step are performed for a coding step. As a result, after the last coding step, the cells assume the desired cell values. This last coding step may be followed by further post-processing steps, such as the XOR operation with a checkerboard pattern or a pseudorandom pattern, see below.
Bei der Erfindung wird auf XOR- Verknüpfungen bzw. fallabhängige Inversionen Bezug genommen; diese Operationen (oder entsprechende Schaltungen und Gat¬ ter) sind in dem weiter unten angegebenen und weiter erläuterten allgemeinen Sinn zu verstehen:In the invention reference is made to XOR connections or case-dependent inversions; These operations (or corresponding circuits and gates) are to be understood in the general sense given below and further explained:
- in konventioneller binärer Logik, oder - in mehrwertiger Logik, oder- in conventional binary logic, or - in multivalued logic, or
- in binärer oder mehrwertiger Fuzzy-Logik.- in binary or polyvalent fuzzy logic.
Die Erfindung wird zunächst anhand eines instruktiven Beispiels erläutert, Fig. 1 bis 10; anschließend werden, auf dem Beispiel aufbauend, die Vorgehensweise zur Verallgemeinerung beschrieben, sowie spezielle Zusätze.The invention is first explained by means of an instructive example, Figs. 1 to 10; Subsequently, based on the example, the procedure for generalization will be described, as well as special additives.
Das Beispiel Fig. 1 bis 10 stammt aus dem Bereich der Bildverarbeitung; auf die Übertragung der folgenden Erörterung auf eindimensionale Signale wird einge¬ gangen an Stellen, wo die Übertragbarkeit eventuell nicht offensichtlich ist.The example Fig. 1 to 10 comes from the field of image processing; the transfer of the following discussion to one-dimensional signals is entered into places where portability may not be obvious.
Beispiel Fig. 1 bis 10: Es soll eine Information codiert werden, die mit 10 Bit dar¬ gestellt werden kann, den Informationsbits 1 bis 10. In diesem Beispiel sind die Teilinformationen also je ein Bit und es sind 10 Codierschritte für je ein Bit erfor¬ derlich. Eine andere Aufteilung in Teilinformationen hätte man beispielsweise mit den möglichen Zellwerten 1, 2, 3; dann wären entsprechend weniger Codierschritte erforderlich. Gleiches gilt beispielsweise, wenn man je zwei Bit zusammenfasst und mit jeweils vier möglichen Zellwerten arbeitet.Example FIGS. 1 to 10: Information to be encoded with 10 bits is to be encoded, the information bits 1 to 10. In this example, the partial information is one bit each, and 10 encoding steps are required for each one bit ¬ derlich. Another subdivision into partial information would be, for example, with the possible cell values 1, 2, 3; then correspondingly fewer coding steps would be required. The same applies, for example, if you combine two bits each and work with four possible cell values.
Gegeben sei ein zweidimensionales Bildsignal mit 10 x 3 Zellen. Die 30 Zellen sollen redundant für eine Codierung der 10 Informationsbits verwendet werden. Die Zellen bestehen im Beispiel aus einzelnen binären Pixeln, mögliche Zellwerte sind zunächst 0 oder 1.Given is a two-dimensional image signal with 10 x 3 cells. The 30 cells are to be used redundantly for coding the 10 information bits. The cells consist in the example of individual binary pixels, possible cell values are initially 0 or 1.
Die Anordnung der Zellen muss nicht unbedingt der endgültigen Anordnung ent¬ sprechen; die für die Datenübertragung oder Datenspeicherung (z.B. Beschriftung mit einem Dotcode) verwendete Anordnung wird in der Regel von der hier be¬ sprochenen Anordnung abweichen, weil am Ende noch eine gestreute Platzierung, ähnlich Interleaving, durchgeführt wird (s.u.).The arrangement of the cells does not necessarily correspond to the final arrangement; the arrangement used for the data transmission or data storage (for example inscription with a dot code) will as a rule deviate from the arrangement described here because at the end a scattered placement, similar to interleaving, is performed (see below).
Auch bei Zeitsignalen ist es hilfreich, die Zellen hilfsweise gedanklich in einem zweidimensionalen Raster anzuordnen. Die im folgenden zugrunde gelegte An¬ ordnung ist also lediglich hilfreich für die folgenden Betrachtungen und wird in der Regel nachträglich verändert, insbesondere durch eine gestreute Platzierung.In the case of time signals, it is also helpful to arrange the cells mentally in a two-dimensional grid. The arrangement based on the following is therefore only helpful for the following considerations and is usually subsequently changed, in particular by a scattered placement.
Codierung:Encoding:
Als Initialisierung wird allen Zellen des zu erstellenden Codes der gleiche Grundwert, z.B. 0, zugewiesen.As initialization, all cells of the code to be created are given the same basic value, e.g. 0, assigned.
Randbemerkung: die Zuweisung gleicher Grundwerte ist technisch nicht erforder¬ lich; man könnte unterschiedlich zuweisen und beim Decodieren bei den Ver¬ gleichsoperationen zwischen je zwei Zellen (s.u.) die Interpretation invertieren, falls die Initialzuweisung der betreffenden Zellen unterschiedlich ist. Wir definieren für den ersten Codierschritt eine Menge Ml von Zellen, die in un¬ serem Beispiel speziell alle Zellen umfasst, in Fig. 1 mit "i" bezeichnet. Diese Zellen in Ml werden nun alle invertiert, wenn das erste Informationsbit 1 ist; falls es 0 ist werden sie alle nicht invertiert. Mit anderen Worten: die Zellen in Ml werden XOR-verknüpft mit dem ersten Informationsbit, (geht man vom Grund¬ wert 0 aus, entspricht dies einer Kopie von IO auf die Zellen von Ml). Solcherart behandelte Zellen von Zellmengen werden im folgenden Inversionszellen genannt und in den Fig. 1 bis 10 mit "i" dargestellt. Nichtinversionszellen bleiben dagegen unabhängig vom Wert des Informationsbits unverändert, in den Figuren 1 bis 10 mit "n" dargestellt.Side note: the allocation of the same basic values is not technically necessary; one could assign differently and, when decoding in the case of the comparison operations between every two cells (see below), invert the interpretation if the initial assignment of the relevant cells is different. We define for the first coding step a set Ml of cells, which in our example specifically comprises all cells, designated by "i" in FIG. These cells in Ml are all now inverted if the first information bit is 1; if it is 0 they are all not inverted. In other words, the cells in M1 are XOR-linked to the first information bit, (assuming the base value 0, this corresponds to a copy of IO to the cells of M1). Cells of cell quantities treated in this way are called inversion cells in the following and are represented by "i" in FIGS. 1 to 10. By contrast, uninversion cells remain unchanged, irrespective of the value of the information bit, represented by "n" in FIGS. 1 to 10.
Dieser erste Schritt bei diesem Beispiel entspricht nicht exakt dem Anspruch 1; die folgenden Schritte entsprechen jedoch den Ansprüchen 1 und 2:This first step in this example does not exactly correspond to claim 1; however, the following steps are in accordance with claims 1 and 2:
Allgemein gilt: Für jede folgende Teilinformation - d.h. für jeden anspruchsge¬ mäßen Codierschritt - existiert eine Menge von Inversionszellen (die restlichen Zellen sind Nichtinversionszellen) und eine Menge von Zelltupeln 1, wobei ein Zelltupel aus mindestens einer Inversionszelle und mindestens einer Nichtinversi- onszelle dieser Teilinformation besteht. Grundsätzlich braucht nicht jede Inversi- onszelle einem Zelltupel anzugehören. Inversionszellen und Nichtinversionszellen können mehreren Zelltupeln angehören.In general, for each following subinformation - i. for each encoding step according to the invention - there is a set of inversion cells (the remaining cells are non-inversion cells) and a set of cell tuples 1, wherein a cell tuple consists of at least one inversion cell and at least one non-inversion cell of this partial information. In principle, not every inversion cell needs to belong to a cell tuple. Inversion cells and non-inversion cells may belong to several cell tubers.
Die teilinformationspezifische - und damit vom Codierschritt abhängige - Auftei¬ lung in Inversionszellen und Nichtinversionszellen und die Festlegung der teilin- formationsspezifischen Zelltupel werden im folgenden kurz Schrittkonfiguration genannt, die Schrittkonfigurationen aller anspruchsgemäßen Schritte zusammen¬ genommen werden kurz Konfiguration genannt. Die Konfiguration wird vorab festgelegt, manuell oder mit Rechenprogramm, und ist dem Codierer und dem Decodierer bekannt. Im Beispiel Fig. 2...10 gehört jede Inversionszelle einem Zelltupel an und jedes Zelltupel besteht aus genau einer Inversionszelle und einer Nichtinversionszelle und eine Inversionszelle gehört jeweils nur einem Zelltupel an.The partial information-specific - and thus dependent on the coding step - division into inversion cells and non-inversion cells and the definition of the partial information-specific cell tuples are referred to below as step configuration, the step configurations of all claimed steps taken together briefly called the configuration. The configuration is predetermined in advance, manually or with computational program, and is known to the encoder and decoder. In the example Figs. 2 ... 10, each inversion cell belongs to a cell tuple, and each cell tuple consists of exactly one inversion cell and one non-inversion cell, and one inversion cell belongs to only one cell tuple at a time.
Da es insgesamt 10 Informationsbits zu codieren gilt, definieren wir noch insge¬ samt 10 - 1 = 9 Mengen von Zelltupeln.Since it has to be coded a total of 10 information bits, we still define a total of 10 - 1 = 9 sets of cell tuples.
In unserem Beispiel besteht jedes Zelltupel aus genau einer Inversionszelle und einer Nichtinversionszelle. Einige Zelltupel 1 werden in den Figuren als Doppel- pfeile zwischen je einer Inversionszelle und einer Nichtinversionszelle angedeutet.In our example, each cell tuple consists of exactly one inversion cell and one non-inversion cell. Some cell tuples 1 are indicated in the figures as double arrows between each one inversion cell and one non-inversion cell.
In Fig. 2 umfasst die Menge M2 der Zelltupel sechs Inversionszellen und sechs Nichtinversionszellen. Es muss hier kein besonderes geometrisches System bei der Wahl der Verteilung von Inversions- und Nichtinversionszellen und bei der Wahl der Zelltupel verwendet werden, wie durch die Pfeile angedeutet. Es sind auch durchaus grundsätzlich Überlappungen erlaubt, d.h. eine Zelle kann mehre¬ ren Zelltupeln angehören.In Fig. 2, the amount M2 of cell tubers comprises six inversion cells and six non-inversion cells. There is no need to use any particular geometric system in choosing the distribution of inversion and non-inversion cells and in the choice of cell tuples, as indicated by the arrows. There are also basically overlaps allowed, i. A cell may belong to several cell tuples.
Die Inversionszellen des zweiten Schritts werden mit dem zweiten Informations- bit XOR-verknüpft. D.h. falls sie aufgrund des ersten Informationsbits bereits in¬ vertiert wurden und nun aufgrund des zweiten Informationsbits invertiert werden, nehmen sie wieder den ursprünglichen Grundwert an.The inversion cells of the second step are XOR-linked to the second information bit. That if they have already been inverted due to the first information bit and are now inverted on the basis of the second information bit, they again assume the original basic value.
Wir kommen nun zum dritten Informationsbit und zur Zelltupelmenge M3, siehe Fig. 3. Die Menge M3 umfasst in unserem Beispiel genau die gleichen Zellen wie M2. Bei der Wahl der Inversionszellen und Nichtinversionszellen braucht wieder¬ um kein besonderes System Verwendung zu finden. Jedoch muss bei der Definiti¬ on der Zellpaare ab M3 eine zusätzliche Vorschrift beachtet werden (, die für Ml und M2 ohnehin erfüllt ist): Die Zellen eines Zelltupels müssen bei XOR- Operationen vorangehender Schritte alle gleich behandelt worden sein, unabhängig vom aktuellen Wert der vorange¬ henden Informationsbits. Dies ist erfüllt, wenn sie für jeden vorangehenden Co¬ dierschritt jeweils entweder alle Inversionszellen oder alle Nichtinversionszellen sind.We come now to the third information bit and to the cell tuple quantity M3, see Fig. 3. The set M3 comprises in our example exactly the same cells as M2. In the choice of inversion cells and non-inversion cells, again, no special system needs to be used. However, when defining the cell pairs starting with M3, an additional rule must be observed (which is already fulfilled for Ml and M2 in each case): The cells of a cell tuple must have all been treated the same in XOR operations of previous steps, regardless of the current value of the preceding information bits. This is fulfilled if, for each preceding coding step, they are in each case either all inversion cells or all non-inversion cells.
Ein in diesem Sinne verbotenes Zelltupel ist in Fig. 3 unter der Nr. 2 angegeben. Es ist deshalb verboten, weil seine Nichtinversionszelle abhängig vom zweiten Informationsbit invertiert wurde, seine Inversionszelle hingegen nicht.A cell tuber forbidden in this sense is indicated in Fig. 3 under No. 2. It is forbidden because its non-inversion cell was inverted depending on the second information bit, but its inversion cell was not.
Diese Vorschrift brauchte für die vorangehende Schritte nicht beachtet zu werden, weil in dem Beispiel ihre Zellen ohnehin immer erfüllt war (alle Zellen von M2 sind in Ml Inversionszellen).This rule did not need to be followed for the previous steps, because in the example their cells were always satisfied anyway (all cells of M2 are in Ml inversion cells).
Im nächsten Schritt mit Informationsbit 4 und Zelltupelmenge M4, siehe Fig. 4, haben wir bei der speziellen Wahl von M4 wieder freie Wahl der Zellpaare, so wie vorher in M2.In the next step with information bit 4 and cell tuple quantity M4, see Fig. 4, we again have free choice of cell pairs in the particular choice of M4, as before in M2.
Im nächsten Schritt mit Informationsbit 5 und Zelltupelmenge M5, siehe Fig. 5, haben wir bei der speziellen Wahl von M5 wieder die gleiche Situation wie bei Informationsbit 3 und Zellmenge 3.In the next step with information bit 5 and cell tuple quantity M5, see FIG. 5, we again have the same situation for the special choice of M5 as for information bit 3 and cell quantity 3.
Im nächsten Schritt mit Informationsbit 6 und Zelltupelmenge M6, siehe Fig. 6, haben wir bei der speziellen Wahl von M6 wieder die gleiche Situation wie bei Informationsbit 2 und Zellmenge 2.In the next step with information bit 6 and cell tuple quantity M6, see FIG. 6, we again have the same situation for the special choice of M6 as for information bit 2 and cell quantity 2.
Wir kommen nun zu den Informationsbits 7 bis 10, mit den Zelltupelmengen M7 bis MIO, siehe Fig. 7 bis Fig. 10. Aufgrund der speziellen Mengenwahl und Wahl der Inversions-/Nichtinversionsbit-Konstellationen ist die erstmalig für M3 for- mulierte Forderung immer dann erfüllt, wenn die Zellen eines Zellpaares überein¬ ander stehen. Die Codierung besteht einfach in der Anwendung der XOR- Operationen auf die Inversionszellen entsprechend der gegebenen Konfiguration, teilinformationswei- se, wobei die Reihenfolge, in der die Teilinformationen den Mengen zugeordnet werden, grundsätzlich gleichgültig ist.We come now to the information bits 7 to 10, with the cell tuple sets M7 to MIO, see Fig. 7 to Fig. 10. Due to the special set selection and choice of inversion / non-inversion bit constellations is the first time for M3 formulated request always fulfilled if the cells of a cell pair are überein¬ other. The coding consists simply in the application of the XOR operations to the inversion cells according to the given configuration, partly infor- mation-wise, whereby the order in which the partial information is assigned to the quantities is basically indifferent.
Die Mindestdistanz dieses Codebeispiels ist offensichtlich 5, da a) sich mit jedem Informationsbit mindestens 5 Bits verändern b) bei Überkreuzungen von Inversi¬ onszellmengen (Rücksetzen des betreffenden Bits) mindestens zwei Informati- onsbits beteiligt sind, die selbst mehrere weitere Zellen invertieren.The minimum distance of this code example is obvious, since a) at least 5 bits change with each information bit b) at crossovers of inversion cell quantities (resetting of the relevant bit) at least two information bits are involved, which themselves invert several further cells.
Durch die Hinzunahme eines Paritybits auf die Informationsbits kann die Min¬ destdistanz gesteigert werden.By adding a parity bit to the information bits, the minimum distance can be increased.
Das Beispiel Fig. 1 bis 10 entspricht Anspruch 2, d.h. dass alle Inversionszellen zu einer Teilinformation mindestens einem Zelltupel dieser Teilinformation ange¬ hören.The example of Figs. 1 to 10 corresponds to claim 2, i. that all inversion cells listen to a partial information of at least one cell tuple of this partial information.
Eine Anordnung nach Anspruch 1 ist in Fig. 11 angegeben, ähnlich Fig. 6, wo jedoch gegenüber Fig. 6 die Menge M6 reduziert ist, die verbleibenden Inversi¬ onszellen "i" jedoch erhalten bleiben, in Fig. 11 mit "I" gekennzeichnet. Decodierung:An arrangement according to claim 1 is shown in FIG. 11, similar to FIG. 6, where, however, compared to FIG. 6, the quantity M6 is reduced, but the remaining inversion cells "i" are retained, marked "I" in FIG , decoding:
Die Beschreibung geschieht wieder anhand des Beispiels Fig. 1 bislO.The description is again based on the example Fig. 1 bislO.
Die Decodierung basiert auf dem Vergleich des Inhalts von Inversionszellen und Nichtinversionszellen innerhalb von Zelltupeln.The decoding is based on the comparison of the contents of inversion cells and non-inversion cells within cell tuples.
Die Zelltupelmengen und damit die Teilinformationen werden gegenüber dem Codieren in umgekehrter Reihenfolge bearbeitet, hier also MIO, M9, ... Ml. Da wir im Beispiel binär codierte Infosymbole und binär codierte Zellen haben und da die Zelltupel hier Zellpaare mit je einer Inversionszelle und einer Nichtin- versionszelle sind, ist die Vorgehensweise hier wie folgt zu beschreiben: Sind die jeweils betrachteten Zellen eines Zellpaares ungleich, so spricht das dafür, dass das zugehörige aktuelle Informationsbit gesetzt ist; sind sie gleich, so spricht das dafür, dass das zugehörige aktuelle Informationsbit nicht gesetzt ist.The cell tuple sets and thus the partial information are processed in the opposite order to coding, here MIO, M9, ... Ml. Since in the example we have binary-coded information symbols and binary coded cells, and since the cell tuples here are cell pairs with one inversion cell and one non-inversion cell, the procedure here is to describe as follows: If the cells of a cell pair considered are unequal, that speaks for itself that the associated current information bit is set; if they are the same, this indicates that the corresponding current information bit is not set.
Die Entscheidung wird vorzugsweise über einen Mehrheitsentscheid der beteilig¬ ten Zellpaare der Zelltupel der Schrittkonfiguration getroffen.The decision is preferably made by a majority decision of the participating cell pairs of the cell tuple of the step configuration.
Sofern weitere Decodierschritte anstehen, werden jedes Mal, wenn eine Entschei¬ dung daraufhin gefällt wurde, dass das Informationsbit gesetzt wird, die Inversi¬ onszellen zum aktuellen Schritt invertiert (ersatzweise können natürlich entspre¬ chende Merker gesetzt werden). Auf diese Weise werden also nacheinander die Informationsbits 10, 9, ...2 decodiert.If further decoding steps are pending, each time a decision has been made that the information bit is set, the inversion cells are inverted to the current step (as a matter of course, corresponding flags can be set). In this way, the information bits 10, 9,... 2 are successively decoded.
Das Informationsbit 1 stellt wieder einen Sonderfall dar: Hier wird die Entschei¬ dung nicht über einen Vergleich verschiedener Zellen herbeigeführt, sondern über einen direkten (vorzugsweise mehrheitlich zu entscheidenden) Vergleich mit dem beim Codieren gesetzten Grundwert, also 0 oder 1.The information bit 1 again represents a special case: Here, the decision is not made via a comparison of different cells, but via a direct (preferably majority decision) comparison with the base value set in the coding, ie 0 or 1.
Hat man die Zellen jeweils direkt invertiert (Arbeit ohne entsprechende Merker, s.o.), so bleibt bei vor Decodierung ungestörten Zellen am Ende eine ganz mit dem Grundwert belegte Matrix übrig. Bei ursprünglich gestörten Zellen entsteht dann bei korrekter Decodierung am Ende ein Fehlerbild (bzw. 1D-Fehlersignal). Dieses Fehlerbild kann zur Qualitätsbeurteilung der Decodierung oder des Signals herangezogen werden.If the cells have each been directly inverted (work without corresponding markers, see above), a matrix completely occupied by the basic value remains at the end before decoding undisturbed cells. In the case of originally faulty cells, an error image (or 1D error signal) is produced at the end with correct decoding. This error image can be used to assess the quality of the decoding or the signal.
Abgesehen von Informationsbit 1 werden also bei diesem Beispiel alle Vergleiche direkt zwischen aktuellen Zellinhalten realisiert, ohne Bezug zu nehmen zu ir¬ gendwelchen Referenzmaßen. Würde man beispielsweise alle Zellen gegeneinan- der invertieren (bei Phasenmodulation beispielsweise durch eine ungewünschte globale Phasenverschiebung um 180 Grad), so würden trotzdem alle Bits 2...10 korrekt decodiert werden.Apart from information bit 1, in this example, therefore, all comparisons are made directly between current cell contents, without reference to any reference dimensions. If, for example, all cells were the invert (for phase modulation, for example, by an unwanted global phase shift of 180 degrees), nevertheless all bits 2 ... 10 would be correctly decoded.
Fig. 15 zeigt eine solche Mehrheitsentscheidung bei einem System mit Amplitu¬ denmodulation, mit einer Codierung von 2 Infobits und 6 Codebits; für jeden der beiden Codierschritte existieren Mengen (Ml bzw. M2) mit drei Zelltupeln mit je einer Inversionszelle und einer Nichtinversionszelle.15 shows such a majority decision in a system with amplitude modulation, with an encoding of 2 infobits and 6 code bits; For each of the two coding steps, there are quantities (M1 or M2) with three cell tuples, each with one inversion cell and one non-inversion cell.
Am Ausgang des Demodulators stehen hier binäre Empfangswerte, die über logi¬ sches XOR verglichen werden. Aufgrund eines Mehrheitsentscheids über diese XOR-Ergebnisse werden die Infobits geschätzt (maj = 1: "1" hat Majorität).At the output of the demodulator are here binary reception values, which are compared via logi¬ XOR. Due to a majority decision on these XOR results, the infobits are estimated (maj = 1: "1" has majority).
Im folgenden werden Verallgemeinerungen beschrieben.In the following generalizations are described.
Die erste Verallgemeinerung ist der Übergang von konventioneller Logik zu einer Fuzzy- Vorgehensweise.The first generalization is the transition from conventional logic to a fuzzy approach.
Wir gingen bisher von einer binären Repräsentation der Zellen aus.So far we have assumed a binary representation of the cells.
In der Praxis kommen Störungen vor, die der Demodulator numerisch bewerten kann und die es für eine zuverlässigkeitsoptimierende Decodierung auszuwerten gilt.In practice, disturbances occur which the demodulator can numerically evaluate and which it is to evaluate for a reliability-optimizing decoding.
Wir gehen zunächst davon aus, dass durch einen Demodulator jeder Zelle ein (Fuzzy-) Wert zwischen 1 und 9 zugewiesen wird, wobei 1 bedeutet "sicher schwarz (horizontal...)", 9 bedeutet "sicher weiß (vertikal...)", 5 bedeutet "unbe¬ kannt", 7 bedeutet "eher weiß (vertikal)", 8 bedeutet "fast sicher weiß (vertikal)", etc. Eine ungeradzahlige Anzahl von Bewertungsstufen ist zu bevorzugen, da man dann (wie hier mit dem Wert 5) die Möglichkeit einer neutralen Bewertung hat.We first assume that a demodulator assigns a (fuzzy) value between 1 and 9 to each cell, where 1 means "sure black (horizontal ...)", 9 means "sure white (vertical ...) "5 means" unknown ", 7 means" rather white (vertical) ", 8 means" almost certainly white (vertical) ", etc. An odd number of evaluation levels is preferable, as you then have (as with the value 5) the possibility of a neutral rating.
Einstellige Zahlenwerte wurden wegen der besseren Anschauung gewählt, der Wert 1 als unterster Wert wurde gewählt, da bei ungerader Anzahl von möglichen Werten einer genau in der Mitte liegt und die 5 als mittlerer Wert besonders an¬ schaulich ist.Single numerical values were chosen because of the better view, the value 1 was chosen as the lowest value, since with an odd number of possible values one lies exactly in the middle and the 5 as average value is particularly illustrative.
Erfindungsgemäß werden die XOR-Operation ersetzt durch die folgende Operati- on, mit den als Beispiel aufzufassenden Zahlen 1 und 9:According to the invention, the XOR operation is replaced by the following operation, with the numbers 1 and 9 to be taken as examples:
XOR(A5B) = ABS(A-B) + 1; (ABS = Absolut-Betrag)XOR (A 5 B) = ABS (AB) + 1; (ABS = absolute amount)
Es gilt also beispielsweise XOR(3,3) = 1 ('gleich'), XOR(1,9) = 9 ('ungleich'), XOR (3,7) = 5 ('unbestimmt').For example, XOR (3,3) = 1 ('equal'), XOR (1,9) = 9 ('not equal'), XOR (3,7) = 5 ('indefinite').
Die Inversion wird durchgeführt durch:The inversion is carried out by:
INV(A) = (9 - A) +1.INV (A) = (9-A) +1.
Der Vollständigkeit halber geben wir noch die UND- und ODER-Operationen an:For the sake of completeness, we still specify the AND and OR operations:
UND(A5B) = Min (A,B), ODER (A,B) = Max (A,B).AND (A 5 B) = Min (A, B), OR (A, B) = Max (A, B).
Dabei ist "+ 1 " wegen der besonderen Anschaulichkeit der 5 für die neutrale Be¬ wertung definiert.In this case, "+ 1" is defined for neutral evaluation because of the particular clarity of FIG.
Die Gleichheitsabfrage beim Decodieren wird ersetzt durch eine XOR-Operation auf die betreffenden Werte und die Abfrage, ob das Ergebnis dieser XOR- Operation > 5 oder < 5 ist. Vorteilhaft und erfindungsgemäß wird die Gleichheitsabfrage nicht direkt auf die Zellen eines Zelltupels ausgeführt, sondern es werden die Werte von je mehreren gleichartigen Zellen (Inversionszellen bzw. Nichtinversionszellen) konventionell addiert und danach wird erst, mit geeigneter Normierung auf die Anzahl der betei- ligten Zellen, die > 5/< 5-Abfrage durchgeführt. Dazwischen kann es noch ratsam sein, geeignete nichtlineare Kennlinien anzusetzen, um einzelne kleine Fehler zu unterdrücken. Vorteilhaft als Mehrheitsentscheidung ist auch die Anwendung des Median- Operators über die Ergebnisse mehrerer Zellpaare, mit anschließendem > 5/< 5-Vergleich.The equality request on decoding is replaced by an XOR operation on the respective values and the query whether the result of this XOR operation is> 5 or <5. Advantageously and according to the invention, the equality query is not performed directly on the cells of a cell tuple, but instead the values of several identical cells (inversion cells or non-inversion cells) are added conventionally and thereafter, with appropriate normalization, the number of cells involved, the> 5 / <5 query performed. In between, it may still be advisable to set suitable non-linear characteristics to suppress single small errors. Advantageous as majority decision is also the application of the median operator over the results of several cell pairs, with subsequent> 5 / <5 comparison.
Es findet also für jedes Informationsbit vorteilhaft ein Mehrheitsentscheid über mehrere "Einzelmeinungen" statt, wobei sich unsichere Zellen aufgrund ihres Wertes "Nähe 5" automatisch aus dem Entscheidungsprozess zurückhalten (umso mehr, je näher sie bei der 5 liegen), ganz im Gegenteil zu algebraischen Decodier- verfahren, bei denen auch ganz knapp an der Grenze liegende Werte zwangsweise zu einzelnen Fehlentscheidungen führen können, die dann aufwendig wieder gut gemacht werden müssen oder zu Rückweisungen führen.Thus, for each information bit, a majority decision on several "individual opinions" advantageously takes place, with insecure cells automatically holding back from the decision process due to their value "proximity 5" (the closer they are to the 5), quite the opposite to algebraic ones Decoding methods, in which even values close to the limit can inevitably lead to individual wrong decisions, which then have to be made costly or made good or lead to rejections.
Liegt der Wert, der zur Entscheidung führt, bei 5 oder zu nahe am Wert 5, so wird entweder eine Rückweisung durchgeführt oder der Decodierungsprozess wird für beide Alternativen weitergeführt und die endgültige Entscheidung wird von zu¬ sätzlichen Kriterien abhängig gemacht, wie dies von Soft-Decision-Systemen be¬ kannt ist.If the value that leads to the decision is 5 or too close to the value 5, then either a rejection is carried out or the decoding process is continued for both alternatives and the final decision is made dependent on additional criteria, as determined by soft- Decision systems is known be¬.
Fig. 16 zeigt eine solche Mehrheitsentscheidung mit Fuzzy- Vorgehensweise. Bei der Codierung eines 3 x 5-Matrixcodes werden die Zellen mit "Aufwärtsbalken" bzw. "Abwärtsbalken" signalisiert. Der Demodulator berechnet für die empfange¬ nen Zellen Empfangswerte zwischen 1 und 9, mit der Bedeutung: 1: sicher ab¬ wärts 2: fast sicher abwärts... 5: unsicher... 8: fast sicher aufwärts 9: sicher auf- wärts. Der Decodierer arbeitet nur auf Basis von Fuzzy-XOR- Vergleichen solcher Emp¬ fangswerte. Um eine Mehrheitsentscheidung mit Bewertung der Sicherheiten her¬ beizuführen, werden einfach die erhaltenen XOR-Werte gemittelt und das Mitte¬ lungsergebnis m mit "5" verglichen.Fig. 16 shows such a majority decision with fuzzy approach. When coding a 3 x 5 matrix code, the cells are signaled with "up bar" or "down bar". The demodulator calculates received values between 1 and 9 for the received cells, with the meaning: 1: safe downwards 2: almost safe downwards ... 5: insecure ... 8: almost safe upwards 9: safely upwards , The decoder works only on the basis of fuzzy XOR comparisons of such reception values. In order to bring about a majority decision with evaluation of the collateral, the obtained XOR values are simply averaged and the result of the mediation m compared with "5".
Im Beispiel Fig. 16 ist die erste Entscheidung auf "gleich" (also Schätzung des Infobits = 0), daher braucht für den zweiten Schritt keine Invertierung der Inversi¬ onszellen des ersten Schritts stattzufinden, andernfalls würde man eine Fuzzy- Invertierung für die betreffenden Zellen realisieren, Formel siehe oben.In the example of FIG. 16, the first decision is "equal" (ie, infobit = 0), so there is no need to invert the inverse cells of the first step for the second step, otherwise fuzzy inversion would be required for the cells concerned realize, formula see above.
Fig. 17 zeigt ein weiteres Beispiel mit Mehrheitsentscheidung auf Basis der Fuz- zy-Vorgehensweise. Bei der Übertragung eines Binärcodes als eindimensionalen Signals in 0/180-Grad Phasenmodulation berechnet der Demodulator für die emp¬ fangenen Zellen Empfangswerte zwischen 1 und 9, mit der Bedeutung: 1: 0 Grad 2: fast sicher 0 Grad... 5: unsicher... 8: fast sicher 180 Grad 9: sicher 180 Grad.FIG. 17 shows another example with a majority decision based on the fuzzy approach. When transmitting a binary code as a one-dimensional signal in 0/180-degree phase modulation, the demodulator calculates reception values between 1 and 9 for the received cells, with the meaning: 1: 0 degree 2: almost certainly 0 degrees ... 5: uncertain ... 8: almost certainly 180 degrees 9: sure 180 degrees.
Der Decodierer arbeitet nur auf Basis von Fuzzy-XOR- Vergleichen solcher Emp¬ fangswerte. Um eine Mehrheitsentscheidung mit Bewertung der Sicherheiten her¬ beizuführen, werden einfach die erhaltenen XOR-Werte gemittelt und das Mitte- lungsergebnis m mit "5" verglichen.The decoder works only on the basis of fuzzy XOR comparisons of such reception values. In order to bring about a majority decision with evaluation of the collateral, the obtained XOR values are simply averaged and the concatenation result m compared with "5".
Im Beispiel Fig. 17 ist die erste Entscheidung auf "ungleich" (also Schätzung des Infobits = 1), daher muss für den zweiten Schritt eine Invertierung der Inversions¬ zellen des ersten Decodierschritts stattfinden, wie durch die Kreissymbole ange- deutet (9-> l, 5-> 5).In the example of FIG. 17, the first decision is "unequal" (ie, infobit = 1), therefore inversion of the inversion cells of the first decoding step must take place for the second step, as indicated by the circle symbols (9-> l, 5-> 5).
Die zweite Verallgemeinerung ist die Integration der Demodulation durch direk¬ ten Vergleich auf Signalebene.The second generalization is the integration of demodulation by direct comparison at the signal level.
Bisher haben wir einen Vergleich zwischen je zwei Zellen durchgeführt über eine "analoge" XOR-Funktion. Der Vergleich kann jedoch bevorzugt und erfindungsgemäß direkt auf Signalebe¬ ne (Pixelebene) realisiert werden, bei Zeitsignale z.B. durch Korrelation, bei Bil¬ dern z.B. durch Vergleich der betreffenden Bildausschnitte. Dies hat insbesondere dann offensichtliche Vorteile, wenn sich die Eigenschaften der Zellinhalte (örtlich oder zeitlich) niederfrequent verändern.So far we have made a comparison between every two cells via an "analog" XOR function. However, the comparison can preferably and according to the invention be realized directly on the signal plane (pixel plane), in the case of time signals, for example by correlation, in the case of images, for example by comparison of the relevant image sections. This has obvious advantages in particular if the properties of the cell contents (locally or temporally) change at low frequency.
Hat man beispielsweise Zellen mit einem kleinen Kreuz gegen solche mit einem kleinen Ring zu unterscheiden, so ist die Frage "sind die Zellen A und B eher gleich oder eher ungleich?" technisch viel zuverlässiger zu beantworten als die Berechnung von guten Einzelbewertungsmaßen ("ähnlich Kreuz?"...), denn letzte¬ res setzt die Verfügbarkeit eines Referenzkreuzes und eines Referenzrings voraus: man stelle sich vor, dass die Durchmesser der Kreise aufgrund irgendwelcher Störeinflüsse sich langsam verändern kann; dann nützt ein einmal vorgegebener Referenzkreis nichts mehr.For example, if one has to distinguish cells with a small cross from those with a small ring, then the question is, "Are cells A and B rather the same or rather unequal?" Technically much more reliable answer than the calculation of good individual evaluation measures ("similar cross?" ...), because the latter requires the availability of a reference cross and a reference ring: imagine that the diameters of the circles due to any disturbing influences itself can change slowly; then once a given reference circle does not help anymore.
Es wird also nicht durch Vergleich mit vorgegebenen Referenzen gearbeitet, son¬ dern durch Vergleich zwischen verschiedenen Signalteilen; Störeinflüsse, die die¬ sen verschiedenen Signalteilen gemeinsam sind (dies ist fast immer der Fall bei niederfrequenten oder lokal benachbarten Signalteilen) werden automatisch her¬ ausgerechnet. Bei Bildverarbeitungsanwendungen können Signalvergleiche bei¬ spielsweise durch normierte Korrelation realisiert werden.It is therefore not worked by comparison with given references, son¬ countries by comparison between different signal parts; Disturbances which are common to these different signal parts (this is almost always the case with low-frequency or locally adjacent signal parts) are automatically calculated. In image processing applications, signal comparisons can be realized, for example, by normalized correlation.
Es werden also keine Referenzmuster zur Zell-Demodulation benötigt; Das Sys- tem führt selbsttätig eine Selbstreferenzierung durch im Zuge der Decodierung.So no reference patterns for cell demodulation are needed; The system automatically carries out self-referencing in the course of the decoding.
Fig. 18 zeigt eine Vorgehensweise mit direktem Signalvergleich. Bei der Codie¬ rung eines 3 x 5-Matrixcodes werden wie in Fig. 16 die Zellen mit "Aufwärtsbal¬ ken" bzw. "Abwärtsbalken" signalisiert. Demodulation und Decodierung finden in einem statt auf Basis eines Vergleichs der Zellinhalte. Hier wird eine Mehrheits- entscheidung über solche Vergleichsergebnisse. Zur Veranschaulichung soll wie¬ der mit Werten 1...9 gearbeitet werden, hier mit der Bedeutung:Fig. 18 shows a procedure with direct signal comparison. In the coding of a 3 × 5 matrix code, as in FIG. 16, the cells are signaled with "up-bars" or "down-bars". Demodulation and decoding take place in one based on a comparison of cell contents. Here, a majority decision on such comparison results. As an illustration, we shall again work with values 1 ... 9, here with the meaning:
1 : Zellinhalte sicher gleich 2: Zellinhalte fast sicher gleich ...1: cell contents certainly equal to 2: cell contents almost certainly the same ...
5: Vergleich nicht möglich (nicht sinnvoll, z.B. da zu wenig Signalenergie)... 8: Zellinhalte fast sicher ungleich 9: Zellinhalte sicher ungleich5: Comparison not possible (not sensible, because there is too little signal energy) ... 8: Cell contents almost certainly not equal to 9: Cell contents certainly not equal
Die Mehrheitsentscheidung kann wiederum durch Mittelung solcher Ergebnisse erfolgen und anschließenden Vergleich des Mittelwerts m mit dem Wert "5".The majority decision can in turn be made by averaging such results and subsequent comparison of the mean m with the value "5".
Wenn in einem Decodierschritt die Entscheidung auf "ungleich" gefällt wurde, und weitere Decodierschritte folgen, sind laut Anspruch die Inversionszellen die- ses Schritts zu invertieren. Da man die Zellinhalte, also die Signale, nicht immer schlichtweg invertieren kann (das funktioniert nur in Sonderfällen, z.B. bei binä¬ rer Amplitudenmodulation), wird hier vorgeschlagen, ersatzweise ein Hilfs- Zellfeld mit binären Werten zu realisieren, die den Zellen zugeordnet sind. Wenn nun eine Inversionszelle zu invertieren ist, wird technisch die betreffende binäre Hilfszelle invertiert. Bei Zellvergleichen in den folgenden Schritten ist nun zu beachten, wie viele der zu vergleichenden Zellen Hilfszellen mit log. "1" zuge¬ ordnet sind. Ist die Zahl ungerade, so wird das Vergleichsergebnis invertiert. Na¬ türlich wird das Hilfsfeld initial mit log. "0" gefüllt.If, in a decoding step, the decision was made "unequal" and subsequent decoding steps follow, then the inversion cells of this step are to be inverted. Since the cell contents, that is, the signals, can not always be inverted (this only works in special cases, for example in the case of binary amplitude modulation), it is proposed here to substitute an auxiliary cell field with binary values assigned to the cells. If now an inversion cell is to be inverted, technically the respective binary auxiliary cell is inverted. In cell comparisons in the following steps, it should now be noted how many of the cells to be compared have auxiliary cells with log. "1" zuge¬ are assigned. If the number is odd, the result of the comparison is inverted. Of course, the auxiliary field is initialized with log. Filled "0".
Im Beispiel Fig. 18 ist die erste Entscheidung auf "gleich" (also Schätzung des Infobits = 0), daher braucht für den zweiten Schritt keine Invertierung der Inversi¬ onszellen des ersten Schritts stattzufinden, andernfalls würde man entsprechende logische Merker setzen, die den Inversionszellen des ersten Decodierschritts zu¬ geordnet sind. Fig. 19 zeigt ein weiteres Beispiel mit direktem Signal vergleich. Es handelt sich wie in Fig. 17 um die Übertragung eines Binärcodes als eindimensionales Signal in O/180-Grad Phasenmodulation. Demodulation und Decodierung finden in ei¬ nem statt auf Basis eines Vergleichs der Zellinhalte. Hier wird eine Mehrheitsent- Scheidung über solche Vergleichsergebnisse realisiert. Zur Veranschaulichung soll wieder mit Werten 1...9 gearbeitet werden, hier mit der Bedeutung:In the example in FIG. 18, the first decision is "equal" (thus estimating the infobit = 0), therefore there is no need to invert the inversion cells of the first step for the second step, otherwise one would set corresponding logical flags corresponding to the inversion cells the first decoding step zu¬ are ordered. Fig. 19 shows another example with direct signal comparison. As in Fig. 17, it is the transmission of a binary code as a one-dimensional signal in O / 180-degree phase modulation. Demodulation and decoding take place in an on the basis of a comparison of the cell contents. Here a majority decision on such comparison results is realized. As an illustration, again work with values 1 ... 9, here with the meaning:
1 : Zellinhalte sicher gleich 2: Zellinhalte fast sicher gleich ... 5: Vergleich nicht möglich (nicht sinnvoll, z.B. da zu wenig Signalenergie)... 8: Zellinhalte fast sicher ungleich 9: Zellinhalte sicher ungleich1: cell contents certainly equal to 2: cell contents almost certainly the same ... 5: comparison not possible (not sensible, because there is too little signal energy) ... 8: cell contents almost certainly not equal 9: cell contents certainly not equal
Die Mehrheitsentscheidung kann wiederum durch Mittelung solcher Ergebnisse erfolgen und anschließenden Vergleich des Mittelwerts mit dem Wert "5".The majority decision can again be made by averaging such results and then comparing the mean with the value "5".
Im Beispiel Fig. 19 ist die erste Entscheidung auf "ungleich" (also Schätzung des Infobits = 1), daher muss für den zweiten Schritt eine Invertierung der Inversions¬ zellen des ersten Schritts stattfinden. Die Verwendung von log. Merkern, wie o- ben für Fig. 18 geschildert, die für den nächsten Schritt auf "1" (für "invertieren") stehen, wird hier durch die kleinen Kreissymbole symbolisiert. Im zweiten Deco- dierschritt sind beim ersten Vergleich (Ausgangswert "5") keine Merker auf "1", beim zweiten Vergleich (Ausgangswerte "3") stehen beide betroffenen Zellen auf "1", also eine gerade Anzahl. Das Ergebnis ist also NICHT zu invertieren.In the example of FIG. 19, the first decision is "unequal" (ie, estimation of the infobit = 1), therefore an inversion of the inversion cells of the first step must take place for the second step. The use of log. Marking, as described above for FIG. 18, which are "1" (for "inverting") for the next step, is symbolized here by the small circle symbols. In the second decoding step, the first comparison (output value "5") has no markers at "1", at the second comparison (output values "3") both affected cells are at "1", ie an even number. The result is NOT to invert.
Eine dritte Verallgemeinerung besteht darin, von einer Logik zur Basis 2 überzu¬ gehen zu einer mehrwertigen Logik zur Basis 3, etc. Der Übergang von zweiwer¬ tiger auf dreiwertige etc. Logik kann motiviert sein durch unübliche Datenforma¬ te, z.B. Codierung von 65...81 möglichen Werten (81 = 3*3*3*3), durch den Zwang, bestehende Übertragungskanäle optimal zu nutzen, oder durch mehrere Merkmalsdimensionen der Realisierung von Zellen. Die fallweisen Inversionen (XOR- Operationen) sind für Logik zur Basis B erfin¬ dungsgemäß zu ersetzen durch Modulo-B -Additionen (beim Codieren) und - Subtraktionen (beim Decodieren), um ein Vielfaches eines festen Inkrements D. Das Inkrement D ist bei Fuzzy- Vorgehensweise größer als 1, vorzugsweise gera¬ de, ansonsten ist es 1. Ist der Wert der Teilinformation j, so werden beim Codie¬ ren bei den Inversionszellen zu dieser Teilinformation die Zellwerte um D*j, mo- dulo B*D, erhöht.A third generalization is to move from a logic to base 2 to a multi-valued logic to base 3, etc. The transition from two-valued to trivalent etc. logic can be motivated by unusual Datenforma¬ te, eg coding of 65. ..81 possible values (81 = 3 * 3 * 3 * 3), by the need to optimally use existing transmission channels, or by several feature dimensions of the realization of cells. The case-by-case inversions (XOR operations) are to be replaced for logic B according to the invention by modulo B additions (in coding) and - subtractions (during decoding) by a multiple of a fixed increment D. The increment D is at Fuzzy procedure greater than 1, preferably straight, otherwise it is 1. If the value of the partial information is j, the cell values for the inversion cells for this partial information are coded by D * j, modulo B * D, elevated.
Beim Decodieren werden wie bisher Zellwerte verglichen, zum Vergleich werden die Zellwerte der betreffenden Nichtinversionszellen von denen der Inversionszel¬ len modulo B*D subtrahiert. Das Ergebnis kann wie bisher über mehrere Subtrak¬ tionen gemittelt werden (Ergebnis modulo B*D nehmen). Das Ergebnis wird durch D dividiert und gerundet und dann als gesuchte Teilinformation t ausgege- ben.During decoding, as in the past, cell values are compared; for comparison, the cell values of the relevant non-inversion cells are subtracted from those of the inversion cells modulo B * D. The result can be averaged over several subtractions as before (take the result modulo B * D). The result is divided by D and rounded off and then output as searched partial information t.
Liegen weitere Decodierschritte an, so werden wie bisher die Inversionszellen der Teilinformation invertiert, wobei hier die Inversion durch Subtraktion von t*D geschieht, Modulo-B*D.If there are further decoding steps, the inversion cells of the partial information are inverted as before, in which case the inversion is done by subtracting t * D, modulo B * D.
Bisher basierte die Decodierung auf dem Vergleich von Zellen mit der Abfrage "eher gleich oder eher ungleich?". Nun geschieht also der Vergleich mit der Ab¬ frage "wie sehr unterscheiden sich die Zellwerte". Bei Nicht-Fuzzy- Vorgehensweise (D = 1) entspricht die Differenz der Zell werte dem Decodierer- gebnis dieses Schritts, wobei wie bisher gemittelt werden kann. Bei Fuzzy- Vorgehensweise (D > 1) rechnet man in D-stufiger Quantisierung, die - ggf. nach Mittelwertbildung - durch die Division durch D wieder rückgängig gemacht wird.So far, decoding was based on comparing cells with the query "more or less equal?". Now, the comparison with the query "how much do the cell values differ?" In a non-fuzzy procedure (D = 1), the difference of the cell values corresponds to the decoding result of this step, which can be averaged as before. With fuzzy procedure (D> 1) one counts in D-stage quantization, which - if necessary after averaging - by the division by D is canceled again.
Mehrwertige Fuzzy-Realisierung sei an einem Beispiel mit dreiwertiger Logik (Wertevorrat der Teilinformationen sei 0, 1, 2), mit B = 3, D = 4 erläutert: Wer¬ temenge ist 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 mit den sicheren Werten 0, 4, 8 und den unsicheren Zwischenwerten 2, 6, 10. Der Fuzzy- Vergleich einer Inversions¬ zelle mit Wert 10 und einer Nichtin versionszelle mit Wert 1 führt auf die Diffe¬ renz 9, durch 4 dividiert und gerundet gibt 2. Also ist 2 die gesuchte Teilinforma¬ tion. Falls weitere Decodierschritte anstehen, werden die betroffenen Inversions- zellen invertiert, d.h. es wird 2*4 subtrahiert, modulo 12.Polyvalent fuzzy realization is explained using an example with trivalent logic (value store of the partial information is 0, 1, 2), with B = 3, D = 4: Wer¬ temenge is 0, 1, 2, 3, 4, 5, 6 , 7, 8, 9, 10, 11 with the safe values 0, 4, 8 and The uncertain intermediate values 2, 6, 10. The fuzzy comparison of an inversion cell with value 10 and a noninversion cell with value 1 leads to the difference 9, divided by 4 and rounded gives 2. Thus, 2 is the sought Teilinforma¬ tion. If further decoding steps are pending, the affected inversion cells are inverted, ie 2 * 4 is subtracted, modulo 12.
Diese dritte Verallgemeinerung ist besonders vorteilhaft bei mehrwertiger Pha¬ senmodulation.This third generalization is particularly advantageous in polyvalent phase modulation.
Fig. 12 zeigt eine Hardwarerealisierung zu einem einfachen Beispiel. Fig. 12 ist ein Schema, Details wie z.B. Steuersignale sind weggelassen. Die Codierung ist oben dargestellt, die Decodierung unten.Fig. 12 shows a hardware realization for a simple example. Fig. 12 is a schematic showing details such as e.g. Control signals are omitted. The coding is shown above, the decoding below.
Im Beispiel Fig. 12 haben wir die folgende Konfiguration, siehe Fig. 13 (Zellen zl...z4):In the example of Fig. 12, we have the following configuration, see Fig. 13 (cells zl ... z4):
Teilinformation 10 ist wie in Fig. 1 ein Sonderfall und besteht nur aus Inversions¬ zellen.Partial information 10 is a special case as in FIG. 1 and consists only of inversion cells.
Teilinformation Il besitzt die Zelltupel Al mit Inversionszelle zl und Nichtinver- sionszelle z3, und Zelltupel A2 mit Inversionszelle z2 und Nichtin versionszelle z4. Teilinformation 12 besitzt die Zelltupel Bl mit Inversionszelle zl und Nichtin- versionszelle z2, und Zelltupel B2 mit Inversionszelle z3 und Nichtinversionszelle z4.Partial information Il has the cell tuples Al with inversion cell zl and noninversion cell z3, and cell tuple A2 with inversion cell z2 and noninversion cell z4. Partial information 12 has the cell tuples Bl with inversion cell zl and noninversion cell z2, and cell tuber B2 with inversion cell z3 and noninversion cell z4.
Codierung (Beispiel Fig. 12):Coding (Example Fig. 12):
Wir gehen wiederum zunächst von binären Zellen aus. Es ist ein Signal mit 3 Teilinformationen zu je ein Bit zu codieren, 10, II, 12. Insgesamt stehen 4 Bit für die Codierung zur Verfügung. Die Codierstrecke ist eine Pipeline, bestehend aus drei Registern 11 mit je 4 binären Zellen 10. Die Zellen werden für die folgende Beschreibung für jedes Register von links nach rechts von 1 bis 4 durchnummeriert, ebenso von links nach rechts; diese Nummern sind in Fig. 11 der Übersichtlichkeit halber nicht eingezeichnet.Again, we start with binary cells. It is a signal with 3 pieces of information to encode each one bit, 10, II, 12. A total of 4 bits are available for encoding. The coding path is a pipeline consisting of three registers 11 each having 4 binary cells 10. The cells are numbered 1 to 4 for each register from left to right for the following description, as well as from left to right; these numbers are not shown in FIG. 11 for the sake of clarity.
Von Codierschritt zu Codierschritt werden die Zellen, von links nach rechts, von Register zu Register übertragen (Zeil-parallel mit 4 Schieberegistern der Länge 3 oder Zeil-seriell mit einem Schieberegister der Länge 12). Im ersten Schritt wird das Informationsbit IO in das erste Register übertragen (formell kann man das der Systematik halber als XOR- Verknüpfung mit einem Grundwert logisch "0" be¬ trachten. Realisiert man diese XOR- Verknüpfungen tatsächlich, so kann genauso gut der logische Grundwert "1" verwendet werden).From coding step to coding step, the cells are transferred, from left to right, from register to register (line parallel with 4 shift registers of length 3 or line serial with a shift register of length 12). In the first step, the information bit IO is transferred to the first register (formally this can be considered as an XOR combination with a basic value of logic "0".) If these XOR operations are actually implemented, the basic logic value can just as well "1" are used).
Im zweiten Codierschritt wird das Informationsbit Il XOR-verknüpft mit dem Inhalt der ersten beiden Zellen des zweiten Registers, das Ergebnis wird in die betreffenden Zellen zurückgeschrieben. Im dritten Codierschritt wird das Informa¬ tionsbit 12 XOR-verknüpft mit dem Inhalt der ersten und dritten Zelle des dritten Registers, das Ergebnis wird in die betreffenden Zellen zurückgeschrieben.In the second coding step, the information bit II is XOR-linked to the content of the first two cells of the second register, the result is written back to the cells in question. In the third coding step, the information bit 12 is XOR-linked to the contents of the first and third cell of the third register, the result is written back into the relevant cells.
Parallel mit der Bearbeitung von Il im zweiten Register kann die Bearbeitung des nächsten 10- Wertes im ersten Register erfolgen, etc. (Pipeline).Parallel to the processing of Il in the second register, the processing of the next 10 value in the first register can be done, etc. (pipeline).
Der erzeugte Code ist wie folgt (cl..c4 entspricht den Zellnummern 1...4 der Re¬ gister): The generated code is as follows (cl..c4 corresponds to the cell numbers 1 ... 4 of the registers):
12 Il IO cl c2 c3 c412 Il IO cl c2 c3 c4
0 0 0 0 0 0 00 0 0 0 0 0 0
0 0 1 1 1 1 10 0 1 1 1 1 1
0 1 0 1 1 0 00 1 0 1 1 0 0
0 1 1 0 0 1 10 1 1 0 0 1 1
1 0 0 1 0 1 01 0 0 1 0 1 0
1 0 1 0 1 0 11 0 1 0 1 0 1
1 1 0 0 1 1 01 1 0 0 1 1 0
1 1 1 1 0 0 11 1 1 1 0 0 1
Ersichtlich kommt "1" nur in geradzahliger Anzahl vor, die Mindestdistanz ist daher 2.It is clear that "1" is only an even number, so the minimum distance is 2.
Decodierung (Beispiel Fig. 12):Decoding (Example Fig. 12):
Zur Decodierung werden Register in umgekehrter Reihenfolge bearbeitet. Im ers¬ ten Decodierschritt wird das Infomationsbit 12 gewonnen durch XOR- Verknüpfung des Inhalts der ersten und zweiten Zelle des dritten Registers und durch XOR- Verknüpfung des Inhalts der dritten und vierten Zelle des dritten Re- gisters. Sind die Vergleichsergebnisse beide 1, so wird auf 12 = 1 decodiert, sind sie beide 0, so wird auf 12 = 0 decodiert.For decoding, registers are processed in reverse order. In the first decoding step, the information bit 12 is obtained by XORing the contents of the first and second cells of the third register and XORing the contents of the third and fourth cells of the third register. If the comparison results are both 1, 12 = 1 is decoded, if they are both 0, 12 = 0 is decoded.
Da in diesem bewusst einfachen Beispiel zwei Vergleichsergebnisse vorliegen, ist ein Mehrheitsentscheid wie in Fig. 15 nicht möglich. Vorteilhaft wird mit Fuzzy- Zellwerten gearbeitet und für diese Entscheidung werden beide Vergleichsergeb¬ nisse miteinander betrachtet durch einfache Summation der Fuzzy-XOR- Werte, gefolgt durch eine Schwellwertentscheidung, wie zu den Beispielen Fig. 16-19 beschrieben, ggf. ergänzt durch eine nichtlineare Kennlinie. Solche Summations- und Schwellwertglieder sind in Fig. 12 mit Nr. 14 gekennzeichnet. Abhängig von 12 werden die erste und die dritte Zelle des dritten Registers inver¬ tiert, indem 12 mit den betreffenden Zellwerten (Fuzzy-)XOR- verknüpft wird und das Ergebnis in die Zellen zurückgeschrieben wird.Since there are two comparison results in this deliberately simple example, a majority decision as in FIG. 15 is not possible. Advantageously, fuzzy cell values are used, and for this decision both comparison results are considered together by simple summation of the fuzzy XOR values, followed by a threshold value decision, as described for the examples FIG. 16-19, possibly supplemented by a non-linear one Curve. Such summation and threshold elements are indicated at 14 in FIG. Depending on 12, the first and the third cell of the third register are inver¬ by 12 with the relevant cell values (fuzzy) XOR- is linked and the result is written back to the cells.
Entsprechend wird mit den weiteren Registern verfahren:Accordingly, proceed with the other registers:
Im zweiten Decodierschritt wird der Inhalt der ersten und dritten Zelle des zwei¬ ten Registers (Fuzzy-)XOR-verknüpft, ebenso der Inhalt der zweiten und vierten Zelle des zweiten Registers, und Il wird vorzugsweise durch Summation der Fuz- zy-XOR- Werte, gefolgt durch eine Schwellwertentscheidung gewonnen. Abhän¬ gig von Il werden die erste und die zweite Zelle des zweiten Registers invertiert, indem Il mit den betreffenden Zellwerten (Fuzzy-)XOR-verknüpft wird und das Ergebnis in die Zellen zurückgeschrieben wird.In the second decoding step, the contents of the first and third cells of the second register (fuzzy) are XOR-linked, as is the content of the second and fourth cells of the second register, and II is preferably obtained by summing the fuzzy XOR values followed by a threshold decision. Dependent on Il, the first and the second cell of the second register are inverted by XORing Il with the respective cell values (fuzzy) and writing the result back into the cells.
Im dritten Decodierschritt wird das Infomationsbit IO durch (Fuzzy-)XOR- Verknüpfung des Inhalts der vier Zellen mit dem Grundwert verknüpft. 10 wird vorzugsweise durch Summation der Fuzzy-XOR-Werte, gefolgt durch eine Schwellwertentscheidung, gewonnen.In the third decoding step, the information bit IO is linked to the basic value by (fuzzy) XOR linking of the contents of the four cells. 10 is preferably obtained by summing the fuzzy XOR values followed by a threshold decision.
Wenn ein Fehlersignal ("Fehlerbild", s.o.) gewonnen werden soll, werden hier abhängig von 10 die vier Zellen des ersten Registers invertiert, indem 10 mit den betreffenden Zellwerten (fuzzy-)XOR verknüpft wird und das Ergebnis in die Zellen zurückgeschrieben wird. Dieser Rückführzweig ist im letzten Schritt für die Decodierung selbst nicht notwendig.If an error signal ("error picture", see above) is to be obtained, the four cells of the first register are inverted here, depending on 10, by 10 being linked to the respective cell values (fuzzy) XOR and the result written back into the cells. This return branch is not necessary in the last step for the decoding itself.
Teilinformation 10 ist wie in Fig. 1 ein Sonderfall und besteht nur aus Inversions¬ zellen. Hier wird nach Fig. 11 die Entscheidung nicht auf Basis eines Zellver¬ gleichs gefällt. Dem kann in einfacher Weise abgeholfen werden durch eine diffe- rentielle Codierung von (vorzugsweise aufeinander folgenden) 10- Werten: beim Codieren werden die I0-Werte durch XOR- Verknüpfung aufeinander folgender 10- Werte ersetzt; bei der Decodierung werden dementsprechend, vor dem Summa- tions- und Schwellwertglied 14 zu 10, ein (Fuzzy)-XOR- Vergleich mit aus der letzten IO-Entscheidung zwischengespeicherten Zellen eingebaut.Partial information 10 is a special case as in FIG. 1 and consists only of inversion cells. Here, according to FIG. 11, the decision is not made on the basis of a cell comparison. This can be remedied in a simple manner by a differential coding of (preferably consecutive) 10 values: in coding, the I0 values are replaced by XORing successive 10 values; in decoding, accordingly, before the summation tion and threshold element 14 to 10, a (fuzzy) XOR comparison built with cached from the last IO decision cells.
Das hier gezeigte einfache Beispiel hat eine Coderate von 3/4.The simple example shown here has a code rate of 3/4.
Auch die Decodierung kann in Pipeline- Arbeitsweise durchgeführt werden.The decoding can also be carried out in a pipelined manner.
Das Fehlerbild kann zellweise als Abweichung vom logischen Grundwert "0" bzw. "1" (s.o.) bewertet werden.The error image can be evaluated cell by cell as a deviation from the logical basic value "0" or "1" (see above).
Platzierung:Placement:
Geometrisch gesehen spielt der Platz, wo sich Zellen letztlich im Signal befinden, keine Rolle; es kommt nur auf die teilinformationsspezifische Aufteilung in Inver- sions- und Nichtinversionszellen und die Zuordnung zu Zelltupeln an. Wir könn¬ ten also durchaus zwei beliebige Zellen in den in Fig. 1 bis 10 gezeigten Figuren örtlich austauschen, solange man die Bedeutung "Inversionszelle"- "Nichtinversionszelle" in jeder der Figuren 1..10 mit vertauscht und ebenso die Zugehörigkeit zu den Zelltupeln.Geometrically, the place where cells are ultimately in the signal does not matter; it depends only on the partial information-specific division into in- version and non-inversion cells and the assignment to cell tuples. Thus, we could exchange locally any two cells in the figures shown in FIGS. 1 to 10, as long as the meaning "inversion cell" - "non-inversion cell" in each of FIGS. 1.10 is reversed and also the affiliation with the cell tuples ,
Noch nicht einmal die geometrische 10 x 3 -Anordnung der Zellen braucht beibe¬ halten zu werden. Man kann am Signalausgang durchaus die Zellen in einem an¬ deren Format platzieren, insbesondere auch eindimensional. Die in Fig. 1 bis 10 gezeigte Platzierung von Zellen kann also lediglich als eine Hilfsanordnung, also eine rein gedankliche Anordnung, zur besseren Veranschaulichung der Konfigura¬ tion verwendet werden. Die endgültige Platzierung, d.h. die zeitliche Reihenfolge bzw. örtliche Anordnung der Zellinhalte im Kanal, kann identisch sein mit der Hilfsanordnung oder auch davon abweichen. Die Hilfsanordnung kann durchaus auch mit mehr als zwei Dimensionen realisiert sein, sogar für eindimensionale Signale. Die endgültige Platzierung der Zellen wird nun vorzugsweise und erfindungsge¬ mäß in gestreuter Platzierung durchgeführt.Not even the geometric 10 x 3 arrangement of the cells needs to be maintained. It is quite possible to place the cells in an other format at the signal output, in particular one-dimensionally. The placement of cells shown in FIGS. 1 to 10 can therefore be used merely as an auxiliary arrangement, that is to say as a purely conceptual arrangement, for a better illustration of the configuration. The final placement, ie the temporal order or local arrangement of the cell contents in the channel, may be identical to the auxiliary arrangement or even deviate therefrom. The auxiliary arrangement can certainly also be realized with more than two dimensions, even for one-dimensional signals. The final placement of the cells is now preferably carried out according to the invention in scattered placement.
Bei einer gestreuten Platzierung liegen Zelltupel zu einer Teilinformation mög- liehst weit auseinander.In a scattered placement, cell tuples may be scattered to a partial information.
Technisch sprechen wir hier bei einem Codierschritt dann von einer gestreuten Platzierung, wenn für diesen Codierschritt in der endgültigen Platzierung mindes¬ tens drei Mengen von Zelltupeln bildbar sind, Platzierungsmengen genannt, die örtlich - bzw. zeitlich bei Zeitsignalen - über mindestens eine Zelle voneinander getrennt sind.Technically, we speak here of a scattering placement in an encoding step if at least three sets of cell tuples can be formed for this coding step in the final placement, called placement quantities, which are spatially or temporally separated from one another by at least one cell in the case of time signals ,
Ziel der gestreuten Platzierung ist dasselbe wie bei dem bekannten Interleaving, durch das nicht nur Einzelfehler, sondern auch Bündelfehler korrigiert werden können.The aim of the scattered placement is the same as in the known interleaving, by which not only single errors but also burst errors can be corrected.
Beim Decodieren werden für jeden Decodierschritt vorzugsweise Mehrheitsent¬ scheidungen über mehrere Zelltupel getroffen. Liegen diese Zelltupel weit ausein¬ ander, so wirkt sich ein Bündelfehler nur auf eines der Zelltupel aus; bei mindes- tens drei weit auseinander liegenden Mengen von Zelltupeln, den Platzierungs¬ mengen, können über Mehrheitsentscheid über Platzierungsmengen die richtigen Entscheidungen getroffen werden.When decoding, majority decisions are preferably made for a plurality of cell tuples for each decoding step. If these cell tuples are widely separated, a bundle error affects only one of the cell tuples; With at least three widely spaced amounts of cell tuples, the placement quantities, the right decisions can be made by majority decision on placement quantities.
Das Platzierungsmuster muss natürlich dem Codierer wie dem Decodierer be- kannt sein.Of course, the placement pattern must be known to the encoder as well as the decoder.
Im Sinne lokal durchzuführender Zellvergleiche sollten sich jedoch andererseits die Inversions- und Nichtinversionszellen innerhalb eines Zelltupels nahe bei¬ sammen befinden. Lokal durchzuführende Zellvergleiche sind immer dann vor- teilhaft, wenn sich Signalstörungen auf benachbarte Zellen gleichartig oder ähn¬ lich auswirken. Dies ist beispielsweise bei Bildern der Fall, wo die Lichtverhält- nisse innerhalb des Bildes lokal kaum, global jedoch sehr stark verschieden sein können; ein gutes Beispiel sind nadelgeprägte Matrixcodes, wo die Prägungen im Bild aufgrund verschiedener Beleuchtungs- und Betrachtungswinkel in höchst unterschiedlichen Formen erscheinen können, sich nah beisammen liegende Prä- gungen wegen lokal ähnlicher Beleuchtungsverhältnisse jedoch kaum voneinan¬ der unterscheiden. Auch bei eindimensionalen Signalen gibt es solche Erschei¬ nungen: Bei Amplitudenmodulation ist der Empfangspegel in der Regel nie¬ derfrequenten Schwankungen unterworfen, bei Phasenmodulation kann sich die Grundphase ändern, sie bleibt aber in der Regel über längere Zeitabschnitte nähe- rungsweise konstant.In the sense of local cell comparisons, however, the inversion and non-inversion cells within a cell tuple should, on the other hand, be close to one another. Cell comparisons to be performed locally are always advantageous if signal disturbances have a similar or similar effect on neighboring cells. This is the case, for example, with pictures where the light conditions within the picture can hardly be local, but very different globally; A good example is needle-embossed matrix codes, where the imprints in the image may appear in very different forms due to different illumination and viewing angles, but hardly differ from each other in closely related imprints due to locally similar illumination conditions. In the case of one-dimensional signals, there are such phenomena: With amplitude modulation, the reception level is generally subject to low-frequency fluctuations; in phase modulation, the fundamental phase can change, but it usually remains approximately constant over relatively long periods of time.
Fig. 20 zeigt ein Beispiel zur gestreuten Platzierung zu einem Beispiel ähnlich den Figuren 2 bis 10: Codierschritt 2 und 3 entspricht der Schrittkonfiguration von Fig. 2 bzw. 3, Codierschritt i entspricht der Schrittkonfiguration von Fig. 7; das Zellfeld ist allerdings mit 14 x 3 Zellen größer, siehe Fig. 20 oben. Zur gestreuten Platzierung wird nun die zweite Zeile (ggf. zyklisch) um 5 Zellen nach rechts ver¬ schoben, die dritte Zeile um 10 Zellen nach rechts verschoben, siehe Fig. 20 un¬ ten. Die Zuordnungen zu den Zelltupeln werden mit verschoben. Im Codierschritt 2 und 3 erhält man so drei Mengen 31 von Zelltupeln, die die Bedingung von Plat- zierungsmengen erfüllen, also voneinander örtlich über mindestens eine Zelle voneinander getrennt sind.Fig. 20 shows an example of scattered placement for an example similar to Figs. 2 to 10: coding steps 2 and 3 correspond to the step configuration of Figs. 2 and 3, respectively; coding step i corresponds to the step configuration of Fig. 7; However, the cell field is larger with 14 x 3 cells, see Fig. 20 above. For the scattered placement, the second line (possibly cyclically) is shifted to the right by 5 cells, the third line is shifted to the right by 10 cells, see FIG. 20 below. The assignments to the cell tuples are also shifted. In coding steps 2 and 3, one thus obtains three quantities 31 of cell tuplets, which fulfill the condition of placement quantities, ie are separated from one another spatially by at least one cell.
Fig. 21 zeigt eine eindimensionale endgültige Zellanordnung zu Codierungsschrit¬ ten 1 bis 8 mit drei oder vier Zelltupeln je Schritt. In Schritt 1 bis 5 existieren drei Platzierungsmengen aus je einem Zelltupel mit je einer Inversionszelle und einer Nichtinversionszelle, die durch jeweils mindestens zwei Zellen voneinander ge¬ trennt sind.FIG. 21 shows a one-dimensional final cell arrangement for coding steps 1 to 8 with three or four cell tuples per step. In step 1 to 5 there are three placement quantities each consisting of one cell tuple, each with one inversion cell and one noninversion cell, which are separated from each other by at least two cells each.
Anmerkung: nicht alle Inversionszellen müssen zu Zelltupeln angehören, wie o- ben anhand Beispiel Fig. 11 bereits geschildert. Auch im Beispiel Fig. 21 existie¬ ren solche Inversionszellen. Solche, die zu Zelltupeln gehören, sind mit "i" ge- kennzeichnet, solche die nicht zu Zelltupeln gehören, sind mit "I" gekennzeichnet. Letztere Zellen spielen bei der Betrachtung der Platzierungsmengen keine Rolle.Note: Not all inversion cells must belong to cell tuples, as already described above with reference to FIG. 11. In the example of FIG. 21, too, such inversion cells exist. Those that belong to cell tuples are marked with "i" indicates that those that do not belong to cell tuples are marked with "I". The latter cells play no role in the consideration of the placement quantities.
Die bisherigen Betrachtungen haben zur Vereinfachung der Beschreibung eine gestreute Platzierung außer Acht gelassen.The previous considerations have disregarded a scattered placement to simplify the description.
Eine erfindungsgemäße Erweiterung besteht darin, vorzugsweise nach Abschluss der Codierung die Daten mit einem Raster XOR- zu verknüpfen, z.B. mit einem Schachbrett oder im Eindimensionalen mit einer 010101.. Folge, oder auch einer Zufallsfolge. Dies wird im folgenden Gitteroperation genannt. Dadurch kann eine gewisse Strukturierung der Daten erreicht werden, dergestalt, dass unabhängig von der codierten Information, (lokal) immer eine gewisse Mindestanzahl von Zellen mit logisch 1 und eine Mindestanzahl mit logisch 0 belegt ist (bei dem o- ben aufgeführten Beispiel wird - auch nach gestreuter Platzierung - durch Ver- wenden eines einfachen Schachbrett-Gitters erreicht, dass sich in dem 3 x 10-Feld immer mindestens 7 logisch 1 -Zellen und mindestens 7 logisch 0-Zellen befin¬ den). Der Code erhält dadurch eine gewisse Musterung. Diese Eigenschaft kann vorteilhaft für die Demodulation verwendet werden, insbesondere auch für die Synchronisation, mit einer Rückwirkung von der Decodierung auf die Demodula- tion. Primitivstes Beispiel wäre das Durchfahren einer Binarisierungsschwelle, bis die Mindestanzahlen erfüllt sind. Auch für ein Rückweisungskriterium ist diese Eigenschaft nützlich; primitives Beispiel: ein ganz schwarzes Bild wird so ohne zusätzliche Sonderabfragen automatisch zurückgewiesen. Vor der eigentlichen Decodierung wird eine Gitter-Operation durchgeführt, um sie wieder rückgängig zu machen.An extension according to the invention is preferably to link the data with a grid XOR-, after completion of the encoding, e.g. with a chessboard or in one-dimensional with a 010101 .. sequence, or even a random sequence. This is called in the following grid operation. As a result, a certain structuring of the data can be achieved, such that, independently of the coded information, (locally) a certain minimum number of cells is always assigned a logical 1 and a minimum number is logically 0 (in the example cited above, too after scattered placement - achieved by using a simple checkerboard grid, that in the 3 x 10 field always at least 7 logical 1 cells and at least 7 logical 0 cells befin¬ the). The code gets thereby a certain pattern. This property can advantageously be used for the demodulation, in particular also for the synchronization, with a retroactive effect from the decoding to the demodulation. The most primitive example would be to go through a binarization threshold until the minimum numbers are met. Also for a rejection criterion, this property is useful; primitive example: a completely black image is automatically rejected without additional special queries. Before the actual decoding, a grid operation is performed to undo it.
Alternativ oder auch ergänzend kann man auch das Codierungsergebnis um ein festes Synchronisations- oder Referenzierungsmuster ergänzen, beispielsweise eine Folge von alternierenden Symbolen wie 0101010... 012012012012... etc.Alternatively or in addition, the coding result can also be supplemented by a fixed synchronization or referencing pattern, for example a sequence of alternating symbols such as 0101010 ... 012012012012 ... etc.
Ein wichtiges Thema ist die optimale Gestaltung der Konfiguration. Zwei systematische Ansätze zur Konfiguration, die beide aus dem Beispiel Fig. 1 bis 10 ansatzweise erkennbar sind, sind miteinander kombinierbar:An important issue is the optimal design of the configuration. Two systematic approaches to the configuration, both of which can be recognized starting from the example of FIGS. 1 to 10, can be combined with one another:
1) Man zerlege sukzessive in kleine Bereiche unterschiedlicher (X-)Koordinaten, denen Inversions- und Nichtinversionszellen zugeordnet sind, wie dies aus Fig. 2 bis 6 erkennbar ist.1) Disassemble successively into small regions of different (X) coordinates, which are associated with inversion and non-inversion cells, as can be seen from FIGS. 2 to 6.
2) Aus unserem Beispiel Fig. 1 bis 10 ist ersichtlich, dass eine dimensionsweise Organisation der Zellen hilfreich sein kann: die Mengen Ml bis M6 sind vertikal orientiert, d.h. vertikal untereinander stehende Zellen sind alle gleichartig, wäh¬ rend die Mengen M7 bis MIO horizontal orientiert sind. Auch Hilfsanordnungen mit mehr als 2 Dimensionen sind grundsätzlich möglich.2) From our example Figures 1 to 10 it can be seen that a dimensional organization of the cells may be helpful: the quantities M1 to M6 are oriented vertically, i. Vertically standing cells are all similar, while the quantities M7 to M10 are oriented horizontally. Also auxiliary arrangements with more than 2 dimensions are possible in principle.
Mehrdimensionale Hilfsanordnungen werden im Folgenden anhand des Beispiels gemäß Fig. 22 bis 31 mit einer dreidimensionalen Hilfsanordnung erläutert:Multi-dimensional auxiliary arrangements are explained below with reference to the example according to FIGS. 22 to 31 with a three-dimensional auxiliary arrangement:
Zu codieren sei ursprünglich eine 8-Bit-Information. In einer Vorverarbeitung wird diese durch ein Paritybit ergänzt, so dass wir im folgenden im folgenden davon ausgehen, dass eine 9-Bit-Information zu codieren sei, bitweise in 9 Co¬ dierschritten S1..S9. Die Codierung erfolge binär, dafür stehen insgesamt 64 Zel¬ len mit binären Zellwerten zur Verfügung.To encode is originally an 8-bit information. In a preprocessing this is supplemented by a parity bit, so that in the following we assume that a 9-bit information is to be encoded bit by bit in 9 encoding steps S1..S9. The coding is binary, for a total of 64 cells with binary cell values are available.
Diese 64 Zellen werden nun hilfsweise in einer dreidimensionalen 4x4x4- Anordnung, kurz Würfel genannt, angeordnet.These 64 cells are now alternatively arranged in a three-dimensional 4x4x4 arrangement, cubes for short.
Die Figuren 22 bis 30 zeigen Schrittkonfigurationen für die Schritte Sl bis S9. Die drei Dimensionen werden unter Bezug auf die Figuren mit links/rechts, vor¬ ne/hinten und oben/unten bezeichnet. In den Figuren sind die Inversionszellen des jeweiligen Schritts schraffiert gezeichnet. In den Schritten Sl, S2, S3 geschieht die Aufteilung in Inversionszellen und Nichtinversionszellen links/rechts: in Sl (Fig. 22), in S2 (Fig. 23), und S3 (Fig. 24) entstehen so von links nach rechts je eine 4x4x1 -Scheibe von Inversionszel¬ len. Die Zelltupel 1 bestehen je aus einer Inversionszelle und einer (nicht unbe- dingt genau einer) Nichtinversionszelle weiter rechts (nicht unbedingt direkt be¬ nachbart, wie in Fig. 22 und 23 durch die schraffierte Pfeile angedeutet ist).FIGS. 22 to 30 show step configurations for steps S1 to S9. The three dimensions are referred to with reference to the figures with left / right, front / rear and top / bottom. In the figures, the inversion cells of the respective step are shaded. In steps S1, S2, S3 the division into inversion cells and non-inversion cells takes place left / right: in S1 (FIG. 22), in S2 (FIG. 23), and S3 (FIG. 24), one each arises from left to right 4x4x1 disc of inversion cells. The cell tubers 1 each consist of an inversion cell and a (not necessarily exactly one) non-inversion cell farther to the right (not necessarily directly adjoined, as indicated by the hatched arrows in FIGS. 22 and 23).
In den Schritten S4, S5, S6 geschieht die Aufteilung in Inversionszellen und Nichtinversionszellen vorne/hinten: in S4 (Fig. 25), in S5 (Fig. 26), und S6 (Fig. 27) entstehen so von vorne nach hinten je eine 4x4xl-Scheibe von Inversionszel¬ len. Die Zelltupel 1 bestehen je aus einer Inversionszelle und einer (nicht unbe¬ dingt genau einer) Nichtinversionszelle weiter hinten (nicht unbedingt direkt be¬ nachbart).In steps S4, S5, S6, the division into inversion cells and non-inversion cells takes place front / rear: in S4 (FIG. 25), in S5 (FIG. 26), and S6 (FIG. 27), one each arises from front to back 4x4xl slice of inversion cells. The cell tubers 1 each consist of an inversion cell and a (not necessarily exactly one) non-inversion cell further back (not necessarily directly adjacent).
In den Schritten S7, S8, S9 geschieht die Aufteilung in Inversionszellen und Nichtinversionszellen oben/unten: in S7 (Fig. 28), in S8 (Fig. 29), und S9 (Fig. 30) entstehen so von oben nach unten je eine 4x4xl-Scheibe von Inversionszellen. Die Zelltupel 1 bestehen je aus einer Inversionszelle und einer (nicht unbedingt genau einer) Nichtinversionszelle weiter unten (nicht unbedingt direkt benach- bart).In steps S7, S8, S9, the division into inversion cells and non-inversion cells takes place up / down: in S7 (FIG. 28), in S8 (FIG. 29), and S9 (FIG. 30), one each arises from top to bottom 4x4xl slice of inversion cells. The cell tubers 1 each consist of an inversion cell and a (not necessarily exactly one) non-inversion cell further down (not necessarily directly adjacent).
Natürlich können hier sinngemäße Vertauschungen und sonstige Änderungen vorgenommen werden, z.B. können in Fig. 30 die Inversionszellen und Nichtin¬ versionszellen der Zelltupel 1 vertauscht werden.Of course, mutatis mutandis permutations and other changes may be made, e.g. In FIG. 30, the inversion cells and noninversion cells of the cell tuples 1 can be reversed.
Mindestdistanz: Mit jedem gesetzten Bit der 9-Bit-Information ändern sich beim zugehörigen Schritt die zugehörigen Inversionszellen; diese sind in der Hilfsan- ordnung als 4 x 4 x 1 -Scheibe angeordnet, siehe schraffierte Zellen in den Figuren 22 bis 30, wobei die Scheiben dimensionsweise in Scheibentypen unterschieden werden können, also in links/rechts-Scheiben (S1...S3), vorne/hinten-Scheiben (S4...S6) und oben/unten-Scheiben (S7...S9). Da die Ursprungsinformation um ein Paritybit ergänzt wurde, unterscheiden sich zwei beliebige Wörter der 9-Bit Information um mindestens zwei Bit, die fertig codierten Zellen zu zwei solchen Wörtern unterscheiden sich also um mindestens zwei Scheiben. Gehören diese beiden Scheiben demselben Typ an, so ist die Distanz 2 x 4 x 4 = 32, also der Hälfte des Würfels entsprechend. Die Situation, dass zwei Scheiben verschiede¬ nen Typen angehören, ist in Fig. 31 gezeigt. Die Zellen, die beiden Scheiben an¬ gehören, werden in diesem Fall zweimal invertiert, tragen also nichts zur Unter¬ scheidung bei. Solche Zellen sind in Fig. 31 mit 21 gekennzeichnet und kariert gezeichnet. Es verbleibenden 3 x 4 + 3 x 4, also 24 Inversionszellen, in denen sich die beiden betreffenden Wörter unterscheiden. Die Mindestdistanz ist somit 24.Minimum Distance: With each set bit of the 9-bit information, the corresponding inversion cells change at the associated step; these are arranged in the auxiliary arrangement as a 4 × 4 × 1 plate, see hatched cells in FIGS. 22 through 30, wherein the discs can be differentiated into disc types by dimension, ie in left / right discs (S1 ), front / rear discs (S4 ... S6) and top / bottom discs (S7 ... S9). Since the source information um a parity bit has been added, two arbitrary words of the 9-bit information differ by at least two bits, the finished coded cells to two such words thus differ by at least two slices. If these two disks belong to the same type, the distance is 2 x 4 x 4 = 32, ie half of the cube. The situation that two disks belong to different types is shown in FIG. 31. The cells which belong to both disks are inverted twice in this case, thus contributing nothing to the differentiation. Such cells are marked with 21 in FIG. 31 and drawn in a checkered manner. It remains 3 x 4 + 3 x 4, so 24 inversion cells, in which the two words concerned differ. The minimum distance is thus 24.
Die Coderate des Systems ist zwar mit 8/64 = 1/8 relativ gering, doch wird dies durch die relativ hohe Mindestdistanz ausgeglichen und insbesondere durch die allgemeinen Vorteile dieser Erfindung: Decodierung alleine durch Vergleiche von Zellen bzw. Werten, die den Zellen entnommen sind, ohne Referenzzellen bzw. Referenzwerte, Mehrheitsentscheidungen über viele Vergleiche hinweg, Soft- Decision, Korrekturmöglichkeit von mehr Zellen, als es der Hälfte der Mindest¬ distanz entspricht, direkte Auswertung des Signals ohne separate Demodulation.Although the code rate of the system is relatively low at 8/64 = 1/8, this is compensated for by the relatively high minimum distance and, in particular, by the general advantages of this invention: decoding solely by comparisons of cells taken from the cells , without reference cells or reference values, majority decisions over many comparisons, soft decision, possibility of correction of more cells than corresponds to half the Mindest¬ distance, direct evaluation of the signal without separate demodulation.
Die Erfindung kann natürlich auch als verkettete Codierung in Verbindung mit einer bekannten Codierung verwendet werden, z.B. als innere Codierung, in Ver¬ bindung mit einer algebraischen Codierung (z.B. Reed Solomon) als äußere Co¬ dierung und Interleaving/Deinterleaving zwischen den Codierungsarten.Of course, the invention may also be used as a chained coding in conjunction with a known coding, e.g. as inner coding, in combination with an algebraic coding (for example Reed Solomon) as outer coding and interleaving / deinterleaving between the coding types.
Die Erfindung hat folgende Vorteile:The invention has the following advantages:
Die Wirkungsweise des Verfahrens ist mit seinen Einzelschritten transparent und anschaulich, beim Systementwurf können ganz gezielt anwendungsspezifische Anpassungen realisiert werden, z.B. Modifikationen der Vergleichsfunktionen, Einbau von Kennlinien, Platzierung von Zellen, Definition der Konfiguration, so dass sich eine optimal an die gegebene Anwendung angepasste zu verlas sigkeits- optimierende Decodierung realisieren lässt, mit Betrachtungen direkt auf Signal¬ ebene im Zuge der Decodierung. Demodulation und Decodierung sind verkoppelt und zusammenwirkend.The mode of operation of the method is transparent and vivid with its individual steps, in the system design very specific application-specific adjustments can be realized, eg modifications of the comparison functions, installation of characteristics, placement of cells, definition of the configuration, so that optimally adapted to the given application leaving optimizing decoding can be realized, with considerations directly on Signal¬ level in the course of decoding. Demodulation and decoding are coupled and cooperative.
Den Informationsbits kann durch geeignete Konfiguration gezielt unterschiedliche Decodierungssicherheit zugewiesen werden (z.B. bei der Codierung numerischer Messdaten Daten wichtig, wo sich Fehler in den signifikanten Bits stark auswir¬ ken, in den wenig signifikanten Bits u.U. tolerabel sind). Dies kann man insbe¬ sondere durch die folgende Maßnahme erreichen: Die signifikanteren Teilinfor- mationen werden NACH den weniger signifikanten codiert und damit VOR den weniger signifikanten Teilinformationen decodiert, und zwar mit mehr Inversi¬ onszellen als bei den weniger signifikanten Teilinformationen. Damit sind - über Mehrheitsentscheid - die signifikanteren Teilinformationen sicherer decodiert. Es ist auch sinnvoll, den signifikanten Teilinformationen Schritte zuzuordnen, bei denen bei gestreuter Platzierung die Zelltupel möglichst weit auseinander liegen und die Zellen innerhalb der Tupel möglichst nah beisammen liegen. Diesbezüg¬ lich wären für die Signifikanten Teilinformationen z.B. in Fig. 21 die weiter oben gezeichneten Schrittkonfigurationen günstiger als die weiter unten liegenden.The information bits can be assigned a specific degree of decoding security by means of suitable configuration (for example, in the coding of numerical measurement data, data is important, where errors in the significant bits have a strong impact, in the least significant bits are tolerable, among others). This can be achieved, in particular, by the following measure: the more significant partial information is coded AFTER the less significant and thus decoded BEFOR to the less significant partial information, namely with more inversion cells than in the less significant partial information. This means that the more significant partial information is decoded more reliably by majority vote. It also makes sense to assign steps to the significant partial information in which the cell tuples are as far apart as possible when scattered and the cells within the tuple are as close together as possible. In this regard, the signifiers would have partial information, e.g. in Fig. 21, the above-drawn step configurations cheaper than those further down.
Als ein einfachstes Beispiel für zuverlässigkeitsoptimierende Decodierung diene das Beispiel Fig. 12: die Mindestdistanz des Codes ist 2, also sind mit algebrai¬ schen Decodiermethoden nur Fehlererkennungen, aber keine Fehlerkorrekturen möglich. Schon die beschriebene Vorgehensweise mit Fuzzy-Logic (ohne Signal¬ vergleiche über mehrere Pixel innerhalb der Zellen) erlaubt hier Fehlerkorrektu- ren, in bestimmten Fällen sogar für mehrere Zellen, indem sich in den Schwell¬ wertelementen unsichere Zellen automatisch aus dem Entscheidungsprozess zu¬ rückhalten und von sicheren Zellen "überstimmt" werden.As a simplest example of reliability-optimizing decoding, the example of FIG. 12 serves: the minimum distance of the code is 2, so with algebraic decoding methods only error detections, but no error corrections are possible. Even the described procedure with fuzzy logic (without signal comparisons over several pixels within the cells) permits error corrections, in some cases even for several cells, by automatically retaining in the threshold elements uncertain cells from the decision process and be "overruled" by secure cells.
Entscheidungen werden bei der Decodierung alleine aufgrund von Vergleichen herbeigeführt; es handelt sich also immer um Relativbetrachtungen innerhalb des zu interpretierenden Signals; das System referenziert sich selbst anhand des aktu- eilen Signals, sogar eine Signalinversion rechnet sich automatisch heraus. Letzte¬ res ist besonders wichtig bei Übertragungsstrecken mit Phasenmodulation und bei optisch zu lesenden Codes, bei denen die Zellen abhängig von Beleuchtung und Betrachtungsrichtung eine Kontrastumkehr erfahren können.Decisions are made in decoding solely on the basis of comparisons; it is therefore always relative considerations within the signal to be interpreted; the system references itself based on the current rush signal, even a signal inversion pays off automatically. The latter is particularly important in the case of transmission paths with phase modulation and codes to be read optically, in which the cells can undergo a contrast reversal, depending on the illumination and viewing direction.
Eine weitere Steigerung der Decodierqualität ergibt sich durch dadurch, dass der Vergleich direkt auf Signalebene (Pixelebene) realisiert wird. Dies hat insbeson¬ dere dann offensichtliche Vorteile, wenn sich die Eigenschaften der Zellinhalte (örtlich oder zeitlich) niederfrequent verändern.A further increase of the decoding quality results from the fact that the comparison is realized directly on the signal level (pixel level). This has obvious advantages, in particular, when the properties of the cell contents (locally or temporally) change at low frequency.
Des weiteren umfasst die Erfindung ein Verfahren zur Codierung einer durch Teilinformationen darstellbaren Information, wobei durch die Codierung Zellen Zellwerte zuzuweisen sind, gekennzeichnet durch a) teilinformationsweise Codierschritte, b) teilinformationsspezifische Zelltupelmengen, deren Zelltupel aus zweierlei Ty¬ pen von Zellen bestehen, Inversionszellen und Nichtinversionszellen, wobei jedes Zelltupel aus mindestens einer Inversionszelle und mindestens einer Nichtinversi- onszelle besteht, wobei die Zellen innerhalb jedes Zelltupels für jeden vorangehenden Codierschritt entweder alleFurthermore, the invention encompasses a method for coding information that can be represented by partial information, wherein cell values are assigned to the cells by the coding, characterized by a) partial information coding steps, b) partial information specific cell tuple sets whose cell tuples consist of two types of cells, inversion cells and noninversion cells , wherein each cell tuple consists of at least one inversion cell and at least one non-inversion cell, wherein the cells within each cell tuple for each preceding coding step either all
Inversionszellen oder alle Nichtinversionszellen sind c) für mindestens einen Codierschritt:Inversion cells or all non-inversion cells are c) for at least one coding step:
XOR Verknüpfung der betreffenden Teilinformation mit den Inversionszellen der betreffenden Zelltupelmenge.XOR Linking of the relevant partial information with the inversion cells of the relevant cell tuple quantity.
Des Weiteren umfasst die Erfindung die folgenden Ausgestaltungen:Furthermore, the invention comprises the following embodiments:
Die Zelltupel können Zellpaare mit einer Inversionszelle und einer Nichtinversi- onszelle sein. Den Zellwerten können Signalwerte, insbesondere auch Pixelwerte von Bildern, zugeordnet werden.The cell tuples can be cell pairs with an inversion cell and a non-inversion cell. Signal values, in particular also pixel values of images, can be assigned to the cell values.
Die Pixel können einen der binären Werte 0 oder 1 annehmen.The pixels can assume one of the binary values 0 or 1.
Einer Zelle können mehrere Pixel zugeordnet sein, wobei die Pixel die Bildpunkte eines Bildes oder einer Bildfolge oder die Signalwerte eines sonstigen Signale sind, mit Zuordnung von Pixelmustern zu den Zellwerten.A cell may be associated with a plurality of pixels, wherein the pixels are the pixels of an image or a sequence of images or the signal values of other signals, with assignment of pixel patterns to the cell values.
Zur Codierung kann vorab eine differentielle Codierung der zuerst bearbeiteten Teilinformation vorgenommen werden.For coding, a differential coding of the partial information processed first can be carried out in advance.
Das Ergebnis kann XOR-verknüpft werden mit einem Muster, bei Bildern mit einem zweidimensionalen Schachbrettmuster, bei eindimensionalen Signalen mit einem 101010...-Muster.The result can be XORed with a pattern, for images with a two-dimensional checkerboard pattern, for one-dimensional signals with a 101010 ... pattern.
Das Ergebnis kann auch XOR-verknüpft werden mit einem Pseudo-Zufallsmuster.The result can also be XORed with a pseudo-random pattern.
Die Erfindung umfasst auch eine Codiereinrichtung für einen Code, der entstehen kann nach einem der genannten erfindungsgemäßen Verfahren, wobei Register mit Zellen verwendet werden, die in Abhängigkeit von Informationsbits invertiert werden können, vorzugsweise über XOR-Gatter.The invention also comprises an encoding device for a code, which can arise according to one of the aforementioned methods according to the invention, wherein registers are used with cells which can be inverted in dependence on information bits, preferably via XOR gates.
Ferner umfasst die Erfindung einen Code, der entstehen kann nach einem solchen Codierverfahren gekennzeichnet, wenn man ihn als nach einem der genannten Codierverfahren entstanden interpretiert, durch eine Platzierung der Zellen, bei der je 2 verschiedene Zelltupel einer Zelltupelmenge so weit voneinander getrennt platziert sind, dass sie mindestens durch je eine andere Zelle, die diesen Zelltupeln nicht angehört, getrennt sind. Ferner umfasst die Erfindung einen Code, der entstehen kann nach einem solchen Codierverfahren gekennzeichnet, wenn man ihn als nach einem solchen Codier¬ verfahren entstanden interpretiert, durch eine Platzierung der Zellen, bei der Paare von Inversions- und Nichtinversionszellen eines Zelltupels über höchstens eine Zwischenzelle benachbart sind, bevorzugt direkt benachbart sind.Furthermore, the invention comprises a code, which can be characterized by such a coding method, when interpreted as being produced according to one of said coding methods, by a placement of the cells in which 2 different cell tuples of a cell tuple quantity are placed so far apart from each other they are separated by at least one other cell, which does not belong to these cell tuples. Furthermore, the invention comprises a code which can be formed after such a coding method, if it is interpreted as being produced according to such a coding method, by a placement of the cells in which pairs of inversion and non-inversion cells of a cell tuple adjoin at most one intermediate cell are, preferably directly adjacent.
Ferner umfasst ist jeweils auch eine Sendeeinrichtung, die mit einem solchen Co¬ dierverfahren arbeitet, gekennzeichnet durch einen Phasenmodulator für mindes¬ tens eine Merkmalsdimension, sowie ein Speichermedium, auf dem Daten abge- legt sind mit einem der vorgenannten Codes arbeitet, und ein Übertragungsproto¬ koll mit einem Code, der nach einem der vorgenannten Verfahren entstehen kann gekennzeichnet durch Hinzunahme eines festen Synchronisations- oder Referen- zierungsmuster, vorzugsweise in Form einer 010101-Folge von mindestens 6 Zel¬ len.Also included is in each case also a transmitting device which operates with such a coding method, characterized by a phase modulator for at least one feature dimension, as well as a storage medium on which data are stored working with one of the aforementioned codes, and a transmission protocol Code with a code, which can arise according to one of the aforementioned methods, characterized by the addition of a fixed synchronization or referencing pattern, preferably in the form of a 010101 series of at least 6 cells.
Eine weitere Ausgestaltung der Erfindung umfasst eine Kennzeichnungseinrich¬ tung mit verformender Kennzeichnung, insbesondere Nadelprägung, mit einem vorgenannten Codierverfahren für die Kennzeichnung dadurch gekennzeichnet, dass zur Signalmodulation die Verformungsstärke, veränderbar ist, bevorzugt über die Anschlagsstärke oder den Hub der Nadel.A further embodiment of the invention comprises a marking device with deforming marking, in particular needle embossing, with an aforementioned coding method for the marking, characterized in that the deformation strength is variable for signal modulation, preferably via the stop strength or the stroke of the needle.
Eine weitere Ausgestaltung der Erfindung umfasst eine Kennzeichnungseinrich¬ tung mit verformender Kennzeichnung, insbesondere Ritzprägung, mit einem sol¬ chen Codierverfahren für die Kennzeichnung, dadurch gekennzeichnet, dass zur Signalmodulation die Richtung von Strichelementen, die auch miteinander ver¬ bunden sein können, veränderbar ist.A further embodiment of the invention comprises a marking device with deforming marking, in particular scratch embossing, with such a coding method for the marking, characterized in that the direction of bar elements, which can also be connected to one another, can be changed for signal modulation.
Eine weitere Ausgestaltung der Erfindung umfasst eine Beschriftungseinrichtung mit einem solchen Codierverfahren für die Beschriftung dadurch gekennzeichnet, dass zur Signalmodulation die Breite von Strichen oder die Größe von Dots oder die Richtung von Strichelementen veränderbar ist. Eine weitere Ausgestaltung der Erfindung umfasst einen Codeträger für Identifi¬ kationszwecke, z.B. RFID, mit einem vorgenannten Code.A further embodiment of the invention comprises a labeling device with such a coding method for the lettering, characterized in that the width of lines or the size of dots or the direction of line elements is variable for signal modulation. A further embodiment of the invention comprises a code carrier for Identifi¬ cation purposes, eg RFID, with an aforementioned code.
Eine weitere Ausgestaltung der Erfindung umfasst ein Decodierverfahren für ei¬ nen Code wie er nach einem vorgenannten Codierungsverfahren entstehen kann, wobei die Teilinformationen aus zu decodierenden Zellen gewonnen werden, wo¬ bei eine Zelle aus einem oder mehreren Pixeln besteht, wobei die Pixel die Bild¬ punkte eines Bildes oder einer Bildfolge oder die Signalwerte eines Signals sind, dadurch gekennzeichnet, dass, wenn man ihn als nach einem Codierverfahren nach einem der Ansprüche 1 bis 8 entstanden interpretiert, die Teilinformationen aus den zu decodierenden Zellen gewonnen werden durch zelltupelweisen Ver¬ gleich des Inhaltes von Inversionszellen mit dem Inhalt von Nichtinversionszel- len, weiterhin gekennzeichnet durch vergleichsergebnisabhängiges Bestimmen der betreffenden Teilinformation, vergleichsergebnisabhängiges Invertieren der betreffenden Inversionszellen, sofern weitere Decodierschritte nachfolgen.A further embodiment of the invention comprises a decoding method for a code as it can arise from an aforementioned coding method, wherein the partial information is obtained from cells to be decoded, wherein a cell consists of one or more pixels, the pixels representing the image are points of a picture or a picture sequence or the signal values of a signal, characterized in that, when interpreted as a coding method according to any one of claims 1 to 8, the partial information is obtained from the cells to be decoded by zelltupelweisen Ver equal to Contents of inversion cells with the content of non-inversion cells, further characterized by comparing result-dependent determining the relevant sub-information, comparing result-dependent inversion of the respective inversion cells, if further decoding followed.
Hierbei kann das Vergleichsergebnis durch einen Mehrheitsentscheid über Zell¬ vergleiche bestimmt werden, vorzugsweise über den Vergleich von Summenwer- ten über Inversionszellen einerseits mit Summenwerten über Nichtinversionszel- len andererseits, oder über den Median von Einzelvergleichsmassen.In this case, the comparison result can be determined by a majority decision via cell comparisons, preferably via the comparison of summation values via inversion cells on the one hand with summation values via non-inversion cells on the other hand, or via the median of individual comparison masses.
Hierbei kann der Vergleich durch eine Vergleichsfunktion auf je mehrere Pixel der betreffenden Zellen realisiert werden, vorzugsweise einen normierten Korrela- tionswert.In this case, the comparison can be realized by a comparison function on a plurality of pixels of the respective cells, preferably a normalized correlation value.
Eine weitere erfindungsgemäße Ausgestaltung ist gekennzeichnet durch Auswer¬ tung des entstandenen Fehlerbilds für ein Rückweisungskriterium und/oder für eine Qualitätsbeurteilung. Die Erfindung umfasst auch eine Decodiereinrichtung für einen vorgenannten Code, gekennzeichnet durch Summations- und Schwellwertglieder, mit denen über zu decodierende Teilinformationen entschieden werden kann.Another embodiment of the invention is characterized by evaluating the resulting defect image for a rejection criterion and / or for a quality assessment. The invention also comprises a decoding device for an aforementioned code, characterized by summation and threshold value elements with which it is possible to decide on partial information to be decoded.
Die Erfindung umfasst auch eine Decodiereinrichtung für einen vorgenannten Code, gekennzeichnet durch Register mit Zellen, die in Abhängigkeit von bereits gewonnenen Informationsbits invertiert werden können, vorzugsweise über Fuzzy XOR-Gatter.The invention also comprises a decoding device for an aforementioned code, characterized by registers with cells which can be inverted in dependence on already obtained information bits, preferably via fuzzy XOR gates.
Die Erfindung umfasst ferner eine Decodiereinrichtung für einen vorgenannten Code, bei dem erste codierte Teilinformationen (10) differentiell codiert sind, ge¬ kennzeichnet durch eine Schaltung, mit der decodierte Teilinformationen (10) für die Umkehrung der differentiellen Codierung zwischengespeichert werden kön¬ nen.The invention further comprises a decoding device for an aforementioned code in which the first coded partial information (10) is coded differentially, characterized by a circuit with which decoded partial information (10) for the reversal of the differential coding can be temporarily stored.
Die Erfindung umfasst auch eine Empfangseinrichtung mit einer vorgenannten Decodiereinrichtung.The invention also includes a receiving device with an aforementioned decoding device.
Die Erfindung umfasst schließlich auch eine Code-Leseeinrichtung für einen vor- genannten Code, gekennzeichnet durch eine Bildaufnahmeeinrichtung, bei der mindestens ein Bildaufnahmeparameter, insbesondere auch Beleuchtungsparame¬ ter, über ein Qualitätsmaß beeinflussbar ist, das von einem Fehlerbild abhängig ist. Finally, the invention also encompasses a code reading device for a previously mentioned code, characterized by an image recording device, in which at least one image recording parameter, in particular also lighting parameters, can be influenced via a quality measure which depends on an error image.

Claims

An sprüche Claims
1. Verfahren zur Codierung einer durch Teilinformationen darstellbaren In- formation, wobei durch die Codierung Zellen Zellwerte zuzuweisen sind,1. A method for coding information that can be represented by partial information, wherein cells are to be assigned cell values by the coding,
gekennzeichnet durchmarked by
a) teilinformationsweise Codierschritte, b) teilinformationsspezifische Einteilung der Zellen in Inversionszellen und Nicht- inversionszellen, wobei jeder Teilinformation zumindest eine Inversionszelle zu¬ geordnet ist c) zumindest ein teilinformationsspezifisches Zelltupel, wobei jedes Zelltupel aus mindestens einer Inversionszelle und mindestens einer Nichtinversionszelle besteht, wobei die Zellen innerhalb jedes Zelltupels für jeden vorangehenden Codierschritt entweder nur Inversionszellen oder nur Nichtinversionszellen sind. d) für mindestens einen Codierschritt:a) partial information coding steps, b) partial information-specific classification of the cells in inversion cells and non-inversion cells, wherein each partial information is assigned at least one inversion cell c) at least one partial information-specific cell tuple, each cell tup consists of at least one inversion cell and at least one non-inversion cell, wherein the Cells within each cell tuple for each preceding coding step are either only inversion cells or only non-inversion cells. d) for at least one coding step:
XOR- Verknüpfung der betreffenden Teilinformation mit den dieser Teilinforma- tion aus b) zugeordneten Inversionszellen.XOR linking of the relevant partial information with the inversion cells assigned to this partial information from b).
2. Verfahren zur Codierung nach Anspruch 1, dadurch gekennzeichnet, dass in dem mindestens einen Codierschritt alle Inversionszellen des Codierschritts mindestens einem Zelltupel angehören.2. Method for coding according to claim 1, characterized in that in the at least one coding step all inversion cells of the coding step belong to at least one cell tuple.
3. Verfahren zur Codierung nach Anspruch 1 oder 2, wobei die Zelltupel Zellpaare mit einer Inversionszelle und einer Nichtinversionszelle sind.The method of coding of claim 1 or 2, wherein the cell tuples are cell pairs having an inversion cell and a non-inversion cell.
4. Verfahren zur Codierung nach einem der vorherigen Ansprüche, wobei den Zellwerten Signalwerte, insbesondere Pixelwerte von Bildern, zugeordnet werden. 4. Method for coding according to one of the preceding claims, wherein signal values, in particular pixel values of images, are assigned to the cell values.
5. Verfahren zur Codierung nach Anspruch 4, wobei die Pixel jeweils einen Wert von binären Werten annehmen können.The method of coding of claim 4, wherein each of the pixels can take on a value of binary values.
6. Verfahren zur Codierung nach einem der Ansprüche 1 bis 3, wobei einer Zelle mehrere Pixel zugeordnet sind, wobei die Pixel die Bildpunkte eines Bildes oder einer Bildfolge oder die Signalwerte eines sonstigen Signals sind, gekenn¬ zeichnet durch Zuordnung von Pixelmustern zu den Zellwerten.6. The coding method according to claim 1, wherein a plurality of pixels are assigned to a cell, wherein the pixels are the pixels of an image or an image sequence or the signal values of another signal are characterized by the assignment of pixel patterns to the cell values.
7. Verfahren zur Codierung nach einem der vorherigen Ansprüche, gekenn¬ zeichnet durch eine vorab vorgenommene differentielle Codierung der zuerst be¬ arbeiteten Teilinformation.7. A method of coding according to one of the preceding claims, gekenn¬ characterized by a previously made differential coding of the first be¬ worked part information.
8. Verfahren zur Codierung nach einem der vorherigen Ansprüche, gekenn- zeichnet durch XOR- Verknüpfung des Ergebnisses mit einem vorbestimmten Muster, wobei das vorbestimmte Muster bei Bildern ein zweidimensionales Schachbrettmuster ist und bei eindimensionalen Signalen ein 101010... -Muster ist.8. A method of encoding according to any one of the preceding claims, characterized by XORing the result to a predetermined pattern, wherein the predetermined pattern in images is a two-dimensional checkerboard pattern and in one-dimensional signals is a 101010 ... pattern.
9. Verfahren zur Codierung nach einem der Ansprüche 1 bis 7, gekennzeich¬ net durch XOR- Verknüpfung des Ergebnisses mit einem Zufallsmuster.9. The method of coding according to one of claims 1 to 7, gekennzeich¬ net by XOR operation of the result with a random pattern.
10. Verfahren zur Codierung nach einem der vorherigen Ansprüche, gekenn¬ zeichnet durch: für mindestens einen Schritt eine Platzierung der Zellen, bei der mindestens 3 Mengen von Zelltupeln bildbar sind, die über mindestens eine Zelle voneinander getrennt sind.10. A method of coding according to one of the preceding claims, gekenn¬ characterized by: for at least one step, a placement of the cells, in which at least 3 sets of cell tuples are formed, which are separated by at least one cell.
11. Codiereinrichtung für eine durch Teilinformationen darstellbare Informati¬ on, wobei durch die Codierung Zellen Zellwerte zuzuweisen sind, gekennzeichnet durch Register (11) mit Zellen (10), wobei codierschrittweise in Abhängigkeit von Teilinformationen je Register mindestens eine Zelle invertierbar ist, vorzugsweise über XOR-Gatter (13), wobei zumindest eine invertierbare Zelle als Inversionszelle von einem oder meh¬ reren Zelltupeln mit Inversionszellen und Nichtinversionszellen interpretierbar ist, wobei die Zellen innerhalb jedes Zelltupels für jeden vorangehenden Codierschritt entweder nur Inversionszellen oder nur Nichtinversionszellen sind.11. Coding device for information that can be represented by partial information, wherein cell values are to be assigned to the cells by the coding, characterized by registers (11) with cells (10), coding step by step depending on Partial information per register at least one cell is invertible, preferably via XOR gate (13), wherein at least one invertible cell as an inversion cell of one or more cell tuples with inversion cells and non-inversion cells is interpretable, wherein the cells within each cell tuple for each preceding coding step either only inversion cells or only non-inversion cells.
12. Codiereinrichtung nach Anspruch 11, dadurch gekennzeichnet, dass die Register in einer Pipeline angeordnet sind.12. Encoder according to claim 11, characterized in that the registers are arranged in a pipeline.
13. Sendeeinrichtung, die mit einem Codierverfahren nach einem der Ansprü¬ che 1 bis 10 arbeitet, gekennzeichnet durch einen Phasenmodulator für mindes¬ tens eine Merkmalsdimension.13. Transmitting device which operates with a coding method according to one of Ansprü¬ che 1 to 10, characterized by a phase modulator for at least one feature dimension.
14. Code, generiert durch ein Codierverfahren nach einem der Ansprüche 1 bis 10.14. Code generated by a coding method according to one of claims 1 to 10.
15. Speichermedium, auf dem Daten abgelegt sind mit einem Code, der durch ein Codierverfahren nach einem der Ansprüche 1 bis 10 entstanden ist.15. Storage medium on which data is stored with a code which has arisen by a coding method according to one of claims 1 to 10.
16. Übertragungsprotokoll mit einem Code, der durch ein Codierverfahren nach einem der Ansprüche 1 bis 10 entstanden ist.16. Transmission protocol with a code, which has arisen by a coding method according to one of claims 1 to 10.
17. Übertragungsprotokoll nach Anspruch 16, wobei nach der Codierung ein festes Synchronisations- oder Referenzierungsmuster hinzugefügt wird, vorzugs¬ weise in Form einer 010101 -Folge von mindestens 6 Zellen.17. Transmission protocol according to claim 16, wherein after coding a fixed synchronization or referencing pattern is added, preferably in the form of a 010101 sequence of at least 6 cells.
18. Kennzeichnungseinrichtung mit verformender Kennzeichnung, insbeson- dere Nadelprägung, mit einem Codierverfahren für die Kennzeichnung nach An¬ spruch 1 bis 10, dadurch gekennzeichnet, dass zur Signalmodulation die Verfor- mungsstärke, veränderbar ist, bevorzugt über die Anschlagsstärke oder den Hub der Nadel.18. Marking device with deforming marking, in particular needle embossing, with a coding method for marking according to claims 1 to 10, characterized in that, for signal modulation, the deformation mungsstärke, is variable, preferably on the stop strength or the stroke of the needle.
19. Kennzeichnungseinrichtung mit verformender Kennzeichnung, insbeson- dere Ritzprägung, mit einem Codierverfahren für die Kennzeichnung nach An¬ spruch 1 bis 10, dadurch gekennzeichnet, dass zur Signalmodulation die Richtung von Strichelementen, die miteinander verbunden sein können, veränderbar ist.19. Marking device with deforming marking, in particular scratch embossing, with a coding method for marking according to claim 1 to 10, characterized in that for the signal modulation, the direction of bar elements, which may be interconnected, is variable.
20. Beschriftungseinrichtung mit einem Codierverfahren für die Beschriftung nach Anspruch 1 bis 10, dadurch gekennzeichnet, dass zur Signalmodulation die20. Labeling device with a coding method for the labeling according to claim 1 to 10, characterized in that for signal modulation the
Breite von Strichen oder die Größe von Dots oder die Farbe von Dots oder die Größe und Farbe von Dots oder die Richtung von Strichelementen veränderbar ist.Width of strokes or the size of dots or the color of dots or the size and color of dots or the direction of stroke elements is changeable.
21. Codeträger für Identifikationszwecke mit einem Code, der durch ein Co- dierverfahren nach einem der Ansprüche 1 bis 10 entstanden ist.21. Code carrier for identification purposes with a code which has arisen by a coding method according to one of claims 1 to 10.
22. Verfahren zum Decodieren eines Codes, wie er durch ein Codierverfahren nach einem der Ansprüche 1 bis 10 entstehen kann, wobei die zu decodierende Information durch Teilinformationen darstellbar ist und wobei die Teilinformatio- nen aus zu decodierenden Zellen gewonnen werden,22. A method for decoding a code, such as may arise from a coding method according to one of claims 1 to 10, wherein the information to be decoded can be represented by partial information and wherein the partial information is obtained from cells to be decoded,
wenn man ihn als nach einem Codierverfahren nach einem der Ansprüche 1 bis 10 entstanden interpretiert,when interpreted as being produced by a coding method according to any one of claims 1 to 10,
gekennzeichnetmarked
A) durch teilinformationsweise Decodierschritte,A) by partial information decoding steps,
B) dadurch, dass für mindestens einen Decodierschritt die Teilinformation aus zu decodierenden Zellen gewonnen wird durch zelltupelweisen Vergleich von Inversionszellen mit Nichtinversionszellen und vergleichsergebnisabhängiges Bestimmen der betreffenden Teilin¬ formation,B) in that, for at least one decoding step, the partial information from cells to be decoded is obtained by cell-cell-wise comparison of inversion cells with non-inversion cells and comparison-result-dependent determination of the relevant sub-information,
C) durch vergleichsergebnisabhängiges Verknüpfen einer Invertierungsinfor- mation mit den Inversionszellen des betreffenden Decodierschrittes, sofern mindestens ein Decodierschritt gemäß B) nachfolgt.C) by comparing result-dependent linking of an inversion information with the inversion cells of the decoding step in question, provided that at least one decoding step according to B) follows.
23. Decodierverfahren nach Anspruch 22, dadurch gekennzeichnet, dass der Vergleich von Inversionszellen und Nichtinversionszellen durch Vergleich von Zellwerten erfolgt, die von den Zellen abgeleitet werden.23. A decoding method according to claim 22, characterized in that the comparison of inversion cells and non-inversion cells is carried out by comparison of cell values derived from the cells.
24. Decodierverfahren nach Anspruch 22, dadurch gekennzeichnet, dass der Vergleich von Inversionszellen und Nichtinversionszellen durch Vergleich der Inhalte der betreffenden Zellen erfolgt.24. A decoding method according to claim 22, characterized in that the comparison of inversion cells and non-inversion cells is carried out by comparing the contents of the cells in question.
25. Decodierverfahren nach Anspruch 23, dadurch gekennzeichnet, dass ein Vergleichsergebnis durch Auswerten mehrerer Vergleiche von Zellwerten gemäß einer Gütefunktion bestimmt wird, vorzugsweise - über den Median von Einzelvergleichsmaßen.25. A decoding method according to claim 23, characterized in that a comparison result is determined by evaluating a plurality of comparisons of cell values according to a quality function, preferably - over the median of individual comparison measures.
- über das arithmetische Mittel von Einzelvergleichsmaßen.- by the arithmetic mean of individual comparison measures.
26. Decodierverfahren nach Anspruch 23, dadurch gekennzeichnet, dass ein Vergleichsergebnis durch Auswerten von Zellwerten gemäß einer Gütefunktion bestimmt wird, über den Vergleich von Mittelwerten über Inversionszellen einer¬ seits mit Mittelwerten über Nichtinversionszellen andererseits.26. A decoding method according to claim 23, characterized in that a comparison result is determined by evaluating cell values according to a quality function, via the comparison of mean values via inversion cells on the one hand with mean values over non-inversion cells on the other hand.
27. Decodierverfahren nach Anspruch 24, dadurch gekennzeichnet, dass ein Vergleichsergebnis durch Auswerten mehrerer Vergleiche bestimmt wird, vorzugsweise - über den Median von Vergleichsfunktionen auf je mehrere Pixel der betreffen¬ den Zellen oder27. A decoding method according to claim 24, characterized in that a comparison result is determined by evaluating a plurality of comparisons, preferably over the median of comparison functions on several pixels of the respective cells or
- über das arithmetische Mittel von Vergleichsfunktionen auf je mehrere Pixel der betreffenden Zellen.- About the arithmetic mean of comparison functions on each several pixels of the cells in question.
28. Decodierverfahren nach einem der Ansprüche 22 bis 27, dadurch gekenn¬ zeichnet, dass auch beim letzten Decodierschritt eine Verknüpfung mit einer In¬ vertierungsinformation durchgeführt wird, dass die Zellwerte nach dem letzten Decodierschritt als Fehlerbild bzw. Fehlersignal interpretiert werden für eine Qua- litätsbeurteilung.28. A decoding method according to claim 22, characterized in that a link to an inversion information is also carried out in the last decoding step, that the cell values after the last decoding step are interpreted as an error image or error signal for a quality assessment ,
29. Decodierverfahren nach einem der Ansprüche 22 bis 28, mit einer mehr¬ wertigen Logik bei den codierten Zellwerten, insbesondere mit entsprechend mehrwertiger Phasenmodulation auf Signalebene, gekennzeichnet durch mehr- wertige Fuzzy-Logik bei den zu decodierenden Zellwerten.29. A decoding method according to any one of claims 22 to 28, with a multi-valued logic in the coded cell values, in particular with correspondingly multi-valued phase modulation on the signal level, characterized by multivalued fuzzy logic in the cell values to be decoded.
30. Decodiereinrichtung für eine durch Teilinformationen darstellbare Infor¬ mation aus einem Code, bei dem Zellen jeweils Zellwerte zugewiesen sind,30. decoding device for information, which can be represented by partial information, from a code in which cells are assigned cell values in each case,
gekennzeichnet durchmarked by
eine Anzahl von Registern (11), die jeweils Registerzellen (10) umfassen, von denen zumindest ein Register (11) zur Aufnahme der zu decodierenden Informa¬ tion dient, und wobei je Register (11) zumindest eine Registerzelle decodierschrittweise in Abhängigkeit von der decodierten Teilinformation invertierbar ist, vorzugsweise über XOR-Gatter (13), wobei mindestens eine invertierbare Registerzelle als Inversionszelle von einem oder mehreren Zelltupeln mit Inversionszellen und Nichtinversionszellen interpre- tierbar ist, wobei die Zellen innerhalb jedes Zelltupels für jeden nachfolgenden Decodier- schritt entweder nur Inversionszellen oder nur Nichtinversionszellen sind,a number of registers (11) each comprising register cells (10), of which at least one register (11) serves to receive the information to be decoded, and wherein each register (11) at least one register cell decoding step by step in dependence on the decoded Partial information is invertible, preferably via XOR gates (13), wherein at least one invertible register cell as an inversion cell of one or more cell tuples with inversion cells and non-inversion cells is interpretable, wherein the cells within each cell tuple are either only inversion cells or only non-inversion cells for each subsequent decoding step,
wobei die Teilinformationen aus Registerzellen gewonnen werden können durch zelltupelweisen Vergleich von Inversionszellen mit Nichtinversionszellen und vergleichsergebnisabhängiges Bestimmen der betreffenden Teilinformation.wherein the partial information can be obtained from register cells by cell-cell-wise comparison of inversion cells with non-inversion cells and comparison-result-dependent determination of the relevant partial information.
31. Decodiereinrichtung gemäß Anspruch 30, gekennzeichnet durch Summa- tions- und Schwellwertglieder (14), mit denen über zu decodierende Teilinforma- tionen entschieden werden kann.31. Decoding device according to claim 30, characterized by summation and threshold value elements (14) with which it is possible to decide on partial information to be decoded.
32. Decodiereinrichtung gemäß Anspruch 30 oder 31, wobei zumindest ein Vergleich durch ein Fuzzy-XOR-Gatter (13) realisiert ist.32. The decoding device according to claim 30 or 31, wherein at least one comparison is realized by a fuzzy XOR gate (13).
33. Decodiereinrichtung mit einem Decodierverfahren nach einem der An¬ sprüche 22 bis 28, für einen Code, bei dem erste codierte Teilinformationen (10) differentiell codiert sind, gekennzeichnet durch eine Schaltung, mit der decodierte Teilinformationen (10) für die Umkehrung der differentiellen Codierung zwi¬ schengespeichert werden können.33. Decoding device with a decoding method according to one of claims An¬ claims 22 to 28, for a code in which the first encoded part information (10) are differentially encoded, characterized by a circuit with the decoded part information (10) for the reversal of the differential encoding can be stored zwi¬.
34. Empfangseinrichtung mit einer Decodiereinrichtung nach einem der An¬ sprüche 30 bis 33.34. Receiving device with a decoding device according to one of claims An¬ claims 30 to 33rd
35. Code -Leseeinrichtung für einen Code, wie er nach einem der Verfahren 1 bis 10 entstehen kann, gekennzeichnet durch eine Bildaufnahmeeinrichtung, bei der mindestens ein Bildaufnahmeparameter, insbesondere Beleuchtungsparame¬ ter, über ein Qualitätsmaß beeinflussbar ist, das von einem Fehlerbild abhängig ist. 35. Code reading device for a code, as may arise according to one of the methods 1 to 10, characterized by an image recording device, in which at least one image recording parameter, in particular Beleuchtungsparame¬ ter, can be influenced via a quality measure that is dependent on an error image.
EP05771924A 2004-08-07 2005-08-08 Channel coding method with associated code and demodulation and decoding method and devices Ceased EP1779527A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE200410038601 DE102004038601B4 (en) 2004-08-07 2004-08-07 Channel coding method and coding device
PCT/EP2005/053904 WO2006015977A2 (en) 2004-08-07 2005-08-08 Channel coding method with associated code and demodulation and decoding method and devices

Publications (1)

Publication Number Publication Date
EP1779527A2 true EP1779527A2 (en) 2007-05-02

Family

ID=34980395

Family Applications (1)

Application Number Title Priority Date Filing Date
EP05771924A Ceased EP1779527A2 (en) 2004-08-07 2005-08-08 Channel coding method with associated code and demodulation and decoding method and devices

Country Status (4)

Country Link
US (1) US7411524B2 (en)
EP (1) EP1779527A2 (en)
DE (1) DE102004063950B4 (en)
WO (1) WO2006015977A2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060235683A1 (en) * 2005-04-13 2006-10-19 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Lossless encoding of information with guaranteed maximum bitrate
US7991610B2 (en) * 2005-04-13 2011-08-02 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Adaptive grouping of parameters for enhanced coding efficiency
US8180712B2 (en) 2008-09-30 2012-05-15 The Nielsen Company (Us), Llc Methods and apparatus for determining whether a media presentation device is in an on state or an off state
US10020912B2 (en) 2013-03-13 2018-07-10 Sans R&D, Llc Method and a system for a receiver design in bandwidth constrained communication systems

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4939354A (en) * 1988-05-05 1990-07-03 Datacode International, Inc. Dynamically variable machine readable binary code and method for reading and producing thereof
DE69024045T2 (en) * 1990-08-16 1996-06-20 Ibm Coding method and device for pipeline and parallel processing.
FR2675971B1 (en) * 1991-04-23 1993-08-06 France Telecom CORRECTIVE ERROR CODING METHOD WITH AT LEAST TWO SYSTEMIC CONVOLUTIVE CODES IN PARALLEL, ITERATIVE DECODING METHOD, CORRESPONDING DECODING MODULE AND DECODER.
DE69118891T2 (en) * 1991-10-14 1996-10-24 Ibm Flexible coding method and architecture for high-speed data transmission and recording
JPH06153180A (en) * 1992-09-16 1994-05-31 Fujitsu Ltd Picture data coding method and device
US5591956A (en) * 1995-05-15 1997-01-07 Welch Allyn, Inc. Two dimensional data encoding structure and symbology for use with optical readers
US5559506A (en) * 1994-05-04 1996-09-24 Motorola, Inc. Method and apparatus for encoding and decoding a digital radio signal
US5481103A (en) * 1994-07-26 1996-01-02 Metanetics Corporation Packet bar code with data sequence encoded in address/data packets
US5553084A (en) * 1995-01-06 1996-09-03 Intermec Corporation Error correction enhancement for code one and other machine-readable symbologies
US6904110B2 (en) * 1997-07-31 2005-06-07 Francois Trans Channel equalization system and method
SE514792C2 (en) * 1997-12-22 2001-04-23 Ericsson Telefon Ab L M Method and apparatus for decoding in channel optimized vector quantization
US6307487B1 (en) * 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US6371373B1 (en) * 1999-05-25 2002-04-16 Matsushita Electric Industrial Co., Ltd. Method for reading a two-dimensional barcode
DE19926197C1 (en) * 1999-06-09 2000-08-10 Datasound Gmbh Procedure to synchronize decoding of two-dimensional data strips, with specification formed to describe relative position of sensor fields to position of information cells
DE19926194C2 (en) * 1999-06-09 2001-05-10 Datasound Gmbh Data strips and methods for encoding and decoding printed data
AU2001289296A1 (en) * 2000-04-04 2001-10-15 Advanced Hardware Architectures, Inc. Enhanced turbo product code decoder system
DE10307775B4 (en) * 2002-02-22 2008-04-17 Tropf, Hermann, Dipl.-Ing. Patterned code with robust decoding, in particular signal code, decoding method, decoding device, reading device, and data carrier with program
FR2860360B1 (en) * 2003-09-29 2005-12-09 Canon Kk ENCODING / DECODING DEVICE USING REED-SOLOMON ENCODER / DECODER

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2006015977A2 *

Also Published As

Publication number Publication date
US20070210943A1 (en) 2007-09-13
US7411524B2 (en) 2008-08-12
WO2006015977A2 (en) 2006-02-16
DE102004063950B4 (en) 2009-02-19
DE102004063950A1 (en) 2006-06-01
WO2006015977A3 (en) 2006-07-06

Similar Documents

Publication Publication Date Title
DE69632620T2 (en) Method and device for coding and decoding an image
DE112012001243T5 (en) Method for measuring depth values in a scene
DE2803213A1 (en) ELECTRONIC DEVICE FOR HALF-TONE PRODUCTION FOR FACSIMILE REPRODUCTION SYSTEMS
WO1996038946A1 (en) Method of encoding sequences consisting of figure-coded data units
DE3854360T2 (en) Image information code processing system.
DE19623318C2 (en) Partial pixel coding and decoding methods
DE3815586C2 (en) Compression method for image signals
DE69419545T2 (en) Method and device for compressing binary image data
EP1779527A2 (en) Channel coding method with associated code and demodulation and decoding method and devices
DE2728889B2 (en) Method and apparatus for transmitting a two-level facsimile signal
DE69128935T2 (en) ERROR PROTECTION FOR DATA OF VARIABLE LENGTH
DE3820093A1 (en) ARRANGEMENT AND METHOD FOR CODED DATA TRANSFER
DE19802860A1 (en) Context based coding/decoding of binary shape signal
EP3023916B1 (en) Encoding/decoding of information from a graphical information unit
DE1283870B (en) Process for the digital coding of a planar image
DE69516193T2 (en) Image processing method and device
DE2834533C2 (en) Image transmission system
WO2022023175A1 (en) Method and device for evaluating matrix codes
DE10307775B4 (en) Patterned code with robust decoding, in particular signal code, decoding method, decoding device, reading device, and data carrier with program
DE102004038601A1 (en) Coding process through bit information divides cells into inversion and non inversion cells with one type in each group and combines with number of bits for XOR code
DE102005037388A1 (en) Code e.g. Reed-solomon code, decoding method, involves extracting partial information from cells that is to be decoded, where information is extracted by cell-tuple wise comparison of inversion cells with non-inversion cells
DE60102067T2 (en) METHOD FOR SENDING AND RECEIVING DIGITAL QPSK-MODULATED SIGNALS
DE10152612B4 (en) Method for compressing and decompressing image data
DE102012218854B4 (en) Method and device for compressing image data
DE4038518C2 (en) Color image compression method

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20070221

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR

17Q First examination report despatched

Effective date: 20070711

DAX Request for extension of the european patent (deleted)
RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: TROPF, HERMANN

RIN1 Information on inventor provided before grant (corrected)

Inventor name: TROPF, HERMANN

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20140409