KR0178711B1 - Coding and Decoding System Using Adaptive Post Processing - Google Patents
Coding and Decoding System Using Adaptive Post Processing Download PDFInfo
- Publication number
- KR0178711B1 KR0178711B1 KR1019920012176A KR920012176A KR0178711B1 KR 0178711 B1 KR0178711 B1 KR 0178711B1 KR 1019920012176 A KR1019920012176 A KR 1019920012176A KR 920012176 A KR920012176 A KR 920012176A KR 0178711 B1 KR0178711 B1 KR 0178711B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- image data
- filter
- output
- error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
본 발명은 소정 크기의 블록으로 분할된 영상데이타를 부호화 및 복호화시키는 시스템에서 양자화레벨 및 복원데이타의 손상된 정도에 따라 복원데이타를 적응적으로 후처리하는 시스템에 관한 것으로, 원신호와 복원신호간의 오차를 산출하여 복원신호의 손상된 정도를 전송하는 부호화시스템과, 부호화시스템에서 전송되는 손상정도에 따라 적응적으로 소정의 필터링을 수행하고 양자화레벨에 따라 복원신호 또는 필터링된 복원신호를 선택하여 디스플레이부로 출력하는 복호화시스템을 구비하므로써, 화상의 블록킹현상을 방지하고 보다 개선된 화질을 제공하기 위한 부호화 및 복호화시스템이다.The present invention relates to a system for adaptively post-processing reconstructed data according to the degree of damage of quantization level and reconstructed data in a system for encoding and decoding image data divided into blocks of a predetermined size. A coding system that transmits a degree of damage of the reconstruction signal by calculating a, and adaptively performs predetermined filtering according to the degree of damage transmitted from the coding system, and selects a reconstruction signal or a filtered reconstruction signal according to the quantization level and outputs the result to the display unit. It is an encoding and decoding system for preventing the blocking phenomenon of an image and providing more improved image quality by providing a decoding system.
Description
제1도는 종래의 영상데이타 부호화장치의 일 실시예를 나타내는 블록도.1 is a block diagram showing an embodiment of a conventional image data encoding apparatus.
제2도는 종래의 영상데이타 복호화장치의 일 실시예를 나타내는 블록도.2 is a block diagram showing an embodiment of a conventional image data decoding apparatus.
제3도는 버퍼점유율과 양자화레벨의 관계를 나타내는 그래프.3 is a graph showing the relationship between buffer occupancy and quantization level.
제4도는 본 발명에 의한 영상데이타 부호화장치의 일 실시예를 나타내는 블록도.4 is a block diagram showing an embodiment of an image data encoding apparatus according to the present invention.
제5도는 제4도에서의 데이타처리 블록을 나타내는 개략도.5 is a schematic diagram showing a data processing block in FIG.
제6도는 본 발명에 의한 영상데이타 복호화장치의 일 실시예를 나타내는 블록도.6 is a block diagram showing an embodiment of an image data decoding apparatus according to the present invention.
제7도는 제6도의 일부에 대한 상세블록도.7 is a detailed block diagram of a portion of FIG.
제8도는 제7도에서 제 1필터의 데이타처리관계를 나타내는 개략도.8 is a schematic diagram showing a data processing relationship of the first filter in FIG.
제9도는 제7도에서 제 2필터의 데이타처리관계를 나타내는 개략도.9 is a schematic diagram showing a data processing relationship of the second filter in FIG.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
11 : DCT부 13 : 양자화부11 DCT unit 13 quantization unit
13,20 : 가변장부호화부 14 : 버퍼13,20 variable variable encoding unit 14 buffer
15,25 : 역양자화부 16,26 : 역DCT부15,25 Inverse quantization unit 16,26 Inverse DCT unit
17,28 : 프레임메모리 18 : 운동예측부17,28: frame memory 18: motion prediction unit
19,29 : 운동보상부 24,27 : 가변장복호화부19,29: Compensation unit 24,27: Variable length decoding unit
21 : 데이타결합부 22 : 데이타분리부21: data combiner 22: data separator
41 : 오차계산부 42 : 등급분류기41: error calculation unit 42: classifier
60 : 후처리부 71,72 : 필터60: post-processing unit 71, 72: filter
74,75,77 : 선택부 73 : 임계값결정부74,75,77: selection unit 73: threshold determination unit
76 : 위치검출부76: position detection unit
본 발명은 영상신호를 부호화 및 복호화하는 시스템에 관한 것으로, 특히 부호화 및 복호화시 화상의 움직임정도에 따라 영상신호를 적응적으로 처리함으로써 보다 개선된 화질을 제공하기 위한 부호화 및 복호화시스템에 관한 것이다.The present invention relates to a system for encoding and decoding an image signal, and more particularly, to an encoding and decoding system for providing improved image quality by adaptively processing an image signal according to the degree of motion of an image during encoding and decoding.
일반적으로 영상데이타를 저장 또는 전송하기 위해 데이타를 압축하는 방법으로서 운동보상을 이용한 DCT(Discrete Cosine Transform)부호화방법이 사용되고 있다.In general, DCT (Discrete Cosine Transform) encoding method using motion compensation is used as a method of compressing data to store or transmit image data.
영상신호의 부호화방법에는 DCT이외에도 여러가지 방법들이 있으며, 최근에는 디지탈신호처리기술의 발달로 영상신호의 처리가 가능한 처리속도를 갖는 IC들이 개발되고 있다. 이러한 부호화방법들은 현재 국제표준기구(ISO) 산하의 CCITT와 유럽의 CCIR 등의 기구에서 표준화작업이 진행중이다.In addition to DCT, there are various methods for encoding video signals. Recently, ICs having processing speeds capable of processing video signals have been developed due to the development of digital signal processing technology. These coding methods are currently being standardized by organizations such as CCITT under ISO and CCIR in Europe.
제1도는 종래의 부호화장치의 일 예로서, 운동보상을 이용한 DCT부호화시스템을 나타낸다. 제1도의 부호화장치는 입력영상데이타에 대해 DCT변환을 수행한 후 변환계수를 양자화시키는 수단과, 양자화된 데이타를 가변장부호화하여 데이타량을 더욱 압축시키는 수단과, 입·출력 데이타량이 일정하게 유지되고 양자화수단을 제어하기 위한 소정의 양자화레벨신호를 출력하는 버퍼와, 양자화된 데이타를 역양자화 및 역변환하고, 역변환되어 재구성된 화면과 부호화할 블록으로부터 운동예측 및 운동보상을 수행하는 수단으로 구성된다.1 illustrates a DCT encoding system using motion compensation as an example of a conventional encoding apparatus. The encoding apparatus of FIG. 1 includes means for quantizing transform coefficients after performing DCT transform on input image data, means for further compressing the data amount by variable-length encoding the quantized data, and keeping the input / output data amount constant. And a buffer for outputting a predetermined quantization level signal for controlling the quantization means, inverse quantization and inverse transformation of the quantized data, and means for performing motion prediction and motion compensation from the inversely reconstructed picture and the block to be encoded. .
입력단(10)을 통해 N×N블록의 영상데이타가 입력되고, 이 블록영상데이타와 궤환되는 영상데이타는 제 1가산기(A1)에서 오차데이타를 산출한다. 이 오차데이타는 DCT(11)에서 주파수영역의 데이타로 변환되고, 이때 변환된 변환계수의 에너지는 주로 저주파쪽으로 모이게 된다. 양자화부(12)는 소정의 양자화과정을 통해 변환계수들을 일정 레벨의 대표값들로 바꾸어 준다. 그러면, 제 1가변장부호화부(13)는 이 대표값들의 통계적 특성을 살려 가변장부호화하여 데이타(VCD)를 압축시킨다. 제 1가변장부호화부(13)의 출력데이타는 버퍼(14)로 공급되고, 버퍼(14)는 입력되는 영상데이타와 출력되는 영상데이타를 일정하게 유지되도록 가변되는 양자화레벨신호를 출력한다. 즉, 버퍼(14)에서 출력데이타는 일정하게 유지되나 입력데이타는 화상의 운동량이나 복잡성에 따라 데이타량이 변하게 된다. 따라서, 버퍼(14)는 양자화레벨(Q)을 양자화부(12)로 공급하여 양자화스텝사이즈를 변환시키므로써 제 1가변장부호화부(13)에서 발생되는 데이타량을 조절하여 버퍼(14)의 입·출력 데이타량이 같아지도록 한다. 제3도에는 양자화레벨(Q)과 버퍼점유율과 상관관계가 그래프로 도시되어 있다. 도시된 바와 같이 버퍼점유율과 양자화레벨은 비례하게 된다. 버퍼점유율이 증가하는 경우, 즉 버퍼(14)의 누적데이타량이 많아지면 양자화레벨이 커지고 이에 따라 양자화스텝사이즈가 증가하므로 부호화되는 데이타량이 감소되러 버퍼(14)의 입·출력 데이타량이 일정하게 유지된다.The image data of the N × N block is input through the input terminal 10, and the block image data and the image data fed back calculate the error data in the first adder A1. The error data is converted into data in the frequency domain in the DCT 11, and the energy of the converted conversion coefficient is mainly collected toward the low frequency side. The quantization unit 12 converts the transform coefficients into representative values of a predetermined level through a predetermined quantization process. Then, the first variable length coding unit 13 compresses the data V CD by performing variable length coding using the statistical characteristics of the representative values. The output data of the first variable length coding unit 13 is supplied to the buffer 14, and the buffer 14 outputs a variable quantization level signal so that the input image data and the output image data are kept constant. In other words, the output data in the buffer 14 remains constant, but the input data changes in accordance with the amount of motion or complexity of the image. Therefore, the buffer 14 supplies the quantization level Q to the quantization unit 12 to convert the quantization step size, thereby adjusting the amount of data generated by the first variable length encoding unit 13 to adjust the amount of data generated by the buffer 14. Make sure the input and output data amounts are the same. Figure 3 graphically shows the correlation between quantization level (Q) and buffer occupancy. As shown, the buffer occupancy and the quantization level are proportional. In the case where the buffer occupancy increases, that is, the cumulative data amount of the buffer 14 increases, the quantization level increases, and accordingly, the quantization step size increases, so that the amount of data to be encoded is reduced so that the input / output data amount of the buffer 14 remains constant. .
또한, 일반적으로 화면과 화면간에는 유사한 부분이 많으므로, 약간의 움직임이 있는 화면인 경우 그 움직임을 추정하여 운동벡터(MV; motion vector)를 산출하고, 이 운동벡터를 이용하여 데이타를 보상하여 주면 인접한 화면간의 차신호는 매우 작으므로 전송데이타를 더욱 압축시킬 수 있다. 이러한 운동보상을 수행하기 위해, 역양자화부(15) 및 역DCT부(16)는 양자화부(12)에서 출력하는 양자화계수를 역양자화시킨 다음 역변환시켜 공간영역의 영상데이타로 변환시킨다. 이 역변환된 영상데이타는 제 1가산기(A1)에서 출력되었던 오차데이타에 상응하는 재생오차데이타이다. 제 2가산기(A2)는 운동보상부(19)로부터 궤환되는 블록데이타에 역DCT부(16)에서 출력되는 오차데이타를 가산하여 출력하고, 이 출력데이타를 저장함으로써 프레임메모리(17)는 화면을 재구성한다. 그러면, 운동예측부(18)는 입력단(10)으로부터 입력되는 블록데이타와 가장 유사한 패턴의 블록데이타를 프레임 메모리(17)에 저장된 프레임데이타에서 찾아 2개 블록간의 움직임을 나타내는 운동벡터(MV)를 산출한다. 이 운동벡터(MV)는 복호화시스템에서 이용되기 위해 제 2가변장부호화부(20)를 겨쳐 수신측으로 전송되고 동시에 운동보상부(19)로 전송된다. 운동보상부(19)는 운동예측부(18)에서 공급되는 운동벡터에 따라 프레임메모리(17)의 프레임데이타에서 이 운동벡터에 상응하는 블록데이타를 독출하여 제 1가산기(A1)로 공급한다. 그러면, 제 1가산기는 전술한 바와 같이 입력단(10)에서 공급되는 블록데이타와 운동보상부(19)에서 공급되는 유사패턴의 블록데이타간의 오차데이타를 산출하고, 이 오차데이타는 다시 부호화된다. 이와 같이 부호화된 영상데이타(VCD)와 양자화레벨(Q)과 운동벡터(MV)는 데이타결합부(21)에서 결합되어 전송데이타(VT)로서 수신측으로 전송된다.In general, since there are many similar parts between the screen and the screen, if the screen has a slight movement, the motion vector is estimated by calculating the motion vector, and the data is compensated using the motion vector. Since the difference signal between adjacent screens is very small, the transmission data can be further compressed. In order to perform such motion compensation, the inverse quantization unit 15 and the inverse DCT unit 16 inversely quantize the quantization coefficients output from the quantization unit 12 and inversely transform the image data of the spatial domain. The inversely transformed image data is reproduction error data corresponding to the error data output from the first adder A1. The second adder A2 adds the error data output from the inverse DCT unit 16 to the block data fed back from the motion compensator 19, and stores the output data so that the frame memory 17 displays the screen. Reconstruct Then, the motion predicting unit 18 searches for block data having a pattern most similar to the block data input from the input terminal 10 from the frame data stored in the frame memory 17, and provides a motion vector MV representing the motion between two blocks. Calculate. This motion vector (MV) is transmitted to the receiving side via the second variable length coding unit 20 for use in the decoding system and simultaneously to the motion compensating unit 19. The motion compensator 19 reads block data corresponding to the motion vector from the frame data of the frame memory 17 according to the motion vector supplied from the motion predictor 18 and supplies it to the first adder A1. Then, as described above, the first adder calculates error data between the block data supplied from the input terminal 10 and the block data of the similar pattern supplied from the motion compensator 19, and the error data is encoded again. The encoded image data V CD , the quantization level Q, and the motion vector MV are thus combined in the data combiner 21 and transmitted to the receiving side as transmission data V T.
이와 같이 전송되는 영상데이타는 제2도와 같은 복호화장치로 입력된다. 복호화장치의 데이타분리부(22)는 전송데이타(VT)를 다시 부호화된 영상데이타(VCD)와 양자화레벨(Q)과 운동벡터(MV)로 분리한다. 그러면, 부호화된 영상데이타(VCD)는 버퍼(23)를 거쳐 제 1가변장부호화부(24)에서 가변장부호화의 역과정을 통해 복호화되고, 제 1가변장부호화부(24)에서 출력되는 데이타는 역양자화부(25)에서 주파수대역의 변환계수로 역양자화된다. 역DCT부(26)는 역양자화부(25)에서 공급되는 주파수영역 변환계수를 공간영역의 영상데이타로 변환시킨다. 이때, 역변환된 영상데이타는 제1도의 부호화장치에서 제 1가산기(A1)로 부터 산출되는 오차데이타에 상응하는 재생오차데이타이다. 또한, 부호화장치의 운동예측부(18)에서 산출되어 전송되는 운동벡터(MV)는 마찬가지로 데이타분리부(22)에서 분리되어 제 2가변장부호화부(27)에서 복호화된 다음, 운동보상부(29)로 공급되고, 운동보상부(29)는 프레임메모리(28)에 저장된 프레임데이타에서 운동벡터(MV)에 상응하는 블록데이타를 돌출하여 가산기(A)로 공급한다. 그러면, 역변환된 오차데이타와 운동보상부(29)에서 공급되는 블록데이타가 가산기(A)에서 조합되어 디스플레이부로 전송된다.The image data transmitted as described above is input to a decoding apparatus as shown in FIG. The data separator 22 of the decoding apparatus separates the transmission data V T into the encoded image data V CD , the quantization level Q and the motion vector MV. Then, the encoded image data V CD is decoded through a reverse process of variable length encoding by the first variable length encoding unit 24 through the buffer 23, and output from the first variable length encoding unit 24. The data is inversely quantized by the inverse quantization unit 25 by the conversion coefficient of the frequency band. The inverse DCT unit 26 converts the frequency domain transformation coefficient supplied from the inverse quantization unit 25 into image data of the spatial domain. In this case, the inversely transformed image data is reproduction error data corresponding to the error data calculated from the first adder A1 in the encoding apparatus of FIG. In addition, the motion vector MV calculated and transmitted by the motion predictor 18 of the encoding apparatus is similarly separated by the data separator 22 and decoded by the second variable length encoder 27, and then the motion compensator ( 29), the motion compensator 29 protrudes block data corresponding to the motion vector MV from the frame data stored in the frame memory 28 and supplies it to the adder A. FIG. Then, the inversely transformed error data and the block data supplied from the motion compensation unit 29 are combined in the adder A and transmitted to the display unit.
그러나, 이와 같은 종래의 부호화 및 복호화시스템은 데이타전송률이 낮은 경우, 즉 압축률이 높은 경우 화상에 움직임이 많거나 또는 불규칙한 움직임들이 많을 때, 복원된 화상의 블록경계부근이 두드러지게 나타나는 블록킹현상이 발생하고 또한 양자화잡음으로 인한 불규칙한 잡음 등이 생겨 복원된 화상이 시각적으로 열화되는 현상이 발생하는문제점이 있었다.However, in the conventional encoding and decoding system, when the data rate is low, that is, when the compression rate is high, a blocking phenomenon occurs in which the block boundary of the reconstructed picture is prominent when there is a lot of motion or irregular motion in the picture. In addition, irregular noise due to quantization noise, etc., causes a problem of visual degradation of the restored image.
따라서, 본 발명의 목적은 영상데이타를 소정 크기의 블록단위로 부호화함에 있어서, 부호화되기 이전의 영상데이타에 대해 부호화된 다음 다시 복원된 영상데이타가 손상된 정도를 산출하여 부호화된 영상데이타와 함께 출력하므로써 보다 더 효과적인 부호화데이타를 전송하기 위한 부호화시스템을 제공함에 있다.Accordingly, an object of the present invention is to calculate the degree of corruption of image data that has been encoded and then reconstructed for image data before being encoded, and to output the image data together with the encoded image data. The present invention provides an encoding system for transmitting more efficient encoding data.
본 발명의 다른 목적은 전술한 바와 같은 부호화시스템에서 전송되는 영상데이타를 복호화함에 있어서, 복원된 화상의 손상정도 및 양자화레벨에 따라 복호화된 영상신호를 적응적으로 후처리함으써 보다 개선된 화질을 제공하기 위한 복호화시스템을 제공함에 있다.Another object of the present invention is to further improve image quality by adaptively post-processing a decoded video signal according to the degree of damage of the reconstructed picture and the quantization level in decoding the video data transmitted from the encoding system as described above. To provide a decoding system for providing.
이와 같은 본 발명의 목적은 소정 크기의 블록으로 분할된 화상데이타를 양자화하는 수단과, 양자화수단의 출력데이타량을 조절하기 위한 양자화레벨을 출력하는 버퍼와, 운동보상을 수행하기 위해 양자화데이타를 복원하는 수단을 구비한 영상데이타의 부호화장치에 있어서, 부호화되기 위해 입력되는 영상데이타와 복원수단에서 복원되는 영상데이타를 각각 공급받아, 2개 데이타간의 오차값을 산출하는 수단과, 오차산출수단에서 출력되는 오차값을 소정의 등급들과 비교하여 해당 등금의 데이타를 출력하여 전송하는 등급분류수단에 의하여 달성된다.The object of the present invention is to provide a means for quantizing image data divided into blocks of a predetermined size, a buffer for outputting a quantization level for adjusting the output data amount of the quantization means, and a quantization data for restoring motion compensation. An apparatus for encoding video data having a means for receiving the video data, the means for calculating an error value between two data and receiving the video data input to be encoded and the video data reconstructed by the restoring means, and outputting the error data from the error calculating means. It is achieved by the classification means for outputting and transmitting the data of the corresponding grade by comparing the error value to the predetermined grades.
본 발명의 다른 목적은 소정 크기의 블록으로 분할되어 부호화된 영상데이타를 전송된 양자화레벨에 맞춰 역양자화하는 수단과, 운동보상방식을 이용하여 역양자회된 영상데이타를 부호화이전의 상태로 복원하는 수단을 구비한 복호화장치에 있어서, 전술한 부호화장치에서 출력되어 전송된 부호화데이타가 입력되는 수단과, 입력수단에서 공급되는 양자화레벨 및 등급데이타와 복원수단에서 영상데이타를 공급받아 이 복원 영상데이타를 등급데이타에 따라 적응적으로 필터링하고, 필터링데이타와 복원영상데이타를 양자화레벨에 따라 선택적으로 출력하는 후처리수단에 의하여 달성된다.Another object of the present invention is a means for inverse quantization of coded image data divided into blocks having a predetermined size according to the transmitted quantization level, and restoring the inverse quantized image data using a motion compensation method to a state before encoding. A decoding apparatus having means, comprising: means for inputting encoded data output from the above-described encoding apparatus and transmitted, and quantization level and grade data supplied from the input means, and image data supplied from the means for restoring the restored image data. It is achieved by post-processing means for adaptively filtering according to the grade data and selectively outputting the filtering data and the reconstructed image data according to the quantization level.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 기술하기로 한다. 제4도는 본 발명에 의한 부호화장치의 일 실시예를 나타낸다. 제4도의 부호화장치는 제1도의 부호화장치에서, 복원된 영상데이타와 부호화되기 이전의 원 영상데이타간의 오차데이타를 산출하는 오차계산부(14)와, 이 산출된 오차데이타를 오차정도에 따라 등급별로 분류하는 등급분류기(42)를 추가로 구비하고 있다. 제4도에서 제1도와 동일한 구성요소에 대하여는 동일한 부호를 부여하였으며, 또한 동일한 구성요소의 동작설명은 앞에서 상술하였으므로 생략하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. 4 shows an embodiment of an encoding apparatus according to the present invention. In the encoding apparatus of FIG. 4, the encoding apparatus of FIG. 1 includes an error calculator 14 that calculates error data between the reconstructed image data and the original image data before being encoded, and classifies the calculated error data according to the degree of error. It further comprises a classifier 42 classified as. In FIG. 4, the same reference numerals are given to the same elements as those in FIG. 1, and the description of the operation of the same elements will be omitted.
오차계산부(41)는 입력단(10)를 통해 인가되는 블록단위의 영상데이타(Si)와 제 2가산기(A2)에서 출력되는 복원된 블록데이타(So)를 공급받아, 이들 2개 영상데이터의 오차를 산출한다. 이때, 오차계산부(41)의 데이타처리단위는 소정 크기의 매크로블록(Macroblock)으로서, 하나의 매크로블록은 복수개의 단위블록으로 구성된다. 제5도에는 단위블록과 매크로블록의 관계를 나타내는 개략도가 도시되어 있으며, 실시예에서는 8×8단위블록과 32×16매크로블록을 사용하기로 한다. 32×16매크로블록에 대해 원화상데이타(Si)와 복원화상데이타(So)의 오차(E)를 다음의 [수식1]에 의해 산출된다.The error calculator 41 receives the block data S i and the reconstructed block data S o output from the second adder A2 through the input terminal 10. Compute the error of the data. At this time, the data processing unit of the error calculator 41 is a macroblock of a predetermined size, and one macroblock is composed of a plurality of unit blocks. FIG. 5 is a schematic diagram showing the relationship between the unit block and the macro block. In the embodiment, 8 × 8 unit blocks and 32 × 16 macro blocks will be used. The error E between the original image data S i and the restored image data S o for the 32 × 16 macroblock is calculated by the following formula (1).
여기서, E는 오차값, MN은 매크로블록의 크기, (m, n)은 화소의 위치이다.Where E is an error value, MN is the size of the macroblock, and (m, n) is the position of the pixel.
[수식1]에서 오차값(E)은 매크로블록단위의 원화상데이타(Si)와 복원화상데이타(So)의 오차에 대한 화소당 평균값을 나타낸다. 매크로블록의 크기인 M 및 N 값이 커질수록 전송되는 데이타량은 적어지나 복호화장치에서 후처리를 수행하기 위한 정확성은 저하되고, 반대로 M 및 N 값이 작아질수록 전송데이타량은 증가하나 후처리에서의 정확성은 향상된다.Error values from the formula 1] (E) represents the mean value per pixel for the error of the original image data (Si) and the restored image data (S o) of the macroblock. The larger the M and N values, the larger the size of the macroblock, the smaller the amount of data to be transmitted, but the accuracy for performing post-processing in the decoder decreases. The accuracy at is improved.
이와 같이, 오차계산부(41)에서 산출된 원화상과 복원화상간의 오차값은 등급분류기(42)로 공급된다. 등급분류기(42)는 오차값의 크기에 따라 여러가지 등급으로 분류하며, 각 등급은 복원화상의 손상된 정도를 나타낸다. 이때, 오차값(E)을 각 등급으로 분류하는 기준값들(Ref)은 실험적으로 얻어진다. 예를 들어, 오차값(E)을 4가지 등급으로 분류하는 경우, 기준값은 3개(Ref1, Ref2, Ref3)가 필요하게 된다.In this way, the error value between the original image and the restored image calculated by the error calculator 41 is supplied to the classifier 42. The classifier 42 classifies it into various grades according to the magnitude | size of an error value, and each grade represents the damage degree of a restored image. At this time, reference values Ref for classifying the error value E into each class are experimentally obtained. For example, when classifying the error value E into four classes, three reference values (Ref1, Ref2, Ref3) are required.
ERef1이면 등급 0, Ref1≤E≤Ref2이면 등급 1, Ref2≤E≤Ref3이면 등급 2, E≥Ref3이면 등급 3이 된다. 이때, Ref1, Ref2 및 Ref3은 실험적으로 얻어지는 신호의 크기로서 2, 4 및 6 등이 될 수 있다. 이와 같이, 오차가 작을수록 등급은 작아지고, 오차가 커질수록 등급도 커진다. 등급분류기(42)에서 출력되는 등급데이타(CLASS)는 데이타결합부(21)에서 부호화된 영상신호(VCD), 양자화레벨(Q) 및 운동벡터(MV)와 함께 결합되어 복호화장치로 전송된다.ERef1 is class 0, Ref1≤E≤Ref2 is class 1, Ref2≤E≤Ref3 is class 2, and E≥Ref3 is class 3. At this time, Ref1, Ref2 and Ref3 may be 2, 4, 6, etc. as the magnitude of the experimentally obtained signal. Thus, the smaller the error, the smaller the rating, and the larger the error, the larger the rating. The class data CLASS output from the classifier 42 is combined with the video signal V CD , the quantization level Q, and the motion vector MV coded by the data combiner 21 and transmitted to the decoding apparatus. .
제6도는 본 발명에 의한 복호화장치를 나타낸다. 제6도의 복호화장치는 제2도의 복호화장치에서, 복원된 영상신호(VDCD)를 양자화레벨(Q) 및 등급(CLASS)에 따라 적응적으로 후처리하기 위한 후처리부(60)를 추가로 구비하고 있다. 제6도에서 제2도와 동일한 구성요소에 대하여는 동일한 부호를 부여하였으며, 동일한 구성요소의 동작설명은 앞에서 상술하였으므로 생략하기로 한다.6 shows a decoding apparatus according to the present invention. The decoding apparatus of FIG. 6 further includes a post processor 60 for adaptively post-processing the reconstructed video signal V DCD according to the quantization level Q and the class CLASS in the decoding apparatus of FIG. Doing. In FIG. 6, the same reference numerals are given to the same elements as those in FIG. 2, and the description of the operation of the same elements will be omitted.
후처리부(60)는 부호화장치에서 산출되어 전송된 양자화레벨(Q)과 등급(CLASS)을 공급받고, 일련의 복호화시스템에 의해 복호화된 영상데이타(VDCD)를 공급받는다. 후처리부(60)는 입력되는 등급(CLASS)에 따라 복호화된 영상데이타(VDCD)를 적응적으로 필터링하고, 양자화레벨(Q)에 따라 필터링된 영상데이타 또는 복호화된 영상데이타(VDCD)를 선택적으로 출력한다. 이와 같은 후처리부(60)의 상세 블록도가 제7도에 도시되어 있다.The post processor 60 receives the quantization level Q and the class CLASS calculated and transmitted by the encoding apparatus, and receives the decoded image data V DCD by a series of decoding systems. The post processor 60 adaptively filters the decoded image data V DCD according to the input class CLASS, and filters the filtered image data or the decoded image data V DCD according to the quantization level Q. Optionally output A detailed block diagram of such a post processing unit 60 is shown in FIG.
제7도의 후처리부는 블록킹현상을 억제하기 위해 복호화된 영상데이타(VDCD)에 소정의 필터링을 수행하는 제 1필터(71)와, 소정 크기 이상의 양자화레벨(Q)을 갖는 복원영상데이타(VDCD)를 저역통과필터링하는 제 2필터(72)와, 등급데이타(CLASS)에 따라 복원영상데이타(VDCD) 또는 저역통과필터링된 영상데이타(VF2)를 선택적으로 출력하는 제 1선택부(74)와, 복원영상데이타가 블록의 경계인 경우 제 1필터(71)의 출력신호를 선택하여 출력하는 제 2선택부(75)와, 양자화레벨(Q)에 따라 복원영상데이타(VDCD) 또는 제 2선택부(75)의 출력영상데이타(VS2)를 선택적으로 출력하는 제 3선택부(77)로 이루어진다. 후처리부(60)는 복원된 영상데이타(VDCD)와 부호화장치에서 전송된 양자화레벨(Q) 및 등급데이타(CLASS)를 각각 공급받는다. 복원영상데이타(VDCD)는 제 1필터(71), 제 2필터(72), 제 1선택부(74)의 한 입력단 및 제 3선택부(77)의 한 입력단으로 각각 입력된다. 제 1필터(71)는 복원된 영상데이타의 블록의 경계에 대해 메디안필터링(Median Filtering)을 수행하여 블록킹현상이 억제되도록 한다. 이와 같이 제 1필터(71)로 사용되는 공간 메디안필터에서 필터링되는 화소가 제8도에 도시되어 있다. 제8도는 M×N매크로블록에 대한 것으로 X는 블록의 경계에 위치하는 화소들이고, 0은 그 이외의 영역에 위치하는 화소들을 나타낸다. 도시된 바와 같이 메디안필터는 블록의 경계에 위치하는 화소에 대해 한 화소와 그 화소의 상·하·좌·우에 위치하는 화소를 선택하여(제8도의 점선부분), 이들 5개 화소의 각 데이타크기를 비교하여 중앙값을 갖는 화소의 데이타크기를 5개 화소의 대표값으로 설정한다. 그러므로써, 일반적으로 블록경계에서 존재하는 인접화소간의 레벨차를 감소시킬 수 있다. 이와 같이 블록경계의 레벨차가 감소되면 블록킹현상이 억제된다.The post-processing unit of FIG. 7 includes a first filter 71 which performs predetermined filtering on the decoded image data V DCD to suppress the blocking phenomenon, and a reconstructed image data V having a quantization level Q of a predetermined size or more. DCD) a first selector for selectively outputting the reconstructed image data (V DCD) or low-pass filtered image data (V F2) according to the second filter 72 and, rating data (CLASS) for lowpass filtering ( 74), the second selecting unit 75 for selecting and outputting the output signal of the first filter 71 when the reconstructed image data is the boundary of the block, and the reconstructed image data V DCD according to the quantization level Q. The third selector 77 selectively outputs the output image data VS2 of the second selector 75. The post processor 60 receives the reconstructed image data V DCD and the quantization level Q and the class data CLASS transmitted from the encoding apparatus, respectively. The reconstructed image data V DCD is input to one input terminal of the first filter 71, the second filter 72, and the first selecting unit 74 and one input terminal of the third selecting unit 77, respectively. The first filter 71 performs median filtering on the boundary of the block of the reconstructed image data to suppress the blocking phenomenon. The pixel filtered by the spatial median filter used as the first filter 71 is illustrated in FIG. 8. FIG. 8 is for the M × N macroblock, where X is pixels located at the boundary of the block, and 0 represents pixels located in other areas. As shown in the drawing, the median filter selects one pixel and the pixels located at the top, bottom, left, and right of the pixel (dotted line in Fig. 8) for the pixel located at the boundary of the block, and the data of each of these five pixels is selected. By comparing the sizes, the data size of the pixel having the median value is set as the representative value of the five pixels. Therefore, it is possible to reduce the level difference between adjacent pixels generally present in the block boundary. As such, when the level difference of the block boundary is reduced, the blocking phenomenon is suppressed.
제 2필터(72)는 복원된 영상데이타에서 고주파성분을 감쇄시키기 위한 저역통과필터이다. 복원된 영상데이타에서 양자화레벨(Q)이 소정의 기준값(Qr)보다 크면서 손상의 정도가 비교적 작은 경우 제9도에 도시된 바와 같이 3차원 저역통과필터링을 수행한다. 3차원 저역통과필터링을 필터링되는 매크로블록(M2)의 한 화소(P)와 그 화소의 상·하·좌·우에 위치하는 화소(a, b, c, d) 그리고 전·후의 프레임(M1, M3)의 동일 위치에 존재하는 화소(e, f)에 대하여 다음 [수식2]와 같은 연산을 수행하므로써 필터링된 츨력 영상데이타를 얻는다.The second filter 72 is a low pass filter for attenuating high frequency components in the reconstructed image data. In the reconstructed image data, when the quantization level Q is larger than the predetermined reference value Qr and the degree of damage is relatively small, three-dimensional low pass filtering is performed as shown in FIG. 9. One pixel P of the macroblock M 2 from which the three-dimensional low pass filtering is filtered, the pixels a, b, c, and d located at the top, bottom, left, and right sides of the pixel, and the front and back frames M Filtered output image data is obtained by performing an operation as shown in Equation 2 with respect to the pixels e and f existing at the same positions of 1 and M 3 ).
여기서, VLF(P)는 P화소에 대한 LPF출력, a ~ f는 현재 샘플링되는 P샘플데이타의 상·하·좌·우·전·후에 위치한 각 화소의 샘플데이타의 크기, P는 현재 샘플링되는 현재화소의 샘플데이타의 크기이다.Where V LF (P) is the LPF output for the P pixel, a to f are the size of the sample data of each pixel located above, below, left, right, before and after the P sample data being sampled, and P is the current sampling. This is the size of the sample data of the current pixel.
이와 같이 3차원 저역통과필터링된 영상데이타는 제 1선택부(74)의 다른 입력단으로 공급된다. 또한, 제 1선택부(74)는 임계값결정부(73)로부터 소정 크기의 임계값(TH)을 공급받는다. 임계값결정부(73)는 부호화장치에서 전송되는 등급데이타(CLASS)를 공급받아, 그 등급데이타에 따라 서로 다른 임계값(TH)을 발생한다. 따라서, 복원화상의 손상정도가 클수록 임계값(TH; threshold)도 커지게 된다.The 3D low pass filtered image data is supplied to another input terminal of the first selector 74. In addition, the first selector 74 receives a threshold value TH of a predetermined size from the threshold value determiner 73. The threshold determination unit 73 receives grade data CLASS transmitted from the encoding apparatus and generates different threshold values TH according to the grade data. Therefore, the greater the damage degree of the restored image, the larger the threshold TH.
그러면, 제 1선택부(74)는 임계값결정부(73)에서 공급되는 임계값(TH)에 따라 복원데이타(VDCD) 또는 제 2필터의 출력데이타(VF2)를 선택하여 출력한다. 즉, 다음의 [수식3]과 같이 복원데이타(VDCD)와 필터링데이타(VF2)간의 차를 산출하여 그 차값이 임계값(TH)보다 작지 않으면 필터링데이타(VF2)를 선택하고, 차값이 임계값(TH)보다 작으면 복원데이타(VDCD)를 선택한다.Then, the first selector 74 selects and outputs the restored data V DCD or the output data V F2 of the second filter in accordance with the threshold TH supplied from the threshold value determiner 73. That is, as shown in Equation 3 below, the difference between the restoration data V DCD and the filtering data V F2 is calculated, and if the difference value is not smaller than the threshold value TH, the filtering data V F2 is selected and the difference value is selected. If it is smaller than this threshold TH, the restoration data V DCD is selected.
이와 같이 얻어지는 제 1선택부(74)의 출력신호는 제 2선택부(75)로 공급된다. 그러면, 제 2선택부(75)는 위치검출부(76)의 출력신호에 따라 제 1필터(71)의 출력신호(VF1)또는 제 2필터(72)의 출력신호(VF2)를 선택한다. 여기서, 위치검출부(76)는 복원데이타(VDCD)를 공급받아 블록의 경계위치를 검출한다. 즉, 블록의 경계에 위치하는 화소를 필터링하는 제 1필터(71)의 출력신호를 선택하기 위해 위치검출부(76)에서 검출되는 경계위치데이타가 제 2선택부(75)로 공급된다. 따라서, 제 2선택부(75)는 위치검출부(76)에서 블록경계에 해당하는 위치데이타가 인지되면 제 1필터(71)의 출력신호(VF1)를 선택하여 출력하고, 그 이외의 경우에는 제 2필터(72)의 출력신호(VF2)를 선택하여 출력한다. 이와 같이 얻어지는 제 2선택부(75)의 출력신호는 제 3선택부(77)로 공급된다. 그러면, 제 3선택부(77)는 부호화장치에서 전송되는 양자화레벨(Q)에 따라 복원된 영상데이타(VDCD) 또는 제 2선택부의 출력신호(VS2)를 선택하여 출력한다. 제 3선택부(77)는 입력되는 양자화레벨(Q)이 실험적으로 얻어지는 소정의 임계값(TQ)보다 작은 경우 복원데이타(VDCD)를 출력하고, 양자화레벨(Q)이 임계값(TQ)보다 큰 경우 제 2선택부(75)의 출력신호(VS2)를 출력한다. 즉, 양자화레벨(Q)이 비교적 작은 경우(Q≤TQ)는 복원데이타에서 오차의 가능성이 비교적 작으므로 복원데이타를 그대로 디스플레이부로 전송하고, 양자화레벨(Q)이 비교적 큰 경우(Q≥TQ)는 복원데이타에서 오차의 가능성이 비교적 크므로 복원데이타를 필터링하여 전송한다.The output signal of the first selector 74 thus obtained is supplied to the second selector 75. Then, the second selector 75 selects the output signal V F1 of the first filter 71 or the output signal V F2 of the second filter 72 according to the output signal of the position detector 76. . Here, the position detector 76 receives the restoration data V DCD to detect the boundary position of the block. That is, the boundary position data detected by the position detector 76 is supplied to the second selector 75 to select the output signal of the first filter 71 that filters the pixels located at the boundary of the block. Therefore, when the position detection unit 76 detects the position data corresponding to the block boundary, the second selector 75 selects and outputs the output signal V F1 of the first filter 71, and otherwise, The output signal V F2 of the second filter 72 is selected and output. The output signal of the second selector 75 thus obtained is supplied to the third selector 77. Then, the third selector 77 selects and outputs the image data V DCD reconstructed or the output signal VS2 of the second selector according to the quantization level Q transmitted from the encoding apparatus. The third selector 77 outputs reconstruction data V DCD when the input quantization level Q is smaller than a predetermined threshold TQ obtained experimentally, and the quantization level Q is the threshold value TQ. If larger, the output signal VS2 of the second selector 75 is output. That is, when the quantization level Q is relatively small (Q≤TQ), since the probability of error is relatively small in the reconstruction data, the reconstruction data is transmitted to the display unit as it is, and when the quantization level Q is relatively large (Q≥TQ). Since the probability of error in the reconstruction data is relatively large, the reconstruction data is filtered and transmitted.
상술한 바와 같이, 본 발명에 의한 부호화 및 복호화시스템은 부호화시스템에서 원신호와 복원신호간에 손상된 정도를 산출하여 이를 복호화시스템으로 전송하고, 복호화시스템은 복원신호의 손상정도와 양자화레벨에 따라 복원데이타를 적응적으로 필터링하므로써, 블록킹현상을 억제하고 전송데이타를 효과적으로 압축하면서 보다 향상된 화질을 제공한다.As described above, the encoding and decoding system according to the present invention calculates the degree of damage between the original signal and the reconstruction signal in the encoding system and transmits it to the decoding system, and the decoding system reconstructs the data according to the degree of damage of the reconstruction signal and the quantization level. By adaptively filtering, it provides better image quality while suppressing blocking phenomenon and compressing transmission data effectively.
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920012176A KR0178711B1 (en) | 1992-07-09 | 1992-07-09 | Coding and Decoding System Using Adaptive Post Processing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920012176A KR0178711B1 (en) | 1992-07-09 | 1992-07-09 | Coding and Decoding System Using Adaptive Post Processing |
Publications (2)
Publication Number | Publication Date |
---|---|
KR940003388A KR940003388A (en) | 1994-02-21 |
KR0178711B1 true KR0178711B1 (en) | 1999-05-01 |
Family
ID=19336039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019920012176A Expired - Lifetime KR0178711B1 (en) | 1992-07-09 | 1992-07-09 | Coding and Decoding System Using Adaptive Post Processing |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0178711B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014163240A1 (en) * | 2013-04-02 | 2014-10-09 | 주식회사 칩스앤미디어 | Method and apparatus for processing video |
-
1992
- 1992-07-09 KR KR1019920012176A patent/KR0178711B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
KR940003388A (en) | 1994-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6275527B1 (en) | Pre-quantization in motion compensated video coding | |
KR0159434B1 (en) | Wavelet image encoding and decoding device and method using human visual system modeling | |
EP1901562B1 (en) | Video decoding apparatus | |
US6466625B1 (en) | Picture signal processing method and apparatus | |
KR0148130B1 (en) | Apparatus and method for encoding/decoding due to restrain blocking artifact | |
US6845180B2 (en) | Predicting ringing artifacts in digital images | |
US20150043630A1 (en) | Image encoding device, image decoding device, image encoding method, and image decoding method | |
US6252905B1 (en) | Real-time evaluation of compressed picture quality within a digital video encoder | |
EP0782342A2 (en) | Video coding and decoding system and method | |
US20070025447A1 (en) | Noise filter for video compression | |
JP2007159155A (en) | Filtering method and apparatus for removing blocking effect | |
KR100846774B1 (en) | Filtering method and apparatus for removing blocking effect | |
JPH05219385A (en) | Picture compression expansion method and device | |
US20120207212A1 (en) | Visually masked metric for pixel block similarity | |
KR100262500B1 (en) | Adaptive block effect reduction decoder | |
KR20050085730A (en) | Elastic storage | |
JP4485996B2 (en) | Image encoding apparatus and image encoding program | |
KR0178711B1 (en) | Coding and Decoding System Using Adaptive Post Processing | |
KR0157465B1 (en) | Method and apparatus for determining quantization level according to image characteristics of image data | |
JPS63284974A (en) | Picture compression system | |
JPH05130592A (en) | Moving picture encoding device | |
JPH0681308B2 (en) | Quantization noise suppression method in interframe coding | |
JPH07336684A (en) | Picture signal decoding device | |
JPH0686258A (en) | Orthogonal transform encoder and decoder | |
JPH0795578A (en) | Encoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 19920709 |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 19941230 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 19920709 Comment text: Patent Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 19980131 Patent event code: PE09021S01D |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 19980513 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 19981029 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 19981124 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 19981124 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20011030 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20021031 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20031030 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20041029 Start annual number: 7 End annual number: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20051028 Start annual number: 8 End annual number: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20061030 Start annual number: 9 End annual number: 9 |
|
PR1001 | Payment of annual fee |
Payment date: 20071030 Start annual number: 10 End annual number: 10 |
|
PR1001 | Payment of annual fee |
Payment date: 20081031 Start annual number: 11 End annual number: 11 |
|
PR1001 | Payment of annual fee |
Payment date: 20091029 Start annual number: 12 End annual number: 12 |
|
PR1001 | Payment of annual fee |
Payment date: 20101028 Start annual number: 13 End annual number: 13 |
|
FPAY | Annual fee payment |
Payment date: 20111028 Year of fee payment: 14 |
|
PR1001 | Payment of annual fee |
Payment date: 20111028 Start annual number: 14 End annual number: 14 |
|
EXPY | Expiration of term | ||
PC1801 | Expiration of term |
Termination date: 20130409 Termination category: Expiration of duration |