KR20020095260A - 비디오 인코더 및 재코딩 장치 - Google Patents
비디오 인코더 및 재코딩 장치 Download PDFInfo
- Publication number
- KR20020095260A KR20020095260A KR1020027015154A KR20027015154A KR20020095260A KR 20020095260 A KR20020095260 A KR 20020095260A KR 1020027015154 A KR1020027015154 A KR 1020027015154A KR 20027015154 A KR20027015154 A KR 20027015154A KR 20020095260 A KR20020095260 A KR 20020095260A
- Authority
- KR
- South Korea
- Prior art keywords
- pictures
- picture
- designed
- compressed
- inter
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/114—Adapting the group of pictures [GOP] structure, e.g. number of B-frames between two anchor frames
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection 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
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
- H04N19/45—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder performing compensation of the inverse transform mismatch, e.g. Inverse Discrete Cosine Transform [IDCT] mismatch
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
비디오 인코더(100)는 압축되지않은 화상들의 입력 시퀸스를 압축된 화상들로 변환할 수 있고, 인터-화상 코딩된 화상들(108), 양방향 인터-화상 코딩된 화상들(110) 또는 인트라-화상 코딩된 화상들(106)을 예측할 수 있다. 이들 화상들은 P-화상들, B-화상들, 개별적으로 I-화상들로 불린다. B-화상들은 예측들로서 I-화상들 및 P-화상들을 이용한 후, B-화상들은 나중에 코딩되어야 한다. 이것은 화상 시퀀스 재배열(re-ordering)을 요구한다. 비디오 인코더(100)는 압축된 화상들을 리오더링하는 리오더 화상 풀(104)을 포함한다.
Description
오프닝 단락에서 설명된 비디오 인코더의 종류는 M. Ghanbari, ISBN 0 85296762 4, Pages 46-48 및 90-107에 의한, 책 "Video coding, an introduction to standard codecs"로부터 잘 알려진다.
이 책에서, 랜덤 액세스 및 고효율적 코딩의 상반된 요구들 때문에, 비디오시퀀스의 모든 화상들이 이 동일한 방법으로 코딩되지 않아야 함이 설명된다. 기술들은 화상들을 전송하거나 저장하도록 요구되는 정보량을 상당히 감소시키기 위해 연속적인 화상들 사이의 강력한 관계를 활용하도록 이용된다. "모션 추정으로의 예측"으로서 알려진, 이들 기술들은 화상들 사이의 차이를 표현하는 최소의 부가적인 정보로, 시퀀스의 대부분의 화상들을, 이전 및 심지어 연속적인 시퀀스 화상들로부터 유도하는 것으로 구성된다. 이들 기술들은 비디오 인코더에서 모션 추정기의 존재를 요구한다.
이 책에서, 비디오 시퀀스에 화상들의 다음 유형들이 식별된다:
-제 1 유형의 화상들은 적당한 압축으로, 인트라-화상(intra-picture) 코딩된다. 이 화상들은 I-화상들로 불린다. I-화상들은 또다른 화상들에 참조없이 코딩되지만, I-화상들은 참조 화상들의 역할을 한다. I-화상들은 디코더에 의해 화상들의 재구성을 위해 필요한 모든 정보를 가지고 있다. I-화상들은 디코딩을 위해 액세스 포인트들을 코딩된 시퀀스에 제공한다.
-제 2 유형의 화상들은 인터-화상 코딩된다. 이 화상들은 P-화상들로 불린다. P-화상들은 모션 보상된 예측의 기술들을 이용하여, 이전에 I-코드되거나 P-코딩된 화상들을 참조하여 예측적으로 코딩된다. 이 화상들 자체는 미래 화상들의 코딩을 위해, 참조 화상 즉, 기준(anchor)으로서 이용될 수 있지만, 모션 보상이 완전하기 않기 때문에, 두 개의 I-화상들 사이에 매우 많은 P-화상들의 수를 확장하는 것은 불가능하다. P-화상들의 압축률 즉, 압축의 정도는 I-화상들에 대해서 보다 상당히 높다.
-제 3 유형의 화상들은 또한 인터-화상 코딩된다. 이 화상들은 B-화상들로 불린다. B-화상들은 양방향 또는 단방향으로 코딩된 화상들일 수 있다. B-화상들은 이 화상들의 예측들에서 과거, 미래 또는 둘 다의 화상들의 결합들을 이용할 수 있다. 이 이용은 이동 물체들의 폐쇠 부분들이 미래 프레임으로부터 더 잘 보상될 수 있기 때문에, 모션 보상 효과를 증가시킨다. 이런 이용들은 연속적인 화상들을 코딩하기 위해 이용되지 않으므로, B-화상들은 코딩 에러들을 전파하지 않는다. B-화상들은 최고의 보상률을 제공한다.
H. Herve, ISBN 0 340 69190 5, Pages 36-42에 의해, 책 "Digital Television MPEG-1, MPEG-2 and principles of the DVB system"에서, 어떻게 P- 및 B-화상들이 이전 및/또는 후속적인 화상들로부터 예측될 수 있는지가 설명된다. 이동 화상들의 시퀀스에서, 이동 물체들은, 이들 두 개의 영역들 사이에 명백한 상관이 없도록 하기 위해서, 연속적인 화상들의 대응하는 영역들 사이에 차이들을 초래한다. 모션 추정은 블록 매칭으로서 알려진 기술을 이용하여, 제 2 화상 상의 도착 영역과 제 1 화상 상의 이탈 영역 사이에 상관을 보장하는 모션 벡터를 정의하는 것으로 구성된다. 이 모션 추정은 이전 화상으로부터 작은 검색 윈도우 내의 현재 화상의 매크로블록(MacroBlock), 즉, 16 ×16 픽셀들의 블록을 이동하고, 가장 유사한 하나를 찾기 위해 그것을 이 윈도우의 가능한 매크로블록들에 비교하므로써 행해진다. 두 개의 매칭한 매크로블록들의 부분에서 차이는 모션 벡터를 제공한다. 각각의 매크로블록에 대해, 적어도 하나의 모션 벡터가 계산된다. 화상은 다수의 매크로블록들에서 분리된다. 하나의 화상의 모든 매크로블록들의 모션 벡터들은 모션 필드를 형성한다. P-화상 및 I-화상, 또는 두 개의 P-화상들을 비교하는 것에서, 이들 화상들 사이에 시간적인 차이 때문에, 블록 매칭은 일반적으로 완전하지않고 모션 벡터들은 비교적 큰 크기일 수 있다. 인코드될 실제 블록과 매칭 블록 사이에 차이 또는 예측 에러는 계산되고, 연속적으로 이산 코사인 변환, 양자화기, 런-레벨 인코더 및 가변 길이 인코더를 가지고, I-화상들의 블록들에 유사한 방법으로 코딩되기 때문이다. 이 처리는 모션 보상으로 불린다.
B 화상들에 대해, 모션 벡터들은 세 가지 다른 방법들 즉, 순방향, 역방향 및 양방향에서 가장 가까운 참조 화상들의 벡터들의 시간적인 보간(interpolation)에 의해 계산된다; 최소 예측 에러를 제공하는 결과가 유지되고, 이 에러는 P-화상들에 대한 것처럼 동일한 방법으로 인코딩된다. 예측에 대해 이용되는 화상들로부터의 다른 매크로블록들만이 인코드되는데 필요할 것이고, 이는 B-화상들 및 P-화상들을 코딩하기 위해서 요구되는 정보량을 상당히 감소시킨다. 이동 물체들의 크기는 일반적으로 매크로블록보다 크므로, 연속적인 매크로블록들의 모션 벡터 사이에 강력한 상관이 있고, 미분 코딩 방법이 이 벡터들을 인코드하는데 이용되고, 따라서 요구된 비트들의 수를 감소시킨다. 예측이 이용할 수 있는 결과를 제공하지 않을 때, 예를 들어, 완전히 새로운 영역들이 화상으로 나타나는 이동 카메라의 경우에, 화상의 대응하는 부분들은 I-화상들에 대한 것과 동일한 방법으로, 인트라-화상 코딩된다.
B-화상들은 연속적으로 예측들로서 I-화상들 및 P-화상들을 이용하기 때문에, 이 화상들은 나중에 코딩되어야 한다. 이것은 입력 화상 시퀀스의 재배열을 요구한다. M. Ghanbari, ISBN 0 85296762 4, Pages 97에 의한, 책 "Video coding, an introduction to standard codecs"에서, 리오더링은 인코더의 시작(entrance)에 위치되는, 프리-프로세서(pre-processor)에서 수행되는 것이 설명된다. 인코더 시작에서 B-화상들의 코딩의 B-화상들을 코딩하기 위해 요구되는, 기준 I-화상들 및 P-화상들을 코딩한 후 수행되는 것이 미뤄진다.
화상 리오더링의 단점은 리오더링을 위한 화상들의 일시적인 저장이 대량의 메모리 및 그 결과로서 메모리 버스(bus)의 대역폭을 요구하는 것이다. 대량의 메모리 및 그 결과로서 대역폭은 특히 고 해상도(High Definition:HD) 비디오 인코딩에 대해 문제가 된다.
시퀀스에서 화상들의 리오더링에 대해 비교적 약한 저장 요구들을 가진 오프닝 단락에서 설명된 비디오 인코더를 제공하는 것이 이 발명의 첫 번째 목적이다.
시퀀스에서 화상들의 리오더링에 대해 비교적 약한 저장 요구들을 가진 비디오 인코더를 포함하는 비디오 기록 장치를 제공하는 것이 이 발명의 두 번째 목적이다.
이 발명은 비압축된 화상들의 입력 시퀀스를 압축된 화상들로 변환하도록 설계되고, 리오더 화상 풀(reorder picture pool)을 포함하는 비디오 인코더에 관한 것이다.
이 발명은 비디오 기록 장치로서, 비압축된 화상들의 시퀀스를 표현하는, 비디오 데이터를 캡춰하기 위한 캡춰링 수단(capturing means)과; 비압축된 화상들의 입력 시퀀스를 압축된 화상들로 변환하도록 설계되고, 리오더 화상 풀을 포함하는 비디오 인코더와; 압축된 화상들을 표현하는, 데이터를 저장하기 위한 저장 수단을 포함하는 비디오 기록 장치에 관한 것이다.
도 1은 비디오 인코더의 실시예를 개략적으로 도시한 도면.
도 2는 화상들의 그룹의 예를 개략적으로 도시한 도면.
도 3은 두 개의 패스 예측을 도시한 도면,
도 4는 모션 추정기에 관련한 데이터 유형들의 예들을 개략적으로 도시한 도면.
도 5는 비디오 기록 징치의 구성요소들을 개략적으로 도시한 도면.
이 발명의 첫 번째 목적은 기록 화상 풀이 다수의 압축된 화상들을 리오더하도록 설계되는 것에서 성취된다. 압축된 화상들은 비압축된 화상들보다 저장에서 더 작다. 대략 세 개 또는 그와 같은, 약간의 압축된 화상들은 동시에 적절하게 나중 포인트에서 더 처리하기 위해 기다리도록, 리오더 화상 풀에 저장된다.
이 발명에 따른 비디오 인코더의 실시예는 압축된 화상들이 예측적인 인터-화상 코딩된 화상들 또는 양방향 인터-화상 코딩된 화상들일 수 있는 것을 특징으로 한다. 이 실시예의 이점은 3D 순환(recursive) 검색(3D-RS)과 같은, 순환 모션 추정 알고리즘들의 수렴 및 일관성이 개선되는 것이 기대되는 것이다. 이것은 화상들이 디스플레이 순서로 비디오 인코더에 도착하고, 따라서, 작은 시간적인 차이들을 갖는 다는 사실 때문이다. 이것은 리오더링이 비디오 인코더의 입력에서 발생할 때의 경우에는 아니라는 것에 주목하자. 증가할 수 있는 검색 윈도우는, 더 작게 만들어 질 수 있으며, 후보 모션 벡터들의 수는, 전통적인 모션 추정기와 유사한 수행을 얻는 동안, 감소될 수 있을 것이다. 모션 벡터 후보들의 감소된 수의 유익한 부수 효과는 모션 추정 처리의 계산 및 메모리 대역폭 요구들이 크게 감소되는 것이다.
이 발명에 따라 비디오 인코더의 실시예는 이하를 포함한다:
-시작과 종료를 가지고, 연속적으로 모션 추정기, 이산 코사인 변환기, 양자화기, 및 런-레벨 인코더를 가지고, 비압축된 화상들을 압축된 화상으로 변환하도록 설계되는 인코더 체인;
-시작과 종료를 가지고, 연속적으로 런-레벨 디코더, 역 양자화기, 역 이산 코사인 변환기, 및 모션 보상기를 가지고, 압축된 화상들을 비압축된 화상들로 변환하도록 설계되는 디코더 체인;
-가변 길이 인코더; 및
-인코더 체인의 끝과 디코더 체인의 시작 사이에 위치되는 리오더 화상 풀.
이 실시예에서, 이 실시예는 이하에 고려할 아키텍쳐(architecture)에 의해 크게 영향받고, 리오더 화상 풀의 위치는 런-레벨 인코더(RLE) 뒤, 그리고 가변-길이 인코더(VLE) 앞이다. 리오더 화상 풀의 위치는 실제로 인코더 체인의 어디든지일 수 있고, 이는 이산 코사인 변환기(DCT)에서 가변 길이 인코더(VLE)까지 이어진다. VLE 끝에 위치되면, 이것은 적은 저장을 의미하지만, 압축 해제에 대해 대응하는 큰 계산적인 노력을 의미한다. 유사하게, DCT에 더 가깝게 위치될 때, 이것은 적은 계산적인 노력을 의미하지만, 더 큰 저장 요구들을 의미한다. 무손실과 손실 둘 다의, 전용의 내장된 압축 및 압축 해제 기술이 인코더 체인에서 리오더 화상 풀의 주어진 위치에 대해, 저장 요구들을 더 감소하도록 적용될 수 있다. 위치의 선택은 내장된 압축 알고리즘의 유형 및 복잡성에 영향을 미친다. 가변 길이 인코더는 예를 들어, 허프만 코딩(Huffman coding) 또는 연산 코딩(Arithmetic coding)을 수행하도록 설계될 수 있다.
이 발명에 따른 비디오 인코더의 실시예는 예측적인 인터-화상 코딩된 화상들의 적어도 하나를 양방향 인터-화상 코딩된 화상으로 재코딩하도록 설계된다. 비압축된 화상들은 두 가지 상들에서 압축된 양방향 인터-화상 코딩된 화상들로 변환된다. 제 1 패스에서, 비압축된 화상들은 예측적인 인터-화상 코딩된 화상들로 변환된다. 제 2 패스에서, 이들 나중 화상들은 양방향 인터-화상 코딩된 화상들로 변환될 수 있다. 이것은 이하에서 더 자세히 설명될 것이다. 제 1 패스에서, 입력 비압축된 화상들은 I-화상들, P-화상들, B순방향-화상들의 스트림으로서 압축되고, 우리는 이전의 참조 화상들로부터 순방향 예측만을 가진 B-화상들로서 B순방향-화상들을 정의한다. P-화상들 및 B순방향-화상들은 구조에서 유사하지만, 사용에서는 다르다는 것에 주목하자: P-화상들은 참조 화상들의 역할을 할 수 있는 반면, B순방향-화상들은 참조 화상들로서 역할할 수 없으나, 나중에 양방향 인터-화상 코딩된 화상들이 될 수 있다. 예를 들어, 의도된 화상들의 그룹(GOP) 구조가 {I ,B ,B ,P ,B ,B ,P}이면, 이 화상들은 {I ,B순방향,B순방향,P ,B순방향,B순방향,P}로서 제 1 패스에서 인코딩된다. 이들 압축된 화상들은 일시적으로 리오더 화상 풀에 저장된다. 리오더링은 이들 압축된 화상들 상에서 수행된다. I- 및 P-화상들은, 또한 참조 화상들을 형성하고, 먼저 리오더 화상 풀을 떠나는 반면, 그 사이에 놓인 B순방향-화상들은 이 화상들이 B 화상들로서 재코딩되기 전이 아니라 후에 이어진다. 압축된 I-화상들 및 P-화상들은, 참조 화상들을 형성하고, 참조 화상 풀에서 필요하고, 압축 해제되고 그리고 저장될 때, 리오더 화상 풀로부터 이용되고, 이는 요구되는 순방향 및 역방향 참조 화상들에 대한 장소를 가진다. 제 2 패스에서, 저장된 B순방향-화상들은 이 화상들을 리오더 화상 풀로부터 빼고 디코더 체인을 이용하여 이 화상들을 압축 해제하므로써 다시 발생된다. 다시 발생된 B순방향-화상들은 그 후 추가된 역방향 예측으로, B-화상들과 같이 인코딩된다. 역방향 예측은 미래 참조 화상으로부터 행해지고, 이는 그 전에 빼지고, 그리고 참조 화상 풀에 존재한다. 선택적으로, 순방향 예측은 갱신된다. 이것은 제 2 패스에서, 다른 벡터 필드들로부터의 정보가 통합될 수 있어 더 나은 모션 추정을 만들기 때문에 유익할 수 있다. 모션 벡터들은 세 가지 다른 방법들 즉, 순방향, 역방향 및 양방향에서 가장 가까운 참조 화상들의 시간적인 보간에 의해 계산된다; 최소의 예측 에러를 제공하는 결과는 유지된다. 따라서, 만들어진 B 화상들은 그 후 인코더 체인에 의해 다시 압축되고 리오더 화상 풀을 통해 흐른다. 리오더 화상 풀의 출력은 전송 순서에 있다. 예를 들어, 이전에 언급된 GOP 구조를 이용하는, 전송 출력 순서는 {I ,P ,B ,B ,P ,B ,B}이다. 화상 리오더 풀을 떠나는 화상들은 비트-스트림을 형성하도록 가변 길이 인코더에 의해 선택적으로 더 압축된다. 신뢰할 만한 재생성을 위해, B순방향-화상들의 품질이 충분히 높아야 함에 주목하자. 이것은 미세한 양자화를 의미하고, 이는 전송을 위해 보내지는 I-, P-, 및 B-화상들의 양자화로부터 다를 수 있다.
처음 제 1 패스 후, 참조 화상들의 부분을 선택하는 자유가 있는 것이 이 실시예의 이점이다. P로서 처음에 할당되었던, 리오더 화상 풀에 도착한, 압축된 화상들은 예측 심도(depth)를 확장하도록 B순방향으로서 다시 할당될 수 있다. 또한 P-화상들로서 B순방향을 다시 할당하고, 그것을 참조 화상으로서 고정하도록 역이 유지된다. 압축하는 동안, 더 많은 통계적인 정보는 화상에 대해서 얻어지고, 이는 이들 결정들을 만드는 이점들로 될 수 있다. 통계적인 정보는 예를 들어, 모션 벡터들 및 예측 에러의 크기들에 관련된다.
압축 정도가 비교적 높을 수 있는 것이 이 실시예의 다른 이점이다. 제 2 패스를 건너뛰고 직접적으로 리오더 화상 풀을 통해 B순방향을 가변-길이 인코더로 보내는 것이 가능하다. 인코딩의 이런 유형은 {I ,B순방향,P ,B순방향,P,...} 시퀀스들에 대해 적어도 알려진다. B순방향-화상들의 압축의 정도는 P-화상들에 대한 것보다 더 높을 수 있고, 이는 동일한 압축의 정도를 가지는 것보다 전체적으로 더 높은 압축의 정도가 된다.
이 발명에 따른 비디오 인코더의 실시예는 예측적인 인터-화상 코딩된 화상들의 적어도 하나를 예측적인 인터-화상 코딩을 적응하므로써 예측적인 인터-화상코딩된 화상으로 재코딩하도록 설계된다. 제 2 패스에서, 다른 벡터 필드들로부터의 정보는 통합될 수 있어 더 나은 모션 추정이 된다. 게다가, 예측적인 인터-화상 코딩은 재양자화함으로써 적응될 수 있다. 재양자화하는 것의 이점은 재양자화가 화상마다 할당될 이용 가능한 비트들에 적응하도록 만드는 것이다. 양자화기는 화상에 양자화를 적응적으로 변화시키도록, 제 1 패스 압축 동안 얻어지는, 통계적인 정보를 이용할 수 있다. 이것은 좋은 코딩 효율 및 더 나은 품질을 성취하도록 만들어진다.
이 발명에 따른 비디오 인코더의 실시예는 압축된 화상들을 만드는 비압축된 화상들 상에 MPEG 인코딩을 수행하도록 설계된다. MPEG 인코딩의 다양한 유형들은 이 발명에 따른 각각의 다양한 실시예들 예컨대, MPEG-1, MPEG-2 또는 MPEG-4에 의해 수행될 수 있다.
이 발명에 따른 비디오 인코더의 실시예는 압축의 정도를 가지고, 압축된 화상들의 압축의 정도를 변화시키므로써 리오더 화상 풀에 동시에 저장될 수 있는,압축된 화상들의 수를 적응하도록 설계된다. 리오더 화상 풀에 대한 요구되는 메모리의 양은 이하에 의존한다:
-비압축된 화상들의 크기,
-또한 예측 심도로 불리는, I-와 P-화상들 사이에 연속적인 B-화상들의 수, 그리고
-압축된 화상들의 압축 정도.
리오더 화상 풀에 대해 이용 가능한 메모리가 고정되면, 동시에 저장될 수 있는 화상들의 수를 증가하기 위해서 압축된 화상들의 압축 정도를 변화시키는 것은 가능하다. 대부분의 인코더들은 많아야 두 개의 연속적인 B-화상들로 제한된다. 이 발명에 따른 비디오 인코더의 이 실시예에서, I-와 P-화상들 사이에 전송된 연속적인 B-화상들의 수는 증가될 수 있다. 압축된 화상들의 크기는 품질에 대한 트레이드-오프(trade-off)로, 예를 들어, 양자화의 레벨에 의해 영향받을 수 있다.
이 발명에 따른 비디오 인코더의 실시예는 적용될 다음 재코딩의 유형들 중에서 적용될 것을 선택할 수 있도록 설계된다:
예측적인 인터-화상 코딩된 화상들을 양방향 인터-화상 코딩된 화상들로 재코딩;
예측적인 인터-화상 코딩된 화상들을 갱신된 순방향 예측을 포함하는 양방향 화상 코딩된 화상들로 재코딩; 또는
예측적인 인터-화상 코딩된 화상들을 예측적인 인터-화상 코딩을 적응하므로써 예측적인 인터-화상 코딩된 화상들로 재코딩.
이 실시예는 실행-시간 스케일러빌러티 즉, 다른 소유권들을 가진 다른 솔루션들을 가지도록 파라미터화되는데 적합하다. 비디오 인코더의 이 실시예는 컴퓨터의 실행 공간, 메모리 요구들, 메모리 대역폭, 전력, 코딩 효율, 및 품질에서 포인트를 설정하는 것의 각각을 재코딩하는 다른 유형들 사이의 실행-시간에서 교환할 수 있다. 이 실행-시간 스케일러빌러티 외에도, 비용에서, 어쩌면, 품질에서, 적은 계산 수행 또는 대역폭을 요구하는 인코더 체인 및 디코더 체인의 값싼 버젼들 예를 들어, 비-컴플리언트(non-compliant) DCT 및 그와 같은 것을 통합하는 것이 가능하다. 코딩 표준들에 컴플리언트한 수행되는 참조 화상들의 내부적인 디코딩을 홀딩하는 것이 바람직하다.
이 발명의 제 2 목적은 비디오 기록 장치가 비압축된 화상들의 입력 시퀀스를 압축된 화상들로 변환하도록 설계되는 비디오 인코더를 포함하고, 이는 리오더 화상 풀을 포함하는 것에서 성취되고, 리오더 화상 풀이 다수의 압축된 화상들을 리오더하도록 설계되는 것을 특징으로 한다.
이 발명에 따른 비디오 인코더 및 비디오 기록 장치의 이들 및 다른 양상들은 여기에 나중에 설명되는 구현들 및 실시예들을 참조하고 첨부한 도면들에 참조로 명백해지고, 설명될 것이다.
도 1은 비압축된 화상들의 입력 시퀀스를 압축된 화상들로 변환하도록 설계된 비디오 인코더(100)의 실시예를 개략적으로 도시한다. 비디오 인코더(100)는
-시작과 끝을 가지고, 연속적으로 모션 추정기(124), 이산 코사인 변환기(126), 양자화기(128), 및 런-레벨 인코더(129)를 가진 인코더 체인(102)과;
-시작과 끝을 가지고, 연속적으로 런-레벨 디코더(123), 역 양자화기(122), 역 이산 코사인 변환기(120), 및 모션 보상기(118)를 가진 디코더 체인(116)과;
-가변 길이 인코더(134)와;
-인코더 체인(102)의 끝과 디코더 체인(116)의 시작 사이에 위치되는 리오더 화상 풀(104)과;
-이전 참조 화상들(130) 및 미래 참조 화상들(132)을 저장하는 참조 화상 풀(103)을 포함한다.
리오더 화상 풀(104)은 다수의 압축된 화상들을 홀딩하도록 설계된다. 화상들의 다음 유형들이 저장될 수 있다: I-화상들(106), P-화상들(108),(109), B-화상들(110).
비압축된 화상들의 입력 시퀀스는 그것의 입력 컨넥터(input connector)(112)에 비디오 인코더(100)를 입력한다. 우리는 매크로블록 기본, 즉, 16 ×16 픽셀들의 블록들 상에 화상들의 코딩을 설명한다. 각각의 화상 내의, 매크로블록들은 왼쪽에서 오른쪽으로 시퀀스에서 코딩된다. 주어진 매크로블록에 대해, 코딩 모드는 선택된다. 이것은 화상 유형 및 모션 보상된 예측의 유효성(effectiveness)에 의존한다. 코딩 모드에 의존하여, 과거 및/또는 미래 참조 화상들에 기초하는 매크로블록의 콘텐트들의 모션 보상된 예측은 모션 추정기(124)에 의해 형성된다. 이들 참조 화상들은 참조 화상 풀(103)로부터 검색된다. 예측은 예측 에러를 형성하도록, 현재 매크로블록에 실제 데이터, 즉 비압축된 화상에 픽셀들로부터 빼진다. 예측 에러는 화상들의 매트릭스임에 주목하자. 예측 에러는 이산 코사인 변환기(126)에 대한 입력이고, 이는 예측 에러를 픽셀들의 8 ×8 블록들로 분리하고 픽셀들의 각각의 8 ×8 블록 상에서 이산 코사인 변환을 수행한다. DCT 계수들의 결과적인 이차원 8 ×8 블록은 양자화를 수행하는 양자화기(128)에 대한 입력이다. 양자화는 대개 높은 주파수들에 영향을 끼친다. 인간의 시각 시스템(human visual system:HVS)은 높은 주파수들에서 화상 왜곡에 대해 덜 민감하다. DCT 계수들의 양자화된 2차원 8 ×8 블록은 지그재그 순서로 스캔되고 양자화된 DCT 계수들의 일차원 스트링으로 런-레벨 인코더(129)에 의해 변환된다. 이 스트링은 압축된 화상을 표현한다. 그런 압축된 화상은 나중에 이용되기 위해,예를 들어, 참조 화상의 역할을 하도록 리오더 화상 풀(104)에 저장될 수 있다. 압축된 화상은 또한 가변 길이 인코딩된 스트링으로 변환될 수 있다. 이 변환은 가변 길이 인코더(134)에 의해 수행된다.
예측 에러 이외에, 다른 정보, 예를 들어, 화상의 유형 및 모션 벡터 필드는 유사한 방법으로 코딩된다.
모션 예측은 참조 화상들을 요구한다. 이전 참조 화상들(130) 및 미래 참조 화상들은 디코더 체인(116)에 의해 압축된 화상들로부터 재구성된다. 압축된 화상들은 요구될 때, 리오더 화상 풀(104)로부터 검색된다. 이 압축된 화상들은 연속적으로 런-레벨 디코더(123), 역 양자화기(122), 역 이산 코사인 변환기(120) 및 모션 보상기(118)에 의해 처리된다. 이들 네 개의 유닛들은 인코더 체인(102)의 네 개의 유닛들에 관련되는 역동작들을 수행하지만, 역순으로 수행된다. 재구성 후, 참조 화상들은 연속적인 비압축된 화상에 대한 모션 추정에 대해 이용되도록 참조 화상 풀에 일시적으로 저장된다.
도 2는 화상들(202-226)의 시퀀스를 개략적으로 도시한다. 화상들의 다음 유형들은 구별될 수 있다:
-I-화상들(202 및 226),
-P-화상들(208, 214 및 220); 및
-B-화상들(204, 206, 210, 212, 216, 218, 222 및 224).
시퀀스의 부분은 화상들의 그룹(GOP)로 불린다. 도 2는 이하에서 N=3, M=12에 대한 화상들의 MPEG 그룹(GOP)의 예를 도시한다:
-GOP를 정의하는, 두 개의 연속적인 I-화상들(202) 및 (206) 사이에 화상들의 수로, 거리 N;
-두 개의 연속적인 P-화상들(208, 214 및 220) 사이에, 화상들의 수로, 거리 M.
커브된 화살표들, 예를 들어, (228)은 화상이 또다른 화상을 인코드하도록 참조 화상으로서 이용되는 것을 가리킨다. 예를 들어, I-화상(202)은 P-화상(208)을 예측 및 인코드하도록 참조 화상으로서 이용된다. 커브된 화살표들(230, 232, 234 개별적으로 236)에 의해 지시되는 그 턴상의 P-화상(208)은 P-화상(214)를 예측하는데 이용되고, B-화상들(204, 206, 210 및 212)을 유도하는데 이용된다.
도 3은 화상들(302-320)의 시퀀스를 개략적으로 두 번 도시한다:
-제 1 패스 후, 도 1에 설명된 것처럼 비디오 인코더를 통해, 패스 1로 지시됨, 그리고
-제 2 패스 후, 도 1에 설명된 것처럼 비디오 인코더를 통해, 패스 2로 도시됨.
다음 테이블은 화상들의 유형들이 제 1 및 2 패스 후 구별될 수 있는 것을 도시하고 도면에 이용된 것처럼 참조들을 도시한다:
화상의 유형 | 제 1 패스 후 | 제 2 패스 후 |
I-화상 | 302 | 302 |
P-화상 | 308, 314 및 320 | 308, 314 및 320 |
B 순방향 -화상들 | 304, 306, 310, 312, 316 및 318 | |
B-화상 | 305, 307, 311, 313, 317 및 319 |
커브된 화살표들, 예를 들어, (322)는 화상이 또다른 화상을 인코드하도록 참조 화상으로서 이용되는 것을 지시한다. 예를 들어, I-화상들(302)은 P-화상들(308)을 예측 및 인코드하도록 참조 화상으로서 이용된다. 그 턴상의 P-화상(308)은 커브된 화살표들(328, 330, 332 개별적으로 334)에 의해 지시되는, B-화상들(305, 307, 310 및 312)을 유도하는데 이용된다.
도 4는 모션 추정에 관련되는, 인코더 체인(102)의 관점에서, 데이터 유형들의 일부 예들을 개략적으로 도시한다. 다음 예들은 설명된다:
-압축될 비압축된 화상(402)
-참조 화상(404)
-예측(406)
-모션 벡터 필드(408); 및
-예측 에러(410)
압축될 비압축된 화상(402) 및 참조 화상(40)에 기초하여, 예측(406) 및 모션 벡터 필드(408)은 계산된다. 예측(406)은 비압축된 화상(402)로부터 빼진다. 그 결과는 예측 에러(410)이다. 예측 에러(410) 및 모션 벡터 필드(408)은 인코더 체인(102)의 나머지에 의해 인코딩된다.
도 5는 이 발명에 따른 비디오 기록 장치(500)의 구성요소들을 도시한다. 비디오 기록 장치(500)는 기록될 이미지들을 표현하는 비디오 신호를 캡춰하기 위한 캡춰링 수단(508)을 가진다. 비디오 신호는 외부적으로 발생될 수 있고 비디오 기록 장치(500)으로 전송될 수 있다. 그런 경우에, 신호는 안테나 또는 케이블을 통해 수신되는 방송 신호일 수 있다. 비디오 신호는 전하 결합 소자(charge-coupled device:CCD)(502)에 의해 내부적으로 발생될 수 있다. 비디오 기록 장치(500), 예를 들어, 캠코더는 휴대할 수 있다. 비디오 기록 장치(500)는 캡춰된 비디오 신호를 압축하기 위한 비디오 인코더(100) 및 압축된 비디오 신호를 표현하는 비트-스트림을 저장하기 위한 저장 장치(506)를 더 가진다. 압축된 비디오 신호의 전송은 또한 가능하다. 압축된 비디오 신호는 출력 컨넥터(504)에 제공된다. 비디오 인코더(100)는 도 1에 도시된 것처럼 구현된다.
위에 언급된 실시예들은 이 발명을 제한하기 보다는 예시적이고, 이 기술에서 숙련된 자들은 첨부된 청구항들의 범위로부터 벗어나지 않고 대안적인 실시예들을 설계할 수 있을 것이다. 청구항들에서, 괄호들 사이에 위치된 임의의 참고 표시들은 청구항을 제한하는 것으로 구성되어서는 안된다. 단어 '포함하는(comprising)'는 청구항에 열거되지않은 구성요소들 또는 단계들의 존재를 배제하지 않는다. 구성요소 앞에 단어 "a" 또는 "an"은 복수의 그런 구성요소들의 존재를 배제하지 않는다. 이 발명은 몇 개의 별도의 구성요소들을 포함하는 하드웨어와 적합하게 프로그램된 컴퓨터에 의해 구현될 수 있다. 몇 개의 수단을 열거한 장치 청구항들에서, 이들 수단의 몇 개는 하드웨어의 동일한 아이템과 하드웨어에 의해 구현될 수 있다.
Claims (12)
- 압축되지 않은 화상들의 입력 시퀀스를 압축된 화상들로 전송하도록 설계되고, 리오더 화상 풀(reorder picture pool)(104)를 포함하는, 비디오 인코더에 있어서,상기 리오더 화상 풀(104)은 다수의 압축된 화상들을 리오더하도록 설계되는 것을 특징으로 하는, 비디오 레코더.
- 제 1항에 있어서,상기 압축된 화상들은 예측적인 인터-화상 코딩된 화상들(108) 또는 양방향 인터-화상 코드 화상들(110)일 수 있는 것을 특징으로 하는, 비디오 인코더.
- 제 2항에 있어서,시작과 종료를 가지고, 압축되지않은 화상들을 압축된 화상들로 변환하도록 설계되고, 연속적으로 모션 추정기(124), 이산 코사인 변환기(126), 양자화기(128), 및 런-레벨 인코더(129)를 가지고 설계되는 인코더 체인(102)과;시작과 종료를 가지고, 압축된 화상들을 압축된 화상들로 변환하도록 설계되고, 연속적으로 런-레벨 디코더(123), 역 양자화기(122), 역 이산 코사인 변환기(120), 및 모션 보상기(118)을 가지는 디코더 체인(116)과;가변 길이 인코더(134)와;상기 인코더 체인(102)의 끝과 상기 디코더 체인(116)의 시작 사이에 위치하는 상기 리오더 화상 풀(104)을 포함하는 것을 특징으로 하는, 비디오 인코더.
- 제 2항에 있어서,상기 예측적인 인터-화상 코딩된 화상들(108)의 적어도 하나를 상기 양방향 인터-화상 코딩된 화상(110)으로 재코딩하도록 설계되는 것을 특징으로 하는, 비디오 인코더.
- 제 2항에 있어서,예측적인 인터-화상 코딩을 적용하므로써 상기 예측적인 인터-화상 코딩된 화상들(108)의 적어도 하나를 예측적인 인터-화상 코딩된 화상(108)으로 재코딩하도록 설계되는 것을 특징으로 하는, 비디오 인코더.
- 제 2항에 있어서,상기 비압축된 화상들이 MPEG 인코딩을 수행하여 압축된 화상들이 생기도록 설계되는 것을 특징으로 하는, 비디오 인코더.
- 제 2항에 있어서,압축의 정도를 가지고, 상기 압축된 화상들의 압축의 정도를 변화시키므로써, 상기 리오더 화상 풀(104)에 동시에 저장될 수 있는, 압축된 화상들의 수를 적응하도록 설계되는 것을 특징으로 하는, 비디오 인코더.
- 제 2항에 있어서,재코딩하는 단계의 다음 유형들 중 적용될 것을 선택할 수 있도록 설계되는 것을 특징으로 하는, 비디오 인코더:예측적인 인터-화상 코딩된 화상들(108)을 양방향 인터-화상 코딩된 화상들(110)로 재코딩하는 단계; 또는예측적인 인터-화상 코딩을 적용하므로써 예측적인 인터-화상 코딩된 화상들(108)을 예측적인 인터-화상 코딩된 화상들(108)로 재코딩하는 단계.
- 비디오 기록 장치(500)로서,비압축된 화상들의 시퀀스를 표현하는, 비디오 데이터를 캡춰하기 위한 캡춰링 수단(502)과;비디오 인코더로서,비압축된 화상들의 입력 시퀀스를 압축된 화상들로 변환하도록 설계되고, 리오더 화상 풀(104)을 포함하는, 상기 비디오 인코더(100)와;압축된 화상들을 표현하는, 데이터를 저장하기 위한 저장 수단(506)을 포함하는 비디오 기록 장치에 있어서, 리오더 화상 풀(104)은 상기 다수의 압축된 화상들을 리오더하도록 설계되는 것을 특징으로 하는, 비디오 기록 장치.
- 제 9항에 있어서,상기 압축된 화상들은 예측적인 인터-화상 코딩된 화상들(108) 또는 양방향 인터-화상 코딩된 화상들(110)일 수 있는 것을 특징으로 하는, 비디오 기록 장치.
- 제 9항에 있어서,상기 비디오 인코더는 상기 예측적인 인터-화상 코딩된 화상들(108)의 적어도 하나를 양방향 인터-화상 코딩된 화상(110)으로 재코딩하도록 설계되는 것을 특징으로 하는, 비디오 기록 장치.
- 제 9항에 있어서,상기 비디오 인코더는 상기 예측적인 인터-화상 코딩을 적응하므로써 상기 예측적인 인터-화상 코딩된 화상들(108)의 적어도 하나를 예측적인 인터-화상 코딩된 화상(108)으로 재코딩하도록 설계되는 것을 특징으로 하는, 비디오 기록 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020027015154A KR20020095260A (ko) | 2001-03-12 | 2002-01-28 | 비디오 인코더 및 재코딩 장치 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01200910.6 | 2001-03-12 | ||
KR1020027015154A KR20020095260A (ko) | 2001-03-12 | 2002-01-28 | 비디오 인코더 및 재코딩 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20020095260A true KR20020095260A (ko) | 2002-12-20 |
Family
ID=39004515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020027015154A KR20020095260A (ko) | 2001-03-12 | 2002-01-28 | 비디오 인코더 및 재코딩 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20020095260A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100874518B1 (ko) * | 2006-03-28 | 2008-12-16 | 가부시끼가이샤 도시바 | 동화상 복호화 방법 및 장치 |
-
2002
- 2002-01-28 KR KR1020027015154A patent/KR20020095260A/ko not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100874518B1 (ko) * | 2006-03-28 | 2008-12-16 | 가부시끼가이샤 도시바 | 동화상 복호화 방법 및 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11089311B2 (en) | Parameterization for fading compensation | |
JP4625411B2 (ja) | 画像データの符号化方法およびそのためのプログラムを記録したコンピュータ読み取り可能媒体 | |
US8077769B2 (en) | Method of reducing computations in transform and scaling processes in a digital video encoder using a threshold-based approach | |
US20040258162A1 (en) | Systems and methods for encoding and decoding video data in parallel | |
US20110280306A1 (en) | Real-time video coding/decoding | |
US7463684B2 (en) | Fading estimation/compensation | |
EP1383339A1 (en) | Memory management method for video sequence motion estimation and compensation | |
JP2009267689A (ja) | 動画像符号化装置、及び動画像符号化方法 | |
US6163576A (en) | Video encoder having reduced memory bandwidth requirements | |
EP1496707A1 (en) | Encoding and decoding of video images with delayed reference picture refresh | |
EP1374599B1 (en) | Video encoder and recording apparatus | |
US20060227874A1 (en) | System, method, and apparatus for DC coefficient transformation | |
KR20020095260A (ko) | 비디오 인코더 및 재코딩 장치 | |
JP4238408B2 (ja) | 画像圧縮装置 | |
JP2004312689A (ja) | Mpegビデオ復号化方法及びmpegビデオ復号化器 | |
JPH11205795A (ja) | 映像信号の圧縮符号化方法及びその符号化器 | |
EP0793388A2 (en) | Method and apparatus to calculate field motion estimations in frame pictures | |
US20050201458A1 (en) | Image encoding system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |