WO2010093225A2 - 데이터 압축/해제장치 및 방법 - Google Patents

데이터 압축/해제장치 및 방법 Download PDF

Info

Publication number
WO2010093225A2
WO2010093225A2 PCT/KR2010/000956 KR2010000956W WO2010093225A2 WO 2010093225 A2 WO2010093225 A2 WO 2010093225A2 KR 2010000956 W KR2010000956 W KR 2010000956W WO 2010093225 A2 WO2010093225 A2 WO 2010093225A2
Authority
WO
WIPO (PCT)
Prior art keywords
symbol
information
hidden
value
string
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
PCT/KR2010/000956
Other languages
English (en)
French (fr)
Other versions
WO2010093225A3 (ko
Inventor
김형중
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.)
Korea University Research and Business Foundation
Original Assignee
Korea University Research and Business Foundation
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
Application filed by Korea University Research and Business Foundation filed Critical Korea University Research and Business Foundation
Priority to KR1020117024446A priority Critical patent/KR101268934B1/ko
Publication of WO2010093225A2 publication Critical patent/WO2010093225A2/ko
Publication of WO2010093225A3 publication Critical patent/WO2010093225A3/ko
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Definitions

  • the present invention relates to apparatus and methods for processing data, and more particularly, to a codec apparatus and method for compressing or decompressing data using an information hiding technique.
  • the methods of compressing data to the highest level require not only very complex data processing devices, but also often slow processing.
  • low-level data compression methods are not only fast but also relatively complex in hardware.
  • the present invention proposes a data compression device and method and a decompression device and method corresponding thereto which can reduce not only the processing time but also the complexity of hardware by using an arithmetic operation.
  • the present invention proposes a data compression apparatus and method and a corresponding decompression apparatus and method which can reduce not only processing time but also hardware complexity by using information hiding.
  • the present invention proposes a data compression apparatus and method for concealing information by a binary operation, and decrementing an information string having a binary number enhanced by the information concealment into a binary bit string, and a decompression apparatus and method corresponding thereto.
  • the present invention proposes an apparatus and method for compressing data by converting data consisting of binary bit strings into information strings of a desired decimal number, and a decompression apparatus and method corresponding thereto.
  • the data compression apparatus determines a target hidden symbol to be hidden with respect to a target hidden symbol having a predetermined value among hidden symbols, and determines the target hidden symbol and the target hidden symbol. And an information hiding portion that replaces the value of the target hidden symbol with a symbol value corresponding to the combination of the hidden symbol.
  • the data compression method according to an embodiment of the present invention, the process of determining the target hidden symbol to be hidden for the target hidden symbol having a predetermined value among the hidden symbols from the hidden symbols, and the target hidden symbol And substituting the value of the target hidden symbol with a symbol value corresponding to the combination of the target hidden symbol.
  • the apparatus for restoring data includes an information restoring unit for restoring a hidden symbol and a hidden symbol from an information hidden symbol having a predetermined value among the information hidden symbols constituting the m information hidden symbol string.
  • the predetermined value is characterized in that the minimum value and the highest value that the information concealment symbol can have.
  • the data recovery method includes the step of recovering the hidden symbol and the hidden symbol from the information hidden symbol having a predetermined value among the information hidden symbols constituting the m information hidden symbol string;
  • the predetermined value is characterized in that the minimum value and the highest value that the information concealment symbol can have.
  • the present invention allows lossless compression with excellent compression performance while reducing hardware complexity and processing time.
  • various other effects will be disclosed directly or implicitly in the detailed description of the embodiments of the present invention to be described later.
  • FIG. 1 is a diagram illustrating a system for lossless data compression and decompression according to an embodiment of the present invention
  • FIG. 2 is a view showing the configuration of a compression device according to a first embodiment of the present invention
  • FIG. 3 is a diagram illustrating a control flow for data compression in a compression device according to a first embodiment of the present invention
  • FIG. 4 is a diagram illustrating examples of separating a hidden information column and a hidden information column from an information string input for an embodiment of the present invention
  • FIG. 5 is a diagram showing other examples of separating a hidden information column and a hidden information column from an information string input for an embodiment of the present invention
  • 6 to 10 show examples for concealing information according to a compression technique proposed by an embodiment of the present invention.
  • FIG. 11 is a view showing the configuration of a compression device according to a second embodiment of the present invention.
  • FIG. 14 is a diagram showing a configuration of an encoding unit constituting a compression device according to a second embodiment of the present invention.
  • 15 and 16 illustrate an example of converting a hexadecimal number from an hexadecimal converter in an encoder constituting a compression apparatus according to a second embodiment of the present invention
  • FIG. 17 is a diagram illustrating a control flow for data compression in a compression device according to a second embodiment of the present invention.
  • FIG. 18 is a view showing the configuration of a restoration apparatus according to the first embodiment of the present invention.
  • FIG. 19 is a diagram illustrating a control flow for data restoration in a restoration apparatus corresponding to a compression apparatus according to a first embodiment of the present invention
  • 20 to 26 show examples for restoring information according to a restoration technique proposed by an embodiment of the present invention
  • 27 and 28 illustrate examples of generating a binary information bit string by combining a hidden information string and at least one hidden information string according to an embodiment of the present invention
  • 29 is a view showing the configuration of a decompression device corresponding to a compression device according to a second embodiment of the present invention.
  • FIG. 30 is a diagram showing the configuration of a decoding unit constituting a decompression device according to a second embodiment of the present invention.
  • 31 and 32 illustrate an example of converting a hexadecimal number from a decimal converter in a decoder constituting a decompression device according to a second embodiment of the present invention
  • 33 and 34 are views showing an example of the m-evolution operation in the decompression device according to the second embodiment of the present invention.
  • 35 is a view illustrating a control flow for data restoration in a restoration apparatus corresponding to a compression apparatus according to a second embodiment of the present invention.
  • FIG. 1 shows a system for lossless data compression and decompression according to an embodiment of the present invention.
  • the data compression device 110 outputs a compressed information string Z by compressing an information string X to be compressed using an information hiding technique.
  • the data recovery apparatus 120 extracts the hidden information from the compressed information string Z and restores the information string X before being compressed.
  • Information concealment technology that hides information in addition to data such as images, audio, and video
  • -Hidden symbol column (or hidden information column): a symbol string consisting of hidden symbols
  • the target hidden symbol a hidden symbol selected for concealing information among the hidden symbols constituting the hidden symbol string
  • -Hidden symbol a symbol to be hidden to the hidden symbol
  • Hidden symbol string (or hidden information column): a symbol string composed of hidden symbols
  • a target hidden symbol a selected hidden symbol among the hidden symbols constituting the hidden symbol string for concealing the target hidden symbol
  • Binary data is generated by binarizing the ternary data or binary data is generated by binarizing the ternary data. At this time, the data subject to binarization can have any number except binary.
  • a target hidden symbol to be concealed for a target hidden symbol having a set value among hidden hidden symbols is determined from hidden symbols, and a symbol value corresponding to a combination of the target hidden symbol and the target hidden symbol.
  • various embodiments of a compression technique for substituting the value of the target hidden symbol will be described in detail.
  • FIG. 2 shows a configuration of a compression device according to a first embodiment of the present invention.
  • the bit separator 210 takes an information bit string X as an input, and the first hidden information string from the information bit string X. And at least one concealed information column or Separate (n ⁇ 1).
  • the hidden information column Is the first hidden information column of the at least one hidden information column Means the first information column to hide the hidden information column or Denotes a column of hidden information to be hidden in the hidden information column.
  • the subscript means the index of the information column
  • the superscript means the decimal of the information column.
  • the index of the corresponding information column denoted by the subscript corresponds to the number of times information concealment has been made. For example, the first hidden information column and the hidden information column before the information concealment is made. Wow The subscript in is zero. However, once information concealment has been made, Wow The subscript in is 1. Where the hidden information column You can see that the superscript of also changes to n + 2. That is, each time information concealment is made, the number of values constituting the hidden information string increases by one.
  • the first hidden secret information column The number of bits and the hidden information string constituting or The number of bits constituting the can be arbitrarily set. Only the above concealed information column or The first hidden information column when determining the number of bits that constitute Consider the number of bits with a value of 0 in. Also avoid hidden information columns or The number of bits or symbols that make up the hidden information column or It must be larger than the number of bits constituting.
  • 4 and 5 illustrate examples of separating the hidden information string and the hidden information string from the information string input for an embodiment of the present invention.
  • 4 illustrates an example of sequentially separating the hidden information column and the hidden information column from the input information string
  • FIG. 5 shows an example of separating the hidden information column and the hidden information column in parallel from the input information column.
  • the first hidden information string is separated by separating a predetermined number of bits from the most significant bit (MSB) of the input information string X. Will output And the first hidden information column First hidden information string by separating a predetermined number of bits from the MSB of the information column X except for Will output Then the first hidden information column And the first concealed information column Second hidden information column by separating a predetermined number of bits from the MSB of the information column X except for Outputs Meanwhile, additional hidden information columns may be output from the remaining information columns X as necessary.
  • MSB most significant bit
  • each bit selected from the most significant bit (MSB) of the input information string X is first hidden information column. And the first hidden information column And second hidden information columns To sequentially. If a bit with a bit value of 1 is selected, the corresponding hidden information column And the first hidden information column And second hidden information columns To the corresponding information column. And the next selected bit is the first hidden information string. To be sequentially distributed again.
  • MSB most significant bit
  • the bit separator 210 may not output the generated plurality of hidden information strings at the same time, but may sequentially output the plurality of hidden information strings in consideration of an information hiding operation.
  • the first switch S / W # 1 is the first hidden information string output from the bit separator 210. Is transmitted to the information concealment unit 220 or the information symbol string from which the information concealment outputted from the information concealment unit 220 is performed. Performs an operation for feeding back to the information concealment unit 220.
  • the first switch S / W # 1 is the first hidden information string output from the bit separator 210.
  • the second switch S / W # 2 is an information symbol string in which information hiding output from the information hiding unit 220 is performed.
  • the control unit performs an operation of transmitting the information to the input of the information hiding unit 220 or to the encoder 230.
  • the information symbol string in which information concealment is transmitted to the encoder 230 is Can be defined as
  • the off state of S / W # 1 is a state in which a path for inputting the output of the bit separator 210 to the information concealment unit 220 is formed, and the on state of S / W # 1 is information.
  • the path for inputting the output of the concealment unit 220 to the information concealment unit 220 is formed.
  • the off state of S / W # 2 is a state in which a path for inputting the output of the information hiding unit 220 to the encoder 230 is formed, and the on state of S / W # 2 is information.
  • a path for transmitting the output of the concealment unit 220 to the S / W # 1 is formed.
  • the operation of the S / W # 1 and the S / W # 2 is not limited to the above-described and should not be interpreted. That is, even if the operations of the S / W # 1 and the S / W # 2 performs the opposite operation as described above, it is apparent to those skilled in the art that there is no difficulty in implementing the embodiment of the present invention.
  • control of the S / W # 1 and the S / W # 2 may be made by a configuration for controlling the overall operation of the equipment having a switching controller or compression device provided separately.
  • the information concealment unit 220 is a column of hidden information or As the input, and as the hidden information column or As input.
  • the information concealment unit 220 is a hidden information string as one input. or Hidden information column that is another input to or Perform the operation to hide the.
  • FIG. 6 to 10 show examples for concealing information according to a compression technique proposed by an embodiment of the present invention. That is, in FIG. 6, FIG. 7, and FIG. 9, the hidden information string of binary numbers. Hidden information columns in binary An example for concealing an is shown. In FIG. 8 and FIG. Hidden information columns in binary It shows an example to conceal the.
  • the information concealment shown in Figs. 6 to 10 is a hidden information string. or A bit value or a symbol value existing at a specific position of 0 is a corresponding hidden information column. or It is made when the bit value existing at a specific position of 0 is zero. And avoid hidden information columns or A bit value or a symbol value existing at a specific position of 0 is a corresponding hidden information column. or The information concealment is made even when the bit value existing at a specific position of X has an arbitrary value except for zero. But avoid hidden information columns or When the bit value or the symbol value existing at a specific position has any value except 0, the random value is kept as it is, so that information concealment is not made.
  • the values of the first, second bits, and fourth to eleventh bits in the hidden information string U are commonly 0. Therefore, the information symbol string L is generated by substituting the value of each of the first, second and fourth to eleventh bits with the value of the corresponding bit in the hidden information string V.
  • FIG. 6 the values of the first, second bits, and fourth to eleventh bits in the hidden information string U are commonly 0. Therefore, the information symbol string L is generated by substituting the value of each of the first, second and fourth to eleventh bits with the value of the corresponding bit in the hidden information string V.
  • the value of the first bit of the hidden information string V corresponding to the first bit of the hidden information string U is 0, the value of the first bit of the information symbol string L is determined to be zero. However, since the value of the third bit of the hidden information string V corresponding to the fourth bit of the hidden information string U is 1, the value of the fourth bit of the information symbol string L is determined to be 1.
  • the value of the third bit in the hidden information string U is 1. Therefore, the third bit value of the information symbol string L is determined as 1 regardless of the hidden information string V.
  • the bit value in the information symbol string L is determined to be 1 in two cases. Accordingly, in order to restore the information symbol string L, symbol identification information for distinguishing the two cases is required.
  • the symbol identification information M is set to 0, and the bit of the information symbol string L is due to the hidden information bit having the value of 1. If the value is determined as 1, the symbol identification information M is set to 1. Therefore, according to FIG. 6, the symbol identification information M is determined as '011'.
  • flag information for identifying the specific bit is not required. For example, when the number of bits of the hidden information column U and the number of bits of the hidden information column V match, the flag information F is set to 0, and the number of bits of the hidden information column U and the number of bits of the hidden information column V do not match. The flag information F is set to '1'. In the case of FIG. 6, the flag information F will be set to one.
  • the data finally generated through the information concealment is the length information of the symbol identification information M And payloads including header information including flag information (F), symbol identification information (M), and information symbol string (L).
  • the hidden information column MSB value and hidden information column Read the MSB value of. Where the hidden information column The MSB value of 0 is the hidden information column Since the MSB value of 0 is 0, the information symbol column to be generated by information hiding The MSB of is set to zero. This causes the hidden information column The concealed information column in the MSB It can be seen that the MSB of is concealed.
  • the hidden information column Read the second bit value of. Where the hidden information column Since the second value of is 1, the information symbol column to be generated by information hiding The second symbol value of is set to 1.
  • the hidden information column Third bit value of the and said concealed information column Read the second bit value of.
  • the third bit value of 0 is the hidden information column Since the second bit value of is 0, the information symbol column to be generated by information hiding The third symbol value of is set to 0. This causes the hidden information column The concealed information column in the third bit of We can see that the second bit of is hidden.
  • the hidden information column The fourth through sixth bit values of are all zeros and corresponding hidden information columns Since all the third to fifth bit values of 0 are also 0, information concealment is also performed for the corresponding bits.
  • Hidden information column as can be seen in the above example Bit value of and corresponding hidden information column If the bit values of are all zeros, the information symbol string to be generated by information hiding The corresponding symbol value of is set to 0.
  • Information symbol string to be generated by information hiding if the bit value of 1 is 1
  • the corresponding symbol value in is set to 1, and the hidden information column If the bit value of is 1, the information symbol string to be generated by information hiding The corresponding symbol value of is set to 2.
  • the concealed information column If the bit value of is 1, the corresponding hidden information column It can be seen that the bit value of is hidden.
  • the hidden information column Hidden information columns with a bit value of 1 When the bit value of 1 is 1, different symbol values are set in order to allow restoration to be performed separately during data restoration.
  • the information symbol string generated by the above The order of the symbols constituting the symbol is ternary.
  • the hidden information column The first symbol value in is 0 or a hidden information column Since the first bit value of is 1, the information symbol column to be generated by information hiding The first symbol value of is set to 3. In this case, setting the corresponding symbol value to 3 means that the hidden information column This is to use the lowest order value that is not used in.
  • the hidden information column Read the second symbol value. Where the hidden information column Since the second symbol value of is 1, the information symbol column to be generated by information hiding The second symbol value of is set to 1.
  • the hidden information column Third symbol value of the and the hidden information column Read the second bit value of. Where the hidden information column Third symbol value of the and the hidden information column Since the second bit values of are all zeros, the information symbol column to be generated by information hiding The third symbol value of is set to 0. This causes the hidden information column Said concealed information column in the third symbol of We can see that the second bit of is hidden.
  • the hidden information column The fourth through sixth symbol values of are all zeros and corresponding hidden information columns Since all the third to fifth bit values of 0 are also 0, information concealment is also performed for the corresponding bits.
  • the information symbol column to be generated by information hiding Since the seventh symbol value of is 2, the information symbol column to be generated by information hiding The seventh symbol value of is set to 2.
  • Hidden information column as can be seen in the above example The symbol value of and the corresponding hidden information column If the bit values of are all zeros, the information symbol string to be generated by information hiding The corresponding symbol value of is set to 0.
  • the corresponding symbol value of is set to 1, and the hidden information column
  • the corresponding symbol value in is set to 2
  • the hidden information column If the bit value of is 1, the information symbol string to be generated by information hiding
  • the corresponding symbol value of is set to 3.
  • the concealed information column If the bit value of is 1, the corresponding hidden information column It can be seen that the bit value of is hidden.
  • the hidden information column And hidden information columns when the symbol values of are 1 and 2.
  • the bit value of 1 is 1, different symbol values are set in order to allow restoration to be performed separately during data restoration.
  • the information symbol string generated by the above is a hexadecimal number.
  • FIG. 9 and FIG. 10 only, the hidden information string used in FIGS. 7 and 8 is used. And concealed information columns Hidden information columns different from And concealed information columns There is only a difference that is used.
  • the encoder 230 is a m-information symbol string input from the information concealment unit 220 Inputs the m-information symbol string Is compressed by a predetermined coding scheme and output.
  • an entropy coding technique may be applied to the encoder 230.
  • the entropy coding technique is a coding technique in which a short code is assigned to a symbol having a high frequency and a long code is assigned to a symbol having a low frequency.
  • the entropy coding technique is also called a variable-length coding technique.
  • the entropy coding scheme only considers the frequency of symbols.
  • any one of a Huffman coder and an arithmetic code coder may be used.
  • the entropy coding technique requires optimal knowledge of the appearance frequency of each symbol in advance to enable optimal compression. In this case, when Huffman coding is used, only one codeword of integer length is allowed because one codeword is assigned to each symbol.
  • FIG 3 shows a control flow for data compression in the compression apparatus according to the first embodiment of the present invention.
  • the compression apparatus receives a binary information bit string from an external source. Thereafter, the compression apparatus extracts the hidden information string from the input binary information bit string in step 312, and extracts the hidden information string from the remaining binary information bit string after extracting the hidden information string in step 314. . At this time, the count value n for counting the number of information concealment is set to 0.
  • the compression apparatus hides the extracted hidden information string from the extracted hidden information string to generate a m-information symbol string.
  • m is a constant representing the essence of the generated information symbol string, and has a value of n, which is a hidden number count value, plus two. That is, each time information hiding is performed, the number of generated information symbol strings is increased by one.
  • the compression apparatus determines whether the base number of the generated information symbol string is a desired number. That is, since the information concealment has been performed so far, the compression apparatus will determine that the desired decimal number is 3 when the order of the information symbol string to be finally obtained is three. However, if it is desired to obtain an information symbol string having a higher order, the compression apparatus proceeds to step 320 and increases n by 1 and returns to step 314.
  • the compression apparatus Upon returning to step 314, the compression apparatus extracts a new hidden information string from the remaining binary information bit strings excluding the previously hidden hidden information string and the hidden information string.
  • the newly extracted concealment information is further concealed to the previously generated information symbol string, thereby generating an information symbol string having an increased one.
  • encoding may be performed by an entropy compression technique.
  • the entropy compression technique may use any of Huffman code or arithmetic code coder, as described above.
  • the compression apparatus In operation 324, the compression apparatus generates an information packet through packing of the information symbol string compressed through encoding.
  • FIG. 11 shows a configuration of a compression device according to a second embodiment of the present invention.
  • the first and second encoders corresponding to the reference numerals 1140 and 1150 differ from only the input data, and perform the same operations as the encoder corresponding to the reference numeral 230 in FIG. 2.
  • a m-information information symbol string outputted by information hiding by the information hiding unit 1120 is output. Is input to the binarization unit 730 through the second switch (S / W # 2).
  • the binarization unit 1130 is a binary information symbol string input from the information concealment unit 1120. Binarization is performed, and two binary information symbol strings are output through the binarization. One of the two binary information symbol strings output from the binarization unit 1130 is a data information symbol string, and the other is an identification information symbol string.
  • the data information symbol string may be the input binary information symbol string.
  • the identification information symbol string is a binary information symbol string having information for identifying a value of a corresponding symbol when a specific symbol is not 0 by the data information symbol string.
  • FIG. 12 and 13 show examples of a binarization operation in the compression device according to the second embodiment of the present invention. That is, in Fig. 12, a ternary information symbol string Column of data information symbols from binary Information symbol columns in binary and binary Shows an example of generating a symbol, and in FIG. Column of data information symbols from binary Information symbol columns in binary and binary Shows an example of creating a.
  • the symbol value of the binary identification information symbol string corresponding to the symbol of the binary data information symbol string set to 1 is set to a previously promised value.
  • the information symbol string is a ternary number
  • the previously promised value to be set to the corresponding symbol value of the binary identification information symbol column is 0.
  • the symbol value existing at the specific position of the information symbol string is 2
  • the previously promised value to be set to the corresponding symbol value of the binary identification information symbol string is 1.
  • the information symbol string is a hexadecimal number
  • the symbol value existing at a specific position of the information symbol string is 1, the previously promised value to be set to the corresponding symbol value of the binary identification information symbol string is 0. If the symbol value existing at the specific position of the information symbol string is 2, the previously promised value to be set to the corresponding symbol value of the binary identification information symbol string is 10. If the symbol value existing at the specific position of the information symbol string is 3, the previously promised value to be set to the corresponding symbol value of the binary identification information symbol string is 11.
  • a ternary information symbol string Read the first symbol value of.
  • the information symbol string Data Information Symbol column because the first symbol value in is 0
  • the first symbol value of is set to zero. In this case, an identity information symbol column Is not generated.
  • the information symbol string Read the second symbol value.
  • the data information symbol column The second symbol value of is set to 1.
  • the first symbol value of is set to zero.
  • the information symbol column Read the seventh symbol value. Where the information symbol string The seventh symbol value of is not zero, so the data information symbol column The seventh symbol value of is set to one. In this case, the information symbol string Since the seventh symbol value of was 2, the identification symbol column The second symbol value of is set to 1.
  • an information symbol string of a hexadecimal number is used. Read the first symbol value of. Where the information symbol string The data information symbol column is because the first symbol value of is not 0. The first symbol value of is set to 1. In this case, the information symbol string The identification information symbol column because the first symbol value of was 3 The first symbol value of is set to 11.
  • the information symbol string Read the second symbol value.
  • the data information symbol column The second symbol value of is set to 1.
  • the second symbol value of is set to 0.
  • the information symbol column Read the seventh symbol value. Where the information symbol string The seventh symbol value of is not zero, so the data information symbol column The seventh symbol value of is set to one. In this case, the information symbol string Since the seventh symbol value of was 2, the identification symbol column The second symbol value of is set to 10.
  • the data information symbol string generated by the binarization unit 1130 as described above. Is transmitted to the first encoding unit 1140, and the identification information symbol sequence generated by the binarization unit 1130 Is transmitted to the second encoding unit 1150.
  • the first encoder 1140 is a data information symbol string input from the binarizer 1130. Is input and the data information symbol string Is compressed by a predetermined coding scheme and output.
  • the second encoder 1150 is an identification information symbol string input from the binarizer 1130. As an input, and the identification information symbol string Is compressed by a predetermined coding scheme and output.
  • FIG. 14 illustrates a configuration of an encoding unit constituting a compression device according to a second embodiment of the present invention.
  • the encoder shown in FIG. 14 is a data information symbol string It is assumed that the first encoding unit 1140 having an input as. But identifying information symbol column It is apparent that the configuration of FIG. 14 may be equally applied to the second encoding unit 1150 having the input.
  • the decimal converter 1410 includes a data information symbol string. Is inputted, and the input data information symbol string Convert the decimal number of. That is, the input data information symbol string Since hexadecimal is binary, the hexadecimal converter 1410 is a string of data information symbols having a ternary number or higher. Outputs
  • FIG. 15 and 16 illustrate an example of converting a hexadecimal number from an hexadecimal converter in an encoder constituting a compression device according to a second embodiment of the present invention. That is, in Figure 15 binary data information symbol string Column of data information symbols in hexadecimal 16 shows an example of converting to a binary data information symbol string. Data information symbol columns in octal An example of converting to is shown.
  • a binary data information symbol string The symbols constituting the sequential group are composed of two symbols.
  • the symbol values corresponding to each group are converted into the symbol of the hexadecimal number.
  • the data information symbol string of the binary number The bundle of the ninth and tenth symbols of 11 is 11, and thus the hexadecimal data information symbol string to be generated is Set the fifth symbol value of to 3.
  • the binary data information symbol string A string of hexadecimal data information symbols of "20013012" as a result of the decimal conversion for. Can be generated.
  • the octal data information symbol column to be generated is Set the first symbol value and the fourth symbol value of to 4.
  • the data information symbol column of the octal number to be generated is Set the second and sixth symbol values to 0.
  • the binary data information symbol string A string of octal data information symbols of "403430" as a result of the decimal conversion for. Can be generated.
  • the entropy encoder 1420 is a data information symbol string converted to a hexadecimal number or an octal number. Inputs the data information symbol string converted to the hexadecimal or octal number Compressed data information symbol string by entropy coding Outputs
  • the information packet unit 1160 is a compressed data information symbol string input from the first encoding unit 1140. And a compressed identification information symbol string input from the second encoder 1150. Packing to generate an information packet Z.
  • FIG 17 illustrates a control flow for data compression in the compression apparatus according to the second embodiment of the present invention.
  • the compression apparatus receives a binary information bit string from an external source. Thereafter, the compression apparatus extracts the hidden information string from the input binary information bit string in step 1712, and extracts the hidden information string from the remaining binary information bit string after extracting the hidden information string in step 1714. . At this time, the count value n for counting the number of information concealment is set to 0.
  • the compression apparatus hides the extracted hidden information sequence from the extracted hidden information sequence to generate a m-information symbol sequence.
  • m is a constant representing the essence of the generated information symbol string, which corresponds to n, which is a hidden count count value, plus two. That is, each time information hiding is performed, the number of generated information symbol strings is increased by one.
  • the compression apparatus determines whether the integer of the previously generated information symbol string is a desired number. That is, since the information concealment has been performed so far, the compression apparatus will determine that the desired decimal number is 3 when the order of the information symbol string to be finally obtained is three. However, if it is desired to obtain an information symbol string having more orders, the compression apparatus proceeds to step 1720 and increases n by one and returns to step 1714.
  • the compression apparatus Upon returning to step 1714, the compression apparatus extracts a new hidden information string from the remaining binary information bit streams excluding the previously hidden hidden information string and the hidden information string.
  • the newly extracted concealment information is further concealed to the previously generated information symbol string, thereby generating an information symbol string having an increased one.
  • the compression apparatus determines that the desired information symbol string is obtained in step 1718
  • the compression apparatus proceeds to step 1722 to generate a binary data information symbol string and an identification information symbol string from the obtained information symbol string.
  • the compression apparatus encodes each of the binary data information symbol string and the identification information symbol string.
  • encoding may be performed by an entropy compression technique.
  • the entropy compression technique may use any of Huffman code or arithmetic code coder, as described above.
  • the compression device In operation 1726, the compression device generates an information packet through packing of the information symbol string compressed through encoding.
  • the predetermined value may be a minimum value and a maximum value that the information hiding symbol may have.
  • FIG. 18 shows a configuration of a restoration apparatus according to the first embodiment of the present invention.
  • the decoding unit 1810 receives an information packet Z to be restored and inputs the information packet Z to be restored by a predetermined decoding technique. Outputs
  • an entropy decoding technique corresponding to an entropy coding technique may be applied to the decoder 1810.
  • the first switch S / W # 1 is a m-information symbol string output from the decoder 1810. Is transmitted to the information restoring unit 1820 or the information symbol string from which information concealed from the information restoring unit 1820 is extracted. Performs an operation for feeding back to the information recovery unit 1820.
  • the first switch (S / W # 1) is a m-information symbol string output from the decoder 1810 Is transmitted to the input of the information recovery unit 1820 and the information symbol string from which the hidden information output from the information recovery unit 1820 is extracted To form a path for delivering the information to the input of the information recovery unit 1820.
  • N denotes the number of times information concealment has been made.
  • the second switch S / W # 2 is an information symbol string from which the hidden information output from the information recovery unit 1820 is extracted. To the input of the bit combiner 1830 or to the input of the information recovery unit 1820 through the first switch (S / W # 1).
  • the off state of S / W # 1 is a state in which a path for inputting the output of the decoder 1810 to the information restoring unit 1820 is formed, and the on state of S / W # 1 is information restoration. A path for inputting the output of the unit 1820 to the information recovery unit 1820 is formed.
  • the off state of S / W # 2 is a state in which a path for inputting the output of the information restoring unit 1820 to the bit combiner 1830 is formed, and the on state of S / W # 2 is A path for transmitting the output of the information recovery unit 1820 to the S / W # 1 is formed.
  • the operation of the S / W # 1 and the S / W # 2 is not limited to the above-described and should not be interpreted. That is, even if the operations of the S / W # 1 and the S / W # 2 performs the opposite operation as described above, it is apparent to those skilled in the art that there is no difficulty in implementing the embodiment of the present invention.
  • control of the S / W # 1 and the S / W # 2 may be made by a configuration for controlling the overall operation of the equipment having a switching controller or compression device provided separately.
  • the input refers to a sequence of information symbols input to the information recovery unit 1820 through S / W # 1, and in Table 2, the output is input to the bit combiner 1830.
  • the information recovery unit 1820 is an information symbol string in which information concealment is performed Is an input, and the information symbol string in which the input information concealment is performed From PB to PEN or And concealed information columns or Restore
  • the information restoration by the information restoration unit 1820 is an information symbol string in which information concealment is performed. Is performed repeatedly until n goes to zero. In other words, the information restored by the information recovery unit 1820 is repeatedly performed until the true number of the hidden information string is binary. In this case, n decreases by one every time information restoration is performed.
  • the information recovery unit 1820 is an information symbol string in which information concealment is performed One hidden input column from And at least one hidden information column or Perform an operation to restore the.
  • 20 to 26 show examples for restoring information according to a restoration technique proposed by an embodiment of the present invention.
  • 20 to 22 show an example for restoring the hidden hidden information string U and the hidden information string V from the binary information symbol string L.
  • FIG. 23 and 25 the hidden information string of the ternary number from the information symbol string of the ternary number is shown.
  • Hidden information columns in binary and binary 24 and 26 show a hidden hidden information string from a binary information symbol string.
  • the information concealment is an information symbol string in which the information concealment is performed. It can be assumed that in the case where the symbol value is 0 and the symbol value corresponds to the highest order. That is, in FIG. 23 and FIG. 25, the information symbol string in which the information is concealed In the case where the symbol value is 0 and the symbol value is 3, the information concealment is performed. In addition, in FIG. 24 and FIG. 26, an information symbol string in which information concealment is performed. In the case where the symbol value is 0 and the symbol value is 2, information concealment is performed.
  • the hidden information column is used as it is. Restore the corresponding symbol value of. That is, in FIG. 23 and FIG. 25, the information symbol string in which the information is concealed In the case where the symbol value is 1 and the symbol value is 2, information concealment is not achieved. In addition, in FIG. 24 and FIG. 26, an information symbol string in which information concealment is performed. In the case where the symbol value is 1, the information concealment may not be performed.
  • the third, fourth, and tenth symbols having the symbol value 1 in the information symbol string L are restored in consideration of the value of the symbol identification information M.
  • FIG. For example, when the symbol value is 1 and the value of the symbol identification information M is 0 like the third symbol in the information symbol string L, only the corresponding hidden symbol (the third symbol in the hidden information column) is restored to 1. However, if the symbol value is 1 and the symbol identification information M has a value of 1, as in the fourth and tenth symbols in the information symbol column L, the corresponding hidden symbol (fourth and tenth symbols in the hidden information column) is zero. Restore the corresponding hidden symbols (third and ninth symbols in the hidden information column) to one.
  • an information symbol string in which information concealment is performed The symbol values are sequentially read from the highest symbol to the lowest symbol. If the read symbol value is 0, the hidden information column Corresponding symbol values and hidden information columns in Set the corresponding symbol value of to 0. If the read symbol value is 3, the hidden information column Set the value of the corresponding symbol in to 0, and the hidden information column Set the corresponding symbol value of to 1. However, if the read symbol value is 1, the hidden information column Set only the corresponding symbol value of to 1, and if the read symbol value is 2, the hidden information column Set only the relevant symbol value of to 2.
  • the hidden information column Set only the seventh symbol value of to 2.
  • Information symbol string in which information concealment is performed as can be seen in the above example If the symbol value of is 0, the hidden information column A column of hidden information corresponding to the symbol's value of 0 It can be seen that the symbol value of 0 is hidden. And information symbol string with information concealment If the symbol value of is 3, the hidden information column A column of hidden information corresponding to the symbol's value of 0 It can be seen that the symbol value of 1 is hidden.
  • Hidden information column Hidden information column when the symbol value of is 0 The symbol value of is concealed and the hidden information column If the symbol value of is not 0, the information symbol column whose information is concealed It can be seen that it remains intact.
  • the order of the symbols constituting the symbol is ternary.
  • an information symbol string in which information concealment is performed The symbol values are sequentially read from the highest symbol to the lowest symbol. If the read symbol value is 0, the hidden information column Corresponding symbol values and hidden information columns in Set the corresponding symbol value of to 0. If the read symbol value is 2, the hidden information column Set the value of the corresponding symbol in to 0, and the hidden information column Set the corresponding symbol value of to 1. However, if the read symbol value is 1, the hidden information column Set only the relevant symbol value of to 1.
  • the order of the symbols constituting the symbol is binary.
  • FIGS. 25 and 26 detailed information will be omitted as information restoration is performed in the same manner as described above with reference to FIGS. 23 and 24. Only in FIG. 25 and FIG. 26, the information symbol sequence in which information hiding used in FIGS. 23 and 24 is performed. Information symbol strings with different information concealment than There is only a difference that is used.
  • the binary hidden information string output from the information restoring unit 1820. And at least one concealed information column or , Is input to the bit coupling unit 1230 through the second switch (S / W # 2).
  • the bit combiner 1830 is a hidden information string And at least one concealed information column or , (n ⁇ 1) is input, and the hidden information string And at least one concealed information column or , (n ⁇ 1) is combined to output the information bit string X.
  • 27 and 28 are hidden information columns according to an embodiment of the present invention. And at least one concealed information column or , Examples of combining (n ⁇ 1) to generate a binary information bit string are shown. 27, the hidden information column And at least one concealed information column or , (n ⁇ 1) is shown in the example of successive combinations, and in FIG. 28, the hidden information column And at least one concealed information column or , An example of combining (n ⁇ 1) in parallel is shown.
  • an input hidden information column Is output as the predetermined number of bits from the most significant bit (MSB) of the information column X.
  • the hidden information column Hidden Information Columns Consecutively Entered into , And other hidden information columns
  • the hidden information column is entered Output continuously.
  • the hidden information column And concealed information columns Wow Combine by symbol order. However, if the symbol value checked for join is 1, the hidden information column Return to and perform the join from the next symbol.
  • the hidden information column The first symbol value of 0 must be set as the third bit value of the binary information bit string. But in front of the hidden information column The hidden information column because the value of the first symbol in was 1 Hidden information column other than the first symbol value in Set 0, the second symbol value of, to the third bit value of the binary information bit string X.
  • the fourth bit value and the second bit value of the binary information bit string X are set to 0 according to the basic combining principle.
  • the hidden information column identified for setting the third bit value of the column of the binary information bit string X Since the fifth symbol value of is 1, the column third bit value of the binary information bit string X is set to one.
  • the hidden information column Hidden information column other than the fourth symbol value Set 1 the sixth symbol of, to the fourth bit of the column of the binary information bit string X.
  • the hidden information column Set the seventh symbol value of, to the fifteenth bit value of the binary information bit string X.
  • the total number of bits of the binary information bit string to be generated by combining may be determined in advance as needed. Only the first hidden information column in determining the total number of bits It may be desirable to consider the number of bits and the distribution of bits having a value of 1 or the number of bits having a bit value of 0 and the like.
  • FIG. 19 shows a control flow for data restoration in a restoration apparatus corresponding to a compression apparatus according to the first embodiment of the present invention.
  • the decompression device decodes an m-information symbol string input from the outside.
  • the decoding may be performed by a reconstruction technique corresponding to the entropy compression technique.
  • the entropy compression technique may use any of Huffman code or arithmetic code coder, as described above.
  • the decompression device performs decompression of the m-decoded information symbol string previously decoded in step 1912. That is, the hidden hidden information string is extracted from the m-th information string.
  • the decompression device may obtain an information symbol string having a decimal number that is reduced by one compared to the m information symbol string due to the extraction of the hidden information string. For example, if the true number of the information symbol string before information restoration is 4, the order of the information symbol string (or hidden information string) obtained after the information restoration is three.
  • the decompression device outputs the hidden information string extracted in step 1914, and determines whether the true number of the hidden information string obtained in step 1916, that is, the information symbol string after the hidden information string is extracted, is a desired number. That is, it is determined whether the binary number of the hidden information string obtained earlier is a binary number.
  • step 1918 If the previously hidden information sequence has more orders, the recovery apparatus proceeds to step 1918 and decreases n by 1 and returns to step 1912.
  • the decompression device Upon returning to step 1912, the decompression device performs an information restoration operation for extracting a new hidden information string from the previously concealed hidden information string. By extracting the new hidden information string, the number of obtained hidden information strings is reduced by one.
  • the restoration apparatus obtains the hidden hidden information string of the binary number finally obtained in step 1920. Extract
  • the decompression device combines the extracted hidden information string with at least one hidden information string to generate a final binary information bit string.
  • FIG. 29 is a block diagram of a decompression device corresponding to a compression device according to a second embodiment of the present invention.
  • Reference numerals 2950 and 2960 and the first and second switches 2950, 2960, and the first and second switches of FIG. 29 perform the same operations as those of the first and second switches of FIG. 18.
  • the first and second decoding units corresponding to the reference numerals 2920 and 2930 differ only in the input data, and perform the same operations as the decoding unit corresponding to the reference numeral 1810 in FIG. 18.
  • the information depacking unit 2910 receives an input information packet Z and depacks the input information packet Z to compress a data information symbol string. And compressed identification symbol columns Outputs The compressed data information symbol string Is input to the first decoding unit 2920, and the compressed identification information symbol string Is input to the second decoding unit 2930.
  • the first decoder 2920 is a compressed data information symbol string Is input, and the compressed data information symbol string The data information symbol string is recovered by decoding by a decoding technique corresponding to a predetermined coding scheme.
  • the second decoding unit 2930 is a compressed identification information symbol string Is input, and the compressed identification information symbol string Reconstructs the identification information symbol string by a decoding scheme corresponding to a predetermined coding scheme.
  • FIG. 30 is a block diagram of a decoder constituting a decompression device according to a second embodiment of the present invention.
  • the decoding unit shown in FIG. 30 is a compressed data information symbol string It is assumed that the first decoding unit 2920 takes as an input. But compressed identity symbol columns It is apparent that the configuration of FIG. 30 may be equally applied to the second decoding unit 2930 having the input as.
  • the entropy decoder 3010 is a compressed data information symbol string Is input, and the compressed data information symbol string Is a column of data information symbols in hexadecimal or octal number by a decoding technique corresponding to the entropy coding technique. Is restored. A quaternary or octal number of data information symbol string restored by the entropy decoder 3010 Is passed to the decimal converter 3020.
  • the hexadecimal converter 3020 is a data information symbol string of a hexadecimal number or an octal number. Inputs the data information symbol string of the input hexadecimal or octal number Column of data information symbols in binary Convert to That is, the input data information symbol string Since hexadecimal has a hexadecimal number or more, the hexadecimal converter 3020 includes a data information symbol string having a binary number. Outputs
  • FIG. 31 and 32 illustrate an example of converting a hexadecimal number from a hexadecimal converter in a decoder constituting a decompression device according to a second embodiment of the present invention. That is, in Fig. 31, the data information symbol string of the ternary number Column of data information symbols in binary In FIG. 32, an octal data information symbol string is shown. Column of data information symbols in binary An example of converting to is shown.
  • a data information symbol string of a hexadecimal number is used. Select the hexadecimal symbols constituting the sequence sequentially, and convert each of the hexadecimal symbols sequentially selected to binary. In other words, one hexadecimal symbol is converted into a binary symbol consisting of two symbol sets.
  • the quaternary data information symbol string A string of binary data information symbols as the result of the hexadecimal conversion for "1000000111000110". Can be generated.
  • an octal data information symbol string Select the octal symbols constituting the sequence sequentially, and convert each of the sequentially selected octal symbols to binary. In other words, one octal symbol is converted into a binary symbol consisting of three symbol sets.
  • the octal data information symbol string A string of binary data information symbols as the result of the hexadecimal conversion for "100000011100011000". Can be generated.
  • the binary data information symbol string decoded by the first decoding unit 2920 As described above, the binary data information symbol string decoded by the first decoding unit 2920. And a binary identification information symbol string decoded by the second decoding unit 2930 Is input to the m evolution unit 2940.
  • the data information symbol string Is a binary information symbol column Binary information symbol string for distinguishing each symbol of 0 or not.
  • the identification information symbol string Is the data information symbol column When a specific symbol is not 0, the binary information symbol string has information for identifying the value of the symbol.
  • the m-evolution unit 2940 is a binary data information symbol string input from the first decoding unit 2920 and the second decoding unit 2930. Information symbol columns in binary and binary M information symbol string through m-evolution using Outputs
  • FIG. 33 and 34 show an example of the m-evolution operation in the decompression device according to the second embodiment of the present invention. That is, in Fig. 33, a binary data information symbol string Information symbol columns in binary and binary Symbolic column of digits from Shows an example of generating a data stream, and in FIG. 34, a binary data information symbol string is shown. Information symbol columns in binary and binary Symbolic information column from hexadecimal Shows an example of creating a.
  • the m-evolution operation shown in FIGS. 33 and 34 is a binary data information symbol string. If the symbol value existing at a specific position is 0, the corresponding symbol value of the m information string is set to 0. But the binary data information symbol string If the symbol value existing at a specific position of 1 is 1, the identification information symbol string of binary corresponding to the symbol whose value is 1 Check the value of the symbol. And the identification information symbol string of the identified binary number. Consider the symbol value of and set the corresponding symbol value of m information string.
  • the symbol value to be set to the corresponding symbol value of the information symbol string of the m number is a previously promised value.
  • the identification symbol column of the binary number checked If the symbol value of is 0, the information symbol column of the ternary number Set the corresponding symbol value of to 1. However, the identification information symbol string of the identified binary number Information symbol column in ternary if symbol value of 1 is 1 Set the corresponding symbol value of to 2.
  • the binary identification information symbol string Information symbol column in ternary if the symbol value of is 0 Set the corresponding symbol value of to 1, and identify the symbolic column of binary Column of information symbols in ternary if symbol value of 1 is 1 Corresponds to the prior commitment to set the corresponding symbol value to 2.
  • the identification symbol column of the identified binary number If the symbol value of is 0, the information symbol column in hexadecimal Set the corresponding symbol value of to 1.
  • the identification information symbol string of the identified binary number If the symbol value of is 10, the information symbol column in hexadecimal The corresponding symbol value of is set to 2, and the identification information symbol column of the checked binary number If the symbol value of is 11, the information symbol column in hexadecimal Set the corresponding symbol value of to 3.
  • a data information symbol column Read the first symbol value of.
  • the data information symbol string Information symbol column in ternary because the first symbol value in is 0
  • the first symbol value of is set to zero. In this case, an identity information symbol column There is no symbol to use.
  • the data information symbol string Read the second symbol value.
  • the data information symbol string The identity symbol column because the value of the second symbol in is not zero Check the first symbol value of.
  • the reason for checking the value of the first symbol in is the data information symbol column This is because the first symbol value of 1 has occurred.
  • the data information symbol string Read the seventh symbol value.
  • the data information symbol string The seventh symbol value in is not zero, so the identity symbol column Check the value of the second symbol in.
  • the identification information symbol string Reason for checking the value of the second symbol in the Data Information Symbol column This is because the second symbol case has a value of 1 from.
  • a data information symbol column Read the first symbol value of.
  • the data information symbol string Identity symbol column because the first symbol value in the is not zero Check the first symbol value of.
  • the reason for checking the value of the first symbol in is the data information symbol column This is because the first symbol value of 1 has occurred.
  • the data information symbol string Read the second symbol value. At this time, the data information symbol string The identity symbol column because the value of the second symbol in is not zero Check the value of the second symbol in. Where the identification information symbol string Reason for checking the value of the second symbol in the Data Information Symbol column This is because the second symbol case has a value of 1 from. The identified identification information symbol string Since the second symbol value of is 0, the information symbol column The second symbol value of is set to 1.
  • the data information symbol string Read the seventh symbol value.
  • the data information symbol string The seventh symbol value in is not zero, so the identity symbol column Check the third symbol value of.
  • the identification information symbol string The reason for checking the value of the third symbol in the Data Information Symbol column This is because the third occurrence of a symbol value from 1 occurs.
  • the information symbol string of the m-number generated by the m-evolution unit 2940 is transferred to the information recovery unit 2950 through the first switch S / W # 1. Since the operation by the subsequent configuration is the same as the operation in the restoration apparatus according to the first embodiment of the present invention, a detailed description thereof will be omitted.
  • 35 illustrates a control flow for data restoration in a restoration apparatus corresponding to a compression apparatus according to a second embodiment of the present invention.
  • the decompression device depacks an information packet input from the outside and outputs a data information symbol string and an identification information symbol string.
  • the decompression device decodes each of the data information symbol string and the identification information symbol string to output a binary data information symbol string and an identification information symbol string.
  • the decoding may be performed by a reconstruction technique corresponding to the entropy compression technique.
  • the decompression device In operation 3514, the decompression device generates an m-number information symbol string using a binary data information symbol string and an identification information symbol string output through the decoding operation.
  • the decompression device restores the m-information symbol string previously generated. That is, the hidden hidden information string is extracted from the m-th information string.
  • the decompression device may obtain an information symbol string having a decimal number that is reduced by one compared to the m information symbol string due to the extraction of the hidden information string. For example, if the true number of the information symbol string before information restoration is 4, the order of the information symbol string (or hidden information string) obtained after the information restoration is three.
  • step 3518 the decompression device extracts the hidden information string by restoring the information, and outputs the extracted hidden information string.
  • the decompression device determines whether the true number of the hidden information string, that is, the information symbol string after the hidden information string has been extracted, is a desired number. That is, it is determined whether the binary number of the hidden information string obtained earlier is a binary number.
  • step 3522 If the previously obtained hidden information sequence has more orders, the recovery apparatus proceeds to step 3522 and decreases n by 1 and returns to step 3516.
  • the restoration apparatus When it is returned to step 3516, the restoration apparatus performs an information restoration operation for extracting a new hidden information sequence from the previously concealed hidden information sequence. By extracting the new hidden information string, the number of obtained hidden information strings is reduced by one.
  • the restoration apparatus obtains the hidden hidden information string of the binary number finally obtained in step 3524. Extract
  • the decompression device combines the extracted hidden information string and the extracted at least one hidden information string to generate a final binary information bit string.
  • the compression apparatus is described as implemented by a plurality of configurations.
  • the compression technique according to the first and second embodiments of the present invention may be implemented by one configuration capable of digital signal processing. That is, it may be implemented by a digital signal processor (DSP).
  • DSP digital signal processor
  • specific operations for compression are the same.
  • a decompression device corresponding to the compression device according to the first and second embodiments of the present invention by using a digital signal processing device such as a DSP.
  • the first input information is limited to the case of binary numbers. However, even if the input information has more digits, it is obvious that the compression technique proposed in the first and second embodiments of the present invention can be equally applied.
  • the first and second embodiments of the present invention may be applied in the same manner as the operation of compressing the data once compressed through additional information concealment.
  • the hidden information bit value may have a value other than 0 and 1, so that the order of increase by one information concealment may vary. For example, when ternary information is input, the order of the information symbol string obtained by the first information concealment will be a decimal number.
  • the hidden information bit is concealed for a bit having a hidden information bit value of zero. This case is more effective when the number of bits having a value of 0 in the bit values constituting the hidden information bit string is relatively large compared to the number of bits having a value of 1.
  • the bit having the hidden information bit value is 1 It may be more efficient to conceal the concealed information bits for.
  • the number of bits of the hidden information bits should be determined in consideration of the number of bits having a value of 1 constituting the hidden information string. That is, the operation according to another embodiment of the present invention proposed above is the same as the operation according to the embodiment of the present invention, but has only a difference in the used bit value.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 정보 은닉 기법을 사용하여 데이터를 압축하거나 압축을 해제하는 장치 및 방법을 제안한다. 이를 위해 본 발명에서는 정보를 은닉한 후 부호화를 통해 데이터를 압축하고, 압축된 패킷으로부터 데이터를 디코딩한 후 상기 디코딩된 데이터에 은닉된 정보를 추출하여 이진화 데이터를 복원한다. 또한 정보 은닉이 이루어진 데이터를 이진화하는 구성 및 상기 이진화된 데이터를 부호화한 후 패킹 처리하는 압축 기술과 부호화된 데이터를 복호한 후 m진의 정보 심볼 열로 변환하고 상기 m진의 정보 심볼 열로부터 2진 정보 비트 열을 복원하는 복원 기술을 개시한다.

Description

데이터 압축/해제장치 및 방법
본 발명은 데이터를 처리하는 장치 및 방법에 관한 것으로, 특히 정보 은닉 기법을 사용하여 데이터를 압축하거나 압축을 해제하는 코덱 (CODEC) 장치 및 방법에 관한 것이다.
일반적으로 데이터를 처리하는 전자 장비에서는 데이터의 량을 줄이기 위해 다양한 압축 기술 및 압축 해제 (이하 “복원”이라 칭함) 기술이 적용되거나 제안되고 있다. 이와 같이 데이터의 량을 줄이기 위한 시도는 데이터를 기록하기 위한 기록 매체의 용량을 효율적으로 사용하기 위한 측면과, 전달의 용이성을 제공하기 위한 측면 등을 기반으로 한다.
통상적으로 최고 수준으로 데이터를 압축하는 방법들은 아주 복잡한 데이터 처리 장치가 필요할 뿐만 아니라 흔히 처리 속도가 느리다. 이에 반하여 낮은 수준으로 데이터를 압축하는 방법들은 처리 속도가 빠를 뿐만 아니라 상대적으로 하드웨어가 복잡하지 않다.
따라서 종래에는 하드웨어의 복잡성이나 처리 시간을 고려하여 원하는 수준의 품질을 얻기 위한 데이터 압축 기법을 선택하여 사용하였다. 하지만 향후에는 하드웨어의 복잡도와 처리 시간을 줄이면서도 높은 수준의 품질을 얻을 수 있는 압축 기법 및 이에 상응하는 복원 기법의 마련이 시급하다 할 것이다.
본 발명은 진수 연산을 이용하여 처리 시간뿐만 아니라 하드웨어의 복잡도를 줄일 수 있는 데이터 압축장치 및 방법과 이에 상응하는 압축 해제장치 및 방법을 제안한다.
본 발명은 정보 은닉을 이용하여 처리 시간뿐만 아니라 하드웨어의 복잡도를 줄일 수 있는 데이터 압축장치 및 방법과 이에 상응하는 압축 해제장치 및 방법을 제안한다.
본 발명은 진수 연산에 의해 정보를 은닉하고, 상기 정보 은닉에 의해 증진된 진수를 가지는 정보 열을 이진 비트 열로 감진하는 데이터 압축장치 및 방법과 이에 상응하는 압축 해제장치 및 방법을 제안한다.
본 발명은 이진 비트 열로 이루어진 데이터를 원하는 진수의 정보 열로 변경하여 데이터를 압축하는 장치 및 방법과 이에 상응하는 압축 해제장치 및 방법을 제안한다.
본 발명의 바람직한 실시 예에 따른 데이터 압축 장치는, 피 은닉 심볼들 중 미리 결정된 값을 갖는 대상 피 은닉 심볼에 대해 은닉하고자 하는 대상 은닉 심볼을 은닉 심볼들로부터 결정하고, 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값으로 상기 대상 피 은닉 심볼의 값을 치환하는 정보 은닉부를 포함한다.
또한 본 발명의 바람직한 실시 예에 따른 데이터 압축 방법은, 피 은닉 심볼들 중 미리 결정된 값을 갖는 대상 피 은닉 심볼에 대해 은닉하고자 하는 대상 은닉 심볼을 은닉 심볼들로부터 결정하는 과정과, 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값으로 상기 대상 피 은닉 심볼의 값을 치환하는 과정을 포함한다.
또한 본 발명의 바람직한 실시 예에 따른 데이터 복원 장치는, m진의 정보 은닉 심볼 열을 구성하는 정보 은닉 심볼들 중 미리 결정된 값을 가지는 정보 은닉 심볼로부터 피 은닉 심볼과 은닉 심볼을 복원하는 정보 복원부를 포함하며, 여기서 상기 미리 결정된 값은 상기 정보 은닉 심볼이 가질 수 있는 최소 값과 최고 값임을 특징으로 한다.
또한 본 발명의 바람직한 실시 예에 따른 데이터 복원 방법은, m진의 정보 은닉 심볼 열을 구성하는 정보 은닉 심볼들 중 미리 결정된 값을 가지는 정보 은닉 심볼로부터 피 은닉 심볼과 은닉 심볼을 복원하는 과정을 포함하며, 여기서 상기 미리 결정된 값은 상기 정보 은닉 심볼이 가질 수 있는 최소 값과 최고 값임을 특징으로 한다.
본 발명은 하드웨어의 복잡도와 처리 시간을 줄이면서도 압축 성능이 우수한 무 손실 압축이 가능하도록 하였다. 한편 그 외의 다양한 효과는 후술될 본 발명의 실시 예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 것이다.
도 1은 본 발명의 실시 예에 따른 무손실 데이터 압축 및 복원을 위한 시스템을 보이고 있는 도면;
도 2는 본 발명의 제1실시 예에 따른 압축장치의 구성을 보이고 있는 도면;
도 3은 본 발명의 제1실시 예에 따른 압축 장치에서 데이터 압축을 위한 제어 흐름을 보이고 있는 도면;
도 4는 본 발명의 실시 예를 위해 입력되는 정보 열로부터 피 은닉 정보 열과 은닉 정보 열을 분리하는 일 예들을 보이고 있는 도면;
도 5는 본 발명의 실시 예를 위해 입력되는 정보 열로부터 피 은닉 정보 열과 은닉 정보 열을 분리하는 다른 예들을 보이고 있는 도면;
도 6 내지 도 10은 본 발명의 실시 예로 제안하는 압축 기술에 따라 정보를 은닉하기 위한 예들을 보이고 있는 도면.
도 11은 본 발명의 제2실시 예에 따른 압축장치의 구성을 보이고 있는 도면;
도 12와 도 13은 본 발명의 제2실시 예에 따른 압축 장치에서 이진화 동작의 예를 보이고 있는 도면;
도 14는 본 발명의 제2실시 예에 따른 압축 장치를 구성하는 부호화부의 구성을 보이고 있는 도면;
도 15와 도 16은 본 발명의 제2실시 예에 따른 압축 장치를 구성하는 부호화부 내의 진수 변환기에서 진수를 변환하는 예를 보이고 있는 도면;
도 17은 본 발명의 제2실시 예에 따른 압축 장치에서 데이터 압축을 위한 제어 흐름을 보이고 있는 도면;
도 18은 본 발명의 제1실시 예에 따른 복원장치의 구성을 보이고 있는 도면;
도 19는 본 발명의 제1실시 예에 따른 압축 장치에 대응한 복원 장치에서 데이터 복원을 위한 제어 흐름을 보이고 있는 도면;
도 20 내지 도 26은 본 발명의 실시 예로 제안하는 복원 기술에 따라 정보를 복원하기 위한 예들을 보이고 있는 도면;
도 27과 도 28은 본 발명의 실시 예에 따라 피 은닉 정보 열과 적어도 하나의 은닉 정보 열을 결합하여 2진수의 정보 비트 열을 생성하는 예들을 보이고 있는 도면;
도 29는 본 발명의 제2실시 예에 따른 압축 장치에 상응하는 복원 장치의 구성을 보이고 있는 도면;
도 30은 본 발명의 제2실시 예에 따른 복원 장치를 구성하는 복호화부의 구성을 보이고 있는 도면;
도 31과 도 32는 본 발명의 제2실시 예에 따른 복원 장치를 구성하는 복호화부 내의 진수 변환기에서 진수를 변환하는 예를 보이고 있는 도면;
도 33과 도 34는 본 발명의 제2실시 예에 따른 복원 장치에서 m진화 동작의 예를 보이고 있는 도면;
도 35는 본 발명의 제2실시 예에 따른 압축 장치에 상응하는 복원 장치에서 데이터 복원을 위한 제어 흐름을 보이고 있는 도면.
구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술 되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
후술될 본 발명의 실시 예에서는 정보 비트 열을 압축하여 정보 패킷을 생성하는 압축 기술과 압축된 정보 패킷을 복원하여 정보 비트 열을 생성하는 복원 기술에 대해 구체적으로 설명할 것이다.
도 1은 본 발명의 실시 예에 따른 무손실 데이터 압축 및 복원을 위한 시스템을 보이고 있다.
도 1을 참조하면, 데이터 압축장치(110)는 압축하고자 하는 정보 열 X를 정보 은닉 기법을 사용하여 압축함으로써 압축 정보 열 Z를 출력한다. 데이터 복원장치(120)는 상기 압축 정보 열 Z로부터 은닉된 정보를 추출하여 압축되기 전의정보 열 X를 복원한다.
이하 본 발명의 실시 예를 설명함에 있어 사용될 용어들을 먼저 정의하면 다음과 같다.
- 정보 은닉: 이미지, 오디오, 비디오 등의 데이터에 추가로 정보를 숨기는 기술
- 피 은닉 심볼: 다른 정보를 은닉하기 위해 사용되는 심볼
- 피 은닉 심볼 열 (또는 피 은닉 정보 열): 피 은닉 심볼들로 구성된 심볼 열
- 대상 피 은닉 심볼: 피 은닉 심볼 열을 구성하는 피 은닉 심볼들 중 정보 은닉을 위해 선택된 피 은닉 심볼
- 은닉 심볼: 피 은닉 심볼에 은닉시킬 심볼
- 은닉 심볼 열 (또는 은닉 정보 열): 은닉 심볼들로 구성된 심볼 열
- 대상 은닉 심볼: 대상 은닉 심볼에 은닉시키기 위해 상기 은닉 심볼 열을 구성하는 은닉 심볼들 중 선택된 은닉 심볼
- 감진: 3진 데이터를 이진화하여 2진 데이터를 생성하거나 4진 데이터를 이진화하여 2진 데이터를 생성하는 동작. 이때 이진화의 대상이 되는 데이터는 2진수를 제외한 어떠한 진수를 가져도 상관없음.
한편 앞에서 정의되지 않았으나 후술될 상세한 설명에서 사용될 용어들에 대해서는 명세서 전반에 걸친 내용을 토대로 해석되어야 할 것이다.
이하 본 발명에서 제안하고자 하는 압축 및 복원 기술의 다양한 실시 예를 첨부된 도면을 참조하여 구체적으로 설명한다.
A. 압축 기술
후술될 설명에서는 피 은닉 심볼들 중 설정된 값을 갖는 대상 피 은닉 심볼에 대해 은닉하고자 하는 대상 은닉 심볼을 은닉 심볼들로부터 결정하고, 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값으로 상기 대상 피 은닉 심볼의 값을 치환하는 압축 기술에 대한 다양한 실시 예를 구체적으로 설명한다.
A-1. 제1실시 예 (압축 기술)
도 2는 본 발명의 제1실시 예에 따른 압축장치의 구성을 보이고 있다.
도 2를 참조하면, 비트 분리부(210)는 정보 비트 열 X를 입력으로 하고, 상기 정보 비트 열 X로부터 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000001
과 적어도 하나의 은닉 정보 열
Figure PCTKR2010000956-appb-I000002
또는
Figure PCTKR2010000956-appb-I000003
(n≥1)을 분리한다.
여기서 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000004
은 적어도 하나의 은닉 정보 열 중 최초의 은닉 정보 열
Figure PCTKR2010000956-appb-I000005
을 숨기기 위한 최초의 정보 열을 의미하며, 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000006
또는
Figure PCTKR2010000956-appb-I000007
은 피 은닉 정보 열에 숨길 은닉 정보들의 열을 의미한다.
상기
Figure PCTKR2010000956-appb-I000008
와 상기
Figure PCTKR2010000956-appb-I000009
또는
Figure PCTKR2010000956-appb-I000010
에서 아래 첨자는 해당 정보 열의 인덱스(index)를 의미하며, 위 첨자는 해당 정보 열의 진수를 의미한다. 상기 아래 첨자가 의미하는 해당 정보 열의 인덱스는 정보 은닉이 이루어진 횟수에 대응한다. 예컨대 정보 은닉이 이루어지기 전인 최초의 피 은닉 정보 열과 은닉 정보 열을 지칭하는
Figure PCTKR2010000956-appb-I000011
Figure PCTKR2010000956-appb-I000012
에서 아래 첨자는 0이다. 하지만 정보 은닉이 한번 이루어졌다면 피 은닉 정보 열과 은닉 정보 열을 지칭하는
Figure PCTKR2010000956-appb-I000013
Figure PCTKR2010000956-appb-I000014
에서 아래 첨자는 1이다. 이때 피 은닉 정보 열을 지칭하는
Figure PCTKR2010000956-appb-I000015
의 위 첨자도 n+2으로 변경됨을 알 수 있다. 즉 정보 은닉이 이루어질 때마다 피 은닉 정보 열을 구성하는 값의 진수가 하나씩 증가한다.
그리고 상기 최초 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000016
을 구성하는 비트 수와 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000017
또는
Figure PCTKR2010000956-appb-I000018
을 구성하는 비트 수는 임의로 설정될 수 있다. 단지 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000019
또는
Figure PCTKR2010000956-appb-I000020
을 구성하는 비트 수를 결정할 때에는 최초 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000021
에서 0의 값을 가지는 비트의 수를 고려하여야 한다. 또한 피 은닉 정보 열 또는
Figure PCTKR2010000956-appb-I000023
을 구성하는 비트 수 또는 심볼 수가 은닉 정보 열
Figure PCTKR2010000956-appb-I000024
또는
Figure PCTKR2010000956-appb-I000025
을 구성하는 비트 수에 비해 커야 한다.
도 4와 도 5는 본 발명의 실시 예를 위해 입력되는 정보 열로부터 피 은닉 정보 열과 은닉 정보 열을 분리하는 예들을 보이고 있다. 즉 도 4에서는 입력되는 정보 열로부터 피 은닉 정보 열과 은닉 정보 열을 순차적으로 분리하는 예를 보이고 있으며, 도 5에서는 입력되는 정보 열로부터 피 은닉 정보 열과 은닉 정보 열을 병렬적으로 분리하는 예를 보이고 있다.
먼저 도 4를 참조하면, 입력되는 정보 열 X의 최상위 비트 (MSB)로부터 소정 비트 수만큼의 비트들을 분리하여 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000026
로 출력한다. 그리고 상기 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000027
을 제외한 나머지 정보 열 X의 MSB로부터 소정 비트 수만큼의 비트들을 분리하여 최초의 은닉 정보 열
Figure PCTKR2010000956-appb-I000028
로 출력한다. 그 후 상기 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000029
와 상기 최초의 은닉 정보 열
Figure PCTKR2010000956-appb-I000030
을 제외한 나머지 정보 열 X의 MSB로부터 소정 비트 수만큼의 비트들을 분리하여 두 번째 은닉 정보 열
Figure PCTKR2010000956-appb-I000031
을 출력한다. 한편 필요에 따라 나머지 정보 열 X로부터 추가의 은닉 정보 열을 출력할 수 있다.
다음으로 도 5를 참조하면, 입력되는 정보 열 X의 최상위 비트 (MSB)에서부터 선택되는 각 비트를 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000032
와 최초의 은닉 정보 열
Figure PCTKR2010000956-appb-I000033
및 두 번째 은닉 정보 열
Figure PCTKR2010000956-appb-I000034
에 순차적으로 분배한다. 이때 비트 값이 1인 비트가 선택된 경우에는 해당 비트를 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000035
와 최초의 은닉 정보 열
Figure PCTKR2010000956-appb-I000036
및 두 번째 은닉 정보 열
Figure PCTKR2010000956-appb-I000037
중 상응하는 정보 열에 분배한다. 그리고 다음부터 선택되는 비트는 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000038
로부터 다시 순차적으로 분배한다.
도 5에서는 두 개의 은닉 정보 열을 가정하고 있으나 그 이상의 은닉 정보 열을 분리하고자 하는 경우에도 동일하게 적용될 수 있다. 또한 상기 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000039
와 최초의 은닉 정보 열
Figure PCTKR2010000956-appb-I000040
및 두 번째 은닉 정보 열
Figure PCTKR2010000956-appb-I000041
에 분배할 총 비트의 수는 필요에 의해 사전에 결정할 수 있다. 단지 상기 총 비트 수를 결정함에 있어 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000042
의 비트 수와 상기 입력되는 정보 열 X를 구성하는 비트의 값이 1인 비트의 분포 또는 비트 값이 0인 비트 수 등을 고려하는 것이 바람직할 것이다.
상기 비트 분리부(210)는 복수의 은닉 정보 열이 생성된 경우에는 상기 생성된 복수의 은닉 정보 열을 동시에 출력하는 것이 아니라 정보 은닉 동작을 고려하여 순차적으로 출력하는 것이 바람직하다.
제1스위치 (S/W #1)는 상기 비트 분리부(210)로부터 출력되는 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000043
을 정보 은닉부(220)로 전달하거나 상기 정보 은닉부(220)로부터 출력되는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000044
을 상기 정보 은닉부(220)로 피드-백하기 위한 동작을 수행한다.
즉 상기 제1스위치 (S/W #1)는 상기 비트 분리부(210)로부터 출력되는 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000045
을 정보 은닉부(220)의 입력으로 전달한 후 상기 정보 은닉부(220)로부터 출력되는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000046
을 상기 정보 은닉부(220)의 입력으로 전달하기 위한 경로를 형성한다.
제2스위치 (S/W #2)는 상기 정보 은닉부(220)로부터 출력되는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000047
을 상기 정보 은닉부(220)의 입력으로 전달하거나 부호화부(230)로 전달하기 위한 동작을 수행한다. 이때 상기 부호화부(230)로 전달되는 정보 은닉이 이루어진 정보 심볼 열은
Figure PCTKR2010000956-appb-I000048
로 정의할 수 있다. 여기서 m은 정보 은닉을 통해 최종적으로 얻고자 하는 정보 심볼 열의 차수로써, n+2로 정의할 수 있다. 예컨대 정보 은닉이 1회 (n=1) 이루어졌다면, m은 3이 된다.
본 발명의 실시 예에 따른 정보 압축을 위한 정보 은닉 횟수와 관련한 상기 제1스위치 (S/W #1)와 상기 제2스위치 (S/W #2)의 동작은 하기 <표 1>과 같이 정리할 수 있다.
표 1
Figure PCTKR2010000956-appb-T000001
상기 <표 1>에서 S/W #1의 off 상태는 비트 분리부(210)의 출력을 정보 은닉부(220)로 입력하기 위한 경로가 형성된 상태이며, S/W #1의 on 상태는 정보 은닉부(220)의 출력을 상기 정보 은닉부(220)로 입력하기 위한 경로가 형성된 상태이다. 그리고 상기 <표 1>에서 S/W #2의 off 상태는 정보 은닉부(220)의 출력을 부호화부(230)로 입력하기 위한 경로가 형성된 상태이며, S/W #2의 on 상태는 정보 은닉부(220)의 출력을 상기 S/W #1로 전달하기 위한 경로가 형성된 상태이다.
하지만 상기 S/W #1와 상기 S/W #2의 동작이 상술한 바에만 한정되어 해석되어서는 안될 것이다. 즉 상기 S/W #1와 상기 S/W #2의 동작이 상술한 바와 반대의 동작을 수행하더라도 본 발명의 실시 예를 구현하는데 어려움이 없음은 당업자에게 자명한 정도의 것이다.
한편 상기 S/W #1와 상기 S/W #2의 제어는 별도로 구비된 스위칭 제어부 또는 압축 장치를 구비하는 장비의 전반적인 동작을 제어하는 구성에 의해 이루어질 수 있다.
상기 정보 은닉부(220)는 피 은닉 정보 열로
Figure PCTKR2010000956-appb-I000049
또는
Figure PCTKR2010000956-appb-I000050
을 입력으로 하며, 은닉 정보 열로
Figure PCTKR2010000956-appb-I000051
또는
Figure PCTKR2010000956-appb-I000052
을 입력으로 한다.
상기 정보 은닉부(220)는 하나의 입력인 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000053
또는
Figure PCTKR2010000956-appb-I000054
에 다른 입력인 은닉 정보 열
Figure PCTKR2010000956-appb-I000055
또는
Figure PCTKR2010000956-appb-I000056
을 숨기기 위한 동작을 수행한다.
도 6 내지 도 10은 본 발명의 실시 예로 제안하는 압축 기술에 따라 정보를 은닉하기 위한 예들을 보이고 있다. 즉 도 6, 도 7 및 도 9에서는 2진수의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000057
에 2진수의 은닉 정보 열
Figure PCTKR2010000956-appb-I000058
을 은닉하기 위한 예를 보이고 있으며, 도 8과 도 10에서는 3진수의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000059
에 2진수의 은닉 정보 열
Figure PCTKR2010000956-appb-I000060
을 은닉하기 위한 예를 보이고 있다.
도 6 내지 도 10에서 보이고 있는 정보 은닉은 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000061
또는
Figure PCTKR2010000956-appb-I000062
의 특정 위치에 존재하는 비트 값 또는 심볼 값이 0이고, 이에 상응하는 은닉 정보 열
Figure PCTKR2010000956-appb-I000063
또는
Figure PCTKR2010000956-appb-I000064
의 특정 위치에 존재하는 비트 값이 0인 경우에 이루어진다. 그리고 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000065
또는
Figure PCTKR2010000956-appb-I000066
의 특정 위치에 존재하는 비트 값 또는 심볼 값이 0이고, 이에 상응하는 은닉 정보 열
Figure PCTKR2010000956-appb-I000067
또는
Figure PCTKR2010000956-appb-I000068
의 특정 위치에 존재하는 비트 값이 0을 제외한 임의의 값을 가지는 경우에도 정보 은닉은 이루어진다. 하지만 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000069
또는
Figure PCTKR2010000956-appb-I000070
의 특정 위치에 존재하는 비트 값 또는 심볼 값이 0을 제외한 임의의 값을 가지는 경우에는 상기 임의의 값이 그대로 유지되므로, 정보 은닉은 이루어지지 않는다.
먼저 도 6을 참조하면, 피 은닉 정보 열 U에서 첫 번째, 두 번째 비트 및 네 번째 내지 열한 번째 비트의 값은 공통으로 0이다. 따라서 상기 첫 번째, 두 번째 비트 및 네 번째 내지 열한 번째 비트 각각의 값을 은닉 정보 열 V에서 대응하는 비트의 값으로 치환함으로써, 정보 심볼 열 L을 생성한다.
예컨대 피 은닉 정보 열 U의 첫 번째 비트에 대응하는 은닉 정보 열 V의 첫 번째 비트의 값이 0이므로, 정보 심볼 열 L의 첫 번째 비트 값을 0으로 결정한다. 하지만 피 은닉 정보 열 U의 네 번째 비트에 대응하는 은닉 정보 열 V의 세 번째 비트의 값이 1이므로, 정보 심볼 열 L의 네 번째 비트 값을 1로 결정한다.
한편 피 은닉 정보 열 U에서 세 번째 비트의 값은 1이다. 따라서 은닉 정보 열 V와 무관하게 정보 심볼 열 L의 세 번째 비트 값을 1로 결정한다.
상술한 바에 의하면, 정보 심볼 열 L에서 비트 값은 두 가지 경우에서 1로 결정된다. 따라서 정보 심볼 열 L을 복원하기 위해서는 상기 두 가지의 경우를 구분하기 위한 심볼 식별 정보가 필요하다. 일 예로써 1의 값을 가지는 피 은닉 정보 비트로 인해 정보 심볼 열 L의 비트 값이 1로 결정된 경우 심볼 식별 정보 M을 0으로 설정하고, 1의 값을 가지는 은닉 정보 비트로 인해 정보 심볼 열 L의 비트 값이 1로 결정된 경우에는 심볼 식별 정보 M을 1로 설정한다. 따라서 도 6에 의하면 심볼 식별 정보 M은 ‘011’로 결정된다.
그리고 피 은닉 정보 열 U의 비트 수와 은닉 정보 열 V의 비트 수가 일치하지 않아 특정 비트에 대한 정보 은닉이 이루어지지 않았을 경우에는 이를 식별하도록 하는 플레그 정보가 필요하다. 예컨대 피 은닉 정보 열 U의 비트 수와 은닉 정보 열 V의 비트 수가 일치하는 경우에는 플레그 정보 F를 0으로 설정하고, 피 은닉 정보 열 U의 비트 수와 은닉 정보 열 V의 비트 수가 일치하지 않는 경우에는 플레그 정보 F를 1로 설정한다. 도 6의 경우는 플레그 정보 F가 1로 설정될 것이다.
따라서 정보 은닉을 통해 최종적으로 생성되는 데이터는 심볼 식별 정보 M의 길이 정보
Figure PCTKR2010000956-appb-I000071
과 플레그 정보 (F)를 포함하는 헤더 정보와 심볼 식별 정보 M과 정보 심볼 열 L을 포함하는 페이로드로 구성된다.
도 7을 참조하면, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000072
의 MSB 값과 은닉 정보 열
Figure PCTKR2010000956-appb-I000073
의 MSB 값을 읽는다. 이때 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000074
의 MSB 값이 0이고 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000075
의 MSB 값이 0이므로, 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000076
의 MSB는 0으로 설정된다. 이로 인해 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000077
의 MSB에 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000078
의 MSB가 은닉되었음을 확인할 수 있다.
그 후 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000079
의 두 번째 비트 값을 읽는다. 이때 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000080
의 두 번째 값이 1이므로, 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000081
의 두 번째 심볼 값은 1로 설정된다.
그리고 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000082
의 세 번째 비트 값과 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000083
의 두 번째 비트 값을 읽는다. 이때 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000084
의 세 번째 비트 값이 0이고 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000085
의 두 번째 비트 값이 0이므로, 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000086
의 세 번째 심볼 값은 0으로 설정된다. 이로 인해 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000087
의 세 번째 비트에 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000088
의 두 번째 비트가 은닉되었음을 확인할 수 있다.
상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000089
의 네 번째 내지 여섯 번째 비트 값은 모두 0이고, 이에 상응하는 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000090
의 세 번째 내지 다섯 번째 비트 값도 모두 0이므로, 해당 비트들에 대해서도 정보 은닉이 이루어진다.
하지만 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000091
의 일곱 번째 비트 값은 0이나 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000092
의 여섯 번째 비트 값이 1이므로, 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000093
의 일곱 번째 심볼 값은 2로 설정된다.
상술한 예에서 확인할 수 있는 바와 같이 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000094
의 비트 값과 이에 상응하는 은닉 정보 열
Figure PCTKR2010000956-appb-I000095
의 비트 값이 모두 0인 경우에는 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000096
의 해당 심볼 값이 0로 설정된다.
하지만 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000097
의 비트 값이 1인 경우 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000098
의 해당 심볼 값이 1로 설정되고, 은닉 정보 열
Figure PCTKR2010000956-appb-I000099
의 비트 값이 1인 경우에는 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000100
의 해당 심볼 값이 2로 설정된다. 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000101
의 비트 값이 1인 경우에는 이에 상응하는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000102
의 비트 값이 감추어짐을 알 수 있다.
이와 같이 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000103
의 비트 값이 1인 경우와 은닉 정보 열
Figure PCTKR2010000956-appb-I000104
의 비트 값이 1인 경우에 서로 다른 심볼 값을 설정하는 것은 각 경우 별로 데이터 복원 시에 구분하여 복원이 이루어질 수 있도록 하기 위함이다.
따라서 상술한 바에 의해 생성된 정보 심볼 열
Figure PCTKR2010000956-appb-I000105
을 구성하는 심볼들의 차수는 3진수가 된다.
다음으로 도 8을 참조하면, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000106
의 첫 번째 심볼 값은 0이나 은닉 정보 열
Figure PCTKR2010000956-appb-I000107
의 첫 번째 비트 값이 1이므로, 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000108
의 첫 번째 심볼 값은 3으로 설정된다. 이 경우 해당 심볼 값을 3으로 설정하는 것은 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000109
에서 사용되지 않으면서 가장 낮은 차수를 가지는 값을 이용하기 위함이다.
그 후 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000110
의 두 번째 심볼 값을 읽는다. 이때 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000111
의 두 번째 심볼 값이 1이므로, 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000112
의 두 번째 심볼 값은 1로 설정된다.
그리고 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000113
의 세 번째 심볼 값과 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000114
의 두 번째 비트 값을 읽는다. 이때 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000115
의 세 번째 심볼 값과 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000116
의 두 번째 비트 값이 모두 0이므로, 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000117
의 세 번째 심볼 값은 0으로 설정된다. 이로 인해 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000118
의 세 번째 심볼에 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000119
의 두 번째 비트가 은닉되었음을 확인할 수 있다.
상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000120
의 네 번째 내지 여섯 번째 심볼 값은 모두 0이고, 이에 상응하는 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000121
의 세 번째 내지 다섯 번째 비트 값도 모두 0이므로, 해당 비트들에 대해서도 정보 은닉이 이루어진다.
하지만 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000122
의 일곱 번째 심볼 값이 2이므로, 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000123
의 일곱 번째 심볼 값은 2로 설정된다.
상술한 예에서 확인할 수 있는 바와 같이 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000124
의 심볼 값과 이에 상응하는 은닉 정보 열
Figure PCTKR2010000956-appb-I000125
의 비트 값이 모두 0인 경우에는 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000126
의 해당 심볼 값이 0로 설정된다.
하지만 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000127
의 심볼 값이 1인 경우 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000128
의 해당 심볼 값이 1로 설정되고, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000129
의 심볼 값이 2인 경우 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000130
의 해당 심볼 값이 2로 설정되며, 은닉 정보 열
Figure PCTKR2010000956-appb-I000131
의 비트 값이 1인 경우에는 정보 은닉에 의해 생성될 정보 심볼 열
Figure PCTKR2010000956-appb-I000132
의 해당 심볼 값이 3으로 설정된다. 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000133
의 비트 값이 1인 경우에는 이에 상응하는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000134
의 비트 값이 감추어짐을 알 수 있다.
이와 같이 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000135
의 심볼 값이 1인 경우와 2인 경우 및 은닉 정보 열
Figure PCTKR2010000956-appb-I000136
의 비트 값이 1인 경우에 서로 다른 심볼 값을 설정하는 것은 각 경우 별로 데이터 복원 시에 구분하여 복원이 이루어질 수 있도록 하기 위함이다.
따라서 상술한 바에 의해 생성된 정보 심볼 열
Figure PCTKR2010000956-appb-I000137
을 구성하는 심볼들의 차수는 4진수가 된다.
한편 도 9와 도 10에서 보이고 있는 예는 앞에서 도 7과 도 8을 참조하여 설명한 바와 동일한 방식에 의해 정보 은닉이 이루어짐에 따라 구체적인 설명은 생략하도록 한다. 단지 도 9와 도 10에서는 도 7과 도 8에서 사용된 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000138
과 은닉 정보 열
Figure PCTKR2010000956-appb-I000139
과는 상이한 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000140
과 은닉 정보 열
Figure PCTKR2010000956-appb-I000141
이 사용된다는 차이점만이 존재한다.
전술한 바에 의해 상기 정보 은닉부(220)로부터 출력되는 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000142
은 상기 제2스위치 (S/W #2)를 통해 부호화부(230)로 입력된다.
상기 부호화부(230)는 상기 정보 은닉부(220)로부터 입력되는 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000143
을 입력으로 하고, 상기 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000144
을 소정의 코딩 기법에 의해 압축하여 출력한다.
상기 부호화부(230)에는 일 예로 엔트로피 코딩 (Entropy coding) 기법이 적용될 수 있다. 상기 엔트로피 코딩 기법은 출현 빈도가 높은 심볼에 짧은 코드를 배정하고 빈도가 낮은 심볼에 긴 코드를 배정하는 코딩 기법이다. 상기 엔트로피 코딩 기법은 일명 가변 길이 코딩(Variable-length coding) 기법이라고도 한다.
한편, 엔트로피 코딩 기법에서는 심볼의 빈도만을 고려하는데, 상기 엔트로피 코딩 기법으로는 허프만 코더 (Huffman coder)와 산술 부호 코더 중 어느 것이나 사용할 수 있다. 상기 엔트로피 코딩 기법은 미리 각 심볼의 출현 빈도를 알아야 최적의 압축이 가능하다. 이때 허프만 코딩을 사용하는 경우에는 각각의 심볼에 하나씩 코드워드를 배정하므로 정수 길이의 코드워드만 허용한다.
도 3은 본 발명의 제1실시 예에 따른 압축 장치에서 데이터 압축을 위한 제어 흐름을 보이고 있다.
도 3을 참조하면, 압축 장치는 310단계에서 2진 정보 비트 열을 외부로부터 입력 받는다. 그 후 상기 압축 장치는 312단계에서 상기 입력된 2진 정보 비트 열로부터 피 은닉 정보 열을 추출하며, 314단계에서는 상기 피 은닉 정보 열이 추출되고 남은 2진 정보 비트 열로부터 은닉 정보 열을 추출한다. 이때 정보 은닉 횟수를 카운트하기 위한 카운트 값 n은 0으로 설정된 상태이다.
상기 압축 장치는 316단계에서 상기 추출한 피 은닉 정보 열에 상기 추출한 은닉 정보 열을 숨김으로써, m진 정보 심볼 열을 생성한다. 이때 m은 상기 생성된 정보 심볼 열의 진수를 의미하는 상수로써, 은닉 횟수 카운트 값인 n에 2를 더한 값을 갖는다. 즉, 정보 은닉이 한번 수행될 때마다 이에 상응하여 생성되는 정보 심볼 열의 진수를 1씩 증가한다.
상기 압축 장치는 318단계에서 앞서 생성된 정보 심볼 열의 진수가 원하는 진수인가를 판단한다. 즉 현재까지 정보 은닉이 1회 이루어졌으므로 상기 압축 장치는 최종적으로 얻고자 하는 정보 심볼 열의 차수가 3인 경우에는 원하는 진수라고 판단할 것이다. 하지만 그 이상의 차수를 가지는 정보 심볼 열을 얻고자 하였다면, 상기 압축 장치는 320단계로 진행하여 상기 n은 1증가 시킨 후 상기 314단계로 리턴한다.
상기 314단계로 리턴될 시 상기 압축 장치는 앞서 추축된 피 은닉 정보 열과 은닉 정보 열을 제외한 나머지 2진 정보 비트 열로부터 새로운 은닉 정보 열을 추출한다. 그리고 상기 새로이 추축된 은닉 정보를 앞서 생성한 정보 심볼 열에 추가로 은닉함으로써, 진수가 1증가된 정보 심볼 열을 생성한다.
상기 압축 장치는 상기 318단계에서 원하는 진수의 정보 심볼 열을 획득하였다고 판단할 시, 322단계로 진행하여 상기 획득한 정보 심볼 열에 대한 부호화를 수행한다. 이때 부호화는 엔트로피 압축 기법에 의해 이루어질 수 있다. 상기 엔트로피 압축 기법은 앞에서도 밝힌 바와 같이 허프만 코드 또는 산술 부호 코더 중 어떠한 것을 사용하여도 좋다.
상기 압축 장치는 324단계에서 부호화를 통해 압축된 정보 심볼 열에 대한 패킹을 통해 정보 패킷을 생성한다.
A-2. 제2실시 예 (압축 기술)
도 11은 본 발명의 제2실시 예에 따른 압축장치의 구성을 보이고 있다. 도 11에서 보이고 있는 압축 장치의 구성들 중 참조번호 1110, 1120과 제1 및 제2스위치는 도 2에서의 참조번호 210, 220과 제1 및 제2스위치와 동일한 동작을 수행한다. 그리고 도 11에서 참조번호 1140과 1150에 해당하는 제1 및 제2부호화부는 입력되는 데이터만이 상이할 뿐 도 2에서의 참조번호 230에 해당하는 부호화부와 동일한 동작을 수행한다.
따라서 후술될 본 발명의 제2실시 예에 따른 동작 설명에서 해당 구성에 대한 구체적인 설명이 생략됨에 유념하여야 할 것이다.
도 11을 참조하면, 정보 은닉부(1120)에 의해 정보 은닉이 이루어져 출력되는 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000145
은 제2스위치 (S/W #2)를 통해 이진화부(730)로 입력된다.
상기 이진화부(1130)는 상기 정보 은닉부(1120)로부터 입력되는 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000146
에 대한 이진화를 수행하고, 상기 이진화를 통해 두 개의 이진 정보 심볼 열을 출력한다. 상기 이진화부(1130)로부터 출력되는 두 개의 이진 정보 심볼 열 중 하나는 데이터 정보 심볼 열이며, 다른 하나는 식별 정보 심볼 열이다.
여기서 상기 데이터 정보 심볼 열은 상기 입력되는 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000147
의 각 심볼이 0인지 아닌지를 구분하기 위한 2진 정보 심볼 열이다. 그리고 상기 식별 정보 심볼 열은 상기 데이터 정보 심볼 열에 의해 특정 심볼이 0이 아닌 경우 해당 심볼의 값을 식별할 수 있도록 하는 정보를 가지는 2진 정보 심볼 열이다.
도 12와 도 13은 본 발명의 제2실시 예에 따른 압축 장치에서 이진화 동작의 예를 보이고 있다. 즉 도 12에서는 3진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000148
로부터 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000149
과 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000150
을 생성하는 예를 보이고 있으며, 도 13에서는 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000151
로부터 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000152
과 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000153
을 생성하는 예를 보이고 있다.
도 12와 도 13에서 보이고 있는 이진화 동작은 m진 정보 심볼 열의 특정 위치에 존재하는 심볼 값이 0이면 2진수의 데이터 정보 심볼 열의 해당 심볼 값을 0으로 설정한다. 하지만 상기 m진 정보 심볼 열의 특정 위치에 존재하는 심볼 값이 0이 아니면 2진수의 데이터 정보 심볼 열의 해당 심볼 값을 1로 설정한다.
그리고 상기 심볼 값이 1로 설정된 2진수의 데이터 정보 심볼 열의 심볼에 상응하는 2진수의 식별 정보 심볼 열의 심볼 값을 사전에 약속된 값으로 설정한다.
일 예로 정보 심볼 열이 3진수인 경우를 가정할 때, 정보 심볼 열의 특정 위치에 존재하는 심볼 값이 1이면, 2진수의 식별 정보 심볼 열의 해당 심볼 값에 설정될 사전에 약속된 값은 0이다. 그리고 상기 정보 심볼 열의 특정 위치에 존재하는 심볼 값이 2이면, 상기 2진수의 식별 정보 심볼 열의 해당 심볼 값에 설정될 사전에 약속된 값은 1이다.
하지만 정보 심볼 열이 4진수인 경우를 가정할 때, 정보 심볼 열의 특정 위치에 존재하는 심볼 값이 1이면, 2진수의 식별 정보 심볼 열의 해당 심볼 값에 설정될 사전에 약속된 값은 0이다. 상기 정보 심볼 열의 특정 위치에 존재하는 심볼 값이 2이면, 상기 2진수의 식별 정보 심볼 열의 해당 심볼 값에 설정될 사전에 약속된 값은 10이다. 그리고 상기 정보 심볼 열의 특정 위치에 존재하는 심볼 값이 3이면, 상기 2진수의 식별 정보 심볼 열의 해당 심볼 값에 설정될 사전에 약속된 값은 11이다.
먼저 도 12를 참조하면, 3진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000154
의 첫 번째 심볼 값을 읽는다. 이때 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000155
의 첫 번째 심볼 값이 0이므로 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000156
의 첫 번째 심볼 값은 0으로 설정된다. 이 경우 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000157
는 생성되지 않는다.
그 후 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000158
의 두 번째 심볼 값을 읽는다. 이때 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000159
의 두 번째 심볼 값이 0이 아니므로 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000160
의 두 번째 심볼 값은 1로 설정된다. 이 경우 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000161
의 두 번째 심볼 값이 1이었으므로 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000162
의 첫 번째 심볼 값은 0으로 설정된다.
상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000163
의 세 번째 내지 여섯 번째 심볼 값은 모두 0이므로, 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000164
의 세 번째 내지 여섯 번째 심볼 값은 모두 0으로 설정된다. 이 경우 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000165
는 생성되지 않는다.
마지막으로 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000166
의 일곱 번째 심볼 값을 읽는다. 이때 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000167
의 일곱 번째 심볼 값이 0이 아니므로 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000168
의 일곱 번째 심볼 값은 1로 설정된다. 이 경우 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000169
의 일곱 번째 심볼 값이 2이었으므로 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000170
의 두 번째 심볼 값은 1로 설정된다.
따라서 최종적으로 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000171
로 “0100001”이 생성되고, 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000172
로는 “01”이 생성된다.
다음으로 도 13을 참조하면, 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000173
의 첫 번째 심볼 값을 읽는다. 이때 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000174
의 첫 번째 심볼 값이 0이 아니므로 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000175
의 첫 번째 심볼 값은 1로 설정된다. 이 경우 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000176
의 첫 번째 심볼 값이 3이었으므로 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000177
의 첫 번째 심볼 값은 11로 설정된다.
그 후 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000178
의 두 번째 심볼 값을 읽는다. 이때 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000179
의 두 번째 심볼 값이 0이 아니므로 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000180
의 두 번째 심볼 값은 1로 설정된다. 이 경우 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000181
의 두 번째 심볼 값이 1이었으므로 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000182
의 두 번째 심볼 값은 0으로 설정된다.
상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000183
의 세 번째 내지 여섯 번째 심볼 값은 모두 0이므로, 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000184
의 세 번째 내지 여섯 번째 심볼 값은 모두 0으로 설정된다. 이 경우 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000185
는 생성되지 않는다.
마지막으로 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000186
의 일곱 번째 심볼 값을 읽는다. 이때 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000187
의 일곱 번째 심볼 값이 0이 아니므로 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000188
의 일곱 번째 심볼 값은 1로 설정된다. 이 경우 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000189
의 일곱 번째 심볼 값이 2이었으므로 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000190
의 두 번째 심볼 값은 10으로 설정된다.
따라서 최종적으로 2진수의 데이터 정보 심볼 열로 “1100001”이 생성되고, 2진수의 식별 정보 심볼 열로는 “11010”이 생성된다.
상술한 바에 의해 상기 이진화부(1130)에 의해 생성된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000191
는 제1부호화부(1140)로 전달되며, 상기 이진화부(1130)에 의해 생성된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000192
는 제2부호화부(1150)로 전달된다.
상기 제1부호화부(1140)는 상기 이진화부(1130)로부터 입력되는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000193
을 입력으로 하고, 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000194
을 소정의 코딩 기법에 의해 압축하여 출력한다.
그리고 상기 제2부호화부(1150)는 상기 이진화부(1130)로부터 입력되는 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000195
을 입력으로 하고, 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000196
을 소정의 코딩 기법에 의해 압축하여 출력한다.
도 14는 본 발명의 제2실시 예에 따른 압축 장치를 구성하는 부호화부의 구성을 보이고 있다. 도 14에서 보이고 있는 부호화부는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000197
를 입력으로 하는 제1부호화부(1140)를 가정하고 있다. 하지만 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000198
를 입력으로 하는 제2부호화부(1150)에 대해서도 도 14의 구성이 동일하게 적용될 수 있음은 자명하다.
도 14를 참조하면, 진수 변환기(1410)는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000199
를 입력으로 하고, 상기 입력된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000200
의 진수를 변환한다. 즉 상기 입력되는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000201
는 2진수이므로, 상기 진수 변환기(1410)는 3진수 또는 그 이상의 진수를 가지는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000202
를 출력한다.
도 15와 도 16은 본 발명의 제2실시 예에 따른 압축 장치를 구성하는 부호화부 내의 진수 변환기에서 진수를 변환하는 예를 보이고 있다. 즉 도 15에서는 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000203
을 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000204
로 변환하는 예를 보이고 있으며, 도 16에서는 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000205
을 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000206
로 변환하는 예를 보이고 있다.
먼저 도 15를 참조하면, 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000207
을 구성하는 심볼들을 순차적으로 두 심볼씩 묶음을 구성한다. 그리고 각 묶음에 해당하는 심볼 값들을 4진수의 심볼로 변환한다.
즉 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000208
의 첫 번째와 두 번째 심볼의 묶음은 10이므로, 생성하고자 하는 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000209
의 첫 번째 심볼 값을 2로 설정한다.
그리고 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000210
의 세 번째와 네 번째 심볼의 묶음, 다섯 번째와 여섯 번째 심볼의 묶음은 00이므로, 상기 생성하고자 하는 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000211
의 두 번째와 세 번째 심볼 값을 0으로 설정한다.
상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000212
의 일곱 번째와 여덟 번째 심볼의 묶음은 01이므로, 상기 생성하고자 하는 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000213
의 네 번째 심볼 값을 1로 설정한다.
상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000214
의 아홉 번째와 열 번째 심볼의 묶음은 11이므로, 상기 생성하고자 하는 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000215
의 다섯 번째 심볼 값을 3으로 설정한다.
상술한 바에 의해 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000216
에 대한 진수 변환의 결과로써, “20013012”의 4진수의 데이터 정보 심볼 열 을 생성할 수 있다.
다음으로 도 16을 참조하면, 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000218
을 구성하는 심볼들을 순차적으로 세 심볼씩 묶음을 구성한다. 그리고 각 묶음에 해당하는 심볼 값들을 8진수의 심볼로 변환한다.
즉 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000219
의 첫 번째 내지 세 번째 심볼의 묶음과 열 번째 내지 열 두 번째 심볼의 묶음은 100이므로, 생성하고자 하는 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000220
의 첫 번째 심볼 값과 네 번째 심볼 값을 4로 설정한다.
그리고 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000221
의 네 번째 내지 여섯 번째 심볼의 묶음과 열 여섯 번째 내지 열 여덟 번째 심볼의 묶음은 000이므로, 상기 생성하고자 하는 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000222
의 두 번째 심볼 값과 여섯 번째 심볼 값을 0으로 설정한다.
상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000223
의 일곱 번째 내지 아홉 번째 심볼의 묶음과 열 세 번째 내지 열 다섯 번째 심볼의 묶음은 011이므로, 상기 생성하고자 하는 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000224
의 세 번째 심볼 값과 다섯 번째 심볼 값을 3으로 설정한다.
상술한 바에 의해 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000225
에 대한 진수 변환의 결과로써, “403430”의 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000226
을 생성할 수 있다.
앞에서 살펴본 바에 의해 4진수 또는 8진수로 변환된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000227
은 엔트로피 부호기(1420)로 입력된다. 상기 엔트로피 부호기(1420)는 4진수 또는 8진수로 변환된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000228
을 입력으로 하고, 상기 4진수 또는 8진수로 변환된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000229
을 엔트로피 코딩 (Entropy coding) 기법에 의해 압축하여 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000230
를 출력한다.
상기 제1부호화부(1140)로부터 출력되는 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000231
와 상기 제2부호화부(1150)로부터 출력되는 압축된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000232
는 정보 패킹부(1160)로 전달된다.
상기 정보 패킷부(1160)는 상기 제1부호화부(1140)로부터 입력되는 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000233
와 상기 제2부호화부(1150)로부터 입력되는 압축된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000234
을 패킹하여 정보 패킷 Z를 생성한다.
도 17은 본 발명의 제2실시 예에 따른 압축 장치에서 데이터 압축을 위한 제어 흐름을 보이고 있다.
도 17을 참조하면, 압축 장치는 1710단계에서 2진 정보 비트 열을 외부로부터 입력 받는다. 그 후 상기 압축 장치는 1712단계에서 상기 입력된 2진 정보 비트 열로부터 피 은닉 정보 열을 추출하며, 1714단계에서는 상기 피 은닉 정보 열이 추출되고 남은 2진 정보 비트 열로부터 은닉 정보 열을 추출한다. 이때 정보 은닉 횟수를 카운트하기 위한 카운트 값 n은 0으로 설정된 상태이다.
상기 압축 장치는 1716단계에서 상기 추출한 피 은닉 정보 열에 상기 추출한 은닉 정보 열을 숨김으로써, m진 정보 심볼 열을 생성한다. 이때 m은 상기 생성된 정보 심볼 열의 진수를 의미하는 상수로써, 은닉 횟수 카운트 값인 n에 2를 더한 값에 해당한다. 즉 정보 은닉이 한번 수행될 때마다 이에 상응하여 생성되는 정보 심볼 열의 진수를 1씩 증가한다.
상기 압축 장치는 1718단계에서 앞서 생성된 정보 심볼 열의 진수가 원하는 진수인가를 판단한다. 즉 현재까지 정보 은닉이 1회 이루어졌으므로 상기 압축 장치는 최종적으로 얻고자 하는 정보 심볼 열의 차수가 3인 경우에는 원하는 진수라고 판단할 것이다. 하지만 그 이상의 차수를 가지는 정보 심볼 열을 얻고자 하였다면, 상기 압축 장치는 1720단계로 진행하여 상기 n은 1증가 시킨 후 상기 1714단계로 리턴한다.
상기 1714단계로 리턴될 시 상기 압축 장치는 앞서 추축된 피 은닉 정보 열과 은닉 정보 열을 제외한 나머지 2진 정보 비트 열로부터 새로운 은닉 정보 열을 추출한다. 그리고 상기 새로이 추축된 은닉 정보를 앞서 생성한 정보 심볼 열에 추가로 은닉함으로써, 진수가 1증가된 정보 심볼 열을 생성한다.
상기 압축 장치는 상기 1718단계에서 원하는 진수의 정보 심볼 열을 획득하였다고 판단할 시, 1722단계로 진행하여 상기 획득한 정보 심볼 열로부터 2진수의 데이터 정보 심볼 열과 식별 정보 심볼 열을 생성한다. 그리고 상기 압축 장치는 1724단계에서 상기 2진수의 데이터 정보 심볼 열과 식별 정보 심볼 열 각각에 대한 부호화를 수행한다. 이때 부호화는 엔트로피 압축 기법에 의해 이루어질 수 있다. 상기 엔트로피 압축 기법은 앞에서도 밝힌 바와 같이 허프만 코드 또는 산술 부호 코더 중 어떠한 것을 사용하여도 좋다.
상기 압축 장치는 1726단계에서 부호화를 통해 압축된 정보 심볼 열에 대한 패킹을 통해 정보 패킷을 생성한다.
B. 복원 기술
후술될 설명에서는 m진의 정보 은닉 심볼 열을 구성하는 정보 은닉 심볼들 중 미리 결정된 값을 가지는 정보 은닉 심볼로부터 피 은닉 심볼과 은닉 심볼을 복원하는 기술에 대한 다양한 실시 예를 구체적으로 설명한다. 여기서 상기 미리 결정된 값은 상기 정보 은닉 심볼이 가질 수 있는 최소 값과 최고 값이 될 수 있다.
B-1. 제1실시 예 (복원 기술)
도 18은 본 발명의 제1실시 예에 따른 복원장치의 구성을 보이고 있다.
도 18을 참조하면, 복호화부(1810)는 복원할 정보 패킷 Z를 입력으로 하고, 상기 복원할 정보 패킷 Z를 소정의 디코딩 기법에 의해 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000235
을 출력한다.
상기 복호화부(1810)에는 일 예로 엔트로피 코딩 (Entropy coding) 기법에 상응하는 엔트로피 디코딩 기법이 적용될 수 있다.
제1스위치 (S/W #1)는 상기 복호화부(1810)로부터 출력되는 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000236
을 정보 복원부(1820)로 전달하거나 상기 정보 복원부(1820)로부터 은닉된 정보가 추출된 정보 심볼 열
Figure PCTKR2010000956-appb-I000237
을 상기 정보 복원부(1820)로 피드-백하기 위한 동작을 수행한다.
즉 상기 제1스위치 (S/W #1)는 상기 복호화부(1810)로부터 출력되는 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000238
을 상기 정보 복원부(1820)의 입력으로 전달한 후 상기 정보 복원부(1820)로부터 출력되는 은닉된 정보가 추출된 정보 심볼 열
Figure PCTKR2010000956-appb-I000239
을 상기 정보 복원부(1820)의 입력으로 전달하기 위한 경로를 형성한다.
이때 상기 복호화부(1810)로부터 전달되는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000240
에서 n은 정보 은닉이 이루어진 횟수를 의미한다. 그리고 m은 정보 은닉을 통해 최종적으로 획득된 정보 심볼 열의 차수로써, n+2로 정의할 수 있다. 예컨대 정보 은닉이 1회 (n=1) 이루어졌다면, m은 3이 된다.
제2스위치 (S/W #2)는 상기 정보 복원부(1820)로부터 출력되는 은닉된 정보가 추출된 정보 심볼 열
Figure PCTKR2010000956-appb-I000241
을 비트 결합부(1830)의 입력으로 전달하거나 상기 제1스위치 (S/W #1)를 통해 상기 정보 복원부(1820)의 입력으로 전달하기 위한 동작을 수행한다.
본 발명의 실시 예에 따른 정보 복원을 위한 정보 은닉 횟수와 관련한 상기 제1스위치 (S/W #1)와 상기 제2스위치 (S/W #2)의 동작은 하기 <표 2>와 같이 정리할 수 있다.
표 2
Figure PCTKR2010000956-appb-T000002
상기 <표 2>에서 S/W #1의 off 상태는 복호화부(1810)의 출력을 정보 복원부(1820)로 입력하기 위한 경로가 형성된 상태이며, S/W #1의 on 상태는 정보 복원부(1820)의 출력을 상기 정보 복원부(1820)로 입력하기 위한 경로가 형성된 상태이다. 그리고 상기 <표 2>에서 S/W #2의 off 상태는 정보 복원부(1820)의 출력을 비트 결합부(1830)로 입력하기 위한 경로가 형성된 상태이며, S/W #2의 on 상태는 정보 복원부(1820)의 출력을 상기 S/W #1로 전달하기 위한 경로가 형성된 상태이다.
하지만 상기 S/W #1와 상기 S/W #2의 동작이 상술한 바에만 한정되어 해석되어서는 안될 것이다. 즉 상기 S/W #1와 상기 S/W #2의 동작이 상술한 바와 반대의 동작을 수행하더라도 본 발명의 실시 예를 구현하는데 어려움이 없음은 당업자에게 자명한 정도의 것이다.
한편 상기 S/W #1와 상기 S/W #2의 제어는 별도로 구비된 스위칭 제어부 또는 압축 장치를 구비하는 장비의 전반적인 동작을 제어하는 구성에 의해 이루어질 수 있다.
또한 상기 <표 2>에서 입력은 S/W #1을 통해 정보 복원부(1820)로 입력되는 정보 심볼 열을 의미하며, 상기 <표 2>에서 출력은 비트 결합부(1830)로 입력되는 피 은닉 정보 열과 은닉 정보 열을 의미한다.
상기 정보 복원부(1820)는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000242
을 입력으로 하고, 상기 입력되는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000243
로부터 피 은닉 정보 열로
Figure PCTKR2010000956-appb-I000244
또는
Figure PCTKR2010000956-appb-I000245
과 은닉 정보 열로
Figure PCTKR2010000956-appb-I000246
또는
Figure PCTKR2010000956-appb-I000247
을 복원한다. 상기 정보 복원부(1820)에 의한 정보 복원은 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000248
에 대해 n이 0이 될 때까지 반복적으로 수행된다. 즉 상기 정보 복원부(1820)에 의해 복원된 피 은닉 정보 열의 진수가 2진수가 될 때까지 반복적으로 이루어진다. 이때 상기 n은 정보 복원이 한번 이루어질 때마다 1씩 감소한다.
상기 정보 복원부(1820)는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000249
로부터 하나의 입력인 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000250
과 적어도 하나의 은닉 정보 열로
Figure PCTKR2010000956-appb-I000251
또는
Figure PCTKR2010000956-appb-I000252
을 복원하기 위한 동작을 수행한다.
도 20 내지 도 26은 본 발명의 실시 예로 제안하는 복원 기술에 따라 정보를 복원하기 위한 예들을 보이고 있다. 즉 도 20 내지 22에서는 2진수의 정보 심볼 열 L로부터 2진수의 피 은닉 정보 열 U와 은닉 정보 열 V를 복원하기 위한 예를 보이고 있다. 그리고 도 23과 도 25에서는 4진수의 정보 심볼 열로부터 3진수의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000253
과 2진수의 은닉 정보 열
Figure PCTKR2010000956-appb-I000254
을 복원하기 위한 예를 보이고 있으며, 도 24와 도 26에서는 3진수의 정보 심볼 열로부터 2진수의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000255
와 2진수의 은닉 정보 열
Figure PCTKR2010000956-appb-I000256
을 복원하기 위한 예를 보이고 있다.
도 20 내지 도 22에 의하면, 정보 심볼 열 L에서 심볼 값이 0인 경우와 심볼 값이 1이면서 심볼 식별 정보 M이 1인 경우에 정보 은닉이 이루어졌다고 가정할 수 있다.
그리고 도 23 내지 도 26에 의하면, 정보 은닉은 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000257
에서 심볼 값이 0인 경우와 심볼 값이 최고 차수에 상응하는 값인 경우에 이루어졌다고 가정할 수 있다. 즉 도 23과 도 25에서는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000258
에서 심볼 값이 0인 경우와 심볼 값이 3인 경우에 정보 은닉이 이루어졌다고 볼 수 있다. 그리고 도 24와 도 26에서는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000259
에서 심볼 값이 0인 경우와 심볼 값이 2인 경우에 정보 은닉이 이루어졌다고 볼 수 있다.
그 외의 심볼 값을 가지는 심볼에 대해서는 정보 은닉이 이루어지지 않았다고 판단되므로, 해당 심볼 값 그대로를 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000260
의 해당 심볼 값으로 복원한다. 즉 도 23과 도 25에서는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000261
에서 심볼 값이 1인 경우와 심볼 값이 2인 경우에 정보 은닉이 이루어지지 않았다고 볼 수 있다. 그리고 도 24와 도 26에서는 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000262
에서 심볼 값이 1인 경우에 정보 은닉이 이루어지지 않았다고 볼 수 있다.
먼저 도 20 내지 도 22를 참조하면, 정보 심볼 열 L에서 심볼 값이 0인 첫 번째와 두 번째 및 다섯 번째 내지 아홉 번째 심볼에 대해서는 해당 피 은닉 심볼과 은닉 심볼의 값을 0으로 복원한다. 하지만 정보 심볼 열 L의 마지막 심볼의 경우는 그 값이 0이지만 플레그 정보 F가 1이므로, 은닉 정보 열 V의 열 번째 심볼 값만을 0으로 복원한다. 만약 도 21에서와 같이 플레그 정보 F가 0인 경우에는 해당 피 은닉 심볼과 은닉 심볼의 값을 모두 0으로 복원한다. 다른 예로 도 22에서와 같이 플레그 정보 F가 1인 경우에는 정보 심볼 열 L의 마지막 심볼의 값이 1이라 하더라도 은닉 정보 열 V의 마지막 심볼 값만을 1로 복원한다.
한편 정보 심볼 열 L에서 심볼 값이 1인 세 번째와 네 번째 및 열 번째 심볼에 대해서는 심볼 식별 정보 M의 값을 고려하여 복원한다. 예컨대 정보 심볼 열 L에서 세 번째 심볼과 같이 심볼 값이 1이고 심볼 식별 정보 M의 값이 0인 경우에는 해당 피 은닉 심볼 (피 은닉 정보 열에서 세 번째 심볼)만을 1로 복원한다. 하지만 정보 심볼 열 L에서 네 번째와 열 번째 심볼과 같이 심볼 값이 1이고 심볼 식별 정보 M의 값이 1인 경우에는 해당 피 은닉 심볼 (피 은닉 정보 열에서 네 번째와 열 번째 심볼)을 0으로 복원하고, 해당 은닉 심볼 (은닉 정보 열에서 세 번째와 아홉 번째 심볼)을 1로 복원한다.
도 23을 참조하면, 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000263
의 최 상위 심볼에서 최 하위 심볼까지 순차적으로 해당 심볼 값을 읽는다. 이때 읽은 심볼 값이 0이면 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000264
의 해당 심볼 값과 은닉 정보 열
Figure PCTKR2010000956-appb-I000265
의 해당 심볼 값을 0으로 설정한다. 그리고 읽은 심볼 값이 3이면 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000266
의 해당 심볼 값을 0으로 설정하고, 은닉 정보 열
Figure PCTKR2010000956-appb-I000267
의 해당 심볼 값을 1로 설정한다. 하지만 읽은 심볼 값이 1이면 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000268
의 해당 심볼 값만을 1로 설정하고, 읽은 심볼 값이 2이면 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000269
의 해당 심볼 값만을 2로 설정한다.
상기 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000270
의 첫 번째 심볼 값이 3이므로, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000271
의 첫 번째 심볼 값을 0으로 설정하고 은닉 정보 열
Figure PCTKR2010000956-appb-I000272
의 첫 번째 심볼 값을 1로 설정한다.
상기 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000273
의 두 번째 심볼 값이 1이므로, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000274
의 두 번째 심볼 값만을 1로 설정한다. 상기 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000275
의 세 번째 내지 여섯 번째 심볼 값이 모두 0이므로, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000276
의 세 번째 내지 여섯 번째 심볼 값을 0으로 설정하고 은닉 정보 열
Figure PCTKR2010000956-appb-I000277
의 두 번째 내지 다섯 번째 심볼 값을 0으로 설정한다.
마지막으로 상기 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000278
의 일곱 번째 심볼 값이 2이므로, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000279
의 일곱 번째 심볼 값만을 2로 설정한다.
상술한 예에서 확인할 수 있는 바와 같이 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000280
의 심볼 값이 0인 경우에는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000281
의 심볼 값 0에 이에 상응하는 은닉 정보 열
Figure PCTKR2010000956-appb-I000282
의 심볼 값 0이 은닉되어 있음을 확인할 수 있다. 그리고 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000283
의 심볼 값이 3인 경우에는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000284
의 심볼 값 0에 이에 상응하는 은닉 정보 열
Figure PCTKR2010000956-appb-I000285
의 심볼 값 1이 은닉되어 있음을 확인할 수 있다. 즉 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000286
의 심볼 값이 0인 경우에 은닉 정보 열
Figure PCTKR2010000956-appb-I000287
의 심볼 값이 은닉되며, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000288
의 심볼 값이 0이 아닌 경우에는 해당 심볼 값이 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000289
에 그대로 유지됨을 알 수 있다.
따라서 상술한 바에 의해 복원된 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000290
을 구성하는 심볼들의 차수는 3진수가 된다.
다음으로 도 24를 참조하면, 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000291
의 최 상위 심볼에서 최 하위 심볼까지 순차적으로 해당 심볼 값을 읽는다. 이때 읽은 심볼 값이 0이면 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000292
의 해당 심볼 값과 은닉 정보 열
Figure PCTKR2010000956-appb-I000293
의 해당 심볼 값을 0으로 설정한다. 그리고 읽은 심볼 값이 2이면 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000294
의 해당 심볼 값을 0으로 설정하고, 은닉 정보 열
Figure PCTKR2010000956-appb-I000295
의 해당 심볼 값을 1로 설정한다. 하지만 읽은 심볼 값이 1이면 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000296
의 해당 심볼 값만을 1로 설정한다.
상기 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000297
의 첫 번째 심볼 값과 세 번째 내지 여섯 번째 심볼 값이 0이므로, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000298
의 첫 번째 심볼 값과 세 번째 내지 여섯 번째 심볼 값을 0으로 설정하고 은닉 정보 열
Figure PCTKR2010000956-appb-I000299
의 첫 번째 심볼 값과 두 번째 내지 다섯 번째 심볼 값을 0으로 설정한다. 그리고 상기 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000300
의 두 번째 심볼 값이 1이므로, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000301
의 두 번째 심볼 값만을 1로 설정한다.
마지막으로 상기 정보 은닉이 이루어진 정보 심볼 열 의 일곱 번째 심볼 값이 2이므로, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000303
의 일곱 번째 심볼 값을 0으로 설정하고 은닉 정보 열
Figure PCTKR2010000956-appb-I000304
의 여섯 번째 심볼 값을 1로 설정한다.
상술한 예에서 확인할 수 있는 바와 같이 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000305
의 심볼 값이 0인 경우에는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000306
의 심볼 값 0에 이에 상응하는 은닉 정보 열
Figure PCTKR2010000956-appb-I000307
의 심볼 값 0이 은닉되어 있음을 확인할 수 있다. 즉 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000308
의 심볼 값이 0인 경우에 은닉 정보 열
Figure PCTKR2010000956-appb-I000309
의 심볼 값이 은닉되며, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000310
의 심볼 값이 0이 아닌 경우에는 해당 심볼 값이 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000311
에 그대로 유지됨을 알 수 있다.
따라서 상술한 바에 의해 복원된 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000312
을 구성하는 심볼들의 차수는 2진수가 된다.
한편 도 25와 도 26에서 보이고 있는 예는 앞에서 도 23와 도 24를 참조하여 설명한 바와 동일한 방식에 의해 정보 복원이 이루어짐에 따라 구체적인 설명은 생략하도록 한다. 단지 도 25와 도 26에서는 도 23과 도 24에서 사용된 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000313
과는 상이한 정보 은닉이 이루어진 정보 심볼 열
Figure PCTKR2010000956-appb-I000314
이 사용된다는 차이점만이 존재한다.
전술한 바에 의해 상기 정보 복원부(1820)로부터 출력되는 2진 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000315
과 적어도 하나의 은닉 정보 열
Figure PCTKR2010000956-appb-I000316
또는
Figure PCTKR2010000956-appb-I000317
,
Figure PCTKR2010000956-appb-I000318
은 상기 제2스위치 (S/W #2)를 통해 비트 결합부(1230)로 입력된다.
상기 비트 결합부(1830)는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000319
과 적어도 하나의 은닉 정보 열
Figure PCTKR2010000956-appb-I000320
또는
Figure PCTKR2010000956-appb-I000321
,
Figure PCTKR2010000956-appb-I000322
(n≥1)을 입력으로 하고, 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000323
과 적어도 하나의 은닉 정보 열
Figure PCTKR2010000956-appb-I000324
또는
Figure PCTKR2010000956-appb-I000325
,
Figure PCTKR2010000956-appb-I000326
(n≥1)을 결합하여 정보 비트 열 X를 출력한다.
도 27과 도 28은 본 발명의 실시 예에 따라 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000327
과 적어도 하나의 은닉 정보 열
Figure PCTKR2010000956-appb-I000328
또는
Figure PCTKR2010000956-appb-I000329
,
Figure PCTKR2010000956-appb-I000330
(n≥1)을 결합하여 2진수의 정보 비트 열을 생성하는 예들을 보이고 있다. 즉 도 27에서는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000331
과 적어도 하나의 은닉 정보 열
Figure PCTKR2010000956-appb-I000332
또는
Figure PCTKR2010000956-appb-I000333
,
Figure PCTKR2010000956-appb-I000334
(n≥1)을 연속하여 결합하는 예를 보이고 있으며, 도 28에서는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000335
과 적어도 하나의 은닉 정보 열
Figure PCTKR2010000956-appb-I000336
또는
Figure PCTKR2010000956-appb-I000337
,
Figure PCTKR2010000956-appb-I000338
(n≥1)을 병렬적으로 결합하는 예를 보이고 있다.
먼저 도 27을 참조하면, 입력되는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000339
를 정보 열 X의 최상위 비트 (MSB)로부터 소정 비트 수만큼의 비트들로 출력한다. 그리고 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000340
에 연속하여 입력되는 은닉 정보 열
Figure PCTKR2010000956-appb-I000341
을 출력하며, 그 외의 은닉 정보 열
Figure PCTKR2010000956-appb-I000342
이 입력되면 상기 은닉 정보 열
Figure PCTKR2010000956-appb-I000343
에 연속하여 출력한다.
한편 추가로 입력되는 은닉 정보 열이 존재하면 최종 출력된 은닉 정보 열에 연속하여 출력할 수 있다.
다음으로 도 28을 참조하면, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000344
및 은닉 정보 열
Figure PCTKR2010000956-appb-I000345
Figure PCTKR2010000956-appb-I000346
을 심볼 순서에 의해 결합한다. 하지만 결합을 위해 확인한 심볼 값이 1인 경우에는 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000347
로 돌아가서 다음 심볼부터의 결합을 수행한다.
즉 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000348
의 첫 번째 심볼 값이 0이므로, 2진 정보 비트 열 X의 첫 번째 비트 값은 0이 되며, 은닉 정보 열
Figure PCTKR2010000956-appb-I000349
의 첫 번째 심볼 값은 1이므로, 2진 정보 비트 열 X의 두 번째 비트 값은 1이 된다.
그 후 원칙 상으로는 은닉 정보 열
Figure PCTKR2010000956-appb-I000350
의 첫 번째 심볼 값인 0을 2진 정보 비트 열의 세 번째 비트 값으로 설정하여야 한다. 하지만 앞에서 은닉 정보 열
Figure PCTKR2010000956-appb-I000351
의 첫 번째 심볼 값이 1이었으므로 은닉 정보 열
Figure PCTKR2010000956-appb-I000352
의 첫 번째 심볼 값이 아닌 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000353
의 두 번째 심볼 값인 0을 2진 정보 비트 열 X의 세 번째 비트 값으로 설정한다.
그리고 2진 정보 비트 열 X의 네 번째 비트 값 내지 열 두 번째 비트 값까지는 기본 결합 원칙에 따라 0으로 설정된다. 하지만 2진 정보 비트 열 X의 열 세 번째 비트 값의 설정을 위해 확인한 은닉 정보 열
Figure PCTKR2010000956-appb-I000354
의 다섯 번째 심볼 값이 1이므로, 2진 정보 비트 열 X의 열 세 번째 비트 값은 1로 설정된다. 그 후 은닉 정보 열
Figure PCTKR2010000956-appb-I000355
의 네 번째 심볼 값이 아닌 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000356
의 여섯 번째 심볼 값인 1을 2진 정보 비트 열 X의 열 네 번째 비트 값으로 설정한다. 뿐만 아니라 상기 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000357
의 여섯 번째 심볼 값 또한 1이었으므로, 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000358
의 일곱 번째 심볼 값인 0을 2진 정보 비트 열 X의 열 다섯 번째 비트 값으로 설정한다.
도 28에서는 두 개의 은닉 정보 열을 가정하고 있으나 그 이상의 은닉 정보 열을 결합하고자 하는 경우에도 동일하게 적용될 수 있다. 또한 상기 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000359
와 최초의 은닉 정보 열
Figure PCTKR2010000956-appb-I000360
및 두 번째 은닉 정보 열
Figure PCTKR2010000956-appb-I000361
의 결합에 의해 생성할 2진 정보 비트 열의 총 비트의 수는 필요에 의해 사전에 결정할 수 있다. 단지 상기 총 비트 수를 결정함에 있어 최초의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000362
의 비트 수와 상기 입력되는 정보 열 X를 구성하는 비트의 값이 1인 비트의 분포 또는 비트 값이 0인 비트 수 등을 고려하는 것이 바람직할 것이다.
도 19는 본 발명의 제1실시 예에 따른 압축 장치에 대응한 복원 장치에서 데이터 복원을 위한 제어 흐름을 보이고 있다.
도 19를 참조하면, 복원 장치는 1910단계에서 외부로부터 입력되는 m진 정보 심볼 열에 대한 복호화를 수행한다. 이때 복호화는 엔트로피 압축 기법에 대응한 복원 기법에 의해 이루어질 수 있다. 상기 엔트로피 압축 기법은 앞에서도 밝힌 바와 같이 허프만 코드 또는 산술 부호 코더 중 어떠한 것을 사용하여도 좋다.
상기 복원 장치는 1912단계에서 앞서 복호된 m진 정보 심볼 열에 대한 복원을 수행한다. 즉 상기 m진 정보 심볼 열로부터 숨겨진 은닉 정보 열을 추출한다. 상기 복원 장치는 상기 은닉 정보 열의 추출로 인해 상기 m진 정보 심볼 열에 비해 진수가 1감소한 진수의 정보 심볼 열을 얻을 수 있다. 예컨대 정보 복원 전의 정보 심볼 열의 진수가 4였다면, 상기 정보 복원 후에 얻을 수 있는 정보 심볼 열 (또는 피 은닉 정보 열)의 차수는 3이 된다.
상기 복원 장치는 1914단계에서 추출한 은닉 정보 열을 출력하고, 1916단계에서 앞서 얻어진 피 은닉 정보 열, 즉 은닉 정보 열이 추출된 후의 정보 심볼 열의 진수가 원하는 진수인가를 판단한다. 즉 앞서 얻은 피 은닉 정보 열의 진수가 2진수인지를 판단한다.
만약 앞서 얻은 피 은닉 정보 열이 그 이상의 차수를 가진다면, 상기 복원 장치는 1918단계로 진행하여 n을 1 감소 시킨 후 상기 1912단계로 리턴한다.
상기 1912단계로 리턴될 시 상기 복원 장치는 앞서 얻은 피 은닉 정보 열로부터 새로운 은닉 정보 열을 추출하기 위한 정보 복원 동작을 수행한다. 그리고 상기 새로운 은닉 정보 열을 추출함으로써, 얻을 수 있는 피 은닉 정보 열의 진수는 1 감소하게 된다.
상술한 동작에 의해 원하는 진수의 피 은닉 정보 열에 대한 획득이 이루어졌다면, 상기 복원 장치는 1920단계에서 최종적으로 얻어진 2진수의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000363
을 추출한다.
그리고 상기 복원 장치는 1922단계에서 상기 추출된 피 은닉 정보 열과 적어도 하나의 은닉 정보 열을 결합하여 최종 2진 정보 비트 열을 생성한다.
B-2. 제2실시 예 (복원 기술)
도 29는 본 발명의 제2실시 예에 따른 압축 장치에 상응하는 복원 장치의 구성을 보이고 있다. 도 29에서 보이고 있는 복원 장치의 구성들 중 참조번호 2950, 2960과 제1 및 제2스위치는 도 18에서의 참조번호 1820, 1830과 제1 및 제2스위치와 동일한 동작을 수행한다. 그리고 도 29에서 참조번호 2920과 2930에 해당하는 제1 및 제2복호화부는 입력되는 데이터만이 상이할 뿐 도 18에서의 참조번호 1810에 해당하는 복호화부와 동일한 동작을 수행한다.
따라서 후술될 본 발명의 제2실시 예에 따른 동작 설명에서 해당 구성에 대한 구체적인 설명이 생략됨에 유념하여야 할 것이다.
도 29를 참조하면, 정보 디패킹부(2910)는 입력되는 정보 패킷 Z를 입력으로 하고, 상기 입력된 정보 패킷 Z를 디패킹하여 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000364
와 압축된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000365
을 출력한다. 상기 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000366
은 제1복호화부(2920)로 입력되며, 상기 압축된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000367
는 제2복호화부(2930)으로 입력된다.
상기 제1복호화부(2920)는 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000368
을 입력으로 하고, 상기 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000369
을 소정의 코딩 기법에 상응하는 디코딩 기법에 의해 복원하여 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000370
을 출력한다.
그리고 상기 제2복호화부(2930)는 압축된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000371
을 입력으로 하고, 상기 압축된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000372
을 소정의 코딩 기법에 상응하는 디코딩 기법에 의해 복원하여 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000373
을 출력한다.
도 30은 본 발명의 제2실시 예에 따른 복원 장치를 구성하는 복호화부의 구성을 보이고 있다. 도 30에서 보이고 있는 복호화부는 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000374
를 입력으로 하는 제1복호화부(2920)를 가정하고 있다. 하지만 압축된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000375
를 입력으로 하는 제2복호화부(2930)에 대해서도 도 30의 구성이 동일하게 적용될 수 있음은 자명하다.
도 30을 참조하면, 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000376
은 엔트로피 복호기(3010)로 입력된다. 상기 엔트로피 복호기(3010)는 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000377
을 입력으로 하고, 상기 압축된 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000378
을 엔트로피 코딩 (Entropy coding) 기법에 상응하는 디코딩 기법에 의해 4진수 또는 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000379
로 복원된다. 상기 엔트로피 복호기(3010)에 의해 복원된 4진수 또는 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000380
은 진수 변환기(3020)로 전달된다.
상기 진수 변환기(3020)는 4진수 또는 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000381
을 입력으로 하고, 상기 입력된 4진수 또는 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000382
을 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000383
로 변환한다. 즉 상기 입력되는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000384
는 3진수 또는 그 이상의 진수를 가지므로, 상기 진수 변환기(3020)는 2진수를 가지는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000385
를 출력한다.
도 31과 도 32는 본 발명의 제2실시 예에 따른 복원 장치를 구성하는 복호화부 내의 진수 변환기에서 진수를 변환하는 예를 보이고 있다. 즉 도 31에서는 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000386
을 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000387
로 변환하는 예를 보이고 있으며, 도 32에서는 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000388
을 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000389
로 변환하는 예를 보이고 있다.
먼저 도 31을 참조하면, 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000390
을 구성하는 4진수 심볼들을 순차적으로 선택하고, 순차적으로 선택되는 4진수의 심볼들 각각을 2진수로 변환한다. 다시 말해 하나의 4진수 심볼을 두 개의 심볼 묶음으로 구성되는 2진수의 심볼들로 변환한다.
이를 보다 구체적으로 설명하면 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000391
의 첫 번째 심볼 값이 2이므로, 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000392
의 첫 번째와 두 번째 심볼을 10으로 설정한다.
그리고 상기 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000393
의 두 번째와 세 번째 심볼 값이 0이므로, 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000394
의 세 번째와 네 번째 심볼 및 다섯 번째와 여섯 번째 심볼을 00으로 설정한다.
상기 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000395
의 네 번째 심볼 값이 1이므로, 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000396
의 일곱 번째와 여덟 번째 심볼을 01로 설정한다. 또한 상기 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000397
의 다섯 번째 심볼 값이 3이므로, 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000398
의 아홉 번째와 열 번째 심볼을 11로 설정한다.
상술한 바에 의해 상기 4진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000399
에 대한 진수 변환의 결과로써, “1000000111000110”인 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000400
을 생성할 수 있다.
다음으로 도 32를 참조하면, 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000401
을 구성하는 8진수 심볼들을 순차적으로 선택하고, 순차적으로 선택되는 8진수의 심볼들 각각을 2진수로 변환한다. 다시 말해 하나의 8진수 심볼을 세 개의 심볼 묶음으로 구성되는 2진수의 심볼들로 변환한다.
이를 보다 구체적으로 설명하면 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000402
의 첫 번째 심볼 값과 네 번째 심볼 값이 4이므로, 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000403
의 첫 번째 내지 세 번째 심볼 및 열 번째 내지 열 세 번째 심볼을 100으로 설정한다.
그리고 상기 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000404
의 두 번째 심볼 값과 여섯 번째 심볼 값이 0이므로, 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000405
의 네 번째 내지 여섯 번째 심볼 및 열 여섯 번째 내지 열 여덟 번째 심볼을 000으로 설정한다.
상기 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000406
의 세 번째 심볼 값 및 다섯 번째 심볼 값이 3이므로, 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000407
의 일곱 번째 내지 아홉 번째 심볼 및 열 세 번째 내지 열 다섯 번째 심볼을 011로 설정한다.
상술한 바에 의해 상기 8진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000408
에 대한 진수 변환의 결과로써, “100000011100011000”인 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000409
을 생성할 수 있다.
상술한 바에 의해 제1복호화부(2920)에 의해 복호화가 이루어진 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000410
과 제2복호화부(2930)에 의해 복호화가 이루어진 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000411
은 m진화부(2940)로 입력된다.
여기서 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000412
은 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000413
의 각 심볼이 0인지 아닌지를 구분하기 위한 2진 정보 심볼 열이다. 그리고 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000414
은 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000415
에 의해 특정 심볼이 0이 아닌 경우 해당 심볼의 값을 식별할 수 있도록 하는 정보를 가지는 2진 정보 심볼 열이다.
상기 m진화부(2940)는 상기 제1복호화부(2920)와 상기 제2복호화부(2930)으로부터 입력되는 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000416
과 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000417
을 이용한 m진화를 통해 m진 정보 심볼 열
Figure PCTKR2010000956-appb-I000418
을 출력한다.
도 33과 도 34는 본 발명의 제2실시 예에 따른 복원 장치에서 m진화 동작의 예를 보이고 있다. 즉 도 33에서는 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000419
과 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000420
로부터 3진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000421
을 생성하는 예를 보이고 있으며, 도 34에서는 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000422
과 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000423
로부터 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000424
을 생성하는 예를 보이고 있다.
도 33과 도 34에서 보이고 있는 m진화 동작은 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000425
의 특정 위치에 존재하는 심볼 값이 0이면 m진의 정보 심볼 열의 해당 심볼 값을 0으로 설정한다. 하지만 상기 2진수의 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000426
의 특정 위치에 존재하는 심볼 값이 1이면, 상기 심볼 값이 1인 심볼에 상응하는 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000427
의 심볼의 값을 확인한다. 그리고 상기 확인한 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000428
의 심볼 값을 고려하여 m진의 정보 심볼 열의 해당 심볼 값을 설정한다.
여기서 상기 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000429
의 심볼 값을 고려하여 m진수의 정보 심볼 열의 해당 심볼 값에 설정할 심볼 값은 사전에 약속된 값이다.
일 예로 m이 3인 경우 확인한 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000430
의 심볼 값이 0이면 3진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000431
의 해당 심볼 값을 1으로 설정한다. 하지만 상기 확인한 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000432
의 심볼 값이 1이면 3진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000433
의 해당 심볼 값을 2로 설정한다.
즉 m이 2인 경우는 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000434
의 심볼 값이 0일 경우 3진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000435
의 해당 심볼 값을 1로 설정하고, 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000436
의 심볼 값이 1일 경우 3진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000437
의 해당 심볼 값을 2로 설정할 것을 사전에 약속한 경우에 해당한다.
하지만 m이 4인 경우를 가정할 때, 확인한 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000438
의 심볼 값이 0이면 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000439
의 해당 심볼 값을 1로 설정한다. 하지만 상기 확인한 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000440
의 심볼 값이 10이면 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000441
의 해당 심볼 값을 2로 설정하며, 상기 확인한 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000442
의 심볼 값이 11이면 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000443
의 해당 심볼 값을 3으로 설정한다.
즉 m이 4인 경우는 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000444
의 심볼 값이 0일 경우 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000445
의 해당 심볼 값을 1로 설정하고, 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000446
의 심볼 값이 10일 경우 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000447
의 해당 심볼 값을 2로 설정하며, 2진수의 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000448
의 심볼 값이 11일 경우 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000449
의 해당 심볼 값을 3으로 설정할 것을 사전에 약속한 경우에 해당한다.
먼저 도 33을 참조하면, 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000450
의 첫 번째 심볼 값을 읽는다. 이때 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000451
의 첫 번째 심볼 값이 0이므로 3진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000452
의 첫 번째 심볼 값은 0으로 설정된다. 이 경우 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000453
에 사용할 심볼이 존재하지 않는다.
그 후 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000454
의 두 번째 심볼 값을 읽는다. 이때 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000455
의 두 번째 심볼 값이 0이 아니므로 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000456
의 첫 번째 심볼 값을 확인한다. 여기서 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000457
의 첫 번째 심볼 값을 확인하는 이유는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000458
로부터 처음으로 심볼 값이 1인 경우가 발생하였기 때문이다. 상기 확인된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000459
의 첫 번째 심볼 값은 0이므로, 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000460
의 두 번째 심볼 값은 1로 설정된다.
상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000461
의 세 번째 내지 여섯 번째 심볼 값은 모두 0 이므로, 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000462
의 세 번째 내지 여섯 번째 심볼 값은 모두 0으로 설정된다. 이 경우 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000463
에 사용할 심볼이 존재하지 않는다.
마지막으로 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000464
의 일곱 번째 심볼 값을 읽는다. 이때 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000465
의 일곱 번째 심볼 값이 0이 아니므로 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000466
의 두 번째 심볼 값을 확인한다. 여기서 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000467
의 두 번째 심볼 값을 확인하는 이유는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000468
로부터 두 번째로 심볼 값이 1인 경우가 발생하였기 때문이다. 상기 확인된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000469
의 첫 번째 심볼 값은 1이므로, 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000470
의 일곱 번째 심볼 값은 2로 설정된다.
따라서 최종적으로 생성되는 3진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000471
로는 “0100002”가 생성된다.
다음으로 도 34를 참조하면, 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000472
의 첫 번째 심볼 값을 읽는다. 이때 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000473
의 첫 번째 심볼 값이 0이 아니므로 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000474
의 첫 번째 심볼 값을 확인한다. 여기서 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000475
의 첫 번째 심볼 값을 확인하는 이유는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000476
로부터 처음으로 심볼 값이 1인 경우가 발생하였기 때문이다. 상기 확인된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000477
의 첫 번째 심볼 값은 11이므로, 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000478
의 첫 번째 심볼 값은 3으로 설정된다.
상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000479
의 두 번째 심볼 값을 읽는다. 이때 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000480
의 두 번째 심볼 값이 0이 아니므로 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000481
의 두 번째 심볼 값을 확인한다. 여기서 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000482
의 두 번째 심볼 값을 확인하는 이유는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000483
로부터 두 번째로 심볼 값이 1인 경우가 발생하였기 때문이다. 상기 확인된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000484
의 두 번째 심볼 값은 0이므로, 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000485
의 두 번째 심볼 값은 1로 설정된다.
상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000486
의 세 번째 내지 여섯 번째 심볼 값은 모두 0 이므로, 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000487
의 세 번째 내지 여섯 번째 심볼 값은 모두 0으로 설정된다. 이 경우 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000488
에 사용할 심볼이 존재하지 않는다.
마지막으로 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000489
의 일곱 번째 심볼 값을 읽는다. 이때 상기 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000490
의 일곱 번째 심볼 값이 0이 아니므로 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000491
의 세 번째 심볼 값을 확인한다. 여기서 상기 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000492
의 세 번째 심볼 값을 확인하는 이유는 데이터 정보 심볼 열
Figure PCTKR2010000956-appb-I000493
로부터 세 번째로 심볼 값이 1인 경우가 발생하였기 때문이다. 상기 확인된 식별 정보 심볼 열
Figure PCTKR2010000956-appb-I000494
의 세 번째 심볼 값은 10이므로, 상기 정보 심볼 열
Figure PCTKR2010000956-appb-I000495
의 일곱 번째 심볼 값은 2로 설정된다.
따라서 최종적으로 생성되는 4진수의 정보 심볼 열
Figure PCTKR2010000956-appb-I000496
로는 “3100002”가 생성된다.
상기 m진화부(2940)에 의해 생성된 m진수의 정보 심볼 열은 제1스위치 (S/W #1)을 통해 정보 복원부(2950)로 전달된다. 그 후의 구성에 의한 동작은 본 발명의 제1실시 예에 따른 복원 장치에서의 동작과 동일함에 따라 구체적인 설명은 생략한다.
도 35는 본 발명의 제2실시 예에 따른 압축 장치에 상응하는 복원 장치에서 데이터 복원을 위한 제어 흐름을 보이고 있다.
도 35를 참조하면, 복원 장치는 3510단계에서 외부로부터 입력되는 정보 패킷을 디패킹하여 데이터 정보 심볼 열과 식별 정보 심볼 열을 출력한다. 그리고 상기 복원 장치는 3512단계에서 상기 데이터 정보 심볼 열과 식별 정보 심볼 열 각각에 대한 복호화를 수행하여 2진수의 데이터 정보 심볼 열과 식별 정보 심볼 열을 출력한다. 이때 복호화는 엔트로피 압축 기법에 대응한 복원 기법에 의해 이루어질 수 있다.
상기 복원 장치는 3514단계에서 상기 복호화 동작을 통해 출력되는 2진수의 데이터 정보 심볼 열과 식별 정보 심볼 열을 이용하여 m진의 정보 심볼 열을 생성한다.
상기 복원 장치는 3516단계에서 앞서 생성된 m진 정보 심볼 열에 대한 복원을 수행한다. 즉 상기 m진 정보 심볼 열로부터 숨겨진 은닉 정보 열을 추출한다. 상기 복원 장치는 상기 은닉 정보 열의 추출로 인해 상기 m진 정보 심볼 열에 비해 진수가 1감소한 진수의 정보 심볼 열을 얻을 수 있다. 예컨대 정보 복원 전의 정보 심볼 열의 진수가 4였다면, 상기 정보 복원 후에 얻을 수 있는 정보 심볼 열 (또는 피 은닉 정보 열)의 차수는 3이 된다.
상기 복원 장치는 3518단계에서 정보 복원에 의해 은닉 정보 열을 추출하고, 상기 추출한 은닉 정보 열을 출력한다. 그리고 상기 복원 장치는 3520단계에서 앞서 얻어진 피 은닉 정보 열, 즉 은닉 정보 열이 추출된 후의 정보 심볼 열의 진수가 원하는 진수인가를 판단한다. 즉 앞서 얻은 피 은닉 정보 열의 진수가 2진수인지를 판단한다.
만약 앞서 얻은 피 은닉 정보 열이 그 이상의 차수를 가진다면, 상기 복원 장치는 3522단계로 진행하여 n을 1 감소 시킨 후 상기 3516단계로 리턴한다.
상기 3516단계로 리턴될 시 상기 복원 장치는 앞서 얻은 피 은닉 정보 열로부터 새로운 은닉 정보 열을 추출하기 위한 정보 복원 동작을 수행한다. 그리고 상기 새로운 은닉 정보 열을 추출함으로써, 얻을 수 있는 피 은닉 정보 열의 진수는 1 감소하게 된다.
상술한 동작에 의해 원하는 진수의 피 은닉 정보 열에 대한 획득이 이루어졌다면, 상기 복원 장치는 3524단계에서 최종적으로 얻어진 2진수의 피 은닉 정보 열
Figure PCTKR2010000956-appb-I000497
을 추출한다.
그리고 상기 복원 장치는 상기 3526단계에서 상기 추출된 피 은닉 정보 열과 상기 추출된 적어도 하나의 은닉 정보 열을 결합하여 최종 2진 정보 비트 열을 생성한다.
한편 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어 져서는 안 될 것이다.
예컨대 본 발명의 제1 및 제2실시 예에서는 압축 장치는 복수의 구성들에 의해 구현되는 것과 같이 설명하고 있다. 하지만 이는 설명의 편의를 위한 것이며, 본 발명의 제1 및 제2실시 예에 따른 압축 기술은 디지털 신호 처리가 가능한 하나의 구성에 의해 구현도 가능하다. 즉 디지털 신호 처리장치 (DSP: Digital Signal Processor)에 의해 구현하는 것도 가능할 것이다. 하지만 DSP 등과 같이 하나의 디지털 신호 처리장치를 통해 본 발명의 실시 예에 따른 압축 기술을 구현하더라도 압축을 위한 구체적인 동작은 동일하다.
뿐만 아니라 본 발명의 제1 및 제2실시 예에 따른 압축 장치에 상응하는 복원 장치도 하나의 DSP 등과 같은 디지털 신호 처리장치를 이용하여 구현하는 것이 가능하다.
그리고 본 발명의 제1 및 제2실시 예에 따른 압축 장치에서는 최초에 입력되는 정보가 2진수인 경우로 한정하여 설명하였다. 하지만 그 입력되는 정보가 그 이상의 진수를 가지는 경우라 하더라도 본 발명의 제1 및 제2실시 예에서 제안하는 압축 기술을 동일하게 적용할 수 있음은 자명하다.
예컨대 입력되는 정보가 3진수인 경우에는 본 발명의 제1 및 제2실시 예에서 한번의 압축이 이루어진 데이터를 추가로 정보 은닉을 통해 압축하는 동작과 동일하게 적용할 수 있다.
단지 최초에 입력되는 정보 비트의 진수가 2진수 이상인 경우에는 은닉 정보 비트 값이 0과 1 이외의 값을 가질 수 있으므로, 한번의 정보 은닉에 의해 증가하는 차수가 달라질 수 있다. 일 예로 3진수의 정보가 입력되는 경우에는 1번의 정보 은닉에 의해 얻을 수 있는 정보 심볼 열의 차수는 5진수가 될 것이다.
이를 일반화시키면, 입력되는 정보 비트의 진수가 n이라고 가정하면, 한번의 정보 은닉에 의해 증가하는 차수는 n-1이 된다. 따라서 n 진수의 정보 비트가 입력되어 최초의 정보 은닉에 의해 출력되는 비트 열의 차수는 n+(n-1)이 된다.
또한 본 발명의 실시 예에서는 피 은닉 정보 비트 값이 0인 비트에 대해 은닉 정보 비트를 은닉하는 것을 가정하였다. 이 경우는 피 은닉 정보 비트 열을 구성하는 비트 값에서 0의 값을 가지는 비트 수가 1의 값을 가지는 비트 수에 비해 상대적으로 많은 경우에 보다 효과적이다.
하지만 본 발명의 다른 실시 예로써, 피 은닉 정보 비트 열을 구성하는 비트 값에서 1의 값을 가지는 비트 수가 0의 값을 가지는 비트 수에 비해 상대적으로 많은 경우에는 피 은닉 정보 비트 값이 1인 비트에 대해 은닉 정보 비트를 은닉하는 것이 보다 효율적일 수 있다. 단지 이 경우에 있어 은닉 정보 비트의 비트 수는 피 은닉 정보 열을 구성하는 1의 값을 가지는 비트 수를 고려하여 결정하여야 한다. 즉 앞서 제안된 본 발명의 다른 실시 예에 따른 동작은 본 발명의 실시 예에 따른 동작과 동일하나 이용되는 비트 값에서 차이를 가질 뿐이다.

Claims (28)

  1. 데이터 압축 장치에 있어서,피 은닉 심볼들 중 미리 결정된 값을 갖는 대상 피 은닉 심볼에 대해 은닉하고자 하는 대상 은닉 심볼을 은닉 심볼들로부터 결정하고, 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값으로 상기 대상 피 은닉 심볼의 값을 치환하는 정보 은닉부를 포함하는 데이터 압축 장치.
  2. 제1항에 있어서,상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값이 상기 은닉 심볼들과 상기 피 은닉 심볼들의 진수보다 높은 진수를 가짐을 특징으로 하는 데이터 압축 장치.
  3. 제2항에 있어서,상기 은닉 심볼들의 진수가 m이고, 상기 피 은닉 심볼들의 진수가 2진수이며, 상기 미리 결정된 값이 0이 라면, 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값은 0 또는 m임을 특징으로 하는 데이터 압축 장치.
  4. 제3항에 있어서, 상기 정보 은닉부는,상기 대상 은닉 심볼의 값이 0인 경우 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값을 0으로 결정하고, 상기 대상 은닉 심볼의 값이 1인 경우 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값을 m으로 결정함을 특징으로 하는 데이터 압축 장치.
  5. 제1항에 있어서,상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값은 상기 대상 은닉 심볼의 값이며, 상기 정보 은닉부는 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값을 식별하기 위한 정보와 상기 피 은닉 심볼들의 수와 상기 은닉 심볼들의 수의 일치 여부를 식별하는 플래그 값을 추가로 생성하는 데이터 압축 장치.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,압축하고자 하는 정보 열로부터 상기 피 은닉 심볼들로 구성된 피 은닉 심볼 열과 상기 은닉 심볼들로 구성된 은닉 심볼 열을 분리하는 분리부를 더 포함하는 데이터 압축 장치.
  7. 제1항 내지 제5항 중 어느 한 항에 있어서,상기 정보 은닉부에 의해 생성된 정보 은닉 심볼 열을 부호화하는 엔트로피 부호기를 더 포함하는 데이터 압축 장치.
  8. 제1항 내지 제4항 중 어느 한 항에 있어서,상기 정보 은닉부에 의해 생성된 정보 은닉 심볼 열을 2진 데이터 정보 심볼 열과 2진 식별 정보 심볼 열로 변환하는 이진화부와,상기 2진 데이터 정보 심볼 열과 상기 2진 식별 정보 심볼 열을 4진 또는 8진의 데이터 정보 심볼 열과 식별 정보 심볼 열로 변환하는 진수 변환기와,상기 4진 또는 8진의 데이터 정보 심볼 열과 식별 정보 심볼 열 각각을 부호화하는 엔트로피 부호기를 더 포함하는 데이터 압축 장치.
  9. 데이터 압축 방법에 있어서,피 은닉 심볼들 중 미리 결정된 값을 갖는 대상 피 은닉 심볼에 대해 은닉하고자 하는 대상 은닉 심볼을 은닉 심볼들로부터 결정하는 과정과,상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값으로 상기 대상 피 은닉 심볼의 값을 치환하는 과정을 포함하는 데이터 압축 방법.
  10. 제9항에 있어서,상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값이 상기 은닉 심볼들과 상기 피 은닉 심볼들의 진수보다 높은 진수를 가짐을 특징으로 하는 데이터 압축 방법.
  11. 제10항에 있어서,상기 은닉 심볼들의 진수가 m이고, 상기 피 은닉 심볼들의 진수가 2진수이며, 상기 미리 결정된 값이 0이 라면, 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값은 0 또는 m임을 특징으로 하는 데이터 압축 방법.
  12. 제11항에 있어서, 상기 치환하는 과정은,상기 대상 은닉 심볼의 값이 0인 경우 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값을 0으로 결정하고, 상기 대상 은닉 심볼의 값이 1인 경우 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값을 m으로 결정하는 과정을 포함하는 데이터 압축 방법.
  13. 제9항에 있어서,상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값을 식별하기 위한 정보와 상기 피 은닉 심볼들의 수와 상기 은닉 심볼들의 수의 일치 여부를 식별하는 플래그 값을 추가로 생성하는 과정을 더 포함하며,여기서 상기 대상 은닉 심볼과 상기 대상 피 은닉 심볼의 조합에 상응하는 심볼 값은 상기 대상 은닉 심볼의 값임을 특징으로 하는 데이터 압축 방법.
  14. 제9항 내지 제13항 중 어느 한 항에 있어서,압축하고자 하는 정보 열로부터 상기 피 은닉 심볼들로 구성된 피 은닉 심볼 열과 상기 은닉 심볼들로 구성된 은닉 심볼 열을 분리하는 과정을 더 포함하는 데이터 압축 방법.
  15. 제9항 내지 제13항 중 어느 한 항에 있어서,상기 치환하는 과정에 생성된 정보 은닉 심볼 열을 엔트로피 부호화하는 과정을 더 포함하는 데이터 압축 방법.
  16. 제9항 내지 제12항 중 어느 한 항에 있어서,상기 치환하는 과정에 의해 생성된 정보 은닉 심볼 열을 2진 데이터 정보 심볼 열과 2진 식별 정보 심볼 열로 변환하는 과정과,상기 2진 데이터 정보 심볼 열과 상기 2진 식별 정보 심볼 열을 4진 또는 8진의 데이터 정보 심볼 열과 식별 정보 심볼 열로 변환하는 과정과,상기 4진 또는 8진의 데이터 정보 심볼 열과 식별 정보 심볼 열 각각을 엔트로피 부호화하는 과정을 더 포함하는 데이터 압축 방법.
  17. 데이터 복원 장치에 있어서,m진의 정보 은닉 심볼 열을 구성하는 정보 은닉 심볼들 중 미리 결정된 값을 가지는 정보 은닉 심볼로부터 피 은닉 심볼과 은닉 심볼을 복원하는 정보 복원부를 포함하며,여기서 상기 미리 결정된 값은 상기 정보 은닉 심볼이 가질 수 있는 최소 값과 최고 값임을 특징으로 하는 데이터 복원 장치.
  18. 제17항에 있어서, 상기 정보 복원부는,상기 미리 결정된 값이 상기 정보 은닉 심볼이 가질 수 있는 최소 값인 0인 경우 상기 피 은닉 심볼과 상기 은닉 심볼을 0으로 복원하고, 상기 미리 결정된 값이 상기 정보 은닉 심볼이 가질 수 있는 최대 값인 m인 경우 상기 피 은닉 심볼을 0으로 복원하고 상기 은닉 심볼을 1로 복원함을 특징으로 하는 데이터 복원 장치.
  19. 제17항에 있어서, 상기 정보 복원부는,상기 최고 값을 가지는 정보 은닉 심볼을 식별하기 위한 정보에 의해 상기 최고 값을 가지는 정보 은닉 심볼을 피 은닉 심볼로만 복원할 지 피 은닉 심볼과 은닉 심볼로 복원할지를 결정하며,상기 정보 은닉 심볼 열로부터 복원될 피 은닉 심볼들의 수와 은닉 심볼들의 수의 일치 여부를 식별하는 플래그 값에 의해 상기 정보 은닉 심볼 열을 구성하는 마지막 정보 은닉 심볼을 은닉 심볼로만 복원할 지 은닉 심볼과 피 은닉 심볼로 복원할지를 결정하는 데이터 복원 장치.
  20. 제17항 내지 제19항 중 어느 한 항에 있어서, 상기 정보 복원부는,상기 m진의 정보 은닉 심볼 열을 구성하는 정보 은닉 심볼들 중 미리 결정된 값이 아닌 정보 은닉 심볼을 피 은닉 심볼로만 복원함을 특징으로 하는 데이터 복원 장치.
  21. 제17항 내지 제19항 중 어느 한 항에 있어서,상기 정보 복원부에 의해 복원된 피 은닉 심볼 열과 은닉 심볼 열을 결합하여 하나의 정보 열로 출력하는 결합부를 더 포함하는 데이터 복원 장치.
  22. 제17항 내지 제19항 중 어느 한 항에 있어서,압축 데이터를 엔트로피 코딩 기법에 상응하는 디코딩 기법에 의해 복호화하여 상기 m진의 정보 은닉 심볼 열을 출력하는 복호화부를 더 포함하는 데이터 복원 장치.
  23. 데이터 복원 방법에 있어서,m진의 정보 은닉 심볼 열을 구성하는 정보 은닉 심볼들 중 미리 결정된 값을 가지는 정보 은닉 심볼로부터 피 은닉 심볼과 은닉 심볼을 복원하는 과정을 포함하며,여기서 상기 미리 결정된 값은 상기 정보 은닉 심볼이 가질 수 있는 최소 값과 최고 값임을 특징으로 하는 데이터 복원 방법.
  24. 제23항에 있어서, 상기 복원하는 과정은,상기 미리 결정된 값이 상기 정보 은닉 심볼이 가질 수 있는 최소 값인 0인 경우 상기 피 은닉 심볼과 상기 은닉 심볼을 0으로 복원하는 과정과,상기 미리 결정된 값이 상기 정보 은닉 심볼이 가질 수 있는 최대 값인 m인 경우 상기 피 은닉 심볼을 0으로 복원하고 상기 은닉 심볼을 1로 복원하는 과정을 포함하는 데이터 복원 방법.
  25. 제23항에 있어서, 상기 복원하는 과정은,상기 최고 값을 가지는 정보 은닉 심볼을 식별하기 위한 정보에 의해 상기 최고 값을 가지는 정보 은닉 심볼을 피 은닉 심볼로만 복원할 지 피 은닉 심볼과 은닉 심볼로 복원할지를 결정하는 과정과,상기 정보 은닉 심볼 열로부터 복원될 피 은닉 심볼들의 수와 은닉 심볼들의 수의 일치 여부를 식별하는 플래그 값에 의해 상기 정보 은닉 심볼 열을 구성하는 마지막 정보 은닉 심볼을 은닉 심볼로만 복원할 지 은닉 심볼과 피 은닉 심볼로 복원할지를 결정하는 과정을 포함하는 데이터 복원 방법.
  26. 제23항 내지 제25항 중 어느 한 항에 있어서, 상기 복원하는 과정은,상기 m진의 정보 은닉 심볼 열을 구성하는 정보 은닉 심볼들 중 미리 결정된 값이 아닌 정보 은닉 심볼을 피 은닉 심볼로만 복원하는 과정을 더 포함하는 데이터 복원 방법.
  27. 제23항 내지 제25항 중 어느 한 항에 있어서,상기 복원하는 과정에 의해 복원된 피 은닉 심볼 열과 은닉 심볼 열을 결합하여 하나의 정보 열로 출력하는 과정을 더 포함하는 데이터 복원 방법.
  28. 제23항 내지 제25항 중 어느 한 항에 있어서,압축 데이터를 엔트로피 코딩 기법에 상응하는 디코딩 기법에 의해 복호화하여 상기 m진의 정보 은닉 심볼 열을 출력하는 과정을 더 포함하는 데이터 복원 방법.
PCT/KR2010/000956 2009-02-13 2010-02-16 데이터 압축/해제장치 및 방법 Ceased WO2010093225A2 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020117024446A KR101268934B1 (ko) 2009-02-13 2010-02-16 데이터 압축/해제장치 및 방법

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20090012102 2009-02-13
KR10-2009-0012102 2009-02-13
KR20090093138 2009-09-30
KR10-2009-0093138 2009-09-30

Publications (2)

Publication Number Publication Date
WO2010093225A2 true WO2010093225A2 (ko) 2010-08-19
WO2010093225A3 WO2010093225A3 (ko) 2010-12-09

Family

ID=42562222

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2010/000956 Ceased WO2010093225A2 (ko) 2009-02-13 2010-02-16 데이터 압축/해제장치 및 방법

Country Status (2)

Country Link
KR (1) KR101268934B1 (ko)
WO (1) WO2010093225A2 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101645235B1 (ko) * 2014-04-04 2016-08-04 고려대학교 산학협력단 정보 은닉 기법을 이용한 재압축-재압축 해제 장치, 방법 및 이를 저장한 저장매체
KR102138892B1 (ko) 2019-09-24 2020-07-28 심인보 데이터 무손실 압축 장치 및 그 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101449278B (zh) * 2003-12-05 2011-07-06 新泽西理工学院 在空间域中的健壮可逆数据隐藏和数据恢复的系统和方法
KR101125351B1 (ko) * 2003-12-19 2012-03-28 크리에이티브 테크놀로지 엘티디 디지털 이미지 처리 방법 및 시스템

Also Published As

Publication number Publication date
WO2010093225A3 (ko) 2010-12-09
KR20120000085A (ko) 2012-01-03
KR101268934B1 (ko) 2013-05-30

Similar Documents

Publication Publication Date Title
WO2017222140A1 (ko) Cnn 기반 인루프 필터를 포함하는 부호화 방법과 장치 및 복호화 방법과 장치
WO2012033373A2 (en) Low complexity transform coding using adaptive dct/dst for intra-prediction
WO2020242057A1 (en) Decompression apparatus and control method thereof
WO2020242260A1 (ko) 전역적 문맥을 이용하는 기계 학습 기반의 이미지 압축을 위한 방법 및 장치
WO2013055046A2 (ko) 통신/방송 시스템에서 데이터 송수신 장치 및 방법
WO2020231049A1 (en) Neural network model apparatus and compressing method of neural network model
WO2018161604A1 (zh) 移动终端的播放控制方法、装置、存储介质及电子设备
WO2021112647A1 (en) Method, apparatus and electronic device for determining word representation vector
WO2020153552A1 (ko) 기록된 거래의 수정이 가능한 블록체인을 위한 방법 및 장치
WO2021256843A1 (ko) 동형 암호문에 대한 통계 연산 수행하는 장치 및 방법
WO2011053101A2 (en) Apparatus and method for generating a parity check matrix in a communication system using linear block codes, and a transmission/reception apparatus and method using the same
WO2022071757A1 (ko) 머신 비전을 위한 다중 태스크 시스템에서의 딥러닝 기반 특징맵 코딩 장치 및 방법
WO2017071352A1 (zh) 密码的推送方法、推送系统及终端设备
WO2009116815A2 (en) Apparatus and method for encoding and decoding using bandwidth extension in portable terminal
WO2017142299A1 (ko) 공간분할 세그먼트에 대한 동적이동 추적 기반 수기서명 인증 시스템 및 방법
WO2010093225A2 (ko) 데이터 압축/해제장치 및 방법
WO2022019443A1 (ko) 효율적인 양자 모듈러 곱셈기 및 양자 모듈러 곱셈 방법
WO2023219392A1 (ko) 블록 직교 희소 중첩 코드의 순차적 인코더 및 이를 이용한 인코딩 방법과 2단계 map 디코더와 mmse-a-map 디코더 및 이를 이용한 디코딩 방법
WO2022164095A1 (en) Method and apparatus for signal processing
WO2018076871A1 (zh) 联系人信息的同步方法、装置、介质、电子设备及系统
WO2023229094A1 (ko) 행동 예측 방법 및 장치
WO2015119361A1 (ko) 클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 제공 방법 및 이를 위한 장치
WO2022098056A1 (ko) 컨볼루션 연산을 수행하는 전자 장치 및 그 동작 방법
WO2020101081A1 (ko) 고 영향 노드의 결정 방법, 고 영향 노드의 결정 장치, 바이럴 마케팅에서의 마케팅 비용 최소화 방법 및 이를 수행하기 위한 시스템
WO2024080623A1 (ko) Ai에 기반한 영상 부호화 장치 및 영상 복호화 장치, 및 이들에 의한 영상의 부호화 및 복호화 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10741442

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20117024446

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 10741442

Country of ref document: EP

Kind code of ref document: A2