KR101367811B1 - Data compression/decompression device and method - Google Patents

Data compression/decompression device and method Download PDF

Info

Publication number
KR101367811B1
KR101367811B1 KR1020127015998A KR20127015998A KR101367811B1 KR 101367811 B1 KR101367811 B1 KR 101367811B1 KR 1020127015998 A KR1020127015998 A KR 1020127015998A KR 20127015998 A KR20127015998 A KR 20127015998A KR 101367811 B1 KR101367811 B1 KR 101367811B1
Authority
KR
South Korea
Prior art keywords
value
information
information bit
bit
binary
Prior art date
Application number
KR1020127015998A
Other languages
Korean (ko)
Other versions
KR20120103654A (en
Inventor
김형중
Original Assignee
고려대학교 산학협력단
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 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Publication of KR20120103654A publication Critical patent/KR20120103654A/en
Application granted granted Critical
Publication of KR101367811B1 publication Critical patent/KR101367811B1/en

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 데이터를 압축하거나 압축된 데이터를 복원하는 데이터 처리장치 및 방법에 관한 것이다.
이를 위해 압축을 위한 2진 정보 비트 열로부터 선택한 피 은닉 정보 비트의 값이 결정 값인 경우 상기 2진 정보 비트 열로부터 m(≥1) 개의 은닉 정보 비트를 추가로 선택한다. 그리고 상기 추가로 선택한 m(≥1)개의 은닉 정보 비트에 대응하여 미리 설정된 2m 진 값으로 상기 선택한 피 은닉 정보 비트와 상기 추가로 선택한 m 개의 은닉 정보 비트를 치환한다.
The present invention relates to a data processing apparatus and method for compressing data or restoring compressed data.
To this end, when the value of the hidden information bit selected from the binary information bit string for compression is a determined value, m (≥1) hidden information bits are further selected from the binary information bit string. The selected hidden information bit and the further selected m hidden information bits are replaced with a preset 2 m binary value corresponding to the additionally selected m (≥ 1) hidden information bits.

Description

데이터 압축/해제장치 및 방법{DATA COMPRESSION/DECOMPRESSION DEVICE AND METHOD}DATA COMPRESSION / DECOMPRESSION DEVICE AND METHOD}

본 발명은 데이터 처리장치 및 방법에 관한 것으로, 특히 데이터를 압축하거나 압축된 데이터를 복원하는 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for data processing, and more particularly, to an apparatus and method for compressing data or restoring compressed data.

일반적으로 데이터를 처리하는 전자 장비에서는 데이터의 량을 줄이기 위해 다양한 압축 기술 및 압축 해제 (이하 "복원"이라 칭함) 기술이 적용되거나 제안되고 있다. 이와 같이 데이터의 량을 줄이기 위한 시도는 데이터를 기록하기 위한 기록 매체의 용량을 효율적으로 사용하기 위한 측면과, 전달의 용이성을 제공하기 위한 측면 등을 기반으로 한다.In general, in electronic equipment that processes data, various compression techniques and decompression (hereinafter, referred to as "restore") techniques are applied or proposed to reduce the amount of data. The attempt to reduce the amount of data as described above is based on aspects for efficiently using the capacity of the recording medium for recording data, aspects for providing ease of delivery, and the like.

통상적으로 최고 수준으로 데이터를 압축하는 방법들은 아주 복잡한 데이터 처리 장치가 필요할 뿐만 아니라 흔히 처리 속도가 느리다. 이에 반하여 낮은 수준으로 데이터를 압축하는 방법들은 처리 속도가 빠를 뿐만 아니라 상대적으로 하드웨어가 복잡하지 않다.Typically, the methods of compressing data to the highest level require not only very complex data processing devices, but also often slow processing. On the other hand, low-level data compression methods are not only fast but also relatively complex in hardware.

따라서 종래에는 하드웨어의 복잡성이나 처리 시간을 고려하여 원하는 수준의 품질을 얻기 위한 데이터 압축 기법을 선택하여 사용하였다. 하지만 향후에는 하드웨어의 복잡도와 처리 시간을 줄이면서도 높은 수준의 품질을 얻을 수 있는 압축 기법 및 이에 상응하는 복원 기법의 마련이 시급하다 할 것이다.Therefore, conventionally, a data compression technique has been selected and used to obtain a desired level of quality in consideration of hardware complexity and processing time. However, in the future, it is urgent to prepare a compression technique and a corresponding restoration technique that can achieve a high level of quality while reducing hardware complexity and processing time.

본 발명은 가역 정보 은닉을 이용하여 바이너리 데이터를 무손실 압축하는 장치 및 방법을 제공한다.The present invention provides an apparatus and method for lossless compression of binary data using reversible information concealment.

또한 본 발명은 가역 정보 은닉을 이용하여 무손실 압축된 데이터에 대한 압축을 해제하는 장치 및 방법을 제공한다.The present invention also provides an apparatus and method for decompressing a lossless compressed data using reversible information concealment.

또한 본 발명은 압축을 위한 이진 문자열에서 확률이 가장 높은 값에 소정 비트의 이진 문자를 은닉하는 압축 장치 및 방법과 이에 상응하는 압축 해제장치 및 방법을 제공한다.The present invention also provides a compression apparatus and method for concealing a predetermined bit of binary characters at the most probable value in a binary string for compression, and a corresponding decompression apparatus and method.

본 발명의 일 실시 예에 따라 데이터를 압축하기 위한 장치는, 압축을 위한 2진 정보 비트 열로부터 선택한 피 은닉 정보 비트의 값이 결정 값인 경우 상기 2진 정보 비트 열로부터 추가로 선택한 m(≥1) 개의 은닉 정보 비트에 대응하여 미리 설정된 2m 진 값으로 상기 선택한 피 은닉 정보 비트와 상기 추가로 선택한 m 개의 은닉 정보 비트를 치환하는 정보 은닉부와, 상기 정보 은닉부로부터 출력되는 2m+1 진 정보 심볼 열을 부호화하여 출력하는 부호화부를 포함한다.According to an embodiment of the present invention, an apparatus for compressing data may further include selecting m additionally selected from the binary information bit stream when the value of the hidden information bit selected from the binary information bit stream for compression is a determination value. ) An information hiding unit for replacing the selected hidden information bit and the additionally selected m hidden information bits with a preset 2 m binary value corresponding to the 2 hidden information bits, and 2 m +1 outputted from the information hiding unit. And an encoder for encoding and outputting the binary information symbol string.

본 발명의 일 실시 예에 따라 데이터를 압축하기 위한 방법은, 압축을 위한 2진 정보 비트 열로부터 선택한 피 은닉 정보 비트의 값이 결정 값인 경우 상기 2진 정보 비트 열로부터 추가로 선택한 m(≥1) 개의 은닉 정보 비트에 대응하여 미리 설정된 2m 진 값으로 상기 선택한 피 은닉 정보 비트와 상기 추가로 선택한 m 개의 은닉 정보 비트를 치환하는 과정을 포함한다.According to an embodiment of the present invention, a method for compressing data may further include selecting m further from the binary information bit string when the value of the hidden information bit selected from the binary information bit string for compression is a determined value. Substituting the selected hidden information bit and the additionally selected m hidden information bits with a preset 2 m binary value corresponding to the? Hidden information bits.

본 발명의 다른 실시 예에 따라 데이터를 압축하기 위한 장치는, 길이가 n인 피 은닉 정보 비트 열과 길이가 k인 은닉 정보 비트 열을 입력으로 하고, 상기 피 은닉 정보 비트 열의 각 비트 중 결정 값에 해당하는 비트의 값을 상기 은닉 정보 비트 열로부터 순차적으로 추출한 m(≥1) 개의 비트들에 상응하는 2m진 값으로 치환하는 정보 은닉부와, 상기 정보 은닉부로부터 출력되는 2m+1 진 정보 심볼 열을 부호화하여 출력하는 부호화부를 포함한다.According to another embodiment of the present invention, an apparatus for compressing data includes inputting a hidden information bit string having a length of n and a hidden information bit string having a length of k and inputting a determined value of each bit of the hidden information bit string. An information hiding unit for replacing a value of a corresponding bit with a 2 m binary value corresponding to m (≥1) bits sequentially extracted from the hidden information bit stream, and a 2 m +1 binary output from the information hiding unit And an encoder for encoding and outputting the information symbol string.

본 발명의 다른 실시 예에 따라 데이터를 압축하기 위한 방법은, 길이가 n인 피 은닉 정보 비트 열과 길이가 k인 은닉 정보 비트 열을 입력으로 하고, 상기 피 은닉 정보 비트 열의 각 비트 중 결정 값에 해당하는 비트의 값을 상기 은닉 정보 비트 열로부터 순차적으로 추출한 m(≥1)개의 비트들에 상응하는 2m 진 값으로 치환하는 과정을 포함한다.According to another exemplary embodiment of the present invention, a method for compressing data includes inputting a hidden information bit string having a length of n and a hidden information bit string having a length of k and inputting a determined value of each bit of the hidden information bit string. It includes the step of replacing the value of a corresponding bit to 2 m binary value corresponding to the secret information bit sequence sequentially by extracting m (≥1) of bits from.

본 발명의 다른 실시 예에 따라 데이터를 압축하기 위한 방법은, 압축을 위한 2진 정보 비트 열로부터 1비트의 피 은닉 정보 비트를 선택하고, 상기 선택한 피 은닉 정보 비트의 값이 상기 2진 정보 비트 열 내의 비트 값들 중 가장 높은 비율을 갖는 결정 값인지를 판단하는 과정과, 상기 선택한 피 은닉 정보 비트의 값이 상기 결정 값이 아닌 경우, 상기 선택한 피 은닉 정보 비트 값을 2m으로 치환하는 과정과, 상기 선택한 피 은닉 정보 비트의 값이 상기 결정 값인 경우, 상기 2진 정보 비트 열에서 상기 선택한 피 은닉 정보 비트 값의 다음 비트를 포함하여 연속하는 m개의 비트들에 상응하는 2m진 값에 의해 상기 피 은닉 정보 비트의 값을 치환하는 과정을 포함한다.According to another embodiment of the present invention, a method for compressing data includes selecting one bit hidden information bit from a binary information bit string for compression, and wherein the selected hidden information bit has a value of the binary information bit. Determining whether the determined hidden information bit has the highest ratio among the bit values in the column; if the selected hidden information bit value is not the determined value, replacing the selected hidden information bit value with 2 m; If the value of the selected hidden information bit is the determined value, by a 2 m binary value corresponding to m consecutive bits including the next bit of the selected hidden information bit value in the binary information bit stream; Substituting the value of the hidden information bit.

본 발명의 실시 예에 따라 압축 데이터를 복원하기 위한 장치는, 부호화된 정보 심볼 열을 복호하는 복호화부와, 상기 복호화된 정보 심볼 열로부터 순차적으로 선택되는 2m+1 진의 복원 정보 심볼의 값이 결정 값인 경우 상기 선택한 복원 정보 심볼의 값을 상기 결정 값에 상응하는 2진 정보 비트 값으로 복원하고, 상기 선택한 복원 정보 심볼의 값이 상기 결정 값이 아닌 경우 상기 선택한 복원 정보 심볼의 값에 상응하는 길이가 m+1인 2진 정보 비트 값으로 복원하는 정보 복원부를 포함한다.According to an embodiment of the present invention, an apparatus for decompressing compressed data includes a decoder which decodes an encoded information symbol string, and a value of a 2 m +1 binary reconstruction information symbol sequentially selected from the decoded information symbol string. In case of the determination value, the value of the selected restoration information symbol is restored to the binary information bit value corresponding to the determination value, and when the value of the selected restoration information symbol is not the determination value, the value of the restoration information symbol corresponding to the selected restoration information symbol And an information restoring unit for restoring a binary information bit value of length m + 1.

본 발명의 실시 예에 따라 압축 데이터를 복원하기 위한 방법은, 정보 심볼 열로부터 순차적으로 선택되는 2m+1 진의 복원 정보 심볼의 값이 결정 값인 경우, 상기 선택한 복원 정보 심볼의 값을 상기 결정 값에 상응하는 2진 정보 비트 값으로 복원하는 과정과, 상기 선택한 복원 정보 심볼의 값이 상기 결정 값이 아닌 경우, 상기 선택한 복원 정보 심볼의 값에 상응하는 길이가 m+1인 2진 정보 비트 값으로 복원하는 과정을 포함한다.According to an embodiment of the present invention, in the method of restoring compressed data, when a value of a 2 m +1 binary restoration information symbol sequentially selected from an information symbol string is a determination value, the value of the selected restoration information symbol is determined as the determination value. Restoring a binary information bit value corresponding to the binary information bit value; and, when the value of the selected restoration information symbol is not the determined value, a binary information bit value having a length m + 1 corresponding to the value of the selected restoration information symbol. Including the process of restoring.

본 발명은 하드웨어의 복잡도와 처리 시간을 줄이면서도 압축 성능이 우수한 무 손실 압축이 가능하도록 하였다. 한편 그 외의 다양한 효과는 후술될 본 발명의 실시 예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 것이다.The present invention allows lossless compression with excellent compression performance while reducing hardware complexity and processing time. Meanwhile, various other effects will be directly or implicitly disclosed in the detailed description according to the embodiment of the present invention to be described later.

도 1은 본 발명의 제1실시 예에 따른 압축장치의 구성을 보이고 있는 도면;
도 2는 본 발명의 제1실시 예에 따른 압축 장치에서 데이터 압축을 위한 제어 흐름을 보이고 있는 도면;
도 3은 본 발명의 제1실시 예에서 제안하는 압축 기술에 따라 무손실 압축을 수행하는 예를 보이고 있는 도면;
도 4는 본 발명의 제2실시 예에 따른 압축장치의 구성을 보이고 있는 도면;
도 5는 본 발명의 제2실시 예에 따른 압축 장치에서 데이터 압축을 위한 제어 흐름을 보이고 있는 도면;
도 6은 본 발명의 제2실시 예에서 제안하는 압축 기술에 따라 무손실 압축을 수행하는 예를 보이고 있는 도면;
도 7은 본 발명의 제1실시 예에 따른 복원장치의 구성을 보이고 있는 도면;
도 8은 본 발명의 제1실시 예에 따른 복원장치에서 압축 데이터를 복원하기 위한 제어 흐름을 보이고 있는 도면;
도 9는 본 발명의 제1실시 예에서 제안하는 복원 기술에 따라 무손실 압축된 정보 심볼에 대한 복원을 수행하는 예를 보이고 있는 도면;
도 10은 본 발명의 제2실시 예에 따른 복원장치의 구성을 보이고 있는 도면;
도 11은 본 발명의 제2실시 예에 따른 복원장치에서 압축 데이터를 복원하기 위한 제어 흐름을 보이고 있는 도면;
도 12는 본 발명의 제2실시 예에서 제안하는 복원 기술에 따라 무손실 압축된 정보 심볼에 대한 복원을 수행하는 예를 보이고 있는 도면.
1 is a view showing the configuration of a compression device according to a first embodiment of the present invention;
2 is a diagram illustrating a control flow for data compression in a compression device according to a first embodiment of the present invention;
3 illustrates an example of performing lossless compression according to a compression technique proposed in the first embodiment of the present invention;
4 is a view showing the configuration of a compression device according to a second embodiment of the present invention;
5 is a diagram illustrating a control flow for data compression in a compression device according to a second embodiment of the present invention;
6 illustrates an example of performing lossless compression according to the compression technique proposed in the second embodiment of the present invention;
7 is a view showing the configuration of a restoring apparatus according to a first embodiment of the present invention;
8 is a view showing a control flow for recovering compressed data in a decompression device according to a first embodiment of the present invention;
9 illustrates an example of performing restoration for a lossless compressed information symbol according to a restoration technique proposed in the first embodiment of the present invention;
10 is a view showing the configuration of a restoration apparatus according to a second embodiment of the present invention;
11 is a view showing a control flow for recovering compressed data in a decompression device according to a second embodiment of the present invention;
FIG. 12 is a diagram illustrating an example of performing restoration of a lossless compressed information symbol according to a restoration technique proposed in the second embodiment of the present invention. FIG.

하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술 되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions of the present invention, and may be changed according to the intentions or customs of the user, the operator, and the like. Therefore, the definition should be based on the contents throughout this specification.

후술될 본 발명의 실시 예에서는 2진 정보 비트 열을 압축하여 정보 패킷을 생성하는 압축 기술과 압축된 정보 패킷을 복원하여 2진 정보 비트 열을 생성하는 복원 기술에 대해 구체적으로 설명할 것이다.In the following embodiment of the present invention, a compression technique for compressing a binary information bit string to generate an information packet and a restoration technique for generating a binary information bit string by recovering the compressed information packet will be described in detail.

본 발명의 실시 예에서 제안하는 압축 기술을 위해 후술될 상세한 설명에서는 정보를 은닉한 후 부호화를 통해 데이터를 압축하는 구성에 대해 구체적으로 살펴볼 것이다.In the detailed description that will be described later for the compression technique proposed in the embodiment of the present invention, a configuration of compressing data through encoding after hiding information will be described in detail.

또한 본 발명의 실시 예에서 제안하는 복원 기술을 위해 후술될 상세한 설명에서는 압축된 패킷으로부터 데이터를 디코딩한 후 상기 디코딩된 데이터에 은닉된 정보를 추출함으로써 이진화 데이터를 복원하는 구성에 대해 구체적으로 살펴볼 것이다.In the detailed description to be described later for the restoration technique proposed in the embodiment of the present invention, a configuration of restoring the binarized data by extracting information concealed in the decoded data after decoding the data from the compressed packet will be described in detail. .

A. 압축 기술A. Compression Technology

먼저 본 발명의 제1실시 예에 따른 압축 기술에서는 하나의 바이너리 데이터, 즉 2진 정보 비트 열이 제공되는 경우를 가정하고 있다. 이 경우에는 하나의 바이너리 데이터로부터 피 은닉 정보 열과 적어도 하나의 은닉 정보 열을 분리하기 위한 동작이 생략될 수 있다.First, in the compression technique according to the first embodiment of the present invention, it is assumed that one binary data, that is, a binary information bit string is provided. In this case, an operation for separating the hidden information string and the at least one hidden information string from one binary data may be omitted.

본 발명의 제1실시 예에 따른 압축 기술에서는 2진 정보 비트 열로부터 정보를 은닉할 대상 비트, 즉 피 은닉 정보 비트를 선택한다. 그리고 상기 선택된 피 은닉 정보 비트의 값을 기반으로 하여 치환할 값을 결정하고, 상기 결정된 값에 의해 상기 피 은닉 정보 비트의 값을 치환한다. 이때 상기 치환할 값을 결정하기 위해 상기 피 은닉 정보 비트의 값에 대한 확인이 선행되어야 한다. 즉 상기 피 은닉 정보 비트의 값이 정보 은닉을 수행할 대상 값인지를 판단하고, 상기 판단 결과에 의해 정보 은닉을 수행할 대상 값에 대해서만 은닉 정보 비트들에 대응하여 미리 결정된 값으로 치환하는 동작을 수행한다.In the compression technique according to the first embodiment of the present invention, a target bit to hide information, that is, a hidden information bit, is selected from a binary information bit string. A value to be substituted is determined based on the value of the selected hidden information bit, and the value of the hidden information bit is replaced by the determined value. In this case, the determination of the value of the hidden information bit must be preceded to determine the value to be replaced. That is, it is determined whether the value of the hidden information bit is a target value to perform information concealment, and based on the result of the determination, only the target value to perform information concealment is replaced with a predetermined value corresponding to the hidden information bits. To perform.

상기 은닉 정보 비트들은 상기 2진 정보 비트 열로부터 추출한다. 상기 은닉 정보 비트들을 추출하는 예로써, 상기 2진 정보 비트 열로부터 미리 결정된 비트 단위에 의해 순차적으로 읽어 들인 비트들을 상기 은닉 정보 비트들로 선택한다. 이때 상기 은닉 정보 비트들의 비트 수는 둘 이상인 것이 바람직하며, 상기 비트 수가 클수록 압축 율을 증가시킬 수 있으나 계산의 복잡도가 증가할 수 있다.The hidden information bits are extracted from the binary information bit string. As an example of extracting the hidden information bits, bits sequentially read by a predetermined bit unit from the binary information bit string are selected as the hidden information bits. In this case, it is preferable that the number of bits of the hidden information bits is two or more, and as the number of bits increases, the compression rate can be increased, but the complexity of the calculation can be increased.

따라서 본 발명의 제1실시 예에 따른 압축 기술에서는 피 은닉 정보 비트의 값에 의해 정보 은닉을 수행할지 여부를 결정하기 위한 구성 및 상기 결정에 의해 은닉 정보 비트들을 추출하기 위한 구성에 대해 구체적으로 설명할 것이다. 그리고 피 은닉 정보 비트의 값을 다른 값으로 치환하기 위한 구성에 대해서도 구체적으로 설명할 것이다.Therefore, in the compression technique according to the first embodiment of the present invention, a configuration for determining whether to perform information hiding by the value of the hidden information bit and a configuration for extracting the hidden information bits by the determination will be described in detail. something to do. In addition, a configuration for replacing the value of the hidden information bit with another value will be described in detail.

다음으로 본 발명의 제2실시 예에 따른 압축 기술에서는 하나의 바이너리 데이터, 즉 2진 정보 비트 열로부터 획득한 피 은닉 정보 비트 열과 은닉 정보 비트 열을 이용하는 경우를 가정하고 있다. 이 경우에는 하나의 2진 정보 비트 열로부터 피 은닉 정보 비트 열과 은닉 정보 비트 열을 획득하기 위한 분리 동작이 요구된다.Next, the compression technique according to the second embodiment of the present invention assumes a case of using a hidden information bit stream and a hidden information bit stream obtained from one binary data, that is, a binary information bit stream. In this case, a separation operation is required to obtain the hidden information bit stream and the hidden information bit stream from one binary information bit stream.

그리고 상기 획득한 피 은닉 정보 비트 열로부터 피 은닉 정보 비트를 순차적으로 선택한다. 상기 선택한 피 은닉 정보 비트의 값이 정보를 은닉할 대상 비트 값인 경우, 상기 획득한 은닉 정보 비트 열로부터 순차적으로 선택된 소정 개수의 은닉 정보 비트들에 대응한 값에 의해 상기 피 은닉 정보 비트의 값을 치환한다.The hidden information bit is sequentially selected from the obtained hidden information bit string. When the value of the selected hidden information bit is a target bit value to conceal information, the value of the hidden information bit is set by a value corresponding to a predetermined number of hidden information bits sequentially selected from the obtained hidden information bit string. Replace.

한편 본 발명의 실시 예에서 사용되는 정보를 은닉할 대상 비트 값으로 제1실시 예에서는 피 은닉 정보 열을 구성하는 비트 값들에서 확률이 가장 높은 값 (Most Probable Symbol, 이하 "MPS"라 칭함) 또는 확률이 가장 낮은 값 (Least Probable Symbol, 이하 "LPS"라 칭함) 중 하나가 사용될 수 있다. 그리고 제2실시 예에서는 2진 정보 비트 열을 구성하는 비트 값들에서 확률이 가장 높은 값 (Most Probable Symbol, 이하 "MPS"라 칭함) 또는 확률이 가장 낮은 값 (Least Probable Symbol, 이하 "LPS"라 칭함) 중 하나가 사용될 수 있다.On the other hand, as the target bit value to hide the information used in the embodiment of the present invention, in the first embodiment, a value having the highest probability among the bit values constituting the hidden information string (Most Probable Symbol, hereinafter referred to as "MPS") or One of the lowest probability values (Least Probable Symbol, hereinafter referred to as "LPS") may be used. In the second embodiment, the most probable value (Most Probable Symbol, hereinafter referred to as "MPS") or the least probable value (Least Probable Symbol, hereinafter referred to as "LPS") of the bit values constituting the binary information bit string. May be used.

하지만 압축율을 고려할 때에 상기 정보를 은닉할 대상 비트 값으로 MPS를 사용하는 것는 바람직할 것이다.However, considering the compression rate, it would be desirable to use MPS as the target bit value to conceal the information.

A-1. 제1실시 예 (압축 기술)A-1. First embodiment (compression technique)

도 1은 본 발명의 제1실시 예에 따른 압축장치의 구성을 보이고 있다.1 shows a configuration of a compression device according to a first embodiment of the present invention.

도 1을 참조하면, 정보 은닉부(110)는 정보 비트 열 X를 입력으로 수신하고, 가역 정보 은닉을 이용하여 상기 정보 비트 열 X에 대한 무손실 압축을 수행함으로써 압축 심볼 열 Z'을 출력한다.Referring to FIG. 1, the information concealment unit 110 receives an information bit string X as an input and outputs a compressed symbol string Z 'by performing lossless compression on the information bit string X using reversible information concealment.

예컨대 상기 정보 은닉부(110)는 상기 정보 비트 열 X로부터 피 은닉 정보 비트에 상응한 1 비트를 선택하고, 상기 선택한 피 은닉 정보 비트 값이 MPS인지를 판단한다.For example, the information concealment unit 110 selects one bit corresponding to the hidden information bit from the information bit string X, and determines whether the selected hidden information bit value is MPS.

만약 상기 선택한 피 은닉 정보 비트 값이 MPS라고 판단되면, 상기 정보 비트 열 X로부터 은닉 정보 비트들에 상응한 m 비트를 추가로 선택한다. 그리고 상기 선택한 피 은닉 정보 비트 값을 상기 추가로 선택한 은닉 정보 비트들에 대응하는 값으로 치환한다. 이때 상기 은닉 정보 비트들은 상기 정보 비트 열 X에서 상기 선택한 피 은닉 정보 비트에 연속하는 m 개의 비트들이 될 수 있다.If it is determined that the selected hidden information bit value is MPS, m bits corresponding to the hidden information bits are further selected from the information bit string X. And replace the selected hidden information bit value with a value corresponding to the further selected hidden information bits. In this case, the hidden information bits may be m bits consecutive to the selected hidden information bit in the information bit string X.

또한 상기 추가로 선택한 은닉 정보 비트들에 대응하는 값은 상기 m을 고려하여 결정하는 것이 바람직하다. 예컨대 상기 m이 2인 경우, 상기 추가로 선택한 은닉 정보 비트들에 대응하는 값은 0, 1, 2, 3이 사용될 수 있다.Also, a value corresponding to the additionally selected hidden information bits is preferably determined in consideration of the m. For example, when m is 2, a value corresponding to the additionally selected hidden information bits may be 0, 1, 2, or 3.

그렇지 않고 상기 선택한 피 은닉 정보 비트 값이 MPS가 아닌 LPS라고 판단되면, 상기 선택한 피 은닉 정보 비트 값을 미리 설정된 값으로 치환한다. 이때 상기 미리 설정된 값은 상기 추가로 선택한 은닉 정보 비트들에 대응하는 값과 중복되어서는 안된다. 일 예로써 상기 미리 설정된 값은 2m이 될 수 있다. 여기서 m은 상기 선택한 피 은닉 정보 비트 값이 MPS인 경우에 추가로 선택되는 은닉 정보 비트들의 비트 수이다.Otherwise, if it is determined that the selected hidden information bit value is an LPS rather than an MPS, the selected hidden information bit value is replaced with a preset value. In this case, the preset value should not overlap with a value corresponding to the additionally selected hidden information bits. As an example, the preset value may be 2 m . M is the number of bits of the hidden information bits that are additionally selected when the selected hidden information bit value is MPS.

상술한 바와 같이 상기 정보 은닉부(110)에서 수행되는 무손실 압축의 구체적인 예에 의한 설명은 후술될 것이다.As described above, a description of a specific example of lossless compression performed by the information hiding unit 110 will be described later.

상기 정보 은닉부(110)에 의해 출력되는 압축 심볼 열 Z'은 부호화부(120)로 입력된다. 상기 부호화부(120)는 상기 정보 은닉부(110)로부터 입력되는 압축 심볼 열 Z'을 소정의 코딩 기법에 의해 압축하여 출력한다.The compressed symbol string Z 'output by the information concealment unit 110 is input to the encoder 120. The encoder 120 compresses and outputs the compressed symbol string Z ′ input from the information concealment unit 110 by a predetermined coding scheme.

상기 부호화부(120)에는 일 예로 엔트로피 코딩 (Entropy coding) 기법이 적용될 수 있다. 상기 엔트로피 코딩 기법은 출현 빈도가 높은 심볼에 짧은 코드를 배정하고 빈도가 낮은 심볼에 긴 코드를 배정하는 코딩 기법이다. 상기 엔트로피 코딩 기법은 일명 가변 길이 코딩(Variable-length coding) 기법이라고도 한다.As an example, an entropy coding technique may be applied to the encoder 120. 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.

한편, 엔트로피 코딩 기법에서는 심볼의 빈도만을 고려하는데, 상기 엔트로피 코딩 기법으로는 허프만 코더 (Huffman coder)와 산술 부호 코더 중 어느 것이나 사용할 수 있다. 상기 엔트로피 코딩 기법은 미리 각 심볼의 출현 빈도를 알아야 최적의 압축이 가능하다. 이때 허프만 코딩을 사용하는 경우에는 각각의 심볼에 하나씩 코드워드를 배정하므로 정수 길이의 코드워드만 허용한다.Meanwhile, the entropy coding scheme only considers the frequency of symbols. As the entropy coding scheme, 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.

도 2는 본 발명의 제1실시 예에 따른 압축 장치에서 데이터 압축을 위한 제어 흐름을 보이고 있다.2 shows a control flow for data compression in the compression apparatus according to the first embodiment of the present invention.

도 2를 참조하면, 압축 장치는 210단계에서 2진 정보 비트 열을 외부로부터 입력 받는다. 그 후 상기 압축 장치는 212단계에서 상기 입력된 2진 정보 비트 열로부터 피 은닉 정보 비트를 선택한다. 상기 압축 장치는 214단계에서 상기 선택한 피 은닉 정보 비트 값이 MPS인지를 판단한다. 앞에서도 정의된 바와 같이 상기 MPS는 상기 2진 정보 비트 열을 구성하는 비트 값들 중 확률이 가장 높은 값을 의미한다.Referring to FIG. 2, in operation 210, the compression apparatus receives a binary information bit string from an external source. The compression device then selects the hidden information bits from the input binary information bit stream in step 212. In operation 214, the compression apparatus determines whether the selected hidden information bit value is an MPS. As defined above, the MPS means a value having the highest probability among the bit values constituting the binary information bit string.

상기 압축 장치는 상기 선택한 피 은닉 정보 비트 값이 MPS가 아닌 LPS라고 판단하면, 216단계에서 상기 선택한 피 은닉 정보 비트 값을 미리 결정된 값으로 치환한다. 이때 상기 미리 결정된 값은 MPS를 가지는 피 은닉 정보 비트에 대해 치환할 값과 중복되어서는 안된다. 일 예로 상기 미리 결정된 값은 2m이 될 수 있다.If the compression apparatus determines that the selected hidden information bit value is an LPS rather than an MPS, the compression apparatus replaces the selected hidden information bit value with a predetermined value in step 216. In this case, the predetermined value should not overlap with the value to be replaced for the hidden information bit having the MPS. For example, the predetermined value may be 2 m .

하지만 상기 선택한 피 은닉 정보 비트 값이 MPS라고 판단하면, 상기 압축 장치는 218단계에서 상기 선택한 피 은닉 정보 비트에 은닉할 적어도 하나의 은닉 정보 비트를 선택한다. 상기 적어도 하나의 은닉 정보 비트는 상기 2진 정보 비트 열에서 상기 선택한 피 은닉 정보 비트에 연속하는 적어도 하나의 비트가 될 수 있다.However, if it is determined that the value of the selected hidden information bit is MPS, the compression apparatus selects at least one hidden information bit to conceal the selected hidden information bit in step 218. The at least one hidden information bit may be at least one bit subsequent to the selected hidden information bit in the binary information bit string.

상기 적어도 하나의 은닉 정보 비트를 선택하면, 상기 압축 장치는 220단계에서 상기 선택한 피 은닉 정보 비트 값을 상기 선택한 적어도 하나의 은닉 정보 비트에 대응하여 미리 결정된 값으로 치환한다. 이때 미리 결정된 값은 은닉 정보 비트로 선택한 비트 수를 고려하여 결정하여야 한다.When the at least one hidden information bit is selected, the compression apparatus replaces the selected hidden information bit value with a predetermined value corresponding to the selected at least one hidden information bit in step 220. At this time, the predetermined value should be determined in consideration of the number of bits selected as the hidden information bits.

상기 압축 장치는 상기 216단계 또는 상기 220단계에서 피 은닉 정보 비트를 다른 값으로 치환하는 동작이 완료되면, 222단계에서 가역 정보 은닉을 이용하여 상기 입력된 2진 정보 비트 열에 대한 무손실 압축이 완료되었는지를 판단한다.When the compression apparatus replaces the hidden information bit with another value in step 216 or 220, the lossless compression of the input binary information bit string is completed using reversible information concealment in step 222. Judge.

상기 압축 장치는 무손실 압축이 완료되지 않았다고 판단되면, 상기 212단계로 리턴하여 새로 선택한 피 은닉 정보 비트에 대한 무손실 압축 동작을 반복하여 수행한다.If it is determined that lossless compression is not completed, the compression apparatus returns to step 212 and repeatedly performs a lossless compression operation on the newly selected hidden information bit.

하지만 상기 입력된 2진 정보 비트 열에 대한 무손실 압축이 완료되었다고 판단되면, 상기 압축 장치는 상술한 동작에 의해 다른 값으로 치환이 이루어진 정보 심볼 열에 대한 부호화를 수행한다. 이때 부호화는 엔트로피 압축 기법에 의해 이루어질 수 있다. 상기 엔트로피 압축 기법은 앞에서도 밝힌 바와 같이 허프만 코드 또는 산술 부호 코더 중 어떠한 것을 사용하여도 좋다.However, if it is determined that lossless compression of the input binary information bit string is completed, the compression apparatus performs encoding on the information symbol string substituted with another value by the above-described operation. In this case, 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.

상기 압축 장치는 226단계에서 부호화를 통해 압축된 정보 심볼 열에 대한 패킹을 통해 정보 패킷을 생성한다.In operation 226, the compression apparatus generates an information packet through packing of the information symbol string compressed through encoding.

도 3은 본 발명의 제1실시 예에서 제안하는 압축 기술에 따라 무손실 압축을 수행하는 예를 보이고 있다.3 shows an example of performing lossless compression according to the compression technique proposed in the first embodiment of the present invention.

도 3에서는 압축을 위해 입력되는 이진 문자 열인 정보 비트 열 X의 길이가 n이고, MPS가 '0', LPS가 '1'이라 가정한다. 또한 상기 정보 비트 열 X에서 MPS인 '0'의 값을 가지는 비트가 피 은닉 정보 비트로 선택될 확률이 p라고 가정한다.In FIG. 3, it is assumed that the length of the information bit string X, which is a binary character string input for compression, is n, the MPS is '0', and the LPS is '1'. In addition, it is assumed that the probability that a bit having a value of '0' which is MPS in the information bit string X is selected as the hidden information bit is p.

따라서 상기 정보 비트 열 X에서 선택될 피 은닉 정보 비트 중 그 비트 값이 '0'인 비트의 수는 n ×p라고 예측할 수 있으며, 상기 예측한 MPS를 가지는 피 은닉 정보 비트의 수에 의해 은닉 정보 비트로 선택할 비트 수 m을 예측할 수 있다. 상기 은닉 정보 비트로 선택할 비트 수 m에 대한 예측 방안을 일반화시키면 하기 <수학식 1>과 같이 정리할 수 있다.Therefore, it is possible to predict that the number of bits whose bit value is '0' among the hidden information bits to be selected in the information bit string X is n × p, and the hidden information is determined by the number of hidden information bits having the predicted MPS. The number of bits m to select as bits can be predicted. Generalizing the prediction method for the number of bits m to be selected as the hidden information bits can be summarized as Equation 1 below.

Figure 112012049095598-pct00001
Figure 112012049095598-pct00001

상기 <수학식 1>에 의해 계산된 결과에서 나머지가 존재할 경우에는 획득한 몫에 1을 더한 값을 m으로 결정한다. 도 3에서는 앞에서 살펴본 바에 의해 m이 2로 결정되었음을 가정하고 있다.If there is a remainder in the result calculated by Equation 1, the value obtained by adding 1 to the obtained quotient is determined as m. In FIG. 3, it is assumed that m is determined as 2 based on the above description.

또한 선택한 피 은닉 정보 비트의 값이 MPS인 경우, m 개의 은닉 정보 비트들에 의해 상기 선택한 피 은닉 정보 비트의 값인 MPS를 치환할 값은 미리 결정되어야 한다. 하기 <표 1>에서는 m 개의 은닉 정보 비트들에 대응하여 미리 결정된 치환할 값의 일 예를 정의하고 있다.In addition, when the value of the selected hidden information bit is MPS, a value to replace MPS, which is the value of the selected hidden information bit, by m hidden information bits should be determined in advance. Table 1 below defines an example of a value to be substituted in advance corresponding to m hidden information bits.

Figure 112012049095598-pct00002
Figure 112012049095598-pct00002

한편 상기 <표 1>에 의한 미리 결정된 값에는 LPS에 상응하는 값인 '1'이 포함되어 있다. 따라서 LPS에 상응하는 값인 '1'이 피 은닉 정보 비트로 선택될 경우에는 상기 선택된 피 은닉 정보 비트의 값을 상기 <표 1>에서 미리 결정된 값으로 정의하고 있지 않은 다른 값으로 치환할 필요가 있다. 이를 위해 도 3에서는 상기 LPS에 상응하는 값인 '1'이 피 은닉 정보 비트로 선택될 경우, 상기 선택된 피 은닉 정보 비트의 값을 '4'로 치환하는 것을 가정한다.Meanwhile, the predetermined value according to <Table 1> includes '1', which is a value corresponding to LPS. Therefore, when the value '1' corresponding to the LPS is selected as the hidden information bit, it is necessary to replace the value of the selected hidden information bit with another value which is not defined as a predetermined value in Table 1 above. To this end, in FIG. 3, when a value '1' corresponding to the LPS is selected as the hidden information bit, it is assumed that the value of the selected hidden information bit is replaced with '4'.

도 3을 참조하면, 압축장치는 길이가 n이고 이진 문자 열인 정보 비트 열 X로부터 1 비트의 피 은닉 정보 비트를 선택한다. 그리고 상기 선택한 피 은닉 정보 비트의 값이 MPS인지를 판단한다.Referring to FIG. 3, the compression apparatus selects one bit of hidden information bits from an information bit string X of length n and a binary character string. It is then determined whether the value of the selected hidden information bit is MPS.

도 3에서 첫 번째로 선택된 피 은닉 정보 비트의 값이 MPS에 해당하는 '0'이므로, 상기 압축장치는 상기 정보 비트 열 X 내에서 상기 선택한 피 은닉 정보 비트에 연속하는 2 개의 비트들인 '10'을 은닉 정보 비트들로 선택한다. 그리고 상기 선택된 피 은닉 정보 비트의 값 '0'을 상기 선택된 은닉 정보 비트들인 '10'에 대응하여 상기 <표 1>에서 정의하고 있는 미리 결정된 값인 '2'로 치환한다. 이로 인해 결과적으로 '010'으로 구성된 3 비트가 하나의 값인 '2'로 압축되었음을 확인할 수 있다. 즉 '10'으로 구성된 2 비트의 은닉 정보 비트들이 MPS를 가지는 1 비트의 피 은닉 정보 비트에 은닉됨을 알 수 있다.Since the value of the first selected hidden information bit in FIG. 3 is '0' corresponding to the MPS, the compression apparatus is '10' which is two bits consecutive to the selected hidden information bit in the information bit string X. Is selected as the hidden information bits. The value '0' of the selected hidden information bit is replaced with '2', which is a predetermined value defined in Table 1, corresponding to the selected hidden information bits '10'. As a result, it can be confirmed that 3 bits composed of '010' are compressed to one value '2'. That is, it can be seen that two bits of hidden information bits composed of '10' are hidden in one bit of hidden information bits having MPS.

그 후 상기 압축 장치는 상기 정보 비트 열에서 상기 은닉 정보 비트들로 선택된 비트들의 다음 비트를 두 번째 피 은닉 정보 비트로 선택한다. 이때 선택된 두 번째 피 은닉 정보 비트는 LPS에 해당하는 '1'의 값을 가지므로, 상기 압축 장치는 상기 선택한 피 은닉 정보 비트의 값인 '1'을 미리 결정된 값인 '4'로 치환한다.The compression device then selects the next bit of the bits selected as the hidden information bits in the information bit string as the second hidden information bit. In this case, since the selected second hidden information bit has a value of '1' corresponding to the LPS, the compression apparatus replaces '1', which is the value of the selected hidden information bit, with '4', which is a predetermined value.

다음으로 상기 압축 장치는 상기 정보 비트 열 X에서 두 번째 피 은닉 정보 비트로 선택된 비트의 다음 비트를 세 번째 피 은닉 정보 비트로 선택한다. 이때 선택된 세 번째 피 은닉 정보 비트는 MPS에 해당하는 '0'이므로, 상기 압축장치는 상기 정보 비트 열 X 내에서 상기 세 번째 피 은닉 정보 비트에 연속하는 2 개의 비트들인 '00'을 은닉 정보 비트들로 선택한다. 그리고 상기 세 번째 피 은닉 정보 비트의 값 '0'을 상기 선택된 은닉 정보 비트들인 '00'에 대응하여 상기 <표 1>에서 정의하고 있는 미리 결정된 값인 '0'으로 치환한다. 이로 인해 결과적으로 '000'으로 구성된 3 비트가 하나의 값인 '0'으로 압축되었음을 확인할 수 있다. 즉 '00'으로 구성된 2 비트의 은닉 정보 비트들이 MPS를 가지는 1 비트의 피 은닉 정보 비트에 은닉됨을 알 수 있다.The compression device then selects the next bit of the bit selected as the second hidden information bit in the information bit string X as the third hidden information bit. In this case, since the selected third hidden information bit is '0' corresponding to the MPS, the compression apparatus hides '00', which is two bits consecutive to the third hidden information bit in the information bit string X. To select. The value '0' of the third hidden information bit is replaced with '0', which is a predetermined value defined in Table 1, corresponding to the selected hidden information bits '00'. As a result, it can be confirmed that 3 bits composed of '000' are compressed to one value '0'. That is, it can be seen that two bits of hidden information bits composed of '00' are hidden in one bit of hidden information bits having MPS.

다음으로 상기 압축 장치는 상기 정보 비트 열 X에서 세 번째 피 은닉 정보 비트로 인해 선택된 은닉 정보 비트들의 다음 비트를 네 번째 피 은닉 정보 비트로 선택한다. 이때 선택된 네 번째 피 은닉 정보 비트는 MPS에 해당하는 '0'이므로, 상기 압축장치는 상기 정보 비트 열 X 내에서 상기 네 번째 피 은닉 정보 비트에 연속하는 2 개의 비트들인 '11'을 은닉 정보 비트들로 선택한다. 그리고 상기 네 번째 피 은닉 정보 비트의 값 '0'을 상기 선택된 은닉 정보 비트들인 '11'에 대응하여 상기 <표 1>에서 정의하고 있는 미리 결정된 값인 '3'으로 치환한다. 이로 인해 결과적으로 '011'로 구성된 3 비트가 하나의 값인 '3'으로 압축되었음을 확인할 수 있다. 즉 '11'로 구성된 2 비트의 은닉 정보 비트들이 MPS를 가지는 1 비트의 피 은닉 정보 비트에 은닉됨을 알 수 있다.Next, the compression device selects the next bit of the hidden information bits selected due to the third hidden information bit in the information bit string X as the fourth hidden information bit. In this case, since the selected fourth hidden information bit is '0' corresponding to the MPS, the compression apparatus hides '11', which is two bits consecutive to the fourth hidden information bit in the information bit string X. To select. The value '0' of the fourth hidden information bit is replaced with '3', which is a predetermined value defined in Table 1, corresponding to the selected hidden information bits '11'. As a result, it can be confirmed that 3 bits composed of '011' are compressed to one value '3'. That is, it can be seen that two bits of hidden information bits composed of '11' are hidden in one bit of hidden information bits having MPS.

그 후 상기 압축 장치는 상기 정보 비트 열에서 네 번째 피 은닉 정보 비트로 인해 선택된 은닉 정보 비트들의 다음 비트를 다섯 번째 피 은닉 정보 비트로 선택한다. 이때 선택된 다섯 번째 피 은닉 정보 비트는 LPS에 해당하는 '1'의 값을 가지므로, 상기 압축 장치는 상기 다섯 번째 피 은닉 정보 비트의 값인 '1'을 미리 결정된 값인 '4'로 치환한다.The compression device then selects as the fifth hidden information bit the next bit of the selected hidden information bits due to the fourth hidden information bit in the information bit string. In this case, since the selected fifth hidden information bit has a value of '1' corresponding to the LPS, the compression apparatus replaces '1', which is the value of the fifth hidden information bit, with '4', which is a predetermined value.

한편 도 3에서는 선택한 피 은닉 정보 비트의 값이 MPS인 경우에 추가로 은닉 정보 비트들을 선택하는 동작을 선택 (selection) 동작 (도 3에서 점선으로 표시)이라 정의하였으며, 피 은닉 정보 비트의 값을 치환할 값을 상기 선택 동작에 의해 선택된 은닉 정보 비트들에 의해 결정하는 동작을 결정 (decision) 동작 (도 3에서 실선으로 표시)이라 정의하였다. 한편 선택한 피 은닉 정보 비트의 값이 LPS인 경우에 미리 결정된 값으로 치환하는 동작 또한 결정 동작에 해당한다.Meanwhile, in FIG. 3, when the value of the selected hidden information bit is MPS, an operation of selecting hidden information bits is defined as a selection operation (indicated by a dotted line in FIG. 3). The operation of determining the value to be replaced by the hidden information bits selected by the selection operation is defined as a decision operation (indicated by the solid line in FIG. 3). Meanwhile, when the value of the selected hidden information bit is LPS, the operation of substituting the predetermined value also corresponds to the determination operation.

따라서 상술한 선택 동작 및 결정 동작에 의해 가역 정보 은닉을 이용한 정보 비트 열 X의 무손실 압축이 이루어질 수 있으며, 상기 무손실 압축에 의해서는 압축된 (2m+1)진 정보 심볼 열 Z'을 얻을 수 있다. 상기 압축된 정보 심볼 열 Z'은 엔트로피 압축기에 의해 압축이 이루어진다.Therefore, lossless compression of the information bit string X using the reversible information concealment can be performed by the above-described selection and determining operations, and by the lossless compression, a compressed (2 m +1) encoded information symbol string Z 'can be obtained. have. The compressed information symbol string Z 'is compressed by an entropy compressor.

한편 도 3에서 예시하고 있는 무손실 압축 기법은 다양한 형태로의 구현이 가능할 것이며, 하기 <표 2>은 매틉랩 (MATLAP) 표기법을 적용하여 도 3에서 예시한 무손실 압축 기법을 구현한 예를 보이고 있다.Meanwhile, the lossless compression scheme illustrated in FIG. 3 may be implemented in various forms, and Table 2 shows an example of implementing the lossless compression scheme illustrated in FIG. 3 by applying a MATLAP notation. .

Figure 112012049095598-pct00003
Figure 112012049095598-pct00003

A-2. 제2실시 예 (압축 기술)A-2. Second Embodiment (Compression Technology)

도 4는 본 발명의 제2실시 예에 따른 압축장치의 구성을 보이고 있다.4 shows a configuration of a compression device according to a second embodiment of the present invention.

도 4를 참조하면, 비트 분리부(410)는 정보 비트 열 X를 입력으로 하고, 상기 정보 비트 열 X로부터 피 은닉 정보 열 Yn과 은닉 정보 열 Vk을 분리한다.Referring to FIG. 4, the bit separator 410 receives an information bit string X, and separates the hidden information string Y n and the hidden information string V k from the information bit string X.

여기서 상기 피 은닉 정보 열 Yn은 은닉 정보 열 Vk을 숨기기 위한 정보 비트 열을 의미하며, 상기 은닉 정보 열 Vk은 피 은닉 정보 열 Yn에 숨길 은닉 정보들의 비트 열을 의미한다. 상기 피 은닉 정보 열을 지칭하는 Yn와 상기 은닉 정보 열을 지칭하는 Vk에서 아래 첨자는 해당 정보 열의 길이를 의미한다. 이때 상기 k는 n ×p ×m 의해 결정된다. 여기서 상기 n은 피 은닉 정보 열 Yn의 길이를 의미하고, p는 피 은닉 정보 열 Yn에서 MPS의 확률, 즉 상기 피 은닉 정보 열 Yn에서 MPS를 가지는 비트가 선택될 확률을 의미하며, m은 하나의 피 은닉 정보 비트에 은닉할 은닉 정보 비트의 수를 의미한다. 상기 은닉 정보 비트로 선택할 비트 수 m에 대한 예측 방안을 일반화시키면 하기 <수 2>과 같이 정리할 수 있다.And wherein the to-be-concealed information column Y n means the data bit stream to hide the secret information k and V columns, column V k the secret information means a bit string of the secret information to hide the blood column Y n secret information. A subscript in Y n indicating the hidden information column and V k indicating the hidden information column indicates the length of the corresponding information column. K is determined by n x p x m. Wherein n means the length of the column Y n blood secret information and, p stands for the probability that the bit with the MPS on the probability, i.e., column Y n the blood secret information of the MPS in the column Y n blood secret information is selected, and m means the number of hidden information bits to be hidden in one hidden information bit. Generalizing the prediction method for the number of bits m to be selected as the hidden information bits can be summarized as follows.

Figure 112012049095598-pct00004
Figure 112012049095598-pct00004

상기 <수학식 2>에 의해 계산된 결과에서 나머지가 존재할 경우에는 획득한 몫에 1을 더한 값을 m으로 결정한다.If there is a remainder in the result calculated by Equation 2, the value obtained by adding 1 to the obtained quotient is determined as m.

상기 비트 분리부(410)에 의해 분리된 피 은닉 정보 열 Yn과 은닉 정보 열 Vk은 정보 은닉부(420)로 제공한다. 하지만 무손실 압축을 위해 피 은닉 정보 열 Yn과 은닉 정보 열 Vk이 구분되어 입력되는 경우에는 상기 비트 분리부(410)가 별도로 구비될 필요가 없다. 즉 피 은닉 정보 열 Yn과 은닉 정보 열 Vk이 구분되어 입력되는 경우에 상기 비트 분리부(410)는 무손실 압축을 위한 필수 구성이라 할 수 없다.The hidden information column Y n and the hidden information column V k separated by the bit separation unit 410 are provided to the information hiding unit 420. However, when the hidden information column Y n and the hidden information column V k are separately inputted for lossless compression, the bit separator 410 does not need to be separately provided. That is, when the hidden information string Y n and the hidden information string V k are input separately, the bit separator 410 may not be an essential component for lossless compression.

상기 정보 은닉부(420)는 가역 정보 은닉을 이용하여 피 은닉 정보 열 Yn에 은닉 정보 열 Vk을 은닉함으로써, 무손실 압축에 의한 압축 심볼 열 Z'을 출력한다.The information concealment unit 420 hides the hidden information string V k in the hidden information string Y n by using reversible information concealment, thereby outputting the compressed symbol string Z 'by lossless compression.

예컨대 상기 정보 은닉부(420)는 피 은닉 정보 열 Yn으로부터 피 은닉 정보 비트에 상응한 1 비트를 선택하고, 상기 선택한 피 은닉 정보 비트 값이 MPS인지를 판단한다.For example, the information hiding unit 420 selects one bit corresponding to the hidden information bit from the hidden information string Y n , and determines whether the selected hidden information bit value is MPS.

만약 상기 선택한 피 은닉 정보 비트 값이 MPS라고 판단되면, 은닉 정보 열 Vk로부터 은닉 정보 비트들에 상응한 m 비트를 선택한다. 그리고 상기 선택한 피 은닉 정보 비트 값을 상기 선택한 은닉 정보 비트들에 대응하는 값으로 치환한다.If it is determined that the selected hidden information bit value is MPS, the m bits corresponding to the hidden information bits are selected from the hidden information string V k . The selected hidden information bit value is replaced with a value corresponding to the selected hidden information bit.

또한 상기 선택한 은닉 정보 비트들에 대응하는 값은 상기 <수 2>에 의해 획득한 m을 고려하여 결정하는 것이 바람직하다. 예컨대 상기 m이 2인 경우, 은닉 정보 비트들에 대응하여 미리 결정된 값은 하기 <표 3>에서 보이고 있는 바와 같이 0, 1, 2, 3이 될 수 있다.In addition, the value corresponding to the selected hidden information bits is preferably determined in consideration of m obtained by the <number 2>. For example, when m is 2, the predetermined value corresponding to the hidden information bits may be 0, 1, 2, and 3 as shown in Table 3 below.

Figure 112012049095598-pct00005
Figure 112012049095598-pct00005

그렇지 않고 상기 선택한 피 은닉 정보 비트 값이 MPS가 아닌 LPS라고 판단되면, 상기 선택한 피 은닉 정보 비트 값을 미리 설정된 값으로 치환한다. 이때 상기 미리 설정된 값은 상기 추가로 선택한 은닉 정보 비트들에 대응하는 값과 중복되어서는 안된다. 일 예로써 상기 미리 설정된 값은 2m이 될 수 있다. 여기서 m은 앞에서 정의된 바와 같이 피 은닉 정보 비트의 값이 MPS인 경우에 선택되는 은닉 정보 비트들의 비트 수이다.Otherwise, if it is determined that the selected hidden information bit value is an LPS rather than an MPS, the selected hidden information bit value is replaced with a preset value. In this case, the preset value should not overlap with a value corresponding to the additionally selected hidden information bits. As an example, the preset value may be 2 m . Where m is the number of bits of the hidden information bits selected when the value of the hidden information bits is MPS as defined above.

상술한 바와 같이 상기 정보 은닉부(420)에서 수행되는 무손실 압축의 구체적인 예에 의한 설명은 후술될 것이다.As described above, a description of a specific example of lossless compression performed by the information concealment unit 420 will be described later.

상기 정보 은닉부(420)에 의해 출력되는 압축 심볼 열 Z'n 은 부호화부(430)로 입력된다. 상기 부호화부(430)는 상기 정보 은닉부(420)로부터 입력되는 압축 심볼 열 Z'n 을 소정의 코딩 기법에 의해 압축하여 Zn을 출력한다.Compressed symbol string Z ' n output by the information concealment unit 420 Is input to the encoder 430. The encoder 430 compresses the compressed symbol string Z ' n input from the information concealment unit 420 by a predetermined coding scheme and outputs Z n .

상기 부호화부(430)에는 일 예로 엔트로피 코딩 (Entropy coding) 기법이 적용될 수 있다. 상기 엔트로피 코딩 기법은 출현 빈도가 높은 심볼에 짧은 코드를 배정하고 빈도가 낮은 심볼에 긴 코드를 배정하는 코딩 기법이다. 상기 엔트로피 코딩 기법은 일명 가변 길이 코딩(Variable-length coding) 기법이라고도 한다.As an example, an entropy coding technique may be applied to the encoder 430. 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.

한편, 엔트로피 코딩 기법에서는 심볼의 빈도만을 고려하는데, 상기 엔트로피 코딩 기법으로는 허프만 코더 (Huffman coder)와 산술 부호 코더 중 어느 것이나 사용할 수 있다. 상기 엔트로피 코딩 기법은 미리 각 심볼의 출현 빈도를 알아야 최적의 압축이 가능하다. 이때 허프만 코딩을 사용하는 경우에는 각각의 심볼에 하나씩 코드워드를 배정하므로 정수 길이의 코드워드만 허용한다.Meanwhile, the entropy coding scheme only considers the frequency of symbols. As the entropy coding scheme, 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.

도 5는 본 발명의 제2실시 예에 따른 압축 장치에서 데이터 압축을 위한 제어 흐름을 보이고 있다.5 shows a control flow for data compression in the compression apparatus according to the second embodiment of the present invention.

도 5를 참조하면, 압축 장치는 510단계에서 2진 정보 비트 열을 외부로부터 입력 받는다. 그 후 상기 압축 장치는 512단계에서 상기 2진 정보 비트 열로부터 피 은닉 정보 비트 열과 은닉 정보 비트 열을 분리한다. 이때 상기 압축 장치는 상기 피 은닉 정보 비트 열의 길이 n과 MPS의 선택 확률 p 및 은닉 정보 비트 열의 길이 k 또는 정보 은닉을 위해 선택할 은닉 정보 비트의 수 m을 기반으로 상기 피 은닉 정보 비트 열과 은닉 정보 비트 열을 분리할 수 있다.Referring to FIG. 5, in operation 510, the compression apparatus receives a binary information bit string from an external source. The compression apparatus then separates the hidden information bit stream and the hidden information bit stream from the binary information bit stream in step 512. At this time, the compression apparatus is based on the length n of the hidden information bit stream, the selection probability p of the MPS, the length k of the hidden information bit stream, or the number m of hidden information bits to be selected for information concealment. The heat can be separated.

하지만 상기 피 은닉 정보 비트 열과 상기 은닉 정보 비트 열 각각이 2진 정보 비트 열로써 구분되어 입력되는 경우에는 상기 512단계에서의 동작은 생략될 수 있다.However, when each of the hidden information bit stream and the hidden information bit stream is input as divided into binary information bit streams, the operation in step 512 may be omitted.

상기 압축 장치는 상기 피 은닉 정보 비트 열과 상기 은닉 정보 비트 열의 분리가 완료되면, 514단계로 진행하여 상기 피 은닉 정보 비트 열로부터 피 은닉 정보 비트를 선택한다. 상기 압축 장치는 516단계에서 상기 선택한 피 은닉 정보 비트 값이 MPS인지를 판단한다. 앞에서도 정의된 바와 같이 상기 MPS는 상기 피 은닉 정보 비트 열을 구성하는 비트 값들 중 확률이 가장 높은 값을 의미한다.When the separation of the hidden information bit string and the hidden information bit string is completed, the compression apparatus proceeds to step 514 to select the hidden information bit from the hidden information bit string. In operation 516, the compression apparatus determines whether the selected hidden information bit value is an MPS. As defined above, the MPS means a value having the highest probability among the bit values constituting the hidden information bit string.

상기 압축 장치는 상기 선택한 피 은닉 정보 비트 값이 MPS가 아닌 LPS라고 판단하면, 518단계에서 상기 선택한 피 은닉 정보 비트 값을 미리 결정된 값으로 치환한다. 이때 상기 미리 결정된 값은 MPS를 가지는 피 은닉 정보 비트에 대해 치환할 값과 중복되어서는 안된다. 일 예로 상기 미리 결정된 값은 2m이 될 수 있다.If the compression apparatus determines that the selected hidden information bit value is an LPS rather than an MPS, the compression apparatus replaces the selected hidden information bit value with a predetermined value in step 518. In this case, the predetermined value should not overlap with the value to be replaced for the hidden information bit having the MPS. For example, the predetermined value may be 2 m .

하지만 상기 선택한 피 은닉 정보 비트 값이 MPS라고 판단하면, 상기 압축 장치는 520단계에서 상기 선택한 피 은닉 정보 비트에 은닉할 적어도 하나의 은닉 정보 비트를 선택한다. 상기 적어도 하나의 은닉 정보 비트는 상기 은닉 정보 비트 열로부터 m 개씩 순차적으로 선택된다.However, if it is determined that the value of the selected hidden information bit is MPS, the compression apparatus selects at least one hidden information bit to conceal the selected hidden information bit in step 520. The at least one hidden information bit is sequentially selected m from the hidden information bit string.

상기 적어도 하나의 은닉 정보 비트를 선택하면, 상기 압축 장치는 522단계에서 상기 선택한 피 은닉 정보 비트 값을 상기 선택한 적어도 하나의 은닉 정보 비트에 대응하여 미리 결정된 값으로 치환한다. 이때 미리 결정된 값은 은닉 정보 비트로 선택한 비트 수를 고려하여 결정하여야 한다. 이에 대한 일 예는 상기 <표 3>에서 보이고 있다.When the at least one hidden information bit is selected, the compression device replaces the selected hidden information bit value with a predetermined value corresponding to the selected at least one hidden information bit (522). At this time, the predetermined value should be determined in consideration of the number of bits selected as the hidden information bits. An example of this is shown in Table 3 above.

상기 압축 장치는 상기 518단계 또는 상기 522단계에서 피 은닉 정보 비트를 다른 값으로 치환하는 동작이 완료되면, 524단계에서 가역 정보 은닉을 이용한 무손실 압축이 완료되었는지를 판단한다.When the operation of replacing the hidden information bit with another value is completed in step 518 or 522, the compression apparatus determines whether lossless compression using reversible information concealment is completed in step 524.

상기 압축 장치는 무손실 압축이 완료되지 않았다고 판단되면, 상기 514단계로 리턴하여 새로 선택한 피 은닉 정보 비트에 대한 무손실 압축 동작을 반복하여 수행한다.If it is determined that lossless compression is not completed, the compression apparatus returns to step 514 to repeatedly perform a lossless compression operation on the newly selected hidden information bit.

하지만 무손실 압축이 완료되었다고 판단되면, 상기 압축 장치는 상술한 동작에 의해 생성된 정보 심볼 열에 대한 부호화를 수행한다. 이때 부호화는 엔트로피 압축 기법에 의해 이루어질 수 있다. 상기 엔트로피 압축 기법은 앞에서도 밝힌 바와 같이 허프만 코드 또는 산술 부호 코더 중 어떠한 것을 사용하여도 좋다.However, if it is determined that lossless compression is completed, the compression apparatus performs encoding on the information symbol string generated by the above-described operation. In this case, 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.

상기 압축 장치는 528단계에서 부호화를 통해 압축된 정보 심볼 열에 대한 패킹을 통해 정보 패킷을 생성한다.In operation 528, the compression apparatus generates an information packet through packing of the information symbol string compressed through encoding.

도 6은 본 발명의 제2실시 예에서 제안하는 압축 기술에 따라 무손실 압축을 수행하는 예를 보이고 있다.6 shows an example of performing lossless compression according to the compression technique proposed in the second embodiment of the present invention.

도 6에서는 압축을 위해 입력되는 이진 문자 열인 정보 비트 열 X로부터 피 은닉 정보 비트 열과 은닉 정보 비트 열을 분리한다. 이때 상기 정보 비트 열 X로부터 분리되는 피 은닉 정보 비트 열의 길이가 n이고, 은닉 정보 비트 열의 길이가 k라고 가정한다. 그리고 MPS가 '0'이고, LPS가 '1'이라 가정하며, 상기 피 은닉 정보 비트 열에서 MPS인 '0'의 값을 가지는 비트가 피 은닉 정보 비트로 선택될 확률이 p라고 가정한다.In FIG. 6, the hidden information bit stream and the hidden information bit stream are separated from the information bit string X, which is a binary character string input for compression. In this case, it is assumed that the length of the hidden information bit string separated from the information bit string X is n, and the length of the hidden information bit string is k. In addition, it is assumed that MPS is '0' and LPS is '1', and a probability that a bit having a value of '0' which is MPS in the hidden information bit string is selected as the hidden information bit is p.

따라서 상기 정보 비트 열 X에서 선택될 피 은닉 정보 비트 중 그 비트 값이 '0'인 비트의 수는 n ×p라고 예측할 수 있으며, 상기 예측한 MPS를 가지는 피 은닉 정보 비트의 수에 의해 은닉 정보 비트로 선택할 비트 수 m을 예측할 수 있다. 상기 은닉 정보 비트로 선택할 비트 수 m에 대한 예측은 앞에서 정의된 <수 2>에 의해 일반화시킬 수 있다.Therefore, it is possible to predict that the number of bits whose bit value is '0' among the hidden information bits to be selected in the information bit string X is n × p, and the hidden information is determined by the number of hidden information bits having the predicted MPS. The number of bits m to select as bits can be predicted. The prediction of the number of bits m to select as the hidden information bits can be generalized by <number 2> defined above.

또한 선택한 피 은닉 정보 비트의 값이 MPS인 경우, m 개의 은닉 정보 비트들에 의해 상기 선택한 피 은닉 정보 비트의 값인 MPS를 치환할 값의 일 예는 앞에서 <표 3>에 의해 정의된 바와 같다.In addition, when the value of the selected hidden information bit is MPS, an example of a value to replace MPS, which is the value of the selected hidden information bit, by m hidden information bits is as defined in Table 3 above.

한편 상기 <표 1>에 의한 미리 결정된 값에는 LPS에 상응하는 값인 '1'이 포함되어 있다. 따라서 LPS에 상응하는 값인 '1'이 피 은닉 정보 비트로 선택될 경우에는 상기 선택된 피 은닉 정보 비트의 값을 상기 <표 1>에서 미리 결정된 값으로 정의하고 있지 않은 다른 값으로 치환할 필요가 있다. 이를 위해 도 6에서는 상기 LPS에 상응하는 값인 '1'이 피 은닉 정보 비트로 선택될 경우, 상기 선택된 피 은닉 정보 비트의 값을 '4'로 치환하는 것을 가정한다.Meanwhile, the predetermined value according to <Table 1> includes '1', which is a value corresponding to LPS. Therefore, when the value '1' corresponding to the LPS is selected as the hidden information bit, it is necessary to replace the value of the selected hidden information bit with another value which is not defined as a predetermined value in Table 1 above. To this end, in FIG. 6, it is assumed that when the value '1' corresponding to the LPS is selected as the hidden information bit, the value of the selected hidden information bit is replaced with '4'.

도 6을 참조하면, 압축장치는 이진 문자 열인 정보 비트 열 X로부터 길이가 7인 피 은닉 정보 비트 열 Y7과 길이가 10인 은닉 정보 비트 열 V10을 분리한다. 도 6에서는 정보 비트 열 X가 '01000010100101100'이고, 상기 정보 비트 열 X의 앞에서 7 비트에 해당하는 '0100001'을 피 은닉 정보 비트 열 Y7로 분리하고, 그 이후의 10 비트에 해당하는 '0100101100'을 은닉 정보 비트 열 V10로 분리한다.Referring to FIG. 6, the compression apparatus separates a hidden information bit string Y 7 having a length of 7 and a hidden information bit string V 10 having a length of 10 from an information bit string X that is a binary character string. In FIG. 6, the information bit string X is '01000010100101100', '0100001' corresponding to 7 bits in front of the information bit string X is separated into the hidden information bit string Y 7 , and '0100101100' corresponding to 10 bits thereafter. 'Is separated by a hidden information bit string V 10 .

그리고 상기 분리된 피 은닉 정보 비트 열 Y7로부터 1 비트 단위의 피 은닉 정보 비트를 선택하는 선택 (selection) 동작 (도 6에서 점선으로 표시)과, 상기 선택된 피 은닉 정보 비트의 값을 치환할 값을 결정하는 결정 (decision) 동작 (도 6에서 실선으로 표시)을 수행한다.And a selection operation (indicated by a dotted line in FIG. 6) of selecting the hidden information bit in units of 1 bit from the separated hidden information bit string Y 7 , and a value to replace the value of the selected hidden information bit. A decision operation (indicated by a solid line in FIG. 6) is performed to determine.

보다 구체적으로 설명하면, 상기 분리된 피 은닉 정보 비트 열 Y7의 첫 번째 비트를 피 은닉 정보 비트로 선택한다. 이때 상기 선택한 첫 번째 피 은닉 정보 비트의 값이 MPS에 해당하는 '0'이므로, 상기 압축장치는 상기 분리된 은닉 정보 비트 열 V10로부터 2 개의 은닉 정보 비트들을 선택한다. 이때 상기 2 개의 은닉 정보 비트들의 선택은 처음 비트부터 순차적으로 선택하는 것이 바람직하다. 따라서 상기 2 개의 은닉 정보 비트들로는 '01'이 선택된다.More specifically, the first bit of the separated hidden information bit string Y 7 is selected as the hidden information bit. In this case, since the value of the selected first hidden information bit is '0' corresponding to MPS, the compression apparatus selects two hidden information bits from the separated hidden information bit string V 10 . In this case, the selection of the two hidden information bits is preferably selected sequentially from the first bit. Accordingly, '01' is selected as the two hidden information bits.

그리고 상기 선택된 피 은닉 정보 비트의 값 '0'을 상기 선택된 은닉 정보 비트들인 '01'에 대응하여 상기 <표 3>에서 정의하고 있는 미리 결정된 값인 '1'로 치환한다. 이로 인해 결과적으로 '001'로 구성된 3 비트가 하나의 값인 '1'로 압축되었음을 확인할 수 있다. 즉 '01'로 구성된 2 비트의 은닉 정보 비트들이 MPS를 가지는 1 비트의 피 은닉 정보 비트에 은닉됨을 알 수 있다.The value '0' of the selected hidden information bit is replaced with '1', which is a predetermined value defined in Table 3, corresponding to the selected hidden information bits '01'. As a result, it can be confirmed that 3 bits of '001' are compressed to one value of '1'. That is, it can be seen that two bits of hidden information bits composed of '01' are hidden in one bit of hidden information bits having MPS.

그 후 상기 압축 장치는 상기 분리된 피 은닉 정보 비트 열 Y7의 두 번째 비트를 피 은닉 정보 비트로 선택한다. 이때 상기 선택한 두 번째 피 은닉 정보 비트의 값이 LPS에 해당하는 '1'이므로, 상기 압축 장치는 상기 선택한 피 은닉 정보 비트의 값인 '1'을 미리 결정된 값인 '4'로 치환한다.The compression device then selects the second bit of the separated hidden information bit string Y 7 as the hidden information bit. In this case, since the value of the selected second hidden information bit is '1' corresponding to the LPS, the compression apparatus replaces '1', which is the value of the selected hidden information bit, with '4', which is a predetermined value.

다음으로 상기 압축 장치는 상기 분리된 피 은닉 정보 비트 열 Y7의 세 번째 비트를 피 은닉 정보 비트로 선택한다. 이때 상기 선택한 세 번째 피 은닉 정보 비트의 값이 MPS에 해당하는 '0'이므로, 상기 압축장치는 상기 분리된 은닉 정보 비트 열 V10로부터 2 개의 은닉 정보 비트들을 선택한다. 이때 상기 2 개의 은닉 정보 비트들의 선택은 앞에서 은닉 정보 비트들로 선택된 비트에 연속하는 2 개의 비트를 선택하는 것이 바람직하다. 따라서 상기 2 개의 은닉 정보 비트들로는 '00'이 선택된다.The compression device then selects the third bit of the separated hidden information bit string Y 7 as the hidden information bit. At this time, since the value of the selected third hidden information bit is '0' corresponding to the MPS, the compression apparatus selects two hidden information bits from the separated hidden information bit string V 10 . At this time, it is preferable that the selection of the two hidden information bits selects two bits subsequent to the bit selected as the hidden information bits. Accordingly, '00' is selected as the two hidden information bits.

그리고 상기 선택된 피 은닉 정보 비트의 값 '0'을 상기 선택된 은닉 정보 비트들인 '00'에 대응하여 상기 <표 3>에서 정의하고 있는 미리 결정된 값인 '0'으로 치환한다. 이로 인해 결과적으로 '000'으로 구성된 3 비트가 하나의 값인 '0'으로 압축되었음을 확인할 수 있다. 즉 '00'로 구성된 2 비트의 은닉 정보 비트들이 MPS를 가지는 1 비트의 피 은닉 정보 비트에 은닉됨을 알 수 있다.The value '0' of the selected hidden information bit is replaced with '0', which is a predetermined value defined in Table 3, corresponding to the selected hidden information bits '00'. As a result, it can be confirmed that 3 bits composed of '000' are compressed to one value '0'. That is, it can be seen that two bits of hidden information bits composed of '00' are hidden in one bit of hidden information bits having MPS.

다음으로 상기 압축 장치는 상기 분리된 피 은닉 정보 비트 열 Y7의 네 번째 비트를 피 은닉 정보 비트로 선택한다. 이때 상기 선택한 네 번째 피 은닉 정보 비트의 값이 MPS에 해당하는 '0'이므로, 상기 압축장치는 상기 분리된 은닉 정보 비트 열 V10로부터 2 개의 은닉 정보 비트들을 선택한다. 이때 상기 2 개의 은닉 정보 비트들의 선택은 앞에서 은닉 정보 비트들로 선택된 비트에 연속하는 2 개의 비트를 선택하는 것이 바람직하다. 따라서 상기 2 개의 은닉 정보 비트들로는 '10'이 선택된다.The compression device then selects the fourth bit of the separated hidden information bit string Y 7 as the hidden information bit. In this case, since the value of the selected fourth hidden information bit is '0' corresponding to MPS, the compression apparatus selects two hidden information bits from the separated hidden information bit string V 10 . At this time, it is preferable that the selection of the two hidden information bits selects two bits subsequent to the bit selected as the hidden information bits. Accordingly, '10' is selected as the two hidden information bits.

그리고 상기 선택된 피 은닉 정보 비트의 값 '0'을 상기 선택된 은닉 정보 비트들인 '10'에 대응하여 상기 <표 3>에서 정의하고 있는 미리 결정된 값인 '2'로 치환한다. 이로 인해 결과적으로 '010'으로 구성된 3 비트가 하나의 값인 '2'로 압축되었음을 확인할 수 있다. 즉 '10'로 구성된 2 비트의 은닉 정보 비트들이 MPS를 가지는 1 비트의 피 은닉 정보 비트에 은닉됨을 알 수 있다.The value '0' of the selected hidden information bit is replaced with '2', which is a predetermined value defined in Table 3, corresponding to the selected hidden information bits '10'. As a result, it can be confirmed that 3 bits composed of '010' are compressed to one value '2'. That is, it can be seen that two bits of hidden information bits composed of '10' are hidden in one bit of hidden information bits having MPS.

다음으로 상기 압축 장치는 상기 분리된 피 은닉 정보 비트 열 Y7의 다섯 번째 비트를 피 은닉 정보 비트로 선택한다. 이때 상기 선택한 다섯 번째 피 은닉 정보 비트의 값이 MPS에 해당하는 '0'이므로, 상기 압축장치는 상기 분리된 은닉 정보 비트 열 V10로부터 2 개의 은닉 정보 비트들을 선택한다. 이때 상기 2 개의 은닉 정보 비트들의 선택은 앞에서 은닉 정보 비트들로 선택된 비트에 연속하는 2 개의 비트를 선택하는 것이 바람직하다. 따라서 상기 2 개의 은닉 정보 비트들로는 '11'이 선택된다.The compression device then selects the fifth bit of the separated hidden information bit string Y 7 as the hidden information bit. In this case, since the value of the selected fifth hidden information bit is '0' corresponding to MPS, the compression apparatus selects two hidden information bits from the separated hidden information bit string V 10 . At this time, it is preferable that the selection of the two hidden information bits selects two bits subsequent to the bit selected as the hidden information bits. Accordingly, '11' is selected as the two hidden information bits.

그리고 상기 선택된 피 은닉 정보 비트의 값 '0'을 상기 선택된 은닉 정보 비트들인 '11'에 대응하여 상기 <표 3>에서 정의하고 있는 미리 결정된 값인 '3'으로 치환한다. 이로 인해 결과적으로 '011'로 구성된 3 비트가 하나의 값인 '3'으로 압축되었음을 확인할 수 있다. 즉 '11'로 구성된 2 비트의 은닉 정보 비트들이 MPS를 가지는 1 비트의 피 은닉 정보 비트에 은닉됨을 알 수 있다.The value '0' of the selected hidden information bit is replaced with '3', which is a predetermined value defined in Table 3, corresponding to '11', which is the selected hidden information bits. As a result, it can be confirmed that 3 bits composed of '011' are compressed to one value '3'. That is, it can be seen that two bits of hidden information bits composed of '11' are hidden in one bit of hidden information bits having MPS.

다음으로 상기 압축 장치는 상기 분리된 피 은닉 정보 비트 열 Y7의 여섯 번째 비트를 피 은닉 정보 비트로 선택한다. 이때 상기 선택한 여섯 번째 피 은닉 정보 비트의 값이 MPS에 해당하는 '0'이므로, 상기 압축장치는 상기 분리된 은닉 정보 비트 열 V10로부터 2 개의 은닉 정보 비트들을 선택한다. 이때 상기 2 개의 은닉 정보 비트들의 선택은 앞에서 은닉 정보 비트들로 선택된 비트에 연속하는 2 개의 비트를 선택하는 것이 바람직하다. 따라서 상기 2 개의 은닉 정보 비트들로는 '00'이 선택된다.Next, the compression device selects the sixth bit of the separated hidden information bit string Y 7 as the hidden information bit. In this case, since the value of the selected sixth hidden information bit is '0' corresponding to MPS, the compression apparatus selects two hidden information bits from the separated hidden information bit string V 10 . At this time, it is preferable that the selection of the two hidden information bits selects two bits subsequent to the bit selected as the hidden information bits. Accordingly, '00' is selected as the two hidden information bits.

그리고 상기 선택된 피 은닉 정보 비트의 값 '0'을 상기 선택된 은닉 정보 비트들인 '00'에 대응하여 상기 <표 3>에서 정의하고 있는 미리 결정된 값인 '0'으로 치환한다. 이로 인해 결과적으로 '000'로 구성된 3 비트가 하나의 값인 '0'으로 압축되었음을 확인할 수 있다. 즉 '00'로 구성된 2 비트의 은닉 정보 비트들이 MPS를 가지는 1 비트의 피 은닉 정보 비트에 은닉됨을 알 수 있다.The value '0' of the selected hidden information bit is replaced with '0', which is a predetermined value defined in Table 3, corresponding to the selected hidden information bits '00'. As a result, it can be confirmed that 3 bits composed of '000' are compressed to one value '0'. That is, it can be seen that two bits of hidden information bits composed of '00' are hidden in one bit of hidden information bits having MPS.

마지막으로 상기 압축 장치는 상기 분리된 피 은닉 정보 비트 열 Y7의 일곱 번째 비트를 피 은닉 정보 비트로 선택한다. 이때 상기 선택한 일곱 번째 피 은닉 정보 비트의 값이 LPS에 해당하는 '1'이므로, 상기 압축 장치는 상기 선택한 피 은닉 정보 비트의 값인 '1'을 미리 결정된 값인 '4'로 치환한다.Finally, the compression device selects the seventh bit of the separated hidden information bit string Y 7 as the hidden information bit. In this case, since the value of the selected seventh hidden information bit is '1' corresponding to the LPS, the compression apparatus replaces '1', which is the value of the selected hidden information bit, with '4', which is a predetermined value.

상술한 동작에 의해 최종적으로 무손실 압축에 의해 출력되는(2m+1) 진 정보 심볼 열 Z'n은 '1402304'가 된다. 그 후 상기 가역 정보 은닉에 의해 압축된 (2m+1) 진 정보 심볼 열 Z'n은 엔트로피 압축기에 의해 압축이 이루어진다.By the above-described operation, the binary information symbol string Z ' n finally outputted by lossless compression (2 m + 1) becomes'1402304'. The (2 m +1) binary information symbol string Z ' n compressed by the reversible information concealment is then compressed by an entropy compressor.

한편 도 6에서 예시하고 있는 무손실 압축 기법은 다양한 형태로의 구현이 가능할 것이며, 하기 <표 4>은 매틉랩 (MATLAP) 표기법을 적용하여 도 6에서 예시한 무손실 압축 기법을 구현한 예를 보이고 있다.Meanwhile, the lossless compression technique illustrated in FIG. 6 may be implemented in various forms, and Table 4 shows an example of implementing the lossless compression technique illustrated in FIG. 6 by applying a MATLAP notation. .

Figure 112012049095598-pct00006
Figure 112012049095598-pct00006

한편 앞에서 살펴본 본 발명의 제1 및 제2실시 예에 따른 압축 기술에서는 MPS를 기반으로 하여 압축을 수행하도록 하고 있다. 이로 인해 본 발명의 제1 및 제2실시 예에 의해 압축된 정보 심볼을 복원하기 위해서는 MPS에 관한 정보가 추가로 요구될 수 있다. 따라서 본 발명의 제1 및 제2실시 예에 의해 압축된 정보 심볼의 복원을 위해 MPS에 관한 정보가 추가로 기록될 수 있도록 하여야 한다. 이때 상기 MPS에 관한 정보는 압축을 위한 입력 정보 비트 열 또는 피 은닉 정보 비트 열에서 MPS를 가지는 비트가 피 은닉 정보 비트로 선택될 수 있는 확률 p 등이 될 수 있다.Meanwhile, in the compression technology according to the first and second embodiments of the present invention described above, compression is performed based on MPS. Therefore, in order to recover the information symbols compressed by the first and second embodiments of the present invention, information on the MPS may be additionally required. Therefore, in order to recover the information symbols compressed by the first and second embodiments of the present invention, information about the MPS should be additionally recorded. In this case, the information about the MPS may be a probability p such that a bit having the MPS is selected as the hidden information bit in the input information bit stream or the hidden information bit stream for compression.

B. 복원 기술B. Restoration Technique

먼저 본 발명의 제1실시 예에 따른 압축 기술에 대응한 복원 기술에서는 정보 은닉이 이루어진 정보 심볼 열로부터 2진 정보 비트 열을 복원하는 방안을 마련한다.First, a restoration technique corresponding to a compression technique according to the first embodiment of the present invention provides a method of restoring a binary information bit sequence from an information symbol sequence in which information is concealed.

이를 위해서는 압축된 정보 심볼 각각으로부터 하나의 정보 비트 또는 복수의 정보 비트들을 직접 복원한다. 즉 상기 압축된 정보 심볼의 값이 MPS에 대응하여 치환된 값인 경우에는 상기 압축된 정보 심볼의 값을 MPS로 복원한다. 하지만 상기 압축된 정보 심볼의 값이 MPS에 대응하여 치환된 값이 아닌 경우에는 상기 압축된 정보 심볼의 값을 미리 결정된 값을 가지는 복수의 비트들로 복원한다.For this purpose, one information bit or a plurality of information bits are directly recovered from each of the compressed information symbols. That is, when the value of the compressed information symbol is substituted for the MPS, the value of the compressed information symbol is restored to the MPS. However, when the value of the compressed information symbol is not substituted for the MPS, the value of the compressed information symbol is restored to a plurality of bits having a predetermined value.

다음으로 본 발명의 제2실시 예에 따른 압축 기술에 대응한 복원 기술에서는 정보 은닉이 이루어진 정보 심볼 열로부터 피 은닉 정보 비트 열과 은닉 정보 비트 열을 복원하고, 상기 복원된 피 은닉 정보 비트 열과 은닉 정보 비트 열을 결합하여 2진 정보 비트 열을 출력한다.Next, in the decompression technique corresponding to the compression technique according to the second embodiment of the present invention, the hidden information bit stream and the hidden information bit stream are restored from the information symbol string in which the information is concealed, and the restored hidden information bit stream and the hidden information are restored. Combines a bit string and outputs a binary information bit string.

이를 위해서는 압축된 정보 심볼 각각의 값이 MPS에 대응하여 치환된 값인지 아니면 LPS에 대응하여 치환된 값인지를 판단한다. 그리고 상기 압축된 정보 심볼의 값이 MPS에 대응하여 치환된 값인 경우에는 상기 MPS를 피 은닉 정보 비트로 복원하고, 상기 압축된 정보 심볼의 값에 대응하여 치환된 값을 은닉 정보 비트들로 복원한다. 하지만 상기 압축된 정보 심볼의 값이 LPS에 대응하여 치환된 값인 경우에는 상기 LPS를 피 은닉 정보 비트로만 복원한다.To this end, it is determined whether each of the compressed information symbols has a value substituted for the MPS or a value substituted for the LPS. When the value of the compressed information symbol is a value substituted for the MPS, the MPS is restored to the hidden information bit, and the value substituted for the value of the compressed information symbol is restored to the hidden information bits. However, when the value of the compressed information symbol is a value substituted for the LPS, the LPS is restored only to the hidden information bits.

그 후 상술한 바에 의해 복원된 피 은닉 정보 비트들에 의해 구성된 피 은닉 정보 비트 열과 상기 복원된 은닉 정보 비트들에 의해 구성된 은닉 정보 비트 열을 결합하여 복원이 완료된 2진 정보 비트 열을 획득한다.Thereafter, the hidden information bit string constructed by the hidden hidden information bits restored as described above is combined with the hidden information bit string constructed by the restored hidden information bits to obtain a restored binary information bit string.

B-1. 제1실시 예 (복원 기술)B-1. First Embodiment (Restore Technology)

도 7은 본 발명의 제1실시 예에 따른 복원장치의 구성을 보이고 있다.7 shows a configuration of a restoration apparatus according to the first embodiment of the present invention.

도 7을 참조하면, 복호화부(710)는 복원할 정보 패킷 Z를 입력으로 하고, 상기 복원할 정보 패킷 Z를 소정의 디코딩 기법에 의해 m진 정보 심볼 열 Z'을 출력한다.Referring to FIG. 7, the decoder 710 receives an information packet Z to be restored, and outputs the m information symbol string Z 'by using a decoding method.

상기 복호화부(710)에는 일 예로 엔트로피 코딩 (Entropy coding) 기법에 상응하는 엔트로피 디코딩 기법이 적용될 수 있다. 상기 엔트로피 디코딩 기법에서는 심볼의 빈도만을 고려하는데, 상기 엔트로피 디코딩 기법으로는 허프만 코더 (Huffman coder)에 대응한 디코더와 산술 부호 코더에 대응한 디코더 중 어느 것이나 사용할 수 있다.As an example, an entropy decoding technique corresponding to an entropy coding technique may be applied to the decoder 710. The entropy decoding technique only considers the frequency of symbols, and either the decoder corresponding to the Huffman coder or the decoder corresponding to the arithmetic code coder may be used as the entropy decoding technique.

정보 복원부(720)는 정보 은닉이 이루어진 m진 정보 심볼 열 Z'을 입력으로 하고, 상기 입력되는 정보 은닉이 이루어진 m진 정보 심볼 열 Z'로부터 피 은닉 정보 비트와 은닉 정보 비트를 복원한다.The information reconstruction unit 720 receives the m-decoded information symbol string Z 'which has been concealed information, and restores the hidden information bit and the hidden information bit from the inputted m-decoded information symbol string Z' which has been input.

예컨대 상기 정보 복원부(720)는 상기 m진 정보 심볼 열 Z'로부터 하나의 복원 정보 심볼을 선택한다. 이때 정보 복원을 최초로 시작하는 경우에는 상기 m진 정보 심볼 열 Z'의 첫 번째 정보 심볼을 복원 정보 심볼로 선택하고, 정보 복원이 진행되고 있는 중인 경우에는 현재까지 복원이 이루어진 정보 심볼을 제외한 나머지 정보 심볼들 중 첫 번째 정보 심볼을 복원 정보 심볼로 선택한다.For example, the information reconstruction unit 720 selects one reconstruction information symbol from the m-ary information symbol string Z '. In this case, when information restoration is started for the first time, the first information symbol of the m information symbol string Z 'is selected as a restoration information symbol, and when the restoration of information is in progress, the remaining information except for the information symbol restored until now The first information symbol among the symbols is selected as the restoration information symbol.

그리고 상기 정보 복원부(720)는 상기 선택한 복원 정보 심볼이 LPS에 대응하여 치환된 값인지를 판단한다. 이때 상기 LPS에 대응하여 치환된 값의 일 예는 2m이 될 수 있다. 상기 정보 복원부(720)는 상기 선택한 복원 정보 심볼이 LPS에 대응하여 치환된 값이라고 판단하면, 상기 복원 정보 심볼을 LPS로 복원한다. 하지만 상기 정보 복원부(720)는 상기 선택한 복원 정보 심볼이 LPS에 대응하여 치환된 값이 아니라고 판단하면, 상기 복원 정보 심볼을 피 은닉 정보 비트와 m 개의 은닉 정보 비트들로 복원한다. 이때 상기 피 은닉 정보 비트의 값은 MPS로 복원되며, 상기 m 개의 은닉 정보 비트들은 상기 복원 정보 심볼의 값에 대응하여 미리 결정된 비트들로 복원된다.The information reconstruction unit 720 determines whether the selected reconstruction information symbol is a value substituted for the LPS. In this case, an example of a value substituted in response to the LPS may be 2 m . When the information restoration unit 720 determines that the selected restoration information symbol is a value substituted for the LPS, the information restoration unit 720 restores the restoration information symbol to the LPS. However, if the information restoration unit 720 determines that the selected restoration information symbol is not a value substituted for the LPS, the information restoration unit 720 restores the restoration information symbol into hidden information bits and m hidden information bits. In this case, the value of the hidden information bit is restored to MPS, and the m hidden information bits are restored to predetermined bits corresponding to the value of the recovery information symbol.

하기 <표 5>에서는 선택한 복원 정보 심볼에 대응하여 복원할 피 은닉 정보와 m 개의 은닉 정보 비트들에 대한 일 예를 정의하고 있다.Table 5 below defines an example of the hidden information to be restored and the m hidden information bits corresponding to the selected restoration information symbol.

Figure 112012049095598-pct00007
Figure 112012049095598-pct00007

상기 <표 5>에서는 m이 2인 경우를 가정하고 있다. 그리고 상기 <표 5>에서 MPS는 0, LPS는 1임을 가정하고 있다.In Table 5, it is assumed that m is 2. In Table 5, it is assumed that MPS is 0 and LPS is 1.

따라서 상기 정보 복원부(720)는 복원 정보 심볼로 '2'가 선택되었다면, 2진 정보 비트들로 '010'을 복원한다. 하지만 복원 정보 심볼로 '4'가 선택되었다면, 2진 정보 비트로 '1'을 복원한다.Accordingly, if '2' is selected as the restoration information symbol, the information restoration unit 720 restores '010' to the binary information bits. However, if '4' is selected as the recovery information symbol, '1' is restored to the binary information bit.

한편 상기 정보 복원부(720)는 상기 m진 정보 심볼 열 Z'를 구성하는 모든 정보 심볼들에 대한 복원을 완료하면, 상기 모든 정보 심볼들의 복원에 의해 생성한 2진 정보 비트 열 X를 출력한다.On the other hand, the information restoring unit 720 outputs the binary information bit string X generated by the restoration of all the information symbols when the restoration of all the information symbols constituting the m information symbol string Z 'is completed. .

도 8은 본 발명의 제1실시 예에 따른 복원장치에서 압축 데이터를 복원하기 위한 제어 흐름을 보이고 있다.8 shows a control flow for decompressing compressed data in the decompression device according to the first embodiment of the present invention.

도 8을 참조하면, 복원장치는 810단계에서 입력되는 m진 정보 심볼 열 Z에 대한 복호화를 수행한다. 상기 복호화를 위해 일 예로 엔트로피 코딩 (Entropy coding) 기법에 상응하는 엔트로피 디코딩 기법이 적용될 수 있다. 상기 엔트로피 디코딩 기법에서는 심볼의 빈도만을 고려하는데, 상기 엔트로피 디코딩 기법으로는 허프만 코더 (Huffman coder)에 대응한 디코더와 산술 부호 코더에 대응한 디코더 중 어느 것이나 사용할 수 있다.Referring to FIG. 8, the reconstruction apparatus performs decoding on the m-information symbol string Z input in step 810. For example, an entropy decoding technique corresponding to an entropy coding technique may be applied to the decoding. The entropy decoding technique only considers the frequency of symbols, and either the decoder corresponding to the Huffman coder or the decoder corresponding to the arithmetic code coder may be used as the entropy decoding technique.

상기 복원장치는 상기 m진 정보 심볼 열 Z에 대한 복호화가 완료되면, 812단계에서 상기 복호화가 이루어진 m진 정보 심볼 열 Z'로부터 복원 정보 심볼을 순차적으로 선택한다. 즉 상기 복호화가 이루어진 m진 정보 심볼 열 Z'로부터 복원 정보 심볼을 한 심볼씩 선택한다.When decoding of the m information symbol string Z is completed, the decompression device sequentially selects a reconstruction information symbol from the decoded m information symbol string Z 'in step 812. In other words, a reconstruction information symbol is selected one symbol from the m-decoded information symbol string Z '.

그리고 상기 복원장치는 814단계에서 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값 (일 예로 2m)인지를 판단한다. 상기 복원장치는 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값이라고 판단하면, 816단계로 진행하여 2진 정보 비트의 값을 LPS로 복원한다. 즉 상기 선택한 복원 정보 심볼의 값을 LPS로 복원한다.In operation 814, the restoration apparatus determines whether a value of the selected restoration information symbol is a predetermined value (for example, 2 m ) corresponding to the LPS. If it is determined that the value of the selected restoration information symbol is a predetermined value corresponding to the LPS, the restoration apparatus proceeds to step 816 to restore the binary information bit value to the LPS. That is, the value of the selected restoration information symbol is restored to the LPS.

하지만 상기 복원장치는 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값이 아니라고 판단하면, 818단계로 진행하여 m+1 비트의 2진 정보 비트들의 값을 복원한다. 즉 상기 선택한 복원 정보 심볼의 값을 1비트의 MPS와 미리 결정된 m 비트의 값으로 복원한다. 상기 m 비트의 미리 결정된 값을 복원하는 예에 대해서는 상기 <표 5>에서 보이고 있다.However, if it is determined that the value of the selected restoration information symbol is not a predetermined value corresponding to the LPS, the restoration apparatus proceeds to step 818 to restore the binary information bits of m + 1 bits. That is, the value of the selected restoration information symbol is restored to a value of 1 bit MPS and a predetermined m bit. An example of restoring the predetermined value of the m bits is shown in <Table 5>.

따라서 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값인 경우에는 상기 선택한 복원 정보 심볼이 1비트로 복원되고, 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값이 아닌 경우에는 상기 선택한 복원 정보 심볼이 m+1 비트로 복원된다.Accordingly, when the value of the selected restoration information symbol is a predetermined value corresponding to the LPS, the selected restoration information symbol is restored to 1 bit, and when the value of the selected restoration information symbol is not a predetermined value corresponding to the LPS, the selected restoration information symbol is selected. The recovery information symbol is restored to m + 1 bits.

상기 복원장치는 820단계에서 상기 복호화가 이루어진 m진 정보 심볼 열 Z'을 구성하는 모든 정보 심볼들에 대한 복원이 이루어졌는지를 판단한다. 즉 상기 복호화가 이루어진 m진 정보 심볼 열 Z'에 대한 복원이 완료되었는지를 판단한다.In step 820, the decompression device determines whether decompression of all information symbols constituting the decoded m-information symbol string Z 'has been performed. That is, it is determined whether the restoration of the m-decoded information symbol string Z 'which has been decoded is completed.

만약 복원이 완료되지 않았다고 판단되면, 상기 복원장치는 상기 812단계로 진행하여 다음 복원 정보 심볼을 선택하여 상술한 동작에 의한 복원 동작을 반복하여 수행한다.If it is determined that the restoration is not completed, the restoration apparatus proceeds to step 812 and selects a next restoration information symbol to repeatedly perform the restoration operation by the above-described operation.

하지만 복원이 완료되었다고 판단되면, 상기 복원장치는 822단계에서 앞에서 수행된 복원 동작에 의해 복원이 이루어진 비트들에 의해 2진 정보 비트 열을 생성한다.However, if it is determined that the restoration is completed, the restoration apparatus generates a binary information bit string by the bits in which the restoration is performed by the restoration operation performed in step 822.

도 9는 본 발명의 제1실시 예에서 제안하는 복원 기술에 따라 무손실 압축된 정보 심볼에 대한 복원을 수행하는 예를 보이고 있다. 도 9에서는 MPS가 '0'이고, LPS가 '1'이라 가정하며, 복원을 위해 앞에서 개시한 <표 5>를 이용하도록 한다.FIG. 9 shows an example of performing restoration for a lossless compressed information symbol according to a restoration technique proposed in the first embodiment of the present invention. In FIG. 9, it is assumed that the MPS is '0' and the LPS is '1', and the above-described <Table 5> is used for restoration.

도 9를 참조하면, 복원장치는 m진 정보 심볼 열 Z'인 '24034'로부터 순차적으로 복원 정보 심볼을 선택한다. 즉 상기 복원장치는 2, 4, 0, 3, 4의 순서로 복원 정보 심볼을 선택한다.Referring to FIG. 9, the restoration apparatus sequentially selects a restoration information symbol from '24034' which is the m-information symbol string Z '. That is, the restoration apparatus selects restoration information symbols in the order of 2, 4, 0, 3, 4.

상기 복원장치는 첫 번째 복원 정보 심볼로 '2'를 선택하면, 상기 선택한 복원 정보 심볼 '2'가 LPS에 대응하여 미리 결정된 값인 '4'가 아니므로, 2진 정보 비트의 값을 MPS인 '0'과, 상기 선택한 복원 정보 심볼 '2'에 대응하여 미리 결정된 비트들인 '10'으로 복원한다. 따라서 상기 선택한 복원 정보 심볼 '2'는 '010'의 2진 정보 비트로 복원된다.When the restoration apparatus selects '2' as the first restoration information symbol, since the selected restoration information symbol '2' is not '4' which is a predetermined value corresponding to the LPS, the value of the binary information bit is set to 'MPS'. 0 'and' 10 'which are predetermined bits corresponding to the selected restoration information symbol' 2 '. Thus, the selected restoration information symbol '2' is restored to the binary information bit of '010'.

다음으로 상기 복원장치는 두 번째 복원 정보 심볼로 '4'를 선택하면, 상기 선택한 복원 정보 심볼 '4'가 LPS에 대응하여 미리 결정된 값이므로, 2진 정보 비트의 값을 LPS인 '1'로 복원한다. 그리고 상기 선택한 복원 정보 심볼 '4'에 대응하여 미리 결정된 2진 정보 비트들이 존재하지 않으므로 더 이상의 복원이 이루어지지 않는다. 따라서 상기 선택한 복원 정보 심볼 '4'는 '1'로 복원된다.Next, when the restoration apparatus selects '4' as the second restoration information symbol, since the selected restoration information symbol '4' is a predetermined value corresponding to the LPS, the value of the binary information bit is set to '1' which is the LPS. Restore Further, since there are no predetermined binary information bits corresponding to the selected restoration information symbol '4', no further restoration is performed. Therefore, the selected restoration information symbol '4' is restored to '1'.

다음으로 상기 복원장치는 세 번째 복원 정보 심볼로 '0'을 선택하면, 상기 선택한 복원 정보 심볼 '0'이 LPS에 대응하여 미리 결정된 값인 '4'가 아니므로, 2진 정보 비트의 값을 MPS인 '0'과, 상기 선택한 복원 정보 심볼 '0'에 대응하여 미리 결정된 비트들인 '00'으로 복원한다. 따라서 상기 선택한 복원 정보 심볼 '0'는 '000'의 2진 정보 비트로 복원된다.Next, when the restoration apparatus selects '0' as the third restoration information symbol, since the selected restoration information symbol '0' is not '4' which is a predetermined value corresponding to the LPS, the value of the binary information bit is MPS. Is restored to '00' which is predetermined bits corresponding to '0' and the selected restoration information symbol '0'. Thus, the selected restoration information symbol '0' is restored to binary information bits of '000'.

다음으로 상기 복원장치는 네 번째 복원 정보 심볼로 '3'을 선택하면, 상기 선택한 복원 정보 심볼 '3'이 LPS에 대응하여 미리 결정된 값인 '4'가 아니므로, 2진 정보 비트의 값을 MPS인 '0'과, 상기 선택한 복원 정보 심볼 '3'에 대응하여 미리 결정된 비트들인 '11'로 복원한다. 따라서 상기 선택한 복원 정보 심볼 '3'은 '011'의 2진 정보 비트로 복원된다.Next, when the restoration apparatus selects '3' as the fourth restoration information symbol, since the selected restoration information symbol '3' is not '4' which is a predetermined value corresponding to the LPS, the value of the binary information bit is MPS. Is restored to '11' which is predetermined bits corresponding to '0' and the selected restoration information symbol '3'. Thus, the selected restoration information symbol '3' is restored to the binary information bit of '011'.

마지막으로 상기 복원장치는 다섯 번째 복원 정보 심볼로 '4'를 선택하면, 상기 선택한 복원 정보 심볼 '4'가 LPS에 대응하여 미리 결정된 값이므로, 2진 정보 비트의 값을 LPS인 '1'로 복원한다. 그리고 상기 선택한 복원 정보 심볼 '4'에 대응하여 미리 결정된 2진 정보 비트들이 존재하지 않으므로 더 이상의 복원이 이루어지지 않는다. 따라서 상기 선택한 복원 정보 심볼 '4'는 '1'의 2진 정보 비트로 복원된다.Finally, when the restoration apparatus selects '4' as the fifth restoration information symbol, since the selected restoration information symbol '4' is a predetermined value corresponding to the LPS, the value of the binary information bit is set to '1' which is the LPS. Restore Further, since there are no predetermined binary information bits corresponding to the selected restoration information symbol '4', no further restoration is performed. Thus, the selected restoration information symbol '4' is restored to the binary information bit of '1'.

따라서 상술한 복원 동작에 의해 m진 정보 심볼 열 Z'인 '24034'로부터 2진 정보 비트 열 X인 '010100001110'이 복원된다.Therefore, by the above-described reconstruction operation, the binary information bit string X '010100001110' is restored from '24034' which is the m binary information symbol string Z '.

B-2. 제2실시 예 (복원 기술)B-2. Second Embodiment (Restore Technology)

도 10은 본 발명의 제2실시 예에 따른 복원장치의 구성을 보이고 있다.10 shows a configuration of a restoration apparatus according to a second embodiment of the present invention.

도 10을 참조하면, 복호화부(1010)는 복원할 정보 패킷 Zn을 입력으로 하고, 상기 복원할 정보 패킷 Zn를 소정의 디코딩 기법에 의해 m진 정보 심볼 열 Z'n을 출력한다.10, the decoding unit 1010 is an information packet Z n can restore them to their input, and outputs the binary information packet to be restored m Z n by a predetermined decoding scheme information symbol sequence Z 'n.

상기 복호화부(1010)에는 일 예로 엔트로피 코딩 (Entropy coding) 기법에 상응하는 엔트로피 디코딩 기법이 적용될 수 있다. 상기 엔트로피 디코딩 기법에서는 심볼의 빈도만을 고려하는데, 상기 엔트로피 디코딩 기법으로는 허프만 코더 (Huffman coder)에 대응한 디코더와 산술 부호 코더에 대응한 디코더 중 어느 것이나 사용할 수 있다.As an example, an entropy decoding technique corresponding to an entropy coding technique may be applied to the decoder 1010. The entropy decoding technique only considers the frequency of symbols, and either the decoder corresponding to the Huffman coder or the decoder corresponding to the arithmetic code coder may be used as the entropy decoding technique.

정보 복원부(1012)는 정보 은닉이 이루어진 m진 정보 심볼 열 Z'n을 입력으로 하고, 상기 입력되는 정보 은닉이 이루어진 m진 정보 심볼 열 Z'n로부터 피 은닉 정보 비트와 은닉 정보 비트를 복원한다.The information restoring unit 1012 inputs the m-decoded information symbol string Z ' n on which information concealment has been input, and restores the hidden information bit and the hidden information bit from the inputted m-decoded information symbol string Z' n . do.

예컨대 상기 정보 복원부(1012)는 상기 m진 정보 심볼 열 Z'n로부터 하나의 복원 정보 심볼을 선택한다. 이때 정보 복원을 최초로 시작하는 경우에는 상기 m진 정보 심볼 열 Z'n의 첫 번째 정보 심볼을 복원 정보 심볼로 선택하고, 정보 복원이 진행되고 있는 중인 경우에는 현재까지 복원이 이루어진 정보 심볼을 제외한 나머지 정보 심볼들 중 첫 번째 정보 심볼을 복원 정보 심볼로 선택한다.For example, the information reconstruction unit 1012 selects one reconstruction information symbol from the m-ary information symbol string Z ' n . In this case, when the information restoration is started for the first time, the first information symbol of the m information symbol string Z ' n is selected as a restoration information symbol, and when the restoration of information is in progress, except for the information symbols which have been restored up to now. The first information symbol among the information symbols is selected as the reconstruction information symbol.

그리고 상기 정보 복원부(1012)는 상기 선택한 복원 정보 심볼이 LPS에 대응하여 치환된 값인지를 판단한다. 이때 상기 LPS에 대응하여 치환된 값의 일 예는 2m이 될 수 있다. 상기 정보 복원부(1012)는 상기 선택한 복원 정보 심볼이 LPS에 대응하여 치환된 값이라고 판단하면, 상기 복원 정보 심볼에 대응한 피 은닉 정보 비트 값을 LPS로 복원한다. 하지만 상기 정보 복원부(1012)는 상기 선택한 복원 정보 심볼이 LPS에 대응하여 치환된 값이 아니라고 판단하면, 상기 복원 정보 심볼에 대응하여 피 은닉 정보 비트의 값을 MPS로 복원하고 m 개의 은닉 정보 비트들을 미리 결정된 비트 값들로 복원한다.The information reconstruction unit 1012 determines whether the selected reconstruction information symbol is substituted for the LPS. In this case, an example of a value substituted in response to the LPS may be 2 m . When the information restoration unit 1012 determines that the selected restoration information symbol is a value substituted for the LPS, the information restoration unit 1012 restores the hidden information bit value corresponding to the restoration information symbol to the LPS. However, if the information restoration unit 1012 determines that the selected restoration information symbol is not a value substituted for the LPS, the information restoration unit 1012 restores the value of the hidden information bit to the MPS in response to the restoration information symbol and m hidden information bits. Restore them to predetermined bit values.

하기 <표 6>에서는 선택한 복원 정보 심볼에 대응하여 복원할 피 은닉 정보와 m 개의 은닉 정보 비트들에 대한 일 예를 정의하고 있다.Table 6 below defines an example of the hidden information to be restored and the m hidden information bits corresponding to the selected recovery information symbol.

Figure 112012049095598-pct00008
Figure 112012049095598-pct00008

상기 <표 6>에서는 m이 2인 경우를 가정하고 있다. 그리고 상기 <표 6>에서 MPS는 0, LPS는 1이 될 수 있다.In Table 6, it is assumed that m is 2. In Table 6, MPS may be 0 and LPS may be 1.

따라서 상기 정보 복원부(1012)는 복원 정보 심볼로 '2'가 선택되었다면, 피 은닉 정보 비트로 '0'을 복원하고, 은닉 정보 비트들로 '10'을 복원한다. 하지만 복원 정보 심볼로 '4'가 선택되었다면, 피 은닉 정보 비트만을 '1'로 복원한다.Therefore, if '2' is selected as the recovery information symbol, the information recovery unit 1012 restores '0' to the hidden information bits and restores '10' to the hidden information bits. However, if '4' is selected as the restoration information symbol, only the hidden information bit is restored to '1'.

한편 상기 정보 복원부(1012)는 상기 m진 정보 심볼 열 Z'n를 구성하는 모든 정보 심볼들에 대한 복원을 완료하면, 상기 모든 정보 심볼들의 복원에 의해 생성한 피 은닉 정보 비트 열 Yn과 은닉 정보 비트 열 Vk을 출력한다.On the other hand, when the information restoring unit 1012 completes restoration of all the information symbols constituting the m information symbol string Z ' n , the information restoring unit 1012 generates the hidden information bit string Y n generated by the restoration of all the information symbols. Output the hidden information bit string V k .

상기 정보 복원부(1012)로부터 출력되는 피 은닉 정보 비트 열 Yn과 은닉 정보 비트 열 Vk는 비트 결합부(1014)로 입력된다. 상기 비트 결합부(1014)는 상기 정보 복원부(1012)로부터 입력되는 피 은닉 정보 비트 열 Yn과 은닉 정보 비트 열 Vk을 결합하여 2진 정보 비트 열 X를 출력한다.The hidden information bit string Y n and the hidden information bit string V k outputted from the information recovery unit 1012 are input to the bit combiner 1014. The bit combiner 1014 combines the hidden information bit string Y n and the hidden information bit string V k input from the information recovery unit 1012 to output a binary information bit string X.

도 11은 본 발명의 제2실시 예에 따른 복원장치에서 압축 데이터를 복원하기 위한 제어 흐름을 보이고 있다.11 shows a control flow for recovering compressed data in a decompression device according to a second embodiment of the present invention.

도 11을 참조하면, 복원장치는 1110단계에서 입력되는 m진 정보 심볼 열 Zn에 대한 복호화를 수행한다. 상기 복호화를 위해 일 예로 엔트로피 코딩 (Entropy coding) 기법에 상응하는 엔트로피 디코딩 기법이 적용될 수 있다. 상기 엔트로피 디코딩 기법에서는 심볼의 빈도만을 고려하는데, 상기 엔트로피 디코딩 기법으로는 허프만 코더 (Huffman coder)에 대응한 디코더와 산술 부호 코더에 대응한 디코더 중 어느 것이나 사용할 수 있다.Referring to FIG. 11, the reconstruction apparatus decodes the m-information symbol string Z n input in step 1110. For example, an entropy decoding technique corresponding to an entropy coding technique may be applied to the decoding. The entropy decoding technique only considers the frequency of symbols, and either the decoder corresponding to the Huffman coder or the decoder corresponding to the arithmetic code coder may be used as the entropy decoding technique.

상기 복원장치는 상기 m진 정보 심볼 열 Zn에 대한 복호화가 완료되면, 812단계에서 상기 복호화가 이루어진 m진 정보 심볼 열 Z'n로부터 복원 정보 심볼을 순차적으로 선택한다. 즉 상기 복호화가 이루어진 m진 정보 심볼 열 Z'n로부터 복원 정보 심볼을 한 심볼씩 선택한다.When decoding of the m information symbol string Z n is completed, the decompression device sequentially selects a reconstruction information symbol from the decoded m information symbol string Z ′ n in step 812. That is, the reconstruction information symbol is selected one symbol from the m-decoded information symbol string Z ' n which has been decoded.

그리고 상기 복원장치는 1114단계에서 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값 (일 예로 2m)인지를 판단한다. 상기 복원장치는 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값이라고 판단하면, 1116단계로 진행하여 피 은닉 정보 비트의 값을 LPS로 복원한다. 즉 상기 선택한 복원 정보 심볼의 값을 LPS로 복원한다.In operation 1114, the restoration apparatus determines whether the value of the selected restoration information symbol is a predetermined value (for example, 2 m ) corresponding to the LPS. If it is determined that the value of the selected restoration information symbol is a predetermined value corresponding to the LPS, the restoration apparatus proceeds to step 1116 and restores the value of the hidden information bit to the LPS. That is, the value of the selected restoration information symbol is restored to the LPS.

하지만 상기 복원장치는 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값이 아니라고 판단하면, 1118단계로 진행하여 1비트의 피 은닉 정보 비트의 값을 MPS로 복원한다. 그리고 1120단계로 진행하여 상기 선택한 복원 정보 심볼에 대응하여 미리 결정되어 있는 m 비트의 값을 은닉 정보 비트들로 복원한다. 상기 m 비트의 은닉 정보 비트들의 값을 복원하는 예에 대해서는 상기 <표 6>에서 보이고 있다.However, if it is determined that the value of the selected restoration information symbol is not a predetermined value corresponding to the LPS, the restoration apparatus proceeds to step 1118 to restore the value of the hidden information bit of 1 bit to the MPS. In operation 1120, the predetermined m-bit value corresponding to the selected reconstruction information symbol is reconstructed into hidden information bits. An example of recovering the value of the m bits of hidden information bits is shown in Table 6.

따라서 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값인 경우에는 상기 선택한 복원 정보 심볼이 1비트의 피 은닉 정보 비트로 복원되고, 상기 선택한 복원 정보 심볼의 값이 LPS에 대응하여 미리 결정된 값이 아닌 경우에는 상기 선택한 복원 정보 심볼이 1비트의 피 은닉 정보 비트와 m 비트의 은닉 정보 비트들로 복원된다.Therefore, when the value of the selected reconstruction information symbol is a predetermined value corresponding to the LPS, the selected reconstruction information symbol is reconstructed into 1 bit hidden information bit, and the value of the selected reconstruction information symbol is predetermined according to the LPS. If not, the selected reconstruction information symbol is recovered into one bit hidden information bit and m bits of hidden information bits.

상기 복원장치는 1122단계에서 상기 복호화가 이루어진 m진 정보 심볼 열 Z'n을 구성하는 모든 정보 심볼들에 대한 복원이 이루어졌는지를 판단한다. 즉 상기 복호화가 이루어진 m진 정보 심볼 열 Z'n에 대한 복원이 완료되었는지를 판단한다.In step 1122, the decompression device determines whether decompression is performed on all information symbols constituting the decoded m-information symbol string Z ' n . That is, it is determined whether the restoration of the m-decoded information symbol string Z ' n on which the decoding is performed is completed.

만약 복원이 완료되지 않았다고 판단되면, 상기 복원장치는 상기 1112단계로 진행하여 다음 복원 정보 심볼을 선택하여 상술한 동작에 의한 복원 동작을 반복하여 수행한다.If it is determined that the restoration is not completed, the restoration apparatus proceeds to step 1112 and selects a next restoration information symbol to repeat the restoration operation by the above-described operation.

하지만 복원이 완료되었다고 판단되면, 상기 복원장치는 1124단계에서 앞에서 수행된 복원 동작에 의해 복원이 이루어진 피 은닉 정보 비트 열과 은닉 정보 비트 열을 결합하여 2진 정보 비트 열을 생성한다.However, if it is determined that the restoration is completed, the restoration apparatus generates a binary information bit string by combining the hidden information bit string and the hidden information bit string, which are restored by the restoration operation performed in step 1124.

도 12는 본 발명의 제2실시 예에서 제안하는 복원 기술에 따라 무손실 압축된 정보 심볼에 대한 복원을 수행하는 예를 보이고 있다. 도 12에서는 MPS가 '0'이고, LPS가 '1'이라 가정하며, 복원을 위해 앞에서 개시한 <표 6>을 이용하도록 한다.FIG. 12 shows an example of performing restoration for a lossless compressed information symbol according to a restoration technique proposed in the second embodiment of the present invention. In FIG. 12, it is assumed that the MPS is '0' and the LPS is '1', and the above-described <Table 6> is used for restoration.

도 12를 참조하면, 복원장치는 m진 정보 심볼 열 Z'n인 '1402304'로부터 순차적으로 복원 정보 심볼을 선택한다. 즉 상기 복원장치는 1, 4, 0, 2, 3, 0, 4의 순서로 복원 정보 심볼을 선택한다.Referring to FIG. 12, the reconstruction apparatus sequentially selects reconstruction information symbols from '1402304' which is the m-information symbol string Z ' n . That is, the restoration apparatus selects restoration information symbols in the order of 1, 4, 0, 2, 3, 0, 4.

상기 복원장치는 첫 번째 복원 정보 심볼로 '1'을 선택하면, 상기 선택한 복원 정보 심볼 '1'이 LPS에 대응하여 미리 결정된 값인 '4'가 아니므로, 피 은닉 정보 비트의 값을 MPS인 '0'으로 복원한다. 그리고 상기 선택한 복원 정보 심볼 '1'에 대응하여 미리 결정된 비트들인 '01'을 은닉 정보 비트들로 복원한다.If the restoration apparatus selects '1' as the first restoration information symbol, since the selected restoration information symbol '1' is not '4' which is a predetermined value corresponding to the LPS, the value of the hidden information bit is set to 'MPS'. Restore to 0 '. The predetermined bits '01' corresponding to the selected restoration information symbol '1' are restored to the hidden information bits.

다음으로 상기 복원장치는 두 번째 복원 정보 심볼로 '4'를 선택하면, 상기 선택한 복원 정보 심볼 '4'가 LPS에 대응하여 미리 결정된 값이므로, 피 은닉 정보 비트의 값을 LPS인 '1'로 복원한다. 그리고 상기 선택한 복원 정보 심볼 '4'에 대응하여 미리 결정된 은닉 정보 비트들이 존재하지 않으므로 더 이상의 복원이 이루어지지 않는다.Next, when the restoration apparatus selects '4' as the second restoration information symbol, since the selected restoration information symbol '4' is a predetermined value corresponding to the LPS, the value of the hidden information bit is set to '1' which is the LPS. Restore Since no predetermined hidden information bits exist in correspondence with the selected restoration information symbol '4', no further restoration is performed.

다음으로 상기 복원장치는 세 번째 복원 정보 심볼로 '0'을 선택하면, 상기 선택한 복원 정보 심볼 '0'이 LPS에 대응하여 미리 결정된 값인 '4'가 아니므로, 피 은닉 정보 비트의 값을 MPS인 '0'으로 복원한다. 그리고 상기 선택한 복원 정보 심볼 '0'에 대응하여 미리 결정된 비트들인 '00'을 은닉 정보 비트들로 복원한다.Next, when the restoration apparatus selects '0' as the third restoration information symbol, since the selected restoration information symbol '0' is not '4' which is a predetermined value corresponding to LPS, the value of the hidden information bit is MPS. Is restored to '0'. The predetermined bits '00' corresponding to the selected restoration information symbol '0' are restored to the hidden information bits.

다음으로 상기 복원장치는 네 번째 복원 정보 심볼로 '2'를 선택하면, 상기 선택한 복원 정보 심볼 '2'가 LPS에 대응하여 미리 결정된 값인 '4'가 아니므로, 피 은닉 정보 비트의 값을 MPS인 '0'으로 복원한다. 그리고 상기 선택한 복원 정보 심볼 '2'에 대응하여 미리 결정된 비트들인 '10'을 은닉 정보 비트들로 복원한다.Next, when the restoration apparatus selects '2' as the fourth restoration information symbol, since the selected restoration information symbol '2' is not '4', which is a predetermined value corresponding to the LPS, the value of the hidden information bit is MPS. Is restored to '0'. The predetermined bits '10' corresponding to the selected restoration information symbol '2' are restored to the hidden information bits.

다음으로 상기 복원장치는 다섯 번째 복원 정보 심볼로 '3'을 선택하면, 상기 선택한 복원 정보 심볼 '3'이 LPS에 대응하여 미리 결정된 값인 '4'가 아니므로, 피 은닉 정보 비트의 값을 MPS인 '0'으로 복원한다. 그리고 상기 선택한 복원 정보 심볼 '3'에 대응하여 미리 결정된 비트들인 '11'을 은닉 정보 비트들로 복원한다.Next, when the restoration apparatus selects '3' as the fifth restoration information symbol, since the selected restoration information symbol '3' is not '4', which is a predetermined value corresponding to the LPS, the value of the hidden information bit is MPS. Is restored to '0'. The predetermined bits '11' corresponding to the selected restoration information symbol '3' are restored to the hidden information bits.

다음으로 상기 복원장치는 여섯 번째 복원 정보 심볼로 '0'을 선택하면, 상기 선택한 복원 정보 심볼 '0'이 LPS에 대응하여 미리 결정된 값인 '4'가 아니므로, 피 은닉 정보 비트의 값을 MPS인 '0'으로 복원한다. 그리고 상기 선택한 복원 정보 심볼 '0'에 대응하여 미리 결정된 비트들인 '00'을 은닉 정보 비트들로 복원한다.Next, when the restoration apparatus selects '0' as the sixth restoration information symbol, since the selected restoration information symbol '0' is not '4', which is a predetermined value corresponding to the LPS, the value of the hidden information bit is MPS. Is restored to '0'. The predetermined bits '00' corresponding to the selected restoration information symbol '0' are restored to the hidden information bits.

마지막으로 상기 복원장치는 일곱 번째 복원 정보 심볼로 '4'를 선택하면, 상기 선택한 복원 정보 심볼 '4'가 LPS에 대응하여 미리 결정된 값이므로, 피 은닉 정보 비트의 값을 LPS인 '1'로 복원한다. 그리고 상기 선택한 복원 정보 심볼 '4'에 대응하여 미리 결정된 은닉 정보 비트들이 존재하지 않으므로 더 이상의 복원이 이루어지지 않는다.Finally, if the restoration apparatus selects '4' as the seventh restoration information symbol, the selected restoration information symbol '4' is a predetermined value corresponding to the LPS, and thus the value of the hidden information bit is set to '1' which is the LPS. Restore Since no predetermined hidden information bits exist in correspondence with the selected restoration information symbol '4', no further restoration is performed.

따라서 상술한 복원 동작에 의해 m진 정보 심볼 열 Z'n인 '1402304'로부터 2진 피 은닉 정보 비트 열인 '0100001'과 2진 은닉 정보 비트 열인 '0100101100'을 복원한다. 그리고 상기 2진 피 은닉 정보 비트 열인 '0100001'과 상기 2진 은닉 정보 비트 열인 '0100101100'을 결합한 2진 정보 비트 열 X인 '01000010100101100'을 생성한다.Accordingly, by the above-described reconstruction operation, the binary hidden information bit string '0100001' and the binary hidden information bit string '0100101100' are restored from '1402304', which is the m binary information symbol string Z ' n . Then, a binary information bit string X '01000010100101100' is generated by combining the binary hidden information bit string '0100001' and the binary hidden information bit string '0100101100'.

한편 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어 져서는 안 될 것이다.On the other hand, but shown and described with respect to the preferred embodiment of the present invention, the present invention is not limited to the specific embodiments described above, in the technical field to which the invention belongs without departing from the spirit of the invention claimed in the claims Various modifications can be made by those skilled in the art, and these modifications should not be individually understood from the technical spirit or the prospect of the present invention.

Claims (25)

정보 은닉에 의한 데이터 압축 방법에 있어서,
압축을 위한 2진 정보 비트 열로부터 선택한 피 은닉 정보 비트의 값이 결정 값인 경우 상기 2진 정보 비트 열로부터 추가로 선택한 m(≥1)개의 은닉 정보 비트에 대응하여 미리 설정된 2m 진 값으로 상기 선택한 피 은닉 정보 비트와 상기 추가로 선택한 m 개의 은닉 정보 비트를 치환하는 데이터 압축 방법.
In the data compression method by information concealment,
If the value of the hidden information bit selected from the binary information bit stream for compression is a determined value, the predetermined m m binary value corresponds to m (≥1) hidden information bits further selected from the binary information bit string. And a data compression method for replacing the selected hidden information bits and the further selected m hidden information bits.
제1항에 있어서,
상기 선택한 피 은닉 정보 비트의 값이 결정 값이 아닌 경우 상기 선택한 피 은닉 정보 비트를 상기 미리 설정된 2m 진 값과 중복되지 않는 값으로 치환하는 데이터 압축 방법.
The method of claim 1,
And if the value of the selected hidden information bit is not a determined value, replacing the selected hidden information bit with a value that does not overlap with the preset 2 m binary value.
제1항 또는 제2항에 있어서, 상기 결정 값은 상기 2진 정보 비트 열 내의 비트 값들 중 가장 높은 비율을 갖는 값임을 특징으로 하는 데이터 압축 방법.The method of claim 1 or 2, wherein the determination value is a value having the highest ratio among the bit values in the binary information bit string. 제2항에 있어서,
상기 미리 설정된 2m 진 값과 중복되지 않는 값은 2m임을 특징으로 하는 데이터 압축 방법.
3. The method of claim 2,
And a value not overlapping with the preset 2 m binary value is 2 m .
정보 은닉에 의한 데이터 압축 방법에 있어서,
길이가 n인 피 은닉 정보 비트 열과 길이가 k인 은닉 정보 비트 열을 입력으로 하고, 상기 피 은닉 정보 비트 열의 각 비트 중 결정 값에 해당하는 비트의 값을 상기 은닉 정보 비트 열로부터 순차적으로 추출한 m(≥1)개의 비트들에 상응하는 2m진 값으로 치환하는 데이터 압축 방법.
In the data compression method by information concealment,
M, a length of n hidden information bit strings of length n and a hidden information bit string of length k as inputs, and a value of a bit corresponding to a determined value among each bit of the hidden information bit string is sequentially extracted from the hidden information bit string. A data compression method for substituting 2 m binary values corresponding to (≥1) bits.
제5항에 있어서,
상기 길이가 n인 피 은닉 정보 비트 열과 상기 길이가 k인 은닉 정보 비트 열은 압축을 위해 입력되는 2진 정보 비트 열로부터 분리됨을 특징으로 하는 데이터 압축 방법.
The method of claim 5,
And said hidden information bit string of length n and said hidden information bit string of length k are separated from a binary information bit string input for compression.
제5항 또는 제6항에 있어서,
상기 피 은닉 정보 비트 열의 각 비트 중 상기 결정 값이 아닌 비트의 값을 상기 2m 진 값과 중복되지 않는 값으로 치환하는 데이터 압축 방법.
The method according to claim 5 or 6,
Data compression method for replacing the value of the to-be-concealed information bit sequence rather than the decision value of each bit by bit the value of 2 m binary value and do not overlap.
제6항에 있어서,
상기 결정 값은 상기 2진 정보 비트 열 내의 비트 값들 중 가장 높은 비율을 갖는 값임을 특징으로 하는 데이터 압축 방법.
The method according to claim 6,
And the determination value is a value having the highest ratio among the bit values in the binary information bit string.
제7항에 있어서,
상기 2m진 값과 중복되지 않는 값은 2m임을 특징으로 하는 데이터 압축 방법.
The method of claim 7, wherein
And a value not overlapping with the 2 m binary value is 2 m .
정보 은닉에 의한 데이터 압축 장치에 있어서,
압축을 위한 2진 정보 비트 열로부터 선택한 피 은닉 정보 비트의 값이 결정 값인 경우 상기 2진 정보 비트 열로부터 추가로 선택한 m(≥1)개의 은닉 정보 비트에 대응하여 미리 설정된 2m 진 값으로 상기 선택한 피 은닉 정보 비트와 상기 추가로 선택한 m 개의 은닉 정보 비트를 치환하는 정보 은닉부와,
상기 정보 은닉부로부터 출력되는 2m+1 진 정보 심볼 열을 부호화하여 출력하는 부호화부를 포함하는 데이터 압축 장치.
In the data compression apparatus by information concealment,
If the value of the hidden information bit selected from the binary information bit stream for compression is a determined value, the predetermined m m binary value corresponds to m (≥1) hidden information bits further selected from the binary information bit string. An information concealment unit for substituting the selected hidden information bits and the m selected hidden information bits;
And an encoder for encoding and outputting a 2 m +1 binary information symbol string output from the information concealment unit.
제10항에 있어서, 상기 정보 은닉부는,
상기 선택한 피 은닉 정보 비트의 값이 결정 값이 아닌 경우 상기 선택한 피 은닉 정보 비트를 상기 미리 설정된 2m 진 값과 중복되지 않는 값으로 치환하는 데이터 압축 장치.
The method of claim 10, wherein the information hiding unit,
And if the value of the selected hidden information bit is not a determined value, replaces the selected hidden information bit with a value that does not overlap with the preset 2 m binary value.
제10항 또는 제11항에 있어서,
상기 결정 값은 상기 2진 정보 비트 열 내의 비트 값들 중 가장 높은 비율을 갖는 값임을 특징으로 하는 데이터 압축 장치.
The method according to claim 10 or 11,
And the determination value is a value having the highest ratio among the bit values in the binary information bit string.
제11항에 있어서,
상기 미리 설정된 2m 진 값과 중복되지 않는 값은 2m임을 특징으로 하는 데이터 압축 장치.
12. The method of claim 11,
And a value not overlapping with the preset 2 m binary value is 2 m .
정보 은닉에 의한 데이터 압축 장치에 있어서,
길이가 n인 피 은닉 정보 비트 열과 길이가 k인 은닉 정보 비트 열을 입력으로 하고, 상기 피 은닉 정보 비트 열의 각 비트 중 결정 값에 해당하는 비트의 값을 상기 은닉 정보 비트 열로부터 순차적으로 추출한 m(≥1)개의 비트들에 상응하는 2m진 값으로 치환하는 정보 은닉부와,
상기 정보 은닉부로부터 출력되는 2m+1진 정보 심볼 열을 부호화하여 출력하는 부호화부를 포함하는 데이터 압축 장치.
In the data compression apparatus by information concealment,
M, a length of n hidden information bit strings of length n and a hidden information bit string of length k as inputs, and a value of a bit corresponding to a determined value among each bit of the hidden information bit string is sequentially extracted from the hidden information bit string. An information hiding unit for substituting 2 m binary values corresponding to (≥1) bits,
And an encoder for encoding and outputting a 2 m +1 binary information symbol string output from the information concealment unit.
제14항에 있어서,
압축을 위한 2진 정보 비트 열로부터 상기 길이가 n인 피 은닉 정보 비트 열과 상기 길이가 k인 은닉 정보 비트 열을 분리하는 비트 분리부를 더 포함하는 데이터 압축 장치.
15. The method of claim 14,
And a bit separator for separating the hidden information bit string of length n from the hidden information bit string of length k from a binary information bit string for compression.
제14항 또는 제15항에 있어서,
상기 피 은닉 정보 비트 열의 각 비트 중 상기 결정 값이 아닌 비트의 값을 상기 2m 진 값과 중복되지 않는 값으로 치환하는 데이터 압축 장치.
16. The method according to claim 14 or 15,
And a value which does not overlap with the 2 m binary value by replacing a value of a bit which is not the determined value among each bit of the hidden information bit string.
제15항에 있어서,
상기 결정 값은 상기 2진 정보 비트 열 내의 비트 값들 중 가장 높은 비율을 갖는 값임을 특징으로 하는 데이터 압축 장치.
16. The method of claim 15,
And the determination value is a value having the highest ratio among the bit values in the binary information bit string.
제16항에 있어서,
상기 2m 진 값과 중복되지 않는 값은 2m임을 특징으로 하는 데이터 압축 장치.
17. The method of claim 16,
And a value not overlapping with the 2 m binary value is 2 m .
데이터 압축 방법에 있어서,
압축을 위한 2진 정보 비트 열로부터 1비트의 피 은닉 정보 비트를 선택하고, 상기 선택한 피 은닉 정보 비트의 값이 상기 2진 정보 비트 열 내의 비트 값들 중 가장 높은 비율을 갖는 결정 값인지를 판단하는 과정과,
상기 선택한 피 은닉 정보 비트의 값이 상기 결정 값이 아닌 경우, 상기 선택한 피 은닉 정보 비트 값을 2m으로 치환하는 과정과,
상기 선택한 피 은닉 정보 비트의 값이 상기 결정 값인 경우, 상기 2진 정보 비트 열에서 상기 선택한 피 은닉 정보 비트 값의 다음 비트를 포함하여 연속하는 m개의 비트들에 상응하는 2m 진 값에 의해 상기 피 은닉 정보 비트의 값을 치환하는 과정을 포함하는 데이터 압축 방법.
In the data compression method,
Selecting one hidden information bit from the binary information bit stream for compression, and determining whether the value of the selected hidden information bit is a decision value having the highest ratio among the bit values in the binary information bit stream. Process,
If the value of the selected hidden information bit is not the determined value, replacing the selected hidden information bit value with 2 m ;
If the value of the selected blood secret information bit value, wherein the determining, by the value Jin 2 m corresponding to the m bits of a row, including the following bits of the selected blood secret information bit values in the binary data bit stream the And substituting the value of the hidden information bit.
데이터 복원 방법에 있어서,
정보 심볼 열로부터 순차적으로 선택되는 2m+1 진의 복원 정보 심볼의 값이 결정 값인 경우, 상기 선택한 복원 정보 심볼의 값을 상기 결정 값에 상응하는 2진 정보 비트 값으로 복원하는 과정과,
상기 선택한 복원 정보 심볼의 값이 상기 결정 값이 아닌 경우, 상기 선택한 복원 정보 심볼의 값에 상응하는 길이가 m+1인 2진 정보 비트 값으로 복원하는 과정을 포함하는 데이터 복원 방법.
In the data restoration method,
Restoring a value of the selected restoration information symbol to a binary information bit value corresponding to the determination value when the value of the restoration information symbol of 2 m +1 binary sequentially selected from the information symbol string is a determination value;
Restoring a binary information bit value having a length m + 1 corresponding to a value of the selected restoration information symbol when the value of the selected restoration information symbol is not the determined value.
제20항에 있어서,
상기 결정 값은 2m임을 특징으로 하는 데이터 복원 방법.
21. The method of claim 20,
And the determination value is 2 m .
제20항 또는 제21항에 있어서,
상기 순차적으로 선택되는 2m+1진의 복원 정보 심볼에 의해 복원한 2진 정보 비트 값들을 연결하여 압축이 해제된 2진 정보 비트 열을 획득하는 데이터 복원 방법.
22. The method according to claim 20 or 21,
And decompressing binary information bit strings by concatenating binary information bit values reconstructed by the sequentially selected 2 m +1 reconstruction information symbols.
데이터 복원 방법에 있어서,
부호화된 정보 심볼 열을 복호하는 복호화부와,
상기 복호화된 정보 심볼 열로부터 순차적으로 선택되는 2m+1진의 복원 정보 심볼의 값이 결정 값인 경우 상기 선택한 복원 정보 심볼의 값을 상기 결정 값에 상응하는 2진 정보 비트 값으로 복원하고, 상기 선택한 복원 정보 심볼의 값이 상기 결정 값이 아닌 경우 상기 선택한 복원 정보 심볼의 값에 상응하는 길이가 m+1인 2진 정보 비트 값으로 복원하는 정보 복원부를 포함하는 데이터 복원 장치.
In the data restoration method,
A decoder which decodes the encoded information symbol string;
If a value of a 2 m +1 binary reconstruction information symbol sequentially selected from the decoded information symbol string is a determination value, the value of the selected reconstruction information symbol is restored to a binary information bit value corresponding to the determination value, and the selected And an information restoration unit for restoring a binary information bit value having a length m + 1 corresponding to the value of the selected restoration information symbol when the value of the restoration information symbol is not the determined value.
제23항에 있어서,
상기 결정 값은 2m임을 특징으로 하는 데이터 복원 장치.
24. The method of claim 23,
And the determination value is 2 m .
제23항 또는 제24항에 있어서, 상기 정보 복원부는,
상기 순차적으로 선택되는 2m+1진의 복원 정보 심볼에 의해 복원한 2진 정보 비트 값들을 연결하여 압축이 해제된 2진 정보 비트 열을 획득하는 데이터 복원 장치.
The method of claim 23 or 24, wherein the information recovery unit,
And decompressing binary information bit strings by concatenating binary information bit values reconstructed by the sequentially selected 2 m +1 reconstruction information symbols.
KR1020127015998A 2010-01-25 2011-01-25 Data compression/decompression device and method KR101367811B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20100006688 2010-01-25
KR1020100006688 2010-01-25
PCT/KR2011/000518 WO2011090359A2 (en) 2010-01-25 2011-01-25 Data compression/decompression device and method

Publications (2)

Publication Number Publication Date
KR20120103654A KR20120103654A (en) 2012-09-19
KR101367811B1 true KR101367811B1 (en) 2014-02-27

Family

ID=44307429

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127015998A KR101367811B1 (en) 2010-01-25 2011-01-25 Data compression/decompression device and method

Country Status (2)

Country Link
KR (1) KR101367811B1 (en)
WO (1) WO2011090359A2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101468307B1 (en) * 2013-05-27 2014-12-02 김정훈 Binary data compression and decompression apparatus and method
CN114390153B (en) * 2021-12-02 2023-07-11 中南大学 Lossless transmission, hiding and reading method of secret information and computer system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020021929A (en) * 2000-09-18 2002-03-23 박길순 The method for compressing and expanding data-stream without loss by bit-substitution

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003256333A1 (en) * 2002-06-28 2004-01-19 University Of Rochester System and method for embedding information in digital signals
CN101449278B (en) * 2003-12-05 2011-07-06 新泽西理工学院 System and method for robust reversible data hiding and data recovery in the spatial domain
WO2010003152A1 (en) * 2008-07-03 2010-01-07 Verimatrix, Inc. Efficient watermarking approaches of compressed media

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020021929A (en) * 2000-09-18 2002-03-23 박길순 The method for compressing and expanding data-stream without loss by bit-substitution

Also Published As

Publication number Publication date
WO2011090359A3 (en) 2012-01-05
WO2011090359A2 (en) 2011-07-28
KR20120103654A (en) 2012-09-19

Similar Documents

Publication Publication Date Title
CN108880556B (en) LZ 77-based lossless data compression method, error code recovery method, encoder and decoder
JP4801776B2 (en) Data compression
CN108768403B (en) LZW-based lossless data compression and decompression method, LZW encoder and decoder
KR100894002B1 (en) Device and data method for selective compression and decompression and data format for compressed data
KR101049699B1 (en) Data Compression Method
US7375660B1 (en) Huffman decoding method
JP3397431B2 (en) Data compression method and device and data decompression method and device
JPH1065551A (en) Data compressing method
JP5656593B2 (en) Apparatus and method for decoding encoded data
JP2007043595A (en) Variable length code decoding method and device and data decompression device
Saravanan et al. Enhancing efficiency of huffman coding using Lempel Ziv coding for image compression
KR101367811B1 (en) Data compression/decompression device and method
JP5913748B2 (en) Secure and lossless data compression
JP6073506B2 (en) Entropy changer and method
JP4758494B2 (en) Circuit and method for converting bit length to code
Mathpal et al. A research paper on lossless data compression techniques
JP2536422B2 (en) Data compression device and data decompression device
KR100636370B1 (en) Apparatus and method for coding using bit-precision, and apparatus and method for decoding according to the same
JP6249608B2 (en) Decoding apparatus and method
KR101268934B1 (en) Data compression/decompression device and method thereof
Shoba et al. A Study on Data Compression Using Huffman Coding Algorithms
Wu et al. Error-resilient LZW data compression
KR100686354B1 (en) Huffman decoding method and device for using variable length tree
KR20130015798A (en) Apparatus and method for encoding/coding data
Begum et al. An efficient text compression for massive volume of data

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170109

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180108

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190211

Year of fee payment: 6