KR100270247B1 - 차분 펄스부호 변조시스템에서 이동벡터를 유도 및 이용하는 장치 - Google Patents
차분 펄스부호 변조시스템에서 이동벡터를 유도 및 이용하는 장치 Download PDFInfo
- Publication number
- KR100270247B1 KR100270247B1 KR1019920017274A KR920017274A KR100270247B1 KR 100270247 B1 KR100270247 B1 KR 100270247B1 KR 1019920017274 A KR1019920017274 A KR 1019920017274A KR 920017274 A KR920017274 A KR 920017274A KR 100270247 B1 KR100270247 B1 KR 100270247B1
- Authority
- KR
- South Korea
- Prior art keywords
- frame
- block
- anchor
- motion vector
- motion
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods 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)
- Image Processing (AREA)
Abstract
미분펄스 코드변조방식은 고정프레임에서 블록의 이동벡터로부터 유도되는 B프레임에서 블록에 대한 양방향 이동 추정을 이용하며, 이동추정을 달성하기 위하여 그의 이동벡터에 따른 영상이 B프레임에서의 블록과 대부분 오버랩된다.
Description
제1도는 IS시스템에 이용되는 I, B및 P프레임을 나타낸 도.
제2도는 IS시스템에 이용되는 이동벡터를 나타낸 도.
제3도는 프레임을 IS시스템에서 처리하는 순서를 나타낸 도.
제4도는 B프레임에 대한 이동벡터가 본 발명에 따른 P프레임에 대한 이동벡터로부터 유도되는 방법을 나타낸 도.
제5도는 P프레임의 이동벡터를 따라 이전의 앵커프레임으로 이동하는 P프레임에서의 이동블록의 투영에 의해 나타날 수 있는 B프레임내의 4개 블록을 나타낸 도.
제6도는 본 발명의 실시예에서 사용한 영역오버랩 이동벡터 계산기의 입/출력을 나타낸 도.
제7, 8, 9 및 10도는 P프레임에서의 이동블록의 상부 좌측코너를 기준점으로 사용하는 본 발명의 영역 오버랩 이동벡터 계산기의 동작의 플로우차트.
제11도는 독립조사(IS: Independent Search)를 이용하는 시스템에 대한 인코더의 블록도.
제12도는 IS시스템에서 B프레임을 예측하고 예측된 B프레임을 형성하는 모드를 선택하기 위한 수단의 블록도.
제13도는 IS시스템에 대한 디코더의 블록도.
제14도는 B프레임에서의 예측된 블록에 대한 이동벡터를 결정하기 위하여 본 발명의 영역 오버랩 법을 이용하는 인코더의 블록도.
제15도는 B프레임을 예측하고 예측된 B프레임을 형성하는 모드를 선택하기 위한 수단의 블록도.
제16도는 B프레임을 예측하고 예측된 B프레임을 형성하는 모드를 선택하기 위한 제2수단의 블록도.
제17도는 이동벡터를 결정하기 위하여 본 발명의 영역 오버랩 법을 이용하는 방법에 대한 디코더의 블록도.
제18도는 프레임을 디코더에서 수신하고 처리하는 순서를 나타낸 도.
제19도는 프레임을 디코더에서 영상재생수단으로 출력하는 순서를 나타낸 도.
* 도면의 주요부분에 대한 부호의 설명
51 : 소오스 52 : 아날로그/디지탈 장치
54 : 감산기 55 : 전송 프로세서
56 : 퀀타이저 57 : 인버스 퀀타이저
59 : 가산기 62a 62e : 프레임 딜레이
63 : 가변 길이 코더 65 : 버퍼 제어기
66 : 신호 컨베이어 67 : 추정기
68 : 보상기 80 89 : 선택 블록
87 : 셀렉터
본 명세서에서 참조로 끝부분에 명시되었고 항목 1, 2 및 3에서 기술되었으며 동화상 전문가 그룹(Moving Picture Experts Group)에 의해서 제시된 독립 조사(Independent Search ; IS)로 언급되는 차분펄스 부호변조(Differential Pulse Code Modulation; DPCM) 시스템에 있어서, 3개의 프레임 타입이 제1도에 나타난 바와 같이 사용된다. 문자는 프레임의 타입을 나타내며, 아래의 숫자는 시스템의 입력에서 프레임의 발생순서를 나타낸다. I0, I9는 내부 프레임이라 한다. 이들 내부 프레임의 각각은 프레임내에서 화소만을 사용하여 부호화된다. 그 후 부호화된 프레임은 전송된다.
P3와 같은 예측 프레임은 다음의 방법으로 I0로부터 부호화된다. P3는 일축에서 이동블록이라 부르는 8개의 화소를 갖는 동일한 블록으로 분할된다. P3의 각 이동블록에 대해서, 이동블록과 정합하는 동일한 형태 및 크기의 블록을 찾기 위해서 I0프레임에서 조사가 행해진다. 매칭블록이 위치하는 경우, 이동블록에 대한 그 위치는 이동블록에서 매칭블록까지의 상/하 화소 수 및 좌/우 화소수를 나타내는 이동벡터(mv)에 의해서 표시된다. 이러한 상기 이동벡터가 전송된다. 또한 이동블록과 상응하는 매칭블록 사이의 차분이 형성된다. 이것을 나머지(residue)라 부르며, 부호화되어 전송된다. 디코더에서, I0프레임은 복호화되고 예측 프레임(P3)은 이동벡터를 사용하여 I0에 적절한 매칭블록을 표시함으로써 형성된다. 이후, 여러블록에대한 나머지가 가산된다. 프레임(P6)은 유사한 방법으로 P3으로부터 부호화된다. 다수의 P프레임이 이러한 방법으로 선행하는 P프레임으로부터 부호화되었을 때, 누적 에러는 상당히 클수도 있기에 상기한 바와 같이 또다른 I프레임이 전송되며, 새로운 일련의 P프레임이 상기 I프레임으로부터 형성된다. I, P프레임은 앵커프레임이라 부른다.
B프레임은 앵커프레임 사이에서 발생하며, 상기 B프레임을 부호화하는데 사용되는 이동벡터가 제2도에 도시된다. 이동벡터(mv)의 첫번째 아래첨자는 이동블록이 위치하는 프레임을 지시하며, 두번째 아래첨자는 매칭블록용으로 조사되는 프레임을 가르킨다. 또한, 상기한 바와 같이 프레임(P3)을 부호화하는데 있어서, mv30은 프레임(P3)에서 이동블록과 정합하는 I0에서의 블록 위치를 나타내고, mv63는 P6에서 이동블록과 정합하는 P3에서의 블록 위치를 나타내는 이동벡터이다.
B프레임의 각 이동블록에 대하여, 이후의 앵커프레임에 관련된 것과 이전의 앵커프레임에 관련된 것인, 두개의 이동벡터가 유도된다. 따라서, mv23은 B2에서의 이동블록에 대한 P3에서의 매칭블록 위치를 나타내며, mv20은 B2에서의 이동블록에 대한 I0에서의 매칭블록의 위치를 나타낸다. 디코더에 전송하는 것은, 필요한 비트율을 줄이는 최소의 평균제곱에러(MSE : Mean Square Error)를 이후의 동작모드중 어느 모드가 산출하는가를 각 블록에 대하여 검색함으로써 결정될 수 있다. 각 이동블록에 대해서, MSE는 이동블록과 매칭블록의 상응하는 화소 사이의 차분의 제곱을 더하고 그 결과를 이동블록에서의 화소 수로 나눔으로써 계산된다. 소위 역방향 모드(backward mode)에서, MSE는 B2에서의 이동블록과 P3에서의 매칭블록 사이에서 계산되며, 순방향 모드(forward mode)에서, MSE계산은 I0에서의 매칭블록과 함께 행해진다. 소위 보간 모드에서, P3, I0에서의 매칭블록은 평균화되며, MSE는 상기 평균화된 매칭블록으로 계산된다. 최소 MSE가 발생하는 모드가 디코더에 전달된다. 따라서, 역방향 모드가 최소 MES를 생성한다면, 이동벡터(mv23)는 자신이 역방향 벡터라는 표시와 함께 전송되고, 순방향 모드가 최소 MSE를 생성한다면, 이동벡터(mv20)는 자신이 순방향 벡터라는 표시와 함께 전송된다. 보간 모드가 최소 MSE를 생성한다면, 양 벡터(mv23, mv20)는 상기 양 벡터가 전송된다는 표시와 함께 전송된다. 물론, 선택된 모드에 대해서, 이동블록으로부터 매칭블록을 감산하여 얻어진 나머지는 또한 부호화되어 전송된다.
제1도는 인코더에 의해서 수신되고 관찰자에게 나타내어지는 순서로 여러 프레임을 도시하며, 제3도는 제1도의 프레임이 처리되는 순서를 나타낸다. P-3, 및 I0는 B-2, B-1이 상기한 바와 같이 처리되기 전에 이용가능하여야 하며, I0는, B1, B2가 처리될 수 있기 전에 P3이 이용가능할 수 있을 때까지 메모리에 유지되어야 한다. 또한 제3도의 프레임 순서는 프레임을 전송하는 순서이다.
요약해서, 전송에는, I0프레임, mv30과 같은 P로부터 I로의 프레임 이동벡터, P3와 같은 예측 프레임에 대한 나머지, 선택된 동작 모드로부터 발생하는 각 B프레임에 대한 나머지, 및 선택된 동작 모드를 지시하는 신호에 따른 각 B프레임에 대한 하나이상의 이동벡터가 포함된다. 디코더가 상기 정보로부터 프레임을 재구성할 수 있는 방법은 명백하다.
여기에서는 참고로 나타낸 항목 4에서, 차분펄스 부호변조 시스템은, 그 다음 앵커프레임의 블록과 정합하는 앵커프레임에서의 블록의 상대위치를 지시하는 제2도의 mv30또는 mv63과 같은 이동벡터로부터 B프레임에 대한 이동벡터가 유도되는 사실 외에는 상기한 IS시스템과 같이 기술된다. B프레임에서 이동벡터용으로 선택된 이동벡터는 동일 공간 위치에 있는 이후의 앵커프레임에서의 블록에 대한 이동벡터이다. 선형이동이 취하여 진다면, 이동벡터(mv20(i, j))는 2/3 mv30(i, j)와 같고, mv23(i, j)는 -1/3 mv30(i, j)와 같을 것이다. 이 방법은 B프레임에 대한 이동벡터를 전송하지 않는 이점이 있는 반면, 사용되는 이동벡터는 대부분의 경우에 나머지의 상당량이 전송되는 것을 요구한다.
여기에서 참고로 나타낸 항목 5에서, B프레임의 블록을 통과하는 mv30또는 mv63과 같은 벡터의 끝에 있는 전/후 앵커프레임에서의 블록은 평균화되어 그 블록에서 데이터가 산출된다. 이 방법은 B프레임에 대한 이동벡터의 전송을 필요로 하지 않을지라도, 갭 및 오버랩 문제를 겪는다.
본 발명에 따라서, B프레임에서의 블록에 대한 이동벡터는, 이후의 앵커프레임의 이동벡터를 따라 이전의 앵커프레임으로의 투영이 상기 블록과 최대로 오버랩되는 상기 이후의 앵커프레임에서의 이동블록에 대한 이동벡터로부터 유도된다. 따라서 IS시스템에서처럼, mv20및 mv23과 같은 제4도의 이동벡터를 발견하기 위해 이후의 및 이전의 앵커프레임에서의 매칭블록을 발견할 필요가 없다. 대신에, B2프레임에서의 이동블록에 대한 이동벡터 mv20(i, j)는 2/3mv30(k, l)이고, mv23(i, j)는 -1/3 mv30(k, 1)이며, 여기서 k, l은 제4도에 대하여 설명되는 바와 같이 선택된다. 일단 이러한 B프레임 이동벡터가 유도되면, 어떤 모드가 최소 나머지를 산출하는지를 결정하기 위해서 IS시스템과 관련하여 논의된 여러 모드로 인코더에서 사용될 수 있다. 이후, 이동벡터가 아닌 모드만을 전송하면 된다.
이후의 앵커프레임에 대한 이동벡터는 적분한 화소 간격의 수로 표현되는 반면, B프레임에서의 블록에 대한 이동벡터는 화소 간격의 분수로 환산하여 표현될 수도 있다. 이것은 B프레임에 대한 이동벡터가 P프레임에 대한 이동벡터의 분수이기 때문이다. 도면에서는 두개의 B프레임(B1, B2)을 사용하였고, B프레임 이동벡터에 대한, 보다 짧은 이동벡터의 해상도는 화소 간격의 1/3이고, 보다 긴 이동벡터의 해상도는 화소간격의 2/3이다. 그러므로, 이동벡터가 화소로부터 프레임을 재구성하는데 이용되고 보간이 사용되는 경우, 보다 양호한 영상을 형성할 수 있다. B2프레임에서 이동블록에 대한 1/3 화소 해상도를 갖는 독립 이동벡터를 얻기 위하여, I0, P3프레임 각각에서의 위치보다 9배인 위치가 검사되어야 한다.
본 발명에 따라 P프레임벡터로부터 B프레임에 대한 이동벡터를 유도하는 주요 이점은, 대부분의 상황에서 IS시스템에서보다는 나머지가 덜 생기고, B프레임에 대한 이동벡터가 전송될 필요가 없다는 사실에 있다. IS시스템에서처럼, 모드를 나타내는 신호가 전송되어야 하지만, 이동벡터보다 매우 적은 비트가 필요하다.
제4 및 제5도에 있어서는, B프레임에서의 블록에 대한 이동벡터를 유도하기 위하여 본 발명에서 이용한 영역 오버랩(AO)법이 도시되었다. 제4도에는 프레임(I0, B1, B2, 및 P3)이 도시되었다. 상기 프레임은 화소폭이 L1, 화소높이가 L2인 화소의 동일한 직사각형 블록으로 분할되며, 프레임의 상부좌측코너에 원점을 갖는 i, j좌표에 따라 위치한다. 각 프레임내에서, 화소들은 x, y좌표로 식별된다.
제4도에서, P3프레임의 i=0, j=0에서의 이동블록은 자신의 이동벡터(2)와 평행한 방향인 I0프레임 쪽으로 투영된 것과 같은 음영으로 도시된다. B1프레임에서 투영된 영역을 직사각형(4)으로 도시하였으며, B2프레임에서 투영된 영역을 직사각형(5)으로 도시하였다.
B1프레임의 여러 블록과 직사각형(4)이 겹치는 영역을 결정하는 방법은 제4도 및 제5도를 참조하여 설명될 것이다. P3의 이동블록에서의 어떤 점을 기준으로 사용할 수 있지만, 상기 예에서는 상부좌측코너(6)를 사용하였다. j=0, i=2 위치에 있는 블록(6')에서 영상이 B1프레임과 교차되어 도시되었다. 직사각형(4)의 영역이 B1프레임의 4개 블록과만 겹칠 수 있는 것을 관찰할 수 있을 것이다. 예를 들면, 코너(6)의 영상과 교차하는 6', 우측 블록, 아래블록 및 대각선상의 블록, 즉 j=0, i=2; j=1, i=2; j=0, i=3 및 j=1, i=3에 위치한다.
4개 블록의 각각과 겹치는 화소 영역은 다음의 공식에 의해서 결정된다:
여기서, L1는 화소로 된 이동블록의 폭, L2는 화소로 된 이동블록의 높이, u, v는 P프레임의 이동블록이 B프레임상으로 투영되는 한정관계를 갖는 기준점의 화소로 된 x, y좌표값이고, x, y는 화소에서 B프레임 이동블록에 대하여 동일한 한정관계를 갖는 기준점의 화소 좌표이다.
예로써, B1프레임의 j=1, i=2에서의 이동블록과 제4도의 P3프레임의 상부좌측코너에서의 이동블록과의 영상의 오버랩 영역을 발견하기 원한다면, 제5도에서 도시한 바와 같이 L1 = 16화소, L2 = 8화소이다. 관찰에 의해서, 오버랩 폭은 12화소이고, 그 높이는 6이며, 소정의 영역은 12 × 6 = 72화소이다. 규정 관계는 기준점이 블록의 상단 좌측 코너에 있다면, u=12, v=18, x=16, y=16으로 하여, 공식에 따라 오버랩 영역은 :
오버랩 영역(AO)을 계산하는 제6내지 제10도의 플로우차트에 의해서 도시된 바와 같이, B프레임의 블록 각각에서의 오버랩영역은 P프레임에서의 각 이동블록에 대해서 유도되며, B프레임에서의 블록에 대한 벡터는 영상이 최대의 오버랩을 갖는 P프레임에서의 이동블록의 벡터로부터 유도된다.
제6도 내지 제10도에 기술된 알고리즘에 따라서 B프레임의 이동벡터를 결정하는 방법의 플로우차트를 설명한다. 여러 블록에 대한 언급으로서 상기 차트가 자명하게 설명되며, 일반적인 동작은 이하에 설명하고, 사용된 용어는 다음과 같다.
제6도의 블록(7)에서, 다음의 앵커프레임으로부터 이전의 앵커프레임으로의 이동벡터(PMv)는 계산기에 공급되며, 상기 계산기는 제7내지 제10도에서 설명한 방법으로 B프레임에 대한 순방향 및 역방향 이동벡터를 공급한다.
제7도의 블록(8, 10, 12, 14)은 초기 설정을 위한 것이다. 블록(16)에서, P프레임 이동블록의 상단좌측코너의 화소좌표를 알 수 있으며, P프레임 이동벡터를 사용하여, 블록(18)은 영상블록의 상단 좌측코너의 좌표를 B프레임상으로 위치시킨다. 블록(20)에서, P프레임에서의 이동블록의 상부 좌측코너의 영상이 통과하는 B프레임에서의 블록이 식별되며, 블록(22)에서, P프레임에서의 투영된 이동블록과 오버랩될 수도 있는 3개의 블록이 식별된다. 블록(24)에서, k는 1로 설정되고 그 후 루프를 통해 2로 설정될 것이다.
블록(26)에서, 화소의 x, y좌표는 블록(20, 22, 28)에서 확인된 블록의 각각에 대해서 결정된다. AO에 대한 공식은 상기 각 블록에 공급된다. B프레임에서 4개 블록 각각에 대한 A0가 계산된 바와 같이, A0가 이전에 계산된 AO보다 큰지 여부는 블록(31)에서 결정된다. 만약 크다면, 블록(32)은 B블록 테이블을 갱신하며, 블록(34)에서 k에 1이 가산된다. AO가 테이블에 있는 어떠한 것보다도 크지 않다는 것을 블록(3)이 지시하면, 테이블은 변경되지 않으며, 블록(34)에서 실행된다. 블록(36)은 k가 4보다 큰지를 검색하며, 만약 그렇지 않다면, 실행루프는 라인(37)에 의해서 지시된 바와 같이 블록(26)에 복귀한다.
k가 4보다 크다면, P프레임의 투영된 이동블록이 교차할 수도 있는 4개인 모든 블록이 처리된 것을 의미한다. 그 후 블록(38)은 P프레임에서 다른 이동블록으로 진행하도록(i, j)를 반복한다. 블록(40)은 모든 P프레임 이동블록이 처리되었는지를 알기 위해서 체크한다. 모두 처리되지 않았다면, 처리 루프는 라인(41)으로 지시한 바와 같이 블록(16)으로 복귀한다. 모두 처리되었다면, (j, j)는 블록(42)에서 0으로 설정되며 처리는 선택된 P프레임 이동벡터로부터 순방향 및 역방향 B프레임 이동벡터를 유도하도록 설정된다.
이후, B프레임 이동블록 각각에 대해서, 테이블로부터의 벡터는, 블록(44)과 최대로 오버랩되는 상기 B프레임 블록에 대한 투영을 갖는 P프레임의 이동블록용으로 얻어진다. 이후 상기 벡터는 두개 앵커프레임 사이의 B프레임의 위치를 고려하기 위해서 평가된다. 만약 B1이 고려중인 블록이라면, 역방향 벡터는 -2/3 mv30, 순방향 벡터는 +1/3mv30이 될 것이다. 이것이 각 B프레임 블록에 대해서 행하여진 바와 같이, (i, j)좌표는 반복되어 적용된다. 블록(48)에서 모든 B프레임 블록이 처리되었는지를 묻는다. 만약 그렇지 않다면, 처리 루프는 라인(45)으로 도시한 바와 같이 블록(44)에 복귀하며, 그러나 모든 B프레임 블록이 처리되었다면, 다른 B프레임의 블록에 대한 이동벡터를 얻기를 원할 때까지 계산이 완료된다.
제11도는 순방향 및 역방향 벡터를 B프레임에서의 각 블록에 대하여 블록 매칭법에 의해서 유도하는 것과 관련한 이전의 독립 조사법을 사용하는 시스템용 인코더의 블록도를 나타낸다. 소오스(51)로부터의 신호는 A/D장치(52)에서 디지탈화되어 스위치(53)의 (I,P)단자에 공급된다. I프레임을 부호화할때, 스위치(53)는 단자(I, P)와 접속하여, 상기 프레임의 신호를 감산기(54)의 포지티브 입력에 블록단위로 전송한다. 또한 네거티브 입력은 스위치(61)에 의해서 그라운드에 접지된다. 디지탈화된 데이터의 블록은 이산 코사인 변환 프로세서(Discrete Cosine Transform Processor; 55)의 DC 계수에 의해 블록 단위로 전송된다. 상기 계수는 보다 높은 고주파수를 위한 계수의 해상도를 저감하기 위하여 퀀타이저(56)에 의해서 양자화된다.
양자화된 계수는 가변길이 코더(VLC)(63)에 의해서 부호화된 가변길이이며, 그 결과인 비트 스트림은 FIF0버퍼(64)에 결합된다. FIF0버퍼(64)의 출력은 일정한 비트율을 갖는 비트스트림이며 신호 컨베이어(66)에 의해서 출력채널에 전송된다. FIFO버퍼(64)층만은 퀀타이저(56)의 단위크기를 조절하는 버퍼제어기(64)에 의해서 검사되어, VLC(63)에 공급된 신호의 비트율을 증감시키고 이에따라 오버플로우되는 것을 방지한다. 또한 I프레임은 어떤 다른 프레임에 관련하지 않도록 내부적으로 부호화된다. I프레임은, 비록 양자화 에러를 가질지라도, 인버스 퀀타이저(57) 및 인버스 DCT, 즉 IDCT(58)에 의해서 재생되어, 가산기(59)에 공급된다. 이때, 가산기(59)의 출력은 스위치(120)를 통하여 일련의 프레임 딜레이(61a-61e)의 입력에 접속된다.
A/D장치(52)의 출력에서 모든 디지탈화된 프레임은 일련의 프레임 딜레이(60a-60e)에 공급된다. 기술된 바와 같이 I프레임을 즉시 따르는 B프레임은 프레임 딜레이(60a-60e)에 공급되나, 스위치(53)가 단자(B)에 접속되어, B프레임은 단지 이후의 처리를 위해 유지되는 한편, 이전의 B프레임은 스위치(53)의 단자(B)에 공급되어 처리된다.
다음 P프레임(P3)은, 예를 들면 그의 I,P단자와 접속하는 스위치(53)를 다시 설치하고, 그의 P, B단자와 접속하는 스위치(61)를 설치함에 의해서 부호화된다. 가산기(59)의 출력에서의 스위치(120)는 일련의 프레임 딜레이(62a-62e)의 입력에 접속되는 단자(121)에 접속된다.
디지털화되어 입력된 I0프레임은 이동 추정기(67)의 f입력에 접속된 프레임 딜레이(60c)의 출력에 있으며, P3프레임 입력은 이동 추정기(67)의 g입력에 공급된다. 이 기술분야에서 숙련된 자들에게는 공지된 방법으로서, 이동 추정기(67)는 I0에서 매칭블록을 발견할 수도 있는 P3에서 각각의 이동블록에 대하여 지시하는 제2도의 mv30와 같은 이동벡터를 유도한다. 상기 이동벡터는 이동 추정기(67)의 출력(FMv)에서 나타나고 디코더 및 이동보상기 수단(68)에 전송되도록 VLC에 공급된다.
이동보상기(68)는 라인(68')에 의해서 감산기(54)의 포지티브 입력에 결합되어 P3에 대한 디지탈화된 입력데이터를 수신하며, 스위치(73)는 이동보상기(68)의 입력을 딜레이(61c)의 출력에 연결하여 인버스 퀀타이저(57) 및 인버스 DCT(59)에 의해서 재생된 프레임(I0)을 받아들인다. 이동 추정기(67)로부터의 이동벡터를 사용함으로써, 이동보상기(68)는 라인(B)과 스위치(61)를 통해서 감산기(54)의 네거티브입력, 및 가산기(59)에 공급되는 P3에 대한 예측 프레임을 형성하며, 감산기(54)에 의해서 P3에 대한 입력데이터로부터 상기 예측 프레임이 감산되어 차분 신호 또는 나머지 신호가 유도된다.
상기 나머지 신호는 이전에 언급한 I0프레임처럼 유사한 방법으로 양자화된 DCT계수에 전송된다. 또한, VLC(63), FIFO(64), 인버스 퀀타이저(57) 및 인버스 DCT(58)에 의해서 실행된 동작은 I프레임을 처리할 때와 동일하다. IDCT(58)의 출력은 나머지를 나타내고 가산기(59)에 의해서 예측된 P3프레임에 가산되며, 상기 가산기 출력은 일련의 프레임 딜레이(62a-62e)에 저장된다. 처리된 앵커프레임은 프레임 딜레이(61a-61e) 및 (62a-62e)에 교대로 저장된다. 따라서 I0는 딜레이(61a-61e)에 공급된다.
이때, 상기 인코더는 메모리에 상기의 방법으로 I0프레임으로부터 유도된 P3프레임 및 I0프레임을 위한 오리지널 데이터를 갖는다. 디코더에서, 부호화된 I0프레임은 복호화되고 소정의 P프레임은 mv30과 같은 이동벡터의 도움으로 상기 디코더로부터 유도된다. 부호화된 나머지 신호는 복호화되어 P3프레임을 산출하기 위하여 예측 P프레임에 가산된다.
IS시스템에서, I 및 P중 어느 프레임에서도 상기 I 및 P프레임으로부터 B프레임을 형성하는 최상의 모드는 다음의 방법으로 결정된다. 입력 B1프레임은 이동 추정기(67)의 f입력에 접속된 프레임 딜레이(60c)의 출력에서 이용가능하다. I0는 프레임 딜레이(60d)의 출력에 존재하고 스위치(77)를 조정하여 이동 추정기의 입력(h)에 접속되며, 프레임 딜레이(60a)의 출력에 존재하는 입력 프레임(P3)은 스위치(76)를 조절하여 이동 추정기의 입력(e)에 결합된다. B1에서의 모든 이동블록에 대해서 이동 추정기(67)는 제2도의 mv10과 같은 순방향 이동벡터(FMv)를 생성하기 위해서 이전의 앵커프레임(I0)에서 매칭블록을 알 수 있다. B1에서의 모든 이동블록에 대해서 매칭블록은 또한 그 다음의 앵커 프레임(P3)에서 찾을 수 있다. 이것은 제2도에서의 mv13과 같은 역방향 이동 벡터(BMv)에 귀착된다.
기술한 바와같이 유도된 하나 또는 둘의 이동벡터는 제12도에서 기술한 방법으로 이동보상기(68)에 의한 결정에 의존하여 부호화시키기 위하여 VLC(63)에 전송될 수도 있다. 상기 결정에 의존한 선택을 모드라고 하며, 상기 모드를 지시하는 신호는 부호화를 위하여 라인(M)을 통하여 VLC(63)에 전송된다. B프레임은 송신되지 않으나, 디코더에서 모드 신호에 따른 이동벡터를 이용하여 앵커프레임의 하나 또는 두개로부터 재구성된다. 따라서, 모드신호가 P3에서의 매칭블록이 최상의 결과를 제공한다고 지시한다면, 그 매칭블록을 사용한다. I0에서의 매칭블록이 최상이라면, 그것을 사용하고, 블록의 조합이 최상의 결과를 산출한다면, 그 조합을 사용한다. 이것은 상이한 모드가 상이한 블록에 적용될 수 있도록 한 블록씩 행하여진다.
이동벡터 및 모드 신호에 부가하여, 인코더는 선택된 매칭블록 또는 매칭블록의 조합과 B프레임의 대응블록과의 차분을 A/D장치(52)에 의해서 공급할 때 부호화해야 한다. 이것은 선택된 매칭블록 또는 매칭블록의 조합을 라인(B)과 스위치(61)를 통하여 감산기(54)의 네거티브 입력에 공급함으로써 행해진다. 감산기(54)의 출력에서의 차분 즉 나머지는 DCT(55), 퀀타이저(56), VLC(63), FIFO(64)에 의해서 처리된 후 시그널 컨베이어(66)에 공급된다. 인버스 퀀타이저(57) 및 인버스 DCT(58)로 예측블록을 형성할 필요가 없으며, 이것은 복호화된 B프레임이 인코더에서 필요하지 않고, 따라서 인코더에서 형성될 필요가 없기 때문이다. 그러므로 스위치(120)는 오픈 단자로 설정된다.
IS시스템에서 최상의 모드를 선택하는 방법은 다음과 같다. B프레임에 대한 이동벡터(FMv 및 BMv)는 상기 이동벡터중 어느 쪽에서 실제 앵커프레임으로 부터 유도되는데 반하여, 인코더에서 이용가능한 앵커프레임에 의거하여 최상의 모드를 선택하도록, 이러한 실제 프레임은 디코더에서 이용할 수 없다. 디코더에서 재생된 것들과 실질적으로 동일한 앵커프레임은 가산기(59)의 출력에서 생성되고 스위치(120)에 의해서 이전에 기술한 일련의 프레임 딜레이(61a-61e) 및 프레임 딜레이(62a-62e)에 선택적으로 공급된다. 이후의 앵커프레임은 스위치(69) 및 스위치(71,72)에 의해서 이동보상기(68)의 입력(a)에 공급되며, 이전의 앵커프레임은 스위치(70,74 및 75)에 의해서 이동보상기(68)의 입력(b)에 공급된다. 예로서, 최상의 모드가 B1에 대해서 결정되는 경우, 스위치(71)는 프레임 딜레이(62a)의 출력과 접촉하여 놓여지고, 스위치(69)는 스위치(71)와 접촉하여 놓여져 62a의 출력에 있는 그 다음 앵커프레임(P3)이 이동보상기(68)의 a입력에 공급되도록 하며, 스위치(74)가 프레임 딜레이(61d)의 출력과 접촉하여 놓여지고, 스위치(70)가 스위치(74)와 접촉하여 놓여져서 프레임 딜레이(61d)의 출력에 있는 이전의 앵커프레임(I0)이 B입력에 공급되도록 한다. 또한, 스위치(77, 76)는 적절히 설정되어 각각의 입력 프레임(I0, P3)을 선택하도록 한다.
제12도와 관련하여, 이동추정기(67)에 의해서 공급된 FMv 및 BMv 이동 벡터는 각각 선택블록(80, 89)에 의해서 미래의 앵커프레임 및 과거의 앵커프레임으로부터 적절한 순방향 및 역방향 예측된 이동블록을 선택하는데 이용된다. 이들 이동블록은 평균 제곱 오차(Mean Square Error ; MSE) 계산기(85, 84)에 각각 공급된다. 이들 계산기의 각각에 입력되는 다른 것으로는 입력 B프레임 이동블록이 있다. 또한, 보간 예측된 이동블록(interpolative predicted motion block)이라고 하는 제3이동블록은 순방향 및 역방향 예측된 이동블록상의 가중 평균을 실행함에 의해서 생성될 수 있다. 예를 들면, 증폭기(81)는 이전의 앵커프레임으로부터의 블록의 출력을 k로 그리고 이후의 앵커프레임으로부터의 한 프레임을 1-k로 곱할 수 있다. B1의 경우에 있어서, k = 2/3이다. 보간 예측된 이동블록은 제3MSE계산기 단계(86)에 공급된다.
이러한 MSE계산기의 각각은 입력이동블록과 예측 또는 매칭이동블록과의 평균 제곱 오차를 계산한다. 이러한 오차는 세개의 오차중 최소를 결정하고 스위치(88)를 제어하는 셀렉터(87)에 공급되어 최소 오차가 발생하는 예측된 이동블록을 선택한다. 이렇게 선택되어 예측된 이동블록은 제11도의 이동보상기(68)의 리드(B)상에 나타나고 스위치(61)를 통하여 감산기(54)에 공급된다. 또한, 어느 예측 블록이 선택되는지에 관한 모드 정보는 셀렉터(87)와 리드(M)에 의해서 부호화되어 수신기에 전송되도록 전송용 VLC(63)에 공급된다. 특히, 모드정보는 프레임(B1)을 부호화한 경우 3개의 예측 모드중 어느 것이 각 이동블록의 예측에 사용되는지를 수신기에 알려준다.
제13도는 독립 조사용 디코더의 블록도이다. 입력수단(97)은 비트율 신호를 수신하고 가변길이 디코더(VLD)(98)에 공급한다. VLD는 블록데이터를 필수적인 4개의 정보형태, 즉, 양자화된 DCT계수, 순방향 이동벡터(FMv), 역방향 이동벡터(BMv), 및 모드 정보인 상기 4개 정보 형태로 분리한다. 양자화된 DCT계수는 인버스 퀀타이저(99)에 의해서 디퀀타이즈되어 다음의 방법에서 생성될 예측 정보에 가산되도록 나머지 화소로 변환하는 IDCT(1OO)에 공급된다. 예측 정보에는 내부프레임(0 화소)이 없다. P프레임에 대한 예측은 다음과 같이 획득된다. 두 프레임 기억장치(102, 103)중 하나는 예측을 발생하는데 사용되는 이전의 앵커프레임을 포함한다. 순방향 이동벡터 정보를 사용하여, 적합한 이동블록이 이전의 앵커프레임으로부터 선택된다. 상기 이동블록이 스위치(107)를 통과한 후, 가산기(101)에 공급되어 단자(109)에서 P프레임을 형성하도록 나머지 신호에 가산된다. 상기 인코더에서와 같이, 스위치(106)는 수신된 앵커프레임을 프레임 기억장치(I, II)에 교대로 저장하도록 작동되나, 수신된 B프레임은 어느쪽 프레임 기억장치에도 저장되지 않는다.
B프레임이 예측될 경우, 모드 정보는 예측 타입(즉, 순방향, 역방향, 또는 보간)에 대해서 스위치(107)뿐만 아니라 변위 블록(104, 105)을 이용하도록 지령한다. 상기 정보를 모드 정보에 따라 행하는 예측 이동벡터와 함께 사용하여, 적당한 이동블록 또는 (복수의) 블록은 하나 또는 양 프레임 기억장치(102, 103) 로부터 선택된다. 순방향, 역방향 또는 보간 예측된 이동블록은 스위치(107)를 통하여 가산기(101)에 공급된다. 가산기(108)는 보간 예측에 대해서 요구되는 바와 같이 양방향 이동블록의 가중 평균을 실행한다. 프레임 기억장치(I,II)는 인코더에서 프레임 딜레이(61, 62)와 유사한 방법으로 1,2,3,4 또는 5개의 프레임 딜레이에 대한 탭(tap)을 각각 갖는다. 예측은 단자(109)에서 재구성된 B프레임을 형성하기 위하여 나머지(residue) 신호에 가산되는 가산기(101)에 전달된다.
재구성된 프레임은 제18도의 디코더 처리순서에서, 단자(109)에서 나타날 것이다. 스위치(130)는 프레임블록을 제19도에서 도시한 바와 같이 디스플레이 순서로 입력한다. 재구성된 B프레임이 단자(109)에서 발생할 때 스위치(130)는 그것을 즉시 영상출력단자(131)에 공급하도록 설정된다. 재구성된 앵커프레임이 단자(109)에서 발생할 때, 스위치(106)는 프레임 기억장치중 하나에 경로지정하도록 설정되며, 스위치(130)는 나머지 프레임 기억장치내의 앵커프레임을 영상 출력단자(131)에 공급하도록 설정된다.
예를 들어, 프레임(I0)이 프레임 기억장치(I)에 있고, P3가 프레임 기억장치(II)에 있으면, B1은 제18도에 도시한 바와 같이 그 다음 처리될 프레임이며, 즉시 전송된다. 유사하게 B2가 즉시 전송된다. 처리될 그 다음 프레임은 P6이며, 상기 P6은 프레임 기억장치(II)내의 P3가 전송되는 동안 프레임 기억장치(I)에 저장된다.
영역 오버랩 법(AO)
본 발명의 영역 오버랩 법(Area Overlap method)은, B프레임의 예측을 행한다는 점에서 독립 조사법과 다르다. AO법은 아래와 같은 방식으로 B프레임 이동블록을 예측하기 위하여 mv30과 같은 P프레임 이동벡터를 이용한다. 이 논의에 있어서, 참고로 B1, B2를 예측하기 위하여(I0에 관하여) 프레임(P3)에 대한 이동벡터를 사용한다.
제14도는 본 발명을 나타내는 인코더의 블록도이다. 제11도의 구성요소와 상응하는 구성요소는 동일한 방식으로 지정된다. mv30와 같은, P3에 대한 순방향 이동벡터는 각 프레임(B1, B2)(제3도에 도시)에 의해서 요구된 바와 같이 하나 또는 두 프레임의 한 주기(딜레이)동안 메모리(89)에 저장된다. 저장된 이동벡터는, 순방향 및 역방향 이동벡터(AO FMv 및 AO BMv)가 제4내지 제10도에 관련하여 기술된 방법으로 B프레임 이동블록에 대해서 계산되는 영역 오버랩 이동벡터 계산기(90)로 Fmv 메모리(89)에 의해 공급된다. 상술한 바와 같이, B1블록에 대한 역방향 이동벡터는 이동벡터(mv30)의 -2/3이고, 순방향 이동벡터는 1/3mv30이다. 이들 이동벡터는 리드(M')를 통하여 이동보상기(68)에 공급된다.
이동 보상은 여러 방법으로 행할 수 있다. 한 방법은 제15도에 도시하고, 다른 방법은 제16도에 도시한다. 이러한 도면 및 제12도의 상응하는 구성요소는 동일한 방법으로 식별된다. 제15도에서 AO이동벡터는 부화소 위치에서 공간 보간을 행할 수 있는 변위 블록(91, 92)에 공급된다. 가중 평균은 가산기의 출력에서 AO예측된 이동블록을 생성하도록 승산기(93, 94) 및 가산기(95)에 의해 선택된 변위 이동블록의 출력에서 수행된다. 이것은 스위치(88)에 의해서 선택될 제4의 후보자가 된다. 평균제곱에러의 계산은 MSE계산기(96)에서 행해지고, 그 결과는 제12도와 관련하여 미리 설명한 방법으로 최소의 셀렉터(87)에 공급된다. 여기서는 4개의 가능한 예측된 이동블록을 가지며, 셀렉터(87)는 스위치(88)가 최소 에러를 발생하는 예측된 이동블록을 선택하도록 지령한다. 이들 모드중 어느 것이 최소 에러를 발생하는지에 대한 정보는 이전과 같이 수신기에 또한 전송된다. 제16도는 이동 보상의 대체 방법이다. 이것은, 후보자로서 AO예측된 이동블록이 보간 예측된 이동블록을 대체한 점에서 제15도와 다르며, 제16도에서 AO예측된 이동블록은 체크될 후보자의 리스트에 더해진다.
본 발명에 따라 도출된 AO이동벡터, AO FMv 및 AO BMv는 양방향 모드에서 사용된 반면, IS시스템의 FMv, BMv벡터에 유사한 방법으로 단방향모드에 또한 사용될 수도 있다.
AO법용 디코더는 제13도의 것에 상응한 구성요소가 동일한 방법으로 나타내는 제17도에서 도시된다. B프레임에 대한 이동벡터가 이전의 앵커프레임에 관련된 앵커프레임에 대한 이동벡터로부터 본 발명에 따라서 또한 유도될 수 있다는 사실에서, 블록(110, 111)은 이 목적을 위한 디코더에 의해 사용된다. 이것은 제14도에서 블록(89, 90)과 동일하다. 모드 정보는 예측 모드에 대하여 스위치(107)뿐만 아니라 변위 블록(104, 105)을 B프레임 이동블록용으로 사용되도록 지시한다. 다른 점에서는, 상기 디코더의 동작이 IS용 디코더의 동작과 동일하다.
참조문
[1] S.M.E. 그룹, MPEG비디오 시뮬레이션 모델 트리(SM3)
1990년 7월, 표준화를 위한 국제 기구
[2] D.S.R. 센터, NBC, N.A. 필립스, 및 T.C. 일렉트로닉스, 어드밴스 디지털 텔레비전 시스템 설명
1991년 2월, 텔레비전 리서치 컨소시움
[3] A. Puri 및 R. Aravind.
1990년, SPIE 비주얼 커뮤니케이션 및 이미지 프로세싱에서 페이지 1560-1571의 "0n comparing motion-interpolation structures for video coding"
[4] A. Puri., R. Aravind, B.G. Haskell 및 R. Leonardi
1990년 8월, 시그널 프로세싱 : 이미지 커뮤니케이션에서 페이지 127-144의 "Video coding with motion-compensated interpolation for CD-ROM application"
[5] A. Nagata, I.Inove, A. Tanaka 및 N. takeguchi
1990년 8월, 시그널 프로세싱 : 이미지 커뮤니케이션에서 페이지 109-116 의 "Moving Picture Coding System for Digital Storage media Using hybrid Coding"
Claims (9)
- (정정) 영상정보의 프레임 전송에서 양방향 이동예측을 이용하는 차분 펄스 부호변조 전송 시스템에서, 앵커프레임 사이의 B프레임에 대한 양방향 프레임 이동벡터를 유도하기 위한 장치는, 내부 프레임(I) 및 예측 프레임(P)을 포함하며, 앵커프레임 사이에 복수의 B프레임을 갖는 상기 앵커프레임을 부호화하는 수단, 상기 앵커프레임 및 상기 B프레임을 복수의 동일한 블록으로 분할하는 수단, 이전의 앵커프레임에서 매칭블록의 위치를 식별하는 앵커프레임의 각 블록에 이동벡터를 제공하는 수단, 앵커프레임의 이동벡터를 따라 상기 앵커프레임에서의 각 이동블록과 B프레임과의 투영 교차 영역을 규정하는 수단, 및 투영이 최대로 겹치는 앵커프레임에서의 블록의 이동벡터로부터 B프레임의 블록에 대한 이동벡터를 유도하는 수단을 포함하는 것을 특징으로 하는 장치.
- (정정) 영상정보의 프레임 전송에서 양방향 이동예측을 이용하는 차분펄스 부호변조 전송 시스템에서, B프레임에 대한 양방향 프레임 이동벡터를 앵커프레임 사이에서 유도하는 장치는, 내부 프레임(I) 및 예측 프레임(P)을 포함하며, 앵커프레임 사이에 복수의 B프레임을 갖는 상기 앵커프레임을 부호화하는 수단, 상기 앵커프레임 및 상기 B프레임을 복수의 동일한 블록으로 분할하는 수단, 이전의 앵커프레임에서 매칭블록의 위치를 식별하는 앵커프레임의 각 블록에 이동벡터를 제공하는 수단, 앵커프레임의 이동벡터를 따라 상기 앵커프레임에서의 각 이동블록과 B프레임과의 투영 교차영역을 규정하는 수단, 교차영역이 최대로 겹치는 앵커프레임의 블록을 B프레임의 각 블록에 대해 결정하는 수단, 및 B프레임의 각 블록에 대한 이동벡터를 앵커프레임에서 마지막으로 언급된 블록에 대한 이동벡터로부터 유도하는 수단을 포함하는 것을 특징으로 하는 장치.
- (정정) 제2항에 있어서, 상기 교차 영역을 규정하는 상기 수단은, 상기 블록내에 주어진 상대적 위치를 갖는 상기 앵커프레임에서 블록의 기준점을 식별하는 수단, 상기 기준점이 갖는 상기 B프레임의 위치와 동일한 위치를 갖는 제1점을 위치시키는 수단, 상기 앵커프레임에서 상기 블록에 대한 이동벡터의 분수로서 상기 제1점으로부터 변위된 상기 B프레임의 제2점을 위치시키며, 상기 분수의 분자가 상기 B프레임과 상기 앵커프레임 사이의 프레임 간격수이고, 상기 분수의 분모가 인접한 앵커프레임 사이의 프레임 간격수인, 상기 제2점을 위치시키는 수단, 및 상기 앵커프레임의 블록이 상기 제1점에 대한 관계와 동일하게 상기 제2점과의 관계를 갖는 상기 B프레임과의 교차 영역을 포함하는 것을 특징으로 하는 장치.
- (정정) 제3항에 있어서, 상기 기준점이 상기 앵커프레임에서의 상기 블록의 코너에 있는 것을 특징으로 하는 장치.
- (정정) 제3항에 있어서, 상기 앵커프레임에서 블록의 투영 교차영역은, 다음의 관계식LlL2 + x - u│·│y - v│- L2 │x - u│- L1│y-v│로 규정된 상기 B프레임에서 블록과 함게 오버랩(AO)을 가지며, 여기서 L1은 프레임의 하나의 가장자리와 평행한 상기 주어진 코너로부터 제1방향을 따라서 측정된 블록의 치수이고, L2는 상기 제1방향과 직각인 상기 주어진 코너로부터 제2방향을 따라서 측정된 블록의 치수이고, x, y 는 B프레임에서 블록에 대하여 소정의 관계를 갖는 점의 상기 제1 및 제2방향의 각각에 따른 좌표이고, u, V는 상기 앵커프레임에서 상기 블록의 투영 교차점과 관련하여 상기 주어진 관계를 갖는 점의 상기 제1 및 제2방향 각각에 따른 좌표인 것을 특징으로 하는 장치.
- (정정) 차분펄스 부호변조 시스템용 인코더는, 이전의 앵커프레임에 관련된 앵커프레임의 이동블록에 대한 이동벡터를 유도하는 수단, 이동벡터의 제1세트가 블록 매칭법에 의해서 유도되며, 그 다음 및 이전의 앵커프레임에 각각 관련된 B프레임의 이동블록에 대한 순방향 및 역방향 이동벡터의 상기 제1세트를 유도하는 수단, 그 다음 및 이전의 앵커프레임에 각각 관련된 B프레임에서 블록에 대한 순방향 및 역방향 이동벡터의 제2세트를 유도하고, 이동벡터의 상기 제2세트는 이전의 앵커프레임에 관련된 앵커프레임의 이동블록에 대한 이동벡터로부더 유도되는 수단, 상기 제1세트의 순방향 이동벡터, 및 상기 제1세트의 역방향 이동벡터 및 상기 B프레임의 입력블록으로 지시된 블록의 평균에 의해서 B프레임의 각각의 이동블록에 대하여 지시된 앵커프레임에서의 블록을 각각 비교하여, 각각의 차분 표시를 유도하는 수단, 상기 제2세트의 순방향 및 역방향 이동벡터에 의해서 B프레임의 각 이동블록에 대하여 지시된 앵커프레임에서의 블록의 평균을 비교하여, 각각의 차분 표시를 유도하는 수단, 및 최소 차분과 관련된 이동벡터를 포함하는 이동벡터의 세트를 지시하는 B프레임의 각 이동블록에 대해서 모드신호를 유도하는 수단을 포함하는 것을 특징으로 하는 인코더.
- (정정) 제6항에 있어서, 상기 그 다음 및 이전의 앵커프레임에 각각 관련한 B프레임에서의 블록에 대해 순방향 및 역방향 이동벡터의 제2세트를 유도하는 상기 수단은, 상기 앵커프레임과 B프레임을 복수의 동일한 블록으로 분할하는 수단, 앵커프레임의 이동벡터를 따라 상기 앵커프레임에서의 각 이동블록과 B프레임과의 투영 교차영역을 규정하는 수단, 교차영역이 최대로 겹치는 앵커프레임에서의 블록을 B프레임에서의 각각의 블록에 대하여 결정하는 수단, 및 앵커프레임에서 마지막으로 언급한 블록에 대한 이동벡터로부터 B프레임의 각 블록에 대한 이동벡터를 유도하는 수단을 포함하는 것을 특징으로 하는 인코더.
- (정정) 차분펄스 부호변조 시스템용 디코더는, 수신된 부호화 신호로부터 연속적인 앵커프레임을 유도하는 수단, 상기 앵커프레임을 저장하는 수단, B프레임의 이동블록에 대하여 순방향 및 역방향 이동벡터의 제1세트를 수신하는 수단, 이전의 앵커프레임에 관련된 앵커프레임에서 이동블록에 대한 이동벡터를 수신하는 수단, 마지막으로 언급된 상기 이동벡터로부터 B프레임의 이동블록에 대한 순방향 및 역방향 이동벡터의 제2세트를 유도하는 수단, 모드신호에 의해서 지시된 이동벡터의 세트로부터의 이동벡터에 따라서 앵커 프레임의 블록으로부터 예측 프레임의 블록을 선택하는 수단을 포함하는 것을 특징으로 하는 디코더.
- 제8항에 있어서, B프레임의 이동블록에 대한 순방향 및 역방향 이동벡터의 상기 제2세트를 유도하는 상기 수단은, 상기 앵커프레임과 상기 B프레임을 복수의 동일한 블록으로 분할하는 수단, 앵커프레임의 이동벡터를 따라 상기 앵커프레임에서의 각 이동블록과 B프레임과의 투영 교차영역을 규정하는 수단, 교차영역이 최대로 겹치는 앵커프레임에서의 블록을 B프레임에서 각 블록에 대하여 결정하는 수단, 및 앵커프레임에서 마지막으로 언급한 블록에 대한 이동벡터로부터 B프레임의 각 블록에 대한 이동벡터를 유도하는 수단을 포함하는 것을 특징으로 하는 디코더.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/764,187 US5198901A (en) | 1991-09-23 | 1991-09-23 | Derivation and use of motion vectors in a differential pulse code modulation system |
US07/764,187 | 1991-09-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR930007268A KR930007268A (ko) | 1993-04-22 |
KR100270247B1 true KR100270247B1 (ko) | 2000-10-16 |
Family
ID=25069934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019920017274A KR100270247B1 (ko) | 1991-09-23 | 1992-09-22 | 차분 펄스부호 변조시스템에서 이동벡터를 유도 및 이용하는 장치 |
Country Status (6)
Country | Link |
---|---|
US (1) | US5198901A (ko) |
EP (1) | EP0534350B1 (ko) |
JP (1) | JP2740716B2 (ko) |
KR (1) | KR100270247B1 (ko) |
CA (1) | CA2078950A1 (ko) |
DE (1) | DE69224250T2 (ko) |
Families Citing this family (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5317397A (en) * | 1991-05-31 | 1994-05-31 | Kabushiki Kaisha Toshiba | Predictive coding using spatial-temporal filtering and plural motion vectors |
US5986713A (en) * | 1991-05-31 | 1999-11-16 | Kabushiki Kaisha Toshiba | Video coding apparatus using inter-field prediction |
US6005627A (en) * | 1991-05-31 | 1999-12-21 | Kabushiki Kaisha Toshiba | Video coding apparatus |
US5640208A (en) * | 1991-06-27 | 1997-06-17 | Sony Corporation | Video signal encoding in accordance with stored parameters |
JPH0595540A (ja) * | 1991-09-30 | 1993-04-16 | Sony Corp | 動画像符号化装置 |
JPH05236466A (ja) * | 1992-02-25 | 1993-09-10 | Nec Corp | 動き補償フレーム間予測画像符号化装置及び方法 |
FR2688369B1 (fr) * | 1992-03-03 | 1996-02-09 | Thomson Csf | Procede de codage d'images a tres bas debit et dispositif de codage-decodage mettant en óoeuvre ce procede. |
JPH0620050A (ja) * | 1992-07-03 | 1994-01-28 | Matsushita Electric Ind Co Ltd | 動画像信号の復号化装置と推定動きベクトル算出方法 |
EP0616472B1 (en) * | 1993-03-15 | 1999-05-12 | Sony Corporation | Transmission and decoding of picture signals |
US5329318A (en) * | 1993-05-13 | 1994-07-12 | Intel Corporation | Method for optimizing image motion estimation |
US5684534A (en) * | 1993-05-26 | 1997-11-04 | Intel Corporation | Task-splitting dual-processor system for motion estimation processing |
EP0709009A1 (en) * | 1993-06-16 | 1996-05-01 | GOULD, Kim V.W. | System and method for transmitting video material |
GB9315775D0 (en) * | 1993-07-30 | 1993-09-15 | British Telecomm | Processing image data |
EP0637889B1 (en) * | 1993-08-06 | 2001-01-17 | Lg Electronics Inc. | Device for converting the frame rate of an image |
US5471252A (en) * | 1993-11-03 | 1995-11-28 | Matsushita Electric Industrial Corporation Of America | Method and apparatus for estimating motion vector fields by rejecting local outliers |
JP3606597B2 (ja) * | 1994-01-21 | 2005-01-05 | ソニー株式会社 | 動きベクトル検出装置 |
GB9401989D0 (en) * | 1994-02-02 | 1994-03-30 | British Broadcasting Corp | Video motion estimation |
CA2144253C (en) * | 1994-04-01 | 1999-09-21 | Bruce F. Naylor | System and method of generating compressed video graphics images |
KR100287211B1 (ko) * | 1994-08-30 | 2001-04-16 | 윤종용 | 양방향 움직임 추정방법 및 장치 |
NO300610B1 (no) * | 1994-09-29 | 1997-06-23 | Televerkets Forskningsinstitut | Fremgangsmåte for kompresjonskoding av digitale bildevideosignaler, med sammenkoding av blokker fra flere bilder |
US5550595A (en) * | 1994-12-16 | 1996-08-27 | Intel Corporation | Apparatus and method for motion estimation with enhanced camera interface |
US5886743A (en) * | 1994-12-28 | 1999-03-23 | Hyundai Electronics Industries Co. Ltd. | Object-by information coding apparatus and method thereof for MPEG-4 picture instrument |
US6020926A (en) * | 1994-12-30 | 2000-02-01 | Intel Corporation | Motion estimation block matching speedup |
US5644504A (en) * | 1995-03-27 | 1997-07-01 | International Business Machines Corporation | Dynamically partitionable digital video encoder processor |
US5691775A (en) * | 1995-03-30 | 1997-11-25 | Intel Corporation | Reduction of motion estimation artifacts |
WO1996033573A1 (en) * | 1995-04-21 | 1996-10-24 | Sony Corporation | Device and method for coding moving image |
US5818969A (en) * | 1995-05-12 | 1998-10-06 | Intel Corporation | Intelligent start for motion estimation search |
US5703966A (en) * | 1995-06-27 | 1997-12-30 | Intel Corporation | Block selection using motion estimation error |
US5751861A (en) * | 1995-06-30 | 1998-05-12 | Intel Corporation | Reducing residual artifacts in video coding schemes with integer motion compensation |
US5886744A (en) * | 1995-09-08 | 1999-03-23 | Intel Corporation | Method and apparatus for filtering jitter from motion estimation video data |
KR100387229B1 (ko) * | 1995-11-01 | 2003-08-21 | 삼성전자주식회사 | 영상부호화장치 |
US5706054A (en) * | 1995-12-01 | 1998-01-06 | Intel Corporation | Method and apparatus for adjusting video data to limit the effects of automatic focusing control on motion estimation video coders |
FR2742248B1 (fr) * | 1995-12-06 | 1998-01-23 | Thomson Multimedia Sa | Procede de traitement de donnees dans des reseaux matriciels dans un systeme d'estimation de mouvement |
US6075906A (en) * | 1995-12-13 | 2000-06-13 | Silicon Graphics Inc. | System and method for the scaling of image streams that use motion vectors |
US6957350B1 (en) | 1996-01-30 | 2005-10-18 | Dolby Laboratories Licensing Corporation | Encrypted and watermarked temporal and resolution layering in advanced television |
JPH09212650A (ja) * | 1996-02-05 | 1997-08-15 | Sony Corp | 動きベクトル検出装置および検出方法 |
US6020924A (en) * | 1996-04-12 | 2000-02-01 | Samsung Electronics Co., Ltd. | Reduced memory size set top box which stores frames and associated motion vectors which indicate which block or blocks are to be retrieved from memory |
US5818533A (en) * | 1996-08-08 | 1998-10-06 | Lsi Logic Corporation | Method and apparatus for decoding B frames in video codecs with minimal memory |
US6016144A (en) * | 1996-08-14 | 2000-01-18 | Samsung Electronics Co., Ltd. | Multi-layered television graphical user interface |
US5835156A (en) * | 1996-08-14 | 1998-11-10 | Samsung Electroncis, Ltd. | Television graphical user interface employing remote random access pointing device |
US6411308B1 (en) | 1996-08-14 | 2002-06-25 | Samsung Electronics Co., Ltd. | Television graphical user interface having variable channel control bars |
US6181333B1 (en) | 1996-08-14 | 2001-01-30 | Samsung Electronics Co., Ltd. | Television graphical user interface having channel and program sorting capabilities |
US5955988A (en) * | 1996-08-14 | 1999-09-21 | Samsung Electronics Co., Ltd. | Graphical user interface for establishing installation location for satellite based television system |
US5978043A (en) * | 1996-08-14 | 1999-11-02 | Samsung Electronics Co., Ltd. | TV graphical user interface that provides customized lists of programming |
US6195089B1 (en) | 1996-08-14 | 2001-02-27 | Samsung Electronics Co., Ltd. | Television graphical user interface having variable channel changer icons |
US6191781B1 (en) | 1996-08-14 | 2001-02-20 | Samsung Electronics, Ltd. | Television graphical user interface that combines electronic program guide with graphical channel changer |
US5940072A (en) * | 1996-08-15 | 1999-08-17 | Samsung Information Systems America | Graphics decompression using system ROM indexing in TV set top box |
US6037933A (en) * | 1996-11-13 | 2000-03-14 | Samsung Electronics Co., Ltd. | TV graphical user interface for providing user access to preset time periods of TV program information |
US5991447A (en) * | 1997-03-07 | 1999-11-23 | General Instrument Corporation | Prediction and coding of bi-directionally predicted video object planes for interlaced digital video |
WO1998042136A1 (en) * | 1997-03-19 | 1998-09-24 | Sony Corporation | Image encoding method and device |
US6404813B1 (en) | 1997-03-27 | 2002-06-11 | At&T Corp. | Bidirectionally predicted pictures or video object planes for efficient and flexible video coding |
JP4142180B2 (ja) * | 1998-10-29 | 2008-08-27 | 富士通株式会社 | 動きベクトル符号化装置および復号装置 |
KR100457065B1 (ko) * | 1998-12-29 | 2005-05-19 | 주식회사 대우일렉트로닉스 | 비디오신호의움직임벡터생성장치 |
US6625216B1 (en) | 1999-01-27 | 2003-09-23 | Matsushita Electic Industrial Co., Ltd. | Motion estimation using orthogonal transform-domain block matching |
US6473460B1 (en) | 2000-03-31 | 2002-10-29 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for calculating motion vectors |
GB2362532B (en) * | 2000-05-15 | 2004-05-05 | Nokia Mobile Phones Ltd | Video coding |
KR100708091B1 (ko) * | 2000-06-13 | 2007-04-16 | 삼성전자주식회사 | 양방향 움직임 벡터를 이용한 프레임 레이트 변환 장치 및그 방법 |
US8374237B2 (en) | 2001-03-02 | 2013-02-12 | Dolby Laboratories Licensing Corporation | High precision encoding and decoding of video images |
US8111754B1 (en) | 2001-07-11 | 2012-02-07 | Dolby Laboratories Licensing Corporation | Interpolation of video compression frames |
US6816552B2 (en) * | 2001-07-11 | 2004-11-09 | Dolby Laboratories Licensing Corporation | Interpolation of video compression frames |
US7266150B2 (en) | 2001-07-11 | 2007-09-04 | Dolby Laboratories, Inc. | Interpolation of video compression frames |
US20030112863A1 (en) | 2001-07-12 | 2003-06-19 | Demos Gary A. | Method and system for improving compressed image chroma information |
KR100412501B1 (ko) * | 2001-11-30 | 2003-12-31 | 삼성전자주식회사 | 움직임 보상을 위한 화소값 선택 장치 및 방법 |
EP2309759A1 (en) * | 2002-03-18 | 2011-04-13 | STMicroelectronics Limited | Compression circuitry for generating an encoded bitstream from a plurality of video frames |
JP4462823B2 (ja) * | 2002-11-20 | 2010-05-12 | ソニー株式会社 | 画像信号の処理装置および処理方法、それに使用される係数データの生成装置および生成方法、並びに各方法を実行するためのプログラム |
JP4053490B2 (ja) * | 2003-03-25 | 2008-02-27 | 株式会社東芝 | フレーム補間のための補間画像作成方法及びこれを用いた画像表示システム、補間画像作成装置 |
US7310371B2 (en) * | 2003-05-30 | 2007-12-18 | Lsi Corporation | Method and/or apparatus for reducing the complexity of H.264 B-frame encoding using selective reconstruction |
CN1225127C (zh) * | 2003-09-12 | 2005-10-26 | 中国科学院计算技术研究所 | 一种用于视频编码的编码端/解码端双向预测方法 |
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 |
US7986731B2 (en) | 2004-02-06 | 2011-07-26 | Apple Inc. | H.264/AVC coder incorporating rate and quality controller |
US7453938B2 (en) | 2004-02-06 | 2008-11-18 | Apple Inc. | Target bitrate estimator, picture activity and buffer management in rate control for video coder |
US7492820B2 (en) | 2004-02-06 | 2009-02-17 | Apple Inc. | Rate control for video coder employing adaptive linear regression bits modeling |
KR101196429B1 (ko) * | 2004-03-12 | 2012-11-01 | 삼성전자주식회사 | 동영상 트랜스코딩 방법 및 그 장치, 이에 사용되는움직임 벡터 보간방법 |
US7456760B2 (en) | 2006-09-11 | 2008-11-25 | Apple Inc. | Complexity-aware encoding |
US9445121B2 (en) | 2008-08-04 | 2016-09-13 | Dolby Laboratories Licensing Corporation | Overlapped block disparity estimation and compensation architecture |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4985768A (en) * | 1989-01-20 | 1991-01-15 | Victor Company Of Japan, Ltd. | Inter-frame predictive encoding system with encoded and transmitted prediction error |
JPH0832047B2 (ja) * | 1989-04-28 | 1996-03-27 | 日本ビクター株式会社 | 予測符号化装置 |
EP0405842A3 (en) * | 1989-06-26 | 1993-03-03 | Matsushita Electric Industrial Co., Ltd. | Picture coding method |
JP3159309B2 (ja) * | 1989-09-27 | 2001-04-23 | ソニー株式会社 | 映像信号符号化方法及び映像信号符号化装置 |
JPH07112284B2 (ja) * | 1990-01-20 | 1995-11-29 | 日本ビクター株式会社 | 予測符号化装置及び復号化装置 |
US4999705A (en) * | 1990-05-03 | 1991-03-12 | At&T Bell Laboratories | Three dimensional motion compensated video coding |
-
1991
- 1991-09-23 US US07/764,187 patent/US5198901A/en not_active Expired - Lifetime
-
1992
- 1992-09-21 EP EP92116123A patent/EP0534350B1/en not_active Expired - Lifetime
- 1992-09-21 DE DE69224250T patent/DE69224250T2/de not_active Expired - Fee Related
- 1992-09-22 JP JP4253286A patent/JP2740716B2/ja not_active Expired - Fee Related
- 1992-09-22 KR KR1019920017274A patent/KR100270247B1/ko not_active IP Right Cessation
- 1992-09-23 CA CA002078950A patent/CA2078950A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP0534350A3 (en) | 1994-07-20 |
US5198901A (en) | 1993-03-30 |
CA2078950A1 (en) | 1993-03-24 |
EP0534350A2 (en) | 1993-03-31 |
KR930007268A (ko) | 1993-04-22 |
JPH06217293A (ja) | 1994-08-05 |
DE69224250T2 (de) | 1998-09-03 |
DE69224250D1 (de) | 1998-03-05 |
EP0534350B1 (en) | 1998-01-28 |
JP2740716B2 (ja) | 1998-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100270247B1 (ko) | 차분 펄스부호 변조시스템에서 이동벡터를 유도 및 이용하는 장치 | |
JP2897763B2 (ja) | 動き補償符号化装置、復号化装置、符号化方法及び復号化方法 | |
US4727422A (en) | Method and apparatus for efficiently communicating image sequence having improved motion compensation | |
JP2801559B2 (ja) | 動き大小に適応する動き補償符号化方法及びその装置 | |
EP0817491B1 (en) | Image coding apparatus and image decoding apparatus | |
US4661849A (en) | Method and apparatus for providing motion estimation signals for communicating image sequences | |
US4703350A (en) | Method and apparatus for efficiently communicating image sequences | |
US5151784A (en) | Multiple frame motion estimation | |
US6414992B1 (en) | Optimal encoding of motion compensated video | |
US6937656B2 (en) | Method and apparatus for image coding | |
US5617144A (en) | Image processing system using pixel-by-pixel motion estimation and frame decimation | |
KR100739281B1 (ko) | 움직임 추정 방법 및 장치 | |
JPH05137131A (ja) | フレーム間動き予測方法 | |
KR100541623B1 (ko) | 움직임 보상을 이용한 예측 코딩 방법 및 장치 | |
KR20040070490A (ko) | 비월 주사 방식의 동영상 부호화/복호화 방법 및 그 장치 | |
US5778100A (en) | Method and apparatus for reducing the bit rate in a video object planes sequence coder | |
US5579050A (en) | Apparatus for encoding a video signal using a search grid | |
KR100602148B1 (ko) | 1/4픽셀 움직임 벡터를 이용한 동영상 압축방법 | |
JP3230285B2 (ja) | 動きベクトル検出及び/又は動き補償装置 | |
KR100295327B1 (ko) | 적응적 임계치를 이용한 움직임 추정 장치 | |
KR0171122B1 (ko) | 움직임 보상오차를 이용한 선택적 부호화장치 | |
KR100207397B1 (ko) | 영상 부호화 시스템의 움직임 예측장치 및 방법 | |
KR970010096B1 (ko) | 영상 데이타의 압축 부호화를 위한 두계층 움직임 추정장치 및 그 방법 | |
KR0159374B1 (ko) | 서치 그리드를 이용한 영상신호 부호화 장치 | |
JPH06105299A (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: 20050722 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |