KR20170126934A - 컨텐츠-적응적 b-픽쳐 패턴 비디오 인코딩 - Google Patents
컨텐츠-적응적 b-픽쳐 패턴 비디오 인코딩 Download PDFInfo
- Publication number
- KR20170126934A KR20170126934A KR1020177026425A KR20177026425A KR20170126934A KR 20170126934 A KR20170126934 A KR 20170126934A KR 1020177026425 A KR1020177026425 A KR 1020177026425A KR 20177026425 A KR20177026425 A KR 20177026425A KR 20170126934 A KR20170126934 A KR 20170126934A
- Authority
- KR
- South Korea
- Prior art keywords
- gop
- cost
- decomposition
- pictures
- distortion
- Prior art date
Links
Images
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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/177—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
-
- 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/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/19—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- 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
-
- 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/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
컨텐츠 적응적인 비디오 인코딩의 방법이 개시된다. 인코딩 방법은 인코딩되는 픽쳐들의 컨텐츠에 의존하여 조절되어 인코딩을 최적화하도록 자동으로 조절된다. 방법을 구현하기 위한 시스템 및 방법의 명령들을 저장하기 위한 비-일시적 컴퓨터-판독가능한 스토리지 매체가 또한 개시된다.
Description
관련 출원들에 대한 상호-참조
본 출원은 2015년 3월 4일에 출원된 U.S. 가특허 출원 No. 14/638,503의 이익을 주장하고, 그것의 내용은 참조로서 본 출원에 통합된다.
본 발명은 전반적으로 비디오에 관한 것으로, 보다 상세하게는, 디지털 비디오 프로세싱에 관한 것이다.
비디오 인코더들은 공간적인 및 시간적인 중복들을 줄임으로써 비디오 픽쳐들, 또는 프레임들의 시퀀스들을 압축한다. 이것은 공간적인 및/또는 시간적인 도메인들에서 예측 프로세스(prediction process)들을 수행함으로써 이루어진다. 만약 예측 프로세스가 현재 픽쳐내 정보만을 사용하면, 그것은 인트라-예측(intra-prediction)으로 지칭되고, 인코딩되는 픽쳐는 소위 I-픽쳐이다. 그와는 대조적으로, 만약 예측 프로세스가 상이한 픽쳐들간에 상관관계들을 사용하면, 그것은 인터-예측(inter-prediction)으로 지칭된다. 대부분의 인코더들은 두 가지 유형들의 인터-예측, 소위 P (예측된) 예측 및 B (양방향의) 예측을 지원한다. P-예측은 단지 하나의 예측 블럭에 기초하여 현재 블럭의 값을 예측하지만, 반면에 B 예측은 두개의 미리 인코딩된 블럭들에 기초하여 현재 블럭의 보간 기반의 예측(interpolation-based prediction)을 허용한다는 점이 주요 차이점이다.
매크로블럭 (MB: macroblock)은 16 X 16 픽셀들의 블럭이다. I-픽쳐내 모든 매크로블럭들은 인트라-예견되지만, 하지만 P 픽쳐내 MB들은 P-인터 또는 인트라-예견 (어느 것이든 더 효율적이다) 중 하나일 수 있다. 마지막으로, B 픽쳐내 MB들은 B-인터, P-인터, 또는 인트라-예견의 어느 하나인 것이 허용된다.
비디오 압축에서, 픽쳐들의 그룹 (GOP : group of pictures)은 순서(order)를 지정하고 거기에 인트라- 및 인터-픽쳐들이 배열된다. GOP는 코딩된 비디오 스트림내 연속적인 픽쳐들의 그룹이다. 각각의 코딩된 비디오 스트림은 연속적인 GOP들로 이루어진다.
픽쳐들은 예측 구조들에 기초하여 인코딩된다. 예측 구조는 GOP내 소정의 픽쳐를 인코딩하기 위해 GOP내 어떤 픽쳐들이 사용되는지 및 각각의 예측의 유형: I, P, 또는 B을 설명한다. 현존하는 인코딩 방법들은 픽쳐 컨텐츠의 성질을 고려하지 않고서 고정된 예측 구조를 사용한다. 이것은 최적이 아닌 인코딩으로 귀결될 수 있다.
컨텐츠 적응적(adaptive)인 비디오 인코딩의 방법이 개시된다 - 즉, 상기 인코딩 방법은 상기 인코딩을 최적화하기 위해 인코딩 프로세스의 하나 이상의 측면들을 자동으로 조절한다. 상기 조절들은 인코딩되는 상기 픽쳐들의 컨텐츠에 의존한다. 일 실시예에서, 조절되는 측면들은 픽쳐들의 그룹 및 예측 구조의 사이즈일 수 있다. 상기 방법을 구현하기 위한 시스템 및 상기 방법의 명령들을 저장하기 위한 비-일시적 컴퓨터-판독가능한 스토리지 매체가 또한 개시된다.
첨부 도면과 결부하여 예시의 방식으로 제공되는 후술하는 설명으로부터 더욱 상세한 이해를 가질 수 있다:
도 1은 픽쳐들의 그룹 분해(decomposition)들의 예들을 도시한다;
도 2는 예측 구조의 두가지 예들을 도시한다;
도면들 3a 및 3b는 비디오 인코딩 방법의 예를 도시한다; 및
도 4는 하나 이상의 개시된 실시예들이 구현될 수 있는 예시적인 디바이스 또는 시스템의 블록도이다.
도 1은 픽쳐들의 그룹 분해(decomposition)들의 예들을 도시한다;
도 2는 예측 구조의 두가지 예들을 도시한다;
도면들 3a 및 3b는 비디오 인코딩 방법의 예를 도시한다; 및
도 4는 하나 이상의 개시된 실시예들이 구현될 수 있는 예시적인 디바이스 또는 시스템의 블록도이다.
컨텐츠 적응적 비디오 인코딩을 위한 방법 및 시스템이 이제 상세하게 설명될 것이다. 방법은 움직이는 비디오 이미지를 구성하는 픽쳐들, 또는 프레임들의 인코딩을 최적화하기 위한 픽쳐들의 그룹 (GOP : group of picture) 및 예측 구조를 선택하는 단계를 포함한다. 인코딩을 최적화하기 위해 사용될 수 있는 최적화 메트릭은 RD(rate-distortion) 코스트다. 이들 용어들은 이하에 설명된다.
레이트-왜곡(rate-distortion) 코스트는 픽쳐 또는 픽쳐들의 그룹을 인코딩하기 위해 필요한 비트들의 수 또는 비트레이트(bitrate), 및 인코딩에 의해 도입되는 이미지 왜곡의 조합을 지칭한다. 일반적으로, 픽쳐를 인코딩하기 위해 사용되는 비트들의 수를 줄이는 것은 더 많은 왜곡으로 귀결되는 경향이 있을 것이다 - 인코딩된 픽쳐에 더 적은 정보가 있다. 레이트 및 왜곡의 조합은 따라서 인코딩 최적화의 적정한 메트릭(metric)에 요구된다. 왜곡을 결정하는 방법들이 본 출원에 나중에 논의된다.
도 1은, 제한되는 것으로 간주되지는 않지만, GOP들 및 GOP 분해들의 예들을 도시한다. 비디오 시퀀스내 12 연속적인 픽쳐들이 도시된다. 두개의 별개의 GOP 분해들 (110 및 120)로 분해된 12 연속적인 픽쳐들이 도시된다. 분해 (110)에서 두개의 픽쳐들, 세개의 픽쳐들, 세개의 픽쳐들, 및 네개 픽쳐들의 개별 사이즈들을 갖는 네개 GOP들, (115a-115d)로 분해된 12 픽쳐들이 도시된다. 분해 (120)에서 동일한 12 픽쳐들은 네개의 픽쳐들, 세개의 픽쳐들, 및 다섯개의 픽쳐들의 개별 사이즈들을 갖는 세개의 GOP들, (125a-125c)로 분해된다. 각각의 GOP내 GOP들의 수 및 픽쳐들의 수는 고정되지 않는다.
도 2는, 제한하는 것으로 간주되지 않는, 아홉개의 픽쳐들을 함유하는 예제 GOP에 적용되는 두개의 상이한 예측 구조들 (205A 및 205B)의 예들을 도시한다. (205A)에서는, 제 1 픽쳐만이 I 픽쳐로서 인코딩되지만, 반면 모든 다른 픽쳐들은 P 픽쳐들로 인코딩되고, 각각의 픽쳐는 이전 픽쳐와 관련이 있다. 예측 구조 (205A)는 예를 들어, 인코딩되는 픽쳐들이 빠르게 움직이는 오브젝트 때는 근-최적의 인코딩(near-optimal encoding)을 제공할 수 있지만, 그러나 픽쳐들이 느리게 움직이는 오브젝트를 포함할 때는 차선의(suboptimal) 인코딩을 제공할 수 있다.
그와는 대조적으로, 만약 픽쳐들이 예를 들어, 느리게 움직이는 오브젝트를 포함하여서, 높은 시간적인 상관관계(correlation)들을 나타내면, 예측 구조 (205B)는 (205A)보다 최적의 인코딩에 더 근접하게 제공할 수 있다. 예측 구조 (205B)는 B 프레임들을 사용하고 계층적인 B-구조 (HBS: hierarchical B-structure)으로 지칭된다. 따라서, RD 코스트에 의해 측정되는 최적의 인코딩으로 귀결되는 예측 구조는 인코딩되는 픽쳐들의 컨텐츠에 의존한다.
따라서, 그것의 예측 구조들을 픽쳐 컨텐츠에 적응하는 인코딩 방법은 고정된 예측 구조(fixed prediction structure)를 갖는 인코딩 방법에 우수한 인코딩 최적화를 제공할 수 있다. 더욱이, HBS들을 이용한 컨텐츠 적응적 비디오 인코딩 방법은 훨씬 더 나은 인코딩을 제공할 수 있다.
도면들 3a 및 3b는 컨텐츠 적응적 비디오 인코딩을 위한 방법(300)의 실시예를 도시한다. 도 3a는 방법 (300)의 개요를 전달하고 도 3b는 (315)에서의 GOP 분해를 위해 RD 코스트를 결정하는 방법의 실시예의 세부사항들을 도시한다. 전체 방법은 아래와 같이 설명될 수 있다. 미리 결정된 수의 연속적인 픽쳐들의 GOP 분해들의 셋이 선택된다. 셋내의 각각의 GOP 분해들에 대하여, 해당 GOP 분해내 각각의 GOP에 대한 GOP RD 코스트를 결정함으로써 GOP 분해 RD 코스트가 결정된다. 최소의 GOP 분해 RD 코스트를 갖는 해당 셋에서의 GOP 분해가 연속적인 픽쳐들 인코딩 사용을 위해 선택된다.
도 3a에 관련하여, 방법 (300)은 미리 결정된 수의 연속적인 픽쳐들의 모든 가능한 GOP 조성들로부터 GOP 분해들의 셋을 선택함으로써 초기화된다(305). 예를 들어, 잘 동작하는 이미 알려진 작은 수의 GOP 분해들을 선택함으로써 해당 셋이 선택될 수 있다. 대안적으로, 정의된 범위의 사이즈들내에 GOP 분해들만이 선택될 수 있다. 다른 대안에서, 알려진 신(scene) 변화 알고리즘들이 GOP 사이즈들의 선택을 가이드하기 위해 사용될 수 있다.
방법 (300)은 저장된 GOP 분해 RD 코스트의 최초 값 및 저장된 GOP RD 코스트의 최초 값을 저장함으로써 추가로 초기화된다 (305). 방법 (300)은 TOTAL 양을 제로와 같게 설정함으로써 추가로 초기화된다 (305). TOTAL 양은 GOP 분해 RD 코스트를 획득하기 위해 GOP RD 코스트들을 합산하기 위해 사용될 것이다.
방법 (300)은 GOP에 대한 가능한 예측 구조들로부터 예측 구조들의 셋을 정의함으로써 추가로 초기화된다 (305). 예측 구조들의 셋은 적어도 하나의 계층적인(hierarchical) B 구조를 포함할 수 있다. 예측 구조들의 셋을 정의하는 단계는 미리 디코딩된 픽쳐들을 저장하기 위해 사용되는 디코딩 픽쳐 버퍼 (DFB : decoded picture buffer)의 제약사항들을 충족하는 예측 구조들을 선택하는 단계를 포함할 수 있다. 디코더들은 메모리 및 프로세싱 성능들에 면에서 제약될 수 있기 때문에, DFB의 사이즈에 한계치가 있을 수 있다. 대안적으로, 알려진 신 변화 알고리즘들이 예측 구조들의 셋을 위한 예측 구조들의 선택을 가이드하기 위해 사용될 수 있다.
초기화에 이어, GOP 분해가 GOP 분해들의 셋으로부터 선택된다 (310). 선택된 GOP 분해에 대한 GOP 분해 RD 코스트가 결정된다 (315). 이 GOP 분해 RD 코스트는 저장된 GOP 분해 RD 코스트와 비교된다 (320). 만약 GOP 분해 RD 코스트가 저장된 값보다 작지 않으면 방법은 (310)으로 리턴하고 새로운 GOP 분해가 선택된다. 반면에, 만약 GOP 분해 RD 코스트가 저장된 값보다 작으면, 이 새로운 GOP 분해 RD 코스트가 저장되어 (325), 현재 저장된 값을 대체한다.
그런 다음 방법은 셋내에 임의의 남은 GOP 분해들이 있는지 여부를 체크한다(330). 만약 있다면 방법은 셋으로부터 새로운 GOP 분해를 선택하기 위해 (310)으로 리턴한다. 만약에 없다면, 그러면 저장된 GOP 분해 RD 코스트는 최소이고, 해당 최소값을 갖는 GOP 분해가 연속적인 픽쳐들을 인코딩하기 위해 사용된다 (335).
도 3b는 도 3a에서의 (315)에서 GOP 분해 RD 코스트를 결정하는 세부 사항들을 도시한다. 종합적으로, 이 방법의 실시예에서 GOP 분해 RD 코스트를 결정은 다음과 같이 요약될 수 있다. 상기에서 설명된 것 처럼, 예측 구조들의 셋이 초기화 단계에서 정의된다 (305). GOP 분해내 각각의 GOP에 대하여, 예측 구조 RD 코스트가 셋내 각각의 예측 구조에 대하여 결정된다. 이들 결정된 예측 구조 RD 코스트들 전부 중에서 최소 예측 구조 RD 코스트가 GOP에 대한 GOP RD 코스트로 선택된다. GOP 분해 RD 코스트가 GOP 분해내 모든 GOP들에 대한 GOP RD 코스트들을 합산함으로써 결정된다.
도 3b에 관련하여, GOP 분해 RD 코스트를 결정하는 세부 사항들은 아래와 같다. 현재 GOP 분해내 GOP가 선택된다 (345). (현재 GOP 분해는 도 3a에서 (310)에서 선택되었다.) 예측 구조는 앞에서 초기화된 예측 구조들의 셋으로부터 선택된다 (350). 선택된 예측 구조에 대한 GOP내 각각의 픽쳐에 대한 RD코스트가 결정된다 (355).
일 실시예에서 각각의 픽쳐에 대한 RD 코스트는 왜곡 및 비트레이트을 결정함으로써 그리고 다음 공식을 이용하여 결정될 수 있다:
RD 코스트(rate-distortion cost) = 왜곡(distortion) + L*비트레이트(bitrate)
식 (1)
여기서, L은 픽쳐 유형 및 인코딩 파라미터들 예컨대 양자화 파라미터(quantization parameter)에 의존하는 파라미터이다. 왜곡은 현재 GOP 및 현재 예측 구조에 모션 추정 프로세스를 적용함으로써 결정될 수 있다. 적용된 모션 추정 프로세스(motion estimation process)는 일련의 기준 픽쳐(reference picture)들로 지칭되는 앞에서 인코딩된 픽쳐들의 셋을 이용함으로써 GOP내 모든 픽쳐의 컨텐츠(content)를 예측하는 것을 가능하게 한다. 이 예측 프로세스는 일반적으로 원래의 픽쳐와 상이하지만 하지만 근접한 예측 픽쳐들을 생성한다. 예측된 픽쳐와 원래의 픽쳐간의 차이는 예측 에러 또는 예측 왜곡으로 불린다. 일반적으로, 예측 왜곡이 클수록, 원래의 픽쳐를 표현하기 위해 인코딩될 필요가 있는 정보의 양이 더 크다. 왜곡은 관련 기술 분야에서 알려진 메트릭(metric)을 이용함으로써, 예컨대 절대 차이 값들의 합 (SAD : sum of absolute difference), 절대 변환 차이 값들의 합 (SATD : sum of absolute transformed difference) 또는 평균 절대 차이값(MAD : mean absolute difference)을 이용함으로써 측정될 수 있다. 비트레이트(bitrate) 또한 알려진 방법들을 이용하여 결정될 수 있다. GOP내 각각의 픽쳐에 대한 RD 코스트의 결정은 레이트-왜곡 모델, 예컨대 이차(quadratic) 레이트-왜곡 모델을 이용한 왜곡으로부터 비트레이트를 추정하는 단계를 포함할 수 있다. RD 코스트 결정은 재구성된(reconstructed) 픽쳐들보다는 원래의(original) 입력 픽쳐들, 또는 다운-샘플링된 비디오의 버전들에 적용될 수 있다.
도 3b로 돌아가서, GOP내 모든 픽쳐들의 RD 코스트들이 GOP RD 코스트를 결정하기 위해 합산된다 (360). 이 GOP RD 코스트는 저장된 GOP RD 코스트와 비교된다 (365). (저장된 GOP RD 코스트는 도 3a에서 (305)에서 초기화된다.) 만약 GOP RD 코스트가 저장된 GOP RD 코스트보다 작지 않으면 방법은 (350)으로 리턴하고 새로운 예측 구조가 선택된다. 반면에, 만약 GOP RD 코스트가 저장된 GOP RD 코스트보다 작으면, 이 새로운 GOP RD 코스트가 저장되어 (370), 현재 저장된 값을 대체한다.
그런 다음 방법은 임의의 남은 예측 구조들이 있는지 여부를 체크한다(375). 만약 있다면 방법은 새로운 예측 구조를 선택하기 위해 (350)으로 리턴한다. 만약에 없다면, 그러면 저장된 GOP RD 코스트는 예측 구조들에 대한 최소 RD 코스트를 수용한다. 저장된 GOP RD 코스트는 그런 다음 TOTAL 양에 추가된다 (380).
그런 다음 방법은 현재 GOP 분해내에 남아있는 GOP들이 있는지 여부를 결정한다(385). 만약 있다면 방법은 (345)로 리턴하고 새로운 GOP가 선택된다. 만약에 남아있는 GOP들이 없다면, 그러면 TOTAL에 합이 GOP 분해 RD 코스트다. 이 GOP 분해 RD 코스트가 도 3a에 (320)에 전달되고 도 3a에 도시된 전체 방법이 계속된다.
계산 복잡도를 줄이기 위해, 각 픽쳐 또는 각 GOP 최대값 RD 코스트들에 기반된 조기 종료 전략(early termination strategy)이 방법의 일 실시예에로 구현될 수 있다.
방금 설명된 방법은 또한 이하의 슈도코드(pseudocode)에 의해 설명될 수 있다:
GOP 분해 및 그것의 RD 코스트를 큰 값으로 초기화한다
RD_Optimal_Decomposition = MAX_RD_COST (초기화를 위해)
Optimal_Decomposition = 하나의 GOP IPPPPP (초기화를 위해)
// 최소 RD 코스트로 이어지는 GOP들의 세트로의 분해(decomposition)를 발견
GOP들의 세트(즉, (GOPi)) 내로의 다음 MAX_NUM_LOOKAHEAD_PICTURES 픽쳐들의 임의의 가능한 분해 D에 대하여
// 그것의 GOP들의 RD 코스트를 축적함으로써 분해 D의 RD 코스트를 계산
RD_D = 0
모든 GOPi에 대하여
// 최소 RD 코스트로 이어지는 GOPi에 대한 예측 구조 발견
Optimal_Prediction_Strcture = IPPPPP GOP 구조 (초기화를 위해)
RD_ Optimal_Prediction_Structure = MAX_RD_COST
DBP 제약사항들을 충족하는 GOPi의 모든 예측 구조 PS에 대하여
RD_PS = PS의RD 코스트
If (RD_PS < RD_Optimal_Prediction_Structure)
Optimal_Prediction_Structure = PS
RD_Optimal_Prediction_Structure = RD_PS
End
End
RD_D = RD_D + RD_Optimal_Prediction_Structure
End
// 만약 그것의 RD 코스트가 지금까지의 최상의 RD 코스트 보다 작으면 최적의 분해로서 D를 선택
If (RD_D < RD_Optimal_Deptimal_Decomposition = D
End
End
도 4는 하나 이상의 개시된 실시예들이 구현될 수 있는 예시적인 디바이스 또는 시스템(400)의 블록도이다. 시스템(400)은 예를 들어, 컴퓨터, 게임 디바이스, 핸드헬드 디바이스, 셋톱 박스, 텔레비젼, 모바일 폰 또는 태블릿 컴퓨터를 포함할 수 있다. 시스템(400)은 프로세서(402), 메모리(404), 스토리지(406), 하나 이상의 입력 디바이스(408) 및 하나 이상의 출력 디바이스(410)를 포함한다. 또한, 시스템(400)은 선택적으로 입력 드라이버(412) 및 출력 드라이버(414)를 포함할 수 있다. 시스템(400)이 도 4에 나타내어지지 않은 추가적인 요소를 포함할 수 있다는 것이 이해된다.
프로세서(402)는 중앙 처리 장치(CPU), 그래픽 프로세싱 유닛(GPU), 동일 다이 상에 위치된 CPU 및 GPU 또는 하나 이상의 프로세서 코어를 포함할 수 있으며, 각각의 프로세서 코어는 CPU 또는 GPU일 수 있다. 메모리(404)는 프로세서(402)와 동일한 다이 상에 위치될 수 있거나, 프로세서(402)와는 별개로 위치될 수 있다. 메모리(404)는 휘발성 또는 비휘발성 메모리, 예를 들어 랜덤 액세스 메모리(RAM), 동적 RAM 또는 캐시를 포함할 수 있다. 메모리 (404)는 미리 디코딩된 픽쳐들을 저장하도록 구성된 디코딩된 픽쳐 버퍼 (DFB : decoded picture buffer)를 포함할 수 있다. 이들 저장된 픽쳐들은 인코딩을 위해 프로세서 (402)에 의해 사용될 수 있어서 후속 픽쳐들에 대한 예측 변수(predictor)들을 형성한다.
스토리지(406)는 고정형 또는 제거가능 스토리지, 예를 들어 하드 디스크 드라이브, 솔리드 스테이트 드라이브, 광 디스크 또는 플래시 드라이브를 포함할 수 있다. 입력 디바이스(408)는 키보드, 키패드, 터치스크린, 터치패드, 검출기, 마이크로폰, 가속도계, 자이로스코프, 생체 측정 스캐너 또는 네트워크 접속(예를 들어, 무선 IEEE 802 신호의 송신 및/또는 수신을 위한 무선 로컬 영역 네트워크 카드)을 포함할 수 있다. 입력 디바이스는 비디오 정보의 소스, 예컨대, 한정되는 것은 아니지만, 비디오 카메라, 또는 비디오 플레이백 디바이스 예컨대, 한정되는 것은 아니지만, 블루-레이 플레이어(Blu-Ray player)를 또한 포함할 수 있다. 출력 디바이스(410)는 디스플레이, 스피커, 프린터, 햅틱 피드백 디바이스, 하나 이상의 광, 안테나, 네트워크 접속(예를 들어 무선 IEEE 802 신호의 송신 및/또는 수신을 위한 무선 로컬 영역 네트워크 카드) 또는 비디오 디스플레이를 포함할 수 있다.
입력 드라이버(412)는 프로세서(402) 및 입력 디바이스(408)와 통신하며, 프로세서(402)가 입력 디바이스(408)로부터 입력을 수신할 수 있게 한다. 출력 드라이버(414)는 프로세서(402) 및 출력 디바이스(410)와 통신하고, 프로세서(402)가 출력 디바이스(410)에 출력을 전송할 수 있게 한다. 입력 드라이버(412) 및 출력 드라이버(414)는 옵션의 컴포넌트이며, 입력 드라이버(412) 및 출력 드라이버(414)가 존재하지 않는다면 시스템(400)은 동일 방식으로 동작할 것이라는 것에 유의한다.
시스템(400)은 상기에서 설명된 것과 같은 컨텐츠 적응적 비디오 인코딩의 방법을 다음과같이 구현하도록 구성될 수 있다. 프로세서(402)가 해당 방법을 수행하도록 구성될 수 있다. 입력 디바이스(408)는 비디오 정보, 예컨대 연속적인 픽쳐들을 프로세서(402)에 공급하도록 구성될 수 있다. 메모리 디바이스(404)는 비디오 정보를 저장하고 프로세서 (402)와 비디오 정보를 교환하도록 구성될 수 있다.
프로세서(402)는 입력 디바이스(408)에 의해 공급된 미리 결정된 수의 연속적인 픽쳐들을 획득할 수 있다. 프로세서(402)는 메모리 디바이스(404)로부터 연속적인 픽쳐들의 GOP 분해들의 셋을 검색할 수 있다. 프로세서(402)는 그런다음 해당 GOP 분해내 각각의 GOP에 대한 RD 코스트를 결정함으로써 RD 코스트를 해당 셋내 각각의 GOP 분해에 대하여 결정하도록 처리할 수 있다. 프로세서(402)는 연속적인 픽쳐들 인코딩에 사용을 위해 최소 RD 코스트를 갖는 셋으로부터 GOP 분해를 선택할 수 있다. 프로세서(402)는 본 출원에서 설명된 컨텐츠 적응적 비디오 인코딩을 위한 방법의 각각의 실시예들의 모든 단계들을 수행하도록 구성될 수 있다.
다수의 변형이 본 출원에서의 개시에 기초하여 가능하다는 것이 이해되어야 한다. 특히 특징 및 요소가 조합하여 상술되었지만, 각 특징 또는 요소는 다른 특징 및 요소 없이 단독으로, 또는 다른 특징 및 요소와 함께 또는 이들 없이 다양한 조합으로 사용될 수 있다.
제공된 방법은 범용 컴퓨터, 프로세서, 또는 프로세서 코어로 구현될 수 있다. 적절한 프로세서는 예시의 방식으로, 범용 프로세서, 특수 목적 프로세서, 통상적인 프로세서, 디지털 신호 프로세서(DSP), 복수의 마이크로프로세서, DSP 코어와 연관된 하나 이상의 마이크로프로세서, 컨트롤러, 마이크로컨트롤러, 어플리케이션 특정 집적 회로(ASIC), 필드 프로그래머블 게이트 어레이(FPGA) 회로, 임의의 다른 유형의 집적 회로(IC) 및/또는 상태 머신을 포함한다. 이러한 프로세서는 프로세싱된 하드웨어 기술 언어(HDL) 명령 및 넷리스트(컴퓨터 판독가능 매체에 저장될 수 있는 명령)를 포함하는 다른 중간 데이터의 결과를 사용하여 제조 프로세스를 구성함으로써 제조될 수 있다. 이러한 프로세싱의 결과는 본 발명의 양태를 구현하는 프로세서를 제조하기 위해 반도체 제조 프로세스에서 사용되는 마스크워크(maskwork)일 수 있다.
본 출원에 제공되는 방법 또는 흐름도는 범용 컴퓨터 또는 프로세서에 의한 실행을 위해 컴퓨터 판독가능 저장매체에 통합된 컴퓨터 프로그램, 소프트웨어 또는 펌웨어로 구현될 수 있다. 컴퓨터 판독가능 저장매체의 예는 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 레지스터, 캐시 메모리, 반도체 메모리 디바이스, 내부 하드 디스크 및 제거 가능 디스크와 같은 자기 매체, 자기-광 매체, CD-ROM 디스크와 같은 광 매체 및 디지털 범용 디스크(DVD : digital versatile disk)를 포함한다.
Claims (20)
- 컨텐츠 적응적 비디오 인코딩을 위한 방법에 있어서, 상기 방법은,
연속적인 픽쳐들의 셋을 선택하는 단계;
상기 연속적인 픽쳐들의 셋의 제 1 GOP(groups of picture) 분해(decomposition)를 형성하도록 상기 연속적인 픽쳐들의 셋을 픽쳐들의 하나 이상의 그룹들(GOP들)로 분해하는 단계;
상기 분해하는 단계를 반복함으로써, 상기 연속적인 픽쳐들의 셋의 복수의 별개의 GOP 분해들을 형성하는 단계로서, 상기 복수는 상기 제 1 GOP 분해를 포함하는, 상기 형성하는 단계;
해당 GOP 분해내 각각의 GOP에 대한 GOP 레이트-왜곡(RD : rate-distortion) 코스트(cost)를 결정함으로써 상기 복수의 별개의 GOP 분해들에 각각의 GOP 분해에 대하여, GOP 분해 RD 코스트를 결정하는 단계; 및
상기 연속적인 픽쳐들의 셋내 상기 연속적인 픽쳐들 인코딩에 사용을 위해 상기 복수의 별개의 GOP 분해들로부터 최소 GOP 분해 RD 코스트를 갖는 GOP 분해를 선택하는 단계를 포함하는, 방법. - 청구항 1에 있어서, 각각의 GOP 분해에 대한 상기 GOP 분해 RD 코스트를 결정하는 단계는 각각의 GOP 분해내 모든 GOP들에 대한 GOP RD 코스트들을 합산하는 단계를 포함하는, 방법.
- 청구항 1에 있어서,
상기 GOP RD 코스트를 결정하는 단계는 각각의 GOP 분해내 각각의 GOP에 대하여,
예측 구조(prediction structure)들의 셋을 정의하는 단계;
상기 셋내 각각의 예측 구조에 대한 예측 구조 RD 코스트를 결정하는 단계; 및
상기 GOP에 대한 상기 RD 코스트로서 상기 예측 구조 RD 코스트들 중에서 최소를 선택하는 단계를 포함하는, 방법. - 청구항 3에 있어서,
상기 예측 구조들의 셋은 적어도 하나의 계층적인(hierarchical) B 구조를 포함하는, 방법. - 청구항 3에 있어서,
상기 예측 구조들의 셋을 정의하는 단계는 디코딩 픽쳐 버퍼 (DFB : decoded picture buffer)의 제약사항들을 충족하는 예측 구조들을 선택하는 단계를 포함하는, 방법. - 청구항 3에 있어서,
상기 각각의 GOP의 RD 코스트를 결정하는 단계는 각각의 예측 구조에 대한 각각의 GOP내 각각의 픽쳐의 RD 코스트들을 합산하는 단계를 포함하는, 방법. - 청구항 6에 있어서,
상기 각각의 픽쳐의 RD 코스트는,
RD 코스트(rate-distortion cost) = 왜곡(distortion) + L*비트레이트(bitrate) 공식으로부터 결정되고, 상기 L은 픽쳐 유형 및 인코딩 파라미터들에 의존하는 파라미터인, 방법. - 청구항 3에 있어서,
왜곡은 현재 GOP 및 현재 예측 구조에 모션 추정 프로세스(motion estimation process)를 적용함으로써 결정되는, 방법. - 청구항 8에 있어서,
왜곡은 절대 차이 값들의 합 (SAD : sum of absolute difference), 절대 변환 차이 값들의 합 (SATD : sum of absolute transformed difference) 또는 평균 절대 차이값 (MAD : mean absolute difference) 중 적어도 하나를 이용하여 결정되는, 방법. - 청구항 1에 있어서,
RD 코스트를 결정하는 단계는 레이트-왜곡 모델을 이용하여 왜곡으로부터 비트레이트를 추정하는 단계를 포함하는, 방법. - 청구항 1에 있어서,
원래의(original) 입력 픽쳐들, 또는 다운-샘플링된 비디오의 버전들에 적용되는, 방법. - 컨텐츠 적응적 비디오 인코딩을 위한 시스템에 있어서,
프로세서;
상기 프로세서에 비디오 정보를 공급하도록 구성된 입력 디바이스; 및
상기 프로세서와 비디오 정보를 교환하도록 구성된 메모리 디바이스 를 포함하되,
상기 프로세서는 컨텐츠 적응적 비디오 인코딩을 위한 방법을 수행하도록 구성되고, 상기 방법은,
상기 입력 디바이스에 의해 공급된 연속적인 픽쳐들의 셋을 선택하는 단계;
상기 연속적인 픽쳐들의 셋의 제 1 GOP 분해를 형성하도록 상기 연속적인 픽쳐들의 셋을 픽쳐들의 하나 이상의 그룹들(GOP들)로 분해하는 단계로서, 상기 제 1 GOP 분해에 대한 명령들은 상기 메모리 디바이스로부터 검색되는, 상기 분해하는 단계;
상기 분해하는 단계를 반복함으로써, 상기 연속적인 픽쳐들의 셋의 복수의 별개의 GOP 분해들을 형성하는 단계로서, 상기 복수는 상기 제 1 GOP 분해를 포함하고, 상기 복수내 각각의 GOP 분해에 대한 명령들은 상기 메모리 디바이스로부터 검색되는, 상기 형성하는 단계;
해당 GOP 분해내 각각의 GOP에 대한 레이트-왜곡 (RD : rate-distortion) 코스트를 결정함으로써 상기 복수내 각각의 GOP 분해에 대하여, RD 코스트를 결정하는 단계; 및
상기 연속적인 픽쳐들의 셋내 상기 연속적인 픽쳐들 인코딩에 사용을 위해 상기 복수로부터 최소 RD 코스트를 갖는 GOP 분해를 선택하는 단계를 포함하는, 시스템. - 청구항 12에 있어서,
상기 프로세서는,
상기 메모리 디바이스로부터 예측 구조(prediction structure)들의 셋을 검색하는 단계;
상기 셋내 각각의 예측 구조에 대한 예측 구조 RD 코스트를 결정하는 단계; 및
상기 GOP에 대한 상기 RD 코스트로서 상기 예측 구조 RD 코스트들 중에서 최소를 선택하는 단계를 더 포함하는 상기 방법에 의해 각각의 GOP 분해내 각각의 GOP에 대한 RD 코스트를 결정하도록 더 구성된, 시스템. - 청구항 13에 있어서,
상기 프로세서는 각각의 예측 구조에 대한 각각의 GOP내 각각의 픽쳐의 RD 코스트들을 합산하는 단계를 더 포함하는 상기 방법에 의해 각각의 GOP에 대한 RD 코스트를 결정하도록 더 구성된, 시스템. - 청구항 14에 있어서,
상기 프로세서는,
RD 코스트(rate-distortion cost) = 왜곡(distortion) + L*비트레이트(bitrate) 공식을 이용하는 단계를 더 포함하는 상기 방법에 의해 상기 각각의 픽쳐의 RD 코스트를 결정하도록 더 구성되되, 상기 L은 픽쳐 유형 및 인코딩 파라미터들에 의존하는 파라미터인, 시스템. - 청구항 13에 있어서,
상기 프로세서는 현재 GOP 및 현재 예측 구조에 모션 추정 프로세스를 적용하는 단계를 더 포함하는 상기 방법에 의해 왜곡(distortion)을 결정하도록 더 구성된, 시스템. - 청구항 16에 있어서,
상기 프로세서는 절대 차이 값들의 합 (SAD : sum of absolute difference), 절대 변환 차이 값들의 합 (SATD : sum of absolute transformed difference) 또는 평균 절대 차이값 (MAD : mean absolute difference) 중 적어도 하나를 이용하여 왜곡을 결정하도록 더 구성된, 시스템. - 청구항 12에 있어서,
상기 프로세서는 레이트-왜곡 모델을 이용하여 왜곡으로부터 비트레이트를 추정하는 단계를 더 포함하는 상기 방법에 의해 상기 RD 코스트를 결정하도록 더 구성된, 시스템. - 청구항 12에 있어서,
상기 프로세서는 상기 방법을 원래의(original) 입력 픽쳐들, 또는 다운-샘플링된 비디오의 버전들에 적용하도록 구성된, 시스템. - 프로세싱 시스템에서 실행될 때, 상기 시스템이 컨텐츠 적응적 비디오 인코딩을 위한 방법을 수행하게 하는 명령들을 포함하는 비-일시적 컴퓨터-판독가능한 스토리지 매체에 있어서, 상기 방법은,
연속적인 픽쳐들의 셋을 선택하는 단계;
상기 연속적인 픽쳐들의 셋의 제 1 GOP(groups of picture) 분해를 형성하도록 상기 연속적인 픽쳐들의 셋을 픽쳐들의 하나 이상의 그룹들(GOP들)로 분해하는 단계;
상기 분해하는 단계를 반복함으로써, 상기 연속적인 픽쳐들의 셋의 복수의 별개의 GOP 분해들을 형성하는 단계로서, 상기 복수는 상기 제 1 GOP 분해를 포함하는, 상기 형성하는 단계;
상기 복수의 별개의 GOP 분해들에 각각의 GOP 분해에 대하여, 해당 GOP 분해내 각각의 GOP에 대한 GOP 레이트-왜곡(RD : rate-distortion) 코스트를 결정함으로써 GOP 분해 RD 코스트를 결정하는 단계; 및
상기 연속적인 픽쳐들의 셋내 상기 연속적인 픽쳐들 인코딩에 사용을 위해 상기 복수의 별개의 GOP 분해들로부터 최소 GOP 분해 RD 코스트를 갖는 GOP 분해를 선택하는 단계를 포함하는, 비-일시적 컴퓨터-판독가능한 스토리지 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/638,503 US20160261869A1 (en) | 2015-03-04 | 2015-03-04 | Content-adaptive b-picture pattern video encoding |
US14/638,503 | 2015-03-04 | ||
PCT/US2016/019828 WO2016140883A1 (en) | 2015-03-04 | 2016-02-26 | Content-adaptive b-picture pattern video encoding |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20170126934A true KR20170126934A (ko) | 2017-11-20 |
Family
ID=56848647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177026425A KR20170126934A (ko) | 2015-03-04 | 2016-02-26 | 컨텐츠-적응적 b-픽쳐 패턴 비디오 인코딩 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20160261869A1 (ko) |
EP (1) | EP3266203A4 (ko) |
JP (1) | JP2018511237A (ko) |
KR (1) | KR20170126934A (ko) |
CN (1) | CN107431807A (ko) |
WO (1) | WO2016140883A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220095693A (ko) * | 2020-12-30 | 2022-07-07 | 이화여자대학교 산학협력단 | 강화학습에 기반한 gop 선택 방법 및 분석장치 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11089329B1 (en) * | 2016-06-28 | 2021-08-10 | Amazon Technologies, Inc | Content adaptive encoding |
CN106791837B (zh) * | 2016-12-15 | 2019-11-26 | 北京数码视讯科技股份有限公司 | 视频编码的前驱分析方法和装置 |
CN112788341B (zh) * | 2019-11-07 | 2023-10-27 | 腾讯科技(深圳)有限公司 | 视频信息处理方法、多媒体信息处理方法、装置及电子设备 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100468726B1 (ko) * | 2002-04-18 | 2005-01-29 | 삼성전자주식회사 | 실시간 가변 비트율 제어를 수행하는 부호화 장치 및 방법 |
US20040146108A1 (en) * | 2003-01-23 | 2004-07-29 | Shih-Chang Hsia | MPEG-II video encoder chip design |
EP1575299A1 (en) * | 2004-03-12 | 2005-09-14 | Thomson Licensing S.A. | Motion-compensated spatio-temporal wavelet compression of video data with optimised permutation of the frames |
CN1585486A (zh) * | 2004-05-27 | 2005-02-23 | 复旦大学 | 基于时空自适应预测的无损视频压缩方法 |
US20090080519A1 (en) * | 2004-10-18 | 2009-03-26 | Electronics And Telecommunications Research Institute | Method for encoding/decoding video sequence based on mctf using adaptively-adjusted gop structure |
US8184702B2 (en) * | 2004-11-01 | 2012-05-22 | Electronics And Telecommunications Research Institute | Method for encoding/decoding a video sequence based on hierarchical B-picture using adaptively-adjusted GOP structure |
US9872045B2 (en) * | 2006-10-16 | 2018-01-16 | Conversant Wireless Licensing S.A R.L. | Method, electronic device, system, computer program product and circuit assembly for reducing error in video coding |
US20080232468A1 (en) * | 2007-03-21 | 2008-09-25 | Mediatek Inc. | Method and apparatus for adaptive gop structure determination |
WO2009141011A1 (en) | 2008-05-22 | 2009-11-26 | Telefonaktiebolaget L M Ericsson (Publ) | Content adaptive video encoder and coding method |
US8873627B2 (en) | 2010-12-07 | 2014-10-28 | Mediatek Inc | Method and apparatus of video coding using picture structure with low-delay hierarchical B group |
US9807401B2 (en) * | 2011-11-01 | 2017-10-31 | Qualcomm Incorporated | Transform unit partitioning for chroma components in video coding |
US9307235B2 (en) | 2012-12-03 | 2016-04-05 | Vixs Systems, Inc. | Video encoding system with adaptive hierarchical B-frames and method for use therewith |
KR20140110221A (ko) * | 2013-03-06 | 2014-09-17 | 삼성전자주식회사 | 비디오 인코더, 장면 전환 검출 방법 및 비디오 인코더의 제어 방법 |
-
2015
- 2015-03-04 US US14/638,503 patent/US20160261869A1/en active Granted
-
2016
- 2016-02-26 KR KR1020177026425A patent/KR20170126934A/ko unknown
- 2016-02-26 JP JP2017546602A patent/JP2018511237A/ja not_active Withdrawn
- 2016-02-26 WO PCT/US2016/019828 patent/WO2016140883A1/en active Application Filing
- 2016-02-26 EP EP16759306.0A patent/EP3266203A4/en not_active Withdrawn
- 2016-02-26 CN CN201680015090.9A patent/CN107431807A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220095693A (ko) * | 2020-12-30 | 2022-07-07 | 이화여자대학교 산학협력단 | 강화학습에 기반한 gop 선택 방법 및 분석장치 |
Also Published As
Publication number | Publication date |
---|---|
CN107431807A (zh) | 2017-12-01 |
JP2018511237A (ja) | 2018-04-19 |
EP3266203A4 (en) | 2018-10-31 |
WO2016140883A1 (en) | 2016-09-09 |
US20160261869A1 (en) | 2016-09-08 |
EP3266203A1 (en) | 2018-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8244048B2 (en) | Method and apparatus for image encoding and image decoding | |
US11902563B2 (en) | Encoding and decoding method and device, encoder side apparatus and decoder side apparatus | |
US10291925B2 (en) | Techniques for hardware video encoding | |
US10652570B2 (en) | Moving image encoding device, moving image encoding method, and recording medium for recording moving image encoding program | |
US11025913B2 (en) | Encoding video using palette prediction and intra-block copy | |
CN112087628A (zh) | 使用两级帧内搜索对视频进行编码 | |
KR20170126934A (ko) | 컨텐츠-적응적 b-픽쳐 패턴 비디오 인코딩 | |
JP6502739B2 (ja) | 画像符号化装置、画像処理装置、画像符号化方法 | |
US20150350670A1 (en) | Coding apparatus, computer system, coding method, and computer product | |
JP6652068B2 (ja) | 動画像符号化装置、動画像符号化方法および動画像符号化プログラム | |
JP4606311B2 (ja) | 画像符号化装置および画像符号化方法 | |
CN110662074B (zh) | 一种运动矢量确定方法和设备 | |
CN112565747A (zh) | 一种解码、编码方法、装置及其设备 | |
CN113747166B (zh) | 一种编解码方法、装置及其设备 | |
JP6985924B2 (ja) | 画像符号化装置、画像処理装置、画像符号化方法 | |
KR101841352B1 (ko) | 참조 프레임 선택 방법 및 그 장치 | |
CN107431821B (zh) | 高效低复杂度视频压缩 | |
JP2012120108A (ja) | 補間画像生成装置及びプログラム、並びに、動画像復号装置及びプログラム | |
KR101145399B1 (ko) | 멀티-패스 인코딩 장치 및 방법 | |
JP2021077957A (ja) | 動画像符号化装置及びその動作方法 | |
KR101525325B1 (ko) | 인트라 예측 모드 결정 방법 및 그 장치 | |
TWI856066B (zh) | 解碼器側運動向量精緻化之限制 | |
WO2024104503A1 (zh) | 图像编解码 | |
TW202041002A (zh) | 解碼器側運動向量精緻化之限制 | |
JP2008258769A (ja) | 画像符号化装置及びその制御方法、並びに、コンピュータプログラム |