KR900008456B1 - Video encoding apparatus - Google Patents
Video encoding apparatus Download PDFInfo
- Publication number
- KR900008456B1 KR900008456B1 KR1019900009292A KR900009292A KR900008456B1 KR 900008456 B1 KR900008456 B1 KR 900008456B1 KR 1019900009292 A KR1019900009292 A KR 1019900009292A KR 900009292 A KR900009292 A KR 900009292A KR 900008456 B1 KR900008456 B1 KR 900008456B1
- Authority
- KR
- South Korea
- Prior art keywords
- vector
- output
- signal
- distortion
- index
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
Abstract
내용 없음.No content.
Description
제1도는 종래의 화상부호화장치의 전체구성도.1 is an overall configuration diagram of a conventional image encoding apparatus.
제2도는 일반적인 벡터 양자화의 원리를 설명하기위한 설명도.2 is an explanatory diagram for explaining the principle of general vector quantization.
제3도는 종래의 화상부호화장치에 있어서의 입력블록과 왜곡연산의 대상인 복수블록과의 위치관계를 표시한 도면.3 is a diagram showing the positional relationship between an input block and a plurality of blocks that are subject to distortion calculation in a conventional image encoding apparatus.
제4도는 이 발명의 제1실시예의 전체기술인 벡터 양자부호화기의 구성을 표시하는 블록도.4 is a block diagram showing the configuration of a vector quantum encoder, which is the whole technique of the first embodiment of the present invention.
제5도는 이 발명의 제1의 실시예의 구성을 표시하는 블록도.Fig. 5 is a block diagram showing the construction of the first embodiment of this invention.
제6도는 동제1실시예의 주요한 요소의 상세한 구성을 표시하는 블록도.6 is a block diagram showing the detailed configuration of the main elements of the first embodiment.
제7도는 이 발명의 제2실시예의 전제기술인 목탐색 벡터 양자화 부호화기의 일예를 표시하는 구성도.7 is a block diagram showing an example of a wood search vector quantization coder as a prerequisite of the second embodiment of the present invention.
제8도는 제2실시예의 전제기술인 목탐색 벡터 양자화 부호화기 제2단의 예를 표시하는 구성도.FIG. 8 is a configuration diagram showing an example of the second stage of the wood search vector quantization coder as a prerequisite of the second embodiment. FIG.
제9도는 이 발명 제2실시예에 의한 목탐색 벡터 양자화 부호화기의 일실시예를 표시하는 구성도.9 is a block diagram showing an embodiment of a wood search vector quantization encoder according to a second embodiment of the present invention.
제10도는 이 발명의 제2실시예에 의한 목탐색 벡터 양자화 부호화기 제2단의 일실시예를 표시하는 구성도.FIG. 10 is a block diagram showing an embodiment of a second stage of the Seek vector quantization encoder according to the second embodiment of the present invention. FIG.
제11도는 이 발명의 제2실시예에 의한 출력벡터 코드테이블 #0, #1의 어드레스 매프(Map)표시도.11 is an address map display diagram of output vector
제12도는 이 발명의 제2실시예에 있어서 목탐색 벡터 양자화에서의 탐색설명도.FIG. 12 is an explanatory diagram of search in quantum search vector according to the second embodiment of the present invention. FIG.
제13도는 이 발명의 제3실시예의 전제기술인 프레임간 벡터 양자화 부호화기를 표시하는 블록구성도.13 is a block diagram showing an inter-frame vector quantization coder as a prerequisite of the third embodiment of the present invention.
제14도는 이 발명의 제3실시예인 프레임간 벡터 양자화 부호화기를 표시하는 블록구성도.14 is a block diagram showing an inter-frame vector quantization coder as a third embodiment of the present invention.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
310 : 전탐색 벡터 양자화부 320 : 왜곡판정회로310: prescan vector quantization unit 320: distortion determination circuit
330 : 가변길이 부호화회로 420, 440, 460 : 부호화기330: variable
500 : 벡터 양자화장치500: vector quantizer
이 발명은 예를들면 화상통신 시스템에 적용되는 벡터 양자화 부호화장치에 관한 것이다.The present invention relates to, for example, a vector quantization encoding apparatus applied to a video communication system.
이 종류의 종래장치 특히 움직임 보상방식 화상부호화장치로서는 제1도에 표시하는 것이 있다.Conventional devices of this kind, in particular, a motion compensation image coding apparatus, are shown in FIG.
제1도에 있어서, 1은 A/D 변환기로, 이 A/D 변환기(1)은 비데오 카메라(8)에서 출력된 화상신호를 입력하여 이것을 아날로그/디지탈변환하여 출력한다.In Fig. 1, 1 is an A / D converter, and this A /
2는 블록구성부이며 상기 A/D 변환기(1)에서 출력된 디지털 신호계열을 입력하여 화상상에서 근접한 화소끼리를 K개(K는 2이상의 정수)마다 블록화하여 출력한다.2 is a block configuration unit, and inputs a digital signal sequence output from the A /
3은 프레임메모리이며 가산기(10)을 통하여 주어진 현 입력신호의 프레임보다도 1프레임전의 데이터를 기억한다.3 is a frame memory, which stores data one frame before the frame of the current input signal given through the
4는 참조 신호생성부이며 상기 블록구성부(2)에 있어서 블록화된 현 입력신호계열을 포함하는 입력블록화 화상상에서 동일위치에 오는 블록을 포함하는 1프레임전의 신호계열에 의하여 형성되는 복수의 블록을 상기 프레임메모리(3)에 의하여 판독하는 것이다.4 denotes a plurality of blocks formed by a signal sequence of one frame before, including a block coming at the same position on an input block image including the current input signal sequence blocked by the
5는 왜곡연산부이며 상기 블록구성부(2)에서 출력된 입력블록의 신호계열과 상기 프레임메모리(3)에 기억되어 있는 복수블록의 신호계열의 왜곡을 연산하고 최소왜곡을 주는 블록의 위치정보 및 이 시점에서의 신호계열을 출력한다.5 is a distortion calculation unit which calculates the distortion of the signal sequence of the input block outputted from the
6은 감산기이며 상기 블록구성부(2)에서 출력된 입력블록의 신호계열과 상기 왜곡연산부(5)에서 출력된 최소왜곡을 주는 블록의 신호계열의 차신호계열로된 벡터를 구하여 출력한다.6 is a subtractor and obtains and outputs a vector of a signal sequence of an input block output from the
7은 양자화 부호화부이며 상기 감산기(6)에서 출력된 차신호계열로된 벡터를 받아서 이것을 양자화 부호화하도록 구성되어 있다.7 is a quantization encoder and is configured to receive a vector of the difference signal sequence outputted from the
9는 양자화 복호(復號)화부이며 상기 양자화 부호화부(7)에서 출력된 양자화 부호화된 신호로부터 전기 차신호계열을 재생한다.9 is a quantization decoding unit that reproduces the electric difference signal sequence from the quantized coded signal output from the
10은 가산기이며 상기 양자화 복호화부(9)로부터의 양자화 복호화출력과 상기 왜곡연산부(5)에서 출력된 최소왜곡을 주는 블록의 신호계열을 가산하여 화상신호를 재생하고 상기 프레임메모리(3)에 기록하도록 되어 있다.10 is an adder, which adds the quantized decoding output from the
여기서 제2도에 기준하여 벡터 양자화의 원리에 관하여 간단히 설명한다.Here, the principle of vector quantization will be briefly described with reference to FIG.
정보원 입력신호계열을 K개 합하여 입력벡터 X=〔X1, X2,…XK〕로 한다.Information source Input signal sequence K is summed and input vector X = [X 1 , X 2 ,. X K ].
이때 K차원 유클릿 신호공간의 N개의 대표점(즉 출력벡터)의 세트를로 한다. 출력벅터를 대표점(예 : 중심)으로 하는 RK의 각 분할을 R1, R1R倻 면 벡터 양자화 Q는 다음식으로 정의된다.At this time, K-dimensional Euclit signal space N representative points of (ie output vector) Set of Shall be. Output Bucket For each division of RK whose representative point is (eg, center), R1, R1R 'plane vector quantization Q is defined by the following equation.
Q : RK→Y ………………………………………………………………………(1)Q: R K ? … … … … … … … … … … … … … … … … … … … … … … … … … … (One)
여기서………………………………(2)here … … … … … … … … … … … … (2)
상기 벡터 양자화 Q는 부호화 C와 복호화 D의 종속접속으로서 표시된다.The vector quantization Q is represented as a cascade of coding C and decoding D.
부호화 C는 RK의 출력벡터의 세트의 인덱스세트 I=1, 2, …, N〕로의 사상(寫像)이며 복호화 D는 I로부터 Y의 사상이다.Code C is the set of output vectors of RK Set of indexes I = 1, 2,... , N], and decoding D is from I to Y.
즉, C : RK→I, O : I→Y ………………………………………………………(4)That is, C: R K → I, O: I → Y... … … … … … … … … … … … … … … … … … … … … (4)
Q=D·C …………………………………………………………………(5)Q = D · C... … … … … … … … … … … … … … … … … … … … … … … … … (5)
이다.to be.
벡터 양자화에 있어서는 전기부호화 출력 I가 전송 혹은 기록되는 것이 되기 때문에 극히 부호화 효율이 양호하다.In vector quantization, the encoding efficiency is extremely good because the electrocoded output I is transmitted or recorded.
벡터 양자화는 입력벡터를 최단거리에 있는(최소왜곡으로된) 출력벡터 yi로 사상하는 것이다.Vector quantization maps the input vector to the output vector yi at the shortest distance (minimum distortion).
구체적으로는 입출력 벡터간의 거리(왜곡)를 d(x, yi)로 하면은 아래와 같이 된다.Specifically, if the distance (distortion) between the input and output vectors is d (x, yi), it is as follows.
if d()<d() 모든 j에 대하여 ………………………………………(6)if d ( ) <D ( ) For all j… … … … … … … … … … … … … … … (6)
(-R; 즉→………………………………………………………………(7) (-R; i.e. → … … … … … … … … … … … … … … … … … … … … … … … … (7)
제3도에 표시하는 것같은 출력벡터 yi의 세트 Y는 트레이닝모델(training model)로 되는 정보원 입력신호계열을 사용한 클러스터링(clustering)(대표점의 선출과 신호공간의 분할을 왜곡의 총화가 최소로 될 때까지 반복)에 의하여 구할수 있다.The set Y of the output vector yi as shown in FIG. 3 is clustering using an input source signal sequence that is a training model (the selection of representative points and the division of the signal space are minimized. Can be repeated until
상기 제1도의 구성의 동작을 이하 설명한다.The operation of the configuration of FIG. 1 will be described below.
비데오 카메라(8)로부터 A/D 변환기(1)로 출력된 화상신호는 이 A/D 변환기(1)로 디지털 신호계열로 변환되고 블록구성부(2)에 출력된다. 이 디지털 신호계열은 블록구성부(2)에 있어서 화상상 근접한 화소끼리 K개마다 통상 화상상에서 장방형(또는 정방형)이 되도록 하여 블록화되는 동시에 신호계열의 열을 변환시켜서 왜곡연산부(5) 및 감산기(6)에 출력된다.The image signal output from the
한편 프레임메모리(3)에 기억되고 참조신호생성부(4)에 의하여 판독된 전기복수블록의 신호계열은 상기 참조신호생성부(4)에 의하여 블록구성부(2)로부터 출력되는 블록화된 현 입력신호계열과 동기로 왜곡연산부(5)에 송출된다.On the other hand, the signal sequence of the electric plural blocks stored in the
블록구성부(2)로부터 출력된 현 입력신호계열의 블록과 참조신호생성부(4)에 의하여 판독되는 복수블록의 위치관계의 일례는 제3도(a) 현재의 프레임, (b) 하나전의 프레임으로서 도시한 바와같다.An example of the positional relationship between a block of the current input signal sequence output from the
상술한 현 입력블록의 신호계열과 복수블록의 신호계열의 왜곡계산은 왜곡연산부(5)에 있어서 예를들면 유클릿 왜곡이나 절대치 왜곡 등을 사용하여 실시한다.The distortion calculation of the signal sequence of the current input block and the signal sequence of the plurality of blocks described above is performed in the
이 계산결과에 의하여 현 입력블록에 대하여 최소왜곡을 주는 블록이 상기 복수블록 중에서 선택된다.Based on this calculation result, a block giving the least distortion to the current input block is selected from the plurality of blocks.
여기서 계산대상이 되는 블록수를 M개(M는 2이상의 정수)로 하고 최소왜곡을 주는 블록이 이중의 ℓ번째(ℓ=1, 2,…M)의 것이라고 하면 상기 왜곡연산부(5)에서는 상기 ℓ의 값 및 이 블록의 신호계열을 감산기(6)에 출력하게 된다.If the number of blocks to be calculated is M (M is an integer of 2 or more), and the block giving the least distortion is a double L-th (L = 1, 2, ... M), the
상술한 입력블록의 신호계열과 최소왜곡을 주는 신호계열과에 의하여 감산기(6)은 이들의 차신호계열로된 벡터를 구하여서 이것을 양자화 부호화(7)에 출력한다.Based on the signal sequence of the input block and the signal sequence giving the minimum distortion, the
이 차신호계열로된 벡터는 양자화 부호화부(7)에 있어서 양자화 부호화되어 양자화 복호화부(9)에 출력된다.The vector of the difference signal sequence is quantized coded in the
이 양자화 복호화부(9)에 의하여 재생된 차신호계열과 전기 왜곡연산부(5)로부터 출력된 전기 최소왜곡을 주는 블록의 신호계열과는 가산기(10)에 각각 출력되고 가산기(10)에 의하여 가산되어서 화상신호로 재생된다.The difference signal sequence reproduced by the
그리고 이 화상신호는 전기가산기(10)에 의하여 프레임메모리(3)에 기록하게 된다.This image signal is recorded by the
상술한 양자화 부호화부(7)에서 가산기(10)에 이르는 프로세스에서의 신호처리는 요는 감산기(6)에 있어서 구한 전기차 신호계열로된 벡터에 의한 후처리에 관한 것이며, 상기 차신호의 크기 즉 벡터량이 작으면 작을수록 움직임보상의 효율이 제고된다.The signal processing in the process from the
이상과 같이하여 입력된 화상신호는 블록화되고 현 화상신호의 1프레임전의 프레임의 어느 위치의 블록과 가장 비슷한가의 정보와 이 블록과의 오차성분을 양자화 한것에 부호화가 되는 것이다.The image signal input as described above is blocked and encoded by quantizing the information of which position of the frame one frame before the current image signal is most similar to and the error component thereof.
종래의 화상부호화장치 특히 움직임 보상방식 화상부호화장치는 이상과 같이 구성되었으며 예를들면 비데오 카메라(8)의 목돌림운동과 같은 이동등으로 화면이동방향이 명백한 경우에 있어서도 왜곡연산 대상이 되는 프레임메모리(3)에 기억되어 있는 블록과 블록구성부(2)에서 출력되는 입력블록의 위치관계가 고정되어 있기 때문에 움직임보상의 효율을 제고할수 없는 문제점이 있었다.The conventional image encoding apparatus, in particular, a motion compensation image encoding apparatus, is constructed as described above, and is a frame memory which is subject to distortion calculation even when the screen movement direction is obvious due to a movement such as a video rotation of the video camera 8 ( Since the positional relationship between the block stored in 3) and the input block output from the
이 발명의 제1의 목적은 부호화 효율을 현저하게 향상시킬수 있는 벡터 양자화 부호화기의 제공을 목적으로 한다.A first object of the present invention is to provide a vector quantization encoder that can significantly improve coding efficiency.
이 발명의 제2의 목적은 각단의 출력벡터 코드테이블을 구성하는 기억내용을 공통화할수 있는 벡터 양자화 부호화기를 제공하는 것이다.A second object of the present invention is to provide a vector quantization encoder capable of commonizing the contents of the contents constituting the output vector code table of each stage.
코드테이블을 구성하는 메모리의 접근되는 어드레스가 각단에서 중복되므로 불가능하게 되고 기억내용이 다품종(적어도 각단별) 필요하게 되는 등의 결정이 있었다.Since access addresses of the memory constituting the code table are duplicated at each stage, it has been impossible to make it possible, and the contents of the storage are required (at least at each stage).
이 발명의 제3의 목적은 화상신호에 있어서 블록상의 잡음을 감소시켜 고화질로서 화상신호의 대역압축이 가능한 프레임간 벡터양자화 부호화기를 얻는데 있다.A third object of the present invention is to obtain an inter-frame vector quantization encoder capable of band-compression of an image signal with high image quality by reducing noise on a block in an image signal.
상기 제1목적은 입력신호벡터를 포함하는 다차원 신호공간을 복수로 분할한 각 대표점의 출력벡터세트에서 판독하고 상기 입력신호벡터와 최소왜곡관계에 있는 상기 출력벡터를 탐색하는 전탐색 벡터 양자화부와, 허용왜곡을 설정할수 있으며 상기 입력벡터 및 상기 출력벡터간의 왜곡이 상기 허용왜곡 이하가 된 것을 판정하여 유의신호를 발생하는 왜곡판정회로와, 이 왜곡판정회로가 유의신호를 발생한 시점에서 상기 출력벡터의 인덱스신호를 가변길이 부호화하여 부호화 출력을 발생하는 가변길이 부호화회로를 갖춤으로써 실현된다.The first object is a pre-scan vector quantization unit for reading a multi-dimensional signal space including an input signal vector from an output vector set of each representative point divided into a plurality of points and searching for the output vector having a minimum distortion relation with the input signal vector. And a distortion determining circuit which can set an allowable distortion and generates a significant signal by judging that the distortion between the input vector and the output vector is less than or equal to the allowable distortion, and the output at the time when the distortion determining circuit generates the significant signal. It is realized by having a variable length coding circuit for variable length coding the index signal of the vector to generate a coded output.
상기 제2의 목적은 벡터 코드테이블에 기억된 각 출력벡터인덱스와 입력신호벡터와의 왜곡을 계산하여 이 왜곡이 최소로 되는 출력벡터인덱스를 구하는 부호화기를 구비하고, 각 부호화기중 최초단의 부호화기에는 전기 각 부호화단의 출력벡터인덱스중 부호길이가 짧은 출력벡터인덱스의 상위에 0부호를 필요개 가하여서 부호길이를 일치시킨 의사(擬似)출력벡터의 인덱스가 서로 중복하지 않는 초기의사출력벡터인덱스가 입력되어 있는 동시에 전기 각단의 부호화기가 보유하는 벡터 코드테이블은 상기 의사출력벡터인덱스와 상기 초기의사출력벡터인덱스에 대응하는 출력벡터의 짝을 맞추어 구성함으로써 실현된다.The second object is provided with an encoder which calculates a distortion of each output vector index and an input signal vector stored in the vector code table and obtains an output vector index whose minimum is the distortion. Among the output vector indexes of the previous coding stages, an initial pseudo output vector index in which the indexes of the pseudo-output vectors whose code lengths match with the zero sign is added to the upper part of the output vector index with the shorter code length as necessary. A vector code table that is input and held by the encoder of each stage is realized by pairing the pseudo output vector index with an output vector corresponding to the initial pseudo output vector index.
상기 제3의 목적은 입력화상 신호계열과 1프레임주기전의 화상신호계열을 예측신호계열로서 양자의 차분을 따서 이 차분신호를 송신버퍼로부터의 피드백제어신호에 의하여 설정된 임계치와 비교하여 유효/무효를 판정하고 유효화소만을 블록화하여 평균치 분리 정규화 벡터 양자화 부호화하여 가변길이 부호화하고 그의 부호화된 출력을 송신버퍼에 의하여 전송도로 출력하도록 구성함으로써 실현된다.The third object is to compare the difference between the input image signal sequence and the image signal sequence before one frame period as the prediction signal sequence, and compare the difference signal with a threshold set by the feedback control signal from the transmission buffer. It is realized by determining, blocking only the effective pixels, performing mean-length separated normalized vector quantization coding, variable length coding, and outputting the coded output thereof by transmission buffer.
이하 이 발명의 각 실시예에 대하여 기술한다.Hereinafter, each Example of this invention is described.
그런데 각 실시예의 구체적 설명을 기술하기전에 각 실시예의 개요를 개념적으로 기술한후 그 구성 및 동작을 기술하기로 한다.However, before describing the detailed description of each embodiment, the outline of each embodiment will be conceptually described, and the configuration and operation thereof will be described.
제1실시예의 설명에 앞서 그 전체기술에 대하여 제4도를 참조하면서 기술한다.Prior to the description of the first embodiment, the entire description thereof will be described with reference to FIG.
제4도는 제1실시예의 전제기술의 벡터 양자화 부호화기의 구성을 표시하는 블록도이며 도중, 101은 입력신호계열을 블록화 한 것을 보지하는 입력벡터 레지스터, 102는 코드테이블의 어드레스를 작성하는 코드테이블 어드레스 계수기, 103은 출력벡터를 기억시켜 놓는 출력벡터 코드테이블 메모리, 104는 이 출력벡터 코드테이블 메모리로부터 판독된 데이터를 보지하는 출력벡터 코드테이블 레지스터, 105는 입력벡터 레지스터(101)의 값과 출력벡터 코드테이블 레지스터(104)의 값과의 차를 연산하는 병렬감산기, 106은 이 병렬감산기의 출력의 절대치를 연산하는 병렬 절대치 연산기, 107은 입출력 벡터의 절대치 왜곡을 검출하는 절대치 왜곡검출기, 108은 입출력 벡터의 절대치 왜곡이 최소로 되는 출력벡터를 검출하는 최소왜곡검출기, 109는 최소왜곡검출기(108)의 출력신호에 기준하여 왜곡이 최소로 되는 출력벡터의 인덱스를 보지하는 인덱스래치를 각각 표시한다.4 is a block diagram showing the configuration of the vector quantization coder of the premise technique of the first embodiment, where 101 is an input vector register for holding an input signal sequence blocked, and 102 is a code table address for creating an address of a code table. A
다음에 동작에 대하여 설명한다.Next, the operation will be described.
부호화기의 입력신호계열을 K개 합하여 블록화되어 입력벡터=〔x1, x2, …, xk〕로 하여 입력벡터 레지스터(1)에 등록한다. 이 시점에서 코드테이블 어드레스 계수기 (102)에 대하여 i=1, 2,…,N까지 순차 계수시켜서 순번으로 출력벡터=〔yi1, yi2,…, yik〕를 출력벡터 코드테이블 메모리(103)으로부터 판독하고 출력벡터 코드테이블 레지스터(104)로 래치(latch)한다.The input vector of the encoder is blocked by adding up the K number of input vectors. = [X 1 , x 2 ,... , x k ] is registered in the input vector register (1). At this point, i = 1, 2,... For code
각 출력벡터 yi에 대하여 병렬감산기(105)와 병렬 절대치 연산기(106)과 절대치 왜곡검출기(107)은 아래 연산에 의하여 입출력 벡터의 절대치 di를 구한다.For each output vector yi, the
다음에 최소왜곡검출기(108)은 절대치 왜곡 di가 최소로 되는 출력벡터로서 검출한다.Next, the
최소왜곡 d는Minimum distortion d is
이다.to be.
최소왜곡검출기(108)은 출력벡터 코드테이블 메모리(103)에서 순차 판독되는 출력벡터과 입력벡터의 왜곡 d()를 계산하여 과거의 최소치와 비교하여 보다 작은 값이 검출될 때 이것을 새로운 최소왜곡으로서 보존하여 그때마다 스트로브(strobe)신호를 인덱스 래치(109)에 송출하여 출력벡터의 코드테이블 어드레스인 인덱스신호 i를 인덱스 래치(109)로 송신한다.The
상기 수순은 출력벡터 코드테이블 메모리(103)으로부터 출력벡터가 전부(i=I-N)판독될때까지 계속되어 전체탐색이 완료된다.The procedure is an output vector from the output vector
이 시점에서 인덱스 래치(109)에 최소왜곡으로 되는 출력벡터의 인덱스 i가 남아 이것이 부호출력으로 된다.At this point, the index i of the output vector, which becomes the minimum distortion, remains in the
이상이 벡터 양자화 부호화기를 구성하는 전탐색 벡터 양자화부이다.The above is the prescan vector quantization unit constituting the vector quantization coder.
다음에 제1실시예에 관하여 기술한다.Next, the first embodiment will be described.
이 실시예에 있어서는 허용왜곡을 왜곡판정회로에 설정하고 최소왜곡의 출력벡터 탐색중에 입력벡터와 출력벡터와의 거리(왜곡)가 허용왜곡 이하로된 시점에서 출력벡터의 인덱스신호를 가변길이 부호화하여 부호화 출력을 얻음으로써 부호화 효율을 향상시킨다.In this embodiment, the allowable distortion is set in the distortion judging circuit, and the variable length coding of the index signal of the output vector is performed when the distance (distortion) between the input vector and the output vector becomes less than the allowable distortion during the search of the output vector of minimum distortion. Encoding efficiency is improved by obtaining the encoding output.
제5도는 이 제1실시예의 구성을 표시하는 블록도이며 도중, 310은 제4도에서 설명한 것과 대략 같은 구성의 전탐색 벡터 양자화부(제4도 전체를 포함하여 이하 FSVQ부로 양칭한다), 320은 절대치 왜곡 di가 미리 정한 허용왜곡 dθ 이하로된 것을 판정하는 왜곡판정회로, 330은 왜곡판정회로의 출력에 기준하여 절대치 왜곡 di와 허용왜곡 dθ가 didθ로된 시점에서 출력벡터의 인덱스신호 i를 가변길이 부호화하여 부호화출력을 얻는 가변길이 부호화회로이다.FIG. 5 is a block diagram showing the structure of this first embodiment, and 310 is a pre-scan vector quantization unit having the same configuration as that described in FIG. 4 (hereinafter, referred to as the FSVQ unit including the entirety of FIG. 4). Is a distortion determining circuit for determining that the absolute distortion di is less than or equal to a predetermined allowable distortion dθ, and 330 is an absolute distortion di and an allowable distortion dθ based on the output of the distortion determining circuit. A variable length coding circuit that obtains a coded output by variable length coding the index signal i of the output vector at the point of dθ.
제6도는 이 실시예의 FSVQ부(310)의 상세한 구성을 표시하는 블록도이며 제4도와 동일부호는 각각 동일요소를 표시한다.6 is a block diagram showing the detailed configuration of the
그리고 제4도중의 코드테이블 어드레스 계수기(102)대신에 왜곡판정회로(320)의 출력에 의하여 재세트 할수 있는 재세트 기능부 코드테이블 어드레스 계수기(102)를 사용한 점이 제4도와 다르다.The code
상기와 같이 구성된 본 실시예의 동작을 이하 설명한다.The operation of this embodiment configured as described above will be described below.
먼저 부호화기의 입력신호계열은 K개 종합하여 블록화 되고 입력벡터=[x1, x2…xk〕로서 FSVQ부(310)에 입력된다.First, the input signal sequence of the encoder is blocked by combining K pieces of input signals. = [x 1 , x 2 ... x k ], is input to the
FSVQ부(310)에서는 입력벡터를 입력벡터 레지스터(101)에 등록하는 한편 재세트 기능부 코드테이블 계수기(102)에 대하여 순서대로 i=1∼N까지 계수시킴으로써 출력벡터 yi=〔yi·1, yi·2, …, yi·k〕를 출력벡터 코드테이블 메모리(103)에서 판독하여서 출력벡터 레지스터(104)에 순차 래치시킨다.In the
다음에 병렬연산기(105) 병렬 절대치 연산기(106) 및 절대치 왜곡검출기(107)에 의하여 다음식에 표시한대로 입력벡터와 각 출력벡터과의 절대치 왜곡 di를 구한다.Next, the
최소왜곡검출기(108)은 상기 절대치 왜곡 di를 과거의 최소치와 비교하여 보다 작은 값이 검출되었을때 이것을 새로운 최소왜곡으로서 받아들여 왜곡판정회로로 출력한다.The
또 그때마다 래치신호를 인덱스래치(109)에 보내 출력벡터의 코드테이블 어드레스인 인덱스신호 i를 인덱스래치(109)로 송신하여 가변길이 부호화회로(330)으로 출력한다.Each time, the latch signal is sent to the
상기 수순은 재세트 기능부 코드테이블 어드레스 계수기(102)의 계수기가 i=1에서 N로 향하여 계수할때마다 실시되는 것이지만 최소왜곡검출기(108)의 출력 di를 받은 왜곡판정회로(320)은 미리 설정되어 있는 허용왜곡 dθ와 비교하여 dθdi의 관계가 성립한 시점에서 가변길이 부호화회로(330)로 인덱스래치신호를 발신하여 인덱스신호 i를 수신시킨다.The above procedure is executed whenever the counter of the reset function code
또 재세트기능부 코드테이블 어드레스 계수기(102)로 재세트신호를 보내 계수를 종료시켜서 i=1에 재세트한다.A reset signal is sent to the code
인덱스신호 i를 수신한 가변길이 부호화회로 330은 인덱스신호 i의 최상위 비트에서 최하위 비트로 향하여 계속되는 모든 "0"를 삭제하며 부호길이를 단축한다.The variable
이와같은 수순을 수신되는 i전부에 대하여 실시하여서 가변길이 부호화하고 부호화 출력을 얻는다.This procedure is performed for all of the received i parts to perform variable length coding to obtain encoded output.
이 실시예는 이상 설명한대로 입력벡터및 출력벡터의 왜곡 di와 설정된 허용 dθ를 비교하여 didθ로된 시점에서 탐색을 중지함과 동시에 그때의 출력벡터의 인덱스신호 i를 가변길이 부호화하여 부호화 출력으로하고 있으므로 부호화 효율이 대폭 향상되며 이에 의하여 고속처리가 실현된다.This embodiment is an input vector as described above. And output vectors Compares the distortion di and the set allowable dθ Since the search is stopped at the point of dθ and the index signal i of the output vector is subjected to variable length coding to be coded output, the coding efficiency is greatly improved, whereby high-speed processing is realized.
제2실시예의 설명에 앞서 그 전체기술인 목탐색 벡터 양자화에 관하여 설명한다.Prior to the description of the second embodiment, a description will be given of the tree search vector quantization, which is the entire technique.
제12도에 표시한 바와같이 각 분기점 R로부터 2개의 가지가 분기하고 있는 2진목을 생각하면 목근은 K 차원신호공간 RK에 각 분기점은 공간 RK을 단계적으로 분할한 공간에 각각 대응하다.As shown in Fig. 12, considering the binary tree where two branches branch from each branch point R, the roots correspond to the K-dimensional signal space R K and each branch point corresponds to the space obtained by dividing the space R K stepwise.
각 공간에는 대표점(예 : 중심)이 정해져 있으며 전기대표점이 K차원의 출력벡터로 된다.Representative points (eg centers) are defined in each space, and the electrical representative point becomes the output vector in K-dimension.
각 단의 출력벡터, 입력벡터의 분포에 기준하여 입출력벡터간의 왜곡의 종화가 최소로 되도록 구하여져 있다. 입력벡터가 주어졌을 때 제1단에서 최종단까지 분기하는 두 개의 분기점에 대응하는 출력벡터와의 왜곡을 비교하여 왜곡이 작은 쪽의 가지를 선택해가면 종단분기점에 대응하는 출력벡터가 선택된다. 최종단이제n단이라면 종단분기점은 2n개이다.Based on the distribution of the output vector and input vector of each stage, it is calculated | required so that the verticalization of the distortion between input / output vectors may be minimum. Given an input vector, the output vector corresponding to the termination branch is selected by comparing the distortion with the output vector corresponding to the two branching points branching from the first stage to the final stage. If the last stage is the n-th stage, there are 2n termination points.
이상의 목탐색 벡터양자화(TSVQ : Tree search vetor quantiza-tion)의 설명이다. 제12도에서는 n=3의 예가 표시되어 있다.The above is a description of the tree search vector quantization (TSVQ). In Fig. 12, an example of n = 3 is shown.
제7도는 n=3의 경우의 목탐색벡터 양자화기의 구성예를 표시하고 있다. 제7도에 있어서 V1은 K개마다 블록화된 입력신호벡터, 420은 입력신호벡터가 입력되는 TSVQ 부호화기 제1단, V3는 TSVQ 부호화기 제1단에서 출력되는 제1단 출력벡터 인덱스, 440은 제1단 출력벡터 인덱스가 입력되는 종래의 TSVQ 부호화기 제2단, V5는 TSVQ 부호화기 제2단에서 출력되는 제2단 출력벡터 인덱스, 460은 제2단 출력벡터 인덱스가 입력되는 TSVQ 부호화기 제3단 V7은 TSVQ 부호화기 제3단에서 출력되는 제3단 출력벡터 인덱스이다.7 shows an example of the configuration of the tree search vector quantizer in the case of n = 3. In FIG. 7, V 1 denotes an input signal vector blocked for every K pieces, 420 denotes a first stage of the TSVQ encoder to which the input signal vector is input, and V 3 denotes a first stage output vector index output from the first stage of the TSVQ encoder, 440. Is the second stage of the conventional TSVQ encoder to which the first stage output vector index is input, V 5 is the second stage output vector index to be output from the second stage of the TSVQ encoder, and 460 is the TSVQ encoder to which the second stage vector output index is input. The third stage V 7 is a third stage output vector index output from the third stage of the TSVQ encoder.
또 제8도는 전기 TSVQ 부호화기 제2단(440)의 구성예를 더욱 상세하게 표시한 것이다.8 shows an example of the configuration of the
제8도에 있어서, 441은 입력신호벡터 V1이 입력되는 입력벡터 레지스터, 442는 제1단 출력벡터 인덱스 V3이 입력되는 제2단 출력벡터 코드테이블, 443은 입력벡터 레지스터에서 출력되는 입력신호와 제2단 출력벡터 코드테이블(442)에서 출력되는 출력벡터 인덱스와의 왜곡을 계산하는 왜곡연산회로, 445는 왜곡연산회로(443)으로 계산된 왜곡의 최소치를 구하는 왜곡 비교회로, V9은 왜곡비교회로(445)에서 출력되는 왜곡비교결과신호, 446은 왜곡비교결과신호 V9와 제1단 출력벡터 인덱스의 신호 V3에 기준하여 제2단 출력벡터 인덱스 V5를 출력하는 인덱스 레지스터이다. 다음에 동작에 관하여 설명한다.In FIG. 8, 441 is an input vector register to which an input signal vector V 1 is input, 442 is a second output vector code table to which a first output vector index V 3 is input, and 443 is an input output from an input vector register. A distortion calculation circuit for calculating a distortion between the signal and the output vector index output from the second stage output vector code table 442, 445 is a distortion comparison circuit for obtaining a minimum value of the distortion calculated by the
목탐색 벡터 양자화는 각단에 있어서 한쌍이 되는 2개의 출력벡터와 입력벡터와의 왜곡을 비교하여 다음단에서 비교할 짝이 되는 출력벡터를 결정하는 것의 반복이다.Throat search vector quantization is an iteration of comparing the distortion of two paired output vectors and input vectors at each stage and determining the paired output vectors to be compared at the next stage.
제12도에 표시하는 목의 3단계의 왜곡연산은 제7도에 있어서의 TSVQ 부호화기 제1단(420), TSVQ 부호화기 제2단(440), TSVQ 부호화기 제3단(460)에 대응시키게 된다. 각단에서는 전단까지의 왜곡비교결과에 의하여 지정되는 출력벡터의 짝과 입력벡터와의 왜곡연산을 실시하여 왜곡의 작은 쪽을 결정하며 그 정보를 전단까지의 비교결과에 부가한 후 다음단에 보낸다.The three-step distortion operation of the neck shown in FIG. 12 corresponds to the
제1단에서는 출력벡터의 짝이 하나밖에 없으므로 전단까지의 비교결과는 불필하며 존재하지 않는다.Since there is only one pair of output vectors in the first stage, the comparison result up to the front end is unnecessary and does not exist.
제1단에 있어서 왜곡비교결과 출력되는 출력인덱스 V3을 i1이라 하면 제2단에서는 i1에 의하여 결정되는 출력벡터의 짝과 입력벡터와의 왜곡연산을 실시하며 그 비교결과를 i1에 부가하여 i25를 형성한다. 제3단에서는 i2와 입력에 의하여 i27을 출력한다.If the output index V 3 outputted as a result of the distortion comparison in the first stage is i 1 , the second stage performs a distortion operation on the input vector pair and the input vector determined by i 1 , and compares the result with i 1 . In addition to form
제12도에 있어서 좌측의 가지를 선택하면은 0, 우측가지를 선택하면 1을 할당하는 것으로 하면 인덱스 i1, i2, O3는 각각 1자리, 2자리, 3자리의 2진수열이 되며 이 2진수열의 벡터 i3가 최종단의 출력벡터 인덱스로 된다.In FIG. 12, if the branch on the left is selected, 0 is assigned, and if the branch on the right is selected, 1 is assigned. The index i 1 , i 2 , and O 3 become a binary string of 1, 2, and 3 digits, respectively. The vector i 3 of this binary string becomes the output vector index of the last stage.
이상이 목탐색벡터 양자화기의 동작 설명이다.This concludes the description of the motion vector quantizer.
여기서 각단에 있어서 출력벡터 코드테이블은 전단결과에 의하여 지정되는 출력벡터의 짝으로서 제11도에 표시한대로 제1단에서는 y0, y1, 제2단에서는 y0, y1, y10, y11, 제3단에서는 y0, y1, y10, y11, y100, y101, y110, y111을 각각의 출력벡터 인덱스로서 기억하고 있지 않으면 안된다.Here, the output vector code table in each stage is a pair of output vectors designated by the front end result, as shown in FIG. 11, y 0 , y 1 in the first stage, y 0 , y 1 , y 10 , y in the second stage. In the third and third stages, y 0 , y 1 , y 10 , y 11 , y 100 , y 101 , y 110 , and y 111 must be stored as the output vector indices.
이하 제2실시예에 관하여 기술한다.A second embodiment will be described below.
부호화기 초단에 입력되는 초기의사출력벡터 인덱스와 입력신호벡터에 기준하여 부호화기 초단의 벡터 코드테이블에 기억된 각 출력벡터 인덱스의 하나가 선택되어서 부호화기 초단에서 제1단 출력벡터 인덱스가 출력된다. 또 부호길이의 짧은 출력벡터의 상위에 0부호길이를 일치시킨 의사출력벡터 인덱스와 입력신호벡터 왜곡이 연산회로에 의하여 계산된다. 이에 의하여 각단의 부호화기를 보유하는 벡터코드테이블은 공통화 하는 것이 가능하게 된다.One of the output vector indices stored in the vector code table at the first stage of the encoder is selected based on the initial pseudo output vector index and the input signal vector inputted at the first stage of the encoder, and the first stage output vector index is output at the first stage of the encoder. In addition, a pseudo output vector index and an input signal vector distortion obtained by matching a zero-code length above a short output vector of a code length are calculated by a calculation circuit. As a result, the vector code table holding the encoders of each stage can be shared.
이하 이 제2실시예로서 탐색이 3단계에 있어서 초기의사 인덱스가 "1"(BIN)의 경우를 제9도 내지 제11도에 의하여 설명한다. 제9도는 실시예인 목탐색 벡터양자화 부호화기의 탐색단수가 3단계의 경우를 블록도이며, 제7도와 동일부분은 동일부호 또는 대응하는 부호를 사용하여 표시하고 있다.9 to 11 illustrate the case where the initial pseudo index is " 1 " (BIN) in the
제9도에 있어서 V4는 초기의사출력벡터 인덱스, 420은 초기의사출력벡터 인덱스 V4와 입력신호벡터가 입력되는 이 실시예에 의한 TSVQ 부호화기 제1단, V6는 TSVQ부호화기 제1단(420)으로부터 출력되는 제1단 의사출력벡터 인덱스, 440은 입력신호 벡터 V1과 제1단 의사출력벡터 인덱스 V6가 입력되는 TSVQ 부호화기 제2단, V8은 TSVQ 부호화기 제2단(440)이 출력되는 제2단 의사출력벡터 인덱스, 460은 입력신호벡터 V1과 제2단출력벡터 인덱스 V8가 입력되는 TSVQ 부호화기 제3단이다.In FIG. 9, V 4 denotes an initial pseudo output vector index, 420 denotes an initial pseudo output vector index V 4, and an input signal vector of the TSVQ encoder according to the present embodiment. V 6 denotes a first stage of the TSVQ encoder. The first stage pseudo-output vector index outputted from 420, 440 is the second stage of the TSVQ encoder to which the input signal vector V 1 and the first stage pseudo-output vector index V 6 are input, and V 8 is the
제10도는 제9도에 있어서 이 실시예에 의한 TSVQ 부호화기 제2단을 더욱 상세히 표시한 블록도이다.FIG. 10 is a block diagram showing, in FIG. 9, the second stage of the TSVQ encoder according to this embodiment in more detail.
제10도에 있어서, TSVQ 부호화기 제2단(440)의 출력벡터 코드테이블(442)는 제2단 출력벡터 코드테이블 #0와 제2단 출력벡터 코드테이블 #1을 보유하고 있다.In FIG. 10, the output vector code table 442 of the
입력신호벡터 V1은 입력신호벡터 레지스터(441)을 통하여 왜곡연산회로(443)에 입력되어 있어 이 왜곡연산회로(443)은 상기 제2단 출력벡터 코드테이블 #0 및 제2단 출력벡터 코드테이블 #1에 기억된 벡터 인덱스와 입력신호벡터 V1과의 왜곡을 계산하여 이 계산결과를 제2단 왜곡 비교회로(445)에 입력하고 있다.The input signal vector V 1 is input to the
이 제2단 왜곡비교회로(455)는 계산결과에 의하여 0 또는 1의 왜곡 비교결과신호 V9을 출력하고 있어 이 왜곡비교결과신호 V9과 출력벡터 코드테이블(442)에 입력되는 제1단 의사출력벡터 인덱스 V6와는 의사 인덱스 쉬프트 레지스터(446)은 제2단 의사출력벡터 인덱스(V8)을 출력한다. 여기서 TSVQ 부호화기 제1단(420), TSVQ 부호화기 제2단(440), TSVQ 부호화기(460)은 전체로서 벡터양자화장치(500)을 구성하고 있다.The second stage distortion comparator 455 is the output of distortion comparison result signal V 9 of 0 or 1 by the calculation result, and it inputs in the distortion comparison result signal V9 and the output vector code table 442, the first stage pseudo Unlike the output vector index V 6 , the pseudo index shift register 446 outputs the second stage pseudo output
다음에 상기한 이 일실시예의 동작을 초기의사 인덱스를 "1"(BIN)로 한 경우를 설명한다. 우선 각 탐색단에 공통인 출력벡터 코드테이블 #0, #1의 탐색이 3단계의 경우의 어드레스 매프(map)를 제11도의 표로 표시한다.Next, the case where the initial pseudo index is set to "1" (BIN) in the above-described operation of this embodiment will be described. First, an address map in the case where the search of the output vector
지금 TSVQ 제1단에 입력된 입력신호 벡터 1과 초기의사출력벡터 인덱스 V4"1"(BIN)에 의하여 출력벡터 코드테이블 #0, #1에서 출력되는 벡터 인덱스 y0, y1과의 왜곡이 왜곡연산회로(443)에서 계산되어 있다. 왜곡비교회로(445)는 왜곡연산회로(443)의 계산결과에 의하여 최소계곡이 되는 한쪽의 출력벡터를 선택하고 이 선택한 결과에 의하여 왜곡비교결과 신호 V9를 출력한다.The distortion of the vector signal y0 and y1 output from the output vector
의사인덱스 쉬프트 레지스터(446)은 왜곡비교결과 신호 V9을 제1단 의사출력벡터 인덱스 V6의 최하위의 자리 LSB에 부가하며 또한 최상위의 자리 MSB를 잘라버리고 제2단 의사출력벡터 인덱스를 다음단으로 보낸다.The pseudo index shift register 446 adds the distortion comparison result signal V 9 to the least significant digit LSB of the first stage pseudo output vector index V 6 , and truncates the most significant digit MSB and the second stage pseudo output vector index to the next stage. Send to.
이와 같은 조작을 제2단, 제3단 실시하면 제3단 의사인덱스 쉬프트 레지스터에 있어서 최기의사출력벡터 인덱스의 최하위 자리 LSB인 "1"이 모두 잘리어 구할 제3단 출력인덱스 V7을 얻을 수 있다.By this the same operations carried out the second stage, third stage third stage pseudo the nearest physician lowest digit LSB "1" of the output vector index in the index shift register all well rear obtain the third to obtain a single Multi V 7 have.
이것을 구체적으로 표시하면 입력벡터에 대하여 TSVQ 부호기 제1단에서는 초기의사출력벡터 인덱스 "1"(BIN)에 의하여 출력벡터 코드테이블 #0에서 벡터인덱스 y0, 출력벡터 코드테이블 #1에서 벡터인덱스 y1이 출력되어 출력벡터 코드테이블 #0의 벡터인덱스 y0가 선택되었다고 하면 왜곡비교결과신호 V9는 "0"로 되어 의사인덱스 쉬프트 레지스터(446)에서는 초기의사출력벡터 인덱스 V4"1"(BIN)의 최하위 자리 LSB"0"를 부가하고 또한 최상위의 자리 MSB의 "0"를 떼어 버린다.Specifically, in the first stage of the TSVQ encoder for the input vector, the initial pseudo output vector index "1" (BIN) indicates that the vector index y0 in the output vector
이것을 식으로 표시하면 아래와 같다.This is expressed as the following formula.
001(BIN)→ 0010(BIN)→ 010(BIN)001 (BIN) → 0010 (BIN) → 010 (BIN)
TSBQ 부호화기 제2단계에서는 제1단 의사출력벡터 인덱스 V6"10"(BIN)에 의하여 출력벡터 코드테이블 #0에서 출력벡터 y0, 출력벡터 코드테이블 #1에서 벡터인덱스 y1이 출력되어 출력벡터 코드테이블 #1의 벡터인덱스 y1이 선택되었다면 제2단 의사출력벡터 인덱스 V8는In the second stage of the TSBQ encoder, the output vector y 0 is output from the output vector
010(BIN)→ 0101(BIN)→ 101(BIN)010 (BIN) → 0101 (BIN) → 101 (BIN)
이 된다.Becomes
또한 TSVQ 부호화기 제3단에서는 제2단 의사출력벡터 인덱스 V8"101"(BIN)에 의하여 출력벡터코드테이블 #0, #1에 의하여 벡터인덱스 y10, y11이 출력되어 출력벡터 코드테이블 #1의 벡터인덱스 y11이 선택되면 101(BIN)→1011(BIN)→011(BIN)으로 되어 초기의사출력벡터 인덱스가 사라져 벡터인덱스 y011의 인덱스 "11"(BIN)이 제3단 출력벡터 인덱스(부호화 출력) 7로서 얻게 된다.In the third stage of the TSVQ encoder, the vector indexes y 10 and y 11 are outputted by the output vector
이 탐색과정은 제9도에 있어서의 루트(Route)와 일치한다. 이상 설명한 바와 같이 이 실시예에 의하면 각 부호화기중 초단의 부호화기에는 상기 각 부호화단의 출력벡터 인덱스중 부호길이가 짧은 벡터인덱스와 윗자리에 0부호를 필요개 부가하여 부호길이를 맞춘 의사출력벡터 인덱스와 중복하지 않는 초기의사출력벡터 인덱스가 입력되고 있는 동시에 상기 각단의 부호화기가 보유하는 벡터 코드테이블은 상기 의사출력벡터 인덱스와 상기 초기의사출력벡터 인덱스를 맞추어 구성하였으므로 각단 출력벡터 코드테이블을 구성하는 기억내용을 공통화 할수 있으며 기억내용을 적게할 수 있다.This search process is consistent with the route in FIG. As described above, according to this embodiment, the encoder of the first stage of each encoder adds a vector index having a shorter code length among the output vector indices of each encoder and a pseudo-output vector index whose code length is adjusted by adding zero code to the upper position. The vector code table held by the encoder of each stage is inputted while the initial pseudo output vector index, which is not duplicated, is constructed by matching the pseudo output vector index with the initial pseudo output vector index. It can make common and reduce the contents of memory.
제3실시예의 설명에 앞서 그 전제기술에 관하여 제13도를 참고로 하여 기술한다. 제13도에 있어서 제1도-제12도와 동일부호는 동일 혹은 상단부분을 표시한다.Prior to the description of the third embodiment, the premise will be described with reference to FIG. In FIG. 13, the same reference numerals as in FIGS. 1 to 12 denote the same or upper portions.
sg1은 화상신호, 6은 감산기, 3은 프레임메모리, 511은 송신버퍼, 7은 평균치분리정규화 벡터양자화부호화기, sg2는 양자화출력, 517은 가변길이부호화기, sg3는 부호화출력, 9는 평균치 분리정규화벡터 양자화복호화기, 522는 래스터(Raster)/블록 주사변환부, 523은 화상신호블록, 524는 예비신호블록, 525는 예측오차신호블록, 526은 재생예측오차 신호블록, 527은 재생화상신호블록, sg4는 귀환 제어신호이다.s g1 is an image signal, 6 is a subtractor, 3 is a frame memory, 511 is a transmission buffer, 7 is an average separated normalized vector quantizer, s g2 is a quantized output, 517 is a variable-length coder, s g3 is an encoded output, and 9 is an average Separate normalized vector quantization decoder, 522 is a raster / block scan converter, 523 is an image signal block, 524 is a preliminary signal block, 525 is a prediction error signal block, 526 is a prediction error signal block, 527 is a reproduction image The signal block s g4 is a feedback control signal.
다음에 제13도에 표시하는 프레임간 벡터양자화부호화기의 동작에 관하여 설명한다. 화상신호 sg1은 디지털화되어 래스터주사 방향의 순서로 부여되는 신호계열이다.Next, the operation of the inter-frame vector quantization encoder shown in FIG. 13 will be described. The image signal s g1 is a signal sequence which is digitized and given in the order of the raster scanning direction.
래스터/블록주사변환부(522)에서는 화상신호(sg1)을 K개(K는 정수)의 블록으로 구분하여 이 블록을 단위로 하는 순서로 주사변환한다.The raster /
지금 제f프레임에 있어 블록화된 화상신호블록(523)을 신호원 벡터 sf=(S1, S2,…Sk)로 표시하는 것으로 한다. 또한 감산기(6)으로 계산되는 화상신호블록(523)과 예측신호블록(524)의 차분인 예측오차신호블록(525)를 ef평균치분리정규화 벡터양자화 부호화기(7) 및 평균치 분리정규화 벡터양자화복호화기(9)에 의하여 형성되는 재생예측오차신호블록(526)을, 재생화상신호블록(527)을, 프레임메모리(3)에 의하여 1프레임주기의 지연을 받은 재생화상신호블록(527)로서 얻어지는 예측신호블록(524)를 pf로 하면 아래와 같은 식이 성립된다.It is assumed that the
단 Q는 벡터약자화 오차, z-t은 프레임메모리(3)에 의한 1프레임주기의 지연을 표시한다.Q denotes a vector abbreviation error, and z −t denotes a delay of one frame period by the
이것은 기본적으로는 프레임간의 DPCM방식(차분펄스변조방식)이다. 평균치 분리정규화 벡터양자화부호화기(7)의 양자화 출력 sg2는 가변길이 부호화기(517)에서 가변길이 부호화되어서 송신버퍼(511)로 보내져 부호화출력 sg3로서 전송로로 출력된다.This is basically a DPCM method (differential pulse modulation method) between frames. The quantized output s g2 of the mean value separated normalized
송신버퍼(511)은 전송정보량을 감시하며 피드백제어신호 sg4에 의하여 평균치 분리정규화 벡터양자화부호화기(7)에 있어서의 임계치를 제어하여서 부호화 데이터량을 제어한다.The
또 평균치 분리정규화 벡터 양자화부호화에 대하여는 일본인 무라가미도구미찌, 아사이 미쓰다로, 야마사끼 에이소의 제6회 정보이론과 그의 응용연구회 자료(1983년)의 77-82페이지의 "벡터양자화에 의한 화상고능율 부호화"(문헌 1) 및 일본인 무라가미 도구미찌, 아사이 미쓰다로의 일본 텔레비젼 학회발행(1984년) 452-457 페이지의 "화상신호의 벡터양자화기(문헌 2)에 상세한 기술이 되어 있으므로 그 설명은 생략한다.In addition, the average separated normalized vector quantization encoding is Japanese Murakami Togumichi, Asai Mitsuda, Eisen Yamasaki's 6th Information Theory and his applied research paper (1983), pages 77-82. As described in "Performance Coding" (Document 1) and Japanese Television Society published in Japanese Muragami Togumichi and Mitsuda Asai (1984) on pages 452-457, "Vector Quantizer of Image Signals (Document 2)" Description is omitted.
이하 제3실시예에 관하여 설명한다. 이 실시예의 프레임간 벡터 양자화부호화기에 있어서는 화상신호의 프레임간의 차이분인 예측오차 신호계열에 대하여 유효 무효의 판정을 하며 유효화소만을 모아서 블록화하고 평균치 분리정규화 벡터 양자화부호화하도록하여 화상신호에 있어서의 블록상의 잡음을 저감하며 고화질로서 화상전송을 실현하고 있다.A third embodiment will be described below. In the inter-frame vector quantization encoder of this embodiment, the validity of the prediction error signal sequence that is the difference between the frames of the image signal is determined to be invalid. Image noise is reduced and image transmission is realized with high image quality.
이 발명의 일실시예인 프레임간 벡터양자화부호화기를 표시하는 블록구성도이다. 제14도에 있어서 제1도-제12도와 동일부호는 동일 또는 상당부분을 표시한다.Fig. 1 is a block diagram showing an inter-frame vector quantization encoder as one embodiment of the present invention. In Fig. 14, the same reference numerals as in Figs. 1 to 12 denote the same or corresponding parts.
3은 프레임메모리, sg5는 예측신호계열, sg6는 예측오차 신호계열, 560은 래스터화회로, sg7은 재생예측오차 신호계열, sg8는 재생화상 신호계열, 590은 유효/무효 판정회로, 510은 블록화회로, 511은 송신버퍼, sg9는 피드백제어신호, sg10은 유효/무효정보, sg11은 블록신호, 7은 평균치분리 정규화 벡터양자화부호화기, sg2는 양자화 출력, 517은 가변길이부호화기, sg3는 부호화출력, 9는 평균치분리 정규화 벡터양자화복호화기, sg12는 재생블록신호, 10은 자산기이다.3 is a frame memory, s g5 is a prediction signal sequence, s g6 is a prediction error signal sequence, 560 is a rasterization circuit, s g7 is a reproduction prediction error signal sequence, s g8 is a reproduction image signal sequence, and 590 is a valid / invalid decision circuit. , 510 is a block circuit, 511 is a transmission buffer, s g9 is a feedback control signal, s g10 is valid / invalid information, s g11 is a block signal, 7 is a mean separated normalized vector quantization coder, s g2 is a quantization output, and 517 is variable. The length coder, s g3 is the coded output, 9 is the mean separation normalized vector quantized decoder, s g12 is the playback block signal, and 10 is the asset.
다음에 제14도에 표시하는 이 일실시예인 프레임간 벡터 양자화부호화기의 동작에 관하여 설명한다.Next, the operation of the interframe vector quantization encoder as one embodiment shown in FIG. 14 will be described.
지금 제f프레임에 있어서의 레스터주사의 화상신호 sg1을 입력신호계열 Srf로 하고 또한 감산기(6)으로 계산되는 입력신호계열 Srf와 프레임메모리(3)으로부터의 예측신호계열 sg5의 Prf와의 차이분인 예측오차 신호계열 sg6를 erf로 하여 래스터화회로(560)에 의하여 재생된 재생예측오차신호계열 sg7은로 하며 재생화상 신호계열 sg8을로하고 프레임메모리(3)에 의하여 1프레임주기 지연된 재생화상신호계열로서 얻게되는 예측신호계열 sg5를 Prf로 하면 다음같은 식이 성립된다.The difference between the input signal sequence Srf calculated by the
단 Q는 벡터양자화오차, z-t은 프레임메모리(3)에 의한 1프레임주기의 지연을 표시한다. 이것은 기본적으로는 프레임간의 DPCM 방식이다.Q denotes a vector quantization error, and z −t denotes a delay of one frame period by the
이와 같은 프레임간의 DPCM 방식에 있어서 감산기(6)으로 계산된 예측오차 신호계열(5)는 유효/무효 판정회로(590)과 블록화회로(510)에 입력된다. 유효/무효 판정회로(590)에서는 송신버퍼(11)로부터의 피드백제어신호 sg9에 의하여 임계치를 설정하고 유효/무효정보 sg10(예 : 유효는「1」, 무효는「0」)을 출력한다.The prediction
블록화회로(510)은 예측오차 신호계열 sg6와 유효/무효정보 sg10을 받아서 유효로 판정된 화소만을 K개(K는 복수) 종합하여 블록신호 sg11을 x=(x1, x2,…,xk)로 하여 출력한다. 또한 1프레임내의 유효화소수가 K의 배수가 되지않는 경우는 모조데이터 (예 :「0」를 삽입하여 1블록을 형성한다.The blocking
블록신호 sg11을 수신한 평균치분리 정규화 벡터 양자화부호화기(7)은 블록신호 sg11을 평균치·분산 인덱스로 양자화하여 양자화출력 sg2로 한다.The average value-separated normalized
가변길이 부호화기(517)에서는 양자화출력 sg2와 유효/무효정보 sg10과를 가변길이 부호화하는 것이지만 그 일례를 들면 유효/무효정보 sg10은 런렌구스(run length) 부호화하여 양자화출력 sg2는 각각 출현빈도가 많은 데이터에 대하여는 부호길이가 짧은 부호를 할당하고 반대로 빈도가 적은 데이터일수록 긴 부호를 할당하는 방법이 있다.The
이들 부호를 입력한 송신버퍼(511)은 부호를 전송로에 부호화출력 sg3로서 출력함과 동시에 그 정보발생량을 임의의 주기(예 : 프레임단위, 피일드단위)로 집계하여 그에 의한 피드백제어신호 sg12를 유효/무효판정회로(590)으로 출력하여 정보발생량을 제어한다.The
평균치 분리 정규화 벡터양자화복회화기(9)는 평균치, 분산, 인덱스로 양자화한 양자화출력 sg2에 의하여 재생블록신호 20을로서 복호재생한다.The mean separation normalized vector quantization reconstructor (9) receives the reproduction block signal 20 by the quantization output sg2 quantized by the mean, variance, and index. Decode and playback as.
그리고 유효/무효정보 sg10을 받은 래스터화회로(560)에 의하여 재생블록신호 sg12의의 각 성분 가 유효화소에만 할당되어 가며 무효화소에는「0」가 할당되어 재생예측오차신호계열 sg7의가 재생된다. 이 재생예측오차신호계열 sg7의와 프레임메모리(3)로부터의 예측신호계열 sg5의가 가산기(10)에서 가산되어 재생화상신호계열(sg8)의로서 프레임메모리(3)에 기억된다.Then, the
이 실시예는 이상 설명한대로 프레임간 벡터 양자화부호화기에 있어서 화상신호의 프레임간의 차이분인 예측오차신호계열에 대하여 유효, 무효의 판정을 하여 유효화소만을 모아서 블록화하고 평균치분리정규화 벡터양자화부호화하도록 하고 화상신호에 있어서의 블록상의 잡음을 저감시켜 고화질로서의 화상전송이 실현된다.In this embodiment, as described above, in the inter-frame vector quantization encoder, the prediction error signal sequence that is the difference between the frames of the image signal is judged as valid or invalid, and only the effective pixels are collected and blocked, and the average value division normalized vector quantization encoding is performed. By reducing the noise on the block in the signal, image transmission in high quality is realized.
Claims (4)
Applications Claiming Priority (15)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60-5453 | 1985-01-16 | ||
JP60005453A JPS61164389A (en) | 1985-01-16 | 1985-01-16 | Picture coding device |
JP60042905A JPS61201522A (en) | 1985-03-05 | 1985-03-05 | Vector quantizing coder |
JP60-42905 | 1985-03-05 | ||
JP60-104505 | 1985-05-16 | ||
JP60104505A JPS61262378A (en) | 1985-05-16 | 1985-05-16 | Vector quantization device |
JP60127258A JPS61287389A (en) | 1985-06-13 | 1985-06-13 | Picture encoder |
JP60-127258 | 1985-06-13 | ||
JP60156307A JPS6218190A (en) | 1985-07-16 | 1985-07-16 | Picture coding device |
JP60-156308 | 1985-07-16 | ||
JP60-156307 | 1985-07-16 | ||
JP60196207A JPS6257384A (en) | 1985-09-05 | 1985-09-05 | Picture encoder |
JP60-196207 | 1985-09-05 | ||
JP60-255990 | 1985-11-15 | ||
JP60255990A JPS62116087A (en) | 1985-11-15 | 1985-11-15 | Animation picture transmitter |
Publications (1)
Publication Number | Publication Date |
---|---|
KR900008456B1 true KR900008456B1 (en) | 1990-11-22 |
Family
ID=27563309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019900009292A KR900008456B1 (en) | 1985-01-16 | 1990-06-22 | Video encoding apparatus |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR900008456B1 (en) |
-
1990
- 1990-06-22 KR KR1019900009292A patent/KR900008456B1/en not_active IP Right Cessation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100411525B1 (en) | Apparatus and Method of coding image | |
JP3406546B2 (en) | Decoding method for continuous images | |
US6639945B2 (en) | Method and apparatus for implementing motion detection in video compression | |
KR930004311B1 (en) | Encoding/decoding system utilizing local properties | |
US5228098A (en) | Adaptive spatio-temporal compression/decompression of video image signals | |
US4809067A (en) | Method and apparatus for encoding transmitting and receiving image by pulse code modulation | |
KR20030096443A (en) | Encoding method and encoding apparatus and decoding method and decoding apparatus | |
US8705615B1 (en) | System for generating controllable difference measurements in a video processor | |
JPH08340553A (en) | Video signal encoding device | |
US5631849A (en) | Decompressor and compressor for simultaneously decompressing and compressng a plurality of pixels in a pixel array in a digital image differential pulse code modulation (DPCM) system | |
US8218644B1 (en) | System for compressing and de-compressing data used in video processing | |
US5654762A (en) | Block matching for picture motion estimation using gray codes | |
KR900008456B1 (en) | Video encoding apparatus | |
JPH05103212A (en) | Data transmission equipment | |
AU606816B2 (en) | Method for encoding/transmitting images | |
Brunello et al. | Lossless video coding using optimal 3D prediction | |
KR0126662B1 (en) | Moving-image signal encoding apparatus | |
JPS6326951B2 (en) | ||
JPH0748859B2 (en) | Predictive coding method for television signals | |
JP2934603B2 (en) | Method and apparatus for decoding variable length code | |
JPS6359187A (en) | Highly efficient encoder | |
JP4139657B2 (en) | Video signal encoding apparatus and decoding apparatus | |
JPH0569354B2 (en) | ||
JPH0936749A (en) | Coding decoding device and coding method used for it | |
JP2518215B2 (en) | High efficiency encoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 19961112 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |