KR100203713B1 - Method and apparatus for processing an image signal having an object by using an extension-interpolation technique - Google Patents

Method and apparatus for processing an image signal having an object by using an extension-interpolation technique Download PDF

Info

Publication number
KR100203713B1
KR100203713B1 KR1019960010632A KR19960010632A KR100203713B1 KR 100203713 B1 KR100203713 B1 KR 100203713B1 KR 1019960010632 A KR1019960010632 A KR 1019960010632A KR 19960010632 A KR19960010632 A KR 19960010632A KR 100203713 B1 KR100203713 B1 KR 100203713B1
Authority
KR
South Korea
Prior art keywords
vector
processing block
pixel
pixels
tensioned
Prior art date
Application number
KR1019960010632A
Other languages
Korean (ko)
Other versions
KR970073154A (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 전주범
Priority to KR1019960010632A priority Critical patent/KR100203713B1/en
Publication of KR970073154A publication Critical patent/KR970073154A/en
Application granted granted Critical
Publication of KR100203713B1 publication Critical patent/KR100203713B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 물체를 포함하는 영상 프레임 신호에 포함된 프로세싱 블록을 인장-보간 기법을 이용하여 변환하는 방법으로서, 프로세싱 블록은 N×N개의 화소로 구성되어 있고 화소들은 물체화소와 배경화소로 구분되는 방법을 제공한다.The present invention is a method for converting a processing block included in an image frame signal including an object by using a tension-interpolation technique, the processing block is composed of N × N pixels, the pixels are divided into object pixels and background pixels Provide a method.

이를 위하여 본 발명은 (A) 프로세싱 블록의 L개의 열을 선택하되, 대해, 상기 각각의 열에 각각의 L개의 열은 적어도 하나의 물체화소를 포함하는 단계; (B) 선택된 각각의 열에 포함된 물체화소의 개수를 나타내는 M을 결정하고 M개의 물체화소의 값을 나타내는 제1벡터를 제공하는 단계; (C) 각각의 제1벡터들에 대해서 다수의 기설정된 인장행렬 중에서 M과 N에 기준하여 하나의 인장행렬을 선택하고 선택된 인장행렬을 제1벡터에 곱하여 인장된 제1벡터를 제공하는 단계; (D) L개의 열을 포함하는 제1인장된 프로세싱 블록을 제공하되, 각각의 열은 제1벡터를 나타내는 단계; (E) 제1인장된 프로세싱 블록의 각각의 행에 대해 L차원 제2벡터를 제공하는 단계; (F) L과 N값에 기준하여 다수의 기설정된 인장 행렬로부터 하나의 인장행렬을 결정하는 단계; (G) 선택된 인장행렬을 각각의 제2벡터에 곱하여 N개의 인장된 제2프로세싱 블록을 제공하는 단계; (H) 제2인장된 블록의 각각의 화소에 블록 스케일링 벡터를 곱하여 인장된 블록을 제공하는 단계를 포함한다.To this end, the present invention provides a method comprising the steps of (A) selecting L columns of a processing block, wherein each L column in each column includes at least one object pixel; (B) determining M representing the number of object pixels included in each selected column and providing a first vector representing the values of the M object pixels; (C) selecting one tensile matrix based on M and N among a plurality of preset tensile matrices for each of the first vectors and multiplying the selected tensile matrix by the first vector to provide a tensioned first vector; (D) providing a first tensioned processing block comprising L columns, each column representing a first vector; (E) providing an L-dimensional second vector for each row of the first stretched processing block; (F) determining one tensile matrix from the plurality of predetermined tensile matrices based on the L and N values; (G) multiplying the selected tensile matrix by each second vector to provide N tensioned second processing blocks; (H) multiplying each pixel of the second stretched block by a block scaling vector to provide a tensioned block.

Description

물체를 포함하는 영상신호를 인장-보간 기법을 이용하여 처리하는 방법 및 장치Method and apparatus for processing an image signal including an object using a tension-interpolation technique

제1도는 배경영역과 물체영역을 가진 1차원 데이터를 도시한 도면.1 is a diagram showing one-dimensional data having a background area and an object area.

제2도는 배경영역을 0으로 채우는 방법을 보이는 도면.2 is a diagram showing a method of filling a background region with zeros.

제3도는 배경영역을 물체영역의 평균값으로 채우는 방법을 보이는 도면.3 is a diagram showing a method of filling a background area with an average value of an object area.

제4도는 본 발명의 바람직한 실시예에 따라 배경영역을 채우는 방법을 보이는 도면.4 is a view showing a method for filling a background area according to a preferred embodiment of the present invention.

제5도는 배경영역과 물체영역을 가지는 블록을 도시한 도면.5 is a diagram showing a block having a background area and an object area.

제6도는 수평으로 인장된 블록을 도시한 도면.6 shows a horizontally tensioned block.

제7도는 수직으로 인장된 블록을 도시한 도면.7 shows a vertically tensioned block.

제8도는 본 발명의 바람직한 실시예에 따른 영상신호 부호화장치를 설명하는 블록도.8 is a block diagram for explaining a video signal encoding apparatus according to a preferred embodiment of the present invention.

제9도는 제8도의 인장/보간 장치의 상세한 블록도.9 is a detailed block diagram of the tension / interpolation device of FIG.

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

50 : 프레임 메모리 100 : 제1 및 부호화 채널50: frame memory 100: first and coding channel

110 : 이진맵 검출기 120 : 이진맵 부호화기110: binary map detector 120: binary map encoder

200 : 블록 생성기 300 : 스위칭 회로200: block generator 300: switching circuit

400 : E/I 장치 410 : 물체화소 카운터400: E / I device 410: object pixel counter

420 : 스타트/사이즈 결정블록 430 : 제어블록420: start / sizing block 430: control block

440 : RAM 460 : 패딩블록440: RAM 460: padding block

470 : 인장 행렬 메모리 480 : 인장 블록470: tension matrix memory 480: tension block

490 : 리스케일링 블록 500 : 제2부호화 채널490: rescaling block 500: second coding channel

510 : 변환 부호화기 520 : 양자화기510: transform encoder 520: quantizer

530 : 엔트로피 부호화기 600 : 포매팅 회로530: entropy encoder 600: formatting circuit

본 발명은 낮은 비트레이트의 영상신호 부호화 장치 및 방법에 관한 것으로 특히 인장-보간(EXTENSION-INTERPOLATION)기법을 이용하여 영상신호를 부호화하는 방법 및 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a low bit rate video signal encoding apparatus and method, and more particularly, to a method and device for encoding a video signal using an extension-interpolation technique.

잘 알려진 바와 같이 영상전화, 고선명 텔레비젼 또는 영상 회의 시스템과 같은 디지털로 방송되는 시스템에 있어서, 비디오 프레임 신호의 각 라인이 화소라 지칭되는 일련의 디지털 데이터를 포함하기 때문에 각 비디오 프레임을 규정하는데는 상당량의 디지털 데이터가 필요하다. 그러나 통상의 전송 채널의 유효 주파수 대역폭은 제한되기 때문에 특히 영상 전화 및 영상 회의 시스템과 같은 저전송 영상 신호 부호화 시스템에서 상당량의 디지털 데이터를 전송하기 위해서는 여러 가지 데이터 압축 기술을 이용하여 데이터량을 압축 또는 줄이는 것이 필요하다.As is well known, in digitally broadcast systems such as video telephony, high definition television, or video conferencing systems, a significant amount of each video frame is specified because each line of video frame signal contains a series of digital data called pixels. Digital data is required. However, since the effective frequency bandwidth of conventional transmission channels is limited, in order to transmit a large amount of digital data, especially in low transmission video signal encoding systems such as video telephony and video conferencing systems, various data compression techniques are used to compress or It is necessary to reduce.

한편, 저전송 영상 신호 부호화 시스템에서 영상 신호를 부호화하는 방법 중의 하나는 물체별 분석-합성 부호화 방법(Michael Hotter, Object-Oriented Analy sis-Synthesis Coding Based on Moving Two-Dimensional Objects, Signal Pro cessing : Image Communication, 2, 409-428 (1990)을 참조할 것이다.On the other hand, one of the methods for encoding an image signal in a low transmission video signal coding system is Michael Hotter, Object-Oriented Analy sis-Synthesis Coding Based on Moving Two-Dimensional Objects, Signal Processing: Image See Communication, 2, 409-428 (1990).

이러한 물체별 분석-합성 부호화 방법에 따르면 움직임 물체들을 갖는 입력 영상 신호는 물체에 따라 분할되며, 각 물체의 움직임, 윤곽 및 화소 데이터를 규정하는 3가지의 파라미터는 그 특성상 각기 상이한 부호화 경로를 통해 처리된다.According to the object-specific analysis-synthesis coding method, an input image signal having moving objects is divided according to an object, and three parameters defining motion, contour, and pixel data of each object are processed through different coding paths due to their characteristics. do.

한편, 물체 내의 영상 데이터 또는 화소들을 처리하는데 있어서, 물체별 분석-합성 부호화 기법에서는 영상 데이터에 포함된 공간적 리던던시만을 제거하는 변환 부호화 기법이 주로 이용된다. 영상 데이터 압축을 위해 가장 흔히 사용되는 변환 부호화 기법들 중의 하나는 블록 단위 DCT(이산 코사인 변환) 부호화로서, 이 부호화 기법은 한 블록의 디지털 영상 데이터, 예로 8×8개의 화소 블록을 한 세트의 변환계수 데이터로 변환한다. 이 방법은 예를 들어 (Chen and Pratt, Scene Adaptive Coder, IEEE Transactions on Communications, COM-32, No. 3, PP. 225-232 (March 1984)에 개시되어 있다. DCT만큼 자주 이용되지는 않지만 DST(Discrete Sine Transf orm), 하트리(Hartley) 변환 또는 다른 변환도 블록 변환 부호화와 관련하여 사용될 수 있다.Meanwhile, in processing image data or pixels in an object, an object-based analysis-synthesis encoding technique mainly uses a transform encoding technique for removing only spatial redundancy included in the image data. One of the most commonly used transform coding techniques for image data compression is block-by-block discrete cosine transform (DCT) coding, which encodes a set of transforms for one block of digital image data, for example, 8 × 8 pixel blocks. Convert to coefficient data. This method is disclosed, for example, in Chen and Pratt, Scene Adaptive Coder, IEEE Transactions on Communications, COM-32, No. 3, pp. 225-232 (March 1984). Discrete Sine Transm, Hartley transform, or other transforms may also be used in connection with block transform encoding.

이때 블록 단위 DCT 부호화 방법에 있어서, 블록내의 배경 또는 물체 이외의 영역은 0, 블록내 물체부분 화소의 평균값 또는 미러영상(mirror image)으로 채워진 다음에 변환된다. 제2도와 제3도를 참조하면 배경영역을 채우는 종래의 방법들이 1차원 데이터에 대해 도시되어 있다. 상술하면 제2도에서는 배경영역이 0으로 채워지고, 제3도에서는 배경영역이 물체영역의 화소값을 평균으로 채워진다.At this time, in the block-by-block DCT encoding method, a region other than the background or the object in the block is filled with 0, the average value of the pixel of the object part in the block, or a mirror image, and then converted. 2 and 3, conventional methods for filling a background area are shown for one-dimensional data. In detail, in FIG. 2, the background region is filled with zeros, and in FIG. 3, the background region is filled with average pixel values of the object region.

비록 이러한 방법은 통상의 코딩방법(예를 들어, Joint Photographic Experts Group : JPEG, Moving Pictures Experts Group : MPEG, H261 등에 사용되는 2차원 DCT 블록을 이용할 수 있지만, 영상의 물체외부 영역에 필요없는 데이터가 포함되어 데이터 압축 효율이 저하된다.Although this method can use a two-dimensional DCT block used in conventional coding methods (e.g. Joint Photographic Experts Group (JPEG), Moving Pictures Experts Group (MPEG), H261, etc.), data that is not needed in the external region of the image The data compression efficiency is reduced.

본 발명의 주목적은 인장-보간(EXTENSION-INTERPOLATION) 기법을 이용하여 물체를 포함하는 영상 프레임 신호를 부호화하여, 데이터 압축 효율을 증가시킬 수 있는 부호화 방법을 제공하는데 있다.An object of the present invention is to provide an encoding method capable of increasing data compression efficiency by encoding an image frame signal including an object using an extension-interpolation technique.

상기 목적을 달성하기 위하여 본 발명은, 물체를 포함하는 영상 프레임 신호에 포함된 프로세싱 블록을 변환하는 방법으로서, 프로세싱 블록은 N×N개의 화소로 구성되어 있고 화소들은 물체화소와 배경화소로 분류되고, N은 양의 정수이고, 물체화소는 물체의 내부에 위치하는 화소이고 배경화소는 물체의 바깥에 위치하는 화소이되 상기 방법은 : (A) 프로세싱 블록의 L개의 열을 선택하되, 각각의 L개의 열은 적어도 하나의 물체화소를 포함하고, L은 0 부터 N까지의 정수인 단계; (B) (A)단계에서 선택된 각각의 열에 대해, 상기 각각의 열에 포함된 물체화소의 개수를 나타내는 M을 결정하고 제1벡터를 제공하되, 제1벡터의 각각의 원소는 각각의 M개의 물체화소의 값이고, M은 1 부터 N까지의 정수인 단계; (C) 각각의 열들에 대해서, 다수의 기설정된 인장행렬 중에서 M과 N에 기준하여 하나의 인장행렬을 선택하고 선택된 인장행렬을 제1벡터에 곱하여 인장된 제1벡터를 제공하는 단계; (D) L개의 열을 포함하는 제1인장된 프로세싱 블록을 제공하되, 각각의 열은 각각의 인장된 제1벡터의 원소를 값으로 하는 N개의 화소를 포함하는 단계; (E) 제1인장된 프로세싱 블록의 각각의 행에 대해 L차원 제2벡터를 제공하되 제2벡터의 원소는 제1인장된 블록의 상기 각각의 행에 포함된 화소의 값인 단계; (F) L과 N값에 기준하여 다수의 기설정된 인장 행렬로부터 하나의 인장행렬을 결정하는 단계; (G) 단계 (F)에서 선택된 인장행렬을 각각의 제2벡터에 곱하여 N개의 인장된 제2벡터와 인장된 프로세싱 블록을 제공하되, 인장된 프로세싱 블록은 N개의 행을 포함하고 각각의 행은 N개의 화소를 포함하고, 화소의 값은 각각의 인장된 제2벡터의 원소인 단계; (H) 프로세싱 블록의 물체화소의 수를 세어서 물체화소의 수를 프로세싱 블록의 화소의 수로 나눈 값인 블록스케일링팩터를 결정하는 단계; 및 (I) 블록스케일링팩터를 제2인장된 프로세싱 블록의 각각의 화소에 곱하여 인장된 프로세싱 블록을 제공하는 단계를 포함하는 부호화 방법이 제공된다.In order to achieve the above object, the present invention provides a method of converting a processing block included in an image frame signal including an object, wherein the processing block is composed of N × N pixels and the pixels are classified into object pixels and background pixels. Where N is a positive integer, where the object pixel is a pixel located inside the object and the background pixel is a pixel located outside the object, the method comprising: (A) selecting L columns of the processing block, each L Columns comprise at least one object pixel, and L is an integer from 0 to N; (B) For each column selected in step (A), determine M representing the number of object pixels included in each column and provide a first vector, where each element of the first vector is a respective M object A value of the pixel and M is an integer from 1 to N; (C) for each column, selecting one tensile matrix based on M and N from a plurality of predetermined tensile matrices and multiplying the selected tensile matrix by the first vector to provide a tensioned first vector; (D) providing a first tensioned processing block comprising L columns, each column comprising N pixels whose value is the element of each stretched first vector; (E) providing an L-dimensional second vector for each row of the first stretched processing block, wherein an element of the second vector is a value of a pixel included in each row of the first stretched block; (F) determining one tensile matrix from the plurality of predetermined tensile matrices based on the L and N values; (G) multiplying the tension matrix selected in step (F) by each second vector to provide N tensioned second vectors and a tensioned processing block, wherein the tensioned processing block comprises N rows and each row Comprising N pixels, the value of the pixel being an element of each tensioned second vector; (H) counting the number of object pixels in the processing block to determine a block scaling factor which is a value obtained by dividing the number of object pixels by the number of pixels in the processing block; And (I) multiplying the block scaling factor by each pixel of the second stretched processing block to provide a tensioned processing block.

제5도를 참조하면, 디지털 영상신호의 한 블록이 도시되어 있는데 한 블록은 8×8 화소를 포함하고, 화소 각각은 사각형으로 표시되어 있다. 블록은 빗금쳐진 화소들로 표현된 물체영역과 나머지 배경영역으로 이루어져 있다. 빗금쳐진 화소들은 물체화소라 불리고 나머지 화소들은 배경화소가 불린다. 물체화소는 본 발명의 인장-보간(extension-interpolation; E-I)기법을 이용하여 제6도와 제7도에 도시된 것과 같이 블록 전체를 채우도록 인장된다. 이렇게 하기 위하여, 제6도와 제7도에 도시된 것처럼, 수평인장과 수직인장이 각각 독립적으로 수행된다. 수평인장 또는 수직인장은 다른쪽보다 먼저 진행되고 그 우선순위는 영상의 특성에 따라 결정되며, 또한 수평인장 또는 수직인장은 줄단위 또는 행단위로 수행된다. 블록이 N×N개의 화소를 포함하는 경우, 각각의 열 또는 행에 대해 M차원(M-dimensional)의 벡터가 N차원(N-dimensional)의 벡터로 변환되는데, M은 1에서 N까지의 값을 가지는 정수이고, M차원 벡터의 원소들은 각각의 열 또는 행에 포함된 M개의 물체화소들이고 N차원 벡터의 원소들은 N개의 인장된 화소값이다. 예를 들어 제5도의 블록의 3번째 열의 경우 5차원 벡터가 제6도의 수직인장된 블록의 제3열을 표시하는 8차원 벡터로 변환된다.Referring to FIG. 5, one block of the digital video signal is shown, where one block includes 8x8 pixels, and each pixel is represented by a rectangle. The block consists of the object area represented by the shaded pixels and the rest of the background area. The shaded pixels are called object pixels and the other pixels are called background pixels. The object pixel is stretched to fill the entire block as shown in FIGS. 6 and 7 using the extension-interpolation (E-I) technique of the present invention. To do this, as shown in Figs. 6 and 7, the horizontal and vertical tensions are performed independently of each other. Horizontal tension or vertical tension is processed before the other side, and the priority is determined according to the characteristics of the image, and horizontal tension or vertical tension is performed by line or row. If a block contains N x N pixels, for each column or row, the M-dimensional vector is converted to an N-dimensional vector, where M is a value from 1 to N. Are elements of the M-dimensional vector are M object pixels included in each column or row, and the elements of the N-dimensional vector are N stretched pixel values. For example, in the case of the third column of the block of FIG. 5, the five-dimensional vector is transformed into an eight-dimensional vector representing the third column of the vertically stretched block of FIG. 6.

이때, M포인트 1차원 DCT를 M차원 벡터f1에 적용하여 얻은 변환된 M차원 벡터f1는 다음의 식(1)과 같이 표현된다.At this time, the transformed M-dimensional vector f 1 obtained by applying the M point one-dimensional DCT to the M-dimensional vector f 1 is expressed by the following equation (1).

이때, f1(n1)은 f1의 n1번째 원소이고; F1(k1)은 F1의 k1번째 원소이고; n1과 k1은 0에서 M-1까지의 정수이고; bij는 다음의 식(2)와 같이 표현된다.Wherein f 1 (n 1 ) is the n 1st element of f 1 ; F 1 (k 1 ) is the k 1st element of F 1 ; n 1 and k 1 are integers from 0 to M-1; bij is expressed as the following equation (2).

마찬가지로 M차원 벡터f1이 본 발명의 E-I 기법을 이용하여 인장되어 N차원 벡터f2를 형성할 경우 N차원 벡터f2에 N 포인트 1차원 DCT를 적용하여 얻은 변환된 N차원 벡터f2는 다음의 식(3)과 같이 표현된다.Similarly, the M-dimensional vector f 1 is the tension using the EI method of the present invention N-dimensional vector the case of forming a f 2 N dimensional vector transformed N-dimensional vectors to f 2 obtained by applying the N point one-dimensional DCT f 2 is the following It is expressed as Equation (3).

여기에서 이때 f2(n2)은 f2의(n2) 번째 원소이고; F2(K2)은 F2의 K2번째 원소이고; n2과 k2은 0에서 N-1까지의 정수이고; 는 다음의 식(4)로 표현된다.Where f 2 (n 2 ) is the (n 2 ) th element of f 2 ; F 2 (K 2 ) is the K 2nd element of F 2 ; n 2 and k 2 are integers from 0 to N-1; Is expressed by the following equation (4).

본 발명의 E-I 방법과 관련하여 M차원 벡터f1은 부가적인 주파수 영역 데이터를 생성하지 않고 N차원벡터 으로 인장된다. 즉, 다음의 식(5)가 만족된다.In relation to the EI method of the present invention, the M-dimensional vector f 1 is tensioned with the N-dimensional vector without generating additional frequency domain data. That is, the following equation (5) is satisfied.

이때, μ0는 f1과 f2의 DC 성분이 같게 하기 위한 스케일링 팩터로서, 다음의 식(6)과 같이 주어진다.In this case, μ 0 is a scaling factor for equalizing the DC components of f 1 and f 2 , and is given by Equation (6) below.

상기한 식(5)가 만족되는 경우 주파수 영역에서 부가적인 데이터가 발생하지 않으므로 E-I과정은 최적이다. 식(1)과 식(3)으로부터 f2는 f1으로부터 다음의 식(7A) 및 식(7B)과 같이 구할 수 있다는 것을 추론할 수 있다.If Equation (5) is satisfied, no additional data is generated in the frequency domain, so the EI process is optimal. From equations (1) and (3), it can be inferred that f 2 can be obtained from f 1 as shown in the following equations (7A) and (7B).

또는or

이때 A와 B는 각각 그 구성원이 식(7A)에 사용된 aij와 bij인 N×N행렬과 N×M행렬을 나타낸다. 식(7A)와 식(7B)는 다음의 식(8A) 및 식(8B)와 같이 간단하게 표현될 수 있다.Where A and B represent NxN and NxM matrices whose members are a ij and b ij used in equation (7A), respectively. Equations (7A) and (7B) can be simply expressed as in the following equations (8A) and (8B).

여기에서 C는 N×M행렬이고 A+B와 같다.Where C is an N × M matrix and is equal to A + B.

위의 관계를 이용하여, 임의의 모양의 물체는 부가적인 주파수 영역 원소를 생성하지 않고 N×N 블록을 채우도록 인장된다. 역으로 제5도의 원래의 데이터는 제7도의 N×N 블록으로부터 복원된다. N이 M과 같은 경우에는 C는 단위행렬이다. 따라서, 인장 과정은 원래의 벡터f1을 변화시키지 않고 생략될 수 있다.Using the above relationship, an object of any shape is tensioned to fill an N × N block without creating additional frequency domain elements. Conversely, the original data of FIG. 5 is recovered from the N × N block of FIG. If N is equal to M, then C is a unit matrix. Thus, the tensioning process can be omitted without changing the original vector f 1 .

제5도 내지 제7도에 도시된 예에서, 제5도의 블록의 3번째 열에서부터 7번째 열이 먼저 최적의 방법이나 선형보간 방법을 이용하여 수평인장되어 제6도의 블록이 된다. 마찬가지로 제6도의 수평인장된 블록의 행들은 본 발명의 E-I 방법을 이용하여 수직인장되어 제7도의 블록이 된다.In the example shown in FIGS. 5 to 7, the third to seventh columns of the block of FIG. 5 are first stretched horizontally using the optimal method or the linear interpolation method to form the block of FIG. Similarly, the rows of the horizontally stretched block of FIG. 6 are vertically stretched using the E-I method of the present invention to form the blocks of FIG.

지금까지는 본 발명의 E-I 방법이 DCT인 경우에 대해서만 설명되었다. 그러나 DST(Discrete Cosine Transtorm), 하다마드(Hadamard) 변환, 하르(Haar)변환 등의 다른 변환들이 대신 사용될 수도 있다. DST가 N×N 블록을 부호화하는데 사용된다면 E-I 방법은 각각 다음의 식(9) 및 식(10)으로 표현되는 것을 제외하고는 DCT의 경우와 동일하다.So far, only the case where the E-I method of the present invention is DCT has been described. However, other transforms such as Discrete Cosine Transtorm (DST), Hadamard transform, and Haar transform may be used instead. If the DST is used to encode an N × N block, the E-I method is the same as in the case of DCT except that it is represented by the following equations (9) and (10), respectively.

영상데이타가 공간영역에서 상관관계가 크지 않은 경우, 예를 들어 두 개의 인접한 프레임간의 차분이 부호하되는 인터 프레임 부호화인 경우, DST를 이용한 블록 변환 부호화가 DCT를 이용한 경우보다 더욱 좋은 성능을 나타낼 수 있다는 것이 알려져 있다.In the case where the image data is not highly correlated in the spatial domain, for example, in the case of inter-frame encoding in which the difference between two adjacent frames is coded, block transform coding using DST may exhibit better performance than that using DCT. It is known that there is.

전술한 방법에서 스케일링 팩터는 주파수 영역의 DC 성분에만 적용되었다. 그러나, 다른 성분에도 스케일링 팩터 μ0를 적용하는 것이 유리한 경우도 있다. 이렇게 하기 위해서 식(7A)는 다음의 식(11)과 같이 변형된다.In the above method, the scaling factor is applied only to the DC component of the frequency domain. However, it is sometimes advantageous to apply the scaling factor μ 0 to other components as well. In order to do this, equation (7A) is modified as in the following equation (11).

이 경우에 프로세싱 블록에 포함된 전체 에너지의 양이 인장과정중에 간단히 늘어나게 된다. 에너지 증가의 영향을 감소시키기 위해 인장된 프로세싱 블록의 각각의 화소에 블록 스케일링 팩터를 곱하는데 블록 스케일링 팩터는 한 프로세싱 블록의 물체화소의 수를 한 블록의 화소의 수인 N×N으로 나눈 것이다.In this case, the total amount of energy contained in the processing block simply increases during the stretching process. To reduce the effect of the energy increase, each pixel of the stretched processing block is multiplied by a block scaling factor, which is the number of object pixels in one processing block divided by N × N, the number of pixels in a block.

제8도를 참조하면, 디지털 영상신호를 부호화하기 위한 본 발명의 바람직한 실시예에 따른 장치의 블록도가 도시된다. 본 발명의 부호화 장치는 제1 및 제2부호와 채널 100 및 500과, 비디오 프레임내 물체의 경계부분을 효과적으로 부호화하기 위해 인장된 프로세싱 블록을 생성하는 인장-보간(extension-interpolation) 장치 400을 포함한다. 제1부호와 채널 100은 물체의 윤곽신호를 부호화하며, 제2부호화 채널 500은 디지털 영상신호를 블록단위로 부호화한다.Referring to FIG. 8, there is shown a block diagram of a device according to a preferred embodiment of the present invention for encoding a digital video signal. The encoding apparatus of the present invention includes first and second codes, channels 100 and 500, and an extension-interpolation apparatus 400 for generating a tensioned processing block for effectively encoding a boundary of an object in a video frame. do. The first code and the channel 100 encode the contour signal of the object, and the second coded channel 500 encodes the digital video signal in block units.

알려진 이미지 소스(도시생략), 예를 들어 하드 디스크 또는 콤팩트 디스크로부터 제공된 디지털 영상신호가 프레임 메모리 50에 입력되어 저장된다. 한 프레임의 디지털 영상신호는 물체를 포함하며, 물체 내부에 위치한 물체화소와 그 바깥에 위치한 배경화소를 포함한다. 배경화소는 보통의 화소값 범위보다 훨씬 크거나 작은 값을 갖는 화소들로 표현된다. 프레임 메모리 50으로부터 인출된 영상 프레임 신호는 제1부호화 채널 100의 이진맵 검출기 110과, 블록 발생기 200으로 제공된다.A digital video signal provided from a known image source (not shown), for example a hard disk or a compact disk, is input to and stored in the frame memory 50. The digital video signal of one frame includes an object, and includes an object pixel located inside the object and a background pixel located outside thereof. Background pixels are represented by pixels with values that are much larger or smaller than the normal pixel value range. The image frame signal extracted from the frame memory 50 is provided to the binary map detector 110 of the first encoding channel 100 and the block generator 200.

한편, 이진맵 검출기 110과 이진맵 부호화기 120을 포함하는 제1부호화 채널 100은 프레임 메모리 50으로 부터의 영상신호의 이진맵을 검출하고 공지의 방법으로 부호화하여 부호화된 이진맵을 발생한다. 이진맵은 영상 프레임 신호의 화소수와 같은 수의 이진화소를 포함하고, 각각의 이진화소는 영상 프레임 신호의 해당 화소가 물체화소인지 배경화소인지에 따라 결정된다. 이렇게 이진맵 검출기 110에서 검출된 이진맵은 이진맵 부호화기 120으로 인가되오 부호화되고 또한 라인 L10을 통해 본 발명의 E/I장치 400으로 연결된다.Meanwhile, the first encoding channel 100 including the binary map detector 110 and the binary map encoder 120 detects a binary map of an image signal from the frame memory 50 and generates an encoded binary map by encoding by a known method. The binary map includes the same number of binary pixels as the number of pixels of the image frame signal, and each binary pixel is determined according to whether the corresponding pixel of the image frame signal is an object pixel or a background pixel. The binary map detected by the binary map detector 110 is applied to the binary map encoder 120 and encoded, and is connected to the E / I device 400 of the present invention through the line L10.

다음에, 이진맵 부호화기 120은 이진맵 검출기 110으로 부터의 이진맵을, 예를 들어 JPEG의 이진 산술 코드(binary arithmetic code)를 사용하여 부호화하고, 부호화된 이진맵을 포맷팅회로 600으로 공급한다.Next, the binary map encoder 120 encodes the binary map from the binary map detector 110 using, for example, a binary arithmetic code of JPEG, and supplies the encoded binary map to the formatting circuit 600.

한편, 블록 발생기 200은 프레임 메모리 50으로부터의 비디오 프레임 신호를 N×N개의 화소를 포함하는 같은 크기의 다수의 프로세싱 블록으로 분할하여, 블록단위로 스위칭회로 300에 제공한다. 스위칭회로 300에서는, 시스템 제어기(도시생략)로부터 발생된 제어신호 CS 에 응답하여, 블록 발생기 200으로부터의 각 프로세싱 블록이E/I 장치 400 또는 제2부호화 채널 500에 선택적으로 결합된다. 시스템 제어기는 비디오 프레임내 물체의 윤곽 정보를 사용하여 제어신호 CS를 발생하는데, 상기 제어신호는 비디오 프레임내 물체의 경계부분이 각 프로세싱 블록에 존재하는지의 여부를 나타낸다. 만약 물체의 경계부분이 프로세싱 블록내에 존재하면, 즉 프로세싱 블록이 물체영역과 배경영역을 동시에 포함하면, 프로세싱 블록은 인장된 프로세싱 블록을 발생시키는 E/I장치 400에 결합되고, 그렇지 않으면 제2부호화 채널 500으로 전송된다.Meanwhile, the block generator 200 divides the video frame signal from the frame memory 50 into a plurality of processing blocks having the same size including N × N pixels and provides the switching circuit 300 in blocks. In the switching circuit 300, in response to the control signal CS generated from the system controller (not shown), each processing block from the block generator 200 is selectively coupled to the E / I device 400 or the second encoding channel 500. The system controller generates the control signal CS using the contour information of the object in the video frame, which indicates whether or not the boundary of the object in the video frame exists in each processing block. If the boundary of the object is in the processing block, i.e., if the processing block includes the object area and the background area at the same time, then the processing block is coupled to the E / I device 400 which generates the tensioned processing block, otherwise the second encoding Is sent to channel 500.

본 발명에 따르면, E/I장치 400은 제2부호화 채널 500에서의 데이터 압축효율을 개선하기 위해 스위칭회로 300으로부터의 각 프로세싱 블록을 인장된 프로세싱 블록으로 변환한다. 상술하면, 제5도에 도시된 것과 같은 프로세싱 블록은 E/I장치 400에 공급되어 제5도에서 제7도를 참조하여 설명된것과 같은 방법으로 인장된 프로세싱 블록으로 변환된다. E/I장치 400의 자세한 동작은 제9도를 참조하여 설명된다.According to the present invention, the E / I device 400 converts each processing block from the switching circuit 300 into a tensioned processing block in order to improve the data compression efficiency in the second encoding channel 500. In detail, the processing block as shown in FIG. 5 is supplied to the E / I apparatus 400 and converted into a tensioned processing block in the same manner as described with reference to FIG. The detailed operation of the E / I device 400 is described with reference to FIG.

한편, 변환 부호화기 510, 양자화기 520 및 엔트로피 부호화기 530을 포함하는 제2부호화 채널 500은 통상의 변환 및 통계적 부호화 기법을 사용하여 E/I장치400으로부터의 인장된 프로세싱 블록 각각에 포함된 이미지 데이터 또는 스위칭회로 300으로부터의 인장되지 않은 프로세싱 블록을 부호화한다. 즉, 변환 부호화기 510은 예를 들어 이산 코사인 변환을 사용하여 E/I장치400 또는 스위칭회로 300으로부터 제공된 각 프로세싱 블록의 공간영역의 이미지 데이터를 DCT 등을 이용하여 주파수 영역의 변환계수들의 세트로 변환하고, 변환계수들의 세트를 양자화기 520로 제공한다. 양자화기 520에서는 공지된 양자화 방법을 이용하여 변환계수들의 세트를 양자화하고, 양자화된 변환계수들의 세트는 엔트로피 부호화기 530으로 제공되어 처리된다.Meanwhile, the second encoding channel 500 including the transform encoder 510, the quantizer 520, and the entropy encoder 530 may include image data included in each of the tensioned processing blocks from the E / I apparatus 400 using conventional transform and statistical encoding techniques. Encode the unstretched processing block from the switching circuit 300. That is, the transform encoder 510 converts the image data of the spatial domain of each processing block provided from the E / I apparatus 400 or the switching circuit 300 into a set of transform coefficients of the frequency domain by using DCT, for example, using a discrete cosine transform. A set of transform coefficients is provided to the quantizer 520. The quantizer 520 quantizes a set of transform coefficients using a known quantization method, and the set of quantized transform coefficients is provided to an entropy encoder 530 for processing.

또한 엔트로피 부호화기 530은 예를 들어 줄길이 부호화 및 가변길이 부호화 기법을 결합하여 양자화기 520으로부터의 인장된 또는 인장되지 않은 프로세싱 블록 각각에 대한 양자화된 변환계수들의 세트를 부호화하여 부호화된 영상신호를 발생한다. 그런 다음 엔트로피 부호화기 530에 의해 부호화된 영상신호는 포맷팅회로 600으로 제공된다.The entropy encoder 530 also combines, for example, line length coding and variable length coding techniques to encode a set of quantized transform coefficients for each of the stretched or unstretched processing blocks from the quantizer 520 to generate an encoded video signal. do. The image signal encoded by the entropy encoder 530 is then provided to the formatting circuit 600.

그리고 포맷팅회로 600은 제1부호화 채널 100 내 이진맵 부호화기 120으로부터의 부호화된 이진맵과 제2부호화 채널 500 내 엔트로피 부호화기 530으로부터의 부호화된 영상 프레임 신호를 포맷하고, 포맷된 디지털 영상신호를 전송하기 위해서 송신기(도시생략)로 제공한다.And the formatting circuit 600 formats the encoded binary map from the binary map encoder 120 in the first encoding channel 100 and the encoded image frame signal from the entropy encoder 530 in the second encoding channel 500, and transmits the formatted digital image signal. In order to provide a transmitter (not shown).

제9도를 참조하면, 제8도에 도시된 본 발명에 따른 E/I장치 400의 상세한 블록도가 도시되어 있다. E/I장치 400은 물체화소 카운터 410, 스타트/사이즈 결정블록 420, 제어블록 430, 램(Random Access Memory) 440, 패딩블록 460, 인장행렬 메모리 470, 인장 블록 480과 리스케일링 블록 490을 포함한다.Referring to FIG. 9, a detailed block diagram of the E / I apparatus 400 according to the present invention shown in FIG. 8 is shown. E / I device 400 includes object pixel counter 410, start / size determination block 420, control block 430, random access memory 440, padding block 460, tension matrix memory 470, tension block 480 and rescaling block 490. .

제8도의 스위칭회로 300으로부터의 프로세싱 블록은 라인 L20을 통해 RAM 440에 입력되어 저장된다. 제8도의 이진맵 검출기 110으로부터의 이진맵은 물체화소 카운터 410과 스타트/사이즈 결정블록 420으로 라인 L10을 통해 입력된다.The processing block from the switching circuit 300 of FIG. 8 is input to and stored in the RAM 440 through the line L20. The binary map from the binary map detector 110 in FIG. 8 is input to the object pixel counter 410 and the start / size decision block 420 via line L10.

한편, 물체화소 카운터 410은 이진맵에 응답하여 각각의 프로세싱 블록의 물체화소의 개수를 세어서 리스케일링 블록 490에 제공한다.Meanwhile, the object pixel counter 410 counts the number of object pixels of each processing block in response to the binary map and provides the number of object pixels to the rescaling block 490.

또한 스타트/사이즈, 결정블록 420에서는 이진맵에 응답하여 사이즈와 스타트 신호가 결정되는데, 사이즈 신호는 프로세싱 블록의 현재 처리되는 열 또는 행의 물체화소의 수를 나타내고, 스타트 신호는 현재 처리되는 열이나 행의 첫번째 물체화소의 위치를 나타낸다. 스타트 신호와 사이즈 신호는 패딩블록 460으로 공급되고 사이즈 신호는 인장행렬 메모리 470과 인장블록 480으로 연결된다.In addition, in the start / size and decision block 420, the size and the start signal are determined in response to the binary map. The size signal indicates the number of object pixels in the column or row currently being processed in the processing block, and the start signal is the column being processed. Indicates the position of the first object pixel in the row. The start signal and the size signal are supplied to the padding block 460, and the size signal is connected to the tension matrix memory 470 and the tension block 480.

다음에 상기한 스타트/사이즈 결정블록 420의 자세한 기능을 제5도 내지 제7도의 예에 대해서 설명하겠다. 제5도의 프로세싱 블록의 첫째, 둘째 열처럼 현재열에 물체화소가 하나도 없는 경우 사이즈 신호는 패딩블록 460, 인장행렬 메모리 470과 인장블록 480에 해당 열이 본 발명의 인장-보간 과정을 거칠 필요가 없다는 것을 알려준다. 제5도의 프로세싱 블록의 제3열의 경우에는 스타트 신호는 3번째 화소가 첫번째 물체화소라는 것을 나타내고, 사이즈 신호는 그 열에 5개의 물체화소가 있다는 것을 나타낸다. 이때, 수직인장중에는 스타트 신호와 사이즈 신호는 각각 3과 6으로 고정되는데, 이는 수평인장된 블록의 각각의 행의 물체화소의 시작위치와 개수가 제6도에 도시된 바와 같이 동일하기 때문이다.Next, the detailed functions of the above start / size determination block 420 will be described with reference to the examples of FIGS. If there are no object pixels in the current column, such as the first and second columns of the processing block of FIG. 5, the size signal is not required for the padding block 460, the tension matrix memory 470, and the tension block 480. Inform them. In the case of the third column of the processing block of FIG. 5, the start signal indicates that the third pixel is the first object pixel, and the size signal indicates that there are five object pixels in the column. At this time, during the vertical tensioning, the start signal and the size signal are fixed to 3 and 6, respectively, because the starting position and the number of object pixels in each row of the horizontally tensioned block are the same as shown in FIG.

한편, 인장 행렬 메모리 470은 M차원 벡터를 N차원 벡터로 변환하기 위한 인장행렬 즉, 식(8B)의 C를 저장한다. N은 시스템 디자인에 따라 결정되어 있고, 많은 경우 8이다. 따라서, 인장행렬 C를 모든 M의 값, 즉 1에서 N에 대해 미리 계산해 놓고 인장행렬 메모리 470에 저장하는 것이 가능하고 따라서 인장행렬 메모리 470은 ROM( Read only Memory)로 구성될 수 있다.Meanwhile, the tension matrix memory 470 stores a tension matrix for converting an M-dimensional vector into an N-dimensional vector, that is, C of Equation (8B). N is determined by the system design, and in many cases eight. Accordingly, it is possible to pre-calculate the tension matrix C for all M values, namely 1 to N, and store it in the tension matrix memory 470, and thus the tension matrix memory 470 may be configured as a read only memory (ROM).

이러한 블록의 열(또는 행)에 대한 인장-보간은 그 열(또는 행)의 물체화소의 값들로 형성된 M차원 벡터의 인장행렬 메모리 470에 저장된 적절한 인장행렬을 곱함으로써 쉽게 수행할 수 있다. 적절한 인장행렬은 사이즈 신호에 응답하여 선택되어 곱셈을 하기 위해 인장블록 480으로 제공된다. 사이즈 신호가 현재 열 또는 행에 물체화소가 없다는 것을 나타내는 경우에는 인장행렬이 선택되지도 않고 인장블록 480에 제공되지도 않는다.Tensile-interpolation for a column (or row) of such a block can be easily performed by multiplying the appropriate tensile matrix stored in the tension matrix memory 470 of the M-dimensional vector formed with the values of the object pixels of that column (or row). The appropriate tension matrix is selected in response to the size signal and provided to tension block 480 for multiplication. If the size signal indicates that there are no object pixels in the current column or row, then no tension matrix is selected or provided to tension block 480.

한편, 제어블록 430에서는 H/V 신호와 열/행 번호신호가 만들어지는데, H/V 신호는 본 발명의 E/I 장치에서 수평인장 또는 수직인장 중 어느 쪽이 수행되고 있는지를 표시하고, 열/행 번호신호는 본 발명의 E/I 장치 400에서 현재 처리되는 열 또는 행을 나타낸다. 일반적으로, 블록의 열/행은 차례대로 처리되므로 신호는 시스템설계 예를 들어 프로세싱 블록의 열과 행의 수에 의해 결정된다. H/V 신호와 열/행 신호는 스타트/사이즈 결정블록 420과 RAM 440에 제공된다.In the control block 430, an H / V signal and a column / row number signal are generated. The H / V signal indicates whether horizontal or vertical tension is being performed in the E / I apparatus of the present invention. The / row number signal indicates a column or row currently being processed in the E / I device 400 of the present invention. In general, the columns / rows of a block are processed in order, so the signal is determined by the system design, for example the number of columns and rows of processing blocks. The H / V signal and the column / row signal are provided to the start / size decision block 420 and the RAM 440.

전술한 바와 같이 제8도의 스위칭회로 300으로부터의 프로세싱 블록은 RAM 440에 제공된다. 프로세싱 블록의 열 또는 행은 제어블록으로부터의 H/V 신호와 열/행번호신호에 응답하여 RAM 440으로부터 순차적으로 공급된다. 예시적으로 수평인장이 먼저 수행되는 것으로 가정하였다. 이 경우 프로세싱 블록의 각각의 열은 우선 패딩블록 460으로 제공된다.As described above, the processing block from the switching circuit 300 of FIG. 8 is provided to the RAM 440. The columns or rows of processing blocks are sequentially supplied from the RAM 440 in response to the H / V signals and column / row number signals from the control block. For example, it is assumed that horizontal tensioning is performed first. In this case each row of processing blocks is first provided to padding block 460.

다음에 패딩블록 460에서는 스타트 신호와 사이즈 신호에 응답하여, RAM 440으로부터 제공되는 열에 포함된 물체화소값들을 표시하는 M차원 벡터가 형성되어 인장블록 480에 제공된다. M차원 벡터는 스타트 신호에 의해 표시되는 위치로부터 M 개의 연속된 물체화소를 선택함으로서 만들 수 있다.Next, in padding block 460, in response to the start signal and the size signal, an M-dimensional vector representing object pixel values included in columns provided from RAM 440 is formed and provided to tension block 480. The M-dimensional vector can be created by selecting M consecutive object pixels from the position indicated by the start signal.

또한, 사이즈 신호 즉, M값 신호에 응답하여 인장행렬 메모리 470에 저장된 다수의 기설정된 인장행렬 중에서 하나의 인장행렬이 선택되고 인장블록 480에 제공된다. 인장행렬은 인장블록 480에서 M차원 벡터에 곱해져서 인장된 N차원 벡터를 형성한다. N차원 벡터 또는 수평인장된 열은 다시 RAM 440의 원래의 열이 저장되었던 위치에 저장된다.In addition, one tension matrix is selected from a plurality of preset tension matrices stored in the tension matrix memory 470 in response to the size signal, that is, the M value signal, and provided to the tension block 480. The tension matrix is multiplied by the M-dimensional vectors in tension block 480 to form a tensioned N-dimensional vector. N-dimensional vectors or horizontally stretched columns are again stored in the location where the original columns of RAM 440 were stored.

전술한 것과 같은 방법으로 RAM 440에 저장된 프로세싱 블록의 하나의 열이 수평인장된 열로 변환되고 다시 저장된다. 프로세싱 블록의 모든 열은 물체화소를 포함하지 않는 열을 제외하고는 비슷한 방법으로 처리된다. 물체화소를 포함하지 않는 열의 경우에는 사이즈 신호가 인장블록 480에 물체화소가 없다는 것을 알려서 곱셈이 수행되지 않고 RAM 440의 원래의 데이터가 유지되도록 한다.In the same manner as described above, one row of processing blocks stored in RAM 440 is converted into horizontally stretched rows and stored again. All rows of the processing block are processed in a similar manner except for columns that do not contain object pixels. For columns that do not contain object pixels, the size signal indicates that there is no object pixel in tension block 480 so that multiplication is not performed and the original data in RAM 440 is maintained.

따라서 수평인장이 종료되면, 제6도에 도시된 것과 같은 인장된 열들을 포함하는 수평인장된 프로세싱 블록이 RAM 440에 저장된다는 것을 알 수 있다.Thus, when the horizontal pulling is finished, it can be seen that the horizontally tensioned processing block containing the stretched rows as shown in FIG. 6 is stored in the RAM 440.

그런 다음, 수평인장이 종료된 후 수평인장된 프로세싱 블록의 행들은 제어블록 430으로부터의 H/V 신호와 열/행 번호신호에 응답하여 RAM 440에서 패딩블록 460으로 순차적으로 입력된다. 이것을 제외하고는 패딩블록 460, 인장행렬 메모리 470, 인장블록 480의 기능은 수평인장의 경우와 동일하다. 상술하면, 수평인장된 프로세싱 블록의 각 행으로부터 형성된 M차원 벡터가 패딩블록 460으로부터 인장블록 480에 제공되어 거기에서 N차원 벡터로 변환된다. 인장된 행(M 또는 N차원 벡터)는 RAM 440의 수평인장된 프로세싱 블록의 상응하는 행이 있던 위치에 저장된다.Then, after the horizontal stretching is finished, the rows of the horizontally stretched processing block are sequentially input from the RAM 440 to the padding block 460 in response to the H / V signal and the column / row number signal from the control block 430. Except for this, the functions of the padding block 460, the tension matrix memory 470, and the tension block 480 are the same as those of the horizontal tension. Specifically, M-dimensional vectors formed from each row of horizontally tensioned processing blocks are provided from padding block 460 to tension block 480 and converted there into N-dimensional vectors. The tensioned row (M or N-dimensional vector) is stored at the location where the corresponding row of the horizontally stretched processing block of RAM 440 was.

수평인장과 수직인장이 종료된 후, RAM 440에 저장된 인장된 프로세싱 블록은 리스케일링 블록 490에 제공된다. 리스케일링 블록 490에서는 인장된 프로세싱 블록의 각 화소값이 블록 스케일링 팩터를 이용하여 스케일 다운(scale down)되는데, 블록 스케일링 팩터는 물체화소 카운터 410으로부터 제공되는 한 프로세싱 블록의 물체화소의 개수에 응답하여 결정된다.After the horizontal and vertical tensioning ends, the tensioned processing blocks stored in RAM 440 are provided to rescaling block 490. In rescaling block 490, each pixel value of the tensioned processing block is scaled down using a block scaling factor, which in response to the number of object pixels in one processing block provided from object pixel counter 410. Is determined.

그런 다음, 리스케일된 인장된 프로세싱 블록은 제8도에 도시된 것처럼 제2부호화 채널 500의 변환 부호화기 510에 연결되어 그 곳에서 부호화된다.The rescaled stretched processing block is then connected to and encoded therein with a transform encoder 510 of the second encoding channel 500 as shown in FIG.

이상 설명한 바와 같이 본 발명의 방법에 따르면, 물체 내부의 화소들과 물체 외부의 화소들 사이에 존재하는 고주파수 성분을 상당히 줄임으로써 부호화 효율을 개선할 수 있다.As described above, according to the method of the present invention, the coding efficiency can be improved by significantly reducing the high frequency components existing between the pixels inside the object and the pixels outside the object.

Claims (5)

물체를 포함하는 영상 프레임 신호에 포함된 프로세싱 블록을 변환하는 방법으로서, 프로세싱 블록은 N×N개의 화소로 구성되어 있고 화소들은 물체화소와 배경화소로 분류되고 N은 양의 정수이고, 물체화소는 물체의 내부에 위치하는 화소이고 배경화소는 물체의 바깥에 위치하는 화소이되 상기 방법은;A method of converting a processing block included in an image frame signal including an object, wherein the processing block is composed of N × N pixels, the pixels are classified into an object pixel and a background pixel, and N is a positive integer. The pixel located inside the object and the background pixel being the pixel located outside of the object; (A) 프로세싱 블록의 L 개의 열을 선택하되, 각각의 L개의 열은 적어도 하나의 물체화소를 포함하고, L은 0부터 N까지의 정수인 단계;(A) selecting L columns of the processing block, each L columns comprising at least one object pixel, where L is an integer from 0 to N; (B) (A)단계에서 선택된 각각의 열에 대해, 상기 각각의 열에 포함된 물체화소의 개수를 나타내는 M을 결정하고, 제1벡터를 제공하되, 제1벡터의 각각의 원소는 각각의 M개의 물체화소의 값이고, M은 1부터 N까지의 정수인 단계;(B) For each column selected in step (A), determine M representing the number of object pixels contained in each column, and provide a first vector, where each element of the first vector is each M A value of the object pixel, wherein M is an integer from 1 to N; (C) 각각의 열들에 대해서, 다수의 기설정된 인장행렬 중에서 M과 N에 기준하여 하나의 인장행렬을 선택하고 선택된 인장행렬을 제1벡터에 곱하여 인장된 제1벡터를 제공하는 단계;(C) for each column, selecting one tensile matrix based on M and N from a plurality of predetermined tensile matrices and multiplying the selected tensile matrix by the first vector to provide a tensioned first vector; (D) L개의 열을 포함하는 제1인장된 프로세싱 블록을 제공하되, 각각의 열은 각각의 인장된 제1벡터의 원소를 값으로 하는 N개의 화소를 포함하는 단계;(D) providing a first tensioned processing block comprising L columns, each column comprising N pixels whose value is the element of each stretched first vector; (E) 제1인장된 프로세싱 블록의 각각의 행에 대해 L차원 제2벡터를 제공하되 제2벡터의 원소는 제1인장된 블록의 상기 각각의 행에 포함된 화소의 값인 단계;(E) providing an L-dimensional second vector for each row of the first stretched processing block, wherein an element of the second vector is a value of a pixel included in each row of the first stretched block; (F) L과 N값에 기준하여 다수의 기설정된 인장행렬로부터 하나의 인장행렬을 결정하는 단계;(F) determining one tensile matrix from the plurality of predetermined tensile matrices based on the L and N values; (G) 단계 (F)에서 선택된 인장행렬을 각각의 제2벡터에 곱하여 N개의 인장된 제2벡터와 인장된 프로세싱 블록을 제공하되, 인장된 프로세싱 블록은 N개의 행을 포함하고, 각각의 행은 N개의 화소를 포함하고, 화소의 값은 각각의 인장된 제2벡터의 원소인 단계;(G) multiplying the tensile matrix selected in step (F) by each second vector to provide N tensioned second vectors and a tensioned processing block, wherein the tensioned processing block comprises N rows, each row Comprises N pixels, wherein the value of the pixel is an element of each tensioned second vector; (H) 프로세싱 블록의 물체화소의 수를 세어서 물체화소의 수를 프로세싱 블록의 화소의 수로 나눈 값인 블록 스케일링 팩터를 결정하는 단계; 및(H) counting the number of object pixels in the processing block to determine a block scaling factor that is a value obtained by dividing the number of object pixels by the number of pixels in the processing block; And (I) 블록 스케일링 팩터를 제2인장된 프로세싱 블록의 각각의 화소에 곱하여 인장된 프로세싱 블록을 제공하는 단계를 포함하는 부호화 방법.(I) multiplying the block scaling factor by each pixel of the second stretched processing block to provide a tensioned processing block. 제1항에 있어서 상기 M차원 벡터를 N차원 벡터로 변환하기 위한 인장행렬이The method of claim 1 wherein the tension matrix for converting the M-dimensional vector to an N-dimensional vector 와 같이 결정되고, 이때 aijIs determined as, where a ij is 으로 표현되고, bijWhere b ij is 로 표현되고, μ0Expressed as, μ 0 is 로 표현되는 부호화 방법.The coding method represented by. 제1항에 있어서, 상기 M차원 벡터를 N차원 벡터로 변환하기 위한 인장행렬이The method of claim 1, wherein the tension matrix for converting the M-dimensional vector to an N-dimensional vector 와 같이 결정되고, 이때 bijIs determined as follows, where b ij is 으로 표현되고, aijRepresented by a ij 로 표현되고, μ0Expressed as, μ 0 is 로 표현되는 부호화 방법.The coding method represented by. 물체를 포함하는 영상 프레임 신호에 포함된 프로세싱 블록을 변환하는 방법으로서 프로세싱 블록은 N×N개의 화소로 구성되어 있고 화소들은 물체화소와 배경화소로 분류되고, N은 양의 정수이고 물체화소는 물체의 내부에 위치하는 화소이고, 배경화소는 물체의 바깥에 위치하는 화소이되 상기 방법은;A method of converting a processing block included in an image frame signal including an object, wherein the processing block is composed of N × N pixels, the pixels are classified into object pixels and background pixels, N is a positive integer, and an object pixel is an object. A pixel located inside of the pixel, and the background pixel is a pixel located outside of the object; (A) 프로세싱 블록의 L개의 열을 선택하되, 각각의 L개의 열은 적어도 하나의 물체화소를 포함하고, L은 0부터 N까지의 정수인 단계.(A) selecting L columns of the processing block, each L columns comprising at least one object pixel, where L is an integer from 0 to N; (B) (A)단계에서 선택된 각각의 열에 대해 상기 각각의 열에 포함된 물체화소의 개수를 나타내는 M을 결정하고 제1벡터를 제공하되, 제1벡터의 각각의 원소는 각각의 M개의 물체화소의 값이고, M은 1부터 N까지의 정수인 단계;(B) For each column selected in step (A), determine M representing the number of object pixels contained in each column and provide a first vector, where each element of the first vector is a respective M object pixel. Wherein M is an integer from 1 to N; (C) 각각의 열들에 대해서, 다수의 기설정된 인장행렬 중에서 M과 N에 기준하여 하나의 인장행렬을 선택하고 선택된 인장행렬을 제1벡터에 곱하여 인장된 제1벡터를 제공하는 단계;(C) for each column, selecting one tensile matrix based on M and N from a plurality of predetermined tensile matrices and multiplying the selected tensile matrix by the first vector to provide a tensioned first vector; (D) L개의 열을 포함하는 제1인장된 프로세싱 블록을 제공하되, 각각의 열은 각각의 인장된 제1벡터의 원소를 값으로 하는 N 개의 화소를 포함하는 단계;(D) providing a first tensioned processing block comprising L columns, each column comprising N pixels whose value is the element of each stretched first vector; (E) 제1인장된 프로세싱 블록의 각각의 행에 대해, L차원 제2벡터를 제공하되 제2벡터의 원소는 제1인장된 블록의 상기 각각의 행에 포함된 화소의 값인 단계;(E) for each row of the first stretched processing block, providing an L-dimensional second vector, wherein an element of the second vector is a value of a pixel included in each row of the first stretched block; (F) L과 N값에 기준하여 다수의 기설정된 인장행렬로부터 하나의 인장행렬을 결정하는 단계;(F) determining one tensile matrix from the plurality of predetermined tensile matrices based on the L and N values; (G) 단계 (F)에서 선택된 인장행렬을 각각의 제2벡터에 곱하여 N개의 인장된 제2벡터와 인장된 프로세싱 블록을 제공하되, 인장된 프로세싱 블록은 N개의 행을 포함하고 각각의 행은 N개의 화소를 포함하고, 화소의 값은 각각의 인장된 제2벡터의 원소인 단계를 포함하는 방법으로서, 상기 M차원 벡터를 N차원 벡터로 변환하기 위한 인장행렬이,(G) multiplying the tension matrix selected in step (F) by each second vector to provide N tensioned second vectors and a tensioned processing block, wherein the tensioned processing block comprises N rows and each row A method comprising N pixels, wherein a value of the pixel is an element of each tensioned second vector, wherein the tension matrix for converting the M-dimensional vector into an N-dimensional vector includes: 와 같이 결정되고, 이때 aij가Is determined as, where aij 으로 표현되고, bij가,Represented by bij, 로 표현되고 μ0는,Where μ 0 is 로 표현되는 부호화 방법.The coding method represented by. 물체를 포함하는 영상 프레임 신호를 부호화하는 장치로서, 영상 프레임 신호는 물체화소와 배경화소를 포함하고, 물체화소는 물체의 내부에 위치하는 화소이고 배경화소는 물체의 바깥에 위치하는 화소이되 상기 장치는;An apparatus for encoding an image frame signal including an object, wherein the image frame signal includes an object pixel and a background pixel, wherein the object pixel is a pixel located inside the object and the background pixel is a pixel located outside the object. Is; (A) 영상 프레임 신호의 화소 중 어떤 것이 물체화소인지를 나타내는 이진맵을 검출하는 수단;(A) means for detecting a binary map indicating which of the pixels of the image frame signal is an object pixel; (B) 이진맵을 부호화하여 제1부호화된 영상프레임 신호를 생성하는 수단;(B) means for encoding the binary map to generate a first encoded image frame signal; (C) 영상 프레임을 다수의 프로세싱 블록으로 나누는 수단으로서 각각의 프로세싱 블록은 N×N개의 화소를 포함하고, N은 양의 정수인 수단;(C) means for dividing an image frame into a plurality of processing blocks, each processing block comprising N × N pixels, where N is a positive integer; (D) 각각의 프로세싱 블록에 물체화소와 배경화소를 동시에 포함하는지를 나타내는 제어신호를 생성하는 수단;(D) means for generating a control signal indicating whether each processing block includes an object pixel and a background pixel at the same time; (E) 제어신호에 응답하여, 프로세싱 블록을 제1세트의 프로세싱 블록과 제2세트의 프로세싱 블록으로 분류하는 수단으로서, 제1세트의 각각의 프로세싱 블록에는 물체화소와 배경화소가 모두 포함되어 있는 수단;(E) means for classifying a processing block into a first set of processing blocks and a second set of processing blocks in response to a control signal, wherein each processing block of the first set includes both an object pixel and a background pixel; Way; (F) 제1세트의 각각의 프로세싱 블록을 인장된 프로세싱 블록으로 변환하는 변환수단;(F) conversion means for converting each processing block of the first set into a tensioned processing block; (G) 인장된 프로세싱 블록이나 제2세트의 프로세싱 블록을 부호화하여, 제2부호화된 영상 프레임 신호를 제공하는 수단;(G) means for encoding the stretched processing block or the second set of processing blocks to provide a second coded image frame signal; (H) 제1 및 제2부호화된 영상 프레임 신호를 포매팅하는 수단을 포함하는 장치로서, 상기 각각의 프로세싱 블록을 변환하는 수단은;(H) an apparatus comprising means for formatting first and second encoded video frame signals, the means for transforming each processing block; (F1) 프로세싱 블록의 L개의 열을 선택하는 수단으로서, 각각의 L개의 열은 적어도 하나의 물체화소를 포함하고, L은 0부터 N까지의 정수인 제1선택 수단;(F1) means for selecting L columns of the processing block, each L columns comprising at least one object pixel, wherein L is first selection means that is an integer from 0 to N; (F2) 제1선택 수단에서 선택된 각각의 열에 대해, 상기 각각의 열에 포함된 물체화소의 개수를 나타내는 M을 결정하고 제1벡터를 제공하되, 제1벡터의 각각의 원소는 각각의 M개의 물체화소의 값이고, M은 1부터 N까지의 정수인 수단;(F2) For each column selected by the first selection means, determine M representing the number of object pixels contained in each column and provide a first vector, wherein each element of the first vector is each M object Means for pixels, wherein M is an integer from 1 to N; (F3) 각각의 열들에 대해서, 다수의 기설정된 인장행렬 중에서 M과 N에 기준하여 하나의 인장행렬을 선택하고 선택된 인장행렬을 제1벡터에 곱하여 인장된 제1벡터를 제공하는 수단으로서, 상기 M차원 벡터를 N차원 벡터로 변환하기 위한 인장행렬이.(F3) means for selecting one tensile matrix based on M and N among a plurality of predetermined tensile matrices for each of the columns, and multiplying the selected tensile matrix by the first vector to provide a tensioned first vector, wherein Tensile matrix for converting M-dimensional vectors into N-dimensional vectors. 와 같이 결정되고, 이때 aij가,Is determined as, where aij is 으로 표현되고, bij가,Represented by bij, 로 표현되고, μ0는,Is expressed as μ 0 , 로 표현되고;Represented by; (F4) L개의 열을 포함하는 제1인장된 프로세싱 블록을 제공하되, 각각의 열은 각각의 인장된 제1벡터의 원소를 값으로 하는 N개의 화소를 포함하는수단;(F4) means for providing a first tensioned processing block comprising L columns, each column comprising N pixels whose value is an element of each tensioned first vector; (F5) 제1인장된 프로세싱 블록의 각각의 행에 대해 L차원 제2벡터를 제공하되 제2벡터의 원소는 제1인장된 블록의 상기 각각의 행에 포함된 화소의 값인 수단;(F5) means for providing an L-dimensional second vector for each row of the first stretched processing block, wherein an element of the second vector is a value of a pixel included in each row of the first stretched block; (F6) L과 N값에 기준하여 다수의 기설정된 인장행렬로부터 하나의 인장행렬이 결정하는 제2선택 수단;(F6) second selection means for determining one tensile matrix from a plurality of predetermined tensile matrices based on L and N values; (F7) 제2선택 수단에서 선택된 인장행렬을 각각의 제2벡터에 곱하여 N개의 인장된 제2벡터와 인장된 프로세싱 블록을 제공하는 수단으로서, 인장된 프로세싱 블록은 N개의 행을 포함하고 각각의 행은 N개의 화소를 포함하고, 화소의 값은 각각의 인장된 제2벡터의 원소인 수단을 포함하는 부호화 장치.(F7) means for multiplying each second vector by the tensile matrix selected in the second selection means to provide N tensioned second vectors and a tensioned processing block, the tensioned processing block comprising N rows and each And the row comprises N pixels, wherein the value of the pixel comprises means that is an element of each tensioned second vector.
KR1019960010632A 1996-04-09 1996-04-09 Method and apparatus for processing an image signal having an object by using an extension-interpolation technique KR100203713B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960010632A KR100203713B1 (en) 1996-04-09 1996-04-09 Method and apparatus for processing an image signal having an object by using an extension-interpolation technique

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960010632A KR100203713B1 (en) 1996-04-09 1996-04-09 Method and apparatus for processing an image signal having an object by using an extension-interpolation technique

Publications (2)

Publication Number Publication Date
KR970073154A KR970073154A (en) 1997-11-07
KR100203713B1 true KR100203713B1 (en) 1999-06-15

Family

ID=19455334

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960010632A KR100203713B1 (en) 1996-04-09 1996-04-09 Method and apparatus for processing an image signal having an object by using an extension-interpolation technique

Country Status (1)

Country Link
KR (1) KR100203713B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100367831B1 (en) * 1998-06-30 2003-01-10 주식회사 팬택앤큐리텔 Filtering method and apparatus of chrominance signal of an image

Also Published As

Publication number Publication date
KR970073154A (en) 1997-11-07

Similar Documents

Publication Publication Date Title
KR100530681B1 (en) How to send and receive coded video images
US5903669A (en) Image processing apparatus and method
US5767909A (en) Apparatus for encoding a digital video signal using an adaptive scanning technique
KR100788220B1 (en) Quality based image compression
KR20040018414A (en) An apparatus and method for encoding digital image data in a lossless manner
KR20010075232A (en) Encoding method for the compression of a video sequence
RU2335803C2 (en) Method and device for frame-accurate encoding of residual movement based on superabundant basic transformation to increase video image condensation
JP3087835B2 (en) Image encoding method and apparatus and image decoding method and apparatus
KR100683380B1 (en) Method and apparatus for transformation and inverse transformation of image for image compression coding
US5706366A (en) Apparatus for encoding an image signal having a still object using an image warping technique
US5845012A (en) Apparatus for encoding an image signal having a still object
US5822000A (en) Video encoding using rearrangement of transform coefficients and inter-block correlation
US5633685A (en) Method and apparatus for encoding an image signal having an object by using an extension-interpolation technique
JPH1188880A (en) Quantization matrix for still picture and moving image
JP3105906B2 (en) Image processing device
AU2001293994B2 (en) Compression of motion vectors
US5724096A (en) Video signal encoding method and apparatus employing inter-block redundancies
KR100203713B1 (en) Method and apparatus for processing an image signal having an object by using an extension-interpolation technique
KR100242635B1 (en) A system for variable-length-coding and variable-length-decoding digital data
AU2001293994A1 (en) Compression of motion vectors
US5778101A (en) Method and apparatus for processing an image signal having an object by using an extension-interpolation technique
KR100203694B1 (en) Method and apparatus for encoding an image signal having an object by using an extension-interpolation technique
US5825422A (en) Method and apparatus for encoding a video signal based on inter-block redundancies
EP0998818B1 (en) A method in compression coding
JPH0310486A (en) Moving picture encoder

Legal Events

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

Payment date: 20110302

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee