KR20060109605A - Data file compressing method and apparatus - Google Patents

Data file compressing method and apparatus Download PDF

Info

Publication number
KR20060109605A
KR20060109605A KR1020050031776A KR20050031776A KR20060109605A KR 20060109605 A KR20060109605 A KR 20060109605A KR 1020050031776 A KR1020050031776 A KR 1020050031776A KR 20050031776 A KR20050031776 A KR 20050031776A KR 20060109605 A KR20060109605 A KR 20060109605A
Authority
KR
South Korea
Prior art keywords
data
value
comparison
input
continuous
Prior art date
Application number
KR1020050031776A
Other languages
Korean (ko)
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 엘지전자 주식회사
Priority to KR1020050031776A priority Critical patent/KR20060109605A/en
Publication of KR20060109605A publication Critical patent/KR20060109605A/en

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

An apparatus and a method for compressing data are provided to recognize the code state of video data to be encoded as alternation of a continuous state and a non-continuous state and compress the video data to improve compression efficiency and decrease the degree of difficulty of encoding and decoding operations. Inputted data is shifted to a non-continuous state, and the inputted data is set as comparison data. When data is inputted, the data is compared with the comparison data and shifted to the non-continuous state of a continuous state. The comparison data is stored in a buffer, or the inputted data is set as new comparison data. When data input is completed, the data stored in the buffer is encoded.

Description

데이터 압축 장치 및 방법{Data File Compressing Method and Apparatus}Data Compressing Method and Apparatus

도 1은 본 발명의 이해를 돕기 위한 일반적인 압축 코딩 방식(a)과, 본 발명의 실시예에 따른 Discrete RLC 방식(b)을 비교하여 나타낸 코드 구성도이고,1 is a code diagram illustrating a comparison between a general compression coding scheme (a) and a Discrete RLC scheme (b) according to an embodiment of the present invention.

도 2는 본 발명의 실시예에 따른 데이터 압축 장치의 구성을 개략적으로 도시한 구성도이며,2 is a configuration diagram schematically showing a configuration of a data compression device according to an embodiment of the present invention.

도 3은 본 발명의 실시예에 따른 데이터 압축 방법을 설명하기 위한 DRLC 코딩시 상태 천이도를 나타낸 것이다.3 illustrates a state transition diagram in DRLC coding for explaining a data compression method according to an embodiment of the present invention.

* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

200 : 압축 효율 향상 장치 210 : 비교 레지스터200: compression efficiency improving device 210: comparison register

220 : 제어부 230 : 비연속 코드 개수 레지스터220: control unit 230: discontinuous code count register

240 : 연속 코드 개수 레지스터 250 : 버퍼240: consecutive code count register 250: buffer

본 발명은 데이터 압축 장치 및 방법에 관한 것으로, 더욱 상세하게는 대용량의 영상을 디스플레이하는 DVD 플레이어 등과 같은 멀티미디어 플레이 장치에서, 디스플레이하고자 하는 영상을 연속 및 비연속적 구조로 인식하여 RLC(Run Length Code) 방식보다 부호화(Coding) 및 복호화(Decoding)의 난이도가 복잡하지 않으면서 압축 효율을 높일 수 있는 데이터 압축 장치 및 방법에 관한 것이다.The present invention relates to a data compression apparatus and method, and more particularly, to a multimedia play apparatus such as a DVD player displaying a large amount of images, and to recognize the image to be displayed as a continuous and discontinuous structure to run length code (RLC). The present invention relates to a data compression apparatus and method capable of increasing compression efficiency without having a more complicated coding and decoding difficulty than a method.

일반적으로, 데이터 압축(File Compression)은 파일이나 통신 메시지와 같은 데이터 집합의 기억 영역을 절감하거나 전송 시간을 단축하기 위해 데이터를 좀 더 적은 수의 비트를 사용하여 부호화하는 것을 말한다.In general, file compression refers to the encoding of data using fewer bits in order to save the storage area of a data set such as a file or a communication message or to reduce a transmission time.

이러한 데이터 압축 방식은 크게 무손실 압축(Loseless Compression)과 손실 압축(Lossy Compression)으로 나뉜다.These data compression methods are largely divided into lossless compression and lossy compression.

무손실 압축은 데이터 압축시 데이터의 손실없이 다시 복원할 수 있는 방식을 말한다. 반면에 손실 압축은 데이터 압축 후, 압축 이전의 원본 데이터를 복원할 방법이 없는 방식을 말한다. Lossless compression refers to the way in which data can be restored without loss of data. Lossy compression, on the other hand, refers to the way that after data compression, there is no way to restore the original data before compression.

이러한 성질 때문에 무손실 압축은 데이터 자체가 중요한 경우, 예를 들어 문장이나 부호 데이터, 수치 데이터 등의 압축에 바람직하다. 반면에 손실 압축은 영상이나 음성 데이터와 같은 멀티미디어 데이터에 주로 사용된다.Because of this property, lossless compression is preferable for the case where the data itself is important, for example, compression of sentence, sign data, numerical data and the like. Lossy compression, on the other hand, is mainly used for multimedia data such as video and audio data.

대개, 무손실 데이터 압축을 할 때, 압축율이 높으면 부호화 및 복호화 하는 과정이 복잡하게 되고, 압축율이 낮으면 부호화 및 복호화 하는 과정이 단순하다.In general, when lossless data compression is performed, encoding and decoding are complicated when the compression ratio is high, and encoding and decoding is simple when the compression rate is low.

현재, 가장 단순한 데이터 압축 방식으로 RLC 방식이 있는데, 이 방식을 사용할 때 압축율은 낮지만 가정용 A/V 기기나, 고속을 요하는 PC 프로그램에 이 방식을 사용하여 압축을 하면 효율적으로 사용할 수 있다.Currently, the simplest data compression method is the RLC method, which uses a low compression rate for home A / V equipment or a PC program that requires high speed.

그런데, 현재 RLC 방식으로 압축을 하고자 할 경우에 다음과 같은 4 가지 방식을 이용하고 있다.However, in order to compress by the RLC method, the following four methods are used.

1) 탈출문자를 정하여 반복회수, 코드, 탈출문자 식으로 부호화하는 방식,1) A method of setting escape characters and encoding them in repetition times, codes, escape characters,

2) 특정 크기 이상의 값이 사용되지 않는 성질을 이용하여 반복회수, 탈출문자, 코드 식으로 부호화하는 방식,2) The method of encoding with repetition count, escape character, code formula by using the property that a value over a certain size is not used,

3) 반복회수, 코드만을 반복하여 부호화하는 방식,3) repetition frequency, the method of encoding only the code repeatedly,

4) 블록(Block) 단위로 반복문자를 선정하여 탈출문자, 문자열수, 반복회수, 코드열 식으로 부호화하는 방식 등이 있다.4) The repetition character is selected in block units, and the escape character, the number of character strings, the number of repetitions, and the code string are encoded.

위에서, 첫 번째 방식과 세 번째 방식을 사용할 경우 부호화 및 복호화시 사용되는 자원(Resource)도 적고 압축 효율도 자원에 비해 괜찮은 편이지만, 첫 번째 방식은 탈출문자 때문에 압축 효율이 다소 떨어지는 문제점이 있고, 세 번째 방식은 비연속 코드가 많은 경우 압축율이 많이 떨어질 수 있는 문제점이 있다.In the above, when the first and third methods are used, the resources used for encoding and decoding are small and the compression efficiency is decent compared to the resources. However, the first method has a problem that the compression efficiency is somewhat decreased due to escape characters. The third method has a problem that the compression rate may drop a lot when there are a large number of discontinuous codes.

두 번째 방식은 비트맵(Bitmap)의 특성상 0 ~ 255까지의 모든 코드가 존재하므로 사용할 수 없고, 네 번째 방식은 부호화 및 복호화시 CPU 리소스 및 속도 문제가 발생할 수 있으므로 적당하지 않다는 문제점이 있다.The second method cannot be used because all codes from 0 to 255 exist due to the characteristics of the bitmap, and the fourth method is not suitable because CPU resources and speed problems may occur during encoding and decoding.

상기 문제점을 해결하기 위해 본 발명은, 대용량의 영상을 디스플레이하는 DVD 플레이어 등과 같은 멀티미디어 플레이 장치에서, 디스플레이하고자 하는 영상을 연속 및 비연속적 구조로 인식하여 RLC 방식보다 부호화 및 복호화의 난이도가 복잡하지 않으면서 압축 효율을 높일 수 있는 데이터 압축 장치 및 방법을 제공함에 그 목적이 있다.In order to solve the above problems, the present invention, in a multimedia player such as a DVD player that displays a large amount of images, if the difficulty to encode and decode than the RLC method by recognizing the image to be displayed as a continuous and discontinuous structure It is an object of the present invention to provide a data compression apparatus and method that can increase the compression efficiency.

상기 목적을 달성하기 위한 본 발명에 따른 데이터 압축 방법은, 입력된 데이터를 부호화할 때 초기에 비연속 상태로 하여 압축을 수행하는 데이터 압축 방법에 있어서, 첫 번째 데이터가 입력되면 상기 비연속 상태로 천이하고, 상기 입력된 데이터를 비교 데이터로 설정하는 제 1 단계; 이후에 데이터가 입력되면 상기 비교 데이터와 비교하여 상기 비연속 상태 또는 연속 상태로 천이하고, 상기 비교 데이터를 버퍼에 저장하거나, 상기 입력된 데이터를 새로운 비교 데이터로 설정하는 제 2 단계; 및 상기 제 2 단계를 반복한 후 상기 데이터의 입력이 완료되면 상기 버퍼에 저장된 데이터를 부호화하는 제 3 단계를 포함하는 것을 특징으로 한다.A data compression method according to the present invention for achieving the above object is a data compression method for performing compression by initially making a non-continuous state when encoding input data, wherein the first data is input to the non-continuous state. Transitioning and setting the input data as comparison data; Thereafter, when data is input, comparing with the comparison data, transitioning to the discontinuous or continuous state, storing the comparison data in a buffer, or setting the input data as new comparison data; And a third step of encoding data stored in the buffer when the input of the data is completed after repeating the second step.

또한, 본 발명의 다른 목적에 따른 데이터 압축 장치는, 입력된 데이터를 다음 번에 입력되는 데이터와 비교하기 위하여 비교 데이터로 저장하는 비교 저장부; 상기 입력된 데이터의 값이 상기 비교 레지스터의 값과 다를 경우에 비연속 코드개 수의 값을 증가시켜 저장하는 비연속 코드개수 저장부; 상기 입력된 데이터의 값이 상기 비교 레지스터의 값과 동일한 경우에 연속 코드개수의 값을 증가시켜 저장하는 연속 코드개수 저장부; 상기 비교 레지스터의 값이 새로 변경될 경우에 변경되기 전의 데이터 값을 받아서 부호화하기 전에 대기 저장하는 버퍼; 및 상기 입력된 데이터가 상기 비교 데이터와 비교하여 다른 경우에, 상기 비연속 코드개수의 값을 증가시켜 상기 비연속 코드개수 저장부에 저장하고 상기 입력된 데이터를 상기 비교 데이터로 상기 비교 저장부에 저장하며, 상기 입력된 데이터가 상기 비교 데이터와 비교하여 동일한 경우에, 상기 연속 코드개수의 값을 증가시켜 상기 연속 코드개수 저장부에 저장하고 상기 입력된 데이터를 상기 비교 데이터로 상기 비교 저장부에 저장하며, 상기 비교 저장부의 값이 변경되기 전의 상기 비교 데이터를 상기 버퍼에 저장하는 과정을 반복하고, 상기 데이터의 입력이 종료되면 상기 버퍼에 저장되어 있는 데이터를 압축 코딩하도록 제어하는 제어부를 포함하는 것을 특징으로 한다.In addition, the data compression apparatus according to another object of the present invention, a comparison storage unit for storing the input data as comparison data to compare with the next input data; A non-continuous code count storage unit for increasing and storing the value of the number of non-continuous code counts when the value of the input data is different from the value of the comparison register; A continuous code count storage unit for increasing and storing the value of the continuous code count when the value of the input data is the same as the value of the comparison register; A buffer which receives and stores the data value before the change when the value of the comparison register is newly changed before encoding the encoded value; And if the input data is different from the comparison data, increase the value of the number of discontinuous codes and store them in the non-continuous code number storage unit, and store the input data as the comparison data in the comparison storage unit. And if the input data is the same as that of the comparison data, increase the value of the number of consecutive codes to store the number of consecutive codes, and store the input data as the comparison data in the comparison storage unit. And a controller configured to repeat the process of storing the comparison data before the value of the comparison storage unit is changed in the buffer, and to compress and code the data stored in the buffer when the input of the data is completed. It is characterized by.

이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. First of all, in adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are used as much as possible even if displayed on different drawings.

또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적 인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.In addition, in describing the present invention, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present invention, the detailed description thereof will be omitted.

도 1은 본 발명의 이해를 돕기 위한 일반적인 압축 코딩 방식(a)과, 본 발명의 실시예에 따른 Discrete RLC 방식(b)을 비교하여 나타낸 코드 구성도이다.1 is a code diagram illustrating a comparison between a general compression coding scheme (a) and a Discrete RLC scheme (b) according to an embodiment of the present invention for better understanding of the present invention.

일반적인 압축 코딩 방식은 도 1의 (기본)에 도시된 바와 같이, 압축 코딩하기 전 원본 코드가 연속적으로 있는 코드와 비연속적으로 있는 코드가 교번적으로 나타난다. 따라서, 비연속 코드가 7개, 연속 코드가 7개, 비연속 코드가 7개, 연속 코드가 7개의 순으로 코드가 나타난다.In a general compression coding scheme, as shown in (basic) of FIG. 1, a code in which an original code is continuous and a code in which a source is discontinuous appears alternately before compression coding. Therefore, the codes appear in the order of seven non-continuous codes, seven consecutive codes, seven non-continuous codes, and seven consecutive codes.

한편, 도 1의 (예외처리)에 도시된 바와 같이 원본 코드 중에서 연속적으로 있는 코드가 연속으로 나타날 경우에는 두 연속 코드 사이에 비연속으로 있는 코드가 0 개 있는 것으로 가정한다. 따라서, 비연속 코드가 7개, 연속 코드가 7개, 비연속 코드가 0 개, 연속 코드가 7개, 비연속 코드가 7개, 연속 코드가 7 개인 순으로 나타나게 된다. On the other hand, as shown in (Exception Processing) of Fig. 1, when consecutive codes appear continuously among the original codes, it is assumed that there are 0 codes that are not consecutive between two consecutive codes. Therefore, seven non-contiguous codes, seven consecutive codes, zero non-continuous codes, seven consecutive codes, seven non-continuous codes, and seven consecutive codes appear.

또한, 일반적인 압축 방식은 도 1의 (단순방식)에 도시된 바와 같이 원본 코드가 반복회수, 코드로 이루어지거나, 탈출 문자가 포함된 방식의 경우에 반복회수, 코드, 탈출문자로 이루어진다. 그리고, 블럭(Block) RLC 방식의 경우에 탈출 문자, 코드개수, 반복회수로 이루어진다.In addition, the general compression scheme is composed of a repeat count, a code, an escape character in the case where the original code consists of a repeat count, a code, or an escape character is included, as shown in FIG. In the case of the Block RLC method, the escape character, the number of codes, and the number of repetitions are made.

그러나, 본 발명에서는 모든 코드가 비연속 코드 1회, 연속 코드 1회 순으로 반복하여 나타난다고 가정하여 실시하면, 본 발명의 실시예에 따른 Discrete RLC 방식의 경우, 도 1의 (b)에 도시된 바와 같이 코드개수와 코드로 구성되어 비연속 및 연속이 반복되는 코드를 얻을 수 있다. 즉, 도 1의 (b)에 도시된 바와 같이 비연속(ABCDEFG) 7개, 연속(RRRRRRR) 7개, 비연속 0개, 연속(TTTTTTT) 7개, 비연속(DEFCABC) 7개, 연속(KKKKKKK) 7개 순으로 코딩하는 것이다.However, in the present invention, assuming that all codes appear repeatedly in the order of one non-consecutive code and one consecutive code, the Discrete RLC method according to the embodiment of the present invention is illustrated in FIG. As described above, a code consisting of the number of codes and codes can be obtained. That is, as shown in (b) of FIG. 1, 7 non-continuous (ABCDEFG), 7 continuous (RRRRRRR), 0 non-continuous, 7 continuous (TTTTTTT), 7 non-continuous (DEFCABC), continuous ( KKKKKKK) in order of seven.

도 2는 본 발명의 실시예에 따른 데이터 압축 장치의 구성을 개략적으로 도시한 구성도이다.2 is a configuration diagram schematically showing a configuration of a data compression device according to an embodiment of the present invention.

본 발명에 따른 데이터 압축 장치(200)는 비교 레지스터(Compare Register:210), 제어부(Controller:220), 비연속 코드개수 레지스터(DR:Discrete Register, 230), 연속 코드개수 레지스터(CR:Continue Register, 240), 버퍼(Buffer:250)를 포함한 구성을 갖는다.The data compression apparatus 200 according to the present invention includes a compare register 210, a controller 220, a discrete code count register (DR) 230, and a continuous code count register (CR). , 240), and a buffer including a buffer (250).

비교 레지스터(210)는 입력된 데이터를 다음 번에 입력되는 데이터와 비교하기 위하여 비교 데이터로 저장한다.The comparison register 210 stores the input data as comparison data in order to compare the data input next time.

제어부(220)는 데이터의 압축 코딩시 초기에 첫 번째 데이터가 입력되면 비연속 상태로 천이하고, 첫 번째 데이터를 비교 레지스터(210)에 비교 데이터로 저장한 후, 두 번째 데이터가 입력되면 비교 데이터와 비교하여 동일하면 연속 상태로 천이하고 두 번째 데이터를 비교 데이터로 저장하면서 연속 코드개수의 값을 2로 저장하며, 두 번째 데이터가 비교 데이터와 다를 경우 비연속 코드개수의 값을 증가시키고 두 번째 데이터를 비교 데이터로 저장하며, 이후에 입력되는 데이터에 대하여도 동일한 과정을 반복하고, 데이터의 입력이 종료되면 버퍼(250)에 저장되 어 있는 데이터를 압축 코딩하도록 제어한다.When the first data is initially input during the compression coding of the data, the controller 220 transitions to a discontinuous state, stores the first data as comparison data in the comparison register 210, and then compares the second data when the second data is input. Compared with, if it is the same, it is transitioned to continuous state and the second data is stored as comparison data, and the value of consecutive code count is stored as 2, and if the second data is different from the comparison data, the value of non-consecutive code number is increased and the second The data is stored as comparison data, and the same process is repeated with respect to data input later, and when the input of data is completed, control is performed to compression-code the data stored in the buffer 250.

비연속 코드 개수 레지스터(230)는 입력된 데이터의 값이 비교 레지스터(210)의 값과 다를 경우에 비연속 카운터 값을 증가시켜 저장한다.The non-continuous code number register 230 increments and stores the non-continuous counter value when the value of the input data is different from the value of the comparison register 210.

연속 코드 개수 레지스터(240)는 입력된 데이터의 값이 비교 레지스터(210)의 값과 동일한 경우에 연속 카운 값을 증가시켜 저장한다.The continuous code count register 240 increments and stores a continuous count value when the value of the input data is the same as the value of the comparison register 210.

버퍼(250)는 비교 레지스터(210)의 값이 새로 변경될 경우에 변경되기 전의 데이터 값을 받아서 부호화하기 전에 대기 저장한다.When the value of the comparison register 210 is newly changed, the buffer 250 receives and stores the data value before the change before encoding.

도 3은 본 발명의 실시예에 따른 데이터 압축 방법을 설명하기 위한 DRLC 코딩시 상태 천이도를 나타낸 것이다.3 illustrates a state transition diagram in DRLC coding for explaining a data compression method according to an embodiment of the present invention.

도 3에 도시된 바와 같이, 원본 코드의 부호화(Encoding)를 시작할 때의 상태는 초기 비연속 상태이다.As shown in Fig. 3, the state at the start of encoding of the original code is an initial discontinuous state.

이때, 첫 번째 데이터(A)가 입력되면 비연속 상태로 천이를 한다. 그리고, 입력된 데이터(A)는 비교 레지스터의 값(A)이 된다. 또한, 비연속 코드 개수 레지스터(230)를 1로 설정한다.At this time, when the first data (A) is input, the transition to a discontinuous state. The input data A becomes the value A of the comparison register. In addition, the discontinuous code count register 230 is set to one.

이어, 두 번째 데이터(B)가 입력되면 비교 레지스터의 값(A)과 비교하여, 같은 데이터가 아니면 비연속 상태로 남게 되고, 비교 레지스터(A)의 값은 버퍼에 저장한다. 이때 입력된 두 번째 데이터(B)의 값을 비교 레지스터의 값(B)으로 설정한다. 또한, 비연속 코드 개수 레지스터(230)의 값이 1 증가되어 2가 된다.Subsequently, when the second data B is input, it is compared with the value A of the comparison register. If the data is not the same data, the second data B remains in a discontinuous state. The value of the comparison register A is stored in the buffer. At this time, the value of the input second data B is set as the value B of the comparison register. In addition, the value of the discontinuous code number register 230 is increased by one to two.

한편, 비연속 상태에서 현재 입력된 두 번째 데이터(B) 값과 비교 레지스터 (210)의 값(B)이 같은 값이면 상태는 비연속 상태에서 연속 상태로 상태천이를 한다. 이에 따라, 연속 코드개수 레지스터(240)를 2로 설정한다.On the other hand, if the second data B value currently input in the discontinuous state and the value B of the comparison register 210 are the same value, the state transitions from the discontinuous state to the continuous state. Accordingly, the continuous code count register 240 is set to two.

위와 같이, 연속 상태에서 입력된 데이터(B)의 값이 비교 레지스터(210)의 값(B)과 동일하면, 상태는 연속 상태로 남게 되고 연속 코드개수 레지스터(240)의 값은 1 증가되어 3이 된다. 이후 비교 레지스터(210)의 값(B)과 다른 데이터가 입력되면 버퍼에는 "1A3B"의 값이 저장된다.As above, if the value of the data B input in the continuous state is the same as the value B of the comparison register 210, the state remains in the continuous state and the value of the continuous code count register 240 is increased by 1 to 3 Becomes Thereafter, when data different from the value B of the comparison register 210 is input, a value of “1A3B” is stored in the buffer.

그러나, 연속 상태에서 입력된 데이터의 값(C)이 비교 레지스터의 값(B)과 다르면, 상태는 비연속 상태로 천이하고 비교 레지스터(210)에 있는 값(B)을 버퍼에 저장한다. 따라서, 현재 버퍼에 있는 값은 "1A2B"가 되고, 입력된 데이터의 값(C)이 비교 레지스터(210)의 새로운 값(C)이 되며, 비연속 코드개수 레지스터(230)의 값은 1이 된다.However, if the value C of the data input in the continuous state is different from the value B of the comparison register, the state transitions to a non-continuous state and stores the value B in the comparison register 210 in the buffer. Therefore, the value currently in the buffer becomes "1A2B", the value C of the input data becomes the new value C of the comparison register 210, and the value of the discontinuous code count register 230 is 1 do.

이와 같은 상태에서 더 이상의 데이터의 입력이 없어 완료된 경우, 비교 레지스터(210)에 있는 값(C)은 비연속 코드개수 레지스터(230)의 값(1)과 함께 버퍼에 저장되어, 버퍼에 저장된 값은 "1A2B1C"이 되며, 이 값이 부호화기를 통해 부호화가 이루어지게 된다.In this state, when there is no further data input and is completed, the value C in the comparison register 210 is stored in the buffer together with the value 1 of the discontinuous code count register 230, and the value stored in the buffer. Becomes "1A2B1C", and this value is encoded through the encoder.

한편, 위의 과정에서는 입력되는 두 개의 데이터가 연속으로 동일하더라도 연속 코드로 처리하였으나, 실제로 압축 효율상 4개 데이터 이상이 동일하더라도 연속 코드로 처리함으로써 압축 효율은 조금 더 좋다는 결과가 나왔다.On the other hand, in the above process, even if the two input data is the same successively processed as a continuous code, the compression efficiency is slightly better by processing as a continuous code even if more than four data is the same in terms of compression efficiency.

위와 같이 압축 효율을 높이는 방법은 기존의 RLC와 비교하여 부호화 및 복호화의 난이도에 있어 거의 차이가 없으나, 압축 효율을 높일 수 있는 장점과, DVD 플레이어에 적용하여 비트맵(Bitmap) 압축 및 복원에 적용할 수 있으며, 그 이외에도 위성 방송 수신기 등을 포함하는 멀티미디어 재생 장치에도 적용할 수 있다.As mentioned above, the method of increasing the compression efficiency has almost no difference in the difficulty of encoding and decoding as compared to the existing RLC. However, the advantage of improving the compression efficiency is applied to the DVD player and applied to bitmap compression and decompression. In addition, the present invention can be applied to a multimedia reproducing apparatus including a satellite broadcasting receiver.

이상 설명한 바와 같이 본 발명에 의하면, 대용량의 영상을 디스플레이하는 DVD 플레이어 등과 같은 멀티미디어 플레이 장치에서, 디스플레이하고자 하는 영상이 연속 또는 비연속적 구조이더라도 RLC 방식보다 부호화 및 복호화의 난이도가 복잡하지 않으면서 압축 효율을 높일 수 있는 데이터 압축 장치 및 방법을 실현할 수 있다.As described above, according to the present invention, in a multimedia player such as a DVD player displaying a large amount of video, even if the video to be displayed is a continuous or discontinuous structure, the encoding efficiency is less complicated than that of the RLC method. A data compression apparatus and method can be realized.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention.

따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments.

본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.

이상에서 설명한 바와 같이 본 발명에 의하면, 부호화해야 할 영상 데이터에 대하여 그 코드 상태를 연속 상태와 비연속 상태의 교번으로 인식하고 간략화하여 압축함으로써, 그 압축 효율을 높일 수 있을 뿐만 아니라, 부호화 및 복호화시에 CPU 리소스와 속도 문제를 해결할 수 있다.As described above, according to the present invention, the compression efficiency is not only increased, but also encoded and decoded by recognizing, simplifying, and compressing the code state of the video data to be encoded in an alternating state of a continuous state and a discontinuous state. CPU resources and speed issues can be solved.

Claims (10)

입력된 데이터를 부호화할 때 초기에 비연속 상태로 하여 압축을 수행하는 데이터 압축 방법에 있어서,In the data compression method for performing compression by initially discontinuous when encoding the input data, 첫 번째 데이터가 입력되면 상기 비연속 상태로 천이하고, 상기 입력된 데이터를 비교 데이터로 설정하는 제 1 단계;Transitioning to the discontinuous state when first data is input, and setting the input data as comparison data; 이후에 데이터가 입력되면 상기 비교 데이터와 비교하여 상기 비연속 상태 또는 연속 상태로 천이하고, 상기 비교 데이터를 버퍼에 저장하거나, 상기 입력된 데이터를 새로운 비교 데이터로 설정하는 제 2 단계; 및Thereafter, when data is input, comparing with the comparison data, transitioning to the discontinuous or continuous state, storing the comparison data in a buffer, or setting the input data as new comparison data; And 상기 제 2 단계를 반복한 후 상기 데이터의 입력이 완료되면 상기 버퍼에 저장된 데이터를 부호화하는 제 3 단계를 포함하는 것을 특징으로 하는 데이터 압축 방법.And a third step of encoding the data stored in the buffer when the input of the data is completed after repeating the second step. 제 1 항에 있어서,The method of claim 1, 상기 제 1 단계에서, 상기 입력된 데이터를 비교 레지스터의 값으로 설정한 경우에 비연속 코드 개수를 1로 설정하는 것을 특징으로 하는 데이터 압축 방법.In the first step, when the input data is set to the value of the comparison register, the number of non-contiguous codes is set to 1. 제 1 항에 있어서,The method of claim 1, 상기 제 2 단계에서, 두 번째 데이터가 입력되어 상기 비교 레지스터의 값과 비교하여 같지 않은 경우, 비연속 상태로 하여 상기 비교 레지스터의 값을 버퍼에 저장하고, 입력된 상기 데이터의 값을 상기 비교 레지스터의 값으로 설정하며, 비연속 코드 개수의 값을 1 증가시키는 것을 특징으로 하는 데이터 압축 방법.In the second step, when the second data is input and not equal to the value of the comparison register, the second register stores the value of the comparison register in a buffer in a non-continuous state and stores the value of the input data in the comparison register. And setting the value of the number of discontinuous codes to one. 제 1 항에 있어서,The method of claim 1, 상기 제 2 단계에서, 비연속 상태일 경우에 상기 입력된 데이터의 값과 상기 비교 레지스터의 값이 같으면, 상기 비연속 상태에서 상기 연속 상태로 천이하며, 연속 코드 개수의 값을 2로 설정하는 것을 특징으로 하는 데이터 압축 방법.In the second step, when the value of the input data and the value of the comparison register in the case of the non-continuous state is equal, the transition from the non-continuous state to the continuous state, and setting the value of the number of consecutive codes to 2 Characteristic data compression method. 제 4 항에 있어서,The method of claim 4, wherein 상기 연속 상태에서, 상기 입력된 데이터의 값과 상기 비교 레지스터의 값이 동일할 경우, 상기 연속 상태로 하여 상기 연속 코드 개수의 값을 1 증가시키는 것을 특징으로 하는 데이터 압축 방법.And in the continuous state, if the value of the input data and the value of the comparison register are equal, increase the value of the number of consecutive codes by one in the continuous state. 입력된 데이터를 다음 번에 입력되는 데이터와 비교하기 위하여 비교 데이터로 저장하는 비교 저장부;A comparison storage unit which stores the input data as comparison data to compare the input data with data input next time; 상기 입력된 데이터의 값이 상기 비교 레지스터의 값과 다를 경우에 비연속 코드개수의 값을 증가시켜 저장하는 비연속 코드개수 저장부;A non-continuous code count storage unit for increasing and storing the value of the non-continuous code count when the value of the input data is different from the value of the comparison register; 상기 입력된 데이터의 값이 상기 비교 레지스터의 값과 동일한 경우에 연속 코드개수의 값을 증가시켜 저장하는 연속 코드개수 저장부;A continuous code count storage unit for increasing and storing the value of the continuous code count when the value of the input data is the same as the value of the comparison register; 상기 비교 레지스터의 값이 새로 변경될 경우에 변경되기 전의 데이터 값을 받아서 부호화(Encoding)하기 전에 대기 저장하는 버퍼; 및A buffer which receives and stores the data value before the change when the value of the comparison register is newly changed, before storing the encoded value; And 상기 입력된 데이터가 상기 비교 데이터와 비교하여 다른 경우에, 상기 비연속 코드개수의 값을 증가시켜 상기 비연속 코드개수 저장부에 저장하고 상기 입력된 데이터를 상기 비교 데이터로 상기 비교 저장부에 저장하며, 상기 입력된 데이터가 상기 비교 데이터와 비교하여 동일한 경우에, 상기 연속 코드개수의 값을 증가시켜 상기 연속 코드개수 저장부에 저장하고 상기 입력된 데이터를 상기 비교 데이터로 상기 비교 저장부에 저장하며, 상기 비교 저장부의 값이 변경되기 전의 상기 비교 데이터를 상기 버퍼에 저장하는 과정을 반복하고, 상기 데이터의 입력이 종료되면 상기 버퍼에 저장되어 있는 데이터를 압축 코딩하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 데이터 압축 장치.If the input data is different from the comparison data, the value of the number of discontinuous codes is increased to be stored in the non-continuous code count storage unit and the input data is stored as the comparison data in the comparison storage unit. And if the input data is the same as that of the comparison data, increase the value of the number of consecutive codes and store the number of consecutive codes in the storage unit and store the input data as the comparison data in the comparison storage unit. And repeating a process of storing the comparison data before the value of the comparison storage unit is changed in the buffer, and controlling to compress and code the data stored in the buffer when the input of the data is completed. Characterized in that the data compression device. 제 6 항에 있어서,The method of claim 6, 상기 부호화를 시작할 때의 초기에는 비연속 상태이며, 첫 번째 데이터가 입력되면 비연속 상태로 천이를 하고, 상기 입력된 데이터를 상기 비교 데이터로 설정하는 것을 특징으로 하는 데이터 압축 장치.Initially at the start of the encoding is a discontinuous state, when the first data is input, transition to the discontinuous state, and the input data is set as the comparison data. 제 7 항에 있어서,The method of claim 7, wherein 두 번째 데이터가 입력되면, 상기 비교 데이터와 비교하여 다를 경우에 비연속 상태로 하고, 상기 비교 데이터를 상기 버퍼에 저장하며, 입력된 상기 두 번째 데이터의 값을 새로운 비교 데이터로 설정하며, 비연속 코드 개수의 값을 1 증가시 키는 것을 특징으로 하는 데이터 압축 장치.When the second data is input, when the difference is different from the comparison data, the second data is discontinuous, the comparison data is stored in the buffer, and the value of the input second data is set as new comparison data. And increasing the value of the number of codes by one. 제 7 항에 있어서,The method of claim 7, wherein 상기 비연속 상태에서 현재 입력된 데이터의 값과 상기 비교 데이터의 값이 동일할 경우에, 상기 상기 비연속 상태를 연속 상태로 천이하고, 연속 코드개수의 값을 2로 설정하는 것을 특징으로 하는 데이터 압축 장치.When the value of the data currently input in the non-continuous state and the value of the comparison data is the same, the non-continuous state transitions to a continuous state, and the value of the number of consecutive code set to 2 Compression device. 제 9 항에 있어서,The method of claim 9, 상기 연속 상태에서, 새로 입력된 데이터의 값이 상기 비교 데이터의 값과 동일하면, 상기 연속 상태로 하고 상기 연속 코드 개수의 값을 1 증가시키며, In the continuous state, if the value of newly input data is equal to the value of the comparison data, the continuous state is set and the value of the number of consecutive codes is increased by one. 상기 연속 상태에서 새로 입력된 데이터가 상기 비교 데이터의 값과 다르면, 상기 비연속 상태로 천이하고 상기 비교 데이터의 값을 상기 버퍼에 저장하며, 상기 입력된 데이터를 상기 비교 데이터로 설정하며, 상기 비연속 코드개수의 값을 1로 설정하는 것을 특징으로 하는 데이터 압축 장치.If the newly input data in the continuous state is different from the value of the comparison data, the data transitions to the non-continuous state and stores the value of the comparison data in the buffer, sets the input data as the comparison data, A data compression apparatus, wherein the value of the number of consecutive codes is set to one.
KR1020050031776A 2005-04-18 2005-04-18 Data file compressing method and apparatus KR20060109605A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050031776A KR20060109605A (en) 2005-04-18 2005-04-18 Data file compressing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050031776A KR20060109605A (en) 2005-04-18 2005-04-18 Data file compressing method and apparatus

Publications (1)

Publication Number Publication Date
KR20060109605A true KR20060109605A (en) 2006-10-23

Family

ID=37615804

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050031776A KR20060109605A (en) 2005-04-18 2005-04-18 Data file compressing method and apparatus

Country Status (1)

Country Link
KR (1) KR20060109605A (en)

Similar Documents

Publication Publication Date Title
RU2417518C2 (en) Efficient coding and decoding conversion units
US9299166B2 (en) Image compression method and apparatus for bandwidth saving
RU2125765C1 (en) Symbol compression method and device, statistical coder (options)
RU2630750C1 (en) Device and method for encoding and decoding initial data
US20040059770A1 (en) Method and apparatus for arithmetic coding, including probability estimation state table creation
TW200822579A (en) Data-modifying run length encoder to avoid data expansion
JP2016512004A (en) Data encoder, data decoder and method
RU2611249C1 (en) Entropy modifier and method to use it
KR100973519B1 (en) Over-drive device and method thereof
JP4888566B2 (en) Data compression method
US8525708B2 (en) Decoding device and coding method
US8018359B2 (en) Conversion of bit lengths into codes
KR100636370B1 (en) Apparatus and method for coding using bit-precision, and apparatus and method for decoding according to the same
KR20060109605A (en) Data file compressing method and apparatus
JP2016208356A (en) Image compression device, image compression method, image decompression device and image decompression method
US10931303B1 (en) Data processing system
WO2004056085A1 (en) Image encoding device and method, and encoded image decoding device and method
EP3168994A1 (en) Data compression of a sequence of binary data
US8754791B1 (en) Entropy modifier and method
KR101367811B1 (en) Data compression/decompression device and method
JP4780350B2 (en) Coding method for serial data communication
US20130188885A1 (en) Apparatus and method for coding image, and non-transitory computer readable medium thereof
CN112449201A (en) Decoding method, encoding method, corresponding devices, electronic equipment and storage medium
Strutz Rescaling of Symbol Counts for Adaptive rANS Coding
CN106993191A (en) Video streaming coding/decoding method and video streaming solution code system

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination