KR20040016856A - 동화상 압축 부호화장치 및 모션벡터 검출방법 - Google Patents

동화상 압축 부호화장치 및 모션벡터 검출방법 Download PDF

Info

Publication number
KR20040016856A
KR20040016856A KR10-2003-7013911A KR20037013911A KR20040016856A KR 20040016856 A KR20040016856 A KR 20040016856A KR 20037013911 A KR20037013911 A KR 20037013911A KR 20040016856 A KR20040016856 A KR 20040016856A
Authority
KR
South Korea
Prior art keywords
motion vector
vector detection
detection range
motion
frame
Prior art date
Application number
KR10-2003-7013911A
Other languages
English (en)
Other versions
KR100632072B1 (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 KR20040016856A publication Critical patent/KR20040016856A/ko
Application granted granted Critical
Publication of KR100632072B1 publication Critical patent/KR100632072B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • G06T7/238Analysis of motion using block-matching using non-full search, e.g. three-step search
    • 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/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
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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
    • H04N19/57Motion estimation characterised by a search window with variable size or shape
    • 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)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

종래의 동화상 압축 부호화장치에서는 움직임이 큰 화상에 대해서는 적정한 모션벡터를 검출할 수 없고, 더구나 적정한 모션벡터 검출범위를 설정하는 것은 곤란하다. 복호화 동화상신호와 매크로블록 동화상신호로부터 제 1 모션벡터 검출범위 내에서 모션벡터를 검출하는 모션벡터 검출수단(12)과, 제 1 모션벡터 검출범위의 가장 바깥선인 제 1 최외곽선과, 제 1 모션벡터 검출범위의 내측에 있는 제 2 모션벡터 검출범위의 가장 바깥선인 제 2 최외곽선으로서, 제 1 최외곽선에 인접하는 하나 또는 복수개의 제 2 최외곽선 상에 있는 모션벡터의 수인 제 1 모션벡터의 수를 카운트하는 모션벡터 카운트수단(14, 15, 16)과, 카운트된 제 1 모션벡터의 수에 기초하여 제 1 모션벡터 검출범위를 확대하는 모션벡터 검출범위 결정수단(13)을 구비한다.

Description

동화상 압축 부호화장치 및 모션벡터 검출방법{MOVING PICTURE COMPRESSION/CODING APPARATUS AND MOTION VECTOR DETECTION METHOD}
동화상 압축부호장치에 있어서, 모션벡터 검출장치는 모션벡터의 검출정밀도를 높이고자 하면 하드웨어 규모가 커지지 않을 수 없다. 그 때문에 모션벡터검출은 검출범위는 좁지만 검출정밀도는 높은 모드, 또는 검출범위는 넓지만 검출정밀도는 낮은 모드에서 행해지고 있다.
종래의 모션벡터 검출장치는 예를 들어, 일본 특허공개 평9-224249호 공보에 기재된 것이 알려져 있다. 또, 일본 특허공개 평9-224249호 공보의 문헌의 모든 개시는 본 명세서에 모두 그대로 인용(참조)하는 것으로 한다. 그 모션벡터 검출장치를 도 10에 나타낸다. 101은 동화상 압축부호화기에 현재의 프레임신호인 참조 프레임신호를 입력하는 참조 프레임신호 입력단자이고, 102는 동화상 압축부호화기에 하나 전의 프레임신호인 예측 프레임신호를 입력하는 예측 프레임신호 입력단자이다. 103은 검출범위는 넓지만 검출정밀도는 낮은 모드에서 모션벡터를 검출하는 광역 모션벡터 검출기이고, 104는 검출범위는 좁지만 검출정밀도는 높은 모드에서 모션벡터를 검출하는 협역 모션벡터 검출기이며, 105는 광역 모션벡터 검출기(103)와 협역 모션벡터 검출기(104)에서 얻어진 모션벡터 검출결과를 비교평가하는 비교기이고, 106은 비교기(105)의 비교결과에 기초하여, 광역 모션벡터 검출기(103) 또는 협역 모션벡터 검출기(104)로부터의 모션벡터 검출결과 중 어느 하나를 출력하는 전환기이고, 107은 광역 모션벡터 검출기에서 검출한 모션벡터를 출력하는 출력단자이다.
이상과 같이 구성된 종래의 모션벡터 검출장치의 동작에 대하여 설명한다. 우선, 참조 프레임신호 입력단자(101)로부터 입력한 참조 프레임신호는 저역 통과필터(108) 및 다운 샘플링회로(109)를 거쳐 광역 모션벡터 검출기(103)에 입력된다. 그와 함께, 참조 프레임신호 입력단자(101)로부터 입력한 참조 프레임신호는 협역 모션벡터 검출기(104)로도 입력된다. 마찬가지로, 예측 프레임신호 입력단자(102)로부터 입력한 예측 프레임신호는 저역 통과필터(110) 및 다운 샘플링회로(111)를 거쳐 광역 모션벡터 검출기(103)에 입력된다. 그와 함께, 예측 프레임신호 입력단자(102)로부터 입력한 예측 프레임신호는 협역 모션벡터 검출기(104)로도 입력된다. 각각의 모션벡터 검출기(103, 104)에서 검출된 모션벡터는 비교기(105)에서 비교평가되어, 평가가 높은 쪽의 모션벡터를 전환기(106)에서 출력단자(107)로 출력된다.
그러나 도 10의 모션벡터 검출장치의 구성에서는, 보다 적정한 모션벡터를 검출하기 위해 모션벡터 검출범위의 수(이하, 모드수라 함)를, 예를 들어, 2개로 하면 모드수가 하나인 경우에 비해 하드웨어 규모가 증대된다.
즉, 모션벡터 검출범위의 수를, 예를 들어, 검출범위는 좁지만 검출정밀도는 높은 모션벡터의 검출범위와, 검출범위는 넓지만 검출정밀도는 낮은 모션벡터 검출범위의 2개로 하면, 검출범위는 좁지만 검출정밀도는 높은 협역 모션벡터 검출기(104)와, 검출범위는 넓지만 검출정밀도는 낮은 광역 모션벡터 검출기(103)의 2종류의 하드웨어가 필요하게 된다. 그리고, 각각의 모션벡터 검출기에 대하여 동시에 모션벡터 검출을 실행할 필요가 있고, 2개의 모션벡터 검출기(103, 104) 각각에 독립된 모션벡터 검출회로가 필수가 되어, 모션벡터 검출회로 등의 하드웨어규모가 커진다는 문제점이 있었다.
도 10에서 설명한 종래의 모션벡터 검출장치의 과제를 해결하기 위해, 예를 들어, 일본 특허공개 평10-23420호 공보에 기재된 동화상 압축 부호화장치가 알려져 있다. 또, 일본 특허공개 평10-23420호 공보 문헌의 모든 개시는 그대로 본 명세서에 인용(참조)하는 것으로 한다. 그 동화상 압축 부호화장치를 도 11에 나타낸다.
도 11은 종래의 동화상 압축 부호화장치의 블록도이다. 도 11에서 301은 DCT 회로이고, 302는 양자화기이며, 303은 역양자화기이고, 304는 역DCT회로이며, 305는 프레임 메모리이고, 306은 모션보상 프레임간 예측회로이며, 307A는 모션검출장치이고, 308은 프레임내 ·프레임간 전환신호이다. 또한, 모션 검출장치(307A)는 버퍼메모리(201), 오차계산회로(202), 오차비교회로(203), 어드레스 발생회로(204)를 구비한다.
이상과 같이 구성된 종래의 화상부호화장치에 대하여, 이하에 그 동작을 설명한다. 부호화의 최초의 프레임, 즉 제 1 프레임은 프레임내 ·프레임간 전환신호(308)에 의해 프레임내 부호화로 전환되고, 차분(difference)이 취해지지 않고, 프레임마다 프레임내 부호화된다. 즉, 화상데이터는 2차원 블록단위로 DCT 회로(301)에서 변환계수로 변환되고, 양자화기(302)에서 변환계수가 양자화된 후, 전송로로 송출된다. 일반적으로, 화상은 상관관계가 높기 때문에 DCT를 행하면 낮은 주파수성분에 대응하는 변환계수에 에너지가 집중된다. 따라서, 시각적으로 눈에 띄지 않는 높은 주파수성분을 거칠게 양자화하고, 중요한 성분인 낮은 주파수성분을 세밀하게 양자화함으로써, 화질열화를 최소한으로 그치게 하고, 또 데이터량을 줄이는 것이 가능하게 된다. 상기 전송로에 송출된 양자화 후의 변환계수는, 동시에 역양자화기(303), 역 DCT 변환회로(304)를 거쳐 실시간 데이터로 복귀되어, 프레임 메모리(305)에 축적된다.
한편, 제 2 프레임 이후의 화상은 프레임내 ·프레임간 전환신호(308)에 의해 프레임간 부호화로 전환되고, 모션보상된 후에 이전 프레임의 화상과의 차분이 취해지고, 프레임마다 프레임간의 화상신호의 차분이 부호화된다. 즉, 프레임 메모리(305)에 저장한 이전 프레임의 화상데이터와 모션검출장치(307A)에서 검출한 2차원 블록단위의 모션벡터에 기초하여 제 2 프레임 이후의 화상의 예측값이 모션보상 프레임간 예측회로(306)에서 생성되고, 제 2 프레임 이후의 화상과 모션보상 프레임간 예측회로(306)에서 생성된 제 2 프레임 이후의 예측값과의 차분인 예측오차가 2차원 블록단위로 DCT회로(301)에서 변환계수로 변환되고, 양자화기(302)에서 변환계수가 양자화된 후 전송로로 송출된다. 상기 전송로로 송출된 양자화 후의 변환계수는 동시에 역양자화기(303), 역DCT 변환회로(304)를 거쳐 실시간 데이터로 복귀하여 프레임 메모리(305)에 축적된다.
다음에, 모션검출장치(307A)에 대하여 자세히 설명한다. 이 모션검출장치(307A)에서는, 예를 들어, 잘 알려진 전체탐색방법을 이용하여 2차원 블록단위로 프레임간의 모션벡터를 구하는 구성으로 되어 있다. 도 12는 모션검출장치(307A)의 동작을 나타내는 설명도로, 이하, 도 12를 참조하여 모션검출동작을 설명한다. 도 12에서 311은 제 2 프레임이 있는 하나의 2차원 블록으로, m화소(수평방향) ×n화소(수직방향)의 직사각형 블록으로 이루어진다. 312A, 312B는 오차계산을 행하기 위한 제 1 프레임의 2차원 블록이며, 크기는 2차원 블록(311)과 동일한 크기이다. 313은 모션검출에 의해 구한 모션벡터로, 2차원 블록(311)의 중심좌표와 2차원 블록(312B)의 중심좌표를 연결하는 것이다.
도 12에서의 2차원 블록(311)은 제 2 프레임에서의 중심좌표(x, y, 2)를 갖는 2차원 블록이고, 2차원 블록을 중심좌표에 대응한 기호 S(x, y, 2)로 나타낸다. 또, 2차원 블록(312A, 312B)은 제 1 프레임에서의 중심좌표 (x, y, 1), (x+mx, y+my, 1)을 각각 갖는 2차원 블록이며, 마찬가지로 2차원 블록을 중심좌표에 대응한 기호 S(x, y, 2), S(x+mx, y+my, 1)로 나타낸다. 단, x는 프레임의 중심을 원점으로 하는 수평방향의 화소좌표를 나타내며, y는 프레임의 중심을 원점으로 하는 수직방향의 화소좌표를 나타내고, x, y 다음의 1, 2의 숫자는 프레임번호를 나타낸다. 또, 314는 모션벡터를 계산하는 2차원 블록을 나타내는 직사각형(수평방향 2h, 수직방향 2v)의 모션벡터 검출범위이며, xh는 모션벡터 검출범위의 중심(도면에서는 좌표(x, y, 1))을 원점으로 하는 수평방향의 국부 화소좌표를 나타내고, yv는 모션벡터 검출범위의 중심(도면에서는 좌표(x, y, 1))을 원점으로 하는 수직방향의 국부 화소좌표를 나타낸다.
제 2 프레임의 화상데이터는 프레임간 부호화될 때에, 동시에 버퍼 메모리(201)에 입력한다. 또, 제 1 프레임의 화상데이터는 이미 버퍼메모리(201)에 저장되어 있다. 지금, 기준을 제 2 프레임(현재 프레임)의 2차원 블록(311)으로 하고, 제 1 프레임(이전 프레임)의 2차원 블록(312B)과 제 2 프레임(현재 프레임)의 2차원 블록(311) 사이의 모션벡터(313)를 검출한다. 버퍼메모리(201)에 입력한 제 1, 제 2 프레임의 화상은 m ×n 화소씩의 2차원 블록단위로 판독하고, 2차원 블록단위로 모션벡터를 검출한다.
이하, 좌표를 이용하여 모션벡터의 검출순서에 대하여 구체적으로 설명한다. 어드레스 발생회로(204)에 의해 제 2 프레임에서의 중심좌표(x, y, 2)를 갖는 2차원 블록 S(x, y, 2)의 화상데이터를 판독하고, 이 2차원 블록 S(x, y, 2)를 기준블록으로 취하고, 이하의 순서로 이 기준블록과 제 1 프레임 사이의 움직임을 검출한다. 버퍼메모리(201)에는 상술한 바와 같이, 제 1 프레임의 화상데이터도 저장하고 있고, 다음에 제 1 프레임에서의 중심좌표(x, y, 1)를 갖는 2차원 블록 S(x, y, 1)의 각 화상데이터를 판독한다. 오차계산회로(202)에서는 상기 2개의 2차원 블록 S(x, y, 2), S(x, y, 1)에서의 화상데이터의 진폭의 2승 오차의 합(이하, 간단히 오차라 함) σ(x, y)(0, 0)을 수학식 1로 계산하여 오차비교회로(203)로 보낸다.
다음에, 어드레스 발생회로(204)는 제 1 프레임에서의 수평방향 1화소에 이웃하는 m ×n 블록, 즉 중심좌표(x+1, y, 1)의 2차원 블록 S(x+1, y, 1)의 어드레스를 발생한다. 오차계산회로(202)에서는 마찬가지로 σ(x, y)(+1, 0)을 계산하고, 오차비교회로(203)로 보낸다. 오차비교회로(203)에서는 σ(x, y)(0, 0)과 σ(x, y)(+1, 0)을 비교하여 작은 쪽을 선택한다. 이하, 마찬가지로 -h<xh<h, -v<yv<v의 범위에서 어드레스를 차례로 변경하면서 2차원 블록의 화상데이터를 판독하고, σ(x, y)(xh, yv)를 계산한다.
오차비교회로(203)는 이상으로 계산된 오차 σ(x, y)(xh, yv)로부터 최소값을 취하는 오차 σ(x, y)(mx, my)를 선택하고, 동시에 어드레스 mx, my를 출력한다. 따라서, 2차원 블록 S(x, y, 2)에서의 모션벡터(213)는 mv(mx, my)로 된다. 이하, 제 2 프레임 내에서 복수로 분할된 모든 2차원 블록에 대하여 상기한 동작을 반복함으로써, 제 2 프레임 내의 모든 2차원 블록의 모션벡터가 구해진다.
모션보상 프레임간 예측회로(306)는 제 2 프레임에 대하여 각 2차원 블록마다 검출한 모션벡터를 이용하여, 제 2 프레임의 모션보상한 예측값을 2차원 블록단위로 생성한다. 제 2 프레임의 화상은 우선 제 1 프레임의 화상데이터와 제 2 프레임의 모션벡터로부터 상술한 방법으로 생성한 예측값과의 차분 즉, 예측오차를 계산한다. 그 후, 상술한 예측오차를 프레임마다 제 1 프레임과 동일한 방법으로 부호화한다.
이상과 같은 구성에 의해, 현재 프레임을 분할한 2차원 블록의 위치를 중심으로 하는 이전 프레임의 소정의 모션벡터 검출범위 내에서, 현재 프레임을 분할한 2차원 블록과 동일한 크기의 2차원 블록의 화상데이터를 차례로 위치를 변경하면서 추출하고, 이전 프레임의 소정의 모션벡터 검출범위 내의 각 2차원 블록의 화상데이터와 현재 프레임의 분할된 2차원 블록의 화상데이터와의 오차계산 및 이전 프레임의 소정의 모션벡터 검출범위 내의 위치가 다른 2차원 블록에 대한 오차비교를 행함으로써, 현재 프레임을 분할한 2차원 블록에 대하여 화상데이터의 오차가 가장 적은 이전 프레임의 소정의 모션벡터 검출범위 내의 2차원 블록의 위치를 탐색하고, 현재 프레임을 분할한 2차원 블록의 위치와 현재 프레임을 분할한 2차원 블록에 대하여 화상데이터의 오차가 가장 적은 이전 프레임의 소정의 모션벡터 검출범위 내의 2차원 블록의 위치로부터 현재 프레임을 분할한 2차원 블록의 이전 프레임으로부터의 화면 상의 움직임을 나타내는 모션벡터를 계산하게 된다.
이상의 방법에 의하면, 예측오차를 부호화하게 되므로, 프레임내 부호화와 같이, 화상데이터를 직접 부호화하는 경우에 비해 에너지가 감소하여, 더욱 효율적인 부호화가 가능해진다.
다음에, 제 3 프레임 이후의 동작에 대하여 설명한다. 제 3 프레임 이후의 각 프레임의 모션벡터를 계산할 때, 이전 프레임(제 3 프레임의 경우에는 제 2 프레임)의 모션벡터를 화상의 움직임의 크기를 나타내는 시간적으로 이전에 검출된 모션벡터 검출범위 결정용 정보로서 CPU(205)에 입력하고, 이하에 나타내는 바와같은 연산처리를 행하여, 어드레스 발생회로(204)를 제어함으로써 모션벡터 검출범위를 변경한다.
도 13은 CPU(5)의 처리동작을 나타내는 플로우차트이다. 도 13에 대하여 설명하면, 단계 21에서 이전 프레임(예를 들어, 제 2 프레임)의 전체 2차원 블록의 모션벡터를 판독하고, 단계 22에서 통상시의 모션벡터 검출범위의 수평방향의 최대값 h를 나타내는 모션벡터의 개수를 카운트한다. 단계 23에서 개수가 전체 블록의 50 이상인지의 여부를 판정하여, 개수가 전체 블록의 50% 이상인 경우에는 화상의 움직임이 큰 것으로 하여 수평방향의 모션벡터 검출범위를, 예를 들어, 2h로 확대한다. 모션벡터 검출범위를 2배로 확대하기 위해서는, 단계 24에 나타낸 바와 같이 오차계산회로(2)로의 입력을 1샘플마다 정선(thin out)하여, 즉, 1/2로 서브샘플링하여 입력하도록 어드레스 발생회로(4)를 제어한다. 이와 같이 함으로써, 각 2차원 블록당 계산량은 1/2이 되므로, 모션벡터 검출범위가 2배로 되어도 총계산량은 모션벡터 검출범위를 확대하지 않는 경우와 같아진다. 또, 단계 25에 나타내는 바와 같이 h/2를 넘는 모션벡터의 개수도 동시에 카운트해 두고, 단계 26에서 h/2를 넘는 모션벡터의 개수가 10% 이하인지 판정하여, 10% 이하일 때는 움직임이 적은 것으로 하여 모션벡터 검출범위를 h/2로 한다. 이 경우에는 오차계산회로(2)에는 정선하지 않고 입력한다(단계 27). 또, h를 넘는 모션벡터가 50% 미만이면서 h/2를 넘는 모션벡터의 개수가 10%를 넘은 경우는 모션벡터 검출범위를 변경하지 않고, 서브샘플링은 행하지 않는다.
상기 동작에 의해, 화상의 움직임이 클 때에는 계산량을 증가시키지 않고 모션벡터 검출범위를 확대하는 것이 가능해진다. 일반적으로, 서브샘플링한 화상으로부터 모션검출을 행하면 움직임의 검출정밀도가 저하하기 때문에 화질열화로 이어진다. 그러나 움직임이 큰 경우는 움직임이 추종하지 않는 것에 기인하는 화질열화쪽이 영향이 크기 때문에, 서브샘플링한 화상이더라도 모션벡터 검출범위를 확대한 쪽이 화질은 향상된다. 또, 움직임이 작을 때는 서브샘플링하지 않는 화상으로 모션검출을 행하므로, 화질열화가 생기지 않고, 또 모션벡터 검출범위를 좁히고 있으므로, 탐색에 걸리는 처리시간을 짧게 할 수 있다.
이와 같이, 화상의 움직임에 따라 모션벡터 검출범위를 바꿀 수 있고, 큰 움직임에 대응할 수 있어 프레임간 차분을 작게 할 수 있어, 화질을 열화시키지 않는다. 더구나, 모션벡터를 계산하기 위한 연산량이 증가하지 않으므로, 모션벡터 연산을 위한 하드웨어량이 증가하는 일은 없다.
그러나, 도 11에서 설명한 종래의 동화상 압축 부호화장치에서는 움직임이 큰 화상에 대해서 적정한 모션벡터를 검출할 수 없어, 적정한 모션벡터 검출범위를 설정하기가 더욱 곤란하다.
즉, 도 11에서 설명한 종래의 동화상 압축 부호화장치에서는 도 14에 나타내는 바와 같이, 모션벡터 검출범위(320)에 대하여, 모션벡터 검출범위(320)의 가장 바깥에 있는 모션벡터 P의 개수가 전체 블록수의 50% 이상이 된 경우에 모션벡터 검출범위(320)를 확대하고 있었다. 즉, 모션벡터 검출범위(320)의 가장 바깥둘레에 있는 모션벡터 P만을 검출하고 있었다. 그런데, 모션벡터 검출범위(320)의 가장 바깥둘레에 있는 모션벡터 P보다 적정한 모션벡터가 모션벡터 검출범위(320)의 외부에 존재할 가능성이 있다. 이러한 경우라도 도 11에서 설명한 종래의 동화상 압축 부호화장치에서는 적정한 모션벡터를 검출하는 대신 모션벡터 P를 검출하여 이용하고 있었다.
즉, 종래의 동화상 압축 부호화장치에서는, 움직임이 큰 화상에 대해서는 적정한 모션벡터를 검출할 수 없어, 적정한 모션벡터 검출범위를 설정하기가 곤란하다는 문제점이 있다.
본 발명은 동화상을 압축부호화하기 위한 동화상 압축 부호화장치와, 그 모션벡터(motion vector) 검출방법, 기록매체 및 프로그램에 관한 것이다.
도 1은 본 발명의 제 1 실시예에서의 동화상 압축 부호화장치의 블록도.
도 2는 본 발명의 제 1 실시예에서의 매크로블록의 모션벡터의 일례를 나타내는 도면.
도 3은 본 발명의 제 1 실시예에서의 모션벡터와 모션벡터 전환영역과의 일례를 나타내는 도면.
도 4의 (a)는 본 발명의 제 1 실시예에서의 모션벡터 검출범위의 후보를 나타내는 도면.
도 4의 (b)는 본 발명의 제 1 실시예에서의 모션벡터 검출범위를 나타내는 도면.
도 5의 (a)는 본 발명의 제 1 실시예에서의 현재의 모션벡터 검출범위의 예를 나타내는 도면.
도 5의 (b)는 본 발명의 제 1 실시예에서의 갱신 후의 모션벡터 검출범위의 예를 나타내는 도면.
도 6의 (a)는 본 발명의 제 1 실시예에서의 현재의 모션벡터 검출범위의 예를 나타내는 도면.
도 6의 (b)는 본 발명의 제 1 실시예에서의 갱신 후의 모션벡터 검출범위의예를 나타내는 도면.
도 7은 본 발명의 제 1 실시예에서의 모션벡터 검출범위의 갱신타이밍을 나타내는 도면.
도 8의 (a)는 본 발명의 제 1 실시예에서의 모션벡터 검출범위가 큰 경우의 모션벡터를 검출할 때의 화소의 샘플링의 개요를 나타내는 도면.
도 8의 (b)는 본 발명의 제 1 실시예에서의 모션벡터 검출범위가 중간 정도인 경우의 모션벡터를 검출할 때의 화소의 샘플링의 개요를 나타내는 도면.
도 8의 (c)는 본 발명의 제 1 실시예에서의 모션벡터 검출범위가 작은 경우의 모션벡터를 검출할 때의 화소의 샘플링의 개요를 나타내는 도면.
도 9는 본 발명의 제 1 실시예에서의 모션벡터 전환영역 결정의 플로우차트.
도 10은 종래의 모션벡터 검출장치의 구성을 나타내는 블록도.
도 11은 종래의 동화상 압축 부호화장치의 구성을 나타내는 블록도.
도 12는 종래의 동화상 압축 부호화장치를 구성하는 모션검출장치(307A)의 동작을 나타내는 설명도.
도 13은 종래의 동화상 압축 부호화장치를 구성하는 CPU(5)의 처리동작을 나타내는 플로우차트.
도 14는 종래의 동화상 압축 부호화장치의 모션벡터 검출범위와 모션벡터의 일례를 나타내는 도면.
* 도면의 주요 부분에 대한 부호의 설명 *
1 : 입력단자 2 : 프레임 배열기
3 : DCT기 4 : 양자화기
5 : 가변길이 부호화기 6 : 버퍼
7 : 출력단자 8 : 레이트 제어기
9 : 역양자화기 10 : 역DCT기
11 : 프레임 메모리 12 : 예측기
13 : 모션벡터 검출범위 결정기 14 : 전환영역 결정기
15 : 비교기 16 : 카운터
17 : 감산기 18 : 전환스위치
19 : 가산기 20 : 스위치
21 : 모션벡터 검출수단
본 발명은 상기 문제점을 고려하여, 움직임이 큰 화상이더라도 적정한 모션벡터를 검출할 수 있고, 또한, 적정한 모션벡터 검출범위를 설정할 수 있는 동화상 압축 부호화장치, 모션벡터 검출방법, 기록매체 및 프로그램을 제공하는 것을 목적으로 하는 것이다.
상술한 과제를 해결하기 위해 제 1 발명은, 입력 동화상영상을 1프레임당 N(단, N은 2 이상의 자연수)개로 세분화한 매크로블록 동화상신호를 생성하는 매크로블록 생성수단(2)과,
상기 매크로블록 동화상신호를 압축부호화한 후에 복호화하여 복호화 동화상신호를 생성하는 부호화ㆍ복호화수단(18, 17, 3, 4, 9, 10, 19, 20, 11)과,
상기 복호화 동화상신호와 상기 매크로블록 동화상신호로부터 제 1 모션벡터 검출범위 내에서 모션벡터를 검출하는 모션벡터 검출수단(12)과,
검출된 상기 모션벡터 중, 상기 제 1 모션벡터 검출범위의 가장 바깥선인 제 1 최외곽선과, 상기 제 1 모션벡터 검출범위의 내측에 있는 제 2 모션벡터 검출범위의 가장 바깥선인 제 2 최외곽선과의 사이에 있는 모션벡터의 수를 제 1 모션벡터의 수로서 카운트하는 모션벡터 카운트수단(14, 15, 16)과,
카운트된 상기 제 1 모션벡터의 수에 기초하여 상기 제 1 모션벡터 검출범위를 확대하는 모션벡터 검출범위 결정수단(13)을 구비한 동화상 압축 부호화장치이다.
제 2 발명은, 상기 모션벡터 카운트수단(14, 15, 16)은 상기 제 2 모션벡터 검출범위의 내측에 있는 제 3 모션벡터 검출범위 내에 있는 모션벡터의 수를 제 2 모션벡터의 수로서 카운트하고,
상기 모션벡터 검출범위 결정수단(13)은 카운트된 상기 제 2 모션벡터의 수에 기초하여 상기 제 1 모션벡터 검출범위를 축소하는 제 1 발명의 동화상 압축 부호화장치이다.
제 3 발명은, 상기 모션벡터 검출범위 결정수단(13)은 카운트된 상기 제 1 모션벡터의 수가 소정의 임계값보다 많은 경우 상기 제 1 모션벡터 검출범위를 확대하고, 상기 소정의 임계값보다 작은 경우 상기 제 1 모션벡터 검출범위를 확대하지 않거나 또는 상기 제 1 모션벡터 검출범위를 변경하지 않는 제 1 발명의 동화상 압축 부호화장치이다.
제 4 발명은, 상기 모션벡터 검출범위 결정수단(13)은 카운트된 상기 제 1 모션벡터의 수가 많을수록 상기 제 1 모션벡터 검출범위의 확대율을 크게 하는 제 1 발명의 동화상 압축 부호화장치이다.
제 5 발명은, 상기 모션벡터 검출범위 결정수단(13)은 카운트된 상기 제 2모션벡터의 수가 많을수록 상기 제 1 모션벡터 검출범위의 축소율을 크게 하는 제 2 발명의 동화상 압축 부호화장치이다.
제 6 발명은, 상기 모션벡터 검출범위 결정수단(13)은 미리 복수종류의 모션벡터 검출범위를 갖고 있고,
그 복수종류의 모션벡터 검출범위로부터 카운트된 상기 제 1 모션벡터의 수가 많을수록 큰 모션벡터 검출범위를 선택하여, 상기 제 1 모션벡터 검출범위로 하는 제 1 발명의 동화상 압축 부호화장치이다.
제 7 발명은, 상기 모션벡터 검출범위 결정수단(13)은 미리 복수종류의 모션벡터 검출범위를 갖고 있고,
그 복수종류의 모션벡터 검출범위로부터 카운트된 상기 제 2 모션벡터의 수가 많을수록 작은 모션벡터 검출범위를 선택하여 상기 제 1 모션벡터 검출범위로 하는 제 2 발명의 동화상 압축 부호화장치이다.
제 8 발명은, 상기 모션벡터 검출범위 결정수단(13)은 상기 제 1 모션벡터 검출범위의 갱신을 P프레임마다 행하거나, 또는 P프레임을 n개(단, nN의 자연수)로 분할한 분할단위마다 행하며,
상기 제 1 모션벡터 검출범위가 갱신될 때, 상기 모션벡터 검출범위 결정수단은 상기 P프레임의 또는 상기 분할단위의 카운트된 상기 제 1 모션벡터의 수를 상기 P프레임으로 또는 상기 분할단위로 존재하는 매크로블록 동화상신호의 수로 나눈 수가 소정의 임계값 이상이 된 경우에, 상기 제 1 모션벡터 검출범위를 확대하는 제 1 발명의 동화상 압축 부호화장치이다.
제 9 발명은, 상기 모션벡터 검출범위 결정수단(13)은 상기 제 1 모션벡터 검출범위의 갱신을 P프레임마다 행하거나, 또는 P프레임을 n개(단, nN의 자연수)로 분할한 분할단위마다 행하며,
상기 제 1 모션벡터 검출범위가 갱신될 때, 상기 모션벡터 검출범위 결정수단은 상기 P프레임의 또는 상기 분할단위의 카운트된 상기 제 2 모션벡터의 수를 상기 P 프레임으로 또는 상기 분할단위로 존재하는 매크로블록 동화상신호의 수로 나눈 수가 소정의 임계값 이상이 된 경우에 상기 제 1 모션벡터 검출범위를 축소하는 제 1 발명의 동화상 압축 부호화장치이다.
제 10 발명은, 상기 모션벡터 검출수단은 상기 제 1 모션벡터 검출범위를 확대할 때, 상기 제 2 모션벡터 검출범위를 확대하는 제 1, 3, 4, 6, 8 발명 중 어느 한 발명의 동화상 압축 부호화장치이다.
제 11 발명은, 상기 모션벡터 검출수단은 상기 제 1 모션벡터 검출범위를 축소할 때, 상기 제 3 모션벡터 검출범위를 축소하는 제 2, 4, 7, 9 발명 중 어느 한 발명의 동화상 압축 부호화장치이다.
제 12 발명은, 입력 동화상영상을 1프레임당 N(단, N은 2 이상의 자연수)개로 세분화하여 생성된 매크로블록 동화상신호를 압축부호화한 후에 복호화하여 생성된 복호화 동화상신호와, 상기 매크로블록 동화상신호로부터 제 1 모션벡터 검출범위 내에서 모션벡터를 검출하는 모션벡터 검출단계와,
검출된 상기 모션벡터 중, 상기 제 1 모션벡터 검출범위의 가장 바깥선인 제 1 최외곽선과, 상기 제 1 모션벡터 검출범위의 내측에 있는 제 2 모션벡터 검출범위의 가장 바깥선인 제 2 최외곽선과의 사이에 있는 모션벡터의 수를 제 1 모션벡터의 수로서 카운트하는 모션벡터 카운트단계와,
상기 제 1 모션벡터 검출범위의 가장 바깥선인 제 1 최외곽선과, 상기 제 1 모션벡터 검출범위의 내측에 있는 제 2 모션벡터 검출범위의 가장 바깥선인 제 2 최외곽선으로서, 상기 제 1 최외곽선에 인접하는 하나 또는 복수개의 제 2 최외곽선 상에 있는 모션벡터의 수인 제 1 모션벡터의 수를 카운트하는 모션벡터 카운트단계와,
카운트된 상기 제 1 모션벡터의 수에 기초하여 상기 제 1 모션벡터 검출범위를 확대하는 모션벡터 검출범위 결정단계를 구비한 모션벡터 검출방법이다.
제 13 발명은, 제 12 발명의 모션벡터 검출방법의, 입력 동화상영상을 1프레임당 N(단, N은 2 이상의 자연수)개로 세분화하여 생성된 매크로블록 동화상신호를 압축부호화한 후에 복호화하여 생성된 복호화 동화상신호와, 상기 매크로블록 동화상신호로부터 제 1 모션벡터 검출범위 내에서 모션벡터를 검출하는 모션벡터 검출단계와,
검출된 상기 모션벡터 중, 상기 제 1 모션벡터 검출범위의 가장 바깥선인 제 1 최외곽선과, 상기 제 1 모션벡터 검출범위의 내측에 있는 제 2 모션벡터 검출범위의 가장 바깥선인 제 2 최외곽선과의 사이에 있는 모션벡터의 수를 제 1 모션벡터의 수로서 카운트하는 모션벡터 카운트단계와,
카운트된 상기 제 1 모션벡터의 수에 기초하여 상기 제 1 모션벡터 검출범위를 확대하는 모션벡터 검출범위 결정단계를 컴퓨터에서 실행시키기 위한 프로그램이다.
제 14 발명은, 제 13 발명의 프로그램을 갖고 있는 기록매체로서, 컴퓨터에 의해 처리 가능한 기록매체이다.
이하에 본 발명의 실시예를 도면을 참조하여 설명한다.
본 발명의 실시예에 의하면, 예를 들어, 모션벡터 검출부(수단)에서 검출한 모션벡터에 기초하여 적응적으로 구한 모션벡터 검출범위를 당해 모션벡터 검출부(수단)로 귀환하는 구성을 구비하기 때문에, 모션벡터 검출부(수단)에 의한 모션벡터를 검출하는 모션벡터 검출범위를 입력 동화상영상의 움직임에 맞추어 설정할 수 있고, 보다 적정한 모션벡터를 검출하기 위해 모션벡터 검출범위 수(즉, 모드수)가 복수 존재하는 경우라도 회로규모를 증대하지 않으면서 모션벡터의 검출시의 정밀도를 향상시킬 수 있다.
또, 본 발명의 실시예에 의하면, 예를 들어, 입력 동화상영상을 세분화한 단위로 모션벡터 검출범위를 모션벡터 검출부로 귀환하는 구성을 구비하기 때문에, 예를 들어, 1프레임 등의 입력 동화상영상의 종합된 단위로 입력 동화상영상의 움직임에 맞춘 모션벡터 검출범위를 모션벡터 검출부에 적절히 설정할 수 있어, 정밀도가 높은 모션벡터 검출범위의 설정을 간략화할 수 있다.
또, 본 발명의 실시예에 의하면, 예를 들어, 적응적으로 구한 모션벡터 검출범위의 결과를 참조하여, 미리 복수 종류 구비한 모션벡터 검출범위로부터 실제로 적용하는 모션벡터 검출범위를 선택하는 구성을 구비하기 때문에, 모션벡터 검출부에 설정하는 모션벡터 검출범위의 갱신을 입력 동화상에 따라 당해 복수 종류로부터 자유롭게 맞출 수 있고, 예를 들어, 기호 등의 사용자의 의도에 맞춘 모션벡터 검출을 달성할 수 있다. 또, 모션벡터 검출부에 설정하는 모션벡터 검출범위를 입력 동화상영상의 움직임에 맞춘, 예를 들어, 사용자의 의도에 맞춘 모션벡터 검출을 달성할 수 있다.
또, 본 발명의 실시예에 의하면, 예를 들어, 귀환수단이 모션벡터 검출범위 결정수단에서 결정한 모션벡터 검출범위를 모션벡터 검출수단 및 전환영역 생성수단으로 귀환하는 구성을 구비하기 때문에, 모션벡터 검출범위의 설정을 입력 동화상영상의 움직임의 속도에 따라 결정할 수 있어, 입력 동화상영상의 움직임에 맞춘 모션벡터 검출범위의 즉시성을 높일 수 있다.
또, 본 발명의 실시예에 의하면, 예를 들어, (모션벡터가 모션벡터 전환영역에 존재하는 수)/(n개의 기간에 존재하는 매크로블록 수)가 소정의 임계값 이상이 되었을 때, 모션벡터 검출범위를 전환하고, 전환한 모션벡터 검출범위를 모션벡터검출수단과 전환영역 생성수단으로 귀환하는 구성을 구비하기 때문에, 입력 동화상영상의 부호화에 있어서 발생 부호량을 삭감할 수 있어, 입력 동화상영상의 움직임에 맞춘 모션벡터의 검출을 더욱 고속화할 수 있다.
(제 1 실시예)
도 1은 본 발명의 제 1 실시예에서의 동화상 압축 부호화장치의 구성을 나타내는 블록도이고, MPEG(Moving Pictures Experts Group)방식의 경우를 나타낸 예이다. 1은 입력단자, 2는 프레임 배열기, 3은 이산코사인변환기(이하, DCT기라 함)기, 4는 양자화기, 5는 가변길이 부호화기, 6은 버퍼메모리, 7은 출력단자, 8은 레이트 제어기, 9는 역양자화기, 10은 역DCT기, 11은 프레임 메모리, 12는 예측기, 13은 검출범위 결정기, 14는 전환영역 결정기, 15는 비교기, 16은 카운터, 17은 감산기, 18은 전환스위치, 19는 가산기, 20은 스위치이다.
또, 본 실시예의 프레임 배열기(2)는 본 발명의 매크로블록 생성수단의 예이고, 본 실시예의 전환스위치(18), 감산기(17), DCT기(3), 양자화기(4), 역양자화기(9), 역DCT기(10), 가산기(19), 스위치(20) 및 프레임메모리(11)는 본 발명의 부호화ㆍ복호화수단의 예이고, 본 실시예의 예측기(12)는 본 발명의 모션벡터 검출수단의 예이며, 본 실시예의 전환영역 결정기(14), 비교기(15) 및 카운터(16)는 본 발명의 모션벡터 카운트수단의 예이고, 본 실시예의 검출범위 결정기(13)는 본 발명의 모션벡터 검출범위 결정수단의 예이다.
이상과 같이 구성한 각 블록의 동작을 설명한다. 입력단자(1)로부터 입력되는 원본화상(이하, 원화)신호는 영상음성신호 중 미리 음성신호와 영상신호로 분리한 영상신호이다. 영상신호는 프레임 배열기(2)에 의해 일단 프레임으로 배열되고, 프레임을 소정의 화소수로 세분화한 단위(이하, 매크로블록 단위라 함)의 원화 영상신호는 프레임 배열기(2)에 의해 배열된 순서(이하, 디코드순이라 함)로 전환스위치(18)에 출력된다. 전환스위치(18)는 매크로블록 단위의 원화 영상신호(이하, 매크로블록 동화상신호라 함)를 그대로 출력할 것인지, 또는 매크로블록 동화상신호로부터 모션보상 예측 영상신호 등으로 감산기(17)에 의해 감산할 것인지를 선택한다.
우선, 전환스위치(18)가 매크로블록 동화상신호 그대로를 선택하는 경우에 대하여 설명한다. 전환스위치(18)로부터 출력되는 매크로블록 동화상신호가 I픽처인 경우, DCT기(3)에서 이산코사인 변환된 DCT신호는 양자화기(4)에 출력된다. 양자화기(4)는 레이트 제어기(8)로부터 귀환되는 소정의 양자화값으로 양자화를 행함으로써, 정보량을 삭감한 양자화신호를 가변길이 부호화기(5) 및 역양자화기(9)에 출력한다.
가변길이 부호화기(5)에 입력된 양자화신호는 가변길이 부호화기(5)에서 부호화를 실시한 부호화신호로서 버퍼메모리(6)로 출력되고, 버퍼메모리(6)는 출력단자(7)로부터 방출될 때까지 부호화신호를 저장하는 동시에, 발생 부호량을 레이트 제어기(8)에 출력한다. 레이트 제어기(8)는 발생 부호량에 기초하는 양자화값을 양자화기(4)로 귀환한다. 출력단자(7)로부터 방출된 부호화신호는 도시하지 않는 시스템 인코더에 의해 음성신호와 다중화된다.
한편, 역양자화기(9)에 입력된 양자화신호에 관하여, 소정의 양자화값으로역양자화된 역양자화신호는 역DCT기(10)에 출력된다. 역DCT기(10)는 입력된 양자화신호를 역이산 코사인처리하여 얻은 역DCT신호를 출력한다. I픽처와 같이, 전환스위치(18)가 매크로블록 동화상신호 그대로를 선택하고 있는 경우에는, 전환스위치(18)에 연동하여 스위치(20)는 오프상태가 되고, 가산기(19)에 의해 역DCT신호에 가산되지 않고, 1프레임이 저장될 때까지 프레임 메모리(11)에 매크로블록 단위의 참조 영상신호(이하, 매크로블록 참조신호라 함)가 저장된다. P픽처에서는 프레임 메모리(11)에 1프레임분 저장한 프레임 단위의 참조 영상신호(이하, 프레임 참조신호라 함)와 프레임 배열기(2)로부터의 매크로블록 동화상신호와의 차분이 최소가 되는 모션벡터가 예측기(12)에 의해 예측되고, 모션벡터 검출범위가 검출되는 동시에, 모션벡터와 모션보상 예측 후의 영상신호(이하, 예측영상신호라 함)가 출력된다.
전환스위치(18)가 감산기(17)에서 매크로블록 동화상신호와 예측영상신호와의 차분신호를 선택하는 P픽처 또는 B픽처인 경우를 설명한다. P픽처의 경우에는 직전의 I픽처 또는 P픽처에 기초하는 예측 영상신호를 매크로블록 동화상신호로부터 감산한 차분신호가 DCT기(3)에 출력되고, DCT신호가 양자화기(4)에 출력된다. 양자화기(4)로부터 출력되는 양자화신호의 한 쪽은 가변길이 부호화기(5), 버퍼메모리(6)를 거쳐 출력단자(7)로부터 방출될 때까지 버퍼메모리(7)에 저장되는 것과 함께, 발생 부호량은 레이트 제어기(8)에 입력되고, 양자화기(4)에 양자화값이 귀환된다. 버퍼메모리(6)에 저장된 부호화신호는 상술한 바와 같이 하여 출력단자(7)로부터 시스템 인코더로 출력된다.
양자화신호의 다른 쪽은 역양자화기(9), 역DCT기(10)를 거쳐 가산기(19)에 입력된다. 전환스위치(18)에 연동하여 스위치(20)는 온상태가 되고, 감산기(17)에 의해 감산된 직전의 I픽처 또는 P픽처는 역DCT기(10)로부터 출력되는 역DCT신호에 가산되어, 매크로블록 참조신호가 얻어진다. 가산기(19)에 의해 가산된 매크로블록 참조신호는 1프레임이 될 때까지 프레임 메모리(11)에 저장되고, 예측기(12)는 프레임 메모리(11)로부터의 프레임 참조신호 및 매크로블록 동화상신호로부터 차분신호가 최소가 되는 모션벡터를 모션벡터 검출범위 내에서 검출하고, 예를 들어, 도 2에 나타내는 바와 같은 모션벡터와 예측 영상신호를 출력한다.
또, 매크로블록 동화상신호가 B픽처의 경우는 전후의 I픽처 또는 P픽처에 기초하는 예측 영상신호와 매크로블록 동화상신호와의 차분을 감산기(17)에서 취하는 이외에는 P픽처와 동일하다. 단, B픽처도 고려하면 상술한 바와 같이 B픽처는 전후의 픽처를 참조하기 때문에 모션벡터 검출범위를 프레임 단위 등으로 갱신할 알고리즘이 복잡화하게 되는 것에 비해서는 정밀도의 향상이 적기 때문에, 본 실시예에서는 B픽처의 경우, 다음 P픽처를 선택할 때까지 무시하는 알고리즘을 채용하였다.
이렇게 해서 얻은 예측기(12)로부터 출력되는 신호의 한쪽은 다음 매크로블록 동화상신호를 감산기(17)에서 감산하기 위한 예측영상신호로서 제공하고, 다른쪽은, 예를 들어, 도 3에 나타내는 바와 같이, 모션벡터가 모션벡터 검출범위 내에 존재하는지를 비교검증하기 위해 매크로 블록단위의 모션벡터를 비교기(15)에 출력한다. 도 3에서의 영역 D는 모션벡터 검출범위를 좁히는 영역을 나타내며, 영역 U는 모션벡터 검출범위를 확대하는 영역을 나타낸다. 즉, 도 2에 나타낸 예측기(12)에서 검출한 매크로블록 Cij에 대응하는 모션벡터 Vij를 전환영역 결정기(14)로부터 출력되는 모션벡터 전환영역 D 또는 U 중 어느 하나의 범위 내에 존재하는지를 비교기(15)에서 비교검증하고, 매크로블록 전환신호를 적응적으로 구하여 카운터(16)에 출력한다.
도 3에 나타낸 모션벡터 검출범위를 더욱 상세히 설명한다. 도 4는 도 3에 나타낸 모션벡터 검출범위를 더욱 상세히 설명한 도면이다. 도 4의 (a)는 모션벡터 검출범위의 후보를 나타내는 것이며, 본 실시예에서는 5개의 모션벡터 검출범위의 후보 A1, A2, A3, A4, A5가 있다. 이들의 모션벡터 검출범위의 후보는 검출범위 결정기(13)에 저장되어 있다. 그리고, 예측기(12)에서 모션벡터를 검출할 때나 전환영역 결정기(14)에서 모션벡터 전환영역을 결정할 때에 사용되는 모션벡터 검출범위는 이들 5개의 모션벡터 검출범위의 후보 A1, A2, A3, A4, A5 중 어느 하나가 선택되어 사용된다.
지금, 모션벡터 검출범위의 후보 A1, A2, A3, A4, A5 중 A3이 모션벡터 검출범위로서 실제로 이용되고 있다고 하자.
도 4의 (b)에 나타내는 바와 같이, 모션벡터 검출범위 A3의 가장 바깥선인 최외곽선(l3)과, 모션벡터 검출범위 A3의 내측에 있는 모션벡터 검출범위 A3´의 가장 바깥선인 최외곽선(l3')과의 사이에 있는 영역이 도 3에서 설명한 영역 U에 대응한다. 도 3의 영역 U는 전환영역 결정기(14)에 의해 결정된다. 그리고, 후술하는 바와 같이, 영역 U에 모션벡터가 있는 경우가 소정의 조건을 만족하는 경우에는모션벡터 검출범위 A3을 확대하도록 처리된다. 이 때, 동시에 모션벡터 검출범위 A3´, A3˝도 확대하도록 처리된다.
마찬가지로, 도 4의 (b)에 나타내는 바와 같이, 모션벡터 검출범위 A3´의 내측에 있는 모션벡터 검출범위 A3˝의 가장 바깥선인 최외곽선(l3˝)의 내측의 영역이 도 3에서 설명한 영역 D에 대응한다. 도 3의 영역 D는 전환영역 결정기(14)에서 결정된다. 그리고, 후술하는 바와 같이, 영역 D에 모션벡터가 있는 경우가 소정의 조건을 만족하는 경우에는 모션벡터 검출범위 A3을 축소하도록 처리된다. 이 때, 동시에 모션벡터 검출범위 A3´, A3˝도 축소하도록 처리된다.
또, 전환영역 결정기(14)는 모션벡터 검출범위에 따라 도 3의 영역 U 및 영역 D를 결정한다.
또, 본 실시예에서는 모션벡터 검출범위의 전환에는 P픽처에 기초하는 모션벡터만을 대상으로 하고 있기 때문에, 비교기(15)는 P픽처의 부호화시에만 동작하지만, B픽처도 고려하는 경우에는 B픽처의 부호화시에도 동작하는 것이 당연하다.
비교기(15)는 매크로블록 Cij에 대응하는 모션벡터 Vij가 도 3의 영역 U에 있는지의 여부, 또, 영역 D에 있는지의 여부를 판정하여, 그 판정결과를 매크로블록 전환신호로서 카운터(16)에 출력한다.
카운터(16)는 매크로블록 전환신호가 입력되면 매크로블록 전환신호가 매크로블록 Cij에 대응하는 모션벡터 Vij가 도 3의 영역 U에 있는 것을 나타내는 경우에는 영역 U에 대응하는 카운트값을 1만큼 증가시키고, 또, 매크로블록 전환신호가매크로블록 Cij에 대응하는 모션벡터 Vij가 도 3의 영역 D에 있는 것을 나타내는 경우에는 영역 D에 대응하는 카운트값을 1만큼 증가시킨다.
이와 같이 하여 카운터(16)는 영역 D에 대응하는 카운트값 및 영역 U에 대응하는 카운트값을 1프레임분 카운트하고, 카운터(16)는 카운트결과를 프레임 단위의 전환신호(이하, 프레임 전환신호라 함)로서 검출범위 결정기(13)에 출력한다. 프레임 전환신호가 입력되면 검출범위 결정기(13)는 모션벡터 검출범위를 프레임 단위로 적응적으로 결정한다.
즉, 검출범위 결정기(13)는 도 4의 (a)에 나타내는 모션벡터 검출범위의 후보 A1, A2, A3, A4, A5로부터 실제로 이용하는 모션벡터 검출범위를 선택함으로써 결정한다.
검출범위 결정기(13)는 도 5의 (a)에 나타내는 바와 같이, 모션벡터 Q가 영역 D에 있는 경우에는 도 5의 (b)에 나타내는 바와 같이, 모션벡터 검출범위 A4를 선택함으로써 모션벡터 검출범위를 축소한다. 더욱 상세히 설명하면, 검출범위 결정기(13)는 카운터(16)로부터 입력된 프레임 전환신호에 기초하여, 「모션벡터가 모션벡터 전환영역 D에 존재하는 수」를 「1프레임의 기간에 존재하는 매크로블록수」로 나눈 값이 소정의 임계값 이상이 되었을 때, 모션벡터 검출범위를 모션벡터 전환영역 A4로 전환한다. 이 때, 동시에 모션벡터 검출범위 A3´, A3˝를 각각 A4´, A4˝로 전환한다. 이와 같이, 검출범위 결정기(13)는 각 모션벡터 검출범위를 축소한다. 그리고, 검출범위 결정기(13)가 모션벡터 검출범위를 모션벡터 검출범위A4로 결정하면, 결정된 모션벡터 검출범위는 전환영역 결정기(14) 및 예측기(12)로 귀환된다. 전환영역 결정기(14)는 그 결정에 따라 도 5의 (b)에 나타내는 바와 같이, 모션벡터 전환영역 D 및 U를 결정한다.
또, 검출범위 결정기(13)는 도 6의 (b)에 나타내는 바와 같이, 모션벡터 R이 영역 U에 있는 경우에는 도 6의 (b)에 나타내는 바와 같이, 모션벡터 검출범위 A2를 선택함으로써 모션벡터 검출범위를 확대한다. 더욱 상세히 설명하면, 검출범위 결정기(13)는 카운터(16)로부터 입력된 프레임 전환신호에 기초하여, 「모션벡터가 모션벡터 전환영역 U에 존재하는 수」를 「1프레임의 기간에 존재하는 매크로블록수」로 나눈 값이 소정의 임계값 이상이 되었을 때, 모션벡터 검출범위를 모션벡터 검출범위 A2로 전환한다. 이 때, 동시에 모션벡터 검출범위 A3´, A3˝를 각각 A2´, A2˝로 전환한다. 이와 같이 검출범위 결정기(13)는 각 모션벡터 검출범위를 확대한다. 그리고, 검출범위 결정기(13)가 모션벡터 검출범위를 모션벡터 검출범위 A2로 결정하면, 결정된 모션벡터 검출범위는 전환영역 결정기(14) 및 예측기(12)로 귀환된다. 전환영역 결정기(14)는 그 결정에 따라 도 6의 (b)에 나타내는 바와 같이 모션벡터 전환영역 D 및 U를 결정한다.
또, 검출범위 결정기(13)는 「모션벡터가 모션벡터 전환영역 D에 존재하는 수」를 「1프레임의 기간에 존재하는 매크로블록수」로 나눈 값이 소정의 임계값보다 작고, 또, 「모션벡터가 모션벡터 전환영역 U에 존재하는 수」를 「1프레임의 기간에 존재하는 매크로블록수」로 나눈 값이 소정의 임계값보다 작을 때는 모션벡터 검출범위를 확대도 축소도 하지 않는다. 즉, 모션벡터 검출범위를 변경하지 않는다.
예측기(12)에 귀환된 모션벡터 검출범위는 프레임 단위로 최적의 모션벡터 검출범위로서, 다음 프레임 단위로 예측기(12)에서 모션벡터를 예측할 때에 모션벡터 검출범위로서 이용된다.
예를 들어, 검출범위 결정기(13)가 도 5의 (b)에 나타내는 바와 같이, 모션벡터 검출범위를 모션벡터 A4로 결정한 경우에, 예측기(12)는 모션벡터를 예측할 때에 다음 프레임 단위로 모션벡터 검출범위 A4를 이용한다
마찬가지로, 검출범위 결정기(13)가 도 6의 (b)에 나타내는 바와 같이, 모션벡터 검출범위를 모션벡터 A2로 결정한 경우에는 예측기(12)는 모션벡터를 예측할 때에 다음 프레임 단위로 모션벡터 검출범위 A2를 이용한다.
다음 프레임 단위에서도 상기와 동일한 동작을 행하여, 적응적으로 예측기(12)에서 이용되는 모션벡터 검출범위가 점차 갱신되어 간다. 본 실시예에서는 상기와 같은 동작을 P프레임마다 행한다. 즉, 도 7에 모션벡터 검출범위 갱신타이밍을 나타낸다. P프레임(20)에서 검출된 모션벡터는 검출범위 결정기(13)가 다음 P프레임(21)의 모션벡터 검출범위를 결정하는 데에 이용된다. 이와 같이 본 실시예의 동화상 압축 부호화장치는 P프레임마다 모션벡터 검출범위를 전환해가는 것이다.
특히, 큰 움직임을 갖는 입력 동화상영상의 경우에는, 도 11에서 설명한 종래의 동화상 압축 부호화장치에서는 모션벡터 검출범위(320)의 가장 바깥둘레에 있는 모션벡터 P만을 검출하고 있었으므로, 모션벡터 검출범위(320)의 가장 바깥둘레에 있는 모션벡터(P)보다 적정한 모션벡터가 모션벡터 검출범위(320)의 외부에 존재하더라도 그와 같은 모션벡터를 검출하여 이용할 수 없었다. 이러한 경우라도, 도 11에서 설명한 종래의 동화상 압축 부호화장치에서는, 적정한 모션벡터를 검출하는 대신에 모션벡터(P)를 검출하여 이용하고 있었다.
이에 대하여, 본 실시예의 동화상 압축 부호화장치에서는 모션벡터 검출범위를 확대할 때는 도 3, 도 4, 도 5, 도 6 등에 각각 나타낸 영역 U에 있는 모션벡터를 고려의 대상으로 한다. 따라서, 종래의 기술에서 모션벡터 검출범위의 외측에 의해 적정한 모션벡터가 존재하고, 그와 같은 적정한 모션벡터를 검출할 수 없는 경우라도, 본 실시예와 같이 영역 U를 모션벡터의 고려의 대상으로 함으로써, 종래의 기술에서는 검출할 수 없었던 적정한 모션벡터를 검출할 수 있게 된다.
이와 같이, 본 실시예에 의하면, 움직임이 큰 입력 동화상영상이더라도 적정한 모션벡터를 검출할 수 있고, 또한 적정한 모션벡터 검출범위를 설정할 수 있게 된다.
이상과 같이, 본 실시예의 동화상 압축 부호화장치는 압축부호화함으로써, 동화상신호의 모션벡터를 검출하는 모션벡터 검출수단(21)의 처리동작에 병행하여, 모션벡터를 검출하는 모션벡터 검출범위를 가장 이전의 프레임 단위로 최적화한 범위로 치환하는 구성이기 때문에, 모션벡터 검출수단(21)에 제공하는 회로 등의 하드웨어 규모를 증대하지 않고, 모션벡터의 검출을 최적화할 수 있는 효과가 있다. 또, 움직임이 큰 화상이더라도 적정한 모션벡터를 검출할 수 있고, 또, 적정한 모션벡터 검출범위를 설정할 수 있게 된다.
또, 본 실시예에서는 검출범위 결정기(13)가 5개의 모션벡터 검출범위의 후보로부터 실제로 이용하는 모션벡터 검출범위를 선택한다고 설명하였지만, 이것에 한정되지 않는다. 3개의 모션벡터 검출범위의 후보로부터 실제의 모션벡터 검출범위를 선택해도 되고, 또 7개의 모션벡터 검출범위의 후보로부터 실제의 모션벡터 검출범위를 선택해도 상관없다. 본 실시예의 검출범위 결정기(13)는 복수개의 모션벡터 검출범위의 후보를 저장하고 있고, 그 중에서 실제로 이용하는 모션벡터 검출범위를 선택함으로써 결정하기만 하면 된다.
또, 본 실시예에서는 검출범위 결정기(13)가 5개의 모션벡터 검출범위로부터 실제로 이용하는 모션벡터 검출범위를 선택한다고 설명하였지만, 이것에 한정되지 않는다. 검출범위 결정기(13)는 모션벡터가 모션벡터 전환영역 U에 존재하는 수가 많을수록 모션벡터 검출범위의 확대율을 크게 해도 상관없다.
또, 이 경우, 검출범위 결정기(13)는 미리 유지하고 있는 모션벡터 검출범위로부터 모션벡터가 모션벡터 전환영역 U에 존재하는 수가 많을수록 큰 모션벡터 검출범위를 선택해도 상관없고, 또, 검출범위 결정기(13)가 미리 모션벡터 검출범위를 유지하지 않고, 모션벡터가 모션벡터 전환영역 U에 존재하는 수가 많을수록 큰 모션벡터 검출범위를 생성해도 상관없다.
또, 검출범위 결정기(13)는 모션벡터가 모션벡터 전환영역 D에 존재하는 수가 많을수록 모션벡터 검출범위의 축소율을 크게 해도 상관없다.
또, 이 경우, 검출범위 결정기(13)는 미리 유지하고 있는 모션벡터 검출범위로부터 모션벡터가 모션벡터 전환영역 D에 존재하는 수가 많을수록 작은 모션벡터검출범위를 선택해도 상관없고, 또, 검출범위 결정기(13)가 미리 모션벡터 검출범위를 유지하지 않고, 모션벡터가 모션벡터 전환영역 D에 존재하는 수가 많을수록 작은 모션벡터 검출범위를 생성해도 상관없다.
또, 본 실시예의 동화상 압축 부호화장치는 도 8의 (a), 도 8의 (b), 도 8의 (c)에 나타내는 바와 같이, 모션벡터 검출범위가 좁은 경우에는 화소단위에 근접한 모션벡터의 검출이 되고, 반대로 넓은 경우에는 넓어진 만큼 검출하는 모션벡터는 정선된 검출이 된다. 즉, 도 8의 (a)와 같이 모션벡터 검출범위 A1과 같이 검출범위가 넓은 경우에는, 흑색원으로 나타내는 바와 같이 정선된 화소에 관한 모션벡터가 검출되고, 반대로 도 8의 (c)와 같이 모션벡터 검출범위 A5와 같이 검출범위가 좁은 경우에는 흑색원으로 나타내는 바와 같이, 화소단위로 모션벡터가 검출된다. 따라서, 모션벡터 검출범위가 넓어지더라도 그 넓이에 따라 모션벡터를 구하는 화소가 정선되므로 모션벡터 검출을 위한 연산량이 증가하는 일은 없다.
그리고, 도 4에 나타내는 바와 같이, 모션벡터 검출범위를 복수종류 구비하고, 대응 복수종류의 모션벡터 검출범위로부터 모션벡터 검출범위를 선택하는 구성을 구비하면, 모션벡터 검출범위를 입력영상의 움직임의 크기에 따라 적절히 확대 ·축소함으로써 최적화를 도모하고, 모션벡터 검출정밀도의 향상 및 그것에 의한 발생 부호량을 삭감할 수 있어, 복호화 후의 동화상의 고화질화를 달성할 수 있다.
또, 모션벡터 검출에 필요한 기억수단 등의 회로를 대응 모션벡터 검출범위 중 가장 좁은 범위에 대응하는 규모로 할 수 있어, 모션벡터 검출정밀도 향상에 기인하여 고화질의 복호화상을 실현할 수 있는 장치를 저가로 할 수도 있다.
상기 실시예에서의 모션벡터 검출범위(13)로부터 모션벡터 검출범위에 따라 모션벡터 검출범위 전환영역을 생성하는 전환영역 결정기(14)와, 당해 모션벡터 검출범위 전환영역과 검출된 모션벡터를 비교하여 당해 모션벡터가 모션벡터 전환영역 내의 존재를 판정하는 비교기(15)를 구비하고, 카운터(16)가 당해 모션벡터 전환영역과 비교기(15)의 출력신호의 판정신호를 저장하며, 카운터(16)에 저장한 판정신호를 기초로 모션벡터 검출범위를 결정하는 구성을 구비하면, 모션벡터 검출수단(21)에서 검출하는 모션벡터의 모션벡터 검출범위의 설정을 입력 동화상영상의 움직임에 추종할 수 있고, 입력 동화상영상의 움직임에 맞춘 모션벡터 검출범위의 즉시성을 향상할 수 있다.
또, 본 실시예에서는 검출범위 결정기(13)로부터 예측기(12)에 출력하는 모션벡터 검출범위를 프레임 단위로 갱신한다고 설명하였지만, 이것에 한정되지 않는다. 프레임 단위로 모션벡터 검출범위를 적응적으로 결정한다고 설명하였지만, 이것에 한정되지 않는다.
검출범위 결정기(13)에서 예측기(12)로 출력하는 모션벡터 검출범위의 갱신을 n(n은 nN을 만족하는 자연수)개의 기간에서 행해도 상관없다. 단, N을 1프레임에 존재하는 매크로블록의 총수로 하고, 1프레임을 복수개로 분할한 경우의 하나의 분할단위의 매크로블록의 총수를 n개로 한다. 이 경우, 카운터(16)는 n개의 기간에서의 모션벡터가 모션벡터 전환영역 중에 존재하는 수도 기억하는 구성이고, 「모션벡터가 모션벡터 전환영역에 존재하는 수」를 「n개의 기간에 존재하는 매크로블록수」로 나눈 값이 소정의 임계값 이상이 되었을 때, 모션벡터 검출범위를 전환하고, 당해 전환된 모션벡터 검출범위는 모션벡터 검출수단(2l)과 전환영역 결정기(14)로 귀환된다.
예를 들어, 「모션벡터가 영역 D에 존재하는 수」를 「n개의 기간에 존재하는 매크로블록수」로 나눈 값이 소정의 임계값 이상이 되었을 때, 모션벡터 검출범위를 예를 들어, 도 5의 (a), 도 5의 (b)에 나타내는 바와 같이, 모션벡터 검출범위 A3으로부터 모션벡터 검출범위 A4로 전환한다. 즉, 모션벡터 검출범위를 축소한다. 또, 예를 들어 「모션벡터가 영역 U에 존재하는 수」를 「n개의 기간에 존재하는 매크로블록수」로 나눈 값이 소정의 임계값 이상이 되었을 때, 모션벡터 검출범위를 예를 들어, 도 6의 (a), 도 6의 (b)에 나타내는 바와 같이, 모션벡터 검출범위 A3으로부터 모션벡터 검출범위 A2로 전환한다. 즉, 모션벡터 검출범위를 확대한다.
이러한 구성을 채용하면, 입력 동화상영상의 움직임에 맞춘 모션벡터의 검출정밀도의 향상과 발생 부호량의 삭감을 실현할 수 있다.
다음에, 상술한 일련의 처리의 흐름을 도 1에 나타낸 블록도를 참조하면서, 도 9를 이용하여 설명한다.
우선, 입력단자(1)로부터 입력된 입력 동화상영상은 디코드 순으로 프레임 배열기(2)에서 배열되고, 단계 31에서 1프레임당 N개(단, N은 2 이상의 자연수)로 세분화된 매크로블록 동화상신호가 된다.
프레임 배열기(2)로부터 디코드 순으로 추출한 매크로블록 동화상신호는 단계 32에서 I픽처인지 I픽처 이외인지를 전환스위치(18)에서 판정한다.전환스위치(18)에서 매크로블록 동화상신호가 I픽처라고 판정되면 스위치(20)는 오프상태로 된다.
I픽처라고 판정된 매크로블록 동화상신호는 단계 33에서 DCT기(3), 양자화기(4), 역양자화기(9), 역DCT기(10), 가산기(19)를 거쳐 프레임 메모리(11)에 I픽처의 매크로블록 동화상의 복호화신호로 저장된다.
다음에, 단계 34에서 1프레임분의 매크로블록 동화상신호의 압축복호의 종료를 판단하여, 1프레임에 도달하고 있지 않을 때는 단계 32로 되돌아간다.
프레임 배열기(2)로부터 추출된 매크로블록 동화상신호가 I픽처인지를 단계 32에서 판단되며, I픽처가 아닌 경우는 단계 35에서 P픽처인지 B픽처인지가 전환스위치(18)에 의해 판정된다.
매크로블록 동화상신호가 P픽처라고 판정되면, 단계 36에서 당해 매크로블록 동화상신호와 예측기(12)로부터 출력되는 예측영상신호가 감산기(17)에 의해 감산되어 차분신호가 출력되는 동시에, 스위치(20)가 온상태로 된다.
단계 36에서 감산된 차분신호는 단계 37에서 DCT기(3), 양자화기(4), 역양자화기(9), 역DCT기(10)를 거쳐 가산기(19)에 의해 P픽처의 역DCT신호와 예측기(12)로부터 출력되는 예측영상신호(본 예의 경우는 직전의 I픽처로부터의 예측영상신호이지만, P픽처가 계속되는 경우에서는 직전의 P픽처로부터의 예측영상신호가 된다)가 가산되고, 매크로블록 참조신호는 프레임 메모리(11)에 1프레임이 될 때까지 저장된다. 그와 더불어, 예측기(12)는 프레임 참조신호와 프레임 배열기(2)로부터의 매크로블록 동화상신호와의 차분이 최소가 되는 모션벡터를 이용하여 예측영상신호를 생성한다.
단계 37에서 생성된 예측영상신호는 단계 38에서 비교기(15)에 입력되고, 비교기(15)에 의해 대응 예측영상신호와 전환영역 결정기(14)로부터 출력되는 모션벡터 전환영역이 비교됨으로써 매크로블록 전환신호가 카운터(16)에 출력된다. 카운터(16)는 1프레임이 될 때까지 매크로블록 전환신호를 저장한다.
다음에, 단계 34에서 1프레임분의 매크로블록 동화상신호의 압축복호의 종료가 판단되어, 1프레임에 도달하고 있지 않을 때는 단계 32로 되돌아간다. 또, 상술한 예에서는 스위치(20)가 온상태로 되는 단계를 단계 36으로 하였지만, 가산기(19)로 가산을 행하기 전이면 상관없고, 단계 35 또는 단계 37이더라도 되는 것은 물론이다.
배열기(2)로부터 추출된 매크로블록 동화상신호가 I픽처인지는 단계 32에서 판단되며, I픽처가 아닌 경우는 단계 35에서 P픽처인지 B픽처인지가 전환스위치(18)에 의해 판정된다.
매크로블록 동화상신호가 B픽처라고 판정되면, 단계 39에서 당해 매크로블록 동화상신호와 비교기(12)로부터 출력되는 예측 영상신호는 감산기(17)에 의해 감산되어 차분신호를 출력한다. 단계 39에서 감산된 차분신호는 단계 40에서 DCT기(3) 및 양자화기(4)를 거쳐 양자화신호가 생성되고, 단계 34에서 1프레임분의 매크로블록 동화상신호의 압축복호의 종료가 판단되어, 1프레임에 도달하고 있지 않을 때는 단계 32로 되돌아간다.
또, 단계 34에서 1프레임에 도달하고 있다고 판단된 경우에는 단계 41에서카운터(16)로부터 프레임 전환신호가 검출범위 결정기(13)로 출력되고, 검출범위 결정기(13)는 프레임 단위의 모션벡터 검출범위를 예측기(12)로 귀환하는 동시에, 전환영역 결정기(14)로도 출력하고, 전환영역 결정기(14)는 모션벡터 전환영역을 생성하여 비교기(15)로 출력한다.
단계 41에서 프레임 단위의 모션벡터 검출범위를 생성하여 예측기(12)로 출력한 후, 단계 42에서 동화상 영상신호가 종료하고 다음 프레임의 유무를 판정하여, 다음 프레임이 있는 경우는 프레임 배열기(2)로 되돌아가고, 다음 프레임이 없는 경우는 처리를 종료한다.
또, 상술한 실시예에서는 모션벡터 검출범위의 갱신을 프레임 단위로 행하는 경우를 설명하였지만, 화면단위, 프레임 단위, 그룹오브픽처(GOP)단위 등 입력 동화상신호의 소정의 통합단위로 행할 수도 있다. 단, 통합단위에 따라, 모션벡터 검출범위 결정기(13) 및 프레임 메모리(11) 등을 변화시킬 필요가 있다.
또, 상술한 실시예에서는 MPEG 압축을 예로 들어 설명하였지만, 압축복호화방법은 MPEG에 한정되는 것은 아니고, 예를 들어, H.261 또는 H.263 등의 시간방향의 리던던시 정도를 삭감하는 프레임간 예측을 행하는 압축방식이면 무엇이라도 적응할 수 있다.
본 실시예에 의하면, 모션벡터 검출을 위한 검출범위가 복수개 존재하더라도, 하드웨어 규모를 증대시키지 않고, 동화상 압축부호화를 행할 때에, 입력영상의 움직임의 속도에 따라 최적의 모션벡터 검출범위를 선택할 수 있다는 작용을 갖고, 그 결과, 고화질을 실현할 수 있다는 뛰어난 효과가 얻어진다. 또, 움직임이큰 화상이더라도 적정한 모션벡터를 검출할 수 있고, 또 적정한 모션벡터 검출범위를 설정할 수 있다.
또, 본 발명의 프로그램은 상술한 본 발명의 모션벡터 검출방법의 전부 또는 일부 단계(또는, 공정, 동작, 작용 등)의 동작을 컴퓨터에 의해 실행시키기 위한 프로그램으로서, 컴퓨터와 협동하여 동작하는 프로그램이다.
또, 본 발명의 기록매체는 상술한 본 발명의 모션벡터 검출방법의 전부 또는 일부 단계(또는 공정, 동작, 작용 등)의 전부 또는 일부 동작을 컴퓨터에 의해 실행시키기 위한 프로그램을 갖고 있는 기록매체이며, 컴퓨터에 의해 판독 가능하고, 또한, 판독된 상기 프로그램이 상기 컴퓨터와 협동하여 상기 동작을 실행하는 기록매체이다.
또, 본 발명의 상기 「일부 수단(또는 장치, 소자 등)」은 그들의 복수의 수단 중 하나 또는 몇개의 수단을 의미하며, 본 발명의 상기「일부 단계(또는 공정, 동작, 작용 등)」는 그들의 복수의 단계 중 하나 또는 몇개의 단계를 의미한다.
또, 본 발명의 상기「수단(또는 장치, 소자 등)의 기능」은 상기 수단의 전부 또는 일부 기능을 의미하며, 본 발명의 상기「단계(또는 공정, 동작, 작용 등)의 동작」은 상기 단계의 전부 또는 일부 동작을 의미한다.
또, 본 발명의 프로그램의 한 이용형태는 컴퓨터에 의해 판독 가능한 기록매체에 기록되고, 컴퓨터와 협동하여 동작하는 형태여도 된다.
또, 본 발명의 프로그램의 한 이용형태는, 전송매체 내를 전송하며, 컴퓨터에 의해 판독되고, 컴퓨터와 협동하여 동작하는 형태여도 된다.
또, 본 발명의 데이터구조로서는 데이터 베이스, 데이터 포맷, 데이터 표, 데이터 리스트, 데이터의 종류 등을 포함한다.
또, 기록매체로서는 ROM 등이 포함되고, 전송매체로서는 인터넷 등의 전송매체, 광ㆍ전파ㆍ음파 등이 포함된다.
또, 상술한 본 발명의 컴퓨터는 CPU 등의 순수한 하드웨어에 한정되지 않고, 펌웨어나 OS, 또 주변기기를 포함하는 것이어도 된다.
한편, 이상 설명한 바와 같이, 본 발명의 구성은 소프트웨어적으로 실현해도 되고, 하드웨어적으로 실현해도 된다.
이상의 설명에서 알 수 있는 바와 같이, 본 발명은 움직임이 큰 화상이더라도 적정한 모션벡터를 검출할 수 있고, 또, 적정한 모션벡터 검출범위를 설정할 수 있는 동화상 압축 부호화장치, 모션벡터 검출방법, 기록매체 및 프로그램을 제공할 수 있다.

Claims (14)

  1. 입력 동화상영상을 1프레임당 N(단, N은 2 이상의 자연수)개로 세분화한 매크로블록 동화상신호를 생성하는 매크로블록 생성수단과,
    상기 매크로블록 동화상신호를 압축부호화한 후에 복호화하여 복호화 동화상신호를 생성하는 부호화ㆍ복호화수단과,
    상기 복호화 동화상신호와 상기 매크로블록 동화상신호로부터 제 1 모션벡터 검출범위 내에서 모션벡터를 검출하는 모션벡터 검출수단과,
    검출된 상기 모션벡터 중, 상기 제 1 모션벡터 검출범위의 가장 바깥선인 제 1 최외곽선과, 상기 제 1 모션벡터 검출범위의 내측에 있는 제 2 모션벡터 검출범위의 가장 바깥선인 제 2 최외곽선과의 사이에 있는 모션벡터의 수를 제 1 모션벡터의 수로서 카운트하는 모션벡터 카운트수단과,
    카운트된 상기 제 1 모션벡터의 수에 기초하여 상기 제 1 모션벡터 검출범위를 확대하는 모션벡터 검출범위 결정수단을 구비한 것을 특징으로 하는 동화상 압축 부호화장치.
  2. 제 1항에 있어서,
    상기 모션벡터 카운트수단은 상기 제 2 모션벡터 검출범위의 내측에 있는 제 3 모션벡터 검출범위 내에 있는 모션벡터의 수를 제 2 모션벡터의 수로서 카운트하고,
    상기 모션벡터 검출범위 결정수단은 카운트된 상기 제 2 모션벡터의 수에 기초하여 상기 제 1 모션벡터 검출범위를 축소하는 것을 특징으로 하는 동화상 압축 부호화장치.
  3. 제 1항에 있어서,
    상기 모션벡터 검출범위 결정수단은 카운트된 상기 제 1 모션벡터의 수가 소정의 임계값보다 많은 경우 상기 제 1 모션벡터 검출범위를 확대하고, 상기 소정의 임계값보다 작은 경우 상기 제 1 모션벡터 검출범위를 확대하지 않거나 또는 상기 제 1 모션벡터 검출범위를 변경하지 않는 것을 특징으로 하는 동화상 압축 부호화장치.
  4. 제 1항에 있어서,
    상기 모션벡터 검출범위 결정수단은 카운트된 상기 제 1 모션벡터의 수가 많을수록 상기 제 1 모션벡터 검출범위의 확대율을 크게 하는 것을 특징으로 하는 동화상 압축 부호화장치.
  5. 제 2항에 있어서,
    상기 모션벡터 검출범위 결정수단은 카운트된 상기 제 2 모션벡터의 수가 많을수록 상기 제 1 모션벡터 검출범위의 축소율을 크게 하는 것을 특징으로 하는 동화상 압축 부호화장치.
  6. 제 1항에 있어서,
    상기 모션벡터 검출범위 결정수단은 미리 복수종류의 모션벡터 검출범위를 갖고 있고,
    그 복수종류의 모션벡터 검출범위로부터 카운트된 상기 제 1 모션벡터의 수가 많을수록 큰 모션벡터 검출범위를 선택하여, 상기 제 1 모션벡터 검출범위로 하는 것을 특징으로 하는 동화상 압축 부호화장치.
  7. 제 2항에 있어서,
    상기 모션벡터 검출범위 결정수단은 미리 복수종류의 모션벡터 검출범위를 갖고 있고,
    그 복수종류의 모션벡터 검출범위로부터 카운트된 상기 제 2 모션벡터의 수가 많을수록 작은 모션벡터 검출범위를 선택하여 상기 제 1 모션벡터 검출범위로 하는 것을 특징으로 하는 동화상 압축 부호화장치.
  8. 제 1항에 있어서,
    상기 모션벡터 검출범위 결정수단은 상기 제 1 모션벡터 검출범위의 갱신을 P프레임마다 행하거나, 또는 P프레임을 n개(단, nN의 자연수)로 분할한 분할단위마다 행하며,
    상기 제 1 모션벡터 검출범위가 갱신될 때 상기 모션벡터 검출범위 결정수단은 상기 P프레임의 또는 상기 분할단위의 카운트된 상기 제 1 모션벡터의 수를 상기 P프레임으로 또는 상기 분할단위로 존재하는 매크로블록 동화상신호의 수로 나눈 수가 소정의 임계값 이상이 된 경우에, 상기 제 1 모션벡터 검출범위를 확대하는 것을 특징으로 하는 동화상 압축 부호화장치.
  9. 제 1항에 있어서,
    상기 모션벡터 검출범위 결정수단은 상기 제 1 모션벡터 검출범위의 갱신을 P프레임마다 행하거나, 또는 P프레임을 n개(단, nN의 자연수)로 분할한 분할단위마다 행하며,
    상기 제 1 모션벡터 검출범위가 갱신될 때, 상기 모션벡터 검출범위 결정수단은 상기 P프레임의 또는 상기 분할단위의 카운트된 상기 제 2 모션벡터의 수를 상기 P 프레임으로 또는 상기 분할단위로 존재하는 매크로블록 동화상신호의 수로 나눈 수가 소정의 임계값 이상이 된 경우에, 상기 제 1 모션벡터 검출범위를 축소하는 것을 특징으로 하는 동화상 압축 부호화장치.
  10. 제 1항, 3항, 4항, 6항 및 8항 중 어느 한 항에 있어서,
    상기 모션벡터 검출수단은 상기 제 1 모션벡터 검출범위를 확대할 때, 상기 제 2 모션벡터 검출범위를 확대하는 것을 특징으로 하는 동화상 압축 부호화장치.
  11. 제 2항, 4항, 7항 및 9항 중 어느 한 항에 있어서,
    상기 모션벡터 검출수단은 상기 제 1 모션벡터 검출범위를 축소할 때, 상기 제 3 모션벡터 검출범위를 축소하는 것을 특징으로 하는 동화상 압축 부호화장치.
  12. 입력 동화상영상을 1프레임당 N(단, N은 2 이상의 자연수)개로 세분화하여 생성된 매크로블록 동화상신호를 압축부호화한 후에, 복호화하여 생성된 복호화 동화상신호와, 상기 매크로블록 동화상신호로부터 제 1 모션벡터 검출범위 내에서 모션벡터를 검출하는 모션벡터 검출단계와,
    검출된 상기 모션벡터 중, 상기 제 1 모션벡터 검출범위의 가장 바깥선인 제 1 최외곽선과, 상기 제 1 모션벡터 검출범위의 내측에 있는 제 2 모션벡터 검출범위의 가장 바깥선인 제 2 최외곽선 사이에 있는 모션벡터의 수를 제 1 모션벡터의 수로서 카운트하는 모션벡터 카운트단계와,
    상기 제 1 모션벡터 검출범위의 가장 바깥선인 제 1 최외곽선과, 상기 제 1 모션벡터 검출범위의 내측에 있는 제 2 모션벡터 검출범위의 가장 바깥선인 제 2 최외곽선으로서, 상기 제 1 최외곽선에 인접하는 하나 또는 복수개의 제 2 최외곽선 상에 있는 모션벡터의 수인 제 1 모션벡터의 수를 카운트하는 모션벡터 카운트단계와,
    카운트된 상기 제 1 모션벡터의 수에 기초하여 상기 제 1 모션벡터 검출범위를 확대하는 모션벡터 검출범위 결정단계를 구비한 것을 특징으로 하는 모션벡터 검출방법.
  13. 제 12항에 기재된 모션벡터 검출방법의, 입력 동화상영상을 1프레임당 N(단, N은 2 이상의 자연수)개로 세분화하여 생성된 매크로블록 동화상신호를 압축부호화한 후에 복호화하여 생성된 복호화 동화상신호와, 상기 매크로블록 동화상신호로부터 제 1 모션벡터 검출범위 내에서 모션벡터를 검출하는 모션벡터 검출단계와,
    검출된 상기 모션벡터 중, 상기 제 1 모션벡터 검출범위의 가장 바깥선인 제 1 최외곽선과, 상기 제 1 모션벡터 검출범위의 내측에 있는 제 2 모션벡터 검출범위의 가장 바깥선인 제 2 최외곽선과의 사이에 있는 모션벡터의 수를 제 1 모션벡터의 수로서 카운트하는 모션벡터 카운트단계와,
    카운트된 상기 제 1 모션벡터의 수에 기초하여 상기 제 1 모션벡터 검출범위를 확대하는 모션벡터 검출범위 결정단계를 컴퓨터에서 실행시키기 위한 것을 특징으로 하는 프로그램.
  14. 제 13항에 기재된 프로그램을 갖고 있는 기록매체로서, 컴퓨터에 의해 처리 가능한 것을 특징으로 하는 기록매체.
KR1020037013911A 2001-12-25 2002-12-24 동화상 압축 부호화장치 및 모션벡터 검출방법 KR100632072B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001391441 2001-12-25
JPJP-P-2001-00391441 2001-12-25
PCT/JP2002/013413 WO2003056838A1 (en) 2001-12-25 2002-12-24 Moving picture compression/coding apparatus and motion vector detection method

Publications (2)

Publication Number Publication Date
KR20040016856A true KR20040016856A (ko) 2004-02-25
KR100632072B1 KR100632072B1 (ko) 2006-10-04

Family

ID=19188521

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037013911A KR100632072B1 (ko) 2001-12-25 2002-12-24 동화상 압축 부호화장치 및 모션벡터 검출방법

Country Status (6)

Country Link
US (1) US20040105589A1 (ko)
EP (1) EP1460854A4 (ko)
KR (1) KR100632072B1 (ko)
CN (1) CN1266947C (ko)
TW (1) TWI225372B (ko)
WO (1) WO2003056838A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012105807A3 (ko) * 2011-01-31 2012-12-13 한국전자통신연구원 움직임 벡터를 이용한 영상 부호화/복호화 방법 및 장치

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050169376A1 (en) * 2004-01-30 2005-08-04 Pai Ramadas L. Motion vector address computer error detection
KR100763205B1 (ko) * 2006-01-12 2007-10-04 삼성전자주식회사 모션 역변환을 사용하여 모션 예측을 수행하는 방법 및장치
WO2007093780A2 (en) * 2006-02-13 2007-08-23 Snell & Wilcox Limited Method and apparatus for modifying a moving image sequence
US7916141B2 (en) * 2006-04-10 2011-03-29 Choi Kum-Young Image processing system using vector pixel
CN101137065A (zh) * 2006-09-01 2008-03-05 华为技术有限公司 图像编码方法、解码方法、编码器、解码器、编解码方法及编解码器
CN102325257A (zh) * 2007-07-20 2012-01-18 富士胶片株式会社 图像处理设备和图像处理方法
US8649339B2 (en) * 2010-10-22 2014-02-11 Motorola Solutions, Inc. Method and apparatus for distributing video packets over multiple bearers for providing unequal packet loss protection
US8428023B2 (en) * 2010-10-22 2013-04-23 Motorola Solutions, Inc. Method and apparatus for distributing video packets over multiple bearers for providing unequal packet loss protection
EP3139611A1 (en) 2011-03-14 2017-03-08 HFI Innovation Inc. Method and apparatus for deriving temporal motion vector prediction
JP6137302B2 (ja) * 2013-03-29 2017-05-31 富士通株式会社 符号化装置、符号化方法、および符号化プログラム
US11812168B2 (en) * 2020-01-07 2023-11-07 Semiconductor Components Industries, Llc Imaging devices with image transform circuitry for improved motion detection

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2231225B (en) * 1989-04-27 1993-10-20 Sony Corp Motion dependent video signal processing
TW224553B (en) * 1993-03-01 1994-06-01 Sony Co Ltd Method and apparatus for inverse discrete consine transform and coding/decoding of moving picture
US5537155A (en) * 1994-04-29 1996-07-16 Motorola, Inc. Method for estimating motion in a video sequence
JP3094893B2 (ja) * 1995-03-03 2000-10-03 ケイディディ株式会社 動画像符号化装置
US5841476A (en) * 1995-03-03 1998-11-24 Kokusai Denshin Denwa Co. Ltd. Coding apparatus for encoding motion picture
JPH0955941A (ja) * 1995-08-16 1997-02-25 Sony Corp 画像符号化方法、画像符号化装置、及び画像符号化データの記録装置
JP3994445B2 (ja) * 1995-12-05 2007-10-17 ソニー株式会社 動きベクトル検出装置及び動きベクトル検出方法
JP3724662B2 (ja) * 1996-04-12 2005-12-07 ソニー株式会社 画像符号化装置及び画像符号化方法
US5911008A (en) * 1996-04-30 1999-06-08 Nippon Telegraph And Telephone Corporation Scheme for detecting shot boundaries in compressed video data using inter-frame/inter-field prediction coding and intra-frame/intra-field coding
JPH1023420A (ja) * 1996-07-02 1998-01-23 Matsushita Electric Ind Co Ltd 動き検出方法および動き検出装置
JPH1155677A (ja) * 1997-08-08 1999-02-26 Fujitsu Ltd 動画像符号化装置
JP2891250B2 (ja) * 1997-10-21 1999-05-17 日本電気株式会社 動画像符号化方法および装置
JP3149840B2 (ja) * 1998-01-20 2001-03-26 日本電気株式会社 動きベクトル検出装置及び方法
JP4378824B2 (ja) * 2000-02-22 2009-12-09 ソニー株式会社 画像処理装置及び方法
EP1134981A1 (en) * 2000-03-17 2001-09-19 STMicroelectronics S.r.l. Automatic setting of optimal search window dimensions for motion estimation

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012105807A3 (ko) * 2011-01-31 2012-12-13 한국전자통신연구원 움직임 벡터를 이용한 영상 부호화/복호화 방법 및 장치
KR101378888B1 (ko) * 2011-01-31 2014-04-02 한국전자통신연구원 움직임 벡터를 이용한 영상 부호화 장치
US10244252B2 (en) 2011-01-31 2019-03-26 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding images using a motion vector
US12003753B2 (en) 2011-01-31 2024-06-04 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding images using a motion vector

Also Published As

Publication number Publication date
TWI225372B (en) 2004-12-11
TW200301655A (en) 2003-07-01
EP1460854A1 (en) 2004-09-22
EP1460854A4 (en) 2008-10-22
WO2003056838A1 (en) 2003-07-10
CN1266947C (zh) 2006-07-26
KR100632072B1 (ko) 2006-10-04
CN1505900A (zh) 2004-06-16
US20040105589A1 (en) 2004-06-03

Similar Documents

Publication Publication Date Title
JP5030591B2 (ja) インターレース・ビデオの符号化および復号
JP5873536B2 (ja) 動き予測検索範囲及び拡張動きベクトルの範囲の動的選択
US6542642B2 (en) Image coding process and motion detecting process using bidirectional prediction
US20070268964A1 (en) Unit co-location-based motion estimation
US20060050786A1 (en) Moving picture coding apparatus and computer program product
JP5216710B2 (ja) 復号化処理方法
JP2004336369A (ja) 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム
KR20050031674A (ko) 동영상 부호화기에서의 예측 수행 방법 및 장치
JP4195057B2 (ja) 適応動きベクトルの探索領域を決定する方法、および適応動きベクトルの探索領域を決定する画像圧縮装置。
KR100632072B1 (ko) 동화상 압축 부호화장치 및 모션벡터 검출방법
JPH10336672A (ja) 符号化方式変換装置およびその動きベクトル検出方法
JPH0846969A (ja) 映像信号符号化方式
US6788741B1 (en) Device and method of retrieving high-speed motion
JP4034180B2 (ja) 動画像圧縮符号化装置、及び動きベクトル検出方法
KR200309401Y1 (ko) 디지털 영상압축 시스템
KR100229794B1 (ko) 움직임 벡터 정보에 대한 오류 복원기능을 갖는영상복호화기
JPH06105299A (ja) 動画像圧縮装置
JP2005244542A (ja) 動画像符号化装置、動画像符号化方法
JP2006254485A (ja) 動画像復号化装置
JP2008016985A (ja) 動画像符号化装置
JP2003070003A (ja) 動き補償フレーム間予測符号化方法/復号化方法および動き補償フレーム間予測符号化/復号化装置
JPH09200773A (ja) 画像符号化装置
JP2004080682A (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: 20090925

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee