KR890004316B1 - Convertor to run-length codes - Google Patents
Convertor to run-length codes Download PDFInfo
- Publication number
- KR890004316B1 KR890004316B1 KR1019870002128A KR870002128A KR890004316B1 KR 890004316 B1 KR890004316 B1 KR 890004316B1 KR 1019870002128 A KR1019870002128 A KR 1019870002128A KR 870002128 A KR870002128 A KR 870002128A KR 890004316 B1 KR890004316 B1 KR 890004316B1
- Authority
- KR
- South Korea
- Prior art keywords
- zero
- code
- ram
- value
- data
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/46—Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
Abstract
Description
제1도는 본 발명에 따른 시스템도.1 is a system diagram according to the present invention.
제2도는 본 발명에 따른 흐름도.2 is a flow chart in accordance with the present invention.
제3도는 본 발명에 따른 복함코드 메모리 예시도.3 is a diagram illustrating a complex code memory according to the present invention.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
10 : 중앙처리장치 20 : 롬10: central processing unit 20: ROM
30 : 램 40 : 전송장치30: RAM 40: Transmission Device
본 발명은 데이타 전송시 복합 코드 부호 방법에 관한 것으로써, 특히 화상 데이타 전송에서 가변길이 값 코드부와 재로 연속길이 코드부를 두어 전송 압축 코드중 제로(0)값이 1개있을 경우 상기 제로의 연속길이 코드부에서 처리하지 않고 가변길이 코드값 코드부에서 처리하도록 프로그램을 제공하여 전송 압축율을 증가시키고 전송시간을 단축시킬 수 있는 복합 코드 부호 방법에 관한 것이다.The present invention relates to a complex code coding method for data transmission. In particular, in the case of image data transmission, a variable length value code part and a continuous length code part are provided so that when there is one zero value among transmission compression codes, The present invention relates to a complex code coding method capable of increasing a transmission compression ratio and shortening a transmission time by providing a program to be processed in a variable length code value code section instead of a length code section.
일반적으로 화상 전송은 화상의 질을 손상시키지 않는 범위에서 전송량을 줄여 전송시간을 단축하여 하는 것이 최근의 추세이다. 이를 위한 종래 방법으로는 DCT(Discrete Cosine Transform)와 RLC(Run Length Coding)을 결합한 방식이 이용되어 왔다.In general, image transmission is a recent trend to shorten the transmission time by reducing the transmission amount in a range that does not impair the quality of the image. As a conventional method for this, a method combining a discrete cosine transform (DCT) and a run length coding (RLC) has been used.
상기 종래의 방법을 구체적으로 설명하면 화상 데이타를 16×16 혹은 8×8등의 블럭으로 분할한 후 각 블럭에 대해 DCT를 하여 구한 16×16 혹은 8×8의 DCT 계수를 지그재그 스켄을 이용하여 RLC를 하였다.The conventional method will be described in detail by dividing image data into blocks such as 16 × 16 or 8 × 8, and performing DCT for each block using a zigzag scan to determine DCT coefficients of 16 × 16 or 8 × 8. RLC was performed.
상기 RLC 수행시 블럭내의 DCT 계수 분포를 고려하지 않아 많은 블럭내에서 비효율적인 RLC를 행하게 되어 전체 전송량이 증가하게 된다.When performing the RLC, inefficient RLC is performed in many blocks without considering DCT coefficient distribution in the block, thereby increasing the total transmission amount.
따라서 이를 해결하기 위해 블럭별 DCT 계수의 분포 구조에 따라 RLC의 방식에 변화를 주어 전체 전송량을 감축시키는 방법을 지도하여 본원 출원인이 출원한바 있읍니다.(특허출원 제 86-9696호, 제 86-9697호)Therefore, in order to solve this problem, the applicant of the present application has applied for a method of reducing the total transmission amount by changing the method of RLC according to the distribution structure of DCT coefficients for each block (Patent Application Nos. 86-9696 and 86-9697). number)
상기한 전송데이타를 DCT하면 제로(0)와 제로가 아닌 값들이 분포하게 된다. 이어서 RLC할시에 두가지 경우에 대해 각각 코드 테이블(Code Table)을 작성하는 것이 일반적인 방법이나 제로(0)의 값이 한개만 존재하는 경우에는 제로가 1개 연속되었다는 코드에 참조코드(Run Length Prefix)가 부가되어 전송되므로 오히려 전송효율을 감소시키는 문제점이 있었다.When DCT of the transmission data, zero and non-zero values are distributed. Subsequently, it is common practice to create a code table for each of the two cases in RLC. However, if there is only one value of zero, there is a reference code (Run Length Prefix). There is a problem in that the transmission efficiency is reduced since the transmission is added.
따라서 본 발명의 목적을 DCT한 값의 제로값에서 제로가 한개만 연속되는 경우 제로의 연속길이 코드부에서 처리하지 않고 가변값 코드부에서 처리하도록 하는 복합 코드 부호화 방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a complex code encoding method in which a variable value code unit does not process a zero continuous length code unit when only one zero is continuous from a zero value of a DCT value.
본 발명의 다른 목적은 화상데이타 전송시간을 단축시킬 수 있는 방법을 제공함에 있다.Another object of the present invention is to provide a method for shortening the image data transmission time.
이하 본 발명을 첨부된 도면을 참조하여 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
제1도는 본 발명에 따른 회로도로서, 입력에 따라 프로그램에 의해 전송데이타의 코드를 변환하며 데이타 전송을 제어하는 중앙처리장치(10)와, 시스템 제어프로그램과 제로 연속길이 코드와 가변길이 코드를 고정 데이타로 내장하고 있는 롬(20)과, 화상 데이타로 DCT한 전송데이타를 랜덤으로 기억하는 램(30)과, 디지탈 신호를 아나로그 전송에서 적합하도록 변조하여 주고 변조된 신호를 수신한 다음 복조하여 원래 데이타로 변환하는 전송장치(40)로 구성된다.1 is a circuit diagram according to the present invention, which converts a code of transmission data by a program according to an input, and fixes a system control program, a zero continuous length code and a variable length code.
제2도는 본 발명에 따른 흐름도이고, 제3도는 본 발명에 따른 복합 코드예로서 (3A)는 가변길이 값 코드이고, (3B)는 제로 연속길이 코드이다.2 is a flowchart according to the present invention, and FIG. 3 is an example of a complex code according to the present invention, where 3A is a variable length value code and 3B is a zero continuous length code.
상기 (3A) (3B)에서 특수 코드로 구간 끝 코드(EOB), 참조코드, 값업코드, 제로업코드를 포함하고 있다.In (3A) and (3B), a special code includes an end-of-segment code (EOB), a reference code, a value up code, and a zero up code.
따라서 본 발명의 구체적 일실시예를 상술한 제1도-제3도를 참조하여 상세히 설명하면 전송할 DCT 데이터가 중앙처리장치(10)의 제어에 의해 램(30)으로 들어오면 전송 모드에서 RLC를 하는데 (2a)과정에서 한 프레임의 블럭의 마지막까지 중앙처리장치(10)에서 체크하여 (2c)과정에서 전송용 데이타(이하 "x"라 칭함)를 읽는다.Therefore, a specific embodiment of the present invention will be described in detail with reference to FIGS. 1 to 3 as described above. When DCT data to be transmitted enters the
상기에서 "x"가 제로(0)일때 제로 런 카운터(Zero Run Counter : 이하 ZRC라 칭함)를 1씩 증가시키면서 다음 데이타를 읽어들이게 된다.When " x " is zero, the next data is read while increasing the zero run counter (hereinafter referred to as ZRC) by one.
상기 과정에서 계속 읽어가다가 제로가 아니면 이전까지의 ZRC가 제로인지 또는 아닌지를 (2f)과정에서 체크한다.Continue reading in the above process, and if it is not zero, it is checked in step (2f) whether the previous ZRC is zero or not.
상기 (2f)과정에서 제로가 아니면 제로 런에 대한 변환을 하는데 (2g)과정에서 제로가"하나"인가를 체크한다. 상기 (2g)과정에서 하나일때는 (2h)과정에서 PBASE(0-15)의 범위에서 코드 어드레스를 지정한 후 다음을 위해 ZRC를 클리어하며 (2i)과정에 지정된 값을 롬(20)으로부터 읽어낸다. 즉 가변길이 코드부(3A)의 "1"를 코드 메모리인 램(30)에 (2j)과정에서 입력시킨 후 "x"에 대한 변환을 미치게 된다.If it is not zero in step (2f), the conversion for zero run is performed. In step (2g), it is checked whether zero is "one". In the case of one in the step (2g), the code address is specified in the range of PBASE (0-15) in the step (2h), then the ZRC is cleared for the next, and the value specified in the step (2i) is read from the
상기 (2g)과정에서 제로가 하나 이상일때 (2k)과정에서 제로가 15개인가를 체크하여 15개이전이라면 제로 갯수를 지정할 수 있는 "ZBASE"에 ZRC를 더하여 제3도 제로 연속길이 코드(3B)가 내장된 롬(20)의 번지를 지정하고 다음 기능을 위해 ZRC를 클리어한후 상기 롬(20)에 읽은 코드앞에 참조코드("101")를 부여 램(30)에 저장하면 다음은 제로 연속길이 코드(3B)에서 찾을수 있게된다.In the case of (2g), if there is more than one zero, in step (2k), it checks 15 zeros, and if it is more than 15, add ZRC to "ZBASE" which can designate the number of zeros. After designating the address of the embedded
상기 코드 변환을 예를들어 설명하면 제3도 가변길이 코드부(3A)의 -4인 "1"이 있을 경우 제로가 연속으로 5개이므로 제3도 (3B)에서 "1"를 찾게되므로 보다 축소시켜 변환하며 다시 참조코드 "101"를 부여하면 (3B)에서 다시 제로가 3개 연속이므로 "10"을 찾게된다.For example, when the code conversion is described as "1" which is -4 of the 3rd degree variable length code part 3A, since zero is five consecutively, since "1" is found in 3rd degree 3B, If it is reduced and converted, and the reference code "101" is given again, in (3B), "10" is found because zero is three consecutive times again.
상기 (2f)과정에서 ZRC가 "0"가 아닐경우 램(30)에 변환코드를 저장시킨 후 ZRC가 "0"인 경우 (2n)과정에서 x값이 양수인지 음수인지를 체크하여 x<0일때 -16보다 큰지 또는 적은지를 체크하며, 상기에서 x값이 -16보다 크지 않을때는 x값을 절대값으로 치환한후 음수값을 더하여 롬(20)의 어드레스를 (2v)과정에서 지정하여 (2w)과정에서 코드를 읽어내어 (2t)과정에서 램(30)에 저장한다.If ZRC is not "0" in the process (2f), after the conversion code is stored in the
상기 (2n)과정에서 x의 값이 0보다 클때 제2도의 (2o)과정에서 x>16이 아닐때는 x값에다 PBASE(0-15)값을 더하여 롬(20)의 어드레스를 (2p)과정에서 지정하여 (2g)과정에서 코드를 읽어낸후 램(30)에 (2t)과정에서 저장한다. 상기 (2o)과정이나 (2u)과정에서 x가 16보다 크거나 x가 -16보다 적을 경우에는 제3도 (3A)의 업코드(0001)를 (2r)과정에서 부여하여 상기 (2r)과정의 업코드에 8비트인 다른 "x"값 (X 8Bit)를 (2s)과정에서 코드를 부여하고, (2t)과정에서 램(30)의 코드메모리에 저장한다.When the value of x is greater than 0 in step (2n), when x> 16 in step (2o) of FIG. 2, the address of the
한편 상기 (2k)과정에서 ZRC가 15보다 클때는 제3도의 (3B)에서 제로 업 코드(0000001)를 (2x)과정에서 부여하여 상기 (2x)과정에서 부여한 코드에서 6비트의 코드를 더하여 램(30)에 저장한다.On the other hand, when ZRC is greater than 15 in step (2k), a zero up code (0000001) is assigned in step (2x) in (3B) of FIG. 3, and a 6-bit code is added to the code given in step (2x). Save to 30.
또한 (2a)과정에서 블럭의 끝일때는 제3도 (3A)의 구간 끝 코드(00001)를 (2z)과정에서 부과하며 계속 제로일경우 00001를 부여하여 비트의 끝(EOB)을 알린다.Also, at the end of the block in step (2a), the section end code (00001) of FIG. 3 (3A) is imposed in step (2z), and if it is zero, 00001 is given to indicate the end of the bit (EOB).
상기 전 과정에서 처리한 램(30)의 코드값을 모뎀(40)이나 다른 출력장치를 통해 공중선으로 화상신호를 전송한다.The code value of the
상술한 바와같이 화상 데이타를 전송시 새로운 복합 코드를 채용함으로써 전송시간을 단축할 수 있는 이점이 있다.As described above, there is an advantage that the transmission time can be shortened by employing a new complex code when transmitting image data.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019870002128A KR890004316B1 (en) | 1987-03-11 | 1987-03-11 | Convertor to run-length codes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019870002128A KR890004316B1 (en) | 1987-03-11 | 1987-03-11 | Convertor to run-length codes |
Publications (2)
Publication Number | Publication Date |
---|---|
KR880012024A KR880012024A (en) | 1988-10-31 |
KR890004316B1 true KR890004316B1 (en) | 1989-10-30 |
Family
ID=19259962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019870002128A KR890004316B1 (en) | 1987-03-11 | 1987-03-11 | Convertor to run-length codes |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR890004316B1 (en) |
-
1987
- 1987-03-11 KR KR1019870002128A patent/KR890004316B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR880012024A (en) | 1988-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR970005575B1 (en) | Bitrate reduction method and circuitry | |
US5227789A (en) | Modified huffman encode/decode system with simplified decoding for imaging systems | |
US4454546A (en) | Band compression device for shaded image | |
EP0279799B1 (en) | Method and means for variable length coding | |
KR100335138B1 (en) | Video encoder's variable encoder and coding method using it | |
US5550542A (en) | Variable length code look-up table having separate code length determination | |
EP0616471A2 (en) | Coding of digital signals | |
US4574382A (en) | Variable length character code system | |
US6225922B1 (en) | System and method for compressing data using adaptive field encoding | |
JP3410629B2 (en) | Variable length coding circuit and variable length coding method | |
US5594435A (en) | Permutation-based data compression | |
US5751233A (en) | Decoding apparatus and method therefor | |
US4618846A (en) | Data coding | |
US6157327A (en) | Encoding/decoding device | |
KR890004316B1 (en) | Convertor to run-length codes | |
JPH05227440A (en) | Device and method of coding data | |
US5561422A (en) | Method and apparatus for variable length coding with reduced memory requirement | |
US5654704A (en) | Video variable length code encoder with EOB insertion responsive to word length | |
JPH02243080A (en) | Television signal coding circuit | |
JPS6352812B2 (en) | ||
EP0499225B1 (en) | Variable-length code decoding device | |
JPS6276931A (en) | Data compressor | |
KR0148152B1 (en) | Adaptive variable length coding/decoding method and apparatus of image data | |
JPH0311883A (en) | Decoding system for variable length code, and facsimile equipment and still picture transmission system | |
KR960016012B1 (en) | Variable length coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20020930 Year of fee payment: 14 |
|
LAPS | Lapse due to unpaid annual fee |