KR100901173B1 - 동화상 부호화 장치, 동화상 부호화 방법 및 동화상 부호화 프로그램 기록 매체 - Google Patents

동화상 부호화 장치, 동화상 부호화 방법 및 동화상 부호화 프로그램 기록 매체 Download PDF

Info

Publication number
KR100901173B1
KR100901173B1 KR1020037000253A KR20037000253A KR100901173B1 KR 100901173 B1 KR100901173 B1 KR 100901173B1 KR 1020037000253 A KR1020037000253 A KR 1020037000253A KR 20037000253 A KR20037000253 A KR 20037000253A KR 100901173 B1 KR100901173 B1 KR 100901173B1
Authority
KR
South Korea
Prior art keywords
image data
motion vector
data
frame
frame image
Prior art date
Application number
KR1020037000253A
Other languages
English (en)
Other versions
KR20030018042A (ko
Inventor
나구모다케후미
야스다히로유키
미쓰하시사토시
안도유지
고지마다카시
즈위옌
Original Assignee
소니 가부시끼 가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니 가부시끼 가이샤 filed Critical 소니 가부시끼 가이샤
Publication of KR20030018042A publication Critical patent/KR20030018042A/ko
Application granted granted Critical
Publication of KR100901173B1 publication Critical patent/KR100901173B1/ko

Links

Images

Classifications

    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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
    • 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/172Methods 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 picture, frame or field
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

압축 부호화 수단에서 동화상 데이터를 프레임 화상 데이터 단위로 압축 부호화하여 버퍼에 일단 축적하면서 프레임 레이트 변경 수단에서 버퍼의 데이터 축적량에 따라 프레임 레이트를 변경함으로써, 단위 시간에 압축 부호화하는 프레임 화상 데이터의 수를 동화상의 그림의 변화에 따라서 적절하게 변경하여 압축률을 안정시키고, 동화상의 화질을 안정화할 수 있고, 소망의 화질의 동화상을 적절하게 제공할 수 있다.
또한 추적 수단이 동화상 데이터의 프레임 화상 데이터에 대하여 검출된 간이 움직임 벡터를 이용하여 프레임 화상 데이터 내에서 추출 화상 데이터를 추적하고, 상층 움직임 벡터 검출 수단이 간이 움직임 벡터를 공유하여 프레임 화상 데이터의 움직임 벡터를 검출하고, 압축 부호화 수단이 추적 결과에 기초하여 추출 화상 데이터를 추출하고 움직임 벡터를 이용하여 압축 부호화함으로써, 움직임 벡터 검출 시의 연산량을 현저하게 감소시켜 추출 화상 데이터의 압축 부호화 처리를 고속화할 수 있다.
동화상, 프레임 화상, 압축 부호화 수단, 버퍼, 프레임 레이트 변경 수단, 움직임 벡터 검출 수단, 솎아내기, 하층 움직임 벡터 검출 수단, 상층 움직임 벡터 검출 수단, 마스크 화상 데이터 생성 수단.

Description

동화상 부호화 장치, 동화상 부호화 방법 및 동화상 부호화 프로그램 기록 매체{MOVING PICTURE ENCODING APPARATUS, MOVING PICTURE ENCODING METHOD AND MOVING PICTURE ENCODING PROGRAM STORAGE MEDIUM}
본 발명은 동화상 부호화 장치에 관한 것으로서, 예로서 인터넷을 이용하여 동화상 데이터를 송신할 때에 상기 동화상 데이터를 압축 부호화하는 동화상 부호화 장치에 적용하기에 적합한 것이다.
근래에, 인터넷을 이용한 동화상 데이터의 송신 방법으로서, 비디오 카메라 등으로 피사체를 촬영하면서 얻어지는 동화상 데이터를 인터넷을 거쳐 유저의 개인용 컴퓨터 등에 송신하여 상기 동화상 데이터에 기초하는 동화상을 실시간으로 보도록 한 소위 스트리밍이라고 지칭되는 송신 방법이 보급되기 시작하였다.
이러한 스트리밍에 의한 송신 방법에 있어서, 인터넷의 데이터 전송속도가 비교적 낮기 때문에 송신측에 예로서 MPEG2(Moving Picture Experts Group phase 2)라고 지칭되는 압축 부호화 방식을 적용한 동화상 부호화 장치가 설치되어 있다.
여기에서, MPEG2 방식은 ISO/IEC JTC1/SC2/WG11(International Organization for Standardization/International Electro-technical Commission Joint Technical Committee/Sub Committee 2/Working Group 11) 등의 기관에 의해 표준화되고, 움직임 보상 예측 부호화와 이산 코사인 변환(DCT: Discrete Cosine Transform)을 조합한 하이브리드 부호화 방식을 채용하여 규격화되고 있다.
그런데, 이 MPEG2 방식에서는 I(Intra) 픽쳐라고 지칭되는 프레임내 부호화 화상(인트라 부호화 화상)과, P(Predictive) 픽쳐라고 지칭되는 프레임간 순방향 예측 부호화 화상과, B(Bidrectionally predictive) 픽쳐라고 지칭되는 쌍방향 예측 부호화 화상의 3개의 종류의 픽쳐 타입이 규정되어 있고, 이러한 I 픽쳐, P 픽쳐 및 B 픽쳐 중 어느 것을 동화상 데이터를 구성하는 프레임 화상 데이터에 순차적으로 소정의 순서로 할당하여 압축 부호화하도록 규정되어 있다.
실제로 이 MPEG2 방식에서는 프레임내 부호화, 순방향 예측 부호화, 역방향 예측 부호화 및 쌍방향 예측 부호화의 4개의 종류의 예측 모드가 규정되어 있고, I 픽쳐를 할당한 프레임 화상에 대해서는 16 화소 x 16 라인의 매크로 블록이라고 지칭되는 단위로 프레임내 부호화에 의해 압축 부호화하고, P 픽쳐를 할당한 프레임 화상에 대해서는 매크로 블록 단위로 프레임내 부호화 또는 순방향 예측 부호화의 어느 것에 의해 압축 부호화하고, 더욱이 B 픽쳐를 할당한 프레임 화상에 대해서는 매크로 블록 단위로 프레임내 부호화, 순방향 예측 부호화, 역방향 예측 부호화 및 쌍방향 예측 부호화의 어느 것에 의해 압축 부호화하도록 규정되어 있다.
그런데, 도 26에 도시되듯이, MPEG2 방식이 적용된 동화상 부호화 장치(1)에 있어서는, 외부로부터 공급되는 동화상 데이터를 프레임 화상 데이터 단위로 복수의 프레임분의 기록 용량을 가진 입력용 프레임 메모리(2)에 입력하고, 상기 입력용 프레임 메모리(2)에 입력된 프레임 화상 데이터에 I 픽쳐, P 픽쳐 및 B 픽쳐 중 어느 것을 소정의 순서로 할당함과 동시에, 그 입력용 프레임 메모리(2)에 상기 할당한 I 픽쳐, P픽쳐 및 B 픽쳐를 표시하는 픽쳐 타입 정보를 프레임 화상 데이터에 대응하여 부착하여 기록한다.
여기에서, 연산기(3)는 입력용 프레임 메모리(2) 내에서 I 픽쳐가 할당된 프레임 화상 데이터(이하, 이것을 제1 프레임 화상 데이터라고 지칭한다)에 대해서는 순차적으로 매크로 블록 단위의 데이터(이하, 이것을 제1 매크로 블록 데이터라고 지칭한다)로 하여 판독한다.
또한, 움직임 벡터 검출기(4)는 연산기(3)에 의해 입력용 프레임 메모리(2)로부터 제1 매크로 블록 데이터가 판독될 때마다 상기 제1 매크로 블록 데이터에 대응하는 픽쳐 타입 정보(즉, I 픽쳐를 표시한다)를 판독하고, 그 픽쳐 타입 정보에 기초하여 제1 매크로 블록 데이터를 프레임내 부호화에 의해 압축 부호화하는 것을 표시하는 예측 모드 데이터를 생성하여 이것을 움직임 보상기(5) 및 가변길이 부호화기(6)에 송출한다.
이것에 의해 움직임 보상기(5)는 움직임 벡터 검출기(4)로부터 주어진 예측 모드 데이터(프레임내 부호화를 표시한다)에 기초하여 대응하는 제1 매크로 블록 데이터에 대한 움직임 보상 처리를 정지한다.
따라서, 연산기(3)는 입력용 프레임 메모리(2)로부터 제1 매크로 블록 데이터를 판독하면, 이 때 움직임 보상기(5)로부터는 어떠한 데이터도 주어지지 않으므로 상기 제1 매크로 블록 데이터를 그대로 이산 코사인 변환기(7)로 송출한다.
이산 코사인 변환기(7)는 연산기(3)로부터 주어진 제1 매크로 블록 데이터를 이산 코사인 변환하고, 얻어진 이산 코사인 변환 계수를 양자화기(8)에 송출한다.
양자화기(8)는 출력단에 설치된 버퍼(9)에 있는 부호화 데이터의 축적량(이 하, 이것을 데이터 축적량이라고 지칭한다)을 소정 주기로 검출하고, 상기 검출된 데이터 축적량에 따라서 양자화 스텝을 선정한다.
이것에 의해 양자화기(8)는 이산 코사인 변환기(7)로부터 주어진 이산 코사인 변환 계수를 대응하는 양자화 스텝에 기초하여 양자화하고, 얻어진 양자화 계수를 그 양자화 스텝과 함께 가변길이 부호화기(6) 및 역양자화기(10)로 송출한다.
가변길이 부호화기(6)는 양자화기(8)로부터 주어진 양자화 계수를 허프만 부호 등에 의해 가변길이 부호화(VLC: Variable Length Code)함과 동시에 상기 양자화기(8)로부터 주어진 양자화 스텝 및 움직임 벡터 검출기(4)로부터 주어진 예측 모드 데이터도 가변길이 부호화하고, 얻어진 부호화 데이터를 버퍼(9)를 거쳐 외부로 출력한다.
이렇게 하여 동화상 부호화 장치(1)에서는 입력용 프레임 메모리(2) 내의 제1 프레임 화상 데이터를 순차적으로 제1 매크로 블록 데이터 단위로 프레임내 부호화에 의해 압축 부호화하고, 얻어진 부호화 데이터를 외부로 출력한다.
또한, 역양자화기(10)는 양자화기(8)로부터 주어진 양자화 계수를 같은 방식으로 양자화기(8)로부터 주어진 양자화 스텝에 기초하여 역양자화하고, 얻어진 이산 코사인 변화 계수를 역이산 코사인 변환기(11)로 송출한다.
역이산 코사인 변환기(11)는 역양자화기(10)로부터 주어진 이산 코사인 변환 계수를 역이산 코사인 변환(IDCT: Inverse Discrete Cosine transform)하고, 얻어진 제1 매크로 블록 데이터 가산기(12)로 송출한다.
가산기(12)는 역이산 코사인 변환기(11)로부터 제1 매크로 블록 데이터가 주 어지면, 이 때 움직임 보상기(5)로부터는 어떠한 데이터도 주어지지 않기 때문에 상기 제1 매크로 블록 데이터를 그대로 복수의 프레임 분의 기록 용량을 가진 참조용 프레임 메모리(13)로 송출하여 격납하고, 이렇게 하여 참조용 프레임 메모리(13) 내에 제1 프레임 화상 데이터를 재구축한다.
한편, 가산기(3)는 입력용 프레임 메모리(2)내에 P 픽쳐가 할당된 프레임 화상 데이터(이하, 이것을 제2 프레임 화상 데이터라고 지칭한다)에 대하여는 순차적으로 매크로 블록 단위의 데이터(이하, 이것을 제2 매크로 블록 데이터라고 지칭한다)로서 판독한다.
이 경우에, 움직임 벡터 검출기(4)는 연산기(3)에 의해 입력용 프레임 메모리(2)로부터 제2 매크로 블록 데이터가 판독될 때마다 상기 입력용 프레임 메모리(2)로부터 동일한 제2 매크로 블록 데이터와 이것에 대응하는 픽쳐 타입 정보(즉, P 픽쳐를 표시한다)를 판독함과 동시에, 그 픽쳐 타입 정보에 기초하여 제2 매크로 블록 데이터보다 순방향측(시간적으로 과거)의 제1 또는 제2 프레임 화상 데이터를 순방향 예측의 참조용으로서 판독한다.
그리고, 움직임 벡터 검출기(4)는 블록 매칭법에 의해 참조용의 제1 또는 제2 프레임 화상 데이터 내에서 제2 매크로 블록 데이터를 복수의 비교용 블록 데이터와 순차적으로 대응하여 부착하면서 상기 제2 매크로 블록 데이터 내의 각 화소의 화소치와 비교용 블록 데이터의 각각 대응하는 화소의 화소치의 차분의 절대치의 총합(이하, 이것을 예측 오차라고 지칭한다)을 산출한다.
이렇게 하여 움직임 벡터 검출기(4)는 제2 매크로 블록 데이터와 각 비교용 블록 데이터 간에서 순차적으로 산출된 예측 오차 중 가장 값이 작은 예측 오차(이하, 이것을 특히 최소 예측 오차라고 지칭한다)를 선정하는 동시에, 그 최소 예측 오차를 산출한 때에 사용된 비교용 블록 데이터(이하, 이것을 순방향 근사 블록 데이터라고 지칭한다)를 제2 매크로 블록 데이터와 가장 일치하는 것으로서 검출하고, 상기 검출된 순방향 근사 블록 데이터와 제2 매크로 블록 데이터의 움직임 양에 의해 상기 제2 매크로 블록 데이터의 순방향 움직임 벡터를 검출한다.
이에 더하여 움직임 벡터 검출기(4)는 제2 매크로 블록 데이터 내의 각 화소의 화소치의 평균치를 산출한 후에 그 산출된 평균치와 각 화소치의 차분의 절대치의 총합(이하, 이것을 분산치라고 지칭한다)을 산출하고, 상기 산출된 분산치를 최소 예측 오차와 비교한다.
그 결과, 움직임 벡터 검출기(4)는 분산치가 최소 예측 오차보다 작으면, 제2 매크로 블록 데이터에 대하여 각 화소의 분산(화소치의 분산)이 작기 때문에 상기 제2 매크로 블록 데이터를 그대로 압축 부호화하여도 부호화 데이터의 데이터 양(이하, 이것을 부호화 데이터 양이라고 지칭한다)을 비교적 작게 하여 얻는다고 판단하고, 그 제2 매크로 블록 데이터를 프레임내 부호화에 의해 압축 부호화하는 것을 나타내는 예측 모드 데이터를 생성하여 이것을 움직임 보상기(5) 및 가변길이 부호화기(6)에 송출한다.
이에 대하여 움직임 벡터 검출기(4)는 분산치가 최소 예측 오차보다 크면, 제2 매크로 블록 데이터에 대하여 각 화소의 분산(화소치의 흩어짐)이 크기 때문에 상기 제2 매크로 블록 데이터를 순방향 예측 부호화에 의해 압축 부호화하지 않으 면 부호화 데이터 양을 작게 하기 어렵다고 판단하고, 그 제2 매크로 블록 데이터를 순방향 예측 부호화에 의해 압축 부호화하는 것을 나타내는 예측 모드 데이터를 생성하여 이것을 상기 제2 매크로 블록 데이터의 움직임 벡터와 함께 움직임 보상기(5) 및 가변길이 부호화기(6)로 송출한다.
이것에 의해 움직임 보상기(5)는 움직임 벡터 검출기(4)로부터 제2 매크로 블록 데이터에 대하여 프레임내 부호화를 나타내는 예측 모드 데이터가 주어지면, 상기 제2 매크로 블록 데이터에 대한 움직임 보상 처리를 정지한다.
또한, 움직임 보상기(5)는 움직임 벡터 검출기(4)로부터 제2 매크로 블록 데이터에 대한 움직임 벡터와, 순방향 예측 부호화를 나타내는 예측 모드 데이터가 주어지면, 움직임 보상 처리를 실행하고 참조용 프레임 메모리(13)로부터 제2 매크로 블록 데이터보다 순방향측(시간적으로 과거)의 제1 또는 제2 프레임 화상 데이터를 참조용으로 판독한다.
그리고, 움직임 보상기(5)는 그 제1 또는 제2 프레임 화상 데이터 내로부터 움직임 벡터에 기초하여 제2 매크로 블록 데이터와 가장 일치하는 연산용 블록 데이터를 추출하여 이것을 연산기(3) 및 가산기(12)로 송출한다.
연산기(3)는 입력용 프레임 메모리(2)로부터 판독한 제2 매크로 블록 데이터에 대하여 예측 모드로서 프레임내 부호화가 선택된 때에는, 움직임 보상기(5)로부터 연산용 블록 데이터가 주어지지 않으므로 상기 제2 매크로 블록 데이터를 그대로 이산 코사인 변환기(7)로 송출한다.
이것에 의해 화상 부호화 장치(1)에서는 제2 매크로 블록 데이터에 대한 예 측 모드로서 프레임내 부호화가 선택된 때에는 이산 코사인 변환기(7), 양자화기(8), 가변길이 부호화기(6), 버퍼(9), 역양자화기(10), 역이산 코사인 변환기(11), 가산기(12) 및 참조용 프레임 메모리(13)를 각각 상술한 제1 매크로 블록 데이터를 압축 부호화할 때와 같은 방식으로 동작시킨다.
이렇게 하여 동화상 부호화 장치(1)에서는 제2 매크로 블록 데이터를 양자화 스텝 및 예측 모드 데이터와 함께 가변길이 부호화하고, 얻어진 부호화 데이터를 외부로 출력함과 동시에, 압축한 제2 매크로 블록 데이터를 복호화하여 참조용 프레임 메모리(13)에 격납한다.
또한 연산기(3)는 입력용 프레임 메모리(2)로부터 판독한 제2 매크로 블록 데이터에 대한 예측 모드로서 순방향 예측 부호화가 선택된 때에는 움직임 보상기(5)로부터 주어진 연산용 블록 데이터를 상기 제2 매크로 블록 데이터로부터 감산하고, 얻어진 차분 데이터를 이산 코사인 변환기(7)로 송출한다.
이 경우, 이산 코사인 변환기(7)는 연산기(3)로부터 주어진 차분 데이터를 이산 코사인 변환하고, 얻어진 이산 코사인 변환 계수를 양자화기(8)로 송출한다.
또한, 양자화기(8)는 그 이산 코사인 변환계수를 상술한 제1 매크로 블록 데이터를 처리한 때와 같은 방식으로 선정한 대응하는 양자화 스텝에 기초하여 양자화하고, 얻어진 양자화 계수를 그 양자화 스텝과 함께 가변길이 부호화기(6) 및 역양자화기(10)로 송출한다.
그리고, 가변길이 부호화기(6)는 그 양자화 계수를 허프만 부호 등에 의해 가변길이 부호화하는 동시에, 대응하는 양자화 스텝 및 예측 모드 데이터(순방향 예측 부호화를 나타낸다) 및 움직임 벡터도 가변길이 부호화하고, 이렇게 행서 얻어진 부호화 데이터를 버퍼(9)를 거쳐 외부로 출력한다.
이 때에, 역양자화기(10)는 양자화기(8)로부터 주어진 양자화 계수를 같은 방식으로 양자화기(8)로부터 주어진 양자화 스텝에 기초하여 역양자화하고, 얻어진 이산 코사인 변환 계수를 역이산 코사인 변환기(11)로 송출한다.
또한, 역이산 코사인 변환기(11)는 역양자화기(10)로부터 주어진 이산 코사인 변환계수를 역이산 코사인 변환하고, 얻어진 차분 데이터를 가산기(12)로 송출한다.
가산기(12)는 역이산 코사인 변환기(11)로부터 주어진 차분 데이터를 이 때에 움직임 보상기(5)로부터 주어진 연산용 블록 데이터와 가산하고, 얻어진 제2 매크로 블록 데이터를 참조용 프레임 메모리(13)로 송출하여 격납한다.
이렇게 하여 동화상 부호화 장치(1)에서는 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터 단위로 압축 부호화한 때에도 참조용 프레임 메모리(13) 내에 그 제2 프레임 화상 데이터를 재구축한다.
이에 더하여, 연산기(3)는 입력용 프레임 메모리(2) 내에서 B 픽쳐가 할당된 프레임 화상 데이터(이하, 이것을 제3 프레임 화상 데이터라고 지칭한다)에 대해서는 순차적으로 매크로 블록 단위의 데이터(이하, 이것을 제3 매크로 블록 데이터라고 지칭한다)로서 판독한다.
이 경우에, 움직임 벡터 검출기(4)는 연산기(3)에 의해 입력용 프레임 메모리(2)로부터 제3 매크로 블록 데이터가 판독될 때마다 상기 입력용 프레임 메모리(2)로부터 동일한 제3 매크로 블록 데이터와 이것에 대응하는 픽쳐 타입 정보(즉, B 픽쳐를 나타낸다)를 판독함과 동시에, 그 픽쳐 타입 정보에 기초하여 제3 매크로 블록 데이터보다 순방향측(시간적으로 과거)의 제1 또는 제2 프레임 화상 데이터 및 역방향측(시간적으로 미래)의 제1 또는 제2 프레임 화상 데이터를 순방향 예측, 역방향 예측 및 쌍방향 예측의 참조용으로서 판독한다.
그리고, 움직임 벡터 검출기(4)는 상술한 제2 매크로 블록 데이터의 때와 같이 블록 매칭법에 의해 순방향측의 제1 또는 제2 프레임 화상 데이터 내에서 최소 예측 오차(이하, 이것을 특히 순방향 최소 예측 오차라고 지칭한다)로 되는 순방향 근사 블록 데이터를 검출하여 제3 매크로 블록 데이터에 대한 순방향 움직임 벡터를 검출한다.
마찬기지로 움직임 벡터 검출기(4)는 블록 매칭법에 의해 역방향측의 제1 또는 제2 프레임 화상 데이터 내에서 최소 예측 오차(이하, 이것을 특히 역방향 최소 예측 오차라고 지칭한다)로 되는 비교용 블록 데이터(이하, 이것을 역방향 근사 블록 데이터라고 지칭한다)를 검출하여 제3 매크로 블록 데이터에 대한 역방향 움직임 벡터를 검출한다.
더욱이, 움직임 벡터 검출기(4)는 이렇게 검출한 순방향 근사 블록 데이터 및 역방향 근사 데이터를 평균화하여 평균 근사 블록 데이터를 생성하고, 상기 생성된 평균 근사 블록 데이터와 제3 매크로 블록 데이터의 예측 오차(이하, 이것을 쌍방향 예측 오차라고 지칭한다)를 산출한다.
이것에 의해 움직임 벡터 검출기(4)는 순방향 최소 예측 오차, 역방향 최소 예측 오차 및 쌍방향 예측 오차 중 가장 값이 작은 하나의 순방향 최소 예측 오차, 역방향 최소 예측 오차 또는 쌍방향 예측 오차를 선정하는 동시에, 제 3 매크로 블록 데이터에 대하여도 상술한 제2 매크로 블록 데이터의 때와 같이 분산치를 산출하고, 상기 산출된 분산치를 그 선정한 하나의 순방향 최소 예측 오차, 역방향 최소 예측 오차 또는 쌍방향 예측 오차(이하, 이것을 특히 선정 예측 오차라고 지칭한다)와 비교한다.
그 결과, 움직임 벡터 검출기(4)는 분산치가 선정 예측 오차보다 작으면, 제 3 매크로 블록 데이터에 대하여 각 화소의 분산(흩어짐)이 작기 때문에 상기 제3 매크로 블록 데이터를 그대로 압축 부호화하여도 부호화 데이터 양을 비교적 작게 할 수 있다고 판단하고, 그 제3 매크로 블록 데이터를 프레임내 부호화에 의해 압축 부호화하는 것을 나타내는 예측 모드 데이터를 생성하여 이것을 움직임 보상기(5) 및 가변길이 부호화기(6)로 송출한다.
이에 대하여 움직임 벡터 검출기(4)는 분산치가 선정 예측 오차보다 크면, 제3 매크로 블록 데이터에 대하여 각 화소의 분산(흩어짐)이 크기 때문에 상기 제3 매크로 블록 데이터를 프레임내 부호화 이외의 예측 모드로 압축 부호화하지 않으면 부호화 데이터 양을 작게 하기 어렵다고 판단한다.
이 때에, 움직임 벡터 검출기(4)는 선정 예측 오차가 순방향 최소 예측 오차이면, 제3 매크로 블록 데이터를 순방향 예측 부호화에 의해 압축 부호화하는 것을 나타내는 예측 모드 데이터를 생성하여 이것을 상기 제3 매크로 블록 데이터의 순방향 움직임 벡터와 함께 움직임 보상기(5) 및 가변길이 부호화기(6)로 송출한다.
또한, 움직임 벡터 검출기(4)는 그 선정 예측 오차가 역방향 최소 예측 오차이면, 제3 매크로 블록 데이터를 역방향 예측 부호화에 의해 압축 부호화하는 것을 나타내는 예측 모드 데이터를 생성하여 이것을 상기 제3 매크로 블록 데이터의 역방향의 움직임 벡터와 함께 움직임 보상기(5) 및 가변길이 부호화기(6)로 송출한다.
더욱이, 움직임 벡터 검출기(4)는 그 선정 예측 오차가 쌍방향 예측 오차이면, 제3 매크로 블록 데이터를 쌍방향 예측 부호화에 의해 압축 부호화하는 것을 나타내는 예측 모드 데이터를 생성하여 이것을 상기 제3 매크로 블록 데이터의 순방향 및 역방향의 양쪽의 움직임 벡터와 함께 움직임 보상기(5) 및 가변길이 부호화기(6)로 송출한다.
움직임 보상기(5)는 움직임 벡터 검출기(4)로부터 제3 매크로 블록 데이터에 대하여 프레임내 부호화를 나타내는 예측 모드 데이터가 주어지면, 상기 제3 매크로 블록 데이터에 대한 움직임 보상 처리를 정지한다.
또한, 움직임 보상기(5)는 움직임 벡터 검출기(4)로부터 제3 매크로 블록 데이터에 대한 순방향의 움직임 벡터와, 순방향 예측 부호화를 나타내는 예측 모드 데이터가 주어지면, 움직임 보상 처리를 실행하여 참조용 프레임 메모리(13)로부터 제3 매크로 블록 데이터보다 순방향측(시간적으로 과거)의 제1 또는 제2 프레임 화상 데이터를 참조용으로서 판독하고, 상기 판독된 제1 또는 제2 프레임 화상 데이터 내로부터 그 순방향의 움직임 벡터에 기초하여 제3 매크로 블록 데이터와 가장 일치하는 연산용 블록 데이터를 추출하여 이것을 연산기(3) 및 가산기(12)로 송출 한다.
더욱이, 움직임 보상기(5)는 움직임 벡터 검출기(4)로부터 제3 매크로 블록 데이터에 대한 역방향의 움직임 벡터와, 역방향 예측 부호화를 나타내는 예측 모드 데이터가 주어지면, 이때에도 움직임 보상 처리를 실행하여 참조용 프레임 메모리(13)로부터 제 3 매크로 블록 데이터보다 역방향측(시간적으로 미래)의 제1 또는 제2 프레임 화상 데이터를 참조용으로서 판독하고, 상기 판독된 제1 또는 제2 프레임 데이터와 가장 일치하는 연산용 블록 데이터를 추출하여 이것을 연산기(3) 및 가산기(12)로 송출한다.
이에 더하여 움직임 보상기(5)는 움직임 벡터 검출기(4)로부터 제3 매크로 블록 데이터에 대한 순방향 및 역방향의 양쪽의 움직임 벡터와, 쌍방향 예측 부호화를 나타내는 예측 모드 데이터가 주어진 때에도 움직임 보상 처리를 실행하여 참조용 프레임 메모리(13)로부터 제3 매크로 블록 데이터보다 순방향측(시간적으로 미래)의 제1 또는 제2 프레임 화상 데이터를 참조용으로서 판독한다.
그리고, 움직임 보상기(5)는 순방향측의 제1 또는 제2 프레임 화상 데이터 내로부터 순방향의 움직임 벡터에 기초하여 제3 매크로 블록 데이터와 가장 일치하는 연산용 블록 데이터를 추출하는 동시에, 역방향의 제1 또는 제2 프레임 화상 데이터 내로부터 역방향의 움직임 벡터에 기초하여 제3 매크로 블록 데이터와 가장 일치하는 연산용 블록 데이터를 추출하고, 이러한 추출된 2개의 연산용 블록 데이터를 평균화하여 연산용 평균 블록 데이터를 생성하여 이것을 연산기(3) 및 가산기(12)로 송출한다.
가산기(3)는 입력용 프레임 메모리(2)로부터 판독한 제3 매크로 블록 데이터에 대한 예측 모드로서 프레임내 부호화가 선택된 때에는 움직임 보상기(5)로부터는 어떠한 데이터도 주어지지 않으므로 상기 제3 매크로 블록 데이터를 그대로 이산 코사인 변환기(7)로 송출한다.
이것에 의해 동화상 부호화 장치(1)에서는, 제3 매크로 블록 데이터에 대한 예측 모드로서 프레임내 부호화가 선택된 때에는 이산 코사인 변환기(7), 양자화기(8), 가변길이 부호화기(6), 버퍼(9), 역양자화기(10), 역이산 코사인 변환기(11), 가산기(12) 및 참조용 프레임 메모리(13)를 각각 상술한 제1 매크로 블록 데이터를 압축 부호화할 때와 같이 동작시키고, 이렇게 하여 제3 매크로 블록 데이터를 양자화 스텝 및 예측 모드 데이터와 함께 가변길이 부호화하고, 얻어진 부호화 데이터를 외부로 출력함과 동시에 압축한 제3 매크로 블록 데이터를 복호화화여 참조용 프레임 메모리(13)에 격납한다.
또한, 연산기(3)는 입력용 프레임 메모리(2)로부터 판독한 제3 매크로 블록 데이터에 대한 예측 모드로서 순방향 예측 부호화, 역방향 예측 부호화 및 쌍방향 예측 부호화가 선택된 때에는 움직임 보상기(5)로부터 주어진 연산용 블록 데이터 또는 연산용 평균 블록 데이터를 상기 제3 매크로 블록 데이터로부터 감산하고 얻어진 차분 데이터를 이산 코사인 변환기(7)로 송출한다.
이 경우, 이산 코사인 변환기(7)는 연산기(3)로부터 주어진 차분 데이터를 이산 코사인 변환하고, 얻어진 이산 코사인 변환 계수를 양자화기(8)로 송출한다.
양자화기(8)는 그 이산 코사인 변환계수를 상술한 제1 매크로 블록 데이터를 처리한 때와 같이 선정된 대응하는 양자화 스텝에 기초하여 양자화하고, 얻어진 양자화 계수를 그 양자화 스텝과 함께 가변길이 부호화기(6) 및 역양자화기(10)로 송출한다.
그리고, 가변길이 부호화기(6)는 양자화 계수의 근원이 되는 제3 매크로 블록 데이터의 예측 모드로서 순방향 예측 부호화가 선정된 때에는 상기 양자화 계수를 허프만 부호 등에 의해 가변길이 부호화하는 동시에 대응하는 양자화 스텝, 예측 모드 데이터(순방향 예측 부호화를 나타낸다), 순방향의 움직임 벡터도 가변길이 부호화하고, 얻어진 부호화 데이터를 버퍼(9)를 거쳐 외부로 출력한다.
또한, 가변길이 부호화기(6)는 양자화 계수의 근원이 되는 제3 매크로 블록 데이터에 대한 예측 모드로서 역방향 예측 부호화가 선정된 때에는 상기 양자화 계수를 허프만 부호 등에 의해 가변길이 부호화하는 동시에 대응하는 양자화 스텝 및 예측 모드 데이터(역방향 예측 부호화를 나타낸다) 및 역방향의 움직임 벡터도 가변길이 부호화하고, 이렇게 하여 얻어진 부호화 데이터를 버퍼(9)를 거쳐 외부로 출력한다.
더욱이, 가변길이 부호화기(6)는 양자화 계수의 근원이 되는 제3 매크로 블록 데이터의 예측 모드로서 쌍방향 예측 부호화가 선정된 때에는 상기 양자화 계수를 허프만 부호 등에 의해 가변길이 부호화하는 동시에 대응하는 양자화 스텝, 예측 모드 데이터(쌍방향 예측 부호화를 나타낸다), 순방향 및 역방향의 양쪽의 움직임 벡터도 가변길이 부호화하고, 얻어진 부호화 데이터를 버퍼(9)를 거쳐 외부로 출력한다.
이 때, 역양자화기(10)는 양자화기(8)로부터 주어진 양자화 계수를 같은 방식으로 양자화기(8)로부터 주어진 양자화 스텝에 기초하여 역양자화하고, 얻어진 이산 코사인 변환계수를 역이산 코사인 변환기(11)로 송출한다.
또한, 역이산 코사인 변환기(11)는 역양자화기(10)로부터 주어진 이산 코사인 변환계수를 역이산 코사인 변환하고, 얻어진 차분 데이터를 가산기(12)로 송출한다.
그리고, 가산기(12)는 역이산 코사인 변환기(11)로부터 주어진 차분 데이터를 이 때 움직임 보상기(5)로부터 주어진 연산용 블록 데이터 또는 연산용 평균 블록 데이터와 가산하고, 얻어진 제3 매크로 블록 데이터를 참조용 프레임 메모리(13)로 송출하여 격납한다.
이렇게 하여 동화상 부호화 장치(1)에서는 제3 프레임 화상 데이터를 순차적으로 제3 매크로 블록 데이터 단위로 압축 부호화한 때에도 참조용 프레임 메모리(13) 내에 제3 프레임 화상 데이터를 재구축한다.
이렇게 하여 동화상 부호화 장치(1)에서는 동화상 데이터를 순차적으로 프레임 화상 데이터 단위로 I 픽쳐, P 픽쳐, 상기 I 픽쳐 및 P 픽쳐 사이 또는 2개의 P 픽쳐 사이에 위치하는 B 픽쳐의 순서를 반복하여 압축 부호화하고, 얻어진 부호화 데이터를 외부로 출력하도록 된다.
그런데 이러한 동화상 부호화 장치(1)를 이용한 동화상 데이터의 송신에서는 인터넷의 데이터 전송 속도에 맞추어 동화상 부호화 장치(1)에 의해 동화상 데이터를 비교적 높은 압축률로 압축 부호화하는 만큼 유저에 제공하는 동화상의 화질(노 이즈 등의 유무를 나타내는 비율)이 열화하고 있어, 송신하는 동화상에 대하여 고화질의 요구가 높아지기 시작하고 있다.
따라서, 이러한 동화상 데이터의 송신에 있어서는 동화상 부호화 장치(1)에 공급하는 동화상 데이터로부터 미리 프레임 화상 데이터를 소정 간격으로 솎아내어(decimation) 프레임 레이트(frame rate)(즉, 동화상에서의 단위 시간당 프레임 화상수)를 변경한 후에 압축 부호화하는 방법이 제안되어 있다.
이러한 방법에 의하면, 동화상 데이터의 프레임 레이트를 낮추어 단위 시간당 압축 부호화할 프레임 화상 데이터의 수를 작게 하는 만큼 나머지 프레임 화상 데이터를 순차적으로 비교적 낮은 압축률로 압축 부호화할 수 있고, 이것에 의해 유저에 제공하는 동화상을 고화질화할 수 있다고 생각된다.
그러나, 이 방법에 의하면, 동화상의 그림의 변화에 상관없이 동화상 데이터로부터 단순히 소정 간격으로 프레임 화상 데이터를 솎아내는 것에 의해, 그 솎아냄에 의해 남은 프레임 화상 데이터 간에서 동화상의 그림이 현저히 변화한 때에는 이에 따라 압축률이 변화하고, 그 결과, 유저에게 제공하는 동화상의 화질이 변동하는 문제가 있다.
또한, 이러한 동화상 데이터의 송신에서는 동화상 부호화 장치(1)에 의해 동화상 데이터의 연속하는 프레임 화상 데이터 내로부터 임의의 형상의 화상의 데이터를 순차적으로 추적하면서 추출하고, 상기 추출된 화상의 데이터(이하, 이것을 추출 화상 데이터라고 지칭한다)를 압축 부호화하는 방법이 제안되어 있다.
이러한 방법에 의하면, 동화상 데이터로부터 연속하는 추출 화상 데이터를 추출하여 압축 부호화할 데이터의 데이터 양을 감소시키는 만큼 상기 연속하는 추출화상 데이터를 순차적으로 비교적 낮은 압축률로 압축 부호화할 수 있고, 그 결과, 유저에게 동화상의 일부인 연속하는 추출화상을 고화질화하여 제공할 수 있다고 생각된다.
그러나, 이 방법에서는 프레임 화상 데이터마다 각 매크로 블록 데이터의 움직임 벡터를 검출하고, 상기 검출된 움직임 벡터를 이용하여 순차적으로 프레임 화상 데이터로부터 임의의 형상의 추출 화상 데이터를 추적하고 있다.
또한, 이 방법에서는 프레임 화상 데이터마다 각 매크로 블록 데이터의 움직임 벡터를 검출하고, 상기 검출된 움직임 벡터를 추출 화상 데이터의 추적 결과를 이용하여 순차적으로 프레임 화상 데이터로부터 추출된 추출 화상 데이터와 함께 압축 부호화하고 있다.
따라서, 이 방법에서는 이러한 추출 화상 데이터의 추적 및 압축 부호화에 대하여 각각 개별적으로 매크로 블록 데이터의 움직임 벡터를 검출함으로써 상기 움직임 벡터를 검출하기 위한 연산량이 대폭적으로 증가하고, 이 결과, 추출 화상 데이터에 대한 압축 부호화 처리에 많은 처리 시간이 필요하다는 문제가 있다.
본 발명은 이상의 점을 고려하여 이루어진 것으로서, 소망의 화질의 동화상을 적절히 제공할 수 있는 동화상 부호화 장치를 제안하고자 하는 것이다.
이러한 과제를 해결하기 위해 본 발명에서는 압축 부호화 수단에 의해 동화상 데이터를 순차적으로 프레임 화상 데이터 단위로 압축 부호화하고, 얻어진 부호 화 데이터를 버퍼에 일단 축적하여 출력하면서, 프레임 레이트 변경 수단에 의해 상기 버퍼의 데이터 축적량에 따라서 동화상 데이터의 프레임 레이트를 변경하도록 하였다.
따라서, 동화상 데이터에 기초하는 동화상의 그림의 변화에 따라서 단위 시간당 압축 부호화할 프레임 화상 데이터의 수를 적절히 변경하여 압축률을 안정시키고, 그 결과, 동화상의 화질을 안정시킬 수 있고, 이렇게 하여 소망의 화질의 동화상을 정확하게 제공할 수 있다.
또한, 본 발명은 이상의 점을 고려하여 이루어진 것으로서, 임의의 형상의 추출 화상 데이터에 해한 압축 부호화 처리를 고속화할 수 있는 동화상 부호화 장치를 제안하고자 하는 것이다.
이러한 과제를 해결하기 위해서 본 발명에서는 하층 움직임 벡터 검출 수단에 의해 소정 계층보다 하부 계층에서 동화상 데이터가 연속하는 프레임 화상 데이터 간의 간이 움직임 벡터를 검출하고, 추적 수단에 의해 그 간이 움직임 벡터를 이용하여 동화상 데이터의 연속하는 프레임 화상 데이터 내에서 임의의 형상의 추출 화상 데이터를 추적하고, 상층 움직임 벡터 검출 수단에서도 소정 계층 이상의 상부 계층에서 그 간이 움직임 벡터를 공유하고 이를 이용하여 동화상 데이터의 연속하는 프레임 화상 데이터 간의 원화상(原畵像) 레벨의 움직임 벡터를 검출하고, 압축 부호화 수단에 의해 추출 화상 데이터의 추적 결과에 기초하여 동화상 데이터의 연속하는 프레임 화상 데이터로부터 순차적으로 추출 화상 데이터를 추출하면서 상기 추출된 추출 화상 데이터를 움직임 벡터를 이용한 움직임 보상 예측 부호화에 의해 압축 부호화하도록 하였다.
따라서, 추출 화상 데이터의 추적용 및 상기 추출 화상 데이터의 압축 부호화용으로 각각 개별적으로 움직임 벡터를 검출하는 경우에 비하여 움직임 벡터 검출 시의 연산량을 현격하게 감소시킬 수 있고, 이렇게 하여 임의의 형상의 추출 화상 데이터에 대한 압축 부호화 처리를 고속화할 수 있다.
도 1은 동화상 데이터 송신 시스템에서 동화상 데이터의 송신 형태를 도시하는 개념도이다.
도 2는 본 발명에 의한 동화상 부호화 장치의 회로 구성의 제1 실시예를 도시하는 블록도이다.
도 3은 동화상 데이터의 프레임 화상 데이터에 할당된 픽쳐 타입의 설명을 위한 개념도이다.
도 4는 동화상 데이터의 압축 부호화의 설명을 위한 개념도이다.
도 5는 동화상 데이터의 프레임 레이트의 변경의 설명을 위한 개념도이다.
도 6은 동화상 데이터의 압축 부호화 처리 순서를 도시하는 흐름도이다.
도 7은 동화상 데이터의 압축 부호화 처리 순서를 도시하는 흐름도이다.
도 8은 동화상 데이터의 프레임 화상 데이터에 할당된 I 픽쳐, P 픽쳐 및 B 픽쳐를 도시하는 개념도이다.
도 9는 동화상 데이터의 프레임 레이트를 변경한 때의 움직임 벡터의 재검출의 설명을 위한 개념도이다.
도 10은 제2 실시예에 의한 동화상 부호화 장치의 회로 구성을 도시하는 블록도이다.
도 11은 계층 매크로 블록 데이터 및 계층 프레임 화상 데이터의 생성의 설명을 위한 개념도이다.
도 12는 계층 탐색 움직임 벡터 검출 방식의 설명을 위한 개념도이다.
도 13은 동화상 데이터의 압축 부호화 처리 순서를 도시하는 흐름도이다.
도 14는 동화상 데이터의 압축 부호화 처리 순서를 도시하는 흐름도이다.
도 15는 제3 실시예에 의한 동화상 부호화 장치의 회로 구성을 도시하는 블록도이다.
도 16은 프레임 화상에 대한 추출 화상의 초기 위치 및 임의의 형상의 지정에 대한 설명을 위한 개념도이다.
도 17은 프레임 화상 간에서 추출 화상의 추적의 설명을 위한 개념도이다.
도 18은 마스크 화상의 구성을 도시하는 개념도이다.
도 19는 마스크 화상 데이터를 이용한 제2 매크로 블록 데이터의 판별의 설명을 위한 개념도이다.
도 20은 에지 부분에 관한 제2 매크로 블록 데이터의 움직임 벡터의 검출의 설명을 위한 개념도이다.
도 21은 동화상 데이터의 압축 부호화 처리 순서를 도시하는 흐름도이다.
도 22는 동화상 데이터의 압축 부호화 처리 순서를 도시하는 흐름도이다.
도 23은 동화상 데이터의 압축 부호화 처리 순서를 도시하는 흐름도이다.
도 24는 동화상 데이터의 압축 부호화 처리 순서를 도시하는 흐름도이다.
도 25는 프레임 화상에 대한 추출 화상의 임의의 형상의 특정 방법의 설명을 위한 개념도이다.
도 26은 종래의 동화상 부호화 장치의 회로 구성을 도시하는 블록도이다.
이하, 도면을 참조하여 본 발명의 한 실시예를 상세히 설명한다.
(1) 동화상 데이터 송신 시스템에서 동화상 데이터의 송신 형태
도 1에 도시되듯이, 동화상 데이터 송신 시스템(20)에서는 송신측에 ISO/IEC(International Organization for Standardization/International Electrotechnical Commission) 등의 기관에 의해 규격화된 MPEG4(Moving Picture Experts Group phase 4)라고 지칭되는 압축 부호화 방식을 적용한 동화상 부호화 장치(21)가 설치되어 있다.
이 MPEG4 방식에서는 MPEG2 방식과 거의 같은 동화상 데이터를 순차적으로 프레임 화상 데이터 단위로 압축 부호화하도록 규정됨과 동시에 이것에 추가하여 동화상 데이터의 프레임 레이트(즉, 동화상에서 단위 시간당 프레임 화상수)를 변경할 수 있도록 규정되어 있다.
또한, 이 MPRG4 방식에서는 동화상의 연속하는 프레임 화상으로부터 임의의 형상의 화상을 추적하면서 추출하고, 상기 추출된 화상(이하, 이것을 추출 화상이라고 지칭한다)의 데이터(이하, 이것을 추출 화상 데이터라고 지칭한다)를 순차적으로 압축 부호화할 수 있도록 규정되어 있다.
따라서, 이 동화상 데이터 송신 시스템(20)에서는 송신측에서 비디오 카메라(22)를 이용하여 피사체를 촬영하여 얻어진 동화상 데이터를 동화상 부호화 장치(21)에 입력하고, 상기 동화상 부호화 장치(21)에서 그 동화상 데이터를 프레임 레이트를 적절하게 변경하면서 압축 부호화하고, 또는 상기 프레임 레이트를 적절하게 변경하면서 동화상 데이터로부터 추출 화상 데이터를 추출하여 압축 부호화하고, 얻어진 부호화 비트 스트림을 네트워크 송신 장치(23)로부터 인터넷(24)을 거쳐 수신측의 개인용 컴퓨터(25)로 송신한다.
개인용 컴퓨터(25)는 네트워크 송신 장치(23)로부터 인터넷(24)을 거쳐 송신된 부호화 비트 스트림을 수신하면, 상기 수신된 부호화 비트 스트림을 복호화하여 표시부로 송출함으로써 상기 표시부에 프레임 레이트를 변경한 동화상 또는 상기 프레임 레이트를 변경한 동화상 내의 추출 화상을 표시한다.
이렇게 하여 동화상 데이터 송신 시스템(20)에서 프레임 레이트를 적절히 변경하면서 동화상 데이터를 송신하고, 또는 상기 프레임 레이트를 적절히 변경한 동화상 데이터로부터 추출 화상 데이터를 추출하여 송신함으로써 개인용 컴퓨터(25)를 거쳐 유저에게 고화질화된 동화상 또는 같은 방식으로 고화질화된 추출 화상을 보여줄 수 있게 된다.
(2) 제1 실시예
도 2에서 도면부호 30은 전체로서 제1 실시예에 의한 동화상 부호화 장치를 나타내고, 피사체(도시되지 않음)를 촬영하고 있는 외부의 비디오 카메라(도시되지 않음)로부터 공급되는 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터 단위로 프레임 레이트 변경 처리부(31)에 설치된 복수 프레임 분의 기억 용량을 가진 입력용 프레임 메모리(32)에 입력한다.
이 경우, 프레임 레이트 변경 처리부(31)의 프레임 구조 변환기(33)는 도 3에 도시하듯이 입력용 프레임 메모리(32)에 프레임 화상 데이터를 입력할 때마다 상기 입력된 프레임 화상 데이터에 예로서 I 픽쳐 및 P 픽쳐의 픽쳐 타입을 하나의 I 픽쳐와 소정수의 P 픽쳐가 순차적으로 교대로 연속하는 순서로 할당함과 동시에, 그 I 픽쳐 및 P 픽쳐를 나타내는 픽쳐 타입과 이것을 할당한 프레임 화상 데이터 고유의 프레임 식별 정보를 픽쳐 정보로서 입력용 프레임 메모리(32)에 기억한다.
움직임 벡터 검출 처리부(34)의 움직임 벡터 검출기(35)는 입력용 프레임 메모리(32) 내에서 프레임 화상 데이터에 I 픽쳐가 할당된 때에는 상기 I 픽쳐가 할당된 프레임 화상 데이터(이하, 이것을 제1 프레임 화상 데이터라고 지칭한다)의 픽쳐 정보를 판독한다.
그리고, 움직임 벡터 검출기(35)는 그 픽쳐 정보에 기초하여 제1 프레임 화상 데이터의 프레임 식별 정보를 부호화 대상 프레임 식별 정보로서 표시하고, 또한 상기 제1 프레임 화상 데이터를 순차적으로 매크로 블록 단위의 데이터(이하, 이것을 제1 매크로 블록 데이터라고 지칭한다)(D2)로 하여 프레임내 부호화에 의해 압축 부호화한 것을 나타내는 예측 모드 데이터(D3)을 생성하고, 상기 생성된 예측 모드 데이터(D3)를 움직임 벡터 버퍼(36)로 송출하여 축적한다.
또한, 움직임 벡터 검출기(35)는 입력용 프레임 메모리(32) 내에서 프레임 화상 데이터에 P 픽쳐가 할당된 때에는 상기 P 픽쳐가 할당된 프레임 화상 데이터( 이하, 이것을 제2 프레임 화상 데이터라고 지칭한다)의 픽쳐 정보를 판독한다.
그리고, 움직임 벡터 검출기(35)는 그 픽쳐 정보에 기초하여 대응하는 제2 프레임 화상 데이터의 프레임 식별 정보를 부호화 대상 프레임 식별 정보로서 표시하고, 또한 상기 제2 프레임 화상 데이터를 순차적으로 매크로 블록 단위의 데이터(이하, 이것을 제2 매크로 블록 데이터라고 지칭한다)(D4)로 하여 순방향 예측 부호화에 의해 압축 부호화하는 것을 표시하는 예측 모드 데이터(D5)를 생성한다.
이것에 더하여 움직임 벡터 검출기(35)는 이 때 입력용 프레임 메모리(32)로부터 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4) 단위로 판독함과 동시에, 상기 제2 프레임 화상 데이터와 순방향측(시간적으로 과거)에 인접하는 제1 또는 제2 프레임 화상 데이터(D6)를 참조용으로서 판독한다.
그리고, 움직임 벡터 검출기(35)는 블록 매칭법에 의해 제2 매크로 블록 데이터(D4)를 참조용의 제1 또는 제2 프레임 화상 데이터(D6)의 소정의 탐색 범위 내에서 복수의 비교용 블록 데이터와 순차적으로 대응 부착하면서, 상기 제2 매크로 블록 데이터(D4)내의 각 화소의 화소치와 비교용 블록 데이터의 각각 대응하는 화소의 화소치의 차분의 절대치의 총합(이하, 이것을 예측 오차라고 지칭한다)을 산출한다.
이것에 의해 움직임 벡터 검출기(35)는 제2 매크로 블록 데이터(D4)와 각 비교용 블록 데이터 간에서 순차적으로 산출된 예측 오차 중 가장 값이 작은 예측 오차(이하, 이것을 특히 최소 예측 오차라고 지칭한다)를 선정한다.
움직임 벡터 검출기(35)는 그 최소 예측 오차를 산출한 때에 이용한 비교용 블록 데이터(D4)와 가장 일치하는 것으로서 검출하고, 상기 검출된 근사 블록 데이터와 제2 매크로 블록 데이터(D4)의 움직임 양에 의해 그 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)를 검출한다.
이렇게 하여 움직임 벡터 검출기(35)는 입력용 프레임 메모리(32) 내의 제2 프레임 화상 데이터에 대하여 예측 모드 데이터(D5)를 생성하는 동시에, 상기 제2 프레임 화상 데이터 내에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)를 검출하면, 이것을 예측 모드 데이터(D5) 및 각 움직임 벡터(D7)를 대응하여 부착하여 움직임 벡터 버퍼(36)로 송출하여 축적한다.
이렇게 하여 움직임 벡터 검출기(35)는 입력용 프레임 메모리(32)로 프레임 화상 데이터가 순차적으로 입력된 I 픽쳐 및 P 픽쳐가 할당되면 그 때마다 같은 방식으로 하여 예측 모드 데이터(D3, D5)를 생성함과 동시에, 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)를 검출하여 이것을 움직임 벡터 버퍼(36)에 송출하여 축적한다.
압축 부호화부(37)는 움직임 벡터 검출기(35)에 의해 입력용 프레임 메모리(32) 내의 선두의 제1 프레임 화상 데이터로부터 순차적으로 소정 프레임 수만큼의 프레임 화상 데이터에 대한 예측 모드 데이터(D3, D5)가 생성됨과 동시에 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)가 검출되면 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화를 개시한다.
실제로, 압축 부호화부(37)에서 제1 및 제2 프레임 화상 데이터의 압축 부호 화를 개시하면, 연산기(38)는 입력용 프레임 메모리(32)로부터 선두의 제1 프레임 화상 데이터를 순차적으로 제1 매크로 블록 데이터(D2) 단위로 판독한다.
움직임 보상기(39)는 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화를 개시하면, 움직임 벡터 버퍼(36)로부터 예측 모드 데이터(D3)와 예측 모드 데이터(D5) 및 움직임 벡터(D7)를 상기 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화의 순서에 따라서 판독을 개시하고, 연산기(38)에 의해 입력용 프레임 메모리(32)로부터 제1 매크로 블록 데이터(D2)가 판독된 때에는 움직임 벡터 버퍼(36)로부터 판독한 대응하는 예측 모드 데이터(D3)(프레임내 부호화를 나타낸다)에 기초하여 상기 제1 매크로 블록 데이터(D2)에 대한 움직임 보상 처리를 정지한다.
따라서, 연산기(38)는 입력용 프레임 메모리(32)로부터 제1 매크로 블록 데이터(D2)를 판독하면 이 때 움직임 보상기(39)로부터는 어떠한 데이터도 주어지지 않으므로 상기 제1 매크로 블록 데이터(D2)를 그대로 이산 코사인 변환기(40)로 송출한다.
이산 코사인 변환기(40)는 연산기(38)로부터 주어진 제1 매크로 블록 데이터(D2)를 이산 코사인 변환하고, 얻어진 이산 코사인 변환 계수(K1)를 양자화기(41)로 송출한다.
양자화기(41)는 출력단에 설치된 버퍼(42)에서 부호화 데이터의 축적량(이하, 이것을 데이터 축적량이라고 지칭한다)(DR)을 소정주기로 검출하고, 상기 검출된 데이터 축적량(DR)에 따라서 양자화 스텝(ST)를 선정한다.
이것에 의해 양자화기(41)는 이산 코사인 변환기(40)로부터 주어진 이산 코사인 변환계수(K1)를 대응하는 양자화 스텝(ST)에 기초하여 양자화하고, 얻어진 양자화 계수(K2)를 그 양자화에 이용한 양자화 스텝(ST)과 함께 가변길이 부호화기(43) 및 역양자화기(44)로 송출한다.
가변길이 부호화기(43)는 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화를 개시하면 움직임 벡터 버퍼(36)로부터 예측 모드 데이터(D3)와 예측 모드 데이터(D5) 및 움직임 벡터(D7)를 상기 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화의 순서에 따라서 판독을 개시하고 있고, 양자화기(41)로부터 주어진 양자화 계수(K2)를 허프만 부호 등에 의해 가변길이 부호화하는 동시에 상기 양자화기(41)로부터 주어진 양자화 스텝(ST) 및 움직임 벡터 버퍼(36)로부터 판독한 대응하는 예측 모드 데이터(D3)를 가변길이 부호화하고, 얻어진 부호화 데이터(D10)를 버퍼(42)에 일단 축적하여 부호화 데이터량을 평활화한 부호화 비트 스트림(BS1)으로서 외부로 출력한다.
이렇게 하여 동화상 부호화 장치(30)에서는 입력용 프레임 메모리(32) 내의 제1 프레임 화상 데이터를 순차적으로 제1 매크로 블록 데이터(D2) 단위로 프레임내 부호화에 의해 압축 부호화할 수 있도록 되어 있다.
또한, 역양자화기(44)는 양자화기(41)로부터 주어진 양자화 계수(K2)를 같은 방식으로 양자화기(41)로부터 주어진 양자화 스텝(ST)에 기초하여 역양자화하고, 얻어진 이산 코사인 변환계수(K3)를 역이산 코사인 변환기(45)로 송출한다.
역이산 코사인 변환기(450는 역양자화기(44)로부터 주어진 이산 코사인 변환 계수(K3)를 역이산 코사인 변환하고, 얻어진 제1 매크로 블록 데이터(D11)를 가산기(46)로 송출한다.
가산기(46)는 역이산 코사인 변환기(45)로부터 제1 매크로 블록 데이터(D11)가 주어지면 이 때 움직임 보상기(39)로부터는 어떠한 데이터도 주어지지 않으므로 상기 제1 매크로 블록 데이터(D11)를 그대로 복수 프레임분의 기억용량을 가진 참조용 프레임 메모리(47)로 송출하여 격납한다.
이렇게 하여 가산기(46)는 제1 프레임 화상 데이터의 압축 부호화에 의해 역이산 코사인 변환기(45)로부터 제1 매크로 블록 데이터(D11)가 순차적으로 주어질 때마다 상기 제1 매크로 블록 데이터(D11)를 그대로 참조용 프레임 메모리(47)로 송출하여 격납하여 참조용 프레임 메모리(47) 내에 이 제1 매크로 블록 데이터(D11)에 의해 움직임 보상 처리의 참조용으로 되는 제1 프레임 화상 데이터를 재구축한다.
또한, 연산기(38)는 입력용 프레임 메모리(32)로부터 제1 프레임 화상 데이터 내의 모든 제1 매크로 블록 데이터(D2)를 판독하면 상기 입력용 프레임 메모리(32) 내의 제2 프레임 화상 데이터를 부호화 대상 데이터로서 순차적으로 제2 매크로 블록 데이터(D4) 단위로 판독한다.
이 때 움직임 보상기(39)는 움직임 벡터 버퍼(36)로부터 판독한 대응하는 예측 모드 데이터(D5)(순방향 예측 부호화를 표시한다)에 기초하여 보상 처리를 실행하여 참조용 프레임 메모리(47)로부터 이 시점에 부호화 대상이 되어 있는 제1 프레임 화상 데이터와 순방향측(시간적으로 과거)에 인접하는 제1 또는 제2 프레임 화상 데이터를 참조용으로서 판독한다.
그리고, 움직임 보상기(39)는 움직임 벡터 버퍼(36)로부터 주어진 대응하는 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)에 기초하여 참조용의 제1 또는 제2 프레임 화상 데이터 내로부터 상기 제2 매크로 블록 데이터(D4)와 가장 일치하는 연산용 블록 데이터(D12)를 추출하여 이것을 연산기(38) 및 가산기(46)로 송출한다.
따라서, 연산기(38)는 입력용 프레임 메모리(32)로부터 제2 매크로 블록 데이터(D4)를 판독하면 이때 움직임 보상기(39)로부터 주어진 연산용 매크로 블록 데이터(D12)를 상기 제2 매크로 블록 데이터(D4)로부터 주어진 연산용 매크로 블록 데이터(D13)를 이산 코사인 변환기(40)로 송출한다.
이 경우, 이산 코사인 변환기(40)는 연산기(38)로부터 주어진 차분 데이터(D13)를 이산 코사인 변환하고, 얻어진 이산 코사인 변환 계수(K4)를 양자화기(41)로 송출한다.
또한, 양자화기(41)는 이산 코사인 변환기(40)로부터 주어진 이산 코사인 변환계수(K4)를 상술한 제1 매크로 블록 데이터를 처리한 때와 같이 선정한 대응하는 양자화 스텝(ST)에 기초하여 양자화하고, 얻어진 양자화 계수(K5)를 그 양자화 스텝(ST)과 함께 가변길이 부호화기(43) 및 역양자화기(44)로 송출한다.
이것에 의해 가변길이 부호화기(43)는 양자화기(42)로부터 주어진 양자화 계수(K5)를 허프만 부호 등에 의해 가변길이 부호화하는 동시에 상기 양자화기(41)로부터 주어진 양자화 스텝(ST)와 움직임 벡터 버퍼(36)로부터 판독된 대응하는 예측 모드 데이터(D5) 및 움직임 벡터(D7)도 가변길이 부호화하고, 얻어진 부호화 데이터(D14)를 버퍼(42)에 일단 축적하여 부호화 데이터량을 평활화한 부호화 비트 스트림(BS1)으로서 외부로 출력한다.
이렇게 하여 동화상 부호화 장치(30)에서는 입력용 프레임 메모리(32) 내의 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4) 단위로 순방향 예측 부호화에 의해 압축 부호화할 수 있도록 되어 있다.
이때, 역양자화기(44)는 양자화기(41)로부터 주어진 양자화 계수(K5)를 같은 방식으로 양자화기(41)로부터 주어진 양자화 스텝(ST)에 기초하여 역양자화하고, 얻어진 이산 코사인 변환 계수(K6)를 역이산 코사인 변환기(45)로 송출한다.
또한, 역이산 코사인 변환기(45)는 역양자화기(44)로부터 주어진 이산 코사인 변환계수(K6)를 역이산 코사인 변환하고, 얻어진 차분 데이터(D15)를 가산기(46)로 송출한다.
가산기(46)는 역이산 코사인 변환기(45)로부터 차분 데이터(D15)가 주어지면 이 때 움직임 보상기(39)로부터 연산용 블록 데이터(D13)가 주어져 있으므로 상기 차분 데이터(D15)와 연산용 블록 데이터(D13)를 가산하고, 얻어진 제2 매크로 블록 데이터(D16)를 참조용 프레임 메모리(47)로 송출하여 격납한다.
이렇게 하여 가산기(46)는 제2 프레임 화상 데이터의 압축 부호화에 의해 역이산 코사인 변환기(45)로부터 차분 데이터(D15)가 주어진 때마다 상기 차분 데이터(D15)와 이것에 대응하는 연산용 블록 데이터(D13)를 가산하여 제2 매크로 블록 데이터(D16)를 생성하고, 상기 생성된 제2 매크로 블록 데이터(D16)를 참조용 프레 임 메모리(47)로 송출하여 격납하여 그 참조용 프레임 메모리(47) 내에 이 제2 매크로 블록 데이터(D16)에 의해 움직임 보상 처리의 참조용으로 되는 제2 프레임 화상 데이터를 재구축한다.
이렇게 하여 동화상 부호화 장치(30)에서는 도 4에 도시되듯이 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터 단위로 I 픽쳐에 대해서는 프레임내 예측 부호화에 의해 압축 부호화하는 동시에, P 픽쳐에 대해서는 시간적으로 1개의 프레임만큼 과거의 I 픽쳐 또는 P 픽쳐를 이용한 순방향 예측 부호화에 의해 압축 부호화하고, 얻어진 부호화 비트 스트림(BS1)을 외부로 출력할 수 있도록 되어 있다.
이러한 구성에 추가하여, 이 동화상 부호화 장치(30)(도 2)의 경우, 움직임 벡터 검출기(35)는 1개의 프레임만큼의 각 제2 매크로 블록 데이터(D4)에 대한 움직임 벡터(D7)를 검출할 때마다 이 각 제2 매크로 블록 데이터(D4)를 참조용의 제1 또는 제2 프레임 화상 데이터(D6) 간에서 산출한 예측 오차를 이용하고, 부호화 대상의 제2 프레임 화상 데이터의 각 화소의 화소치와 참조용의 제1 또는 제2 프레임 화상 데이터(D6)의 대응하는 화소의 화소치의 차분의 절대치의 총합{이하, 이것을 프레임간 상관치(相關値)라고 지칭한다}(SH1)을 산출하고, 상기 산출된 프레임간 상관치(SH1)를 프레임 구조 변환기(33)로 송출한다.
이것에 의해 프레임 구조 변환기(33)는 움직임 벡터 검출기(35)로부터 주어진 프레임간 상관치(SH1)에 기초하여 부호화 대상의 제1 및 제2 프레임 화상 데이터를 각각 수신측에서 동화상이 소망의 화질이 되도록 선정된 압축률(이하, 이것을 선정 압축률이라고 지칭한다)로 압축 부호화한 경우 얻어지는 부호화 데이터(D10 및 D14)의 데이터양(이하, 이것을 부호화 예측 데이터양이라고 지칭한다)을 예측한다.
그리고, 프레임 구조 변환기(33)는 부호화 대상의 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화를 개시하면 버퍼(42)에서 데이터 축적량(DR)을 예로서 1 프레임만큼의 제1 및 제2 프레임 화상 데이터를 압축 부호화할 때마다 소정주기로 검출하는 동시에 상기 검출된 데이터 축적량(DR)을 미리 설정된 소정의 제1 임계치 및 상기 제1 임계치보다 작은 제2 임계치와 비교한다.
그 결과, 프레임 구조 변환기(33)는 데이터 축적량(DR)이 제1 임계치로부터 제2 임계치까지의 범위 내의 값이면, 상기 데이터 축적량(DR)을 검출한 시점에서 압축 부호화하고 있는 제1 또는 제2 프레임 화상 데이터에 이어서 부호화 대상이 되는 제1 또는 제2 프레임 화상 데이터를 거의 선정 압축률로 압축 부호화할 수 있다고 판단하고, 동화상 데이터(D1)의 프레임 레이트를 그대로 변경하지 않도록 한다.
이에 대하여 프레임 구조 변환기(33)는 데이터 축적량(DR)이 제1 임계치보다 큰 때에는 상기 데이터 축적량(DR)을 검출한 시점에서 압축 부호화하고 있는 제1 또는 제2 프레임 화상 데이터에 이어서 부호화 대상이 되는 제1 또는 제2 프레임 화상 데이터를 선정 압축률보다 높은 압축률로 압축 부호화하여 부호화 데이터량을 감소시키지 않으면 버퍼(42)가 오버플로(overflow) 함과 동시에 압축률의 변경에 따라서 수신측에서의 동화상의 화질이 저하한다고 판단한다.
이때, 프레임 구종 변환기(33)는 이 시점에서 압축 부호화하고 있는 제1 또 는 제2 프레임 화상 데이터에 이어서 부호화 대상이 되는 소정 프레임 수만큼의 제1 및 제2 프레임 화상 데이터에 대한 부호화 예측 데이터량과 버퍼(42)로부터 출력되는 부호화 비트 스트림(BS1)의 비트 레이트에 기초하여 상기 소정 레이트 수만큼의 제1 및 제2 프레임 화상 데이터를 선정 압축률로 압축 부호화할 때의 데이터 축적량(DR)을 추정한다.
그리고, 프레임 구조 변환기(33)는 그 추정된 데이터 축적량(DR)과 제1 및 제2 임계치에 기초하여 소정 프레임 수만큼의 제1 및 제2 프레임 화상 데이터로부터 1개 또는 복수의 제2 프레임 화상 데이터를 선정하고, 상기 선정된 제2 프레임 화상 데이터를 입력 프레임 메모리(32)내로부터 판독 불가능한 상태로 하여 솎아냄에 의해 동화상 데이터(D1)의 프레임 레이트를 낮추어 변경한다.
따라서, 프레임 구조 변환기(33)는 동화상 데이터(D1)에 기초하여 동화상의 그림이 급격히 변화하는 등 제1 또는 제2 프레임 화상 데이터로부터 얻어지는 부호화 데이터량과 함께 데이터 축적량(DR)이 증가한 때에도 상기 증가한 데이터 축적량(DR)에 기초하여 동화상 데이터(D1)의 프레임 레이트를 낮추어 단위 시간당 압축 부호화할 제1 및 제2 프레임 화상 데이터의 수를 감소시켜 데이터 축적량(DR)이 급격히 증가하는 것을 방지하고, 그 결과, 압축률이 급격히 높게 되는 것을 미연에 방지하여 동화상의 화질이 급격히 열화되는 것을 방지할 수 있도록 되어 있다.
이것에 추가하여 프레임 구조 변환기(33)는 이와 같이 동화상 데이터(D1)의 프레임 레이트를 낮출 때에 소정 프레임 수만큼의 제1 및 제2 프레임 화상 데이터의 부호화 예측 데이터량을 이용하여 상기 동화상 데이터(D1)에 기초하여 동화상에 서 그림이 복수 프레임에 걸쳐 비교적 급격하게 움직이는 때{즉, 연속하는 제1 및 제2 프레임 화상 데이터간의 프레임간 상관치(SH1)가 비교적 낮은 때}에도 미리 단위 시간당 압축 부호화할 제1 및 제2 프레임 화상 데이터의 수를 감소시키는 만큼 압축률이 복수 프레임에 걸쳐 비교적 높게 되는 것을 미연에 방지하여 동화상의 화질이 복수 프레임에 걸쳐 열화되는 것을 방지할 수 있게 된다.
또한 프레임 구조 변환기(33)는 이와 같이 동화상 데이터(D1)의 프레임 레이트를 감소시켜도 버퍼(42)의 데이터 축적량(DR)을 검출하고 있고 상기 검출된 데이터 축적량(DR)이 제2 임계치보다 작은 때에는 부호화 대상의 제1 및 제2 프레임 화상 데이터를 증가시켜 압축 부호화하여도 수신측에서 동화상에 대한 소망의 화질을 유지할 수 있다고 판단한다.
이때, 프레임 구조 변환기(33)는 현시점에서 압축 부호화하고 있는 제1 또는 제2 프레임 화상 데이터에 이어 부호화 대상으로 되는 소정 프레임 수만큼의 제1 및 제2 프레임 화상 데이터(솎아냄에 의해 남은 제1 및 제2 프레임 화상 데이터) 및 상기 소정 프레임 수만큼의 제1 및 제2 프레임 화상 데이터 사이로부터 이미 솎아내어져 있는 제2 프레임 화상 데이터를 선정 압축률로 압축 부호화한 경우의 데이터 축적량(DR)을 추정한다.
그리고, 프레임 구조 변환기(33)는 그 추정한 데이터 축적량(DR)과 제1 및 제2 임계치에 기초하여 소정 프레임 수만큼의 제1 및 제2 프레임 화상 데이터 사이로부터 이미 솎아내어져 있는 제2 프레임 화상 데이터 중 솎아냄을 취소하는 1개 또는 복수의 제2 프레임 화상 데이터를 선정하고, 상기 선정된 제2 프레임 화상 데 이터를 입력 프레임 메모리(32) 내로부터 판독 가능한 상태로 하여 솎아냄을 취소하여 일단은 저하된 프레임 레이트를 미리 규정되어 있는 프레임 레이트를 상회하지 않도록 올려 변경한다.
따라서, 프레임 구조 변환기(33)는 동화상 데이터(D1)에 기초하는 동화상의 그림의 변화가 급격히 감소하는 등 하여 제1 또는 제2 프레임 화상 데이터로부터 얻어지는 부호화 데이터량과 함께 데이터 축적량(DR)이 저하되었을 때라도, 상기 저하된 데이터 축적량(DR)에 따라 동화상 데이터(D1)의 프레임 레이트를 높여 단위 시간당 압축 부호화할 제1 및 제2 프레임 화상 데이터의 수를 증가시킴으로써 데이터 축적량(DR)를 제1 및 제2 임계치의 범위 내에서 증가시킬 수 있어, 이렇게 하여 동화상 데이터(D1)의 프레임 화상 데이터를 필요 이상 솎아내 동화상의 화질이 원하는 화질보다 높아지게 변동하는 것을 방지할 수 있도록 이루어져 있다.
이것에 더하여, 프레임 구조 변환기(33)는, 이와 같이 동화상 데이터(D1)의 프레임 레이트를 높일 때에 소정의 프레임 수만큼의 제1 및 제2 프레임 화상 데이터 및 상기 소정의 프레임 수만큼의 제1 및 제2 프레임 화상 데이터 간에서 이미 솎아내고 있는 제2 프레임 화상 데이터의 부호화 예측 데이터량을 이용함으로써, 상기 동화상 데이터(D1)에 기초하는 동화상에 있어서 그림의 변화가 복수 프레임에 걸쳐 비교적 안정되게 있는 것 같을 때{즉, 연속하는 프레임 화상 데이터 간의 프레임간 상관치(SH1)가 비교적 높을 때}에도, 미리 단위 시간당에 압축 부호화할 제1 및 제2 프레임 화상 데이터의 수를 증가시켜 동화상 데이터(D1)를 복수 프레임 화상 데이터에 걸쳐 필요 이상 솎아내는 것을 방지할 수 있도록 이루어져 있다.
실제상, 프레임 구조 변환기(33)는, 도 5a 내지 도 5c에 도시한 바와 같이, 동화상 데이터(D1)의 프레임 레이트를 내릴 때에는, 제1 프레임 화상 데이터를 남기는 것에 의해 부호화 비트 스트림(BS1)의 복호화 때에 동화상 데이터(D1)를 정확하게 복호화시켜 얻도록 이루어져 있다.
또, 프레임 구조 변환기(33)는 프레임 레이트의 변경에 따라 동화상 데이터(D1)로부터 복수의 프레임 화상 데이터를 솎아낼 때에는, 예를 들면 제2 프레임 화상 데이터를 1 프레임 걸러서 솎아내는 것에 의해 동화상 데이터(D1)에 기초하는 동화상의 연속성이 현저하게 손상되는 것을 방지할 수 있도록 이루어져 있다.
그런데, 동화상 데이터(D1)로부터 제2 프레임 화상 데이터를 솎아내면, 상기 솎아낸 제2 프레임 화상 데이터와 역방향측(시간적으로 미래)에 인접하고 있었던 나머지의 제2 프레임 화상 데이터에 관해서는, 그 솎아낸 제2 프레임 화상 데이터를 참조용으로서 이용하여 각 매크로 블록 데이터(D4)의 움직임 벡터를 검출하고 있는 것에 의해 움직임 벡터의 재검출이 필요하게 된다.
이로 인하여, 프레임 구조 변환기(33)는, 동화상 데이터(D1)의 연속하는 제1 및 제2 프레임 화상 데이터로부터 1 프레임 걸러서 1 또는 복수의 제2 프레임 화상 데이터를 솎아내면, 상기 솎아낸 제2 프레임 화상 데이터(이하, 이것을 특히 솎아냄 프레임 화상 데이터라고 부른다)의 프레임 식별 정보(이하, 이것을 특히 솎아냄 프레임 식별 정보라고 부른다)와, 이 솎아냄에 의해 각 매크로 블록 데이터(D4)의 움직임 벡터의 재검출이 필요하게 되는 제2 프레임 화상 데이터(이하, 이것을 특히 재검출 프레임 화상 데이터라고 부른다)의 프레임 식별 정보(이하, 이것을 특히 재검출 프레임 식별 정보라고 부른다)를 나타내는 동시에, 솎아냄에 의한 움직임 벡터의 재검출이 필요하게 되는 것을 나타내는 움직임 벡터 재검출 플랙(FG1)를 생성하고 이것을 움직임 벡터 재검출기(48)에 송출한다.
이것에 의해 움직임 벡터 재검출기(48)는, 도 5c에 도시한 바와 같이, 프레임 구조 변환기(33)로부터 움직임 벡터 재검출 플랙(FG1)이 부여되면, 입력용 프레임 메모리(32)로부터 상기 움직임 벡터 재검출 플랙(FG1)에 의해서 지정된 재검출 프레임 식별 정보가 나타내는 재검출 프레임 화상 데이터의 픽쳐 정보를 판독함으로써, 상기 판독한 픽쳐 정보에 따라 재검출 프레임 화상 데이터의 프레임 식별 정보를 나타내어, 또한 상기 재검출 프레임 화상 데이터를 순차 제2 매크로 블록 데이터(D4) 단위로 순방향 예측 부호화에 의해 압축 부호화하는 것을 나타내는 예측 모드 데이터(D5)를 생성한다.
또, 움직임 벡터 재검출기(48)는, 이 때 입력용 프레임 메모리(32)로부터 움직임 벡터 재검출 플랙(FG1)에 의해서 지정된 재검출 프레임 식별 정보가 나타내는 재검출 프레임 화상 데이터를 차례로 제2 의 매크로 블록 데이터(D4)단위로 판독하는 동시에, 상기 재검출 프레임 화상 데이터와 솎아냄에 의해 순방향측에서 새로 인접하는 제1 또는 제2 프레임 화상 데이터(D6)를 참조용으로서 판독한다.
그리고, 움직임 벡터 재검출기(48)는 상술한 움직임 벡터 검출기(35)와 같이 블록 매칭법에 의해 제2 매크로 블록 데이터(D4)를 참조용 제1 또는 제2 프레임 화상 데이터(D6)의 소정의 서치 범위 내에서 복수의 비교용 블록 데이터와 순차 대응 시키면서 최소 예측 오차가되는 근사 블록 데이터를 검출하여, 상기 검출한 근사 블록 데이터와 제2 매크로 블록 데이터(D4)와의 움직임 양에 의해 그 제2 매크로 블록 데이터(D4)의 움직임 벡터(D17)를 검출한다.
이렇게 하여 움직임 벡터 재검출기(48)는, 재검출 프레임 화상 데이터에 대하여 예측 모드 데이터(D5)를 생성하는 동시에, 상기 재검출 프레임 화상 데이터 내에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D17)를 검출하면, 이들 예측 모드 데이터(D5) 및 각 움직임 벡터(D17)를 대응시켜 움직임 벡터 버퍼(36)에 송출하여 축적함으로써, 이다음 움직임 벡터 버퍼(36)로부터 이들 예측 모드 데이터(D5) 및 각 움직임 벡터(D17)를 움직임 보상기(39) 및 가변 길이 부호화기(43)에 의해서 판독 가능한 상태로 한다.
이것에 더하여, 움직임 벡터 재검출기(48)는, 움직임 벡터 버퍼(36)에 예측 모드 데이터(D5) 및 각 움직임 벡터(D17)를 축적하면, 움직임 벡터 재검출 플랙(FG)에 의해서 지정된 재검출 프레임 식별 정보 및 솎아냄 프레임 식별 정보에 따라, 움직임 벡터 버퍼(36) 내에서 재검출 프레임 화상 데이터에 대한 재검출 전의 예측 모드 데이터(D5) 및 움직임 벡터(D7)와, 솎아냄 프레임 화상 데이터의 예측 모드 데이터(D5) 및 움직임 벡터(D7)를 판독 불가능한 상태로 한다.
또, 프레임 구조 변환기(33)는, 동화상 데이터(D1)의 프레임 레이트를 높임으로써, 솎아냄 프레임 화상 데이터의 솎아냄을 취소할 때에는, 상기 솎아냄 프레임 화상 데이터의 솎아냄에 의해서 움직임 벡터를 재검출한 재검출 프레임 화상 데이터의 재검출 프레임 식별 정보와, 그 솎아냄을 취소하는 솎아냄 프레임 화상 데 이터의 솎아냄 프레임 식별 정보를 나타내는 동시에 솎아냄의 취소를 나타내는 움직임 벡터 재검출 플랙(FG2)를 생성하여 이것을 움직임 벡터 재검출기(48)에 송출한다.
이것에 의해 움직임 벡터 재검출기(48)는, 프레임 구조 변환기(33)로부터 움직임 벡터 재검출 플랙(FG2)가 부여되면, 상기 움직임 벡터 재검출 플랙(FG2)에 의해서 지정된 재검출 프레임 식별 정보 및 솎아냄 취소 프레임 식별 정보에 따라, 움직임 벡터 버퍼(36) 내에서 재검출 프레임 화상 데이터에 대하여 재검출한 예측 모드 데이터(D5) 및 움직임 벡터(D17)를 판독 불가능한 상태로 하고, 또한 재검출 프레임 화상 데이터에 대한 재검출 앞의 예측 모드 데이터(D5) 및 움직임 벡터(D7)와 솎아냄 프레임 화상 데이터의 예측 모드 데이터(D5) 및 움직임 벡터(D7)를 판독가능한 상태로 한다.
이렇게 하여 움직임 벡터 재검출기(48)는, 동화상 데이터(D1)의 프레임 레이트를 변경했을 때라도 각 제1 및 제2 프레임 화상 데이터를 움직임 벡터(D7, D17)를 이용하여 정확하게 압축 부호화시켜 얻도록 이루어져 있다.
여기에서, 이 동화상 부호화 장치(30)의 프레임 레이트 변경 처리부(31)와 움직임 벡터 검출 처리부(34)와 압축 부호화부(37)에 의한 동화상 데이터(D1)의 압축 부호화 처리 순서에 대해 통합하여 보면, 도 6a 및 도 7a에 도시한 바와 같이, 먼저 움직임 벡터 검출 처리부(34)에서는, 루틴(RT1)의 개시 단계로부터 들어와 단계(SP1)로 이행한다.
단계(SP1)에 있어서 움직임 벡터 검출 처리부(34)는, 움직임 벡터 검출 회로(35)에 의해 입력용 프레임 메모리(32)로부터 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4)단위로 판독하는 동시에, 상기 제2 프레임 화상 데이터에 대한 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 판독하고, 블록 매칭법에 의해 참조용 제1 또는 제2 프레임 화상 데이터를 이용하여 이들 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)를 검출하여, 상기 검출한 움직임 벡터(D7)를 움직임 벡터 버퍼(36)에 축적하도록 하고 1 프레임 분의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)를 검출하면, 단계(SP2)로 이행한다.
단계(SP2)에 있어서 움직임 벡터 검출 처리부(34)는, 움직임 벡터 검출기(35)에 의해, 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)를 검출할 때에 산출한 예측오차를 이용하여 이들 각 제2 매크로 블록 데이터(D4)를 잘라낸 제2 프레임 화상 데이터와, 참조용 제1 또는 제2 프레임 화상 데이터(D6) 간의 프레임간 상관치(SH1)를 산출하여, 상기 산출한 프레임간 상관치(SH1)를 프레임 구조 변환기(33)에 송출하여 단계(SP3)로 이행한다.
단계(SP3)에 있어서 움직임 벡터 검출 처리부(34)는, 움직임 벡터 재검출기(48)에 의해 동화상 데이터(D1)의 프레임 레이트가 변경되었는지 여부를 판단한다.
이 단계(SP3)에 있어서 부정결과를 얻는 것은, 아직 동화상 데이터(D1)의 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되어 있지 않은 것, 또는 상기 제1 및 제2 프레임 화상 데이터를 순차적으로 선정 압축률로 압축 부호화하고 있는 것을 의미하여, 이 때 움직임 벡터 검출 처리부(34)는, 움직임 벡터 재 검출기(48)에 의한 움직임 벡터의 재검출 처리를 실행하지 않고 단계(SP1)에 귀환, 이 후로 동화상 데이터(D1)의 프레임 레이트가 변경되기까지의 사이에는 단계(SP1-SP2-SP3)의 처리를 순환적으로 반복함으로써 순차적으로 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)를 검출하는 동시에, 그 제2 프레임 화상 데이터와 참조용 제1 또는 제2 프레임 화상 데이터(D6) 사이에서의 프레임간 상관치(SH1)를 산출한다.
이 때, 도 6b에 도시한 바와 같이, 압축 부호화부(37)는, 루틴(RT2)의 개시 단계로부터 들어와 단계(SP11)로 이행하여, 예를 들면 연산기(38)에 의해 움직임 벡터 검출 처리부(34){실제로는 움직임 벡터 검출기(35)}에 있어서 소정의 프레임 수만큼의 제2 프레임 화상 데이터에 대한 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)가 검출되는 것을 기다리고 있고, 상기 소정의 프레임 수만큼의 제2 프레임 화상 데이터에서의 각 매크로 블록 데이터(D4)의 움직임 벡터(D7)가 검출되면, 단계(SP12)로 이행한다.
단계(SP12)에 있어서 압축 부호화부(37)는, 입력용 프레임 메모리(32) 내의 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화를 개시하여, 연산기(38), 이산 코사인 변환기(40), 양자화기(41) 및 가변길이 부호화기(43)에 의해 제1 프레임 화상 데이터를 프레임내 부호화에 의해 압축 부호화하여 얻어진 부호화 데이터(D10)를 버퍼(42)에 일단 축적하거나, 또는 제2 프레임 화상 데이터를 움직임 벡터 버퍼(36)로부터 판독한 움직임 벡터(D7)를 이용하여 순방향 예측 부호화에 의해 압축 부호화하여 얻어진 부호화 데이터(D14)를 버퍼(42)에 일단 축적하는 동시에, 압 축 부호화한 제1 또는 제2 프레임 화상 데이터를 역양자화기(44), 역이산 코사인 변환기(45), 가산기(46) 및 움직임 보상기(39)에 의해 참조용 프레임 메모리(47) 내에 움직임 보상처리의 참조용으로서 재구축하여 단계(SP13)로 이행한다.
단계(SP13)에 있어서 압축 부호화부(37)는, 버퍼(42)에 일단 축적한 부호화 데이터(D10 및 D14)의 부호화 데이터량을 평활화함으로써 이들 부호화 데이터(D10 및 D14)를 부호화 비트 스트림(BS1)으로서 외부에 출력하고 단계(SP14)로 이행한다.
단계(SP14)에 있어서 압축 부호화부(37)는, 연산기(38)에 의한 입력용 프레임 메모리(32)로부터의 제1 및 제2 프레임 화상 데이터의 판독 상황에 따라서 부호화 대상의 제1 및 제2 프레임 화상 데이터를 모두 압축 부호화하였는지 여부를 판단하여, 아직 부호화 대상의 제1 및 제2 프레임 화상 데이터를 모두 압축 부호화하고 있지 않으면, 단계(SP12)로 되돌아간다.
이로 인하여, 압축 부호화부(37)는, 이후로부터 부호화 대상의 제1 및 제2 프레임 화상 데이터를 모두 압축 부호화할 때까지의 사이에는, 단계(SP12-SP13-SP14)의 처리를 순환적으로 반복함으로써 상기 부호화 대상의 제1 프레임 화상 데이터를 프레임내 부호화에 의해 압축 부호화하는 동시에, 부호화대상의 제2 프레임 화상 데이터를 움직임 벡터 버퍼(36)로부터 판독한 움직임 벡터(D7)를 이용하여 순방향 예측 부호화에 의해 압축 부호화하여, 얻어진 부호화 데이터(D10 및 D14)를 부호화 비트 스트림(BS1)으로서 출력한다.
한편, 도 6c 및 도 7c에 도시한 바와 같이, 프레임 레이트 변경 처리부(31) 는, 루틴(RT3)의 개시 단계로부터 들어와 단계(SP21)로 이행하여, 프레임 구조 변환기(33)에 의해 움직임 벡터 검출기(35)로부터 부여되는 프레임간 상관치(SH1)에 따라 제1 또는 제2 프레임 화상 데이터의 부호화 예측 데이터량을 예측하여 단계(SP22)로 이행한다.
단계(SP22)에 있어서 프레임 레이트 변경 처리부(31)는, 프레임 구조 변환기(33)에 의해 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되었는지 여부를 판단하여, 상기 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되지 안았으면, 단계(SP21)로 되돌아간다.
따라서, 프레임 레이트 변경 처리부(31)는 제1 및 제2 프레임 화상 데이터의 압축 부호화가 시작될 때까지의 사이에는 단계(SP21-SP22)의 처리를 순환적으로 반복함으로써 순차적으로 제1 및 제2 프레임 화상 데이터의 부호화 예측 데이터량을 예측한다.
그리고, 프레임 레이트 변경 처리부(31)는 연산기(38)에 의해 입력용 프레임 메모리(32)로부터 제1 및 제2 프레임 화상 데이터가 순차적으로 제1 및 제2 매크로 블록 데이터(D2 및 D4) 단위로 판독되는 것에 의해 압축 부호화부(37)에 있어서 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되면, 단계(SP23)로 이행한다.
단계(SP23)에 있어서 프레임 레이트 변경 처리부(31)는, 프레임 구조 변환기(33)에 의해 버퍼(42)의 데이터 축적량(DR)를 검출하여, 상기 검출한 데이터 축적량(DR)를 제1 임계치 및 제2 임계치와 비교함으로써 그 데이터 축적량(DR)이 제1 임계치로부터 제2 임계치까지의 범위내의 값인지 여부를 판단한다.
이 단계(SP23)에 있어서 긍정결과를 얻는 것은, 이 시점에서 압축 부호화하고 있는 제1 또는 제2 프레임 화상 데이터에 이어지는 제1 또는 제2 프레임 화상 데이터를 대략 선정 압축률로 압축 부호화할 수 있는 것을 의미하여, 이 때 프레임 레이트 변경 처리부(31)는, 프레임 구조 변환기(33)에 의해 동화상 데이터(D1)의 프레임 레이트를 그대로 변경하지 않고 단계(SP21)에 귀환, 이후로부터 동화상 데이터(D1)의 프레임 레이트의 변경이 필요하게 되기까지의 사이에는 단계(SP21-SP22-SP23)의 처리를 순환적으로 반복한다.
또한 단계(SP23)에 있어서 부정결과를 얻는 것은, 데이터 축적량(DR)이 제1 임계치로부터 제2 임계치까지의 범위 밖의 값이 되어 동화상 데이터(D1)의 프레임 레이트를 변경해야 하는 것을 의미하여, 이 때 프레임 레이트 변경 처리부(31)는 단계(SP24)로 이행한다.
단계(SP24)에 있어서 프레임 레이트 변경 처리부(31)는, 프레임 구조 변환기(33)에 의해 데이터 축적량(DR)이 제1 임계치 보다 큰 값인 지 여부를 판단한다.
이 단계(SP24)에 있어서 긍정 결과를 얻는 것은, 데이터 축적량(DR)이 제1 임계치 보다 큰 값이기 때문에 이 시점에서 압축 부호화하고 있는 제1 또는 제2 프레임 화상 데이터에 이어지는 제1 또는 제2 프레임 화상 데이터를 선정 압축률 보다 고압축률로 압축 부호화하는 것이 되어, 동화상의 화질이 저하될 가능성이 있는 것을 의미하여, 이 때 프레임 레이트 변경 처리부(31)는 단계(SP25)로 이행한다.
단계(SP25)에 있어서 프레임 레이트 변경 처리부(31)는 프레임 구조 변환기(33)에 의해, 이 시점에서 압축 부호화되어 있는 프레임 화상 데이터에 계속되는 소정의 프레임 수만큼의 프레임 화상 데이터의 부호화 예측 데이터량과 부호화 비트 스트림(BS1)의 비트 레이트와 따라서 데이터 축적량(DR)의 변화를 추정하여, 상기 추정한 데이터 축적량(DR)와 제1 및 제2 임계값에 따라서 프레임 화상 데이터를 솎아내 동화상 데이터(D1)의 프레임 레이트를 내리는 동시에, 움직임 벡터 재검출 플랙(FG1)을 움직임 벡터 재검출기(48)에 송출하여 단계(SP26)로 이행한다.
이것에 대하여 단계(SP24)에 있어서 부정결과를 얻는 것은, 동화상 데이터(D1)로부터 제2 프레임 화상 데이터를 솎아내 프레임 레이트를 내렸지만, 데이터 축적량(DR)이 제2 의 임계값보다 작은 값이기 때문에 제2 프레임 화상 데이터를 증가시키더라도 동화상에 대한 원하는 화질을 유지할 수 있는 것을 의미하여, 이 때 프레임 레이트 변경 처리부(31)는 단계(SP27)로 이행한다.
단계(SP27)에 있어서 프레임 레이트 변경 처리부(31)는, 프레임 구조 변환기(33)에 의해, 이 시점에서 압축 부호화되어 있는 프레임 화상 데이터에 계속되는 소정의 프레임 수만큼의 프레임 화상 데이터 및 상기 소정의 프레임 수만큼의 프레임 화상 데이터사이에서 이미 솎아내고 있는 프레임 화상 데이터의 부호화 예측 데이터량과, 부호화 비트 스트림(BS1)의 비트 레이트와 따라서 이들 이미 솎아내고 있는 프레임 화상 데이터의 솎아냄을 취소했을 때의 데이터 축적량(DR)의 변화를 추정한다.
그리고, 프레임 레이트 변경 처리부(31)는 그 추정한 데이터 축적량(DR)과 제1 및 제2 임계치에 기초하여, 이미 솎아내고 있는 프레임 화상 데이터의 솎아냄을 취소함으로써, 일단은 저하시키고 있었던 프레임 레이트를 규정의 프레임 레이트를 상회하지 않도록 높이는 동시에, 움직임 벡터 재검출 플랙(FG2)을 움직임 벡터 재검출기(48)에 송출하여 단계(SP26)로 이행한다.
단계(SP26)에 있어서 프레임 레이트 변경 처리부(31)는, 프레임 구조 변환기(33)에 의해, 연산기(38)에 의한 입력용 프레임 메모리(32)로부터의 제1 및 제2 프레임 화상 데이터의 판독 상황에 따라서 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되었는지 여부를 판단하여, 아직 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되어 있지 않으면, 단계(SP21)로 되돌아간다.
따라서, 프레임 레이트 변경 처리부(31)는, 이후부터 부호화대상의 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되기까지의 사이에는 단계(SP21-SP22-23-SP24-SP25-SP26)의 처리를 순환적으로 반복함으로써 순차적으로 제 l 및 제2 프레임 화상 데이터의 부호화 예측 데이터량을 예측하면서 동화상 데이터(D1)의 프레임 레이트를 적절히 변경한다.
이 때 단계(SP3)에 있어서 움직임 벡터 검출 처리부(34)는, 움직임 벡터 재검출기(48)에 의해 프레임 구조 변환기(33)로부터 부여되는 움직임 벡터 재검출 플랙(FG1 및 FG2)에 따라 동화상 데이터(D1)의 프레임 레이트가 변경되었다고 판단하여 단계(SP4)로 이행한다.
단계(SP4)에 있어서 움직임 벡터 검출 처리부(34)는, 움직임 벡터 재검출기(48)에 의해 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 움직임 벡터(D17)의 재검출이 필요한지 여부를 판단한다.
이 단계(SP4)에 있어서 긍정결과를 얻는 것은, 동화상 데이터(D1)의 프레임 레이트가 내려진 것에 의해 프레임 구조 변환기(3)로부터 부여된 움직임 벡터 재검출 플랙(FG1)에 따라, 솎아내어진 제2 프레임 화상 데이터와 인접하는 재검출 프레임 화상 데이터의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D17)를 재검출하는 것을 의미하여, 이 때 움직임 벡터 검출 처리부(34)는 단계(SP5)로 이행하여, 움직임 벡터 재검출기(48)에 의해 재검출 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D17)를 재검출하여 단계(SP6)로 이행한다.
그리고 단계(SP6)에 있어서 움직임 벡터 검출 처리부(34)는, 움직임 벡터 재검출기(48)에 의해 움직임 벡터 재검출 플랙(FG1에 따라 움직임 벡터 버퍼(36)를 제어함으로써 재검출한 움직임 벡터(D17)를 일단 축적하는 동시에, 재검출 프레임 화상 데이터에 대한 재검출 전의 움직임 벡터(D7)와 솎아냄 프레임 화상 데이터의 움직임 벡터(D7)를 판독 불가능한 상태로 하여 단계(SP7)로 이행한다.
이것에 대하여 단계(SP4)에 있어서 부정결과를 얻는 것은, 동화상 데이터(D1)의 프레임 레이트가 높여진 것에 의해 움직임 벡터(D17)의 재검출이 필요 없다는 것을 의미하여, 이 때 움직임 벡터 검출 처리부(34)는 단계(SP6)로 이행한다.
그리고 단계(SP6)에 있어서 움직임 벡터 검출 처리부(34)는, 움직임 벡터 재검출기(48)에 의해 프레임 구조 변환기(3)로부터 부여된 움직임 벡터 재검출 플랙(FG2)에 따라 움직임 벡터 버퍼(36)를 제어함으로써 재검출 프레임 화상 데이터에 대하여 재검출하고 있었던 움직임 벡터(D17)를 판독 불가능한 상태로 하여, 또한 재검출 프레임 화상 데이터에 대한 재검출 전의 움직임 벡터(D7)와 솎아냄을 취소한 솎아냄 프레임 화상 데이터의 움직임 벡터(D7)를 판독가능한 상태로 하여 단계(SP7)로 이행한다.
단계(SP7)에 있어서 움직임 벡터 검출 처리부(34)는, 움직임 벡터 검출기(35)에 의해 입력용 프레임 메모리(32) 내의 모든 제1 및 제2 프레임 화상 데이터에서의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 움직임 벡터를 검출하였는지 여부를 판단하여, 입력용 프레임 메모리(32) 내의 모든 제1 및 제2 프레임 화상 데이터에서의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 움직임 벡터를 검출하여 있지 않으면, 단계(SP1)로 되돌아간다.
따라서, 움직임 벡터 검출 처리부(34)는, 입력용 프레임 메모리(32) 내에 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 움직임 벡터를 검출할 제1 및 제2 프레임 화상 데이터가 받아들여지고 있는 사이에는 단계(SP1-SP2-SP3-SP4-SP5-SP6-SP7)의 처리를 순환적으로 반복함으로써 입력용 프레임 메모리(32) 내의 제1 및 제2 프레임 화상 데이터에서의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 움직임 벡터(D7)를 순차적으로 검출하는 동시에, 재검출 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D17)를 적절히 재검출한다.
그리고, 단계(SP7)에 있어서 움직임 벡터 검출 처리부(34)는, 입력용 프레임 메모리(32) 내의 모든 제1 및 제2 프레임 화상 데이터에서의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 움직임 벡터(D7)를 검출하면, 단계(SP8)로 이행한다.
단계(SP8)에 있어서 움직임 벡터 검출 처리부(34)는, 움직임 보상기(39)에 의한 움직임 벡터 버퍼(36)로부터의 움직임 벡터(D7 및 D17)의 판독 상황에 따라서 부호화 대상의 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되었는지 여부를 판단하여, 아직 제1 및 제2 프레임 화상 데이터의 압축 부호화가 종료하여 있지 않으면, 단계(SP3)로 되돌아간다.
따라서, 움직임 벡터 검출 처리부(34)는, 이후부터 부호화 대상의 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되기까지의 사이에는 단계(SP3-SP4-SP5-SP6-SP7-SP8)의 처리를 순환적으로 반복함으로써 재검출 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D17)를 적절한 재검출한다.
이렇게 하여 압축 부호화부(37)는, 부호화 대상의 제1 및 제2 프레임 화상 데이터를 모두 압축 부호화하기까지의 사이에는 단계(SP12-SP13-SP14)의 처리를 순환적으로 반복하지만, 동화상 데이터(D1)의 프레임 레이트가 내려지는 것에 의해 재검출 프레임 화상 데이터에 대하여 움직임 벡터(D17)가 재검출되면, 부호화대상의 제2 프레임 화상 데이터를, 움직임 벡터 버퍼(36)로부터 판독한 그 움직임 벡터(D17)를 이용하여 순방향 예측 부호화에 의해 압축 부호화한다.
그리고, 압축 부호화부(37)는, 단계(SP14)에 있어서 부호화대상의 제1 및 제2 프레임 화상 데이터를 모두 압축 부호화하였다고 판단하면, 단계(SP15)로 이행하여 상기 압축 부호화부(37)에서의 처리순서를 종료한다.
또, 압축 부호화부(37)가 이와 같이 처리순서를 종료하면, 프레임 레이트 변 경처리부(31)는 단계(SP26)에 있어서 부호화대상의 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되었다고 판단하여 단계(SP28)에 옮기는 것에 의해 상기 프레임 레이트 변경처리부(31)의 수순을 종료하는 동시에, 움직임 벡터 검출 처리부(34)도 단계(SP8)에 있어서 부호화대상의 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되었다고 판단하여 단계(SP9)로 이행함으로써 상기 움직임 벡터 검출 처리부(34)의 처리순서를 종료하고, 이렇게 하여 동화상 부호화 장치(30)에서의 동화상 데이터(D1)의 압축 부호화 처리 순서를 모두 종료한다.
이상의 구성에 있어서, 이 동화상 부호화 장치(30)로서는, 외부에서 공급되는 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터단위로 입력용 프레임 메모리(32)에 취입, 상기 입력용 프레임 메모리(32)에 받아들인 프레임 화상 데이터에 I 픽쳐 및 P 픽쳐를 소정의 순서대로 할당한다.
그리고, 이 동화상 부호화 장치(30)로서는, 움직임 벡터 검출기(35)에 의해 입력용 프레임 메모리(32) 내의 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4) 단위로 판독하여 상기 판독한 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D7)를 검출한다.
이 상태에서 동화상 부호화 장치(30)로서는, 압축 부호화부(37)에 의해 입력용 프레임 메모리(32)로부터 제1 프레임 화상 데이터를 순차적으로 제1 매크로 블록 데이터(D2) 단위로 판독하여 프레임내 부호화에 의해 압축 부호화하여, 얻어진 부호화 데이터(D10)를 버퍼(42)에 일단 축적하는 동시에, 상기 입력용 프레임 메모리(32)로부터 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4)단 위로 판독하여 대응하는 움직임 벡터(D7)를 이용한 순방향 예측 부호화에 의해 압축 부호화하여, 얻어진 부호화 데이터(D14)를 버퍼(42)에 일단 축적하고, 상기 버퍼(42)로부터 부호화 데이터(D10 및 D14)를 부호화 비트 스트림(BS1)으로서 외부에 출력한다.
이렇게 하여 동화상 부호화 장치(30)로서는, 동화상 데이터(D1)를 구성하는 제1 및 제2 프레임 화상 데이터의 압축 부호화를 개시하면, 프레임 구조 변환기(33)에 의해 버퍼(42)의 데이터 축적량(DR)을 정기적으로 검출하여 제1 및 제2 의 임계값과 비교하고, 상기 데이터 축적량(DR)이 제1 의 임계값보다 큰 값인 때에는 동화상 데이터(D1)의 프레임 레이트를 내려, 이와 같이 프레임 레이트를 내린 상태로 버퍼(42)의 데이터 축적량(DR)이 제2 임계치 보다 작은 값이 되었을 때에는 동화상 데이터(D1)의 프레임 레이트를 높이도록 하고 상기 동화상 데이터(D1)의 프레임 레이트를 데이터 축적량(DR)에 따라서 변경하도록 했다.
따라서, 이 동화상 부호화장치(30)로서는, 송신 대상인 동화상 데이터(D1)에 기초하는 동화상의 그림이 급격히 변화되는 등 하여 제1 및 제2 프레임 화상 데이터로부터 얻어지는 부호화 데이터량이 증가하더라도, 이것에 정확하게 대응하여 동화상 데이터(D1)의 프레임 레이트를 내려 단위 시간당에 압축 부호화할 제2 프레임 화상 데이터의 수를 줄이기 때문에, 데이터 축적량(DR)이 증가한 채로 되고, 압축률이 급격히 높아지는 것을 미연에 방지할 수 있어, 이렇게 하여 동화상의 화질이 급격한 열화를 방지할 수 있다.
또, 이 동화상 부호화장치(30)로서는, 송신 대상인 동화상 데이터(D1)의 프 레임 레이트를 내린 상태로 상기 동화상 데이터(D1)에 기초하는 동화상의 그림의 변화가 급격히 감소하는 등 하여 제1 및 제2 프레임 화상 데이터로부터 얻어지는 부호화 데이터량이 저하되더라도 동화상 데이터(D1)의 프레임 레이트를 높여 단위시간당에 압축 부호화할 제2 프레임 화상 데이터의 수를 증가시키기 때문에, 동화상 데이터(D1)의 제2 프레임 화상 데이터를 필요 이상 솎아내 데이터 축적량(DR)이 저하된 채로 되어 압축률이 비교적 낮아지는 것을 방지할 수 있고, 이렇게 하여 동화상의 화질이 일시적으로 원하는 화질 이상이 되어 변동하는 것을 정확하게 방지할 수 있다.
이와 같이 동화상 부호화장치(30)로서는, 동화상 데이터(D1)를 압축 부호화하면서 각 부호화 데이터(D10 및 D14)의 부호화 데이터량을 나타내는 버퍼(42)의 데이터 축적량(DR)에 따라서 적절한 프레임 레이트를 변경하기 위해, 사용자에 제공하는 동화상의 화질을 안정시킬 수 있다.
이것에 더하여, 이 동화상 부호화장치(30)로서는, 데이터 축적량(DR)이 제1 임계치 보다 높은 값인 때에는 이 시점으로부터 부호화대상이 되는 소정의 프레임 수만큼의 제1 및 또는 제2 프레임 화상 데이터의 부호화 예측 데이터량을 이용하여 상기 소정의 프레임 수만큼의 제1 및 또는 제2 프레임 화상 데이터로부터 1 또는 복수의 제2 프레임 화상 데이터를 솎아내 동화상 데이터(D1)의 프레임 레이트를 내리기 때문에, 상기 동화상 데이터(D1)에 기초하는 동화상의 그림이 복수 프레임에 걸쳐 비교적 심히 움직이는 것 같을 때에도, 복수 프레임에 걸쳐 압축률이 비교적 높아지는 것을 미연에 방지할 수 있고, 이렇게 하여 동화상의 화질이 복수 프레임 에 걸쳐 열화되는 것을 미연에 방지할 수 있다.
또, 이 동화상 부호화장치(30)로서는, 데이터 축적량(DR)이 제2 임계치 보다 작은 인의 때에도 이 시점으로부터 부호화 대상이 되는 소정의 프레임 수만큼의 제1 및 또는 제2 프레임 화상 데이터와 상기 소정의 프레임 수만큼의 제1 및 또는 제2 프레임 화상 데이터 사이에서 이미 솎아내고 있는 1 또는 복수의 제2 프레임 화상 데이터와의 부호화 예측 데이터량을 이용하여 동화상 데이터(D1)의 프레임 레이트를 높이기 때문에, 동화상 데이터(D1)에 기초하는 동화상의 그림의 변화가 복수 프레임에 걸쳐 비교적 안정되게 있는 것 같을 때에도, 복수 프레임에 걸쳐 압축률이 비교적 낮아지는 것을 미연에 방지할 수 있어, 이렇게 하여 동화상의 화질이 복수 프레임에 걸쳐 원하는 화질 이상이 되어 급격히 변동하는 것을 미연에 방지할 수 있다.
그리고, 이 동화상 부호화장치(30)로서는, 이와 같이 동화상 데이터(D1)의 프레임 레이트의 변경에 소정의 프레임 수만큼의 제1 및 제2 프레임 화상 데이터의 부호화 데이터량을 이용하여 복수 프레임에 걸치는 동화상의 화질의 변화를 미연에 방지하지만, 이와 같이 프레임 레이트를 변경한 상태로 제1 및 제2 프레임 화상 데이터를 압축 부호화하고 있는 사이에도 순차적으로 데이터 축적량(DR)를 검출하여 압축 부호화의 상황을 감시하고 있기 때문에, 예를 들면 부호화 예측 데이터량의 예측 정밀도가 비교적 낮기 때문에 상기 부호화 예측 데이터량과 실제로 압축 부호화했을 때의 부호화 데이터량이 다를 때에도, 한번 변경한 프레임 레이트를 동화상에 대한 원하는 화질에 맞춰 용이하고 또한 정확하게 보정할 수 있다.
이상의 구성에 의하면, 외부에서 공급되는 동화상 데이터(D1)를 순차적으로 제1 및 제2 프레임 화상 데이터 단위로 압축 부호화하여, 얻어진 부호화 데이터(D10 및 D14)를 버퍼(42)에 일단 축적하여 부호화 데이터량을 평활화한 부호화 비트 스트림(BS1)으로서 외부에 출력하면서, 상기 버퍼(42)의 데이터 축적량(DR)을 정기적으로 검출하여, 그 데이터 축적량(DR)의 변화에 따라서 동화상 데이터(D1)의 프레임 레이트를 변경하도록 한 것에 의해, 송신 대상인 동화상 데이터(D1)에 기초하는 동화상의 그림의 변화에 따라서 단위 시간당에 압축 부호화할 제1 및 제2 프레임 화상 데이터의 수를 정확하게 변경하여 압축률을 안정시키고, 상기 동화상의 화질을 안정시킬 수 있어, 이렇게 하여 원하는 화질의 동화상을 정확하게 제공할 수 있는 동화상 부호화 장치를 실현할 수 있다.
또, 상술한 제1 실시예에서는, 도 3에 대해 전술한 바와 같이 외부에서 공급된 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터 단위로 입력용 프레임 메모리(32)에 취입, 상기 입력용 프레임 메모리(32)에 받아들인 프레임 화상 데이터에 I 픽쳐 및 P 픽쳐를 소정의 순서대로 할당하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 도 8a 및 도 8b에 도시한 바와 같이, 입력용 프레임 메모리(32)에 순차적으로 받아들인 프레임 화상 데이터에 I픽쳐, P 픽쳐 및 B 픽쳐를 할당하도록 할 수도 있다.
또, 픽쳐 타입으로서 I픽쳐, P 픽쳐 및 B 픽쳐를 이용할 때에, 예를 들면 선두의 프레임 화상 데이터로부터 순차적으로 B픽쳐, I픽쳐, B픽쳐, P픽쳐, B픽쳐, P픽쳐, B픽쳐, P픽쳐, ····, 를 할당하면, 선두의 B 픽쳐를 할당한 프레임 화상 데이터(이하, 이것을 제3 프레임 화상 데이터라고 부른다)에 관해서는 2 프레임 째의 제1 프레임 화상 데이터를 참조용에 이용하여 역방향 예측 부호화에 의해 압축 부호화하고, 상기 2 프레임 째 이후의 제3 프레임 화상 데이터에 관해서는 순방향측에서 인접하는 제1 또는 제2 프레임 화상 데이터를 참조용으로서 이용하는 동시에 역방향측에서 인접하는 제1 또는 제2 프레임 화상 데이터를 참조용으로서 이용하는 양방향 예측 부호화에 의해 압축 부호화할 수 있다. `
또, 제2 프레임 화상 데이터에 대해서는, 순방향측에서 가장 가까운 제1 또는 제2 프레임 화상 데이터를 참조용으로서 이용하는 순방향 예측 부호화에 의해 압축 부호화할 수 있다.
그리고, 도 9a 내지 도 9c에 도시한 바와 같이, 입력용 프레임 메모리(32) 내의 프레임 화상 데이터에 I픽쳐, P 픽쳐 및 B 픽쳐를 할당한 상태로 예를 들면 3 프레임 째의 제3 프레임 화상 데이터 및 5 프레임 째의 제2 프레임 화상 데이터를 솎아내 동화상 데이터(D1)의 프레임 레이트를 변경하면, 그 솎아냄에 따라서 상기 3 프레임 째의 제3 프레임 화상 데이터에 대해서는 순방향측 및 역방향측 제1 및 제2 프레임 화상 데이터의 참조용으로는 이용되지 않으므로 이들 순방향측 및 역방향측 제1 및 제2 프레임 화상 데이터의 각 제1 및 제2 매크로 블록 데이터의 움직임 벡터를 재검출할 필요는 없다.
이것에 대하여 5 프레임 째의 제2 프레임 화상 데이터에 관해서는, 순방향측 제3 프레임 화상 데이터(4 프레임 째)와, 역방향 측 제3 및 제2 프레임화상 데이터(6 프레임 째 및 7 프레임 째)의 참조용으로서 이용되고 있다.
따라서, 솎아냄에 따라서 4 프레임 째의 제3 프레임 화상 데이터에 관해서는, 역방향측 7 프레임 째의 제2 프레임 화상 데이터를 참조용으로서 이용하여 각 매크로 블록 데이터의 역방향측 움직임 벡터를 재검출하여, 6 프레임 째의 제3 프레임 화상 데이터에 관해서는, 순방향측 3 프레임 째의 제2 프레임 화상 데이터를 참조용으로서 이용하여 각 매크로 블록 데이터의 순방향측 움직임 벡터를 검출하고, 또 7 프레임 째의 제2 프레임 화상 데이터에 관해서는 순방향측 3 프레임 째의 제2 프레임 화상 데이터를 이용하여 각 제2 매크로 블록 데이터의 순방향 측 움직임 벡터를 검출하면 좋다.
또, 상술한 제1 실시예에서는, 동화상 데이터(D1)의 프레임 레이트를 내리기 위해서 제2 프레임 화상 데이터를 솎아내었을 때에 움직임 벡터 재검출기(48)에 의해 재검출 프레임 화상 데이터의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D17)를 블록 매칭법에 의해서 재검출하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 재검출 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 미리 검출하고 있는 움직임 벡터(D7)를 상기 재검출 프레임 화상 데이터에 인접하고 있었던 솎아냄 프레임 화상 데이터의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터와 합성함으로써 그 재검출 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터를 재검출하거나, 또는 텔레스코픽 서치법 등의 간이 움직임 벡터 검출법을 이용하여 움직임 벡터를 재검출하면, 움직임 벡터 재검출기에서의 움직임 벡터의 재검출 처리의 연산량을 대폭 저감시켜 상기 재검출 처리를 고속화할 수 있다.
또한, 상술한 제1 실시예에서는, 제2 프레임 화상 데이터의 각 제2 매크로 블록 데이터(D4)를 순방향 예측 부호화에 의해 압축 부호화하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 각 제2 매크로 블록 데이터(D4)의 분산치를 이용하고 프레임내 부호화 및 순방향 예측 부호화의 어느 것으로 압축 부호화하도록 할 수도 있다.
또한, 상술한 제1 실시예에서는, 움직임 벡터 재검출기(48)에 의해 입력용 프레임 메모리(32)로부터 판독한 참조용 제1 및 제2 프레임 화상 데이터(D6)를 이용하여 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D17)를 재검출하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 움직임 벡터 재검출기에 의해 참조용 프레임 메모리(47)로부터 참조용 제1 및 제2 프레임 화상 데이터를 판독하여 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D17)를 재검출하도록 할 수도 있다. 이와 같이 하면 움직임 벡터(D17)의 재검출에, 일단 압축 부호화한 후에 복호화하고 재구축함으로써 그 압축 부호화에 따라서 발생한 블록 노이즈 등을 가지는 제1 및 제2 프레임 화상 데이터를 이용할 수 있어, 상기 움직임 벡터(D17)의 검출 정밀도를 향상시킬 수 있다.
또한, 상술한 제1 실시예에서는, 버퍼(42)의 데이터 축적량(DR) 및 부호화 예측 데이터량에 따라서 동화상 데이터(D1)의 프레임 레이트를 변경하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 버퍼(42)의 데이터 축적량(DR)에 따라서 동화상 데이터(D1)의 프레임 레이트를 변경하도록 할 수도 있다. 이렇게 하여 프레임 레이트를 변경하더라도 데이터 축적량(DR)이 급격한 증감 에 정확하게 대처하여 동화상의 화질을 안정화시킬 수 있다.
(3) 제2 실시예
도 2와의 대응부분에 동일부호가 부여되어 도시한 도 10은 제2 실시예에 의한 동화상 부호화 장치(60)를 나타내고, 프레임 레이트 변경 처리부(61)의 프레임 구조 변환기(62)와, 움직임 벡터 검출 처리부(63)와의 구성을 제외하고 제1 실시예에 의한 동화상 부호화 장치(30)와 같이 구성되어 있다.
프레임 레이트 변경 처리부(61)의 프레임 구조 변환기(62)는 도 3에 대해 전술한 경우와 같이 입력용 프레임 메모리(32)에 프레임 화상 데이터를 받아들이는 때마다 상기 받아들인 프레임 화상 데이터에 I 픽쳐 및 P 픽쳐의 픽쳐 타입을 할당하는 동시에, 그 I 픽쳐 및 P 픽쳐를 나타내는 픽쳐 타입과 이들을 할당한 프레임 화상 데이터 고유의 프레임 식별 정보를 픽쳐 정보로서 입력용 프레임 메모리(32)에 기록한다.
그리고, 움직임 벡터 검출 처리부(63)에 있어서 간이 움직임 벡터 검출기(64)는, 입력용 프레임 메모리(32) 내에서 프레임 화상 데이터에 픽쳐가 할당되었을 때에는, 상기 I 픽쳐가 할당된 제1 프레임 화상 데이터의 픽쳐 정보를 판독하고, 상기 판독한 픽쳐 정보에 따라 예측 모드 데이터(D3)를 생성하고, 상기 생성한 예측 모드 데이터(D3)를 간이 움직임 벡터 버퍼(65)에 송출하여 축적한다.
또, 간이 움직임 벡터 검출기(64)는, 입력용 프레임 메모리(32) 내에서 프레임 화상 데이터에 P 픽쳐가 할당되었을 때에는, 상기 P 픽쳐가 할당된 제2 프레임 화상 데이터의 픽쳐 정보를 판독하는 동시에, 상기 제2 프레임 화상 데이터와 순방 향측에서 인접하는 참조용 제1 또는 제2 프레임 화상 데이터(D6)의 픽쳐 정보를 판독한다.
간이 움직임 벡터 검출기(64)는, 이들 픽쳐 정보에 따라 대응하는 부호화 대상인 제2 프레임 화상 데이터의 프레임 식별 정보를 부호화 대상 프레임 식별 정보로서 나타내는 동시에 참조용 제1 또는 제2 프레임 화상 데이터(D6)의 프레임 식별 정보를 참조용 프레임 식별 정보로서 나타내어, 또 부호화 대상의 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4) 단위로 순방향 예측 부호화에 의해 압축 부호화하는 것을 나타내는 예측 모드 데이터(D20)를 생성한다.
이것에 더하여 간이 움직임 벡터 검출기(64)는, 이 때 입력용 프레임 메모리(32)로부터 픽쳐 정보에 따라 부호화 대상의 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4) 단위로 판독하는 동시에, 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 판독한다.
여기에서, 간이 움직임 벡터 검출기(64)는, 도 11a 및 도 11b에 나타내는 것 같이, 원화상을 최상층(이하, 이것을 제1 계층이라고 부른다)의 계층으로 하여, 또한 상기 원화상을 축소하여 해상도를 내린 화상을 그 원화상 보다 하층의 화상으로서, 이들 계층이 상이한 화상을 단계적으로 이용하여 최종적인 원화상 레벨의 움직임 벡터를 검출하기 위한 계층 서치 움직임 벡터 검출방식에 따라서 제2 매크로 블록 데이터(D4)에 대한 검출 정밀도를 떨어뜨린 간이 움직임 벡터를 검출한다.
즉, 간이 움직임 벡터 검출기(64)는, 계층 서치 움직임 벡터 검출방식에 의해 원화상 레벨의 제1 계층보다 하층의 제2 계층에서, 제2 매크로 블록 데이터(D4) 를 예를 들면1/4정도로 축소하여 해상도를 내리는 것에 의해 계층적인 제2 매크로 블록 데이터(이하, 이것을 계층 매크로 블록 데이터라고 부른다)(D21)를 생성하는 동시에, 동일하게 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 예를 들면 1/4정도로 축소하여 해상도를 내리는 것에 의해 계층적인 참조용 제1 또는 제2 프레임 화상 데이터(이하, 이것을 계층 프레임 화상 데이터라고 부른다)(D22)를 생성한다.
또, 간이 움직임 벡터 검출기(64)는, 도 12에 도시한 바와 같이, 블록 매칭법에 의해 계층 매크로 블록 데이터(D21)를 계층 프레임 화상 데이터(D22)의 비교적 넓은 서치 범위 내에서 복수의 비교용 블록 데이터와 순차적으로 대응시키면서 예측 오차를 산출하도록 하여 상기 산출한 예측 오차중 최소 예측 오차를 산출했을 때에 이용한 비교용 블록 데이터와 계층 매크로 블록 데이터(D21)와의 움직임 양에 의해 그 계층 매크로 블록 데이터(D21)의 움직임 벡터(이하, 이것을 저해상도 움직임 벡터라고 부른다)(D23)를 검출한다.
또한, 간이 움직임 벡터 검출기(64)는, 그 저해상도 움직임 벡터(D23)를 제2 매크로 블록 데이터(D4)의 해상도(즉, 원화상의 해상도)에 합쳐서 예를 들면 4배로 함으로써 상기 제2 매크로 블록 데이터(D4)에 대한 제2 계층의 간이 움직임 벡터(D24)를 검출한다.
그리고, 간이 움직임 벡터 검출기(64)는, 입력용 프레임 메모리(32) 내의 부호화 대상인 제2 프레임 화상 데이터에 대한 예측 모드 데이터(D20) 및 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 대응시켜 간이 움직임 벡터 버퍼(65)에 송출하여 축적한다.
이렇게 하여 간이 움직임 벡터 검출기(64)는, 입력용 프레임 메모리(32)에 프레임 화상 데이터가 순차적으로 받아들여 I 픽쳐 및 P 픽쳐가 할당하면, 그 때마다 동일하게 하고 예측 모드 데이터(D3, D20)를 생성하는 동시에 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하여, 이들을 간이 움직임 벡터 버퍼(65)에 축적한다. ·
또, 간이 움직임 벡터 검출기(64)는, 이와 같이 1 프레임 분의 각 제2 매크로 블록 데이터(D4)에 대한 간이 움직임 벡터(D24)를 검출할 때마다, 계층 매크로 블록 데이터(D21)와 계층 프레임 화상 데이터(D22)와의 사이에서 산출한 예측 오차를 이용하여, 계층적 부호화 대상인 제2 프레임 화상 데이터(즉, 계층 매크로 블록 데이터(D21)에 의해서 구축되는 제2 프레임 화상 데이터)와 참조용 계층 프레임 화상 데이터와의 프레임간 상관치(SH2)를 산출하여, 상기 산출한 프레임간 상관치(SH2)를 프레임 구조 변환기(62)에 송출한다.
이것에 의해 프레임 구조 변환기(62)는, 간이 움직임 벡터 검출기(64)로부터 부여된 프레임간 상관치(SH2)에 따라, 부호화 대상인 제1 및 제2 프레임 화상 데이터를 각각 선정 압축률로 압축 부호화한 경우에 얻어지는 부호화 데이터(D10 및 D14)의 부호화 예측 데이터량을 예측한다.
이렇게 하여 간이 움직임 벡터 검출기(64)는, 원화상에 비해 화소수를 줄인 계층 매크로 블록 데이터(D21) 및 계층프레임 화상 데이터 제공 서버 데이터(D22)간의 예측오차를 이용하여 프레임간 상관치(SH2)를 산출함으로써 상기 프레임간 상관치(SH2)에 대한 연산량을 각별히 저감시켜 얻도록 이루어져 있다.
또, 프레임 구조 변환기(62)도 원화상 레벨의 프레임간 상관치(SH1)(도 2)에 비해 정보량이 적은 프레임간 상관치(SH2)에 따라 부호화 예측 데이터량을 산출하기 위해, 상기 부호화 예측 데이터량을 산출할 때의 연산량을 각별히 저감시켜 얻도록 이루어져 있다.
그리고, 프레임 구조 변환기(62)는, 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 개시되면, 도 2에 대해 상술한 경우와 같이 버퍼(42)의 데이터 축적량(DR)를 소정의 주기로 검출하여, 상기 검출한 데이터 축적량(DR)에 따라서 동화상 데이터(D1)의 프레임 레이트를 변경한다.
또, 프레임 구조 변환기(62)는, 이와 같이 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되면, 연산기(38)에 의해 입력용 프레임 메모리(32)로부터 부호화 대상인 제1 프레임 화상 데이터가 제1 매크로 블록 데이터(D2) 단위로 판독할 때에, 상기 입력용 프레임 메모리(32) 내의 대응하는 픽쳐 정보에 따라 그 제1 프레임 화상 데이터의 프레임 식별 정보를 부호화 대상 프레임 식별 정보로서 나타내는 제어 플랙(CF1)을 생성하여 이것을 움직임 벡터 검출기(66)에 송출한다.
또한, 프레임 구조 변환기(62)는, 연산기(38)에 의해 입력용 프레임 메모리(32)로부터 부호화 대상인 제2 프레임 화상 데이터가 제2 매크로 블록 데이터(D4) 단위로 판독할 때에는, 입력용 프레임 메모리(32) 내의 대응하는 픽쳐 정보 및 그 제2 프레임 화상 데이터에 대하여 참조용이 되는 제1 또는 제2 프레임 화상 데이터(D6)의 픽쳐 정보에 따라 상기 부호화 대상인 제2 프레임 화상 데이터의 프 레임 식별 정보를 부호화 대상 프레임 식별 정보로서 나타내어, 또한 참조용 제1 또는 제2 프레임 화상 데이터(D6)의 프레임 식별 정보를 참조용 프레임 식별 정보로서 나타내는 제어 플랙(CF2)을 생성하고 이것을 움직임 벡터 검출기(66)에 송출한다.
여기에서, 프레임 구조 변환기(62)는, 부호화 대상인 제2 프레임 화상 데이터에 대하여 간이 움직임 벡터(D24)의 검출 때에 이용한 참조용 제1 또는 제2 프레임 화상 데이터를 프레임 레이트의 변경용으로 솎아내지 않으면(솎아냄의 취소도 포함함), 상기 부호화 대상인 제2 프레임 화상 데이터와 그 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 그대로 대응시켜 제어 플랙(CF2)을 생성한다.
또, 프레임 구조 변환기(62)는, 부호화 대상인 제2 프레임 화상 데이터에 대하여 간이 움직임 벡터(D24)의 검출 때에 이용한 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 프레임 레이트의 변경용으로 솎아내었을 때에는, 상기 부호화 대상인 제2 프레임 화상 데이터에 대하여 그 솎아낸 제1 또는 제2 프레임 화상 데이터 대신 새로운 제1 또는 제2 프레임 화상 데이터(D6)를 참조용으로서 대응시켜 제어 플랙(CF2)을 생성한다.
또한, 프레임 구조 변환기(62)는, 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 부호화 대상인 제2 프레임 화상 데이터를 솎아내는 것에 의해 연산기(38)가 입력용 프레임 메모리(32)로부터의 판독한 것을 전송할 때에는, 상기 제2 프레임 화상 데이터의 프레임 식별 정보를 솎아냄 프레임 식별 정보로서 나타내어, 그 제2 프레임 화상 데이터를 솎아낸 것을 나타내는 제어 플랙(CF3)을 생성 하여 이것을 움직임 벡터 검출기(66)에 송출한다.
이렇게 하여 프레임 구조 변환기(62)는, 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화의 순번에 따라서 순차적으로 제어 플랙(CF1 및 CF2 및 CF3)을 생성하여 움직임 벡터 검출기(66)에 송출한다.
움직임 벡터 검출기(66)는, 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되면, 부호화 대상인 제1 및 제2 프레임 화상 데이에 대한 압축 부호화의 순번에 따라서 간이 움직임 벡터 버퍼(65)로부터 예측 모드 데이터(D3 및 D20)를 순차적으로 판독한다.
그리고, 움직임 벡터 검출기(66)는, 간이 움직임 벡터 버퍼(65)로부터 예측 모드 데이터(D3 및 D20)를 판독하는 때마다, 상기 예측 모드 데이터(D3 및 D20)에 따라 얻어지는 부호화 대상 프레임 식별 정보 및 참조용 프레임 식별정보를, 이때 프레임 구조 변환기(62)로부터 부여된 대응하는 제어 플랙(CF1 및 CF2 및 CF3)에 따라 얻어진 부호화 대상 프레임 식별 정보 및 참조용 프레임 식별 정보 및 솎아냄 프레임 식별 정보와 비교한다.
이 경우, 움직임 벡터 검출기(66)는 간이 움직임 벡터 버퍼(65)로부터 제1 프레임 화상 데이터에 대한 예측 모드 데이터(D3)를 판독했을 때에는, 도 5A 내지 도 5C에 대해 전술한 바와 같이 제1 프레임 화상 데이터가 솎아냄의 대상으로부터 제외되어 있고, 예측 모드 데이터(D3) 및 제어 플랙(CF1에 따라 얻어지는 부호화 대상 프레임 식별 정보끼리가 일치함으로써 상기 제1 프레임 화상 데이터가 솎아내어지고 있지 않다고 판단하고 예측 모드 데이터(D3)를 움직임 보상기(39) 및 가변 길이 부호화기(43)에 송출한다.
또, 움직임 벡터 검출기(66)는, 간이 움직임 벡터 버퍼(65)로부터 제2 프레임 화상 데이터에 대한 예측 모드 데이터(D20)를 판독했을 때, 그 예측 모드 데이터(D20) 및 대응하는 제어 플랙(CF2)에 따라 얻어지는 부호화 대상 프레임 식별 정보끼리 및 참조용 프레임 식별 정보끼리가 일치하면, 상기 제2 프레임 화상 데이터와 이것에 간이 움직임 벡터(D24)의 검출 때에 대응시킨 참조용 제1 또는 제2 프레임 화상 데이터(D6)가 솎아내어지고 있지 않다고 판단하여 간이 움직임 벡터 버퍼(65)로부터 예측 모드 데이터(D20)에 대응되는 간이 움직임 벡터(D24)를 판독한다.
이 때 움직임 벡터 검출기(66)는, 제어 플랙(CF2)에 따라 입력용 프레임 메모리(32)로부터 부호화 대상인 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4)단위로 판독하는 동시에 참조용 제1 또는 제2 프레임 화상 데이터(D6)도 판독한다.
그리고, 움직임 벡터 검출기(66)는, 도 12에 도시한 바와 같이, 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서, 블록매칭법에 의해 참조용 제1 또는 제2 프레임 화상 데이터(D6)에 대하여 간이 움직임 벡터(D24)의 끝점 주변에 각별히 좁은 서치 범위를 설정하여, 상기 서치 범위 내에서 복수의 비교용 블록 데이터와 제2 매크로 블록 데이터(D4)를 순차적으로 대응시키면서 예측오차를 산출한다.
그 결과, 움직임 벡터 검출기(66)는, 산출한 예측 오차 중 최소 예측오차를 산출했을 때에 이용한 비교용 블록 데이터와 제2 매크로 블록 데이터(D4)와의 움직 임 양에 의해 원화상 레벨로 간이 움직임 벡터(D24)를 보정하는 움직임 벡터(이하, 이것을 보정용 움직임 벡터라고 부른다)(D25)를 검출하여, 상기 검출한 보정용 움직임 벡터(D25)를 간이 움직임 벡터(D24)와 가산함으로써 제2 매크로 블록 데이터(D4)에 대한 최종적인 제1 계층의 움직임 벡터(D26)를 생성하고, 이것을 예측 모드 데이터(D20)와 함께 움직임 보상기(39) 및 가변길이 부호화기(43)에 송출한다.
또, 움직임 벡터 검출기(66)는, 간이 움직임 벡터 버퍼(65)로부터 제2 프레임 화상 데이터에 대한 예측 모드 데이터(D20)를 판독했을 때, 그 예측 모드 데이터(D20) 및 제어 플랙(CF2)에 따라 얻어지는 부호화 대상 프레임 식별 정보끼리는 일치하지만, 참조용 프레임 식별 정보끼리가 일치하지 않으면, 상기 제2 프레임 화상 데이터에 대하여 간이 움직임 벡터(D24)의 검출 때에 대응시킨 참조용 제1 또는 제2 프레임 화상 데이터만이 솎아내고 있다고 판단하여 간이 움직임 벡터 버퍼(65)로부터 상기 예측 모드 데이터(D20)에 대응되어 있은 간이 움직임 벡터(D24)를 판독하지 않고 부호화 대상인 제2 프레임 화상 데이터에 대한 움직임 벡터(D26)의 재검출 처리를 개시한다.
실제상, 움직임 벡터 검출기(66)는, 제어 플랙(CF2)에 따라 입력용 프레임 메모리(32)로부터 부호화 대상인 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4) 단위로 판독하는 동시에, 프레임 구조 변환기(62)에 있어서 새로 대응시킨 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 판독한다.
그리고, 움직임 벡터 검출기(66)는, 도 11a 및 도 11b 및 도 12에 대해 상술 한 경우와 같이 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출한 후에 제1 계층에서 제2 매크로 블록 데이터(D4)에 대한 최종적인 원화상 레벨의 움직임 벡터(D26)를 생성한다.
또, 움직임 벡터 검출기(66)는, 예측 모드 데이터(D20)에, 미리 격납되어 있는 참조용 프레임 식별 정보대신 제어 플랙(CF2)에 따라 얻어진 새로운 참조용 프레임 식별 정보를 격납함으로써 움직임 벡터(D26)의 재검출에 맞춰 내용을 수정한 예측 모드 데이터(D27)를 생성하고, 상기 생성한 예측 모드 데이터(D27)를 움직임 벡터(D26)와함께 움직임 보상기(39) 및 가변길이 부호화기(43)에 송출한다.
이것에 더하여 움직임 벡터 검출기(66)는, 간이 움직임 벡터 버퍼(65)로부터 제2 프레임 화상 데이터에 대한 예측 모드 데이터(D20)를 판독한 때, 그 제2 프레임 화상 데이터가 솎아내고 있으면, 예측 모드 데이터(D20) 및 제어 플랙(CF3)에 따라 얻어지는 부호화대상 프레임 식별 정보 및 솎아냄 프레임 식별 정보끼리는 일치하지만, 상기 제어 플랙(CF3)에 따라 제2 프레임 화상 데이터가 솎아내어진 것을 검출함으로써 간이 움직임 벡터 버퍼(65)로부터 예측 모드 데이터(D20)에 대응되어 있은 간이 움직임 벡터(D24)를 판독하지 않고 그 제2 프레임 화상 데이터에 대한 움직임 벡터의 검출 처리를 전송하도록 한다.
이렇게 하여 움직임 벡터 검출기(66)는, 프레임 구조 변환기(62)에 의한 동화상 데이터(D1)의 프레임 레이트의 변경에 따라서 부호화 대상인 제2 프레임 화상 데이터에 대한 움직임 벡터(D26)를 정확하게 검출(재검출을 포함함)할 수 있도록 이루어져 있다.
여기에서, 동화상 부호화장치(60)의 프레임 레이트 변경처리부(61)와 움직임 벡터 검출 처리부(63)와 압축 부호화부(37)에 의한 동화상 데이터(D1)의 압축 부호화 처리 순서에 대해 통합하여 보면, 도 6a 및 도 7a의 대응부분에 동일부호가 부여된 도 13a 및 도 14a에 도시한 바와 같이, 우선 움직임 벡터 검출 처리부(63)는, 루틴(RT4)의 개시 단계로부터 들어와 단계(SP31)로 이행한다.
단계(SP31)에 있어서 움직임 벡터 검출 처리부(63)는, 간이 움직임 벡터 검출회로(64)에 의해 입력용 프레임 메모리(32)로부터 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4) 단위로 판독하는 동시에, 상기 제2 프레임 화상 데이터에 대한 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 판독하고, 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 1 프레임분의 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하여 단계(SP32)로 이행한다.
단계(SP32)에 있어서 움직임 벡터 검출 처리부(63)는, 간이 움직임 벡터 검출기(64)에 의해 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출할 때에 산출한 예측오차를 이용하여 계층적인 부호화 대상인 제2 프레임 화상 데이터와 참조용 계층 프레임 화상 데이터와의 프레임간 상관치(SH2)를 산출하여, 상기 산출한 프레임간 상관치(SH2)를 프레임 구조 변환기(62)에 송출하여 단계(SP33)로 이행한다.
이 때 도 6c 및 도 7c와의 대응부분에 동일부호가 부여된 도 13c 및 도 14c에 도시한 바와 같이, 프레임 레이트 변경 처리부(61)는, 루틴(RT5)의 개시 단계로부터 들어와 단계(SP21)로 이행하여, 상기 단계(SP21)의 처리에 계속해서 단계(SP22)의 처리를 실행한 후에 단계(SP41)로 이행한다.
단계(SP41)에 있어서 프레임 레이트 변경처리부(61)는, 프레임 구조 변환기(62)에 의해 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 제어 플랙(CF1 및 CF2 및 CF3)을 생성하고, 상기 생성한 제어 플랙(CF1 및 CF2 및 CF3)을 움직임 벡터 검출기(66)에 송출하여 단계(SP23)로 이행한다.
이렇게 하여 프레임 레이트 변경 처리부(61)는 제1 및 제2 프레임 화상 데이터가 압축 부호화되어 있는 사이에는, 단계(SP21-SP22-SP23-SP24-SP25-SP26-SP27)의 처리를 순환적으로 반복함으로써 움직임 벡터 검출기(66)에 제어 플랙(CF1 및 CF2 및 CF3)을 순차적으로 송출하면서 동화상 데이터(D1)의 프레임 레이트를 적절한 변경하여, 이다음 단계(SP26)에 있어서 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되었다고 판단하면, 단계(SP42)로 이행하여 상기 프레임 레이트 변경 처리부(61)의 처리순서를 종료한다.
이것에 대하여 단계(SP33)에 있어서 움직임 벡터 검출 처리부(63)는, 예를 들면 움직임 벡터 검출기(66)에 의해 입력용 프레임 메모리(32)에 대한 연산기(38)의 액세스의 유무를 감시함으로써 제1 및 제2 프레임 화상 데이터의 압축 부호화가 시작되었는지 여부를 판단하여, 상기 제1 및 제2 프레임 화상 데이터의 압축 부호화가 시작되기까지의 사이에는 단계(SP31-SP32-SP33)의 처리를 순환적으로 반복함으로써 순차적으로 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하는 동시에, 프레임간 상관치(SH2)를 산출한다.
그리고, 움직임 벡터 검출 처리부(63)는, 단계(SP33)에 있어서 움직임 벡터 검출기(66)에 의해 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작된 것을 검출하면, 단계(SP34)로 이행한다.
단계(SP34)에 있어서 움직임 벡터 검출 처리부(63)는, 움직임 벡터 검출기(66)에 의해 프레임 구조 변환기(62)로부터 부여된 제어 플랙(CF1 및 CF2 및 CF3)에 따라 부호화 대상인 제2 프레임 화상 데이터가 프레임 레이트의 변경에 의해 솎아내어졌는지 여부를 판단한다.
이 단계(SP34)에 있어서 부정결과를 얻는 것은, 부호화 대상인 제2 프레임 화상 데이터가 솎아내어지고 있지 않은 것을 의미하여, 이 때 움직임 벡터 검출 처리부(63)는, 단계(SP35)로 이행하여 부호화 대상인 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터의 재검출이 필요한지 여부를 판단한다.
이 단계(SP35)에 있어서 긍정결과를 얻는 것은, 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 부호화 대상인 제2 프레임 화상 데이터에 간이 움직임 벡터(D24)의 검출 때와는 상이한 참조용 제1 또는 제2 프레임 화상 데이터(D6)가 할당된 것을 의미하여, 이 때 움직임 벡터 검출 처리부(63)는 단계(SP36)로 이행하여 움직임 벡터 검출기(66)에 의해 부호화 대상인 제2 프레임 화상 데이터와 새로운 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 이용하고 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 각 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 재검출하여 단계(SP37)로 이행한다.
단계(SP37)에 있어서 움직임 벡터 검출 처리부(63)는, 움직임 벡터 검출기(66)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 부호화 대상인 제2 프레임 화상 데이터 및 참조용 제1 또는 제2 프레임 화상 데이터 및 간이 움직임 벡터(D24)를 이용하여 원화상 레벨로 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26)를 검출하여 단계(SP38)로 이행한다.
또, 단계(SP34)에 있어서 긍정결과를 얻는 것은, 부호화 대상인 제2 프레임 화상 데이터가 프레임 레이트의 변환에 의해 솎아내어진 것을 의미하여, 이 때 움직임 벡터 검출 처리부(63)는 단계(SP38)로 이행한다.
또, 단계(SP35)에 있어서 부정결과를 얻는 것은, 부호화 대상인 제2 프레임 화상 데이터에 간이 움직임 벡터(D24)의 검출 때와 동일한 참조용 제1 또는 제2 프레임 화상 데이터(D6)가 할당되어 있는 것을 의미하여, 이 때 움직임 벡터 검출 처리부(63)는 단계(SP37)로 이행하여 움직임 벡터 검출기(66)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 상기 부호화 대상인 제2 프레임 화상 데이터 및 참조용 제1 또는 제2 프레임 화상 데이터(D6) 및 간이 움직임 벡터 버퍼(65)로부터 판독한 대응하는 간이 움직임 벡터(D24)를 이용한 원화상 레벨로 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26)를 검출하여 단계(SP38)로 이행한다.
단계(SP38)에 있어서 움직임 벡터 검출 처리부(63)는, 움직임 벡터 검출기(66)에 의해 입력용 프레임 메모리(32) 내의 모든 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하였는지 여부를 판단하여, 상기 입력용 프레임 메모리(32) 내의 모든 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하지 않았 으면, 단계(SP31)로 되돌아간다.
따라서, 움직임 벡터 검출 처리부(63)는, 입력용 프레임 메모리(32) 내에 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출할 제2 프레임 화상 데이터가 받아들여지고 있는 사이에는 단계(SP31-SP32-SP33-SP34-SP35-SP36-SP37-SP38)의 처리를 순환적으로 반복함으로써 입력용 프레임 메모리(32) 내의 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 순차적으로 검출하고, 또한 프레임간 상관치(SH2)를 순차적으로 산출하면서 상기 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26)를 순차적으로 검출한다.
그리고, 단계(SP38)에 있어서 움직임 벡터 검출 처리부(63)는, 입력용 프레임 메모리(32) 내의 모든 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하면, 단계(SP8)로 이행한다.
단계(SP8)에 있어서 움직임 벡터 검출 처리부(63)는, 움직임 벡터 검출기(66)에 의해 입력용 프레임 메모리(32)에 대한 연산기(38)의 액세스의 유무를 감시함으로써 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되었는지 여부를 판단하여, 아직 제1 및 제2 프레임 화상 데이터의 압축 부호화가 종료하지 않았으면, 단계(SP34)로 되돌아간다.
따라서, 움직임 벡터 검출 처리부(63)는, 이후로부터 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되기 까지의 사이에는 단계(SP34-SP35-SP36-SP37-SP38-SP8)의 처리를 순환적으로 반복함으로써 부호화 대상인 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26)를 순차적으 로 검출한다.
이렇게 하여 움직임 벡터 검출 처리부(63)는, 단계(SP8)에 있어서 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되었다고 판단하고 단계(SP39)로 이행하여 상기 움직임 벡터 검출 처리부(63)의 처리순서를 종료하여, 이렇게 하여 동화상 부호화장치(60)에서의 동화상 데이터(D1)의 압축 부호화처리순서를 모두 종료한다.
이상의 구성에 있어서, 이 동화상 부호화장치(60)에서는, 송신 대상인 동화상 데이터(D1)를 구성하는 제1 및 제2 프레임 화상 데이터를 압축 부호화하는 경우, 간이 움직임 벡터 검출기(64)에 의해 미리 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 참조용 제1 또는 제2 프레임 화상 데이터(D6)의 화소를 줄여 해상도를 내린 계층 프레임 화상 데이터 D(22)의 비교적 좁은 서치 범위 내를 동일하게 각 제2 매크로 블록 데이터(D4)의 화소를 줄여 해상도를 내린 계층 매크로 블록 데이터(D21)에 의해서 서치하고 상기 계층 매크로 블록 데이터(D21)의 저해상도 움직임 벡터(D23)를 검출하여, 그 저해상도 움직임 벡터(D23)를 원화상의 해상도에 맞추도록 확대하여 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출한다.
그리고, 이 동화상 부호화장치(60)에서는, 제2 프레임 화상 데이터를 각 제2 매크로 블록 데이터(D4) 단위로 실제로 압축 부호화할 때에 움직임 벡터 검출기(66)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 참조용 제1 또는 제2 프레임 화상 데이터(D6)에 대하여 간이 움직임 벡터(D24)의 끝점 주 변에 설정한 각별히 좁은 서치 범위를 제2 매크로 블록 데이터(D4)에 의해서 서치하여 간이 움직임 벡터(D24)의 끝점 부분을 보정하는 보정용 움직임 벡터(D25)를 검출하여, 상기 검출한 보정용 움직임 벡터(D25)를 간이 움직임 벡터(D24)와 가산하고 제2 매크로 블록 데이터(D4)에 대한 제1 계층의 움직임 벡터(D26)를 검출하도록 했다.
따라서, 이 동화상 부호화장치(60)에서는, 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 해상도를 내린(즉 데이터량을 감소시켰다) 계층 프레임 화상 데이터(D22) 및 계층 블록 데이터(D21)를 이용하여 간이 움직임 벡터(D24)를 검출하는 동시에, 상기 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 원화상 레벨의 참조용 제1 또는 제2 프레임 화상 데이터(D6) 및 제2 매크로 블록 데이터(D4)를 이용하지만, 간이 움직임 벡터(D24)의 끝점 부분만을 보정하는 보정용 움직임 벡터(D25)를 검출하도록 하고 제2 매크로 블록 데이터(D4)에 대한 제1 계층의 움직임 벡터(D26)를 검출하기 위해, 상술한 제1 실시예에 의한 동화상 부호화 장치(30)(도 2)에 비해 제2 매크로 블록 데이터(D4)의 움직임 벡터 검출시의 연산량을 각별히 저감시킬 수 있다. ·
또, 동화상 부호화장치(60)에서는, 입력용 프레임 메모리(32) 내의 모든 제2 프레임 화상 데이터에 대해서는 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하지만, 상기 제2 프레임 화상 데이터를 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 솎아내었을 때에는 이들 각 제2 매크로 블록 데이터(D4)의 원화상 레벨의 움직임 벡터(D26)를 검출하지 않기 때문에, 움직임 벡터 검출 처 리부(63)에서의 처리부하를 저감시킬 수 있다.
이상의 구성에 의하면, 송신 대상인 동화상 데이터(D1)를 구성하는 제1 및 제2 프레임 화상 데이터를 압축 부호화하는 경우, 계층 서치 움직임 벡터 검출방식에 의해 부호화 대상인 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26)를 계층적으로 검출하도록 한 것에 의해, 상술한 제1 실시예에 의해서 얻어지는 효과에 더하여, 이들 각 제2 매크로 블록 데이터(D4)에 대한 움직임 벡터 검출시의 연산량을 각별히 저감시킬 수 있어, 이렇게 하여 움직임 벡터 검출 처리를 고속화할 수 있는 동화상 부호화 장치를 실현할 수 있다.
또, 상술한 제2 실시예에서는, 도 3에 대해 전술한 바와 같이 외부에서 공급된 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터 단위로 입력용 프레임 메모리(32)에 취입, 상기 입력용 프레임 메모리(32)에 받아들인 프레임 화상 데이터에 I 픽쳐 및 P 픽쳐를 소정의 순서대로 할당하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 도 8a 및 도 8b 및 도 9a 내지 도 9c에 대해 전술한 바와 같이, 입력용 프레임 메모리(32)에 받아들인 프레임 화상 데이터에 I픽쳐, P 픽쳐 및 B 픽쳐를 할당하도록 할 수도 있다.
또, 상술한 제2 실시예에서는, 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 부호화 대상인 제2 프레임 화상 데이터에 새로운 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 할당했을 때에 움직임 벡터 검출기(66)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제1 계층 및 제2 계층에서, 각 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24) 및 원화상 레벨의 움직임 벡터(D26)를 순차적으로 검출하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 부호화 대상인 제2 프레임 화상 데이터에 새로운 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 할당했을 때에, 간이 움직임 벡터 검출기(64)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 부호화 대상인 제2 프레임 화상 데이터 및 새로운 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 이용하여 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하는 동시에, 움직임 벡터 검출기(66)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 상기 제2 매크로 블록 데이터(D4)의 원화상 레벨의 움직임 벡터(D26)를 검출하도록 할 수도 있다. 이와 같이 하면, 프레임 레이트의 변경에 따르는 움직임 벡터의 재검출 때에 움직임 벡터 검출기(66)의 처리부하를 대폭 저감시킬 수 있다.
이것에 더하여 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 부호화 대상인 제2 프레임 화상 데이터에 새로운 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 할당했을 때에는, 상기 부호화 대상인 제2 프레임 화상 데이터에 대하여 간이 움직임 벡터(D24)의 검출 때에 참조용으로서 제2 프레임 화상 데이터(D6)(즉, 부호화 대상인 제2 프레임 화상 데이터에 순방향측에서 인접하는 제2 프레임 화상 데이터)이 할당되어 있으면, 움직임 벡터 검출기(66)에 의해 그 부호화 대상인 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 미리 검출하고 있는 간이 움직임 벡터(D24)를 상기 간이 움직임 벡터(D24)의 검출 때 에 참조용으로 되어있었던 제2 프레임 화상 데이터(D6)에서의 각 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)와 합성하여, 얻어진 합성간이 움직임 벡터를 이용하여 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 예를 들면 텔레스코픽 서치법을 이용하여 상기 부호화 대상인 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 원화상 레벨의 움직임 벡터(D26)를 검출하도록 할 수도 있다. 이렇게 하여도 프레임 레이트의 변경에 따르는 움직임 벡터의 재검출 때에 움직임 벡터 검출기(66)의 처리부하를 대폭 저감시킬 수 있다.
또, 이러한 간이 움직임 벡터(D24)의 합성을 간이 움직임 벡터 검출기(64)에 의해서 실행하면, 움직임 벡터 검출기(66)의 처리부하를 저감시킬 수도 있다.
또한, 상술한 제2 실시예에서는, 제2 프레임 화상 데이터의 각 제2 매크로 블록 데이터(D4)를 순방향 예측 부호화에 의해 압축 부호화하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 각 제2 매크로 블록 데이터(D4)의 분산치를 이용하여 프레임내 부호화 및 순방향 예측 부호화의 어느 것으로 압축 부호화하도록 할 수도 있다.
또한, 상술한 제2 실시예에서는, 움직임 벡터 검출기(66)에 의해, 입력용 프레임 메모리(32)로부터 판독한 참조용 제1 및 제2 프레임 화상 데이터(D6)를 이용하여 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26)를 검출하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 움직임 벡터 검출기(66)에 의해 참조용 프레임 메모리(47)로부터 참조용 제1 및 제2 프레임 화상 데이터를 판독하여 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26)를 검출하도록 할 수도 있 다. 이와 같이 하면 움직임 벡터(D26)의 검출에, 일단 압축 부호화한 후에 복호화하고 재구축함으로써 그 압축 부호화에 따라서 발생한 블록 노이즈 등을 가진 제1 및 제2 프레임 화상 데이터를 이용할 수 있어, 상기 움직임 벡터(D26)의 검출 정밀도를 향상시킬 수 있다.
또한, 상술한 제2 실시예에서는, 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26)의 검출에 제1 계층 및 제2 계층의 2 계층으로 이루어지는 계층 서치 움직임 벡터 검출방식을 이용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 제2 매크로 블록 데이터(D4)의 움직임 벡터의 검출에 서로 다른 해상도의 프레임 화상을 이용하는 3 계층 이상의 계층 서치 움직임 벡터 검출방식을 이용하도록 할 수도 있다.
또한, 상술한 제2 실시예에서는, 버퍼(42)의 데이터 축적량(DR) 및 부호화 예측 데이터량에 따라서 동화상 데이터(D1)의 프레임 레이트를 변경하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 버퍼(42)의 데이터 축적량(DR)에 따라서 동화상 데이터(D1)의 프레임 레이트를 변경하도록 할 수도 있다. 이렇게 하여 프레임 레이트를 변경하더라도 데이터 축적량(DR)이 급격한 증감에 정확하게 대처하여 동화상의 화질을 안정화시킬 수 있다.
(4) 제3 실시예
도 10과의 대응부분에 동일부호가 부여되어 도시한 도 15는 제3 실시예에 의한 동화상 부호화 장치(70)를 나타내고, 움직임 벡터 검출 처리부(71) 및 압축 부호화부(72) 및 마스크 화상 처리부(73)의 구성을 제외하고 제2 실시예에 의한 동 화상 부호화장치(60)와 같이 구성되어 있다.
움직임 벡터 검출 처리부(71)에 있어서 간이 움직임 벡터 검출기(74)는, 입력용 프레임 메모리(32) 내에서 동화상 데이터(D1)를 구성하는 선두의 프레임 화상 데이터에 I 픽쳐가 할당했을 때, 상기 I 픽쳐가 할당된 제1 프레임 화상 데이터의 픽쳐 정보를 판독함으로써 그 픽쳐 정보에 따라 예측 모드 데이터(D3)를 생성하고, 상기 생성한 예측 모드 데이터(D3)를 간이 움직임 벡터 버퍼(75)에 송출하여 축적한다.
또, 간이 움직임 벡터 검출기(74)는, 입력용 프레임 메모리(32) 내에서 프레임 화상 데이터에 P 픽쳐가 할당했을 때, 도 10에 대해 상술한 동화상 부호화장치(60)의 간이 움직임 벡터 검출기(64)와 같이 상기 P 픽쳐가 할당된 제2 프레임 화상 데이터 및 참조용 제1 또는 제2 프레임 화상 데이터의 픽쳐 정보에 따라 예측 모드 데이터(D20)를 생성한다.
그리고, 간이 움직임 벡터 검출기(74)는, 도 11a 및 도 11b 및 도 12에 대해 상술한 경우와 같이 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서, P 픽쳐가 할당된 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하여, 상기 검출한 각 간이 움직임 벡터(D24)를 예측 모드 데이터(D20)에 대응시켜 간이 움직임 벡터 버퍼(75)에 송출하여 축적한다.
이것에 더하여 간이 움직임 벡터 검출기(74)는, 입력용 프레임 메모리(32) 내에서 동화상 데이터(D1)를 구성하는 각 프레임 화상 데이터 중 선두 이외의 프레임 화상 데이터에 I 픽쳐가 할당했을 때에는, 상기 I 픽쳐가 할당된 제1 프레임 화 상 데이터의 픽쳐 정보를 판독하는 동시에, 그 제1 프레임 화상 데이터와 순방향측에서 인접하는 참조용 제2 프레임 화상 데이터(D6)의 픽쳐 정보를 판독한다.
간이 움직임 벡터 검출기(74)는, 이들 픽쳐 정보에 따라 부호화 대상인 제1 프레임 화상 데이터의 프레임 식별 정보를 부호화 대상 프레임 식별 정보로서 나타내는 동시에 참조용 제2 프레임 화상 데이터(D6)의 프레임 식별 정보를 참조용 프레임 식별 정보로서 나타내어, 또 부호화 대상인 제1 프레임 화상 데이터를 순차적으로 제1 매크로 블록 데이터(D2)단위로 프레임내 부호화에 의해 압축 부호화하는 것을 나타내는 예측 모드 데이터(D30)를 생성한다.
또, 간이 움직임 벡터 검출기(74)는, 이 때 입력용 프레임 메모리(32)로부터 그 부호화 대상인 제1 프레임 화상 데이터를 순차적으로 제1 매크로 블록 데이터(D2)단위로 판독하는 동시에 참조용 제2 프레임 화상 데이터(D6)를 판독하고, 도 11a 및 도 11b 및 도 12에 대해 상술한 경우와 같이 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 상기 제1 프레임 화상 데이터에서의 각 제1 매크로 블록 데이터(D2)의 간이 움직임 벡터(D31)를 검출한다.
그리고, 간이 움직임 벡터 검출기(74)는, 제1 프레임 화상 데이터에 대한 예측 모드 데이터(D30) 및 각 제1 매크로 블록 데이터(D2)의 간이 움직임 벡터(D31)를 대응시켜 간이 움직임 벡터 버퍼(75)에 송출하여 축적한다.
이렇게 하여 간이 움직임 벡터 검출기(74)는, 입력용 프레임 메모리(32)에 프레임 화상 데이터가 순차적으로 받아들여진 I 픽쳐 및 P 픽쳐가 할당되면, 그 때마다 동일하게 예측 모드 데이터(D3, D20, D30)를 생성하는 동시에 간이 움직임 벡 터(D24, D31)를 검출하여, 이들을 간이 움직임 벡터 버퍼(75)에 축적한다.
여기에서, 동화상 부호화 장치(70)에서는, 외부에서 공급되는 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터 단위로 입력용 프레임 메모리(32)와 함께 마스크 화상 처리부(73)의 마스크 화상 생성기(77)에도 받아들이고 있다.
그리고, 마스크 화상 생성기(77)에는, 도 16에 도시한 바와 같이, 외부에서 프레임 화상 데이터에 기초하는 프레임 화상(80)으로부터 추출하는 인물 등의 추출 화상의 초기위치를 지정하는 동시에 프레임(81)에 의해 상기 추출 화상의 임의의 형상을 지정하는 형상지정데이터(D35)가 부여되어 있다.
이 경우, 마스크 화상 생성기(77)는, 동화상 데이터(D1)를 구성하는 각 프레임 화상 데이터 중 선두의 프레임 화상 데이터를 받아들이면, 상기 받아들인 프레임 화상 데이터를 매크로 블록 데이터로 분할하고, 형상 지정 데이터(D35)에 따라 도 17에 나타낸 바와 같이 그 선두의 프레임 화상 데이터에 기초하는 프레임 화상(83) 내에서 추출 화상의 프레임(81)을 둘러싸는 직사각 형상의 추적 영역(84A)을 설정함으로써 상기 설정한 추적영역(84A) 내의 매크로 블록 데이터를 검출한다.
또, 마스크 화상 생성기(77)는 2 프레임 째의 프레임 화상 데이터를 받아들이면, 상기 2 프레임 째의 프레임 화상 데이터를 매크로 블록 데이터로 분할하고, 간이 움직임 벡터 버퍼(75)로부터 2 프레임 째의 프레임 화상 데이터(즉, 제2 프레임 화상 데이터)에서의 각 매크로 블록 데이터{즉, 제2 매크로 블록 데이터(D4)}의 간이 움직임 벡터(D24)를 판독한다.
그리고, 마스크 화상 생성기(77)는, 각 간이 움직임 벡터(D24)를 이용하여 선두의 프레임 화상 데이터에 기초하는 프레임 화상(83)의 추적 영역(84A) 내의 각 매크로 블록 데이터가 2 프레임 째의 프레임 화상 데이터에 기초하는 프레임 화상(85) 내에서 이동한 위치를 대략적으로 검출한 후, 상기 프레임 화상(83 및 85) 사이에서 추적 영역(84A 및 84B) 끼리를 예를 들면 라인 매칭법에 의해서 비교함으로써 그 추적영역(84A) 내의 각 매크로 블록 데이터의 이동한 위치를 고정밀도로 검출한다. 하여 ,
이것에 의해 마스크 화상 생성기(77)는, 2 프레임 째의 프레임 화상 데이터에 기초하는 프레임 화상(85) 내에서 각 매크로 블록 데이터를 포함하는 추적영역(84B)을 특정하면, 상기 특정한 추적영역(84B) 내에서 추출 화상의 프레임(81)을 특정한다.
이렇게 하여 마스크 화상 생성기(77)는, 외부에서 순차적으로 프레임 화상 데이터를 받아들일 때마다, 간이 움직임 벡터(75)로부터 판독한 대응하는 간이 움직임 벡터(D24 및 D31)를 이용하는 동시에 라인 매칭법을 이용하여 순차적으로 인접하는 프레임 화상 데이터 간에서 추적영역(84A) 내의 각 매크로 블록 데이터의 이동한 위치를 검출하여 추적영역(84B)와 함께 추출 화상의 프레임(81)을 특정함으로써 복수의 프레임 화상 데이터에 걸쳐 순차적으로 추출 화상을 추적한다. ·
이것에 더하여 마스크 화상 생성기(77)는, 이와 같이 순차적으로 인접하는 프레임 화상 데이터 간에서 추출 화상을 추적하면, 도 18에 도시한 바와 같이, 우선 선두의 프레임 화상 데이터에 관해서는 형상 지정 데이터(D35)에 따라 각 매크 로 블록 데이터의 각 화소의 화소치를 변경함으로써 프레임 화상(83)(도 17)에 있어서 추출 화상의 프레임(81)보다 내측을 예를 들면 백색으로 하여, 또한 상기 프레임(81)보다 외측을 흑색으로서 추출 화상의 초기위치 및 임의의 형상을 나타내는 마스크 화상(86)을 생성하고, 상기 생성한 마스크 화상(86)의 데이터(이하, 이것을 마스크 화상 데이터라고 부른다) (D36)를 복수 프레임 만큼의 기억 용량을 가지는 마스크용 프레임 메모리(90)에 송출하여 축적한다.
또, 마스크 화상 생성기(77)는, 2 프레임 째 이후의 프레임 화상 데이터에 관해서는, 추적한 추출 화상의 프레임(81)에 따라 각 매크로 블록 데이터의 화소의 화소치를 변경함으로써 선두의 프레임 화상 데이터의 경우와 같이 처리하여 추출 화상의 이동위치 및 임의의 형상을 나타내는 마스크 화상 데이터(D36)를 생성하고, 상기 생성한 마스크 화상 데이터(D36)를 마스크용 프레임 메모리(90)에 송출하여 축적한다.
이렇게 하여 마스크 화상 생성기(7)는 프레임 화상 데이터를 받아들이는 때마다 추출 화상을 추적하면서 상기 프레임 화상 데이터로부터 추출 화상의 이동위치 및 임의의 형상을 나타내는 마스크 화상 데이터(D36)를 생성하여 마스크용 프레임 메모리(90)에 축적한다.
그런데, 움직임 벡터 검출기(91)는 간이 움직임 벡터 검출기(74)에 의해 소정의 프레임 수만큼의 간이 움직임 벡터(D24 및 D31)가 간이 움직임 벡터 버퍼(75)에 축적되는 동시에, 마스크 화상 생성기(77)에 의해 소정의 프레임 수만큼의 마스크 화상 데이터(D36)가 마스크용 프레임 메모리(90)에 축적되는 것에 의해 압축 부 호화부(72)가 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대하여 압축 부호화를 개시하면, 상기 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화의 순번에 따라서 간이 움직임 벡터 버퍼(75)로부터 순차적으로 대응하는 예측 모드 데이터(D3 및 D20 및 D30)를 판독한다.
움직임 벡터 검출기(91)는 간이 움직임 벡터 버퍼(75)로부터 예측 모드 데이터(D3 및 D20 및 D30)를 판독할 때마다, 상기 예측 모드 데이터(D3 및 D20 및 D30)에 따라 얻어지는 부호화 대상 프레임 식별 정보 및 참조용 프레임 식별 정보를, 이 때 프레임 구조 변환기(62)로부터 부여된 대응하는 제어 플랙(CF1 및 CF2 및 CF3)에 따라 얻어진 부호화 대상 프레임 식별 정보 및 참조용 프레임 식별 정보 및 솎아냄 프레임 식별 정보와 비교한다.
이 경우, 움직임 벡터 검출기(91)는 간이 움직임 벡터 버퍼(75)로부터 제1 프레임 화상 데이터에 대한 예측 모드 데이터(D3, D30)를 판독했을 때에는, 도 5a 내지도 5c에 대해 전술한 바와 같이 제1 프레임 화상 데이터가 솎아냄의 대상으로부터 제외되어 있고, 예측 모드 데이터(D3, D30) 및 대응하는 제어 플랙(CF1)에 따라 얻어지는 부호화 대상 프레임 식별 정보끼리가 일치함으로써 상기 제1 프레임 화상 데이터가 솎아내어지고 있지 않다고 판단하고 예측 모드 데이터(D3, D30)를 움직임 보상기(92) 및 가변길이 부호화기(93)에 송출한다.
또, 움직임 벡터 검출기(91)는 간이 움직임 벡터 버퍼(75)로부터 제2 프레임 화상 데이터에 대한 예측 모드 데이터(D20)를 판독했을 때, 그 예측 모드 데이터(D20) 및 대응하는 제어 플랙(CF2)에 따라 상기 제2 프레임 화상 데이터와, 이것에 간이 움직임 벡터(D24)의 검출 때에 대응시킨 참조용 제1 또는 제2 프레임 화상 데이터(D6)이 솎아내어지고 있지 않은 것을 검출하면, 간이 움직임 벡터 버퍼(75)로부터 그 예측 모드 데이터(D20)에 대응되어 있는 간이 움직임 벡터(D24)를 판독한다.
이 때 움직임 벡터 검출기(91)는 제어 플랙(CF2)에 기초하여 입력용 프레임 메모리(32)로부터 부호화 대상인 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4) 단위로 판독하는 동시에 간이 움직임 벡터(D24)의 검출 때에 대응시킨 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 판독하고, 또한 마스크용 프레임 메모리(90)로부터 상기 부호화 대상인 제2 프레임 화상 데이터에 대응하는 마스크 화상 데이터(D36)도 판독한다.
그리고, 움직임 벡터 검출기(91)는, 도 19에 도시한 바와 같이, 마스크 화상 데이터(D36)를 이용하여 각 제2 매크로 블록 데이터(D4) 중 임의의 형상의 추출 화상의 에지 부분(81A)보다 외측 및 내측에 위치하는 것과 상기 에지 부분(81A)에 걸치는 것을 판별한다.
그 결과, 움직임 벡터 검출기(91)는, 각 제2 매크로 블록 데이터(D4) 중 추출 화상의 에지 부분(81A)보다 외측에 위치하는 제2 매크로 블록 데이터(D4)에 대해서는, 원화상 레벨의 움직임 벡터의 검출을 실행하지 않고 예측 모드 데이터(D20)만을 움직임 보상기(92) 및 가변길이 부호화기(93)에 송출한다.
또, 움직임 벡터 검출기(91)는 각 제2 매크로 블록 데이터(D4) 중 추출 화상의 에지 부분(81A)보다 내측에 위치하는 제2 매크로 블록 데이터(D4)에 대해서는, 간이 움직임 벡터 버퍼(75)로부터 대응하는 간이 움직임 벡터(D24)를 판독하고, 도 12에 대해 상술한 경우와 같이 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 원화상 레벨의 움직임 벡터(D26)를 검출하여, 상기 검출한 움직임 벡터(D26)를 예측 모드 데이터(D20)와 함께 움직임 보상기(92) 및 가변길이 부호화기(93)에 송출한다.
또한, 움직임 벡터 검출기(91)는, 도 20에 도시한 바와 같이, 각 제2 매크로 블록 데이터(D4) 중 추출 화상의 에지 부분(81A)에 걸치는 제2 매크로 블록 데이터(D4)에 대해서는, 특히 마스크 화상 데이터(D36)를 이용하여 상기 제2 매크로 블록 데이터(D4) 내의 모든 화소 중 에지 부분(81A)의 내측에 위치하는 화소를 판별한다.
그리고, 움직임 벡터 검출기(91)는, 도 11a 및 도 11b 및 도 12에 대해 상술한 경우와 동일인 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에 있어서 블록 매칭법에 의해 제2 매크로 블록 데이터(D4)의 각 화소 중 에지 부분(81A)의 내측에 위치하는 화소만을 선택적으로 이용하고 예측오차를 산출함으로써 원화상 레벨의 움직임 벡터(D37)를 검출하여, 상기 검출한 움직임 벡터(D37)를 예측 모드 데이터(D20)와 함께 움직임 보상기(92) 및 가변길이 부호화기(93)에 송출한다.
또, 움직임 벡터 검출기(91)는, 간이 움직임 벡터 버퍼(75)로부터 제2 프레임 화상 데이터에 대한 예측 모드 데이터(D20)를 판독했을 때, 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 부호화 대상인 제2 프레임 화상 데이터에 대하여 새로운 제1 또는 제2 프레임 화상 데이터(D6)가 참조용으로서 대응되어 있으면, 제 어 플랙(CF2)에 따라 입력용 프레임 메모리(32)로부터 그 부호화 대상인 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4) 단위로 판독하는 동시에 새로 대응된 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 판독하고, 또 마스크용 프레임 메모리(90)로부터 상기 부호화 대상인 제2 프레임 화상 데이터에 대응하는 마스크 화상 데이터(D36)를 판독한다.
이 때 움직임 벡터 검출기(91)는, 예측 모드 데이터(D20)에, 미리 격납되어 있는 참조용 프레임 식별 정보 대신 제어 플랙(CF2)에 따라 얻어진 새로운 참조용 프레임 식별 정보를 격납함으로써 제2 매크로 블록 데이터(D4)에 대하여 내용을 수정한 예측 모드 데이터(D27)를 생성한다.
또, 움직임 벡터 검출기(91)는, 부호화 대상인 제2 프레임 화상 데이터의 각 제2 매크로 블록 데이터(D4) 및 새로 대응된 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 이용하여 도 11a 및 도 11b 및 도 12에 대해 상술한 경우와 같이 계층 서치 움직임 벡터 검출방식에 의해 제2 계층에서 이들 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출한다.
그리고, 움직임 벡터 검출기(91)는, 검출한 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 이용하여 도 19 및 도 20에 대해 상술한 경우와 같이 제1 계층에서 마스크 화상 데이터(D36)에 의해서 지정된 추출 화상의 에지 부분(81A)보다 내측 및 상기 에지 부분(81A)에 걸친 제2 매크로 블록 데이터(D4)에 대하여만 원화상 레벨의 움직임 벡터(D26 및 D37)를 생성한다.
이것에 의해 움직임 벡터 검출기(91)는, 추출 화상의 에지 부분(81A)보다 외 측에 위치하는 제2 매크로 블록 데이터(D4)에 대해서는 예측 모드 데이터 D(27)만을 움직임 보상기(92) 및 가변길이 부호화기(93)에 송출하여, 상기 에지 부분(81A)보다 내측 및 그 에지 부분(81A)에 걸친 제2 매크로 블록 데이터(D4)에 대해서는 원화상 레벨의 움직임 벡터(D26 및 D37)를 예측 모드 데이터(D27)와 함께 움직임 보상기(92) 및 가변길이 부호화기(93)에 송출한다.
또한, 움직임 벡터 검출기(91)는, 간이 움직임 벡터 버퍼(75)로부터 부호화 대상인 제2 프레임 화상 데이터에 대한 예측 모드 데이터(D20)를 판독했을 때에 프레임 구조 변환기(62)로부터 부여된 제어 플랙(CF3)에 따라 상기 제2 프레임 화상 데이터가 솎아내고 있는 것을 검출하면, 그 제2 프레임 화상 데이터에 대한 원화상 레벨에서의 움직임 벡터의 검출을 전송하는 동시에, 이 때 마스크용 프레임 메모리(90)에 대하여 상기 부호화 대상인 제2 프레임 화상 데이터에 대응하는 마스크 화상 데이터(D36)를 판독 불가능한 상태로 한다.
이렇게 하여 움직임 벡터 검출기(91)는 프레임 구조 변환기(62)에 의한 동화상 데이터(D1)의 프레임 레이트의 변경에 정확하게 대응하면서 부호화 대상인 제2 프레임 화상 데이터에 대하여 추출 화상에 대응하는 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26 및 D37)를 순차적으로 정확하게 검출(재검출을 포함함)할 수 있도록 이루어져 있다.
한편, 마스크 화상 처리부(73)에 있어서 마스크 화상 부호화기(94)는, 압축 부호화부(72)에 의해 부호화 대상인 제1 또는 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되면, 상기 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화의 순 번에 따라서 마스크용 프레임 메모리(90)로부터 순차적으로 대응하는 마스크 화상 데이터(D36)를 판독하는 동시에, 상기 판독한 마스크 화상 데이터(D36)를 MPEG4방식에 의해서 규정되어 있는 마스크 화상 데이터 부호화 방법에 의해 압축 부호화고, 얻어진 부호화 데이터(D40)를 국부 복호기(95) 및 버퍼(96)에 송출한다.
또, 마스크 화상 부호화기(94)는, 움직임 벡터 검출기(91)에 의해 마스크용 프레임 메모리(90) 내에 있어 판독 불가능한 상태로 된 마스크 화상 데이터(D36)에 관해서는 판독을 전송하도록 한다.
국부 복호기(95)는, 마스크 화상 부호화기(94)로부터 부여된 부호화 데이터(D40)를 MPEG4방식의 규정에 따라서 복호화하여, 얻어진 마스크 화상 데이터(D41)를 복수 프레임 분의 기록 용량을 가지는 참조용 프레임메모리(97)에 송출하여 축적한다.
또, 압축 부호화부(72)에 있어서 연산기(38)는 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대하여 압축 부호화를 개시하면, 입력용 프레임 메모리(32)로부터 제1 프레임 화상 데이터에 관해서는 순차적으로 제1 매크로 블록 데이터(D2)단위로 판독한다.
움직임 보상기(92)는, 이 때 움직임 벡터 검출기(91)로부터 부여된 대응하는 예측 모드 데이터(D3 및 D30)에 따라 제1 매크로 블록 데이터(D2)에 대한 움직임 보상처리를 정지한다.
이것에 의해 연산기(38)는, 입력용 프레임 메모리(32)로부터 제1 프레임 화상 데이터의 제1 매크로 블록 데이터(D2)를 판독하면, 이 때 움직임 보상기(92)로 부터는 전혀 데이터가 부여되지 않으므로 상기 제1 매크로 블록 데이터(D2)를 그대로 이산 코사인 변환기(98)에 송출한다.
이산 코사인 변환기(98)는, 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되면, 상기 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화의 순번에 따라서 참조용 프레임 메모리(97)로부터 순차적으로 대응하는 마스크 화상 데이터(D41)를 판독하고 있고, 연산기(38)로부터 제1 매크로 블록 데이터(D2)가 부여되면 대응하는 마스크 화상 데이터 D(41)에 따라 상기 제1 매크로 블록 데이터(D2)가 추출 화상의 에지 부분(81A)보다 외측 및 내측 및 상기 에지 부분(81A) 중 어디에 위치하는가를 판별한다.
그리고, 이산 코사인 변환기(98)는, 제1 매크로 블록 데이터(D2)가 에지 부분(81A)보다 외측에 위치할 때에는 MPEG4방식의 규정에 따라서 상기 제1 매크로 블록 데이터(D2)의 각 화소의 화소치를 압축 부호화 시에 데이터량을 대폭 저감시키는 예를 들면 흑색을 나타내는 화소치로 변경한다.
또, 이산 코사인 변환기(98)는, 제1 매크로 블록 데이터(D2)가 에지 부분(81A)보다 내측에 위치할 때에는 MPEG4방식의 규정에 따라서 상기 제1 매크로 블록 데이터(D2)를 그대로 변경하지 않도록 한다.
또한, 이산 코사인 변환기(98)는, 제1 매크로 블록 데이터(D2)가 에지 부분(81A)에 걸친 때에는 MPEG4방식의 규정에 따라서 상기 제1 매크로 블록 데이터(D2)의 각 화소 중 에지 부분(81A)보다 외측의 화소의 화소치를 흑색을 나타내는 화소치로 변경하고, 또한 상기 에지 부분(81A)보다 내측의 화소의 화소치는 그대로 변경하지 않도록 한다.
이렇게 하여 이산 코사인 변환기(98)는, 마스크 화상 데이터 D(41)에 따라 각 제1 매크로 블록 데이터(D2)에 화소치의 변경처리를 실시함으로써 제1 프레임 화상 데이터에 기초하는 프레임 화상에 있어서 임의의 형상의 추출 화상을 겉보기로 추출한 상태로서 이들 각 제1 매크로 블록 데이터(D2)를 이산 코사인 변환하여, 얻어진 이산 코사인 변환계수(K10)를 양자화기(41)에 송출한다.
양자화기(41)는 이산 코사인 변환기(98)로부터 부여된 이산 코사인 변환계수(K10)를 대응하는 양자화 스텝(ST)에 따라 양자화하여, 얻어진 양자화 계수(Kl1)를 그 양자화에 이용한 양자화 스텝(ST)과 함께 가변길이 부호화기(93) 및 역양자화기(44)에 송출한다.
가변길이 부호화기(93)는, 양자화기(41)로부터 부여된 양자화 계수(K11)를 허프만 부호 등에 의하여 가변길이 부호화하는 동시에, 상기 양자화기(41)로부터 부여된 양자화 스텝 ST 및 움직임 벡터 검출기(91)로부터 부여된 대응하는 예측 모드 데이터(D3)를 가변길이 부호화하여, 얻어진 부호화 데이터(D45)를 버퍼(96)에 송출하여 일단 축적한다.
이것에 의해 버퍼(96)는, 가변길이 부호화기(93)로부터 부여된 부호화 데이터(D45) 및 마스크 화상 부호화기(94)로부터 부여된 부호화 데이터(D40)를 부호화 데이터량을 평활화한 부호화 비트 스트림(BS2)으로서 외부에 출력한다.
이렇게 하여 동화상 부호화 장치(70)에서는, 입력용 프레임 메모리(32) 내의 제1 프레임 화상 데이터에 관해서는 겉보기로, 추출 화상 데이터를 추출한 상태로 하여 순차적으로 제1 매크로 블록 데이터(D2)단위로 프레임내 부호화에 의해 압축 부호화할 수 있도록 이루어져 있다.
또, 역양자화기(44)는, 양자화기(41)로부터 부여된 양자화 계수(Kl1)를 동일하게 양자화기(41)로부터 부여된 양자화 스텝(ST)에 따라 역양자화하여, 얻어진 이산 코사인 변환계수(K12)를 역이산 코사인 변환기(45)에 송출한다.
역이산 코사인 변환기(45)는, 역양자화기(44)로부터 부여된 이산 코사인 변환계수(K12)를 역이산 코사인 변환하여, 얻어진 제1 매크로 블록 데이터(D46)를 가산기(46)에 송출한다.
가산기(46)는, 역이산 코사인 변환기(45)로부터 제1 매크로 블록 데이터(D46)가 부여되면, 이 때 움직임 보상기(92)로부터는 전혀 데이터가 부여되어 있지 않으므로 상기 제1 매크로 블록 데이터(D46)를 그대로 참조용 프레임메모리(97)에 송출하여 격납한다.
이렇게 하여 가산기(46)는, 제1 프레임 화상 데이터에 대한 압축 부호화에 의해 역이산 코사인 변환기(45)로부터 제1 매크로 블록 데이터(D46)가 순차적으로 부여될 때마다 상기 제1 매크로 블록 데이터(D46)를 그대로 참조용 프레임 메모리(97)에 송출하여 격납함으로써, 참조용 프레임 메모리(97) 내에 이들 제1 매크로 블록 데이터(D46)에 의해서 겉보기로, 추출 화상 데이터를 추출한 제1 프레임 화상 데이터를 움직임 보상처리의 참조용으로서 재구축한다.
또, 연산기(38)는, 입력용 프레임 메모리(32)로부터 제1 프레임 화상 데이터를 판독하면, 이것에 계속해서 부호화 대상인 제2 프레임 화상 데이터를 순차적으 로 제2 매크로 블록 데이터(D4)단위로 판독한다.
이 때 움직임 보상기(92)는, 움직임 벡터 검출기(91)로부터 부여된 대응하는 예측 모드 데이터(D20 및 D27)에 따라 움직임 보상처리를 실행함으로써 참조용 프레임 메모리(97)로부터 부호화 대상인 제2 프레임 화상 데이터에 참조용으로서 대응되고, 또한 겉보기로 추출 화상 데이터가 추출된 제1 또는 제2 프레임 화상 데이터를 판독하는 동시에 상기 부호화 대상인 제2 프레임 화상 데이터에 대응하는 마스크 화상 데이터(D41)를 판독한다.
그리고, 움직임 보상기(92)는 MPEG4 방식의 규정에 따라서 움직임 벡터 검출기(91)로부터 부여된 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26, D37) 및 마스크 화상 데이터(D41)에 따라 참조용 제1 또는 제2 프레임 화상 데이터 내에서 상기 제2 매크로 블록 데이터(D4)와 가장 일치하는 연산용 블록 데이터(D47)를 추출하여, 상기 추출한 연산용 블록 데이터(D47)를 연산기(38) 및 가산기(46)에 송출한다.
따라서, 연산기(38)는, 입력용 프레임 메모리(32)로부터 제2 매크로 블록 데이터(D4)를 판독하면, 이 때 움직임 보상기(92)로부터 부여된 연산용 매크로 블록 데이터(D47)를 상기 제2 매크로 블록 데이터(D4)로부터 감산하여, 얻어진 차이 데이터(D48)를 이산 코사인 변환기(98)에 송출한다.
이산 코사인 변환기(98)는, 연산기(38)로부터 차이 데이터(D48)가 부여되면, MPEG4방식의 규정에 따라서 대응하는 마스크 화상 데이터(D41)에 따라 상기 차이 데이터(D48)에 겉보기로 추출 화상 데이터를 추출하기 위한 화소치의 변경처리를 실시한 후에 이산 코사인 변환하여, 얻어진 이산 코사인 변환계수(K13)를 양자화기(41)에 송출한다.
양자화기(41)는 이산 코사인 변환기(98)로부터 부여된 이산 코사인 변환계수 (K13)를 대응하는 양자화 스텝(ST)에 따라 양자화하여, 얻어진 양자화계수(K14)를 그 양자화 스텝 ST와 함께 가변길이 부호화기(93) 및 역양자화기(44)에 송출한다.
가변길이 부호화기(93)는, 양자화기(41)로부터 부여된 양자화계수(K14)를 허프만 부호 등에 의하여 가변길이 부호화하는 동시에, 상기 양자화기(41)로부터 부여된 양자화 스텝(ST)과 움직임 벡터 검출기(91)로부터 부여된 대응하는 예측 모드 데이터(D20, D27) 및 움직임 벡터(D26, D37)도 가변길이 부호화하여, 얻어진 부호화 데이터(D48)를 버퍼(96)에 송출하여 일단 축적한다.
이것에 의해 버퍼(96)는, 가변길이 부호화기(93)로부터 부여된 부호화 데이터(D48) 및 마스크 화상 부호화기(94)로부터 부여된 부호화 데이터(D40)를 부호화 데이터량을 평활화한 부호화 비트 스트림(BS2)으로서 외부에 출력한다.
이렇게 하여 동화상 부호화 장치(70)에서는, 입력용 프레임 메모리(32) 내의 제2 프레임 화상 데이터에 관해서도 겉보기로, 추출 화상 데이터를 추출한 상태로 하여 순차적으로 제2 매크로 블록 데이터(D4) 단위로 순방향 예측 부호화에 의해 압축 부호화할 수 있도록 이루어져 있다.
이 때, 역양자화기(44)는, 양자화기(41)로부터 부여된 양자화계수(K14)를 동일하게 양자화기(41)로부터 부여된 양자화 스텝(ST)에 따라 역양자화하여, 얻어진 이산 코사인 변환계수(K15)를 역이산 코사인 변환기(45)에 송출한다.
또, 역이산 코사인 변환기(45)는, 역양자화기(44)로부터 부여된 이산 코사인 변환계수(K15)를 역이산 코사인 변환하여, 얻어진 차이 데이터(D50)를 가산기(46)에 송출한다.
가산기(46)는, 역이산 코사인 변환기(45)로부터 차이 데이터(D50)가 부여되면, 이 때 움직임 보상기(92)로부터 연산용 블록 데이터(D47)가 부여되는 것에 의해 상기 차이 데이터(D50)와 연산용 블록 데이터(D47)를 가산하여, 얻어진 제2 매크로 블록 데이터(D51)를 참조용 프레임 메모리(97)에 송출하여 격납한다.
이렇게 하여 가산기(46)는, 제2 프레임 화상 데이터에 대한 압축 부호화에 의해 역이산 코사인 변환기(45)로부터 차이 데이터(D50)가 부여될 때마다 상기 차이 데이터(D50)와 대응하는 연산용 블록 데이터(D47)를 가산하여 제2 매크로 블록 데이터(D51)를 생성하고, 상기 생성한 제2 매크로 블록 데이터(D51)를 참조용 프레임 메모리(97)에 송출하여 격납함으로써 그 참조용 프레임 메모리(97) 내에 이들 제2 매크로 블록 데이터(D51)에 의해서 겉보기로, 추출 화상 데이터를 추출한 제2 프레임 화상 데이터를 움직임 보상처리의 참조용으로서 재구축한다.
또, 가변길이 부호화기(93)는, 제1 및 제2 프레임 화상 데이터로부터 얻어진 양자화계수(K11 및 K14)에 대하여 추출 화상 데이터의 부분을 선택적으로 가변길이 부호화하도록 이루어져 있고, 이것에 의해 가변길이 부호화의 처리부하를 저감시키는 동시에 부호화 비트 스트림(BS2)의 부호화 데이터량을 저감할 수 있도록 이루어져 있다.
이렇게 하여 이 동화상 부호화 장치(70)에서는, 동화상 데이터(D1)에 대한 프레임 레이트를 적절히 변경하면서 제1 및 제2 프레임 화상 데이터로부터 겉보기로 추출 화상 데이터를 추출하여 압축 부호화하여, 얻어진 부호화 비트 스트림(BS2)을 외부에 출력할 수 있도록 이루어져 있다.
여기에서, 이 동화상 부호화 장치(70)의 프레임 레이트 변경 처리부(61)와 움직임 벡터 검출 처리부(71)와 압축 부호화부(72)와 마스크 화상 처리부(73)에 의한 동화상 데이터(D1)의 압축 부호화 처리순서에 대해 통합하여 보면, 도 13a 및 도 14a의 대응부분에 동일부호가 부여된 도 21a 및 도 22a에 도시한 바와 같이, 우선 움직임 벡터 검출 처리부(71)는, 루틴(RT6)의 개시 단계로부터 들어와 단계(SP51)로 이행한다.
단계(SP51)에 있어서 움직임 벡터 검출 처리부(71)는, 간이 움직임 벡터 검출회로(74)에 의해 입력용 프레임 메모리(32)로부터 선두의 제1 프레임 화상 데이터 이외의 제1 및 제2 프레임 화상 데이터를 순차적으로 제1 및 제2 매크로 블록 데이터(D2 및 D4) 단위로 판독하는 동시에, 상기 제1 및 제2 프레임 화상 데이터에 대한 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 판독하고, 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 1 프레임분의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)를 검출하고, 이것을 간이 움직임 벡터 버퍼(75)에 축적하여 단계(SP32)로 이행한다.
단계(SP32)에 있어서 움직임 벡터 검출 처리부(71)는, 간이 움직임 벡터 검출기(74)에 의해 프레임간 상관치(SH2)를 산출하여 프레임 구조 변환기(62)에 송출한 후에 단계(SP33)로 이행한다.
단계(SP33)에 있어서 움직임 벡터 검출 처리부(71)는 움직임 벡터 검출기(91)에 의해 입력용 프레임 메모리(32)에 대한 연산기(38)의 액세스의 유무를 감시하여 제1 및 제2 프레임 화상 데이터의 압축 부호화가 시작되었는지 여부를 판단하여, 제1 및 제2 프레임 화상 데이터의 압축 부호화가 시작되지 않으면, 단계(SP51)로 되돌아간다.
따라서, 움직임 벡터 검출 처리부(71)는 제1 및 제2 프레임 화상 데이터의 압축 부호화가 시작되기까지의 사이에는 단계(SP51-SP32-SP33)의 처리를 순환적으로 반복함으로써 순차적으로 제1 및 제2 프레임 화상 데이터에서의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)를 검출하는 동시에, 프레임간 상관치(SH2)를 산출한다.
이 때 도 21b 및 도 22b에 도시한 바와 같이, 마스크 화상 처리부(73)는, 루틴(RT7)의 개시 단계로부터 들어와 단계(SP61)로 이행하여, 외부에서 공급되는 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터 단위로 취입, 형상 지정 데이터(D35)에 따라 선두의 프레임 화상 데이터에 대하여 추출 화상의 초기위치 및 임의의 형상을 특정한 마스크 화상 데이터(D36)를 생성하여 마스크용 프레임 메모리(90)에 축적하여 단계(SP62)로 이행한다.
단계(SP62)에 있어서 마스크 화상 처리부(73)는, 예를 들면 마스크용 프레임 메모리(90)에 대한 움직임 벡터 검출기(91)의 액세스의 유무를 감시하여 제1 및 제2 프레임 화상 데이터의 압축 부호화가 시작되었는지 여부를 판단하여, 상기 제1 및 제2 프레임 화상 데이터의 압축 부호화가 시작되지 않았으면, 단계(SP61)로 되 돌아간다.
따라서, 마스크 화상 처리부(73)는, 제1 및 제2 프레임 화상 데이터의 압축 부호화가 시작되기까지의 사이에는 단계(SP61-SP62)의 처리를 순환적으로 반복함으로써 2 프레임 째 이후의 프레임 화상 데이터에 대하여 간이 움직임 벡터 버퍼(75)로부터 판독한 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)를 이용하여 순차적으로 추출 화상을 추적하면서 이들 각 프레임 화상 데이터에 대하여 추출 화상의 이동위치 및 임의의 형상을 나타내는 마스크 화상 데이터(D36)를 생성하여 마스크용 프레임 메모리(90)에 축적한다.
이후에 압축 부호화부(72)에 의해 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되면, 움직임 벡터 검출 처리부(71)는 단계(SP33)로부터 단계(SP34)로 이행하여, 도 13a 및 도 14a에 대해 상술한 경우와 같이 단계(SP34-SP35-SP36)의 처리를 순차적으로 실행하여 단계(SP52)로 이행한다.
단계(SP52)에 있어서 움직임 벡터 검출 처리부(71)는 움직임 벡터 검출기(91)에 의해 입력용 프레임 메모리(32)로부터 부호화 대상인 제2 프레임 화상 데이터를 순차적으로 제2 매크로 블록 데이터(D4)단위로 판독하는 동시에 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 판독하고, 또 마스크용 프레임 메모리(90)로부터 대응하는 마스크 화상 데이터(D36)를 판독함으로써 상기 판독한 마스크 화상 데이터(D36)에 따라 각 제2 매크로 블록 데이터(D4)중 임의의 형상의 추출 화상의 에지 부분(81A)보다 외측 및 내측 및 상기 에지 부분(81A)에 걸친 것을 각각 판별한 후에 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 그 판 별결과에 따라서 각 제2 매크로 블록 데이터(D4)의 원화상 레벨의 움직임 벡터(D26 및 D37)를 검출하여 단계(SP38)로 이행한다.
단계(SP38)에 있어서 움직임 벡터 검출 처리부(71)는, 간이 움직임 벡터 검출기(74)에 의해 2 프레임 째 이후의 모든 제1 및 제2 프레임 화상 데이터에서의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)를 검출하였는지 여부를 판단하여, 상기 2 프레임 째 이후의 모든 제1 및 제2 프레임 화상 데이터에서의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)를 검출하지 않았으면, 단계(SP51)로 되돌아간다.
따라서, 움직임 벡터 검출 처리부(71)는, 입력용 프레임 메모리(32)에 간이 움직임 벡터(D24 및 D31)를 검출할 제1 및 제2 프레임 화상 데이터가 받아들여지고 있는 사이에는 단계(SP51-SP32-SP33-SP34-SP35-SP36-SP52-SP38)의 처리를 순환적으로 반복함으로써 입력용 프레임 메모리(32)에 받아들여지고 있는 2 프레임 째 이후의 제1 및 제2 프레임 화상 데이터에 대하여 순차적으로 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)를 검출하여, 또한 프레임간 상관치(SH2)를 순차적으로 산출하면서, 상기 제2 매크로 블록 데이터(D4)의 움직임 벡터 (D26, D37)를 검출한다.
한편, 압축 부호화부(72)에 의해 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대한 압축 부호화가 시작되면, 마스크 화상 처리부(73)는, 단계(SP62)로부터 단계(SP63)로 이행하여, 마스크 화상 부호화기(94)에 의해 마스크용 프레임 메모리(90)로부터 마스크 화상 데이터(D36)를 판독하여 압축 부호화하여, 얻어진 부 호화 데이터(D40)를 국부 복호기(95) 및 버퍼(96)에 송출하여 단계(SP64)로 이행한다.
단계(SP64)에 있어서 마스크 화상 처리부(73)는, 국부 복호기(95)에 의해 부호화 데이터(D40)를 복호화하여, 얻어진 마스크 화상 데이터(D41)를 참조용 프레임 메모리(97)에 축적하여 단계(SP65)로 이행한다.
단계(SP65)에 있어서 마스크 화상 처리부(73)는, 마스크 화상 생성기(77)에 의해, 외부에서 공급된 모든 프레임 화상 데이터로부터 추출 화상을 추적하면서 마스크 화상 데이터(D36)를 생성하였는지 여부를 판단하여, 모든 프레임 화상 데이터로부터 추출 화상을 추적하면서 마스크 화상 데이터(D36)를 생성하지 않았으면, 단계(SP61)로 되돌아간다.
따라서, 마스크 화상 처리부(73)는, 모든 프레임 화상 데이터로부터 추출 화상의 이동위치 및 임의의 형상을 나타내는 마스크 화상 데이터(D36)를 생성하기까지의 사이에는 단계(SP61-SP62-SP63-SP64-SP65)의 처리를 순환적으로 반복함으로써 프레임 화상 데이터로부터 순차적으로 추적한 추출 화상에 따라 마스크 화상 데이터(D36)를 생성하여 마스크용 프레임 메모리(90)에 축적하면서, 상기 축적한 마스크 화상 데이터(D36)를 순차적으로 압축 부호화한다.
또, 도 13b와의 대응부분에 동일부호가 부여된 도 23c에 도시한 바와 같이, 압축 부호화부(72)는, 루틴(RT8)의 개시 단계로부터 들어와 단계(SP11)로 이행하여, 부호화 대상인 제1 및 제2 프레임 화상 데이터에 대하여 압축 부호화를 개시함으로써 단계(SP71)로 이행한다.
단계(SP71)에 있어서 압축 부호화부(72)는 연산기(38)에 의해 입력용 프레임 메모리(32)로부터 제1 및 제2 프레임 화상 데이터를 순차적으로 제1 및 제2 매크로 블록 데이터(D2 및 D4) 단위로 판독하고, 상기 판독한 제1 및 제2 매크로 블록 데이터(D2 및 D4)에 대하여 이산 코사인 변환기(98)에 의해 마스크 화상 데이터(D41)에 따라 화소치의 변경처리를 실시함으로써 겉보기로 추출 화상 데이터를 추출한 후에 프레임내 부호화 또는 움직임 벡터(D26 및 D37)를 이용한 순방향 예측 부호화에 의해 압축 부호화하여, 얻어진 부호화 데이터(D45 및 D48)를 버퍼(96)에 축적하여 단계(SP72)로 이행한다.
단계(SP72)에 있어서 압축 부호화부(72)는, 버퍼(96)에 의해 제1 및 제2 프레임 화상 데이터를 압축 부호화하여 얻어진 부호화 데이터(D45 및 D48)를, 마스크 화상 처리부(73)로부터 마스크 화상 데이터(D36)를 압축 부호화하여 부여된 부호화 데이터(D40)와 함께 부호화 비트 스트림(BS2)으로서 외부에 출력하여 단계(SP14)로 이행한다.
단계(SP14)에 있어서 압축 부호화부(72)는 연산기(38)에 의한 입력용 프레임 메모리(32)로부터의 제1 및 제2 프레임 화상 데이터의 판독 상황에 따라서 부호화 대상인 제1 및 제2 프레임 화상 데이터를 모두 압축 부호화하였는지 여부를 판단하여, 상기 부호화 대상인 제1 및 제2 프레임 화상 데이터를 모두 압축 부호화하지 않았으면, 단계(SP71)로 되돌아간다.
따라서, 압축 부호화부(72)는, 부호화 대상인 제1 및 제2 프레임 화상 데이터를 모두 압축 부호화하기 까지의 사이에는 단계(SP71-SP72-SP14)의 처리를 순환 적으로 반복함으로써 상기 부호화 대상인 제1 프레임 화상 데이터를 겉보기로 추출 화상 데이터를 추출하여 프레임내 부호화에 의해 압축 부호화하는 동시에, 부호화 대상인 제2 프레임 화상 데이터를 겉보기로 추출 화상 데이터를 추출하여 움직임 벡터(D26 및 D37)를 이용한 순방향 예측 부호화에 의해 압축 부호화하여, 얻어진 부호화 데이터(D45 및 D48)를 마스크 화상 데이터(D36)의 부호화 데이터(D40)와 함께 부호화 비트 스트림(BS2)으로서 출력한다.
그리고, 단계(SP38)에 있어서 움직임 벡터 검출 처리부(71)는, 간이 움직임 벡터 검출기(74)에 의해, 2 프레임 째 이후의 모든 제1 및 제2 프레임 화상 데이터에서의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)를 검출하면, 단계(SP8)로 이행한다.
단계(SP8)에 있어서 움직임 벡터 검출 처리부(71)는 움직임 벡터 검출기(91)에 의해 입력용 프레임 메모리(32)에 대한 연산기(38)의 액세스의 유무를 감시함으로써 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되었는지 여부를 판단하여, 상기 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되지 않았으면, 단계(SP34)로 되돌아간다.
따라서, 움직임 벡터 검출 처리부(71)는, 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되기까지의 사이에는 단계(SP34-SP35-SP36-SP52-SP38-SP8)의 처리를 순환적으로 반복함으로써 부호화 대상인 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26 및 D37)를 순차적으로 검출한다.
이렇게 하여 움직임 벡터 검출 처리부(71)는, 단계(SP8)에 있어서 부호화 대상인 제1 및 제2 프레임 화상 데이터가 모두 압축 부호화되었다고 판단하고 단계(SP53)로 이행하여 상기 움직임 벡터 검출 처리부(71)의 처리순서를 종료한다.
또, 단계(SP65)에 있어서 마스크 화상 처리부(73)는, 마스크 화상 생성기(77)에 의해 모든 프레임 화상 데이터로부터 순차적으로 추출 화상을 추적하면서 마스크 화상 데이터(D36)를 생성하면, 단계(SP66)로 이행한다.
단계(SP66)에 있어서 마스크 화상 처리부(73)는, 마스크 화상 부호화부(94)에 의해 마스크용 프레임 메모리(90) 내의 모든 마스크 화상 데이터(D36)를 압축 부호화하였는지 여부를 판단하여, 상기 모든 마스크 화상 데이터(D36)를 압축 부호화하지 않았으면, 단계(SP62)로 되돌아간다.
따라서, 마스크 화상 처리부(73)는, 마스크용 프레임 메모리(90) 내의 모든 마스크 화상 데이터(D36)를 압축 부호화하기까지의 사이에는 단계(SP62-SP63-SP64-SP65-SP66)의 처리를 순환적으로 반복함으로써 마스크용 프레임 메모리(90) 내의 마스크 화상 데이터(D36)를 순차적으로 압축 부호화하여, 얻어진 부호화 데이터(D40)를 국부 복호기(95) 및 버퍼(96)에 송출한다.
그리고, 단계(SP66)에 있어서 마스크 화상 처리부(73)는, 마스크용 프레임 메모리(90) 내의 모든 마스크 화상 데이터(D36)를 압축 부호화하였다고 판단하면, 단계(SP67)로 이행하여, 상기 마스크 화상 처리부(73)의 처리순서를 종료한다.
또한, 단계(SP14)에 있어서 압축 부호화부(72)는, 부호화 대상인 제1 및 제2 프레임 화상 데이터를 모두 압축 부호화하였다고 판단하면, 단계(SP73)로 이행하여 상기 압축 부호화부(72)의 처리순서를 종료하여, 이렇게 하여 동화상 부호화장치(70)에서의 동화상 데이터(D1)의 압축 부호화 처리순서를 모두 종료한다.
이상의 구성에 있어서, 이 동화상 부호화 장치(70)로서는, 외부에서 공급되는 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터 단위로 입력용 프레임 메모리(32)에 취입, 간이 움직임 벡터 검출기(74)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 제1 및 제2 프레임 화상 데이터에서의 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)를 검출한다.
또, 이 동화상 부호화 장치(70)에서는, 외부에서 공급되는 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터 단위로 마스크 화상 생성기(77)에도 취입, 상기 마스크 화상 생성기(77)에 의해 선두의 프레임 화상 데이터에 대하여 초기위치 및 임의의 형상이 지정된 추출 화상 데이터를 각 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)를 이용하여 2 프레임 째 이후의 프레임 화상 데이터에 대해 순차적으로 추적하면서 상기 프레임 화상 데이터마다 추출 화상 데이터의 이동위치 및 임의의 형상을 나타내는 마스크 화상 데이터(D36)를 생성하다.
그리고, 이 동화상 부호화 장치(70)에서는, 압축 부호화부(72)에 의해 부호화 대상인 제1 및 제2 프레임 화상 데이터를 압축 부호화할 때에 움직임 벡터 검출기(91)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 간이 움직임 벡터(D24) 및 마스크 화상 데이터(D36)에 따라 추출 화상 데이터의 내부 및 에지 부분(81A)에 걸쳐 제2 매크로 블록 데이터(D4)만의 원화상 레벨의 움직임 벡터(D26 및 D37)를 검출한다.
이렇게 하여 동화상 부호화 장치(70)에서는, 프레임 레이트 변경 처리부(61)에 의해 동화상 데이터(D1)의 프레임 레이트를 적절히 변경하면서 압축 부호화부(72)에 의해 마스크 화상 데이터(D41)에 따라 제1 프레임 화상 데이터를 겉보기로 추출 화상 데이터를 추출하여 프레임내 부호화에 의해 압축 부호화하는 동시에, 원화상 레벨의 움직임 벡터(D26 및 D37) 및 마스크 화상 데이터(D41)에 따라 제2 프레임 화상 데이터도 겉보기로 추출 화상 데이터를 추출하여 순방향 예측 부호화에 의해 압축 부호화하고, 또 마스크 화상 부호화기(94)에 의해 마스크 화상 데이터(D36)를 순차적으로 압축 부호화하고, 얻어진 부호화 데이터(D45 및 D48 및 D40)를 버퍼(96)에 일단 축적하여 부호화 비트 스트림(BS2)으로서 외부에 출력하도록 했다.
따라서, 이 동화상 부호화 장치(70)에서는, 동화상 데이터(D1)의 프레임 레이트의 변경에 더하여, 상기 동화상 데이터(D1)를 프레임 화상 데이터로부터 순차적으로 추출 화상 데이터를 추출하여 압축 부호화하기 위해, 상술한 제1 및 제2 실시예에 의해서 얻어지는 효과에 더하여, 상술한 제1 및 제2 실시예에 의한 동화상 부호화 장치(30 및 60)(도 2 및 도 10)에 비해 단위 시간당에 압축 부호화할 부호화 대상인 데이터량을 대폭 줄일 수 있고, 이렇게 하여 추출 화상 데이터에 대한 압축률을 각별히 저감시켜 유저에게 제공하는 추출 화상을 고화질화할 수 있다.
이것에 더하여 이 동화상 부호화장치(70)에서는, 간이 움직임 벡터 검출기(74) 및 움직임 벡터 검출기(91)에 의해 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 움직임 벡터를 계층적으로 검출하여, 하층 측 제2 계층에서 검출한 간이 움직임 벡터(D24 및 D31)를 제1 및 제2 프레임 화상 데이터에 대한 추출 화상 데이터의 추적과, 상기 추출 화상 데이터의 압축 부호화에 이용하는 상층 측 제1 계층(원화상 레벨)에서의 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26 및 D37)의 검출에 공유하고 이를 이용하기 때문에, 추출 화상 데이터의 추적 및 압축 부호화에 대하여 각각 개별적으로 움직임 벡터를 1 계층에서 직접 검출하는 경우에 비해 움직임 벡터 검출시의 연산량을 각별히 저감시킬 수 있다.
또, 이 동화상 부호화 장치(70)에서는, 움직임 벡터의 검출에 계층 서치 움직임 벡터 검출방식을 이용하기 때문에, 상술한 제2 실시예로부터 명확히 나타난 바와 같이, 움직임 벡터를 1 계층에서 직접 검출하는 경우에 비해서도 움직임 벡터 검출시의 연산량을 각별히 저감시킬 수 있다.
또, 이 동화상 부호화 장치(70)에서는, 움직임 벡터 검출기(91)에 의해 마스크 화상 데이터(D36)에 따라 제2 프레임 화상 데이터의 각 제2 매크로 블록 데이터(D4) 중 추출 화상 데이터의 에지 부분(81A) 및 이것보다 내측에 위치하는 제2 매크로 블록 데이터(D4)에 대해서만 최종적인 원화상 레벨의 움직임 벡터(D26 및 D37)를 검출하기 때문에, 움직임 벡터 검출시의 연산량을 더욱 저감시킬 수 있다.
그리고, 이 동화상 부호화 장치(70)에서는, 움직임 벡터 검출기(91)에 의해 추출 화상 데이터의 에지 부분(81A)에 걸친 제2 매크로 블록 데이터(D4)에 관해서 는 특히 상기 에지 부분(81A)보다 내측의 화소만을 이용하여 움직임 벡터(D37)를 검출하기 때문에, 추출 화상 데이터의 압축 부호화에 이용하는 상기 움직임 벡터(D37)의 검출 정밀도를 각별히 향상시킬 수 있다.
또한, 이 동화상 부호화 장치(70)에서는, 제1 및 제2 프레임 화상 데이터에 대한 추출 화상 데이터의 추적에 간이 움직임 벡터(D24 및 D31)를 이용하지만, 이때 라인 매칭법도 합쳐서 이용하기 때문에 추적화상 데이터의 추적 정밀도를 향상시킬 수 있다.
이상의 구성에 의하면, 간이 움직임 벡터 검출기(74)에 의해 제1 및 제2 매크로 블록 데이터(D2 및 D4)에 대한 하층의 간이 움직임 벡터(D24 및 D31)를 검출하여, 상기 검출한 간이 움직임 벡터(D24 및 D31)를 공유하여 마스크 화상 생성기(77)에 의해 제1 및 제2 프레임 화상 데이터에 대하여 추출 화상 데이터를 추적하여 마스크 화상 데이터(D36)를 생성하는 동시에, 움직임 벡터 검출기(91)에 의해 추출 화상 데이터의 압축 부호화용으로 제2 매크로 블록 데이터(D4)의 상층의 움직임 벡터(D26 및 D37)를 검출하도록 한 것에 의해, 움직임 벡터 검출시의 연산량을 각별히 저감시킬 수 있어, 이렇게 하여 임의의 형상의 추출 화상 데이터에 대한 압축 부호화처리를 고속화할 수 있는 동화상 부호화 장치를 실현할 수 있다.
또, 상술한 제3 실시예에서는, 도 15에 대해 전술한 바와 같이 외부에서 공급된 동화상 데이터(D1)를 순차적으로 프레임 화상 데이터 단위로 입력용 프레임 메모리(32)에 취입, 상기 입력용 프레임 메모리(32)에 받아들인 프레임 화상 데이터에 I 픽쳐 및 P 픽쳐를 소정의 순서대로 할당하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 도 8a 및 도8b 및 도 9a 내지 도 9c에 대해 전술한 바와 같이, 입력용 프레임 메모리(32)에 받아들인 프레임 화상 데이터에 I픽쳐, P 픽쳐 및 B 픽쳐를 할당하도록 할 수도 있다.
또, 상술한 제3 실시예에서는, 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 부호화 대상인 제2 프레임 화상 데이터에 새로운 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 할당했을 때에 움직임 벡터 검출기(91)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제1 계층 및 제2 계층에서, 각 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24) 및 원화상 레벨의 움직임 벡터(D26 및 D37)를 순차적으로 검출하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 부호화 대상인 제2 프레임 화상 데이터에 새로운 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 할당했을 때에, 간이 움직임 벡터 검출기(74)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 부호화 대상인 제2 프레임화상 데이터 및 새로운 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 이용하여 각 제2 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)를 검출하는 동시에, 움직임 벡터 검출기(91)에 의해 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 상기 제2 매크로 블록 데이터(D4)의 원화상 레벨의 움직임 벡터(D26 및 D37)를 검출하도록 할 수도 있다. 이와 같이하면, 프레임 레이트의 변경에 따르는 움직임 벡터의 재검출 때에 움직임 벡터 검출기(91)의 처리부하를 대폭 저감시킬 수 있다.
이것에 더하여 동화상 데이터(D1)의 프레임 레이트의 변경에 따라 부호화 대 상인 제2 프레임 화상 데이터에 새로운 참조용 제1 또는 제2 프레임 화상 데이터(D6)를 할당했을 때에는, 상기 부호화 대상인 제2 프레임 화상 데이터에 대하여 간이 움직임 벡터(D24)의 검출 시에 참조용으로서 제2 프레임 화상 데이터(D6)(즉, 부호화 대상인 제2 프레임 화상 데이터에 순방향측에서 인접하는 제2 프레임 화상 데이터)가 할당되어 있으면, 움직임 벡터 검출기(91)에 의해 그 부호화 대상인 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 미리 검출하고 있는 간이 움직임 벡터(D24)를 상기 간이 움직임 벡터(D24)의 검출 시에 참조용으로 되어있었던 제2 프레임 화상 데이터(D6)에서의 각 매크로 블록 데이터(D4)의 간이 움직임 벡터(D24)와 합성하여, 얻어진 합성간이 움직임 벡터를 이용하여 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 예를 들면 텔레스코픽 서치법을 이용하여 상기 부호화 대상인 제2 프레임 화상 데이터에서의 각 제2 매크로 블록 데이터(D4)의 원화상 레벨의 움직임 벡터(D26 및 D37)를 검출하도록 할 수도 있다. 이렇게 하여도 프레임 레이트의 변경에 따르는 움직임 벡터의 재검출 시에 움직임 벡터 검출기(91)의 처리부하를 대폭 저감시킬 수 있다.
또, 이러한 간이 움직임 벡터(D24)의 합성을 간이 움직임 벡터 검출기(74)에 의해서 실행하면, 움직임 벡터 검출기(91)의 처리부하를 저감시키는 것도 할 수 있다.
또한, 상술한 제3 실시예에서는, 제2 프레임 화상 데이터의 각 제2 매크로 블록 데이터(D4)를 순방향 예측 부호화에 의해 압축 부호화하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 각 제2 매크로 블록 데이터(D4)의 분산치를 이용하여 프레임내 부호화 및 순방향 예측 부호화의 어느 것으로 압축 부호화하도록 할 수도 있다.
또한, 상술한 제3 실시예에서는, 움직임 벡터 검출기(91)에 의해, 입력용 프레임 메모리(32)로부터 판독한 참조용 제1 및 제2 프레임 화상 데이터(D6)를 이용하여 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26 및 D37)를 검출하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 움직임 벡터 검출기(91)에 의해 참조용 프레임 메모리(97)로부터 참조용 제1 및 제2 프레임 화상 데이터를 판독하여 각 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26 및 D37)를 검출하도록 할 수도 있다. 이와 같이 하면 움직임 벡터(D26 및 D37)의 검출에, 일단 압축 부호화한 후에 복호화하고 재구축함으로써 그 압축 부호화에 따라서 발생한 블록 노이즈 등을 가진 제1 및 제2 프레임 화상 데이터를 이용할 수 있어, 상기 움직임 벡터(D26 및 D37)의 검출 정밀도를 향상시킬 수 있다.
더욱이, 상술한 제3 실시예에서는, 제2 매크로 블록 데이터(D4)의 움직임 벡터(D26 및 D37)의 검출에 제1 계층 및 제2 계층의 2 계층으로 이루어지는 계층 서치 움직임 벡터 검출 방식을 이용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 제2 매크로 블록 데이터(D4)의 움직임 벡터의 검출에 서로 다른 해상도의 프레임화상을 이용하는 3 계층 이상의 계층 서치 움직임 벡터 검출방식을 이용하도록 할 수도 있다.
또한, 상술한 제3 실시예에서는, 간이 움직임 벡터 검출기(74)에 의해 간이 움직임 벡터 버퍼(75)에 간이 움직임 벡터(D24 및 D31)와, 예측 모드 데이터(D3, D20 및 D30)를 축적하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 간이 움직임 벡터 검출기(74)에 의해 간이 움직임 벡터 버퍼(75)에 간이 움직임 벡터(D24 및 D31)와, 예측 모드 데이터(D3, D20 및 D30)에 더하여 간이 움직임 벡터(D24 및 D31)의 검출 시에 산출한 예측오차도 축적하도록 할 수도 있다. 이와 같이 하면, 간이 움직임 벡터 검출기(74)에 의해 제1 및 제2 매크로 블록 데이터(D2 및 D4)의 간이 움직임 벡터(D24 및 D31)의 재검출을 실행할 때에 그 예측오차를 이용하여 서치 범위를 정확하게 선정하거나, 또는 마스크 화상 생성기(77)에 의해 인접하는 프레임 화상 데이터 간에서 추적영역(84A 및 84B) 끼리를 라인 매칭법에 의해서 비교할 때의 서치 범위도 정확하게 선정할 수 있어, 이렇게 하여 간이 움직임 벡터(D24 및 D31)의 재검출 및 추출 화상의 추적의 정밀도를 향상시킬 수 있다.
또한, 상술한 제3 실시예에서는, 마스크 화상 생성기(77)에 대하여 형상 지정 데이터(D35)에 의해 추출 화상의 초기위치 및 임의의 형상을 지정하도록 한 경우에 대하여 설명했지만, 본 발명은 이것에 한정되지 않고, 도 25에 도시한 바와 같이, 마스크 화상 생성기(77)에 대하여 프레임 화상(100) 내에서 인물 등의 추출 화상(101)의 임의의 점을 지정함으로써 상기 추출 화상(101)의 에지(102)를 자동으로 검출하여 임의의 형상을 특정하거나, 또는 마스크 화상 생성기(77)에 의해 프레임 화상 내에서 자동적으로 여러 가지 그림의 에지를 검출하여 추출 화상 및 그 임의의 형상을 특정하도록 할 수도 있다.
또한, 상술한 제3 실시예에서는, 상술한 도 16으로부터도 명확히 나타난 바 와 같이 추출 화상의 임의의 형상으로서 초생달형의 형상을 지정하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 그림의 에지로 되는 임의의 형상이나, 타원형, 별 모양 및 동그라미 모양 등과 같이, 이밖에 여러 가지 형상을 추출 화상의 임의의 형상으로서 지정하도록 할 수도 있다.
또한, 상술한 제3 실시예에서는, 버퍼(96)의 데이터 축적량(DR) 및 부호화 예측 데이터량에 따라서 동화상 데이터(D1)의 프레임 레이트를 변경하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 버퍼(96)의 데이터 축적량(DR)에 따라서 동화상 데이터(D1)의 프레임 레이트를 변경하도록 할 수도 있다. 이렇게 하여 프레임 레이트를 변경하더라도 데이터 축적량(DR)이 급격한 증감에 정확하게 대처하여 동화상의 화질을 안정화시킬 수 있다.
(5) 다른 실시예
또, 상술한 제1 내지 제3 실시예에서는, 본 발명에 의한 동화상 부호화 장치로서, 도 2내지 도 25에 대해 상술한 동화상 부호화 장치(30, 60 및 70)을 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, MPEG2방식 등의 압축 부호화 방식이 적용된 동화상 부호화 장치나 비디오 카메라로부터 공급되는 동화상 데이터(D1) 대신에 외부 또는 내부에 미리 기억하고 있는 동화상 데이터를 압축 부호화 처리하는 동화상 부호화 장치, 그 위에 비디오 카메라로부터 공급되어 또는 미리 기억하고 있는 동화상 데이터로부터 추출 화상 데이터를 추출하여 압축 부호화 처리하는 동화상 부호화 장치 등과 같이, 동화상 데이터를 단순히 압축 부호화 처리하고, 또는 동화상 데이터로부터 추출 화상 데이터를 추출하여 압축 부호화 처리할 수 있는 것이면, 개인용 컴퓨터나 휴대형 전화기, PDA(Personal Digital Assistance) 등의 전자 기기와 같이, 이밖에 여러 가지 동화상 부호화 장치에 넓게 적용할 수 있다.
또, 본 발명에 의한 동화상 부호화 장치를 개인용 컴퓨터나 휴대전화기, PDA 등의 전자기기에 적용하는 경우에는, 상기 전자기기에 도 2 및 도 10에 대해 상술한 각 회로블록을 하드웨어로서 설치하도록 하더라도 좋고, 그 전자기기에 하드웨어 대신 도 6a 내지 도 6c, 도 7a 및 도 7c와, 도 13a 내지 도 13c, 도 14a 및 도 14c와, 도 21a 및 도 21b, 도 22a 및 도 22b, 도 23c 및 도 23d, 도 24d에 대하여 상술한 동화상 데이터(D1)의 압축 부호화 처리순서를 실행하기 위한 프로그램을 설치하고, 상기 프로그램에 따라서 소프트웨어 처리로서 동화상 데이터(D1)의 압축 부호화 처리순서를 실행하더라도 본 발명을 실현할 수 있다.
그리고, 이와 같이 전자기기에 도 6a 내지 도 6c, 도 7a 및 도 7c와, 도 13a 내지 도 13c, 도 14a 및 도 14c와, 도 21a 및 도 21b, 도 22a 및 도 22b, 도 23c 및 도23d, 도 24d에 대하여 상술한 동화상 데이터(D1)의 압축 부호화 처리순서를 실행하기 위한 프로그램을 설치하는 데에는, 상기 프로그램이 격납된 프로그램 격납 매체를 이용할 수도 있고, 근거리 통신망이나 인터넷 디지털 위성방송 등의 유선 및 무선 통신매체를 이용할 수도 있고, 그 위에 루터(rooter)나 모뎀 등의 각종 통신 인터페이스를 통하여 설치하도록 할 수도 있다.
또, 전자기기에 프로그램을 설치하여 실행가능한 상태로 하기 위한 프로그램 격납 매체로서는, 예를 들면 플로피 디스크, CD-ROM(Compact Disc-Read Only Memory), DVD(D1gital Versatile Disc) 등의 패키지 미디어 뿐 아니라, 프로그램이 일시적 또는 영속적으로 격납되는 반도체 메모리나 자기 디스크 등으로 실현할 수도 있다. 또, 이들 프로그램 격납 매체에 프로그램을 격납하는 수단으로는, 근거리 통신망이나 인터넷, 디지털 위성방송 등의 유선 및 무선 통신매체를 이용할 수도 있으며, 루터나 모뎀 등의 각종 통신 인터페이스를 통하여 격납하도록 할 수도 있다.
또한, 상술한 제1 내지 제3 실시예에서는, 동화상 데이터를 순차적으로 프레임 화상 데이터 단위로 압축 부호화하여 부호화 데이터를 생성하는 압축 부호화 수단으로서, 도 2 및 도 10 및 도 15에 대해 상술한 압축 부호화부(37 및 72)을 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 동화상 데이터를 순차적으로 프레임 화상 데이터 단위로 압축 부호화하여 부호화 데이터를 생성할 수 있으면, 이밖에 여러 가지 구성의 압축 부호화 수단을 넓게 적용할 수 있다.
또한, 상술한 제1 내지 제3 실시예에서는, 버퍼의 데이터 축적량에 따라서 동화상 데이터의 프레임 레이트를 변경하는 프레임 레이트 변경수단으로서, 도 2 및 도 10 및 도 15에 대해 상술한 프레임 구조 변환기(33 및 62)를 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 버퍼의 데이터 축적량에 따라서 동화상 데이터의 프레임 레이트를 변경할 수 있으면, 이밖에 여러 가지 프레임 레이트 변경수단을 넓게 적용할 수 있다
또한, 상술한 제1 내지 제3 실시예에서는, 프레임 화상 데이터 간의 움직임 벡터를 검출하는 동시에, 상기 움직임 벡터의 검출에 따라 프레임 화상 데이터 간의 상관치를 산출하는 움직임 벡터 검출 수단으로서, 도 2에 대해 상술한 블록 매칭법에 의해 움직임 벡터(D24)를 검출하는 움직임 벡터 검출기(35)를 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 프레임 화상 데이터 간의 움직임 벡터를 검출하는 동시에, 상기 움직임 벡터의 검출에 따라 프레임 화상 데이터 간의 상관치를 산출할 수 있으면, 옵티컬 플로에 의해 움직임 벡터를 검출하는 움직임 벡터 검출수단 등과 같이, 이밖에 여러 가지 움직임 벡터 검출수단을 넓게 적용할 수 있다.
또한, 상술한 제1 내지 제3 실시예에서는, 소정의 계층보다 하층의 1 또는 복수의 아래 계층에서 프레임 화상 데이터 간의 간이 움직임 벡터를 검출하는 하층 움직임 벡터 검출수단으로서, 도 10 및 도 15에 대하여 상술한 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 간이 움직임 벡터(D24 및 D31)를 검출하는 간이 움직임 벡터 검출기(64 및 74)를 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 소정의 계층보다 하층의 1 또는 복수의 아래 계층에서 프레임 화상 데이터 간의 간이 움직임 벡터를 검출할 수 있으면, 소정의 계층보다 하층의 복수 계층에서 단계적으로 순차적으로 저해상도 움직임 벡터를 검출하여 최종적으로 간이 움직임 벡터를 검출하는 하층 움직임 벡터 검출수단 등과 같이, 이밖에 여러 가지 하층 움직임 벡터 검출수단을 넓게 적용할 수 있다.
또한, 상술한 제1 내지 제3 실시예에서는, 소정의 계층 이상의 1 또는 복수의 위 계층에서 간이 움직임 벡터를 이용하여 움직임 벡터를 검출하는 상층 움직임 벡터 검출수단으로서, 도 10 및 도 15에 대해 상술한 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 원화상 레벨의 움직임 벡터(D26 및 D37)를 검출하는 움직임 벡터 검출기(66 및 91)을 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 소정의 계층 이상의 1 또는 복수의 위 계층에서 간이 움직임 벡터를 이용하여 움직임 벡터를 검출할 수 있으면, 간이 움직임 벡터를 이용하고 복수 계층의 저해상도 움직임 벡터를 단계적으로 순차적으로 검출하여 최종적으로 원화상 레벨의 움직임 벡터를 검출하는 상층 움직임 벡터 검출수단과 같이, 이밖에 여러 가지 상층움직임 벡터 검출수단을 넓게 적용할 수 있다.
또한, 상술한 제1 내지 제3 실시예에서는, 동화상 데이터의 각 프레임 화상 데이터로부터 순차적으로 임의의 형상의 추출 화상 데이터를 추출하기 위한 마스크 화상 데이터를 생성하는 마스크 화상 데이터 생성 수단으로서, 도 15에 대해 상술한 제1 및 제2 프레임 화상 데이터에 대하여 추출 화상 데이터를 추적하면서 마스크 화상 데이터(D36)를 생성하는 마스크 화상 생성기(77)를 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 동화상 데이터의 각 프레임 화상 데이터로부터 순차적으로 임의의 형상의 추출 화상 데이터를 추출하기 위한 마스크 화상 데이터를 생성할 수 있으면, 추출 화상 데이터의 추적 처리를 행하지 않고 다른 회로 블록으로 실행된 추출 화상 데이터의 추적결과, 또는 외부에서 부여되는 추출 화상 데이터의 지정에 따라 마스크 화상 데이터를 생성하는 마스크 화상 데이터 생성 수단 등과 같이, 이밖에 여러 가지 마스크 화상 데이터 생성 수단을 넓게 적용할 수 있다.
또한, 상술한 제1 내지 제3 실시예에서는, 소정의 계층보다 하층의 1 또는 복수의 아래 계층에서 동화상 데이터의 연속하는 프레임 화상 데이터 간의 간이 움직임 벡터를 검출하는 하층 움직임 벡터 검출수단으로서, 도 15에 대해 상술한 계층 서치 움직임 벡터 검출방식에 의한 제2 계층에서 간이 움직임 벡터(D24 및 D31)를 검출하는 간이 움직임 벡터 검출기(74)를 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 소정의 계층보다 하층의 1 또는 복수의 아래 계층에서 동화상 데이터의 연속하는 프레임 화상 데이터 간의 간이 움직임 벡터를 검출할 수 있으면, 소정의 계층보다 하층의 복수 계층에서 단계적으로 순차적으로 저해상도 움직임 벡터를 검출하여 최종적으로 간이 움직임 벡터를 검출하는 하층 움직임 벡터 검출수단 등과 같이, 이밖에 여러 가지 하층 움직임 벡터 검출수단을 넓게 적용할 수 있다.
또한, 상술한 제1 내지 제3 실시예에서는, 간이 움직임 벡터를 이용하여 동화상 데이터의 연속하는 프레임 화상 데이터 내에서 임의의 형상의 추출 화상 데이터를 추적하는 추적수단으로서, 도 15에 대해 상술한 추출 화상 데이터를 추적하면서 마스크 화상 데이터를 생성하는 마스크 화상 생성기(77)를 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 간이 움직임 벡터를 이용하여 동화상 데이터의 연속하는 프레임 화상 데이터 내에서 임의의 형상의 추출 화상 데이터를 추적할 수 있으면, 마스크 화상 데이터의 생성 처리를 분리하여 추적 처리만을 실행하는 추적수단이나, 추출 화상 데이터의 추적 결과로서 상기 추출 화상 데이터의 추적 위치와 함께 추출 화상 데이터에 이러한 제1 및 제2 매크로 블록 데 이터를 화소단위로 판별한 결과를 출력하는 추적수단 등과 같이, 이밖에 여러 가지 추적수단을 넓게 적용할 수 있다.
또한, 상술한 제1 내지 제3 실시예에서는, 소정의 계층 이상의 1 또는 복수의 위 계층에서 간이 움직임 벡터를 공유하고 이를 이용하여 동화상 데이터의 연속하는 프레임 화상 데이터 간의 원화상 레벨의 움직임 벡터를 검출하는 상층 움직임 벡터 검출수단으로서, 도 15에 대해 상술한 계층 서치 움직임 벡터 검출방식에 의한 제1 계층에서 원화상 레벨의 움직임 벡터(D26 및 D37)를 검출하는 움직임 벡터 검출기(91)를 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 소정의 계층 이상의 1 또는 복수의 위 계층에서 간이 움직임 벡터를 공유하고 이를 이용하여 동화상 데이터의 연속하는 프레임 화상 데이터 간의간의 레벨의 움직임 벡터를 검출할 수 있으면, 간이 움직임 벡터를 이용하여 복수 계층의 저해상도 움직임 벡터를 단계적으로 순차적으로 검출하여 최종적으로 원화상 레벨의 움직임 벡터를 검출하는 상층 움직임 벡터 검출수단과 같이, 이밖에 여러 가지 상층움직임 벡터 검출수단을 넓게 적용할 수 있다.
또한, 상술한 제1 내지 제3 실시예에서는, 추출 화상 데이터의 추적결과에 따라 동화상 데이터의 연속하는 프레임 화상 데이터로부터 순차적으로 추출 화상 데이터를 추출하여, 상기 추출한 추출 화상 데이터를 움직임 벡터를 이용한 움직임 보상 예측 부호화에 의해 압축 부호화하는 압축 부호화 수단으로서, 도 15에 대하여 상술한 압축 부호화부(72)를 적용하도록 한 경우에 대해 설명했지만, 본 발명은 이것에 한정되지 않고, 추출 화상 데이터의 추적결과에 따라 동화상 데이터의 연속 하는 프레임 화상 데이터로부터 순차적으로 추출 화상 데이터를 추출하여, 상기 추출한 추출 화상 데이터를 움직임 벡터를 이용한 움직임 보상 예 측 부호화에 의해 압축 부호화할 수 있으면, 이밖에 여러 가지 구성의 압축 부호화 수단을 넓게 적용할 수 있다.
본 발명은, 인터넷을 이용하여 동화상 데이터를 송신하는 개인용 컴퓨터에 이용할 수 있다.

Claims (18)

  1. 동화상 데이터를 순차적으로 프레임 화상 데이터 단위로 압축 부호화하여 부호화 데이터를 생성하는 압축 부호화 수단과,
    상기 부호화 데이터를 일단 축적하여 출력하는 버퍼와,
    상기 버퍼의 데이터 축적량에 따라서 상기 동화상 데이터의 프레임 레이트(frame rate)를 변경하는 프레임 레이트 변경 수단과,
    상기 프레임 화상 데이터 간의 움직임 벡터를 검출하는 동시에, 움직임 벡터의 검출에 따라 상기 프레임 화상 데이터 간의 상관치(相關値)를 산출하는 움직임 벡터 검출 수단
    을 구비하고,
    상기 압축 부호화 수단은 상기 동화상 데이터를 순차적으로 상기 프레임 화상 데이터 단위로 상기 움직임 벡터를 이용한 움직임 보상 예측 부호화에 의해 압축 부호화하고,
    상기 프레임 레이트 변경 수단은 상기 프레임 화상 데이터 간의 상기 상관치에 기초하여 상기 부호화 데이터의 부호화 데이터량을 예측하고, 상기 예측된 부호화 데이터량과 상기 데이터 축적량에 따라서 상기 동화상 데이터의 상기 프레임 레이트를 변경하며,
    상기 움직임 벡터 검출 수단은 상기 프레임 레이트의 변경에 의해 상기 동화상 데이터로부터 상기 프레임 화상 데이터가 솎아내어지면(decimation), 상기 솎아내어진 프레임 화상 데이터를 참조용으로 하여 움직임 벡터를 검출한 다른 상기 프레임 화상 데이터에 대하여 새로운 상기 프레임 화상 데이터를 참조용으로 할당하여 움직임 벡터를 재검출하는,
    동화상 부호화 장치.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 움직임 벡터 검출 수단은 상기 프레임 레이트의 변경에 의해 솎아내어진 상기 프레임 화상 데이터의 움직임 벡터와, 상기 솎아내어진 프레임 화상 데이터를 참조용으로 한 상기 다른 프레임 화상 데이터의 움직임 벡터를 이용하여 상기 다른 프레임 화상 데이터 및 상기 새로운 참조용의 프레임 화상 데이터 간의 움직임 벡터를 재검출하는, 동화상 부호화 장치.
  5. 제1항에 있어서,
    상기 움직임 벡터 검출 수단은
    소정 계층보다 하층의 1개 또는 복수의 하부 계층에서 상기 프레임 화상 데이터 간의 간이 움직임 벡터를 검출하는 하층 움직임 벡터 검출 수단과,
    상기 소정 계층 이상의 1개 또는 복수의 상부 계층에서 상기 간이 움직임 벡터를 이용하여 상기 움직임 벡터를 검출하는 상층 움직임 벡터 검출 수단
    을 구비하는 동화상 부호화 장치.
  6. 제5항에 있어서,
    상기 하층 움직임 벡터 검출 수단은 상기 프레임 레이트의 변경 전의 상기 동화상 데이터에 대하여 상기 움직임 벡터의 검출 대상이 되는 모든 상기 프레임 화상 데이터 간에서 상기 간이 움직임 벡터를 검출하고,
    상기 상층 움직임 벡터 검출 수단은 상기 프레임 레이트 변경에 따른 부호화 대상으로서 남아 있는 상기 프레임 화상 데이터 간에서만 상기 간이 움직임 벡터를 이용하여 상기 움직임 벡터를 검출하는, 동화상 부호화 장치.
  7. 제6항에 있어서,
    상기 하층 움직임 벡터 검출 수단은 상기 간이 움직임 벡터의 검출에 따라 상기 상관치를 산출하는, 동화상 부호화 장치.
  8. 제7항에 있어서,
    상기 동화상 데이터의 각 상기 프레임 화상 데이터로부터 순차적으로 임의의 형상의 추출 화상 데이터를 추출하기 위한 마스크 화상 데이터를 생성하는 마스크 화상 데이터 생성 수단을 더 구비하고,
    상기 압축 부호화 수단은 상기 마스크 화상 데이터에 기초하여 상기 프레임 화상 데이터로부터 상기 추출 화상 데이터를 추출하고, 상기 추출된 상기 추출 화상 데이터를 상기 움직임 벡터를 이용한 움직임 보상 예측 부호화에 의해 압축 부호화하여 상기 부호화 데이터를 생성하는, 동화상 부호화 장치.
  9. 동화상 데이터를 순차적으로 프레임 화상 데이터 단위로 압축 부호화하여 부호화 데이터를 생성하는 압축 부호화 단계와,
    상기 부호화 데이터를 버퍼에 일단 축적하여 출력하는 출력 단계와,
    상기 버퍼의 데이터 축적량에 따라 상기 동화상 데이터의 프레임 레이트를 변경하는 프레임 레이트 변경 단계와,
    상기 프레임 화상 데이터 간의 움직임 벡터를 검출하는 동시에, 상기 움직임 벡터의 검출에 따라 상기 프레임 화상 데이터 간의 상관치를 산출하는 움직임 벡터 검출 단계
    를 포함하고,
    상기 압축 부호화 단계는 상기 동화상 데이터를 순차적으로 상기 프레임 화상 데이터 단위로 상기 움직임 벡터를 이용한 움직임 보상 예측 부호화에 의해 압축 부호화하고,
    상기 프레임 레이트 변경 단계는 상기 프레임 화상 데이터 간의 상기 상관치에 기초하여 상기 부호화 데이터의 부호화 데이터량을 예측하고, 상기 예측된 부호화 데이터량과 상기 데이터 축적량에 따라서 상기 동화상 데이터의 상기 프레임 레이트를 변경하며,
    상기 움직임 벡터 검출 단계는 상기 프레임 레이트의 변경에 의해 상기 동화상 데이터로부터 상기 프레임 화상 데이터가 솎아내어지면(decimation), 상기 솎아내어진 프레임 화상 데이터를 참조용으로 하여 움직임 벡터를 검출한 다른 상기 프레임 화상 데이터에 대하여 새로운 상기 프레임 화상 데이터를 참조용으로 할당하여 움직임 벡터를 재검출하는,
    동화상 부호화 방법.
  10. 삭제
  11. 동화상 데이터를 순차적으로 프레임 화상 데이터 단위로 압축 부호화하여 부호화 데이터를 생성하는 압축 부호화 단계와,
    상기 부호화 데이터를 버퍼에 일단 축적하여 출력하는 출력 단계와,
    상기 버퍼의 데이터 축적량에 따라 상기 동화상 데이터의 프레임 레이트를 변경하는 프레임 레이트 변경 단계와,
    상기 프레임 화상 데이터 간의 움직임 벡터를 검출하는 동시에, 상기 움직임 벡터의 검출에 따라 상기 프레임 화상 데이터 간의 상관치를 산출하는 움직임 벡터 검출 단계
    를 포함하고,
    상기 압축 부호화 단계는 상기 동화상 데이터를 순차적으로 상기 프레임 화상 데이터 단위로 상기 움직임 벡터를 이용한 움직임 보상 예측 부호화에 의해 압축 부호화하고,
    상기 프레임 레이트 변경 단계는 상기 프레임 화상 데이터 간의 상기 상관치에 기초하여 상기 부호화 데이터의 부호화 데이터량을 예측하고, 상기 예측된 부호화 데이터량과 상기 데이터 축적량에 따라서 상기 동화상 데이터의 상기 프레임 레이트를 변경하며,
    상기 움직임 벡터 검출 단계는 상기 프레임 레이트의 변경에 의해 상기 동화상 데이터로부터 상기 프레임 화상 데이터가 솎아내어지면(decimation), 상기 솎아내어진 프레임 화상 데이터를 참조용으로 하여 움직임 벡터를 검출한 다른 상기 프레임 화상 데이터에 대하여 새로운 상기 프레임 화상 데이터를 참조용으로 할당하여 움직임 벡터를 재검출하는, 동화상 부호화 프로그램을 동화상 부호화 장치에서 실행시키는 동화상 부호화 프로그램 기록 매체.
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
KR1020037000253A 2001-05-10 2002-05-09 동화상 부호화 장치, 동화상 부호화 방법 및 동화상 부호화 프로그램 기록 매체 KR100901173B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001140217A JP4765194B2 (ja) 2001-05-10 2001-05-10 動画像符号化装置、動画像符号化方法、動画像符号化プログラム格納媒体及び動画像符号化プログラム
JPJP-P-2001-00140217 2001-05-10
PCT/JP2002/004530 WO2002093936A1 (en) 2001-05-10 2002-05-09 Moving picture encoding apparatus

Publications (2)

Publication Number Publication Date
KR20030018042A KR20030018042A (ko) 2003-03-04
KR100901173B1 true KR100901173B1 (ko) 2009-06-04

Family

ID=18986858

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037000253A KR100901173B1 (ko) 2001-05-10 2002-05-09 동화상 부호화 장치, 동화상 부호화 방법 및 동화상 부호화 프로그램 기록 매체

Country Status (6)

Country Link
US (1) US7158570B2 (ko)
EP (1) EP1387586A4 (ko)
JP (1) JP4765194B2 (ko)
KR (1) KR100901173B1 (ko)
CN (2) CN1258924C (ko)
WO (1) WO2002093936A1 (ko)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0300361D0 (en) * 2003-01-07 2003-02-05 Koninkl Philips Electronics Nv Audio-visual content transmission
US7433524B2 (en) * 2003-05-08 2008-10-07 Ricoh Company, Ltd. Processing system with frame rate and image quality optimized
GB2407227B (en) * 2003-09-08 2006-11-08 Deluxe Lab Inc Program encoding and counterfeit tracking system and method
US7818257B2 (en) * 2004-07-16 2010-10-19 Deluxe Laboratories, Inc. Program encoding and counterfeit tracking system and method
US7889792B2 (en) 2003-12-24 2011-02-15 Apple Inc. Method and system for video encoding using a variable number of B frames
US7869503B2 (en) * 2004-02-06 2011-01-11 Apple Inc. Rate and quality controller for H.264/AVC video coder and scene analyzer therefor
US7492820B2 (en) 2004-02-06 2009-02-17 Apple Inc. Rate control for video coder employing adaptive linear regression bits modeling
US7986731B2 (en) * 2004-02-06 2011-07-26 Apple Inc. H.264/AVC coder incorporating rate and quality controller
TWI238651B (en) * 2004-04-30 2005-08-21 Benq Corp Method and apparatus for determining frame status of video data
US20060012719A1 (en) * 2004-07-12 2006-01-19 Nokia Corporation System and method for motion prediction in scalable video coding
US7705884B2 (en) * 2004-07-21 2010-04-27 Zoran Corporation Processing of video data to compensate for unintended camera motion between acquired image frames
EP1631089A1 (en) * 2004-08-30 2006-03-01 Matsushita Electric Industrial Co., Ltd. Video coding apparatus and decoding apparatus
US8355434B2 (en) * 2005-01-10 2013-01-15 Qualcomm Incorporated Digital video line-by-line dynamic rate adaptation
US8019000B2 (en) * 2005-02-24 2011-09-13 Sanyo Electric Co., Ltd. Motion vector detecting device
US7676105B2 (en) * 2005-05-31 2010-03-09 Intel Corporation Method, apparatus, article and system for use in association with images
US7783781B1 (en) * 2005-08-05 2010-08-24 F5 Networks, Inc. Adaptive compression
JP2007134755A (ja) * 2005-11-08 2007-05-31 Hitachi Ltd 動画像符号化装置及び画像記録再生装置
US8233535B2 (en) 2005-11-18 2012-07-31 Apple Inc. Region-based processing of predicted pixels
US8275909B1 (en) 2005-12-07 2012-09-25 F5 Networks, Inc. Adaptive compression
JP4235209B2 (ja) * 2006-02-10 2009-03-11 Nttエレクトロニクス株式会社 動きベクトル検出装置および動きベクトル検出方法
EP1994756A2 (en) * 2006-03-03 2008-11-26 Koninklijke Philips Electronics N.V. Differential coding with lossy embedded compression
JP4822952B2 (ja) * 2006-06-26 2011-11-24 富士通セミコンダクター株式会社 符号化データ転送装置および符号化データ転送方法
KR20080022614A (ko) * 2006-09-07 2008-03-12 삼성전자주식회사 글로벌 영상 검출 방법과, 표시 장치 및 이의 구동 방법
US20080198923A1 (en) * 2007-01-05 2008-08-21 Gramelspacher Michael S Content signal modulation and decoding
JP2008187222A (ja) * 2007-01-26 2008-08-14 Hitachi Ltd 動きベクトル検出装置、動きベクトル検出方法、映像表示装置
CN101222604B (zh) * 2007-04-04 2010-06-09 晨星半导体股份有限公司 运算移动估计值与估算图像的移动向量的方法
JP5217270B2 (ja) * 2007-06-26 2013-06-19 ソニー株式会社 画像処理装置およびその方法、並びにプログラム
JP4375452B2 (ja) * 2007-07-18 2009-12-02 ソニー株式会社 画像処理装置、画像処理方法、及びプログラム、並びに表示装置
EP2048890A1 (en) * 2007-10-11 2009-04-15 Thomson Licensing System and method for an early start of audio-video rendering
US20090161978A1 (en) * 2007-12-20 2009-06-25 Marinko Karanovic Halo Artifact Removal Method
WO2009109940A1 (en) * 2008-03-06 2009-09-11 Nxp B.V. Temporal fallback for high frame rate picture rate conversion
US8150211B2 (en) * 2008-03-12 2012-04-03 Intel Corporation Identifying patterns in data
JP4742324B2 (ja) * 2009-02-17 2011-08-10 カシオ計算機株式会社 動画像を記録する記録装置、記録方法及びプログラム
TWI433131B (zh) * 2009-09-01 2014-04-01 Chunghwa Picture Tubes Ltd 顯示器驅動裝置及方法
CN101742221B (zh) * 2009-11-09 2012-06-13 中兴通讯股份有限公司 一种会议电视系统中的多画面合成方法及装置
FR2955007B1 (fr) * 2010-01-04 2012-02-17 Sagem Defense Securite Estimation de mouvement global et dense
JP5707745B2 (ja) * 2010-06-08 2015-04-30 ソニー株式会社 画像安定化装置、画像安定化方法、及びプログラム
WO2012102021A1 (ja) 2011-01-25 2012-08-02 パナソニック株式会社 動画像符号化方法および動画像復号化方法
US8745158B2 (en) * 2011-09-30 2014-06-03 Avid Technology, Inc. Application-guided bandwidth-managed caching
US9471833B1 (en) * 2012-04-03 2016-10-18 Intuit Inc. Character recognition using images at different angles
US9445058B2 (en) * 2012-05-14 2016-09-13 Intuitive Surgical Operations, Inc Method for video processing using a buffer
JP6120667B2 (ja) * 2013-05-02 2017-04-26 キヤノン株式会社 画像処理装置、撮像装置、画像処理方法、プログラム、及び記録媒体
US9609338B2 (en) * 2013-10-25 2017-03-28 Microsoft Technology Licensing, Llc Layered video encoding and decoding
KR101599888B1 (ko) 2014-05-02 2016-03-04 삼성전자주식회사 적응적 영상 데이터 압축 방법 및 장치
JP2016053849A (ja) * 2014-09-03 2016-04-14 ソニー株式会社 画像処理装置および画像処理方法、並びに固体撮像装置
US10147158B2 (en) * 2014-12-13 2018-12-04 Microsoft Technology Licensing, Llc Frame invalidation control with causality attribution
KR20180129860A (ko) * 2016-04-25 2018-12-05 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측 방법 및 장치
US10979744B2 (en) * 2017-11-03 2021-04-13 Nvidia Corporation Method and system for low latency high frame rate streaming
US10764530B2 (en) * 2018-10-04 2020-09-01 Samsung Electronics Co., Ltd. Method and system for recording a super slow motion video in a portable electronic device
CN110568983B (zh) * 2019-07-16 2022-08-12 西安万像电子科技有限公司 图像处理方法及装置
WO2020251414A2 (en) * 2019-09-29 2020-12-17 Huawei Technologies Co., Ltd. Method and apparatus of generating weighting masks for integer-slope split directions in inter prediction
JP7435208B2 (ja) 2020-04-24 2024-02-21 サクサ株式会社 画像処理装置及びプログラム
CN113596450B (zh) * 2021-06-28 2022-11-11 展讯通信(上海)有限公司 视频图像压缩方法、解压缩方法、处理方法及装置、设备
CN114051142B (zh) * 2022-01-13 2022-04-29 深圳市麦谷科技有限公司 硬件多路编码防抖方法、装置、智能终端及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07203456A (ja) * 1993-12-28 1995-08-04 Matsushita Electric Ind Co Ltd 符号化装置と復号化装置と映像記録装置
JPH09261638A (ja) * 1996-03-25 1997-10-03 Matsushita Electric Ind Co Ltd 画像符号化装置
US5812200A (en) * 1996-09-03 1998-09-22 Lg Electronics, Inc. Method and apparatus for constant data rate output of encoders
KR20010034374A (ko) * 1998-01-27 2001-04-25 다카노 야스아키 움직임 벡터 검출 장치 및 방법

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3679426B2 (ja) * 1993-03-15 2005-08-03 マサチューセッツ・インスティチュート・オブ・テクノロジー 画像データを符号化して夫々がコヒーレントな動きの領域を表わす複数の層とそれら層に付随する動きパラメータとにするシステム
JPH0795584A (ja) * 1993-07-30 1995-04-07 Matsushita Electric Ind Co Ltd 画像符号化装置
JP3980666B2 (ja) 1995-06-07 2007-09-26 ソニー株式会社 動きベクトル推定方法及び画像処理装置
JPH08336140A (ja) * 1995-06-07 1996-12-17 Sony Corp 動きベクトル推定方法
US6243497B1 (en) * 1997-02-12 2001-06-05 Sarnoff Corporation Apparatus and method for optimizing the rate control in a coding system
US6028965A (en) * 1997-05-13 2000-02-22 Lg Electronics, Inc Method and apparatus for intelligent codec system
US6057884A (en) * 1997-06-05 2000-05-02 General Instrument Corporation Temporal and spatial scaleable coding for video object planes
JP3409834B2 (ja) * 1997-07-10 2003-05-26 ソニー株式会社 画像処理装置および画像処理方法、並びに記録媒体
US6023296A (en) * 1997-07-10 2000-02-08 Sarnoff Corporation Apparatus and method for object based rate control in a coding system
US6535530B1 (en) * 1997-07-23 2003-03-18 Matsushita Electric Industrial Co., Ltd. Apparatus and method for demultiplexing multiplexed data
US6208692B1 (en) * 1997-12-31 2001-03-27 Sarnoff Corporation Apparatus and method for performing scalable hierarchical motion estimation
KR100275694B1 (ko) * 1998-03-02 2000-12-15 윤덕용 실시간 동영상 부호화를 위한 초고속 움직임 벡터 추정방법
JP3748717B2 (ja) 1998-08-31 2006-02-22 シャープ株式会社 動画像符号化装置
JP2000102015A (ja) * 1998-09-22 2000-04-07 Sharp Corp 動きベクトル検出装置及び動きベクトル検出方法
JP2000175202A (ja) * 1998-12-09 2000-06-23 Victor Co Of Japan Ltd 動きベクトル検出装置
JP3930176B2 (ja) * 1998-12-18 2007-06-13 日本電信電話株式会社 符号化ビットレート変更方法および符号化ビット変更プログラムを記録した記録媒体
US6421466B1 (en) * 1999-09-29 2002-07-16 Neomagic Corp. Hierarchical motion estimation with levels of varying bit width for digital video compression
KR100677082B1 (ko) * 2000-01-27 2007-02-01 삼성전자주식회사 움직임 추정기
US6785427B1 (en) * 2000-09-20 2004-08-31 Arcsoft, Inc. Image matching using resolution pyramids with geometric constraints
US7082163B2 (en) * 2000-11-20 2006-07-25 Matsushita Electric Industrial Co., Ltd. Picture coding method, picture coding apparatus and image relaying apparatus
EP1259079B1 (en) * 2001-04-30 2007-03-21 STMicroelectronics Pvt. Ltd An efficient low power motion estimation of a video frame sequence
KR100446235B1 (ko) * 2001-05-07 2004-08-30 엘지전자 주식회사 다중 후보를 이용한 움직임 벡터 병합 탐색 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07203456A (ja) * 1993-12-28 1995-08-04 Matsushita Electric Ind Co Ltd 符号化装置と復号化装置と映像記録装置
JPH09261638A (ja) * 1996-03-25 1997-10-03 Matsushita Electric Ind Co Ltd 画像符号化装置
US5812200A (en) * 1996-09-03 1998-09-22 Lg Electronics, Inc. Method and apparatus for constant data rate output of encoders
KR20010034374A (ko) * 1998-01-27 2001-04-25 다카노 야스아키 움직임 벡터 검출 장치 및 방법

Also Published As

Publication number Publication date
EP1387586A4 (en) 2009-01-07
CN1684521A (zh) 2005-10-19
JP4765194B2 (ja) 2011-09-07
CN1258924C (zh) 2006-06-07
CN1462556A (zh) 2003-12-17
WO2002093936A1 (en) 2002-11-21
US7158570B2 (en) 2007-01-02
CN100338958C (zh) 2007-09-19
EP1387586A1 (en) 2004-02-04
KR20030018042A (ko) 2003-03-04
JP2002335530A (ja) 2002-11-22
US20030174769A1 (en) 2003-09-18

Similar Documents

Publication Publication Date Title
KR100901173B1 (ko) 동화상 부호화 장치, 동화상 부호화 방법 및 동화상 부호화 프로그램 기록 매체
JP3072035B2 (ja) 2ステージビデオフィルム圧縮方法及びシステム
KR100971835B1 (ko) 화상 복호 방법 및 장치
US7171052B2 (en) Apparatus and method for correcting motion of image
KR100563552B1 (ko) 비선형 피라미드를 사용하여 계층적인 움직임 추정을 실행하기 위한 장치 및 방법
CN101911705B (zh) 运动图像编码装置及运动图像解码装置
US8160143B2 (en) Decoding device, encoding device, interpolation frame creating system, integrated circuit device, decoding program, and encoding program
US20070025621A1 (en) Coding device, coding method, decoding device, decoding method, and programs of same
JP2012502590A (ja) 構成参照フレームを用いた動画符号化システムおよび方法
US6925121B1 (en) Motion vector detecting method and system and devices incorporating the same
JP4417054B2 (ja) 離散コサイン変換係数を参照する動き推定方法及び装置
JP4557752B2 (ja) 動画像処理装置、動画像処理方法、及び動画像処理プログラム
JP2007036888A (ja) 符号化方法
JP2004215275A (ja) 動き補償に基づいた改善されたノイズ予測方法及びその装置とそれを使用した動画符号化方法及びその装置
KR100950525B1 (ko) 트랜스코딩 장치 및 방법, 이에 사용되는 타겟비트할당 및픽처 복잡도 예측 장치 및 방법
JP2007036889A (ja) 符号化方法
JP4165752B2 (ja) 画像データへの秘匿データ挿入方式および秘匿データ検出方式
JP4779230B2 (ja) 動画像符号化装置、動画像符号化方法、動画像符号化プログラム格納媒体及び動画像符号化プログラム
KR100468384B1 (ko) 운동객체기반에서의 움직임 예측 웨이브렛 동영상 압축 및복원장치
JP2002335531A (ja) 動画像符号化装置、動画像符号化方法、動画像符号化プログラム格納媒体及び動画像符号化プログラム
JP4169767B2 (ja) 符号化方法
JP4243286B2 (ja) 符号化方法
JPH0951538A (ja) 画像信号の符号化方法
JPH11266459A (ja) 動画像符号化装置、移動物体検出装置およびこれら装置に適用される動き予測装置
JP2007036887A (ja) 符号化方法

Legal Events

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

Payment date: 20130521

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140516

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee