KR101731335B1 - 스케일러블 비디오 코딩의 층 간 예측을 위한 리파이닝 필터 - Google Patents
스케일러블 비디오 코딩의 층 간 예측을 위한 리파이닝 필터 Download PDFInfo
- Publication number
- KR101731335B1 KR101731335B1 KR1020140000823A KR20140000823A KR101731335B1 KR 101731335 B1 KR101731335 B1 KR 101731335B1 KR 1020140000823 A KR1020140000823 A KR 1020140000823A KR 20140000823 A KR20140000823 A KR 20140000823A KR 101731335 B1 KR101731335 B1 KR 101731335B1
- Authority
- KR
- South Korea
- Prior art keywords
- filter
- video data
- fixed
- layer
- enhancement
- 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/117—Filters, e.g. for pre-processing or post-processing
-
- 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
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/33—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
-
- 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/59—Methods 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
-
- 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
-
- 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/17—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 an image region, e.g. an object
- H04N19/176—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 an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/182—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 pixel
-
- 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/184—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 bits, e.g. of the compressed video stream
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
스케일러블 비디오 코딩의 층 간 예측과 관련된 기술들이 개시된다. 이러한 기술들은 리파이닝 필터들(refining filters)을 채용할 수 있다.
Description
본 발명은 스케일러블 비디오 코딩 분야에 관한 것이다.
비디오 인코더는 보다 많은 정보가 소정의 대역폭 상에서 전송될 수 있도록 비디오 정보를 압축한다. 이 압축된 신호는 이어서 디코더를 구비한 수신기로 전송되고 이어서 이 디코더는 디스플레이하기 이전에 상기 신호를 디코딩 또는 압축해제한다.
HEVC(High Efficient Video Coding)은 최근의 비디오 압축 표준이며, 이는 ISO/IEC MPEG(Moving Picture Experts Group) 및 ITU-T VCEG(Video Coding Experts Group)에 의해서 형성된 JCT-VC(Joint Collaborative Team on Video Coding)에 의해서 개발되었다. 이전의 비디오 코딩 표준들과 유사하게, HEVC는 인트라/인터 예측, 변환, 양자화, 인-루프 필터링(in-loop filtering) 및 엔트로피 코딩과 같은 기본적은 기능 모듈들을 포함한다.
HEVC의 주요 부분의 표준이 완성에 이름에 따라서, HEVC의 SVC(Scalable Video Coding) 확장에 대한 연구가 시작되었다. SVC는 현대의 비디오 서비스 환경에서 네트워크들 및 디바이스들의 이종성(heterogeneity)을 다루는 해법이다. HEVC SVC 비트스트림은 그 자체가 디코딩될 수 있는 몇 개의 서브-비트스트림을 포함하며, 이러한 서브-비트스트림은 상이한 해상도, 프레임 레이트, 품질/SNR, 비트 깊이 등을 갖는 소스 비디오 콘텐츠를 나타낸다. 이러한 다양한 스케일러빌러티(scalability)를 달성하기 위해서, 다중 층 코딩 구조가 종종 사용된다. 일반적으로, 다중 층 코딩 구조는 단일 BL(base layer) 및 하나 이상의 EL(enhancement layer)을 갖는다. 이러한 구조는 EL에 속하는 영상 또는 영상의 일부분들이 하위 층 영상(예를 들어, BL 영상 또는 하위 레벨 EL 영상)으로부터 예측되거나 동일한 층 내의 이전에 코딩된 영상으로부터 예측되게 한다.
본 명세서에서 기술되는 대상은 첨부 도면을 참조하여서 예시적인 방식이면서 비한정적인 방식으로 해서 예시된다. 설명의 명료성 및 간략성을 위해서, 첨부 도면에서 예시된 요소들은 반드시 실제 스케일대로 도시된 것은 아니다. 몇몇 요소들의 크기는 명료성을 위해서 다른 요소들의 크기에 비해서 확대될 수 있다. 또한, 적합하다고 고려되면, 참조 부호들은 첨부 도면들에 걸쳐서 유사하거나 대응하는 요소들을 표시하도록 반복될 수 있다.
도 1은 단일 베이스 층(BL) 및 단일 인핸스먼트 층(EL)을 갖는 예시적인 인코더를 예시적으로 나타내고 있다.
도 2는 예시적인 스케일러블 비디오 코딩 시스템을 예시하고 있다.
도 3은 예시적인 SVC 인코딩 시스템을 예시적으로 도시하고 있다.
도 4는 예시적인 SVC 디코딩 시스템을 예시적으로 도시하고 있다.
도 5는 고정형 리파인닝 필터링(fixed refining filtering)의 실례를 예시적으로 나타내고 있다.
도 6은 예시적인 프로세스를 나타내는 흐름도이다.
도 7은 예시적인 시스템을 예시적으로 나타내고 있다.
도 8은 예시적인 비트 스트림을 예시적으로 나타내고 있다.
도 9는 예시적인 비디오 코딩 프로세스를 나타내는 흐름도이다.
도 10은 동작 시에 예시적인 비디오 코딩 프로세스를 예시하고 있다.
도 11은 예시적인 비디오 코딩 시스템을 예시하고 있다.
도 12는 예시적인 시스템을 예시적으로 나타내고 있다.
도 13은 모두가 본 개시의 적어도 몇몇 구현예들에 따라서 구성된 예시적인 디바이스를 나타내고 있다.
도 2는 예시적인 스케일러블 비디오 코딩 시스템을 예시하고 있다.
도 3은 예시적인 SVC 인코딩 시스템을 예시적으로 도시하고 있다.
도 4는 예시적인 SVC 디코딩 시스템을 예시적으로 도시하고 있다.
도 5는 고정형 리파인닝 필터링(fixed refining filtering)의 실례를 예시적으로 나타내고 있다.
도 6은 예시적인 프로세스를 나타내는 흐름도이다.
도 7은 예시적인 시스템을 예시적으로 나타내고 있다.
도 8은 예시적인 비트 스트림을 예시적으로 나타내고 있다.
도 9는 예시적인 비디오 코딩 프로세스를 나타내는 흐름도이다.
도 10은 동작 시에 예시적인 비디오 코딩 프로세스를 예시하고 있다.
도 11은 예시적인 비디오 코딩 시스템을 예시하고 있다.
도 12는 예시적인 시스템을 예시적으로 나타내고 있다.
도 13은 모두가 본 개시의 적어도 몇몇 구현예들에 따라서 구성된 예시적인 디바이스를 나타내고 있다.
이제, 하나 이상의 실시예들 또는 구현예들이 첨부 도면들을 참조하여서 기술된다. 특정 구성들 또는 배열들이 기술되지만, 이는 오직 예시적인 설명의 목적을 위해서 사용되었음을 이해되어야만 한다. 본 기술 분야의 당업자는 다른 구성들 및 배열들이 본 명세서의 사상 및 범위를 일탈하지 않는 한에서 사용될 수 있음을 인지할 것이다. 또한, 본 명세서에서 기술되는 기술들 및/또는 구성들은 본 명세서에서 기술되는 것들 이외의 다른 다양한 시스템 및 애플리케이션에서 채용될 수 있음은 본 기술 분야의 당업자에게 명백할 것이다.
다음의 설명 부분은 예를 들어 SoC(시스템 온 칩) 아키텍처와 같은 아키텍처로 실시될 수 있는 다양한 구현예들을 제안하지만, 본 명세서에서 기술되는 기술들 및/또는 구성들의 구현예들은 특정 아키텍처 및/또는 컴퓨팅 시스템들로 한정되는 것이 아니며 유사한 목적을 위한 임의의 아키텍처 및/또는 컴퓨팅 시스템에 의해서 구현될 수 있다. 예를 들어, 다중 집적 회로(IC) 칩들 및/또는 패키지들을 채용하는 다양한 아키텍처들 및/또는 셋탑 박스, 스마트 폰 등과 같은 다양한 컴퓨팅 디바이스들 및/또는 소비제 전자 장치들(CE)이 본 명세서에서 기술되는 기술들 및/또는 구성들을 구현할 수 있다. 또한, 다음의 설명 부분은 시스템 구성 요소들의 로직 구현예들, 타입 및 상호 관계들, 로직 파티션닝/통합 선택 사항 등과 같은 다수의 특정 세부 사항들을 제안하지만, 청구된 청구 대상은 이러한 특정 세부 사항들 없이도 실시될 수 있다. 다른 실례에서, 예를 들어, 제어 구조들 및 완전한 소프트웨어 인스트럭션 시퀀스들과 같은 몇몇 대상들은 본 명세서에서 기술되는 청구 대상을 모호하지 않도록 하기 위해서 세부적으로 도시되지 않을 수 있다.
본 명세서에서 기술되는 청구 대상은 하드웨어, 펌웨어, 소프트웨어 또는 이들의 임의의 조합으로 구현될 수 있다. 본 명세서에서 기술되는 청구 대상은 또한 하나 이상의 프로세서에 의해서 판독 및 실행될 수 있는, 머신 판독 가능한 매체 상에 저장된 인스트럭션들로서 구현될 수 있다. 머신 판독 가능한 매체는 머신(예를 들어, 컴퓨팅 디바이스)에 의해서 판독 가능한 형태로 해서 정보를 저장하기 위한 임의의 매체 및/또는 메카니즘을 포함할 수 있다. 예를 들어, 머신 판독 가능한 매체는 ROM(read only memory), RAM(random access memory), 자기 디스크 저장 매체, 광학 저장 매체, 플래시 메모리 디바이스 등을 포함할 수 있다.
본 명세서에서 "일 실시예", "실시예" 또는 "예시적인 실시예"가 나타나면, 이는 기술된 실시예는 특정 특징부, 구조 또는 특성을 포함할 수 있지만 모든 실시예가 반드시 이러한 특정 특징부, 구조 또는 특성을 반드시 포함하는 것을 말하지는 않는다. 또한, 이러한 구절들이 반드시 동일한 실시예를 말하는 것은 아니다. 또한, 특정 특징부, 구조 또는 특성이 일 실시예와 관련하여서 기술될 때에, 본 명세서에서 명시적으로 기술되는지의 여부와는 상관 없이 다른 실시예들과 관련하여서도 상기 특정 특징부, 구조 또는 특성을 실현하는 것은 본 기술 분야의 당업자의 지식 내에 해당될 수 있다.
스케일러블 비디오 코딩 시스템, 장치, 제품, 및 방법들이 이하에서 기술된다. 스케일러블 비디오 코딩 시스템에서, 다중 층형 코딩이 사용되어서 공간적 스케일러빌러티, 시간적 스케일러빌러티, 품질 스케일러빌러티, 비트 깊이 스케일러빌러트 등을 포함하는 몇몇 종류의 스케일러빌러티를 지원한다. 본 개시에 따라서, 다양한 리파이닝 필터 또는 필터들이 사용되어서 스케일러블 비디오 코딩 시스템에서 스케일러블 비디오 코딩 효율 및/또는 유연성을 증가시킨다. 다양한 실시예들에서, 리파이닝 필터 또는 필터들은 비디오 코덱, 비디오 인코더, 비디오 프로세서, 매체 프로세서 등 중 하나 이상에 의해서 사용되어서 스케일러블 비디오 코딩 시에 예를 들어 층 간 예측(inter layer prediction)을 인에이블한다.
시스템, 장치, 제품 및 방법들은 이하에서 스케일러블 비디오 코딩의 층 간 예측을 위한 리파이닝 필터 또는 필터들을 포함하는 비디오 코딩과 관련하여서 기술된다.
전술한 바와 같이, HEVC(고 효율 비디오 코딩)은 SVC(스케일러블 비디오 코딩) 확장을 포함하도록 예상된다. HEVC SVC 비트스트림은 상이한 공간적 해상도, 프레임 레이트, 품질, 비트 깊이 등에서 소스 비디오 콘텐츠를 나타내는 몇 개의 서브세트 비트 스트림들을 포함할 수 있다. 다음으로, 스케일러빌러티는 일반적으로 베이스 층(BL) 및 적어도 하나의 인핸스먼트 층(enhancement layer)(EL)을 포함하는 다중 층 코딩 구조를 사용하여서 달성될 수 있으며, 이로써 EL에 속하는 영상 또는 영상의 일부분들이 하위 층 영상(예를 들어, BL 영상 또는 하위 레벨 EL 영상)으로부터 예측되거나 동일한 층 내의 이전에 코딩된 영상으로부터 예측될 수 있다. 이러한 기술들은 현대의 비디오 서비스 환경에서 네트워크들 및 디바이스들의 이종성을 처리할 수 있다. 예를 들어, SVC 비트스트림은 그 자체가 디코딩될 수 있는 몇 개의 서브-비트스트림을 포함하며, 이러한 서브-비트스트림은 상이한 해상도, 프레임 레이트, 품질/SNR, 비트 깊이 등을 갖는 소스 비디오 콘텐츠를 나타낸다. 따라서, 다양한 네트워크 및 디바이스 상황에서, 상이한 비디오 품질들이 예를 들어 대역폭 또는 디바이스 제약 사항들에 기초하여서 달성될 수 있다.
이하에서 보다 상세하게 기술될 바와 같이, 고정형 리파이닝 필터(fixed refining filter)는 재구성된 레퍼런스 층 비디오 데이터(reconstructed reference layer video data)(예를 들어, 베이스 층 또는 하위 레벨의 인핸스먼트 층과 연관된 영상)에 적용되어서 리파이닝된 재구성된 비디오 데이터를 생성할 수 있다. 이 리파이닝된 재구성된 비디오 데이터에 기초하거나 적어도 부분적으로 기초하여서, 층 간 예측이 이 비디오 데이터와 연관된 인핸스먼트 층에 대해서 수행될 수 있다. 몇몇 실례들에서, 고정형 리파이닝 필터가 적용되고 층 간 예측이 인코더에서 수행되며 비트 스트림이 이 인핸스먼트 층에서의 층 간 예측에 적어도 부분적으로 기초하여서 인코딩될 수 있다. 다른 실례에서, 상기 고정형 리파이닝 필터가 적용되고 층 간 예측(inter layer predicition)이 디코더에서 수행되고 인핸스먼트 층 출력 비디오가 예를 들어 디스플레이 디바이스를 통해서 제공되기 위해서 상기 인핸스먼트 층에서의 층 간 예측에 부분적으로 기초하여서 생성될 수 있다.
본 명세서에서 사용된 바와 같이, 용어 "코더(coder)"는 인코더 및/또는 디코더를 지칭할 수 있다. 이와 유사하게, 본 명세서에서 사용되는 바와 같이, 용어 "코딩"은 인코더를 통해서 비디오 인코딩을 수행하고/하거나 디코더를 통해서 비디오 디코딩을 수행하는 것을 지칭할 수 있다. 예를 들어, 비디오 인코더 및 비디오 디코더는 모두 비디오 데이터를 코딩할 수 있는 코더들의 실례일 수 있다. 또한, 본 명세서에서 사용되는 바와 같이, 용어 "코덱"은 예를 들어, 인코더 및/또는 디코더를 구현할 수 있는 소프트웨어, 펌웨어 및/또는 하드웨어의 임의의 조합과 같은 임의의 프로세스, 프로그램 또는 오퍼레이션 세트를 말할 수 있다. 또한, 본 명세서에서 기술된 바와 같이, 용어 "비디오 데이터"는 예를 들어 비디오 프레임, 이미지 데이터, 인코딩된 비트 스트림 데이터 등과 같은 비디오 코딩과 연관된 임의의 타입의 데이터를 지칭할 수 있다.
실시예들은 국제 비디오 코덱 위원회에서 표준화될 잠재적 기술로서 고려되는 SVC(스케일러블 비디오 코딩)의 문제점을 다루고 있다. 기술한 바와 같이, SVC 비트스트림은 하나의 베이스 층 서브 비트스트림 및 적어도 하나의 인핸스먼트 층 서브 비트스트림을 포함할 수 있다. 일반적으로, 베이스 층 비트스트림은 독립적으로 디코딩되어서 베이스 층 비디오를 재구성한다. 그러나, 인핸스먼트 층 비트스트림은 독립적으로 디코딩될 수 없는데 그 이유는 인핸스먼트 층 프레임들이 보다 하위 층의 재구성된 비디오로부터 예측되거나(층 간 예측) 이전의 인핸스먼트 층 프레임들을 통해서 예측될 수 있기 때문이다. 본 명세서에서 더 기술될 바와 같이, 이러한 보다 하위 층은 베이스 층이거나 하위 레벨의 인핸스먼트 층일 수 있다.
따라서, 인핸스먼트 층 비트스트림은 상기 하위 층 재구성된 비디오와 함께 인코딩/디코딩되어서 인핸스먼트 층을 위한 출력 비디오를 구성한다. 층 간 예측의 이전 설계에서, 인핸스먼트 층 프레임은 프로세싱된 하위 층 재구성된 프레임으로부터 직접적으로 예측될 수 있다. 이러한 하위 층 재구성 프로세싱은 예를 들어 공간적 스케일러빌러티를 위한 프레임 업-샘플링, 비트 깊이 스케일러빌러티를 위한 톤 맵핑 또는 임의의 프로세싱이 없는 통과(passing-through)를 포함할 수 있다. 또한, 이전의 기술은 스케일러블 비디오 코딩의 층 간 예측을 위해 (오프셋을 갖는) 적응성 Wiener 필터를 사용할 수 있다. 이하에서 보다 상세하게 기술될 바와 같이, 본 명세서에서 기술되는 실시예들은 고정형 리파이닝 필터 또는 필터들을 사용하여서 층 간 예측의 효율을 개선시킨다. 이러한 기술들은 예를 들어 SVC 시스템의 압축 성능을 증가시키고 코덱 구현의 계산적 복잡성을 저감시킬 수 있다.
상술한 바와 같이, SVC는 현대의 비디오 서비스 환경에서 네트워크들 및 디바이스들의 이종성을 처리할 수 있는 해법이다. SVC 비트스트림은 그 자체로 디코딩될 수 있는 몇 개의 서브 비트스트림을 포함하며, 이러한 서브 비트스트림은 상이한 해상도, 프레임 레이트, 품질/SNR, 비트 깊이 등을 갖는 소스 비디오 콘텐츠를 나타낸다. 다양한 스케일러빌러티를 달성하기 위해서, 다중 층형 코딩 구조가 종종 사용된다. 일반적으로, SVC 시스템에서 하나의 베이스 층 및 몇 개의 인핸스먼트 층이 존재할 수 있다.
도 1은 본 개시의 적어도 몇몇 구현예들에 따라서 구성된, 단일 베이스 층 및 단일 인핸스먼트 층을 갖는 예시적인 SVC 인코더(102)의 예시적인 도면이다. 도시된 바와 같이, 인코더(102)는 단일 베이스 층인 층 0(104) 및 단일 인핸스먼트 층인 층 1(106)을 포함할 수 있다. 베이스 층 영상은 독립적으로 인코딩/디코딩되어서 베이스 층 비디오를 구성/재구성한다. 인핸스먼트 층 영상은 인코딩/디코딩될 때에, 보다 하위 층 영상들로부터 예측되거나 동일한 층 내의 이전에 인코딩/디코딩된 영상들로부터 예측될 수 있다. 따라서, N과 동일한 층 ID를 갖는 인핸스먼트 층을 코딩할 때에, N보다 작은 층 ID를 갖는 모든 층들이 가용되어야만 한다. 예를 들어, 인핸스먼트 층(106)을 코딩할 때에, 베이스 층(104)이 가용되어야 할 것이다.
도시된 바와 같이, 인핸스먼트 층(106)이 인핸스먼트 층 입력 프레임들(112)을 수신하고 베이스 층(104)은 베이스 층 입력 프레임들(114)을 수신할 수 있다. 또한, 도시된 바와 같이, 베이스 층 입력 프레임들(114)은 예를 들어 공간적으로 또는 비트 깊이 감소를 통해서 등과 같은 몇몇 방식으로 데시메이션(decimation)되도록 인핸스먼트 층 입력 프레임들(112)에 대해서 스케일러빌러티를 구비할 수 있다. 일반적으로, 인핸스먼트 층 입력 프레임들(112)과 베이스 층 입력 프레임들(114) 간의 스케일러빌러티는 공간적 스케일러빌러티, 품질/SNR 스케일러빌러티, 비트 깊이 스케일러빌러티 또는 다른 스케일러빌러티일 수 있다.
기술한 바와 같이, 베이스 층 입력 프레임들(114)은 인트라 예측(intra prediction), 인터 예측(inter prediction) 및/또는 인터레이 예측(interlay prediction)을 사용할 수 있는 HEVC/AVC 호환성 코딩 기술들을 통해서 베이스 층(104)에서 인코딩될 수 있다. 또한, 베이스 층(104)은 변환, 양자화, 인-루프 필터링, 엔트로피 코딩 및/또는 SNR 스케일러블 코딩 기술들을 사용하여서 출력 비트 스트림들을 생성할 수 있다. 마찬가지로, 인핸스먼트 층 입력 프레임들(112)은 인핸스먼트 층(106)을 통해서 프로세싱되어서 출력 비트 스트림을 생성한다. 베이스 층(104) 및 인핸스먼트 층(106)으로부터의 출력 비트 스트림들은 멀티플렉서(130)를 통해서 멀티플렉싱되어서 스케일러블 비트 스트림(140)이 생성될 수 있다.
도시된 바와 같이, 베이스 층(104)은 인핸스먼트 층 코딩(122)을 위해서 사용되는 베이스 층 정보를 인핸스먼트 층(106)으로 전달하고 이 전달된 것은 인핸스먼트 층 입력 프레임(112)를 코딩할 시에 사용된다. 이하에서 보다 상세하게 기술될 바와 같이, 인핸스먼트 층 코딩(122)을 위해서 사용되는 베이스 층 정보는 (고정형 리파이닝 필터링을 통해서) 하나 이상의 고정형 리파이닝 필터를 베이스 층(104)에 의해서 생성된 재구성된 비디오 데이터에 적용함으로써 리파이닝된 재구성된 비디오 데이터를 포함하거나 포함하도록 프로세싱될 수 있다.
도 2는 본 개시의 적어도 몇몇 실시예들에 따라서 구성된, 예시적인 SVC(스케일러블 비디오 코딩) 코딩 시스템(200)을 예시하고 있다. 일반적으로, 시스템(200)은 스케일러블 비디오 코딩을 수행하기 위한 컴퓨터 구현 방법을 제공할 수 있다. 다양한 실시예들에서, 시스템(200)은 예를 들어 High Efficiency Video Coding (HEVC) 표준 (ISO/IEC JTC/SC29/WG11 and ITU-T SG16 WP3, "High efficiency video coding (HEVC) text specification draft 8" (JCTVC-J1003_d7), July 2012 참조 요망) 및 이의 임의의 Scalable Video Coding (SVC) 확장과 같은 하나 이상의 표준 또는 사양들에 따라서 비디오 압축 및 압축해제를 수행하고/하거나 비디오 코덱을 구현할 수 있다. 시스템(200) 및/또는 다른 시스템, 스킴(scheme) 또는 프로세스가 HEVC 표준의 SVC 확장의 맥락에서 본 명세서에서 기술될지라도, 본 개시는 임의의 특정 비디오 인코딩 표준 또는 사양 또는 이들의 확장으로 한정되지는 않는다.
도시된 바와 같이, 시스템(200)은 층 0 또는 베이스 층(BL) 인코더(202), 층 1 또는 제 1 인핸스먼트 층(EL) 인코더(204) 및 층 2 또는 제 2 인핸스먼트 층(EL) 인코더(206)를 포함하는 다수의 비디오 인코더를 가질 수 있는 인코더 서브시스템(201)을 포함할 수 있다. 또한, 시스템(200)은 층 0 또는 베이스 층(BL) 디코더(208), 층 1 또는 제 1 인핸스먼트 층(EL) 디코더(210) 및 층 2 또는 제 2 인핸스먼트 층(EL) 디코더(212)를 포함하는 대응하는 다수의 비디오 디코더를 가질 수 있는 디코더 서브시스템(203)을 포함할 수 있다. 일반적으로, BL은 HEVC 호환 가능하게 코딩될 수 있다. 기술한 바와 같이, 예를 들어 N과 동일한 층 식별자(ID)을 갖는 EL을 코딩할 때에, SVC 코딩 스킴은 특정 인핸스먼트 층에 속하는 영상이 보다 하위 층 영상(예를 들어, BL 또는 하나 이상의 보다 하위 층 EL 내의 영상)으로부터 예측되거나 동일한 인핸스먼트 층 내의 이전의 코딩된 영상들로부터 예측될 수 있도록 층 간 예측 또는 인터 레이어 예측(inter layer predicition) 스킴에서 사용되기 위한 N 보다 작은 층 ID을 갖는 모든 코딩 층들을 제공한다.
본 개시에 따라서, 이하에서 보다 상세하게 기술될 바와 같이, EL 인코더들(204,206) 중 어느 하나 또는 양자 모두가 층 간 예측 모듈(232) 및/또는 층 간 예측 모듈(234) 중 하나 이상을 통해서 생성되는 리파이닝된 재구성된 비디오 데이터를 사용하여서 층 간 예측을 수행할 수 있다. 예를 들어, 몇몇 실시예들에서, 인코더(204)는 층 간 예측 모듈(232)으로부터 획득된 리파이닝된 재구성된 비디오 데이터(242)를 적어도 부분적으로 사용하여서 층 간 예측을 수행할 수 있다. 또한, 몇몇 실시예들에서, 인코더(206)는 층 간 예측 모듈(232)으로부터 획득된 리파이닝된 재구성된 비디오 데이터(242) 및/또는 층 간 예측 모듈(234)으로부터 획득된 리파이닝된 재구성된 비디오 데이터(244)를 적어도 부분적으로 사용하여서 층 간 예측을 수행할 수 있다. 본 명세서에서 더 상세하게 기술될 바와 같이, 층 간 예측 모듈(232)은 하위 층 프로세싱 모듈 및 리파이닝 필터링 모듈을 포함하고 재구성된 베이스 층 비디오 데이터(252)에 적어도 부분적으로 기초하여서 재구성된 비디오 데이터(242)를 생성할 수 있다. 또한, 층 간 예측 모듈(234)은 하위 층 프로세싱 모듈 및 리파이닝 필터링 모듈을 포함하고 재구성된 베이스 층 비디오 데이터(252) 및/또는 재구성된 베이스 층 비디오 데이터(254)에 적어도 부분적으로 기초하여서 재구성된 비디오 데이터(244)를 생성할 수 있다.
기술한 바와 같이, EL은 재구성된 레퍼런스 층 비디오 데이터를 사용하여서 층 간 예측을 수행할 수 있다. 또한, 기술한 바와 같이, 상기 재구성된 레퍼런스 층 비디오 데이터는 BL 또는 보다 하위의 EL 또는 이 양자로부터 EL에서 수신될 수 있다. 본 명세서에서 사용되는 바와 같이, 용어 "레퍼런스 층(reference layer)(RL)"은 재구성된 레퍼런스 층 비디오 데이터를 수신하여서 사용하여서 층 간 예측을 수행하는 EL에 상기 재구성된 레퍼런스 층 비디오 데이터를 제공할 수 있는 BL 또는 EL을 지칭한다. 일반적으로, 상기 재구성된 레퍼런스 층 비디오 데이터를 수신하여서 사용하여서 층 간 예측을 수행하는 EL은 "타겟 EL"로서 간주되거나 간단하게 EL로 고려될 수 있다.
임의의 하나 이상의 인코더들(202,204,206)을 사용하여서, 인코더 서브시스템(201)은 개별 비트 스트림을 엔트로피 인코더(224)에 제공할 수 있다. 이어서, 엔트로피 인코더(224)는 다수의 스케일러블 비디오 콘텐츠 층들을 포함하는 압축된 비트 스트림(226)을 디코더 서브시스템(203)의 엔트로피 디코더(228)에 제공할 수 있다. 본 개시에 따라서, 또한 이하에서 보다 상세하게 기술될 바와 같이, EL 디코더들(210,212) 중 하나 또는 양자가 각기 층 간 예측 모듈(262) 또는 층 간 예측 모듈(264)로부터 획득된 리파이닝된 재구성된 비디오 데이터(272) 또는 리파이닝된 재구성된 비디오 데이터(274) 또는 이 양자를 사용하여서 비디오 데이터를 디코딩할 시에 층 간 예측을 수행할 수 있다. 예를 들어, 몇몇 실시예들에서, 디코더(210)는 층 간 예측 모듈(262)로부터 수신된 리파이닝된 재구성된 비디오 데이터(272)를 사용하여서 층 간 예측을 수행할 수 있다. 또한, 몇몇 실시예들에서, 디코더(212)는 층 간 예측 모듈(262) 및/또는 층 간 예측 모듈(264) 중 하나 또는 양자로부터 각기 획득된 리파이닝된 재구성된 비디오 데이터(272) 및/또는 리파이닝된 재구성된 비디오 데이터(274)를 사용하여서 층 간 예측을 수행할 수 있다.
도 2가 3 개의 스케일러블 비디오 콘텐츠 층들 및 서브시스템(201) 내의 대응하는 3 개의 인코더 세트 (및 2 개의 층 간 예측 모듈) 및 서브시스템(203) 내의 대응하는 3 개의 디코더 세트 (및 2 개의 층 간 예측 모듈)을 사용하는 바와 같은 시스템(200)을 나타내고 있지만, 임의의 개수의 스케일러블 비디오 코딩 층들, 이에 대응하는 인코더들, 디코더들 및 층 간 예측 모듈들이 본 개시에 따라서 사용될 수 있다. 또한, 본 개시는 도 2에 도시된 특정 구성 요소들 및/또는 시스템(200)의 다양한 구성 요소들이 구성되는 방식에 한정되는 것이 아니다.
또한, 인코더 서브시스템(201)은 예를 들어 비디오 콘텐츠 서버 시스템을 포함하는 콘텐츠 제공자 시스템에 의해서 제공되거나/되며 이와 연관될 수 있으며, 비트 스트림(226)은 도 2에서는 도시되지 않은 송수신기들, 안테나들, 네트워크 시스템들 등과 같은 다양한 통신 구성 요소 및/또는 시스템들에 의해서 디코더 서브시스템(203)에 전달 또는 전송될 수 있음이 인식될 수 있다. 또한, 디코더 서브시스템(203)은 도 2에서는 도시되지 않은 송수신기들, 안테나들, 네트워크 시스템들 등과 같은 다양한 통신 구성 요소 및/또는 시스템들을 통해서 비트 스트림(226)을 수신하는 컴퓨팅 디바이스(예를 들어, 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 이동 전화 등)와 같은 클라이언트 시스템과 연관될 수 있음이 인식될 수 있다. 따라서, 다양한 실시예들에서, 인코더 서브시스템(201) 및 디코더 서브시스템(203)은 함께 구현되거나 서로 독립적으로 구현될 수 있다. 또한, 본 명세서에서 기술되는 시스템들, 장치 및 방법들이 일 영상에 대한 층 간 예측을 수행하는 것과 관련되어 있을지라도, 본 개시는 이에 한정되지 않고 층 간 예측은 예를 들어 비디오 데이터의 시퀀스, 층, 영상, 슬라이스 또는 블록을 포함하는 비디오 데이터 영상의 임의의 부분에 대해서 수행될 수 있다.
도 3 및 도 4는 본 개시의 적어도 몇몇 실시예들에 따라서 구성된, SVC 코덱 또는 코딩 시스템의 실례의 예시적인 도면이다. 예를 들어, 도 3은 예시적인 SVC 인코딩 시스템(300)을 예시하고 있으며, 도 4는 예시적인 SVC 디코딩 시스템(400)을 예시하고 있다.
도 3에 도시된 바와 같이, 시스템(300)은 일 실례에서 시스템(200)의 인코더(202) 및 인코더(204)에 각기 대응할 수 있는 베이스 층 인코더(302) 및 인핸스먼트 층 인코더(304)를 포함할 수 있다. 시스템(300)이 예를 들어 베이스 층 인코더 및 인핸스먼트 층 인코더와 같은 2 개의 SVC 코딩 층들에 대응하는 오직 2 개의 인코더들(302,304)을 포함하지만, 임의의 개수의 SVC 코딩 층들 및 이에 대응하는 인코더들이 도 3에 도시된 것들 이외에도 본 개시에 따라서 사용될 수 있다. 예를 들어, 추가 인핸스먼트 층들에 대응하는 추가 인코더들이 시스템(300) 내에 포함되어서 인코더(304)에 대해서 이하에서 기술될 바와 같은 방식과 유사한 방식으로 인코더(302)와 상호 작용할 수 있다. 예를 들어, 시스템(300)에서는 설명의 명료성을 위해서 베이스 층 인코더(302) 및 인핸스먼트 층 인코더(304)에 대해서 기술되었지만, 시스템(300)은 본 명세서에서 기술되는 바와 같은 레퍼런스 층 및 인핸스먼트 층과 연관된 임의의 레퍼런스 층 인코더 및 인핸스먼트 층 인코더를 포함할 수 있다. 일반적으로, 레퍼런스 층 인코더는 (도시된 바와 같은) 베이스 층 또는 인핸스먼트 층 인코더(304)와 연관된 인핸스먼트 층보다 낮은 레벨에 있는 임의의 인핸스먼트 층에 대한 인코더일 수 있다.
도시된 바와 같이, 베이스 층 인코더(302)는 베이스 층 입력 비디오(308)를 수신하고 인핸스먼트 층 인코더(304)는 인핸스먼트 층 입력 비디오(306)를 수신할 수 있다. 일반적으로, 베이스 층 입력 비디오(308)는 비디오 데이터(350)의 베이스 층과 연관되고, 인핸스먼트 층 입력 비디오(306)는 (예를 들어, 타겟 인핸스먼트 층과 같은) 비디오 데이터(350)의 베이스 층과 연관될 수 있다. 다른 실례에서, 비디오 데이터(350)는 기술한 바와 같은 레퍼런스 층(예를 들어, 하위 레벨 인핸스먼트 층) 및 인핸스먼트 층(예를 들어, 타겟 인핸스먼트 층)을 포함할 수 있다. 또한, 기술한 바와 같이, 베이스 층 입력 비디오(308)는 베이스 층이 공간적으로 또는 품질적으로 또는 비트 깊이 저감 방식으로 등과 같은 몇몇 방식으로 데시메이션될 수 있도록 인핸스먼트 층 입력 비디오(306)에 대해서 스케일러빌러티를 가질 수 있다.
도시된 바와 같이, 시스템(300)은 리파이닝 필터링 모듈(362) 및 선택 사양적인 하위 층 프로세싱 모듈(364)을 갖는 층 간 예측 모듈(360)을 포함한다. 일반적으로, 층 간 예측 모듈(360)은 (도시된 바와 같은) 시스템(300)의 별도의 모듈로서, 인핸스먼트 층 인코더(304)의 일부로서 또는 베이스 층 인코더(302)의 일부로서 등으로서 구현될 수 있다. 본 명세서에서 더 기술될 바와 같이, 하위 층 프로세싱 모듈(364)은 하위 층 프로세싱을 재구성된 베이스 층 비디오 데이터(315)에 적용할 수 있다. 다양한 실례들에서, 이 하위 층 프로세싱은 공간적 스케일러빌러티를 위한 업-샘플링, 비트 깊이 스케일러빌러티를 위한 톤 맵핑 등을 포함할 수 있다. 기술한 바와 같이, 몇몇 실례들에서, 어떠한 하위 층 프로세싱도 사용되지 않을 수 있다. 리파이닝 필터링 모듈(362)은 고정형 리파이닝 필터를 재구성된 베이스 층 비디오(315)에 (상기 하위 층 프로세싱과 함께 또는 하위 층 프로세싱 없이) 적용하여서 리파이닝된 재구성된 비디오 데이터(365)를 생성한다. 인핸스먼트 층 인코더(304)는 리파이닝된 재구성된 비디오 데이터(365)에 적어도 부분적으로 기초하여서 층 간 예측을 수행하고 본 명세서에서 더욱 기술될 바와 같이 시스템(300)은 인핸스먼트 층 인코더(304)에서 상기 층 간 예측에 적어도 부분적으로 기초하여서 비트 스트림(342)을 인코딩할 수 있다.
SVC 코딩을 수행하기 위해서 시스템(300)을 채용할 때에, 적어도 몇몇 블록의 인핸스먼트 층 입력 비디오(306)는 베이스 층 인코더(302)에 의해서 프로세싱된 바와 같은 베이스 층 입력 비디오(308)의 하나 이상의 영상들로부터 또는 인핸스먼트 층 인코더(304)에 의해서 이전에 인코딩된 동일한 인핸스먼트 층 내의 다른 비디오 데이터(예를 들어, 영상들)로부터 인핸스먼트 층 인코더(304)에 의해서 예측될 수 있다. 이하에서 보다 상세하게 기술될 바와 같이, 시스템(300)을 사용하여서 층 간 예측 동작들을 수행할 때에, 인핸스먼트 층 입력 프레임(306)의 하나 이상의 영상들은 층 간 예측 모듈(360) 및 특히 리파이닝 필터링 모듈(362)에 의해서 제공된 것과 같은 리파이닝된 재구성된 비디오 데이터(365)의 영상들을 적어도 부분적으로 사용하여서 층 간 예측될 수 있다. 영상 레벨에서 기술될지라도, 리파이닝된 재구성된 비디오 데이터를 사용하여서 본 명세서에서 기술된 바와 같은 인핸스먼트 층에 대한 층 간 예측을 수행하는 것은 예를 들어 시퀀스 레벨, 층 레벨, 영상 레벨, 슬라이스 레벨 또는 블록 레벨에서도 적용될 수 있다.
일반적으로, 재구성된 베이스 층 비디오 데이터(315)는 변환 및 양자화 모듈(312), 역 양자화 및 역 변환 모듈(314), 인-루프 필터링 모듈(316), 인터 예측 모듈(320), 인트라 예측 모듈(322) 및/또는 모드 결정 모듈(326) 등을 포함할 수 있는 코딩 루프를 사용하여서 베이스 층 입력 비디오(308) 프로세싱에 기초하여서 결정될 수 있다. 도 3에 도시된 바와 같이, 재구성된 베이스 층 비디오 데이터(315)는 인-루프 필터링 모듈(316)로부터 획득될 수 있다. 모듈들(312, 314, 316, 320, 324, 326)의 기능은 본 기술 분야에서 잘 알려져 있으며 따라서 본 명세서에서 자세하게 기술되지는 않을 것이다.
도시된 바와 같이, 인핸스먼트 층 인코더(304)에서, 리파이닝된 재구성된 비디오 데이터(365)는 예를 들어 모드 결정 모듈(339)에서 수신되며, 변환 및 양자화 모듈(328), 역 양자화 및 역 변환 모듈(330), 인-루프 필터링 모듈(332), 인터 예측 모듈(335), 인트라 예측 모듈(338) 및/또는 모드 결정 모듈(339) 등을 포함할 수 있는 코딩 루프를 사용하여서 인핸스먼트 층 입력 프레임(306)의 영상들, 블록들 등에 대해서 층 간 예측을 수행하는데 있어서 상기 리파이닝된 재구성된 비디오 데이터(365)가 적어도 부분적으로 사용될 수 있다. 모듈들(328, 330, 332, 338, 335)의 기능은 본 기술 분야에서 잘 알려져 있으며 따라서 본 명세서에서 자세하게 기술되지는 않을 것이다. 도시된 바와 같이, 상기 모드 결정 모듈(339)은 기술된 바와 같은 리파이닝된 재구성된 비디오 데이터(365)와 인터 예측 모듈(335) 또는 인트라 예측 모듈(338)의 출력 간에서 모드 결정을 구현하도록 구성될 수 있다. 도시된 바와 같이, 본 개시에 따라서, 인핸스먼트 층 인코더(304)는 리파이닝된 재구성된 비디오 데이터(365)를 사용하여서 인핸스먼트 층 입력 비디오(306)의 영상들, 블록들 등에 대해서 층 간 예측을 수행할 수 있다. 예를 들어, 인핸스먼트 층 인코더(304)는 인핸스먼트 층 입력 비디오(306)를 사용하여서 인핸스먼트 층 입력 비디오(306)의 영상들, 블록들 등에 대해서 층 간 예측을 수행할 수 있다. 잘 알고 있는 바와 같이, 층 간 보상(inter layer compensation)은 임의의 개수의 인핸스먼트 층 입력 비디오(306) 영상, 블록 등 또는 임의의 개수의 인핸스먼트 층 입력 비디오(306) 프레임 또는 다른 입력 데이터에 대해서 수행될 수 있다.
다양한 실시예들에서, 베이스 층 인코더(302) 및 인핸스먼트 층 인코더(304) 중 어느 하나 또는 양자는 베이스 층 입력 비디오(308)의 적어도 일부의 코딩된 나머지 및 인핸스먼트 층 입력 비디오(306)의 적어도 일부의 코딩된 나머지에 각기 대응하는 압축된 계수(compressed coefficient)들을 각기 엔트로피 인코더 모듈(340)에 제공할 수 있다. 이 엔트로피 인코더 모듈(340)은 상기 나머지의 무손실 압축을 (예를 들어, CABAC(context-adaptive binary arithmetic coding)을 통해서) 수행하고 시스템(300)으로부터의 출력으로서 상기 코딩된 나머지들을 포함하는 멀피플렉싱된 SVC 비트 스트림(342)을 제공할 수 있다. 또한, 이하에서 보다 상세하게 기술될 바와 같이, 비트 스트림(342)은 기술된 바와 같은 고정형 리파이닝 필터링을 적용할지의 여부를 특정하는 플래그와 같은 표시자를 포함할 수 있다. 이하에서 보다 상세하게 기술될 바와 같이, 이 표시자의 값에 따라서, 디코딩 시스템은 기술한 바와 같은 층 간 예측 모듈로부터 수신된 리파이닝된 재구성된 비디오 데이터를 사용하여서 층 간 예측을 수행할 수도 있고 하지 않을 수도 있다. 또한, 이하에서 보다 상세하게 기술될 바와 같이, 비트 스트림(342)은 다수의 고정형 리파이닝 필터들 중 어느 고정형 리파이닝 필터를 사용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 포함할 수 있다. 이러한 고정형 리파이닝 필터 표시자의 값에 따라서, 디코딩 시스템은 다수의 고정형 리파이닝 필터 중 하나의 고정형 리파이닝 필터를 사용할 수 있다.
이제 도 4를 참조하면, 시스템(400)은 예를 들어 각기 시스템(200)의 디코더(208) 및 디코더(210)에 대응할 수 있는 베이스 층 디코더(402) 및 타겟 인핸스먼트 층 디코더(404)를 포함할 수 있다. 시스템(400)이 2 개의 SVC 코딩 층들에 각기 대응하는 오직 2 개의 디코더들(402,404)만을 포함하고 있지만, 임의의 개수의 SVC 코딩 층들 및 이에 대응하는 디코더들이 도 4에 도시된 것들 이외에 본 개시에 따라서 사용될 수 있다. 예를 들어, 추가 인핸스먼트 층에 대응하는 추가 디코더가 시스템(400) 내에 포함될 수 있으며 인핸스먼트 층 디코더(404)에 대해서 이하에서 기술되는 바와 유사한 방식으로 베이스 층 디코더(402)과 상호 작용할 수 있다. 예를 들어, 시스템(400)에서는 설명의 명료성을 위해서 베이스 층 디코더(402) 및 인핸스먼트 층 디코더(404)에 대해서 기술되었지만, 시스템(400)은 본 명세서에서 기술되는 바와 같은 레퍼런스 층 및 인핸스먼트 층과 연관된 임의의 레퍼런스 층 디코더 및 인핸스먼트 층 디코더를 포함할 수 있다. 일반적으로, 레퍼런스 층 디코더는 (도시된 바와 같은) 베이스 층에 대한 디코더 또는 인핸스먼트 층 디코더(404)와 연관된 인핸스먼트 층보다 낮은 레벨에 있는 임의의 인핸스먼트 층에 대한 디코더일 수 있다.
SVC 코딩을 수행하기 위해서 시스템(400)을 사용할 때에, 인핸스먼트 층 출력 비디오(406)(예를 들어, 인핸스먼트 층 출력 프레임) 내의 다양한 영상 또는 블록 등이 베이스 층 디코더(402)에 의해서 프로세싱된 베이스 층 출력 비디오 데이터(408)(예를 들어, 베이스 층 출력 프레임)의 영상 또는 블록 등으로부터 또는 인핸스먼트 층 디코더(404)에 의해서 이전에 디코딩된 동일한 인핸스먼트 층 내의 다른 영상 또는 블록 등으로부터 인핸스먼트 층 디코더(404)에 의해서 층 간 예측될 수 있다. 이하에서 보다 상세하게 기술되는 바와 같이, 인핸스먼트 층 출력 프레임(406) 내의 블록들의 상기한 바와 같은 층 간 예측은 층 간 예측 모듈(460)에 의해서 제공되는 리파이닝된 재구성된 비디오 데이터(465)를 사용할 수 있다. 이 층 간 예측 모듈(inter layer predicition)(460)은 리파이닝 필터링 모듈(462) 및 선택 사양적인 하위 층 프로세싱 모듈(464)을 포함할 수 있다. 일반적으로, 층 간 예측 모듈(460)은 (도시된 바와 같은) 시스템(400)의 별도의 모듈로서, 인핸스먼트 층 디코더(404)의 일부로서 또는 베이스 층 디코더(402)의 일부로서 등으로서 구현될 수 있다. 상기 하위 층 프로세싱 모듈(464)은 하위 층 프로세싱을 재구성된 베이스 층 비디오 데이터(415)에 적용할 수 있다. 다양한 실례들에서, 이 하위 층 프로세싱은 공간적 스케일러빌러티를 위한 업-샘플링, 비트 깊이 스케일러빌러티를 위한 톤 맵핑 등을 포함할 수 있다. 기술한 바와 같이, 몇몇 실례들에서, 어떠한 하위 층 프로세싱도 사용되지 않을 수 있다. 리파이닝 필터링 모듈(462)은 고정형 리파이닝 필터를 재구성된 베이스 층 비디오 데이터(415)에 (상기 하위 층 프로세싱과 함께 또는 하위 층 프로세싱 없이) 적용하여서 리파이닝된 재구성된 비디오 데이터(465)를 생성한다.
도시된 바와 같이, 시스템(400)은 인코딩된 비트 스트림(401)을 수신 및 디코딩하여서 베이스 층 비디오 데이터(442)를 베이스 층 디코더(402)에 제공하고 인핸스먼트 층 비디오 데이터(444)를 인핸스먼트 층 디코더(404)에 제공하는 엔트로피 디코더(440)를 포함할 수 있다. 또한, 도시된 바와 같이, 베이스 층 디코더(402)는 역 양자화 및 역 변환 모듈(414), 인-루프 필터링 모듈(418), 인터 예측 모듈(416), 인트라 예측 모듈(412) 및/또는 모드 결정 모듈(427) 등을 포함할 수 있다. 도 4에 도시된 바와 같이, 재구성된 베이스 층 비디오 데이터(415)는 인-루프 필터링 모듈(418)로부터 획득될 수 있다. 상기 모듈들(412, 414, 416, 418, 426)의 기능은 본 기술 분야에서 잘 알려져 있으며 따라서 본 명세서에서 자세하게 기술되지는 않을 것이다.
도시된 바와 같이, 리파이닝된 재구성된 비디오 데이터(465)는 인핸스먼트 층 디코더(404)의 신택스 명세 모듈(syntax specification module)(428)에 제공될 수 있다. 또한, 인핸스먼트 층 디코더(404)는 역 양자화 및 역 변환 모듈(422), 인-루프 필터링 모듈(426), 인터 예측 모듈(424), 인트라 예측 모듈(420)을 포함할 수 있다. 층 간 예측을 수행하도록 동작될 때에, 이 인핸스먼트 층 디코더(404)는 리파이닝된 재구성된 비디오 데이터(465)를 사용하여서 인핸스먼트 층 출력 비디오(406)(예를 들어, 인핸스먼트 층 출력 프레임)의 다양한 블록들에 대한 픽셀 데이터를 재구성한다. 또한, 인핸스먼트 층 디코더(404)는 비트 스트림(401) 내에 제공되는 표시자의 값에 기초하여서 그렇게 할 수 있으며, 여기서 비트 스트림(401)은 도 2의 비트 스트림(226), 도 3의 비트 스트림(342) 등에 대응할 수 있다. 예를 들어, 비트 스트림(401)은 기술한 바와 같은 고정형 리파이닝 필터링을 적용할지의 여부를 특정하는 플래그와 같은 표시자를 포함할 수 있다. 이하에서 보다 상세하게 기술되는 바와 같이, 이 표시자의 값에 따라서, 디코딩 시스템은 기술한 바와 같은 층 간 예측 모듈로부터 수신된 리파이닝된 재구성된 비디오 데이터를 사용하여서 층 간 예측을 수행할 수도 있고 하지 않을 수도 있다. 또한, 비트 스트림(401)은 다수의 고정형 리파이닝 필터들 중 어느 고정형 리파이닝 필터를 사용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 포함할 수 있다. 이러한 고정형 리파이닝 필터 표시자의 값에 따라서, 디코딩 시스템(400)은 다수의 고정형 리파이닝 필터 중 하나의 고정형 리파이닝 필터를 (예를 들어, 층 간 예측 모듈(460) 및/또는 리파이닝 필터링 모듈(462)을 통해서) 사용할 수 있다. 몇몇 실례들에서, 이하에서 더 상세하게 기술되는 바와 같이, 상기 고정형 리파이닝 필터들은 계수들 및 오프셋들을 적용할 수 있다. 적용된 계수들 및/또는 오프셋들은 어느 고정형 리파이닝 필터를 사용할지를 선정하는 바가 적용될 계수들 및/또는 오프셋들을 선택할 수 있도록 고정형 리파이닝 필터에 특정될 수 있다.
기술한 바와 같이, (예를 들어, 리파이닝 필터링 모듈을 통한) 층 간 예측 모듈은 고정형 리파이닝 필터를 재구성된 레퍼런스 층 비디오 데이터에 적용하여서 리파이닝된 재구성된 비디오 데이터를 생성할 수 있다. 이 리파이닝된(refined) 재구성된 비디오 데이터는 (예를 들어, 인핸스먼트 층 인코더 또는 디코더를 통해서) 이 비디오 데이터와 연관된 인핸스먼트 층에 대한 층 간 예측을 수행하는데 사용될 수 있다. 또한, 기술한 바와 같이, 베이스 층 비디오 데이터와 인핸스먼트 층 비디오 데이터는 공간적 스케일러빌러티, 품질/SNR 스케일러빌러티, 비트 깊이 스케일러빌러티 또는 다른 스케일러빌러티와 같은 상대적 스케일러빌러티만큼 상이할 수 있다. 또한, 하위 층 프로세싱이 고정형 리파이닝 필터링을 적용하기 이전에 상기 재구성된 레퍼런스 층 비디오 데이터에 적용될 수 있다. 일반적으로, 하위 층 프로세싱의 거동은 스케일러빌러티에 의존할 수 있다. 예를 들어, 업-샘플링이 공간적 스케일러빌러티에 적용될 수 있으며, 톤 맵핑은 비트 깊이 스케일러빌러티에 대해서 적용될 수 있으며, 또는 몇몇 실시예에서, 재구성된 레퍼런스 층 비디오 데이터는 임의의 프로세싱이 없이 통과될 수 있다. 일반적으로, 적용된 고정형 리파이닝 필터는 프로세싱된 하위 층 재구성된 영상에 적용되어서 층 간 예측의 정확도를 개선할 수 있다. EL 코딩의 압축 효율은 이러한 개선된 층 간 예측을 사용함으로써 증가할 수 있다.
몇몇 실례들에서, 상기 고정형 리파이닝 필터를 적용하는 것은 단일의 고정형 리파이닝 필터를 사용하는 것을 포함할 수 있다. 다른 실례들에서, 상기 고정형 리파이닝 필터를 적용하는 것은 다수의 고정형 리파이닝 필터를 사용하는 것을 포함할 수 있다. 그리고, 몇몇 실례들에서, 고정형 필터 세트가 사용되어서 층 간 예측을 리파이닝할 수 있다. 도 5는 본 개시의 적어도 몇몇 실시예들에 따라서 구성된 예시적인 고정형 리파이닝 필터의 예시적인 도면이다. 또한, 도 5는 본 개시의 적어도 몇몇 실시예들에 따라서 구성된 리파이닝 필터링 절차를 예시하고 있다. 도시된 바와 같이, 재구성된 레퍼런스 층 비디오 데이터(572)는 리파이닝 필터링 모듈(570)에서 수신될 수 있다. 일반적으로, 리파이닝 필터링 모듈(570)은 리파이닝 필터링 모듈(362) 또는 리파이닝 필터링 모듈(462) 등에 대응할 수 있으며, 일반적으로는, 리파이닝 필터링 모듈(570)은 본 명세서에서 기술된 바와 같은 인코더 또는 디코더를 통해서 구현될 수 있다. 기술한 바와 같이, 재구성된 레퍼런스 층 비디오 데이터(572)는 하위 층 프로세싱 모듈(예를 들어, 모듈(364), 모듈(464) 등)에 의해서 사전 프로세싱되거나 어떠한 사전 프로세싱도 수행되지 않을 수 있다. 사전 프로세싱이 수행되는 실례들에서, 재구성된 레퍼런스 층 비디오 데이터(572)는 프로세싱된 하위 층 재구성된 사전 필터링 영상 또는 블록 등으로서 간주될 수 있다. 도시된 바와 같이, 재구성된 레퍼런스 층 비디오 데이터(572)는 하나 이상의 고정형 필터(574)에 의해서 필터링되어서 하나 이상의 리파이닝된 영상들(578)을 생성할 수 있다.
기술한 바와 같이, 몇몇 실례들에서, 단일 고정형 필터(574)가 사용되어서 단일 리파이닝된 영상(578)을 생성할 수 있다. 이러한 실례들에서, 최상 리파이닝 결정 모듈(576)은 필요 없으며 상기 단일 리파이닝된 영상(578)이 리파이닝된 재구성된 비디오 데이터(580)으로서 전달될 수 있다.
다수의 고정형 필터(574)가 사용된 몇몇 실례들에서, 오직 단일 리파이닝된 영상이 생성될 수 있다. 예를 들어, 다수의 고정형 필터들 중 하나의 고정형 필터가 선택되고 이 선택된 필터만이 리파이닝된 영상을 생성할 수 있으며, 이 생성된 영상은 (리파이닝된 재구성된 비디오 데이터(365,465, 등)에 대응할 수 있는) 리파이닝된 재구성된 비디오 데이터(580)로서 전달될 수 있다. 예를 들어, 이하에서 더 기술될 것이지만, 수신된 비트 스트림이 디코더를 통해서 사용될 때에, 이 스트림은 다수의 고정형 리파이닝 필터들 중 사용할 하나의 고정형 리파이닝 필터를 표시하는 고정형 리파이닝 필터 표시자를 포함할 수 있다. 다른 실시예들에서(예를 들어, 인코더 또는 디코더에서), 최상 리파이닝 결정 모듈(576)이 사용되어서 다수의 고정형 필터들 중에서 사용할 단일 고정형 필터를 결정할 수도 있다. 예를 들어, 최상 리파이닝 결정 모듈(576)이 재구성된 레퍼런스 층 비디오 데이터(572)를 수신 및 평가하여서 사용할 단일 고정형 필터를 결정할 수 있다. 이러한 재구성된 레퍼런스 층 비디오 데이터(572)에 대한 평가는 재구성된 레퍼런스 층 비디오 데이터(572)의 국부 에지 정보를 평가하는 단계, 재구성된 레퍼런스 층 비디오 데이터(572)의 구배 강도를 평가하는 단계 또는 재구성된 레퍼런스 층 비디오 데이터(572)의 국부 편차를 평가하는 단계 등을 포함하는 국부적 적응성 방법에 적어도 부분적으로 기초하여서 이루어진다. 일반적으로, 상술된 에지 정보, 구배 강도, 국부적 편차 또는 다른 측정치는 재구성된 레퍼런스 층 비디오 데이터(572)의 평가 시에 개별적으로 사용될 수 있다. 이러한 기술들의 실례들이 이하에서 더 기술될 것이다.
몇몇 실례들에서, 다수의 고정형 필터들(574) 각각은 복수의 리파이닝된 영상들(578) 중 해당 리파이닝된 영상을 생성할 수 있으며, 상기 최상 리파이닝 결정 모듈(576)이 이러한 복수의 리파이닝된 영상들(578)을 평가하여서 최상의 리파이닝된 영상을 결정하며 이는 결정된 영상은 재구성된 리파이닝된 비디오 데이터(580)으로서 전송될 수 있다. 이러한 결정 동작은 예를 들어, 복수의 리파이닝된 영상들(578)을 재구성된 레퍼런스 층 비디오 데이터(572)의 영상과 비교하는 바와 같은 복수의 리파이닝된 영상들(578)에 대한 임의의 적합한 비교 결과에 기초할 수 있다. 본 명세서에서 기술된 리파이닝 필터링 모듈(570) 및 다른 모듈들이 본 명세서에서 기술된 바와 같이 영상 레벨에 대해서 기술되었지만, 이러한 모듈들은 영상, 슬라이스, 블록 레벨 등을 포함하는 임의의 이미지 레벨에서 구현될 수 있다.
일반적으로, 고정형 필터들(574)은 기술한 바와 같은 재구성된 레퍼런스 층 비디오 데이터로부터 재구성된 리파이닝된 비디오 데이터를 생성하는 임의의 적합한 고정형 필터를 포함할 수 있다. 예를 들어, P(x,y)가 위치(x,y)에서 (예를 들어, 재구성된 레퍼런스 층 비디오 데이터(572)와 연관된) 사전 필터링 영상의 픽셀 값을 말한다고 하면, 리파이닝 필터링(예를 들어, 다수의 고정형 필터들(574) 중 하나의 고정형 필터)은 다음의 등식(1)에 나타난 바와 같은 P(x,y) 상에서 수행될 수 있다:
여기서, Ci 및 Oi는 i 번째의 고정형 필터의 계수 값 및 오프셋 값을 각기 나타내며, Mo 및 Mi 및 No 및 Ni는 필터 윈도우를 규정할 수 있는 파라미터들을 말하며, P'는 리파이닝된 영상(예를 들어, 리파이닝된 재구성된 비디오 데이터)를 말한다. 일반적으로, Mo 및 Mi 및 No 및 Ni을 상이하게 설정하면, 이 고정형 필터는 대칭형이거나 비대칭형이거나 1 차원이거나 2 차원일 수 있다. 기술한 바와 같이, 이러한 프로세싱 후에, 최상 리파이닝 결정 모듈(576)이 최적의 리파이닝 결과들(예를 들어, 리파이닝된 영상들(578)로부터의 최적의 영상)을 결정할 수 있다. 따라서, 몇몇 실례들에서, 고정형 리파이닝 필터를 적용하는 것은 (예를 들어, 상기 등식(1)에서 나타난 것과 같이) 상기 재구성된 레퍼런스 층 비디오 데이터(예를 들어, 픽셀 데이터)와 필터 계수 간의 도트 프로덕트(dot product)를 취하는 단계와 오프셋 값들을 가산하는 단계를 포함할 수 있다. 몇몇 실례들에서, 고정형 리파이닝 필터를 적용하는 것은 상기 재구성된 레퍼런스 층 비디오 데이터의 필터 윈도우에 고정형 리파이닝 필터를 적용하는 것을 포함할 수 있다. 다른 실례들에서, 고정형 리파이닝 필터를 적용하는 것은 상기 재구성된 레퍼런스 층 비디오 데이터 전체에 고정형 리파이닝 필터를 적용하는 것을 포함할 수 있다.
기술한 바와 같이, 도 5는 고정형 리파이닝 필터들의 실례를 나타내고 있다. 일반적으로, 고정형 리파이닝 필터들은 각각의 특성을 가질 수 있다. 예를 들어, 기술한 바와 같이, 고정형 리파이닝 필터(오직 하나만이 사용되는 경우) 또는 하나 이상의 다수의 고정형 리파이닝 필터들은 대칭형 고정형 리파이닝 필터, 비대칭형 고정형 리파이닝 필터, 1 차원 고정형 리파이닝 필터, 분리 가능한 2 차원 고정형 리파이닝 필터, 또는 분리 불가능한 2 차원 고정형 리파이닝 필터를 포함할 수 있다. 또한, 다양한 실례들에서, 고정형 리파이닝 필터(오직 하나만이 사용되는 경우) 또는 하나 이상의 다수의 고정형 리파이닝 필터들은 공간적 평탄화 필터(spatial smoothing filter), 공간적 샤프닝 필터(spatial sharpening filter), 특정 히스토그램 대역 인핸스먼트 필터, 특정 히스토그램 대역 통과 필터, 저 주파수 인핸스먼트 필터, 고 주파수 인핸스먼트 필터, 특정 주파수 대역 인핸스먼트 필터, 고역 통과 필터, 대역 통과 필터, 저역 통과 필터, 또는 몇몇 다른 필터를 포함할 수 있다.
몇몇 실례들에서, 저역 통과 필터는 재구성된 입력 영상보다 평탄한 리파이닝된 영상을 제공할 수 있다. 저역 통과 필터 계수 및 오프셋의 실례는 (이전의 등식 (1)을 참조하여서) 다음의 등식 (2)로 표현될 수 있다:
저역 통과 필터 계수 및 오프셋의 다른 실례는 (이전의 등식 (1)을 참조하여서) 다음의 등식 (3)로 표현될 수 있다:
몇몇 실례들에서, 고 주파수 인핸스먼트 필터는 재구성된 입력 영상보다 샤프한(sharp) 리파이닝된 영상을 제공할 수 있다. 고 주파수 인핸스먼트 필터 계수 및 오프셋의 실례는 (이전의 등식 (1)을 참조하여서) 다음의 등식 (4)로 표현될 수 있다:
일반적으로, 임의의 개수의 고정형 필터들이 임의의 조합으로 해서 사용될 수 있다. 예시적인 실시예에서, 2 개의 고정형 필터들이 사용될 수 있는데(예를 들어, 리파이닝을 수행하기 위해서 사용됨), 하나는 저역 통과 필터로서 예측성 영상을 보다 평탄하게 하며, 다른 하나는 고 주파수 인핸스먼트 필터로서 예측성 영상을 보다 샤프(sharp)하게 한다. 이 저역 통과 필터는 예를 들어 상기 등식 (2) 및 등식 (3)의 계수 및 오프셋을 사용할 수 있으며, 고 주파수 인핸스먼트 필터는 예를 들어 상기 등식 (4)의 계수 및 오프셋을 사용할 수 있다.
몇몇 실례들에서, 단일 고정형 필터가 사용될 수 있으며(이 경우에는 최상 리파이닝 결정 모듈(576)은 사용되지 않을 수 있음), 이 단일 고정형 필터는 저역 통과 필터를 포함할 수 있다. 예를 들어, 단일 고정형 필터는 상기 등식 (2) 및 등식 (3)의 계수 및 오프셋을 사용할 수 있다. 몇몇 실례들에서, 고정형 필터는 제로로 강제된 오프셋 값을 갖도록 될 수 있다. 몇몇 실례들에서, 고정형 필터는 제로로 강제된 인핸스먼트 필터 계수 값을 갖도록 될 수 있다.
이하에서 보다 상세하게 기술되는 바와 같이, 몇몇 실시예들에서, 고정형 리파이닝 필터링이 층 간 예측에 적용될 때에, 고정형 리파이닝 필터링이 턴 온 또는 턴 오프되는지의 여부(예를 들어, 고정형 리파이닝 필터링이 수행될지의 여부)가 판정될 수 있다. 또한, 다수의 고정형 필터들(예를 들어, 리파이닝 필터들)이 사용되면, 어느 필터(예를 들어, 최적의 고정형 필터)를 선택할지가 이루어질 수 있다. 이러한 선택 또는 결정은 상이한 레벨에서 이루어질 수 있다. 예를 들어, 고정형 필터(들)가 시퀀스, 층, 영상, 슬라이스 또는 블록 레벨에서 턴 온 또는 턴 오프될 수 있다. 또한, 리파이닝을 수행하기 위해서 어느 필터를 사용할 바도 또한 시퀀스, 층, 영상, 슬라이스 또는 블록 레벨에서 스위칭될 수 있다. 예를 들어, 이러한 결정은 인코더가 리파이닝 필터의 턴 온/턴 오프를 결정하고 최적의 필터를 또한 결정하고 이어서 이러한 결정 결과들을 표시하는 플래그를 디코더에 전송하도록 인코더에 의해서 이루어질 수 있다.
몇몇 실례들에서, (다수의 사용된 필터들 중에서) 어느 필터를 적용할지를 결정하는 것은 국부적 적응 방법에 의해서 이루어질 수 있다. 일 실시예에서, 재구성된 레퍼런스 층 비디오 데이터(572)(예를 들어, 사전 필터링 영상)의 국부적 특성이 평가 또는 분석되어서 고정형 필터(예를 들어, 리파이닝 필터)의 적용을 결정할 수 있다. 예를 들어, 재구성된 레퍼런스 층 비디오 데이터(572)의 국부 에지 정보, 구배 강도, 국부 편차 또는 다른 측정치가 사용되어서 상기 결정을 할 수 있다. 몇몇 실례들에서, 디코더 및 인코더 모두가 동일한 (또는 유사한) 절차를 수행하여서 동일하거나 실질적으로 동일한 결정 결과를 생성할 수 있다. 이러한 실례들에서, 어떠한 추가적인 플래그(들)도 인코딩된 비트스트림에서 필요하지 않게 된다.
재구성된 레퍼런스 층 비디오 데이터(572)의 국부 에지 정보, 구배 강도, 국부 편차 또는 다른 측정치가 사용되어서 어느 필터를 사용할지가 결정될 수 있다. 예를 들어, 저역 통과 필터 및 고역 통과 필터가 사용되면, 가변 최적 필터 인덱스가 사용되어서 어느 필터가 최적인지를 특정할 수 있다. 다음의 실레에서, 최적 필터 인덱스 제로는 저역 통과 필터가 최적임을 표시하며 최적 필터 인덱스 1은 고역 통과 필터가 최적임을 표시한다. 블록 B가 크기 N*N을 갖는다고 가정하면, 최적 필터 결정은 이하의 등식 (5)로 주어지는 바와 같은 인덱스에 의해서 이루어진다:
여기서, TH는 (사전 결정된 임계치 또는 경험적으로 결정된 임계치 등과 같은) 임계치를 말하며, func(B)는 블록(block)의 측정치일 수 있다.
기술한 바와 같이, 다양한 실례들에서, 재구성된 레퍼런스 층 비디오 데이터(572)의 국부 에지 정보, 구배 강도, 국부 편차 또는 다른 측정치가 사용되다. 상기 국부 에지 정보가 사용되는 실례에서는, 상기 func(B)는 현재 블록의 국부 에지 정보의 측정치며, 이는 아래의 등식들 (6), (7) 및 (8)에 의해서 결정될 수 있다:
여기서, i 및 j는 카운터 변수들이며, B는 블록과 관련된 값이며, G는 국부 에지 정보와 연관될 수 있다.
구배 강도가 사용되는 실례들에서, func(B)는 현 블록의 구배 강도의 측정치이며, 이는 다음의 등식 (9)에 의해서 결정될 수 있다:
여기서, i 및 j는 카운터 변수들이며, B는 블록과 관련된 값이다.
국부 편차가 사용되는 실례들에서, func(B)는 현 블록의 국부 편차의 측정치이며, 이는 다음의 등식 (10) 및 등식 (11)에 의해서 결정될 수 있다:
여기서, i 및 j는 카운터 변수들이며, B는 블록과 관련된 값이다.
상기에서는 블록 레벨에 대해서 기술되었지만, 상기 등식 (5) 내지 (11)을 참조하여서 설명된 기술들은 예를 들어 영상, 슬라이스, 블록 등과 같은 임의의 레벨에 대해서도 구현될 수 있다. 또한, 2 개의 적용된 필터들에 대해서 기술되었지만, 상술된 기술은 임의의 개수의 필터들까지 확장될 수 있다.
도 6은 본 개시의 적어도 몇몇 실시예들에 따라서 구성된 예시적인 프로세스(600)의 흐름도이다. 이 프로세스(600)는 도 6의 하나 이상의 블록들(602,604,606 및/또는 608)에 의해서 예시된 바와 같은 하나 이상의 동작, 기능 또는 연산을 포함할 수 있다. 프로세스(600)는 스케일러블 비디오 코딩 프로세스의 적어도 일부를 형성할 수 있다. 비한정적인 예시적인 방식으로, 프로세스(600) 또는 그의 부분들은 본 명세서에서 기술되는 스케일러블 비디오 인코딩 프로세스의 적어도 일부를 형성하도록 수행될 수 있지만, 프로세스(600)는 도 4의 디코더 시스템(400)에 의해서 수행되는 것과 같은 하나 이상의 인핸스먼트 층에 대한 스케일러블 비디오 코딩 프로세스의 적어도 일부를 형성할 수도 있다.
또한, 프로세스(600)는 도 7의 스케일러블 비디오 코딩 시스템(700)을 참조하여서 본 명세서에서 기술될 것이다. 이 도 7은 본 개시의 적어도 몇몇 실시예들에 따라서 구성된 예시적인 시스템(700)의 도면이다. 도 7에 도시된 바와 같이, 시스템(700)은 프로세서(702), SVC 코덱 모듈(706) 및 메모리(708)를 포함할 수 있다. 프로세서(702)는 SVC 코덱 모듈(706)을 구현시켜서 본 개시에 따른 층 간 예측을 제공하게 한다. 시스템(700)의 실례에서, 메모리(708)는 비디오 콘텐츠를 저장할 수 있다. SVC 코덱 모듈(706)은 소프트웨어, 펌웨어 및/또는 하드웨어의 임의의 조합에 의해서 제공될 수 있다. 몇몇 실례들에서, SVC 코덱 모듈(706) 또는 보다 일반적으로는 로직 모듈은 고정형 리파이닝 필터를 재구성된 레퍼런스 층 비디오 데이터에 적용하여서 리파이닝된 재구성된 비디오 데이터를 생성하도록 구성될 수 있는 층 간 예측 모듈 및/또는 상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 이 비디오 데이터와 연관된 인핸스먼트 층에 대한 층 간 예측을 수행하는 인핸스먼트 층 비디오 코더를 포함할 수 있다. 메모리(708)는 휘발성 메모리(예를 들어, SRAM(정적 RAM), DRAM(동적 RAM) 등) 또는 비휘발성 메모리(예를 들어, 플래시 메모리 등) 등과 같은 임의의 타입의 메모리일 수 있다. 비한정적인 실례에서, 메모리(708)는 캐시 메모리에 의해서 구현될 수 있다.
다시 도 6을 돌아가면, 프로세스(600)는 결정 블록(602)인 "EL에 대한 층 간 예측 수행?"에서 시작하는데 이 블록에서는 인핸스먼트 층에 대하여서 층 간 예측이 수행될지의 여부가 판정될 수 있다. 층 간 예측이 수행될 것이면, 이 프로세스(600)는 블록(604)로 진행하지만, 층 간 예측이 수행되지 않을 것이면, 이 프로세스(600)는 종료될 수 있다. 디코더 구현예와 같은 몇몇 실례들에서, 층 간 예측이 수행될지의 여부를 결정하는 것은 비트 스트림을 액세스하여서 층 간 예측을 수행할지의 여부를 특정하거나 어느 고정형 리파이닝 필터링을 사용할지를 특정하는 표시자(예를 들어, 비트 스트림 플래그)를 판정하는 것을 포함할 수 있다.
프로세스(600)는 블록(604)인 "어느 고정형 리파이닝 필터링을 사용할 것인가?"으로 진행하는데 이 블록에서는 현 시퀀스, 층, 영상, 슬라이스 또는 블록에 대해서, 다수의 고정형 리파이닝 필터들 중에서 어느 것이 사용될지를 판정한다. 기술한 바와 같이, 몇몇 실례들에서, 단일의 고정형 리파이닝 필터가 사용될 수 있다. 이러한 실례들에서, 블록(604)을 생략할 수 있다. 다수의 고정형 리파이닝 필터들이 사용되는 디코더 실시예들에서, 어느 고정형 리파이닝 필터를 사용할지를 판정하는 것은 비트 스트림에 액세스하여서 다수의 고정형 리파이닝 필터들 중에서 어느 고정형 리파이닝 필터를 사용할지를 특정하는 고정형 리파이닝 필터 표시자를 결정하는 것을 포함할 수 있다. 인코더 실례들(및 어떠한 고정형 리파이닝 필터 표시자도 제공되지 않은 디코더 실례들)에서는, 어느 고정형 리파이닝 필터를 사용할지를 판정하는 것은 본 명세서에서 기술된 바와 같이 고정형 리파이닝 필터 선정을 결정하기 위해서 재구성된 레퍼런스 비디오 데이터를 평가하는 바 및/또는 다수의 고정형 리파이닝 필터링 결과들(예를 들어, 리파이닝된 재구성된 비디오 데이터)를 평가하는 것을 포함할 수 있다.
프로세스(600)는 블록(606)인 "고정형 리파이닝 필터 적용"으로 진행되며, 이 블록에서 단일 또는 선정된 고정형 리파이닝 필터가 상기 재구성된 레퍼런스 비디오 데이터에 적용되어서 리파이닝된 재구성된 비디오 데이터를 생성한다. 기술한 바와 같이, 몇몇 실례들에서, 각 고정형 리파이닝 필터가 이미 적용될 수 있으며 이 결과 데이터가 사용되어서 고정형 리파이닝 필터를 선택할 수 있다. 이러한 실례들에서, 블록(606)은 생략되거나 선정된 리파이닝된 재구성된 비디오 데이터 등을 전달하는 단계를 포함할 수 있다. 프로세스(600)는 "리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 EL에 대한 층 간 예측을 수행함"인 블록(608)으로 진행하며, 이 블록에서는 기술한 바와 같이 리파이닝된 재구성된 비디오 데이터에 연관된 인핸스먼트 층(EL)에 대한 층 간 예측이 수행될 수 있다.
기술한 바와 같이, 다양한 실시예들에서, 리파이닝 필터링을 수행하기 이전에, 하위 층 프로세싱이 수행될 수 있다. 이 하위 층 프로세싱은 예를 들어 공간적 스케일러빌러티를 위한 업-샘플링, 비트 깊이 스케일러빌러티를 위한 톤 맵핑 등을 포함할 수 있다.
기술한 바와 같이, 다양한 실시예들에서, 블록(602)에서와 같이 층 간 예측을 수행할지의 여부를 판정하는 것과 같은 프로세스(600)의 일부분들은 예를 들어 비트 스트림 내에서 디코더로 제공되는 표시자에 응답하여서 수행될 수 있다. 도 8은 본 개시의 적어도 몇몇 실시예들에 따라 구성된, 비트 스트림(140,226,342,또는 401)과 같은 예시적인 비트 스트림(800)의 예시적인 도면이다. 도 8에 도시된 바와 같이, 비트 스트림(800)은 헤더부(802) 및 데이터부(804)를 포함할 수 있다. 헤더부(802)는 하나 이상의 표시자(806)를 포함할 수 있다. 예를 들어, 표시자들(806)은 기술한 바와 같이, 인핸스먼트 층의 현 시퀀스, 층, 영상, 슬라이스, 블록에 대해서 층 간 예측을 수행할지의 여부를 특정하거나 고정형 리파이닝 필터를 적용할지의 여부를 특정하는 값을 갖는 표시자 또는 플래그(808)를 포함할 수 있다. 또한, 비트 스트림(800)은 상술한 바와 같이 다수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지를 표시하는 하나 이상의 고정형 리파이닝 필터 표시자(810)와 같은 다른 정보를 포함할 수 있다. 기술한 바와 같이, 몇몇 실례들에서, 각 고정형 리파이닝 필터는 어느 고정형 리파이닝 필터를 적용할지를 선택하는 것이 적용될 계수 및/또는 오프셋을 선택할 수 있도록 해당 고정형 리파이닝 필터에 대해 특정된 계수 및 오프셋을 사용할 수 있다.
본 명세서에서 기술되는 시스템의 다양한 구성 요소들은 하드웨어, 소프트웨어, 펌웨어 및/또는 이들의 임의의 조합으로 해서 구현될 수 있다. 예를 들어, 시스템(300)의 다양한 구성 요소들은 예를 들어 스마트 폰과 같은 컴퓨팅 디바이스에서 발견될 수 있는 바와 같은 컴퓨팅 SoC(시스템 온 칩)의 하드웨어에 의해서 적어도 부분적으로 제공될 수 있다. 본 명세서에서 기술되는 시스템들은 해당 도면들에서 도시되지 않은 추가 구성 요소들을 포함할 수 있음을 본 기술 분야의 당업자는 잘 알 것이다. 예를 들어, 본 명세서에서 기술되는 시스템들은 명료성을 위해서 도시되지 않은 비트 스트림 멀티플렉서 모듈 또는 디멀티플렉서 모듈과 같은 추가적인 구성 요소들을 포함할 수 있다.
도 9는 본 개시의 적어도 몇몇 실시예들에 따라서 구성된 예시적인 비디오 코딩 프로세스(900)의 흐름도이다. 본 예시된 실시예에서, 프로세스(900)는 하나 이상의 블록들(902,904)에 의해서 나타나는 하나 이상의 동작, 기능 또는 연산을 포함할 수 있다. 비한정적인 실례의 방식으로 해서, 프로세스(900)가 예시적인 비디오 코딩 시스템(200) 또는 인코딩 시스템(300) 및 디코딩 시스템(400)을 포함하는 비디오 시스템을 참조하여서 본 명세서에서 기술될 것이다. 예시된 바와 같은 프로세스(900)는 인코딩 또는 디코딩에 관한 것일 수 있으며 여기에서 기술되는 개념들 및/또는 동작들은 일반적으로 코딩과 유사한 또는 동일한 방식으로 해서 적용될 수 있다.
프로세스(900)는 스케일러블 비디오 코딩을 수행하기 위한 컴퓨터 구현 방법으로서 사용될 수 있다. 이 프로세스(900)는 "고정형 리파이닝 필터를 재구성된 레퍼런스 층 비디오 데이터에 적용하여서 리파이닝된 재구성된 비디오 데이터를 생성하는 것"인 동작(902)에서 시작되며, 이 동작(902)에서는, 고정형 리파이닝 필터가 재구성된 레퍼런스 층 비디오 데이터에 적용되어서 리파이닝된 재구성된 비디오 데이터가 생성된다. 예를 들어, 기술한 바와 같이, 리파이닝된 재구성된 비디오 데이터(265)는 시스템(200)의 층 간 예측 모듈(260)의 리파이닝 필터링 모듈(262)에서 생성되거나 리파이닝된 재구성된 비디오 데이터(365)는 시스템(300)의 층 간 예측 모듈(360)의 리파이닝 필터링 모듈(362)에서 생성될 수 있다. 기술한 바와 같이, 리파이닝된 재구성된 비디오 데이터는 재구성된 레퍼런스 층 비디오 데이터와 필터 계수들의 도트 프로덕트(dot product)를 취하는 단계와 오프셋 값을 부가하는 단계를 포함하는 고정형 필터링에 기초하여서 리파이닝된 데이터를 포함할 수 있으며 이러한 계수들 및 오프셋 값들을 통해서 다양한 효과들이 실현될 수 있다.
이 프로세스는 동작(902)에서 동작(904)로 진행하는데, 이 동작(904)는 "상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 이 비디오 데이터와 연관된 인핸스먼트 층에 대하여서 층 간 예측을 수행하는 것"에 대응하며, 이 동작(904)에서는, 상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 이 비디오 데이터와 연관된 인핸스먼트 층에 대하여서 층 간 예측이 수행될 수 있다. 이 층 간 예측은 예를 들어 시스템(200)의 인핸스먼트 층 인코더(204) 또는 시스템(300)의 인핸스먼트 층 디코더(304)에서 수행될 수 있다.
일반적으로, 프로세스(900)는 인핸스먼트 층의 임의의 개수의 시퀀스, 층, 영상, 슬라이스 또는 블록들에 대해서 또는 임의의 개수의 프레임 데이터들에 대해서 직렬로 또는 병렬로 임의의 회수로 반복될 수 있다. 결과적으로 생성된 층 간 예측 결과가 사용되어서 예를 들어 디스플레이 장치에서 표시되기 위한 출력 비디오 데이터(예를 들어, 인핸스먼트 층 프레임 또는 프레임들)을 생성하거나 비트스트림을 인코딩할 수 있다. 프로세서(900)와 연관된 몇몇 추가적인 및/또는 다른 세부 사항들은 이하에서 특히 도 10을 참조하여서 본 명세서에서 기술되는 하나 이상의 실시예들의 실례들에서 설명될 수 있다.
도 10은 본 개시의 적어도 몇몇 실시예들에 따라서 구성된, 동작 시의 예시적인 비디오 코딩 시스템(100) 및 프로세스(1000)를 나타내고 있다. 본 예시된 실시예에서, 프로세스(1000)는 하나 이상의 동작들(1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013 및/또는 1014)에 의해서 나타난 바와 같은 하나 이상의 동작, 연산 또는 기능을 포함할 수 있다. 비한정적인 실례로서, 프로세스(1000)는 본 명세서에서 도 3의 인코더 시스템 및 도 4의 디코더 시스템(400)을 포함하는 예시적인 비디오 코딩 시스템을 참조하여서 기술될 것이다.
이 예시적 실시예에서, 비디오 코딩 시스템(100)은 다수의 로직 모듈(1020) 등 및/또는 이들의 조합을 포함할 수 있다. 예를 들어, 로직 모듈(1020)은 층 간 예측 모듈(1050) 및 인핸스먼트 층 인코더(1055)를 포함할 수 있는 인코더(예를 들어, 인코더들(201,300)에 대응할 수 있음)(1030) 및 층 간 예측 모듈(1060) 및 인핸스먼트 층 디코더(1065)를 포함할 수 있는 디코더(예를 들어, 디코더들(203,400)에 대응할 수 있음)(1040)을 포함할 수 있다. 도 10에 도시된 바와 같이, 비디오 코딩 시스템(100)은 특정 모듈들과 연관된 하나의 특정 블록 세트 또는 특정 동작 세트를 포함할 수 있지만, 이러한 동작들 또는 블록들은 본 명세서에서 예시된 특정 모듈과는 상이한 모듈과 연관될 수 있다. 도시된 바와 같이 프로세스(1000)는 인코딩 및 디코딩에 대한 것이지만, 기술된 개념 및/또는 동작은 인코딩 및/또는 디코딩에 개별적으로 적용되고 보다 일반적으로는 비디오 코딩에 적용될 수 있다.
프로세스(1000)는 블록(1001)인 "하위 층 프로세싱을 재구성된 이미지 데이터에 적용"에서 시작되며, 이 블록에서, 하위 층 프로세싱이 재구성된 이미지 데이터에 적용될 수 있다. 예시적인 실례들에서, 이 하위 층 프로세싱은 공간적 스케일러빌러티를 위한 업-샘플링, 비트 깊이 스케일러빌러티를 위한 톤 맵핑 등을 포함할 수 있다. 예를 들어, 재구성된 베이스 층 비디오 데이터(315)는 하위 층 프로세싱 모듈(364)에 의해서 프로세싱될 수 있다. 몇몇 실례들에서, 이 하위 층 프로세싱은 층 간 예측 모듈(1050)을 통해서 구현될 수 있다.
프로세스(1000)는 이 블록(1001)에서 이제 블록(1002)로 진행하며, 이 블록(1002)는 "적용할 고정형 리파이닝 필터를 결정하는 것"에 대응하며, 이 블록(1002)에서, 적용할 고정형 리파이닝 필터가 결정될 수 있다. 기술한 바와 같이, 몇몇 실례들에서, 이러한 결정은 고정형 리파이닝 필터를 적용하기 이전에 이루어질 수 있으며 이러한 결정은 재구성된 레퍼런스 층 비디오 데이터에 평가 결과에 기초하여서 다수의 고정형 리파이닝 필터로부터 이루어질 수 있다. 예를 들어, 이러한 평가는 재구성된 레퍼런스 층 비디오 데이터의 국부 에지 정보, 재구성된 레퍼런스 층 비디오 데이터의 구배 강도, 또는 재구성된 레퍼런스 층 비디오 데이터의 국부 편차를 평가하는 것을 포함하도록 적어도 부분적으로 국부적 적응 방법에 기초하여서 이루어질 수 있다.
또한, 기술한 바와 같이, 다른 실례들에서, 다수의 고정형 리파이닝 필터 각각이 연관된 리파이닝된 영상을 생성하고 어느 고정형 리파이닝 필터를 사용할지를 결정하는 것은 상기 생성된 리파이닝된 영상에 기초하여서 이루어질 수 있다. 이러한 결정은 예를 들어 이 리파이닝된 영상을 상기 재구성된 레퍼런스 층 비디오 데이터의 영상과 비교하는 것과 같은 상기 리파이닝된 영상에 대한 임의의 적합한 비교 결과에 기초하여서 이루어질 수 있다. 몇몇 실례들에서, 이 블록(1002)은 필요하다면 블록(1003) 이후에 수행될 수 있다.
프로세스(1000)는 이제 블록(1002)에서 블록(1003)으로 진행하되, 이 블록(1003)은 "고정형 리파이닝 필터 적용"에 해당하며, 이 블록(1003)에서, 고정형 리파이닝 필터가 재구성된 레퍼런스 층 비디오 데이터에 적용되어서 리파이닝된 재구성된 비디오 데이터를 생성한다. 기술한 바와 같이, 몇몇 실례들에서, 고정형 리파이닝 필터는 선정된 리파이닝 필터를 포함하며, 다른 실례들에서, 다수의 고정형 리파이닝 필터들이 적용되고 생성된 데이터 값들 중에서 최상의 값들이 선정되어서 사용될 수 있다. 또 다른 실례에서는, 오직 하나의 고정형 리파이닝 필터가 사용될 수 있다. 이러한 실례들에서는, 블록(1002)은 생략될 수 있다. 몇몇 실례들에서, 고정형 리파이닝 필터는 층 간 예측 모듈(1050)을 통해서 적용될 수 있다.
이어서, 프로세스(1000)는 블록(1004)인 "층 간 예측 수행"으로 진행하며, 이 블록에서는 상기 리파이닝된 재구성된 비디오 데이터와 연관된 인핸스먼트 층에 대한 층 간 예측이 상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 이루어진다. 예를 들어, 인핸스먼트 층 인코더(304)는 리파이닝된 재구성된 비디오 데이터(365)에 적어도 부분적으로 기초하여서 층 간 예측을 수행할 수 있다. 몇몇 실례들에서, 층 간 예측은 인핸스먼트 층 인코더(1055)에 의해서 수행될 수 있다.
프로세스(1000)는 이제 블록(1004)에서 블록(1005)으로 진행하며, 이 블록은 "비트 스트림 인코딩"에 대응하며, 이 블록에서는 비트 스트림이 상기 층 간 예측 결과에 적어도 부분적으로 기초하여서 인코딩될 수 있다. 몇몇 실례들에서, 이 비트 스트림은 레지듀얼 코딩(residual coding)으로 코딩될 수 있다. 기술한 바와 같이, 몇몇 실례들에서, 비트 스트림에는 고정형 리파이닝 필터를 적용할지의 여부를 특정하는 표시자 및/또는 (채용된다면) 다수의 고정형 리파이닝 필터들 중 어느 고정형 필터를 적용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 갖도록 인코딩될 수 있다. 예를 들어, 비트 스트림은 엔트로피 인코더(304) 등에 의해서 인코딩될 수 있다.
프로세스(1000)는 이제 블록(1005)에서 "비트 스트림 전달"인 블록(1006)으로 진행하며, 이 블록에서 상기 인코딩된 비트 스트림이 전달될 수 있다. 도시된 바와 같이, 인코딩된 비트 스트림은 디코더(1040)에 전달될 수 있다. 기술한 바와 같이, 인코더(1030)는 콘텐츠 제공자 시스템과 연관되고/되거나 이에 의해서 제공될 수 있으며 디코더(1040)는 클라이언트 시스템과 연관될 수 있다. 따라서, 다양한 실시예들에서, 인코더(1030) 및 디코더(1040)는 실질적으로 서로 독립적으로 구현될 수 있다. 다양한 실례들에서, 비트 스트림은 인터넷, 메모리 장치 등을 통해서 전달될 수 있다. 잘 알다시피, 몇몇 구현예들에서, 비트 스트림은 직렬로 또는 병렬로 다수의 디바이스들에 전달될 수 있다.
프로세스(1000)는 블록(1006)으로부터 진행하거나 블록(1007)에서 시작하며, 이 블록(1007)은 "비트 스트림에 액세스하여서 고정형 리파이닝 필터를 적용할지의 여부를 특정하는 표시자를 판정"에 대응하며, 이 블록에서는, 상기 비디오 데이터와 연관된 비트 스트림이 액세스되어서 고정형 리파이닝 필터를 적용할지의 여부를 특정하는 표시자를 판정할 수 있다. 이 표시자는 예를 들어 디코더(300)에 의해서 액세스될 수 있다. 몇몇 실례들에서, 이 표시자는 비트 스트림 플래그를 포함할 수 있다. 고정형 리파이닝 필터가 적용되지 않는다면(또는 층 간 예측이 수행될 것이 아니라면), 이 프로세스(1000)는 블록(1012)으로 점프한다.
고정형 리파이닝 필터링이 수행될 것이라면, (리파이닝 필터 표시자가 비트 스트림을 통해서 제공되었다면) 이 프로세스(1000)는 블록(1008)인 "비트 스트림을 액세스하여서 고정형 리파이닝 필터 표시자를 판정"으로 진행하며, 이 블록(1008)에서, 상기 비디오 데이터와 연관된 비트 스트림이 액세스되어서 고정형 리파이닝 필터 표시자가 판정될 수 있다. 기술한 바와 같이, 몇몇 실례들에서, 고정형 리파이닝 필터 표시자는 디코딩을 위해서 비트 스트림 내에 인코딩될 수 있다. 어떠한 고정형 리파이닝 필터 표시자도 비트 스트림 내에 인코딩되지 않았다면(및 다수의 고정형 리파이닝 필터들이 채용된다면), 어느 고정형 리파이닝 필터를 적용할지가 블록들(1002, 1003) 및 본 명세서의 다른 부분들에서 기술한 바와 같이 결정될 수 있다.
프로세스(1000)는 블록(1009)인 "하위 층 프로세싱을 재구성된 이미지 데이터에 적용"으로 진행하며, 이 블록(1009)에서는, 하위 층 프로세싱이 재구성된 이미지 데이터에 적용될 수 있다. 다양한 실례들에서, 하위 층 프로세싱은 기술한 바와 같이 공간적 스케일러빌러티를 위한 업-샘플링, 비트 깊이 스케일러빌러티를 위한 톤 맵핑 등을 포함할 수 있다. 예를 들어, 재구성된 베이스 층 비디오 데이터(415)는 하위 층 프로세싱 모듈(464)에 의해서 프로세싱될 수 있다. 몇몇 실례들에서, 이 하위 층 프로세싱은 층 간 예측 모듈(1060)에 의해서 구현될 수 있다.
프로세스(1000)는 이제 블록(1009)에서 "고정형 리파이닝 필터 적용"인 블록(1010)으로 진행하며, 이 블록에서 고정형 리파이닝 필터가 재구성된 레퍼런스 층 비디오 데이터에 대해서 적용되어서 리파이닝된 재구성된 비디오 데이터를 생성할 수 있다. 기술한 바와 같이, 몇몇 실례들에서, 고정형 리파이닝 필터를 적용하는 것은 (수신된 비트 스트림을 액세스하는 바에 기초하거나 디코더에서의 판정에 기초하여서) 선정된 리파이닝 필터를 포함할 수 있으며, 다른 실례들에서는, 다수의 고정형 리파이닝 필터가 채용되어서 이를 통해서 생성된 데이터 중에서 최상의 데이터가 선택되어서 사용될 수 있다. 또 다른 실례에서, 오직 하나의 고정형 리파이닝 필터가 채용 및 사용될 수 있다. 이러한 실례들에서, 블록(1008)이 생략될 수 있다.
프로세스(1000)는 이제 "층 간 예측 수행"인 블록(1011)으로 진행하며, 이 블록에서 상기 리파이닝된 재구성된 비디오 데이터와 연관된 인핸스먼트 층에 대한 층 간 예측이 상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 수행될 수 있다. 예를 들어, 인핸스먼트 층 디코더(304)가 리파이닝된 재구성된 비디오 데이터(365)에 적어도 부분적으로 기초하여서 층 간 예측을 수행할 수 있다. 몇몇 실례들에서, 이 층 간 예측은 인핸스먼트 층 디코더(1165)에 의해서 수행될 수 있다.
이 프로세스(1000)는 이제 블록(1011)에서 "인핸스먼트 층 출력 비디오 데이터 생성"인 블록(1012)로 진행하며, 이 블록에서, 인핸스먼트 층과 연관된 인핸스먼트 층 출력 비디오 데이터가 상기 층 간 예측 결과에 적어도 부분적으로 기초하여서 생성될 수 있다. 예를 들어, 인핸스먼트 층 디코더(404)가 인핸스먼트 층 출력 비디오 데이터(406)를 생성할 수 있다.
프로세스(1000)는 이제 블록(1012)에서 "표시를 위해서 출력 비디오 데이터 전달"인 블록(1013)으로 진행하며, 이 블록(1013)에서, 표시되기 위해서 상기 출력 비디오 데이터가 전달될 수 있다. 예를 들어, 이 출력 비디오 데이터는 디스플레이 장치를 통해서 제공 또는 표시될 수 있다.
본 명세서에서의 예시적인 프로세스들의 실시는 예시된 순서로 도시된 모든 블록들을 수행하는 것을 포함할 수 있지만, 본 개시는 이로만 한정되는 것이 아니라 다양한 실례들에서, 본 명세서에서의 예시적인 프로세스들의 실시는 도시된 블록들의 오직 서브세트만을 수행하는 것 및/또는 예시된 것 이외의 다른 순서로 실시하는 것을 포함할 수 있다.
또한, 본 명세서에서 기술되는 블록들 중 임의의 하나 이상은 하나 이상의 컴퓨터 프로그램 제품들에 의해서 제공되는 인스트럭션에 응답하여서 수행될 수 있다. 이러한 컴퓨터 프로그램 제품들은 예를 들어 프로세서에 의해서 실행되어서 본 명세서에서 기술된 기능들을 제공할 수 있는 인스트럭션을 제공하는 신호 보유 매체를 포함할 수 있다. 컴퓨터 프로그램 제품들은 임의의 하나 이상의 머신 판독 가능한 매체의 형태로 제공될 수 있다. 따라서, 예를 들어, 하나 이상의 프로세서 코어(들)을 포함하는 프로세서는 하나 이상의 머신 판독 가능한 매체에 의해서 상기 프로세서에 전달되는 프로그램 코드 및/또는 인스트럭션 또는 인스트럭션 세트에 응답하여서 본 명세서에서의 예시적인 프로세스의 하나 이상의 블록들을 수행할 수 있다. 일반적으로, 머신 판독 가능한 매체는 본 명세서에서 기술된 임의의 디바이스 및/또는 시스템으로 하여금 비디오 시스템(200,300,400), SVC 코덱 모듈(706), 층 간 예측 모듈(1050, 1060) 등 또는 본 명세서에서 기술되는 임의의 다른 모듈 또는 구성 요소 중 적어도 일부분들을 구현하게 할 수 있는 프로그램 코드 및/또는 인스트럭션 또는 인스트럭션 세트의 형태로 된 소프트웨어를 전달할 수 있다.
본 명세서에서 기술되는 임의의 실시예들에서 사용되는 바와 같이, 용어 "모듈"은 본 명세서에서 기술되는 기능을 제공하도록 구성된 소프트웨어 로직, 펌웨어 로직 및/또는 하드웨어 로직의 임의의 조합을 지칭할 수 있다. 소프트웨어는 소프트웨어 패키지, 코드 및/또는 인스트럭션 또는 인스트럭션 세트로서 구현되며, 본 명세서에서 기술되는 임의의 실시예들에서 사용되는 바와 같은 하드웨어는 예를 들어 하드와이어형 회로, 프로그램 가능한 회로, 상태 머신 회로 및/또는 프로그램 가능한 회로에 의해서 실행되는 인스트럭션들을 저장하는 펌웨어를 단독으로 포함하거나 이들의 조합하여서 포함할 수 있다. 모듈은 예를 들어, 집적 회로(IC), 시스템 온 칩(SoC) 등과 같은 대형 시스템의 일부를 형성하는 회로로서 집합적으로 또는 개별적으로 구현될 수 있다.
도 11은 본 개시의 적어도 몇몇 실시예들에 따라서 구성된 예시적인 비디오 코딩 시스템(1100)을 도시하고 있다. 이 예시된 실시예에서, 비디오 코딩 시스템(1100)은 이미징 디바이스(들)(1101), 비디오 인코더(1102), 안테나(1103), 비디오 디코더(1104), 하나 이상의 프로세서(1106), 하나 이상의 메모리 저장 장치(1108), 디스플레이 디바이스(1110) 및/또는 로직 모듈들(1140)을 포함할 수 있다. 로직 모듈(1140)은 층 간 예측 모듈(1060) 및/또는 인핸스먼트 층 디코더(1065) 등 및/또는 이들의 조합을 포함할 수 있다. 상술한 바와 같이, 다양한 실례들에서, 층 간 예측 모듈(1060)은 인핸스먼트 층 디코더(1065) 또는 설명의 명료성을 위해서 도 11에서는 도시되지 않은 베이스 층 디코더를 통해서 구현될 수 있다. 몇몇 실례들에서, 비디오 인코더(1102)는 예를 들어 층 간 예측 모듈(1050) 및/또는 인핸스먼트 층 인코더(1055)를 포함하는 하나 이상의 로직 모듈들을 구현할 수 있다.
도시된 바와 같이, 안테나(1103), 비디오 디코더(1104), 하나 이상의 프로세서(1106), 하나 이상의 메모리 저장 장치(1108) 및/또는 디스플레이 디바이스(1110)는 서로 통신하고/하거나 로직 모듈들(1140)의 일부분과 통신할 수 있다. 마찬가지로, 이미징 디바이스(1101) 및 비디오 인코더(1102)는 서로 통신하고/하거나 로직 모듈들(1140)의 일부분과 통신할 수 있다. 따라서, 비디오 디코더(1104)는 로직 모듈(1140)의 전부 또는 일부분을 포함할 수 있으며, 비디오 인코더(1102)는 유사한 로직 모듈들을 포함할 수 있다. 도 11에 도시된 바와 같은 비디오 코딩 시스템(1100)이 특정 모듈들과 연관된 임의의 특정 블록 또는 동작 세트를 포함할 수 있지만, 이러한 블록 또는 동작들은 본 명세서에서 예시된 특정 모듈 이외의 다른 모듈과도 연관될 수 있다.
몇몇 실례들에서, 비디오 코딩 시스템(1100)은 안테나(1103), 비디오 디코더(1104) 등 및/또는 이들의 조합을 포함할 수 있다. 안테나(1103)는 인코딩된 비디오 데이터 비트스트림을 수신하도록 구성될 수 있다. 비디오 디코더(1104)는 안테나(1103)와 통신 가능하게 접속되어서 인코딩된 비스 스트림을 디코딩하도록 구성될 수 있다. 비디오 디코더(1104)는 고정형 리파이닝 필터를 재구성된 레퍼런스 층 비디오 데이터에 적용하여서 리파이닝된 재구성된 비디오 데이터를 생성하고 이 리파이닝된 재구성된 비디오 데이터와 연관된 인핸스먼트 층에 대해서 상기 리파이닝된 재구성된 비디오 데이터를 적어도 부분적으로 기초하여서 층 간 예측을 수행하도록 구성될 수 있다.
다른 실례들에서, 비디오 코딩 시스템(1100)은 디스플레이 디바이스(1110), 하나 이상의 프로세서(1106), 하나 이상의 메모리 저장 장치(1108), 층 간 예측 모듈(1060) 등 및/또는 이들의 조합을 포함할 수 있다. 디스플레이 디바이스(1110)는 비디오 데이터를 표시하도록 구성될 수 있다. 프로세서들(1106)은 상기 디스플레이 디바이스(1110)와 통신 가능하게 연결될 수 있다. 메모리 장치들(1108)은 상기 프로세서들(1106)과 통신 가능하게 연결될 수 있다. 비디오 디코더(1104)(다른 실례에서는 비디오 인코더(1102))의 층 간 예측 모듈(1060)은 하나 이상의 프로세서들(1106)과 통신 가능하게 연결되어서 고정형 리파이닝 필터를 재구성된 레퍼런스 층 비디오 데이터에 적용하여서 리파이닝된 재구성된 비디오 데이터를 생성하도록 구성될 수 있다. 인핸스먼트 층 디코더(1065)는 하나 이상의 프로세서들(1106)과 통신 가능하게 연결되어서 상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 상기 리파이닝된 재구성된 비디오 데이터와 연관된 인핸스먼트 층에 대해서 층 간 예측을 수행하도록 구성될 수 있고, 이로써, 디스플레이 디바이스(1110)를 통한 이미지 데이터의 제공은 이 층 간 예측에 적어도 부분적으로 기초할 수 있다.
다양한 실시예들에서, 로직 모듈(114O)은 하드웨어로 구현되는 반면에, 소프트웨어가 다른 로직 모듈을 구현할 수 있다. 예를 들어, 몇몇 실시예들에서, 층 간 예측 모듈(1060) 및/또는 인핸스먼트 층 디코더(1065)는 ASIC(application-specific integrated circuit)에 의해서 구현되는 반면에, 다른 로직 모듈들은 프로세서(1106)와 같은 로직에 의해서 실행되는 소프트웨어 인스트럭션들에 의해서 제공될 수 있다. 그러나, 본 개시는 이로만 한정되는 것이 아니라 로직 모듈(1140) 및/또는 다른 로직 모듈은 하드웨어, 펌웨어 및/또는 소프트웨어의 임의의 조합으로서 구현될 수 있다. 또한, 메모리 저장 장치(1108)는 휘발성 메모리(예를 들어, SRAM(정적 RAM), DRAM(동적 RAM) 등), 비휘발성 메모리(예를 들어, 플래시 메모리 등) 등과 같은 임의의 타입의 메모리일 수 있다. 비한정적인 실례에서, 메모리 저장 장치(1108)는 캐시 메모리에 의해서 구현될 수 있다.
실시예들에서, 본 명세서에서 기술되는 특징들은 하나 이상의 컴퓨터 프로그램 제품들에 의해서 제공되는 인스트럭션에 응답하여서 수행될 수 있다. 이러한 컴퓨터 프로그램 제품들은 예를 들어 프로세서에 의해서 실행되어서 본 명세서에서 기술된 기능들을 제공할 수 있는 인스트럭션을 제공하는 신호 보유 매체를 포함할 수 있다. 컴퓨터 프로그램 제품들은 임의의 하나 이상의 머신 판독 가능한 매체의 형태로 제공될 수 있다. 따라서, 예를 들어, 하나 이상의 프로세서 코어(들)을 포함하는 프로세서는 하나 이상의 머신 판독 가능한 매체에 의해서 상기 프로세서에 전달되는 프로그램 코드 및/또는 인스트럭션 또는 인스트럭션 세트에 응답하여서 본 명세서에서의 예시적인 프로세스의 하나 이상의 특징들을 수행할 수 있다. 일반적으로, 머신 판독 가능한 매체는 본 명세서에서 기술된 임의의 디바이스 및/또는 시스템으로 하여금 본 명세서에서 기술되는 특징들의 적어도 일부분들을 구현하게 할 수 있는 프로그램 코드 및/또는 인스트럭션 또는 인스트럭션 세트의 형태로 된 소프트웨어를 전달할 수 있다.
도 12는 본 개시의 몇몇 실시예들에 따라서 구성된 예시적인 시스템(1200)의 도면이다. 다양한 실시예들에서, 시스템(1200)은 매체 시스템일 수 있지만 시스템(1200)은 이로만 한정되는 것은 아니다. 예를 들어, 시스템(1200)은 개인용 컴퓨터, 랩탑 컴퓨터, 초 랩탑 컴퓨터, 태블릿, 터치 패드, 이동형 컴퓨터, 휴대용 컴퓨터, 팜탑 컴퓨터, PDA, 셀룰러 전화, 셀룰러 전화와 PDA의 조합, 텔레비전, 스마트 디바이스(예를 들어, 스마트 폰, 스마트 태블릿 또는 스마트 텔레비전), MID(mobile internet device), 측정 디바이스, 데이터 통신 장치, 카메라(예를 들어, 포인트-앤드-슈트 카메라, 슈퍼 줌 카메라, DSLR(digital single-lens reflex) 카메라) 등을 포함할 수 있다.
다양한 실시예들에서, 시스템(1200)은 디스플레이(1220)에 연결된 플랫폼(1202)을 포함한다. 이 플랫폼(1202)은 콘텐츠 서비스 장치(1230) 또는 콘텐츠 전달 장치(1240) 또는 다른 유사한 콘텐츠 소스와 같은 콘텐츠 장치로부터 콘텐츠를 수신할 수 있다. 하나 이상의 네비게이션 특징을 포함하는 네비게이션 제어기(1250)는 예를 들어 플랫폼(1202) 및/또는 디스플레이(1220)와 상호 작용할 수 있다. 이들 구성 요소들 각각은 이하에서 보다 상세하게 기술된다.
다양한 실시예에서, 플랫폼(1202)은 칩세트(1205), 프로세서(1210), 메모리(1212), 안테나(1213), 저장 장치(1214), 그래픽 서브시스템(1215), 애플리케이션(1216) 및/또는 무선 장치(1218)의 임의의 조합을 포함할 수 있다. 칩세트(1205)는 프로세서(1210), 메모리(1212), 안테나(1213), 저장 장치(1214), 그래픽 서브시스템(1215), 애플리케이션(1216) 및/또는 무선 장치(1218) 간의 상호 통신을 제공할 수 있다. 예를 들어, 칩세트(1205)는 저장 장치(1214)와 상호 통신을 제공할 수 있는 저장 장치 어댑터(미도시)를 포함할 수 있다.
프로세서(1210)는 CISC(complex instruction set computer) 프로세서, RISC(reduced instruction set computer) 프로세서, x86 인스트럭센 세트 호환 가능 프로세서, 멀티 코어, 또는 임의의 다른 마이크로프로세서 또는 중앙 프로세싱 유닛(CPU)로서 구현될 수 있다. 다양한 실시예들에서, 프로세서(1210)는 듀얼 코어 프로세서, 듀얼 코어 모바일 프로세서 등일 수 있다.
메모리(1212)는 다음으로 한정되지 않지만 RAM, DRAM 또는 SRAM과 같은 휘발성 메모리 장치로서 구현될 수 있다.
저장 장치(1214)는 다음으로 한정되지 않지만 자기 디스크 드라이브, 광학 디스크 드라이브, 테이프 드라이브, 내부 저장 장치, 부착형 저장 장치, 플래시 메모리, 배터리 백업형 SDRAM(동기형 DRAM) 및/또는 네트워크 액세스 가능한 저장 장치와 같은 비휘발성 저장 장치로서 구현될 수 있다. 다양한 실시예들에서, 저장 장치(1214)는 예를 들어 다수의 하드 드라이브가 포함될 때에 중요한 디지털 매체를 위한 저장 성능 개선 보호 정도를 증가시키기 위한 기술을 포함할 수 있다.
그래픽 서브시스템(1215)은 디스플레이할 스틸 또는 비디오와 같은 이미지에 대한 프로세싱을 수행할 수 있다. 그래픽 서브시스템(1215)은 예를 들어 그래픽 프로세싱 유닛(GPU) 또는 시각적 프로세싱 유닛(VPU)일 수 있다. 디지털 또는 아날로그 인터페이스가 사용되어서 그래픽 서브시스템(1215) 및 디스플레이(1220)와 통신 가능하게 연결시킬 수 있다. 예를 들어, 인터페이스는 HDMI(high-definition multimedia interface), 디스플레이포트, 무선 HDMI 및/또는 무선 HD 호환 기술들 중 임의의 것일 수 있다. 그래픽 서브시스템(1215)은 프로세서(1210) 또는 칩세트(1205) 내에 통합될 수 있다. 몇몇 실시예들에서, 그래픽 서브시스템(1215)은 칩세트(1205)와 통신 가능하게 접속된 독립형 장치일 수 있다.
본 명세서에서 기술되는 그래픽 및/또는 비디오 프로세싱 기술들은 다양한 하드웨어 아키텍처로서 구현될 수 있다. 예를 들어, 그래픽 및/또는 비디오 기능은 칩세트 내에 통합될 수 있다. 이와 달리, 개별적인 그래픽 및/또는 비디오 프로세서가 사용될 수 있다. 또 다른 실시예로서, 그래픽 및/또는 비디오 기능들은 다중 코어 프로세서를 포함하는 범용 프로세서에 의해서 제공될 수 있다. 다른 실시예들에서, 이러한 기능들은 소비자 전자 장치에서 구현될 수 있다.
무선 장치(1218)는 다양한 적합한 무선 통신 기술들을 사용하여서 신호들을 송신 및 수신할 수 있는 하나 이상의 무선 장치들을 포함할 수 있다. 이러한 기술들은 하나 이상의 무선 네트워크에 걸쳐서 통신하는 것과 관련된다. 예시적인 무선 네트워크는 다음으로 한정되지 않지만 WLAN(wireless local area network), WPAN(wireless personal area network), WMAN(wireless metropolitan area network), 셀룰러 네트워크 및 인공 위성 네트워크를 포함한다. 이러한 네트워크에 걸쳐서 통신할 시에, 무선 장치(1218)는 임의의 버전의 하나 이상의 사용 가능한 표준들에 따라서 동작할 수 있다.
다양한 실시예들에서, 디스플레이(1220)은 임의의 텔레비전 타입 모니터 또는 디스플레이를 포함할 수 있다. 디스플레이(1220)는 예를 들어 컴퓨터 디스플레이 스크린, 터치 스크린 디스플레이, 비디오 모니터, 텔레비전형 장치 및/또는 텔레비전을 포함할 수 있다. 디스플레이(1220)는 디지털 및/또는 아날로그일 수 있다. 다양한 실시예들에서, 디스플레이(1220)는 홀로그래픽 디스플레이일 수 있다. 디스플레이(1220)는 또한 시각적 프로젝션(visual projection)을 수신할 수 있는 투명 표면일 수 있다. 이러한 프로젝션은 다양한 형태의 정보, 이미지 및/또는 객체들을 전달할 수 있다. 예를 들어, 이러한 프로젝션은 MAR(mobile augmented reality) 애플리케이션을 위한 시각적 오버레이(visual overlay)일 수 있다. 하나 이상의 소프트웨어 애플리케이션(1216)의 제어 하에서, 플랫폼(1202)은 디스플레이(1220) 상에 사용자 인터페이스(1222)를 디스플레이할 수 있다.
다양한 실시예들에서, 콘텐츠 서비스 장치(들)(1230)는 임의의 국내적, 국제적 및/또는 독립적 서비스에 의해서 호스트되며 따라서 예를 들어 인터넷을 통해서 플랫폼(1202)으로 액세스 가능할 수 있다. 콘텐츠 서비스 장치(들)(1230)는 플랫폼(1202) 및/또는 디스플레이(1220)에 연결될 수 있다. 플랫폼(1202) 및/또는 콘텐츠 서비스 장치(들)(1230)는 네트워크(1260)에 연결되어서 네트워크(1260)으로/으로부터 매체 정보를 통신(전송/수신)할 수 있다. 콘텐츠 전달 장치(들)(1240)는 또한 플랫폼(1202) 및/또는 디스플레이(1220)에 연결될 수 있다.
다양한 실시예들에서, 콘텐츠 서비스 장치(들)(1230)는 케이블 텔레비전 박스, 개인용 컴퓨터, 네트워크, 전화, 인터넷 구현형 장치, 디지털 정보 및/또는 콘텐츠를 전달할 수 있는 장치, 및 네트워크(1260)를 통해서 또는 직접적으로 콘텐츠 제공자와 플랫폼(1202) 및/또는 디스플레이(1220) 간에 콘텐츠를 일방향 또는 양방향으로 통신할 수 있는 임의의 다른 유사한 장치를 포함할 수 있다. 콘텐츠는 시스템(1200) 내의 임의의 하나의 구성 요소 및 콘텐츠 제공자에게/으로부터 네트워크(1260)를 통해서 양 방향 또는 단일 방향으로 통신(전송/수신)될 수 있다. 콘텐츠의 실례는 예를 들어 비디오, 뮤직, 의학 정보, 게임 정보 등을 포함하는 임의의 매체 정보를 포함할 수 있다.
콘텐츠 서비스 장치들(1230)은 매체 정보, 디지털 정보, 및/또는 다른 콘텐츠를 포함하는 케이블 텔레비전 프로그램과 같은 콘텐츠를 수신할 수 있다. 콘텐츠 제공자의 실레들은 임의의 케이블 콘텐츠 제공자 또는 인공 위성 텔레비전 콘텐츠 제공자 또는 무선 콘텐츠 제공자 또는 인터넷 콘텐츠 제공자를 포함할 수 있다. 제공된 실례들은 본 개시에 따른 실시예를 임의의 방식으로 한정하기 위한 것이 아니다.
다양한 실시예들에서, 플랫폼(1202)은 하나 이상의 네비게이션 특징부들을 갖는 네비게이션 제어기(1250)로부터 제어 신호를 수신할 수 있다. 이 제어기(1250)의 네비게이션 특징부들은 예를 들어 사용자 인터페이스(1222)와 상호 작용할 수 있다. 다양한 실시예들에서, 네비게이션 제어기(1250)는 사용자로 하여금 공간적 데이터(예를 들어, 연속 다차원 데이터)를 컴퓨터로 입력하게 할 수 있는 컴퓨터 하드웨어 구성 요소(구체적으로, 인간 인터페이스 장치)일 수 있는 포인팅 장치일 수 있다. 그래픽 유저 인터페이스(GUI) 및 텔레비전 및 모니터와 같은 다수의 시스템들은 사용자로 하여금 물리적 제스처를 사용하여서 데이터를 제어하고 이 데이터를 컴퓨터 또는 텔레비전에 제공하게 할 수 있다.
제어기(1250)의 네비게이션 특징부들의 이동은 포인터, 커서, 포커스 링 또는 디스플레이 상에 표시된 다른 시각적 표시자들의 이동에 의해서 디스플레이(예를 들어, 디스플레이(1220)) 상에서 복제될 수 있다. 예를 들어, 소프트웨어 애플리케이션(1216)의 제어 하에서, 네비게이션 제어기(1250) 상에 위치한 네비게이션 특징부들은 예를 들어 사용자 인터페이스(1222) 상에 표시된 가상 네비게이션 특징부들에 맵핑될 수 있다. 다양한 실시예들에서, 제어기(1250)는 별도의 구성 요소이지 않으며 플랫폼(1202) 및/또는 디스플레이(1220) 내에 통합될 수 있다. 그러나, 본 개시는 본 명세서에서 기술 또는 도시된 요소 또는 맥락으로만 한정되는 것은 아니다.
다양한 실시예들에서, 드라이버(미도시)는 사용자로 하여금 예를 들어 인에이블될 때에 초기 부팅 후에 버튼 터치로 텔레비전과 같은 플랫폼(1202)을 즉시 턴 온 또는 턴 오프할 수 있게 하는 기술들을 포함할 수 있다. 프로그램 로직은 플랫폼(1202)으로 하여금 상기 플랫폼이 턴 오프될 때에도 콘텐츠를 매체 어댑터 또는 다른 콘텐츠 서비스 장치들(1230)으로 스트리밍할 수 있게 할 수 있다. 또한, 칩세트(1205)는 예를 들어 5.1 서라운드 사운드 오디오 및/또는 하이 데피니션(high defintion) 7.1 서라운드 사운드 오디오를 위한 하드웨어 및/또는 소프트웨어 지원을 포함할 수 있다. 드라이버들은 통합된 그래픽 플랫폼을 위한 그래픽 드라이버를 포함할 수 있다. 다양한 실시예들에서, 그래픽 드라이버는 PCI(peripheral component interconnect) 익스프레스 그래픽 카드를 포함할 수 있다.
다양한 실시예들에서, 시스템(1200) 내에 도시된 구성 요소들 중 임의의 하나 이상은 통합될 수 있다. 예를 들어, 플랫폼(1202) 및 콘텐츠 서비스 장치(들))(1230)는 통합될 수 있거나, 플랫폼(1202) 및 콘텐츠 전달 장치(들))(1240)는 통합될 수 있거나, 플랫폼(1202) 및 콘텐츠 서비스 장치(들))(1230) 및 콘텐츠 전달 장치(들))(1240)는 통합될 수 있다. 다양한 실시예들에서, 플랫폼(1202) 및 디스플레이(1220)는 통합된 유닛일 수 있다. 예를 들어, 디스플레이(1220) 및 콘텐츠 서비스 장치(들))(1230)는 통합될 수 있거나, 디스플레이(1220) 및 콘텐츠 전달 장치(들))(1240)는 통합될 수 있다. 이러한 실례들은 본 개시를 한정하기 위한 것이 아니다.
다양한 실시예들에서, 시스템(1200)은 무선 시스템, 유선 시스템 또는 이들의 조합으로서 구현될 수 있다. 무선 시스템으로서 구현되는 경우에, 시스템(1200)은 하나 이상의 안테나, 송신기, 수신기, 송수신기, 증폭기, 필터, 제어 로직 등과 같은 무선 공유형 매체 상에서 통신 가능하기에 적합한 구성 요소들 및 인터페이스를 포함할 수 있다. 무선 공유형 매체의 실례는 RF 스펙트럼 등과 같은 무선 스펙트럼의 일부분들을 포함할 수 있다. 유선 시스템으로서 구현되는 경우에, 시스템(1200)은 입출력 어댑터, 이 입출력 어댑터를 대응하는 유선 통신 매체와 접속시키는 물리적 커넥터와, NIC(network interface card), 디스크 제어기, 비디오 제어기, 오디오 제어기 등과 같은, 유선 통신 매체 상에서 통신 가능하기에 적합한 구성 요소들 및 인터페이스를 포함할 수 있다. 유선 통신 매체의 실례는 와이어, 케이블, 금속 리드, PCB(인쇄 회로 기판), 백플레인, 스위치 페브릭, 반도체 재료, 트위스트된 쌍 와이어, 동축 케이블, 광 섬유 등을 포함할 수 있다.
플랫폼(1202)은 정보를 통신하기 위한 하나 이상의 논리적 또는 물리적 채널들을 확립할 수 있다. 이 정보는 매체 정보 및 제어 정보를 포함할 수 있다. 매체 정보는 사용자에게 의도된 콘텐츠를 나타내는 임의의 데이터를 말할 수 있다. 이러한 콘텐츠의 실례는 예를 들어 음성 대화 데이터, 비디오컨퍼런스 데이터, 스트리밍 비디오, 전자 메일 메시지, 음성 메일 메시지, 알파뉴메릭 심볼(alphanumeric sysmbol), 그래픽, 이미지, 비디오, 텍스트 등을 포함할 수 있다. 음성 대화 데이터는 예를 들어 스피치 정보, 무음(silence) 기간, 백그라운드 노이즈, 컴포트 노이즈(comfort noise), 톤 등일 수 있다. 제어 정보는 자동화 시스템에 대해서 의도된 명령, 인스트럭션, 또는 제어어(controld word)를 나타내는 임의의 데이터를 말한다. 예를 들어, 제어 정보는 매체 정보를 시스템을 통해서 라우팅하거나 노드로 하여금 사전 결정된 방식으로 매체 정보를 프로세싱하도록 하는데 사용될 수 있다. 그러나, 실시예들은 도 12에 도시 또는 기술된 요소들 또는 맥락으로 한정되는 것은 아니다.
상술한 바와 같이, 시스템(1200)은 가변 물리적 스타일 또는 폼 팩터(form factor)로 해서 구현될 수 있다. 도 13은 본 시스템이 구현될 수 있는 소형 폼 팩터 장치(1300)의 실시예를 나타내고 있다. 다양한 실시예들에서, 예를 들어, 이 장치(1300)는 무선 기능을 갖는 이동 컴퓨팅 장치로서 구현될 수 있다. 이동 컴퓨팅 장치는 예를 들어 하나 이상의 배터리와 같은 이동 전력 소스 또는 공급원 및 프로세싱 시스템을 구비한 임의의 장치를 말한다.
상술한 바와 같이, 이동 컴퓨팅 장치의 실례는 개인용 컴퓨터, 랩탑 컴퓨터, 초 랩탑 컴퓨터, 태블릿, 터치 패드, 이동형 컴퓨터, 휴대용 컴퓨터, 팜탑 컴퓨터, PDA, 셀룰러 전화, 셀룰러 전화와 PDA의 조합, 텔레비전, 스마트 디바이스(예를 들어, 스마트 폰, 스마트 태블릿 또는 스마트 텔레비전), MID(mobile internet device), 측정 디바이스, 데이터 통신 장치, 카메라(예를 들어, 포인트-앤드-슈트 카메라, 슈퍼 줌 카메라, DSLR(digital single-lens reflex) 카메라) 등을 포함할 수 있다.
또한, 이동 컴퓨팅 장치의 실례들은 손목 컴퓨터, 핑거 컴퓨터, 링 컴퓨터, 안경형 컴퓨터, 벨트 클립 컴퓨터, 팔 밴드 컴퓨터, 신발 컴퓨터, 옷 착용 컴퓨터, 및 다른 착용 가능한 컴퓨터와 같은 개인에 의해서 착용되도록 구성된 컴퓨터들을 포함할 수 있다. 다양한 실시예들에서, 예를 들어, 이동 컴퓨팅 장치는 컴퓨터 애플리케이션 및 음성 통신 및/또는 데이터 통신을 실행할 수 있는 스마트 폰으로서 구현될 수 있다. 몇몇 실시예들이 예시적으로 스마트 폰으로서 구현된 이동 컴퓨팅 장치에 대해서 기술될지라도, 다른 실시예들은 다른 무선 이동 컴퓨팅 장치를 사용하여서 역시 구현될 수 있다. 실시예들은 이러한 맥락으로 한정되지 않는다.
도 13에 도시된 바와 같이, 장치(1300)는 하우징(1302), 디스플레이(1304), 입출력 장치(1306), 및 안테나(1308)를 포함할 수 있다. 이 장치(1300)는 또한 네비게이션 특징부들(1312)을 포함할 수 있다. 디스플레이(1304)는 이동 컴퓨팅 장치를 위해서 적합한 정보를 디스플레이하기 위한 임의의 적합한 디스플레이 유닛을 포함할 수 있다. 입출력 장치(1306)는 정보를 이동 컴퓨팅 장치에 입력하기에 적합한 임의의 입출력 장치들을 포함할 수 있다. 이러한 입출력 장치(1306)의 실례들은 알파뉴메릭 키보드, 숫자 키패드, 터치 패드, 입력 키, 버튼, 스위치, 로커 스위치(rocker switch), 마이크로폰, 스피커, 음성 인식 장치 및 소프트웨어 등을 포함할 수 있다. 또한, 정보는 마이크로폰(미도시)에 의해서 장치(1300)로 입력될 수 있다. 이러한 정보는 음성 인식 장치(미도시)에 의해서 디지털화될 수 있다. 실시예들은 이러한 맥락으로 한정되지 않는다.
다양한 실시예들은 하드웨어 요소, 소프트웨어 요소 또는 이들의 조합을 사용하여서 구현될 수 있다. 하드웨어 요소의 실례는 프로세서, 마이크로프로세서, 회로, 회로 요소(예를 들어, 트랜지스터, 저항, 커패시터, 인덕터 등), 집적 회로, ASIC, PLD(프로그램 가능한 로직 디바이스), DSP(디지털 신호 프로세서), FPGA(field programmable gate array), 로직 게이트, 레지스터, 반도체 소자, 칩, 마이크로칩, 칩 세트 등을 포함할 수 있다. 소프트웨어 요소의 실례는 소프트웨어 구성 요소, 프로그램, 애플리케이션, 컴퓨터 프로그램, 애플리케이션 프로그램, 시스템 프로그램, 머신 프로그램, 운영 체제 소프트웨어, 미들웨어, 펌웨어, 소프트웨어 모듈, 루틴, 서브루틴, 기능, 방법, 프로시저, 소프트웨어 인터페이스, API(application program interface), 인스트럭션 세트, 컴퓨팅 코드, 컴퓨터 코드, 코드 세그먼트, 컴퓨터 코드 세그먼트, 워드, 값, 심볼, 또는 이들의 임의의 조합을 포함할 수 있다. 실시예가 하드웨어 요소 및/또는 소프트웨어 요소를 사용하여서 구현되는지의 여부를 판정하는 것은 소망하는 계산 레이트, 전력 레벨, 열 허용치, 프로세싱 사이클 예산, 입력 데이터 레이트, 출력 데이터 레이트, 메모리 자원, 데이터 버스 속도 및 다른 설계 또는 성능 제약 사항들과 같은 임의의 개수의 요인들에 따라서 변할 수 있다.
적어도 하나의 실시예의 하나 이상의 측면들은 프로세서 내의 다양한 로직을 나타내는 머신 판독 가능한 매체 상에 저장되어서 머신에 의해서 판독되어서 이 머신으로 하여금 본 명세서에서 기술된 기술들을 수행하는 로직을 작성하게 하는 표현적인 인스트럭션들에 의해서 구현될 수 있다. "IP 코어"로 알려진 이러한 표현적 인스트럭션들은 유형의 머신 판독 가능한 매체 상에 저장되어 실제로 로직 또는 프로세서를 작성 또는 가공할 수 있는 가공 머신으로 로딩되도록 다양한 소비자 또는 제조 시설에 공급될 수 있다.
본 명세서에서 제안된 소정의 특징들은 다양한 실시예들을 참조하여서 기술되었지만, 이러한 기술 사항들은 한정적인 의미로 해석되어서는 안된다. 따라서, 본 기술 분야의 당업자에게는 자명한, 본 명세서에서 개시된 실시예들에 대한 다양한 수정 및 다른 실시예들은 본 개시의 사상 및 범위 내에 포함될 수 있다.
다음의 실례들은 다른 실시예들에 관한 것이다.
일 실례에서, 스케일러블 비디오 코딩(scalable video coding)을 수행하기 위한 컴퓨터 구현 방법은 고정형 리파이닝 필터(fixed refining filter)를 재구성된 레퍼런스 층 비디오 데이터(reconstructed reference layer video data)에 적용하여서 리파이닝된 재구성된 비디오 데이터(refined reconstructed video data)를 생성하는 단계를 포함한다. 상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 상기 리파이닝된 재구성된 비디오 데이터와 연관된 인핸스먼트 층(enhancement layer)에 대하여 층 간 예측(inter layer prediction)이 수행될 수 있다.
다른 실례에서, 스케일러블 비디오 코딩을 수행하기 위한 컴퓨터 구현 방법은 상기 고정형 리파이닝 필터를 적용하기 이전에, 하위 층 프로세싱(lower layer processing)을 상기 재구성된 이미지 데이터에 적용하는 단계를 더 포함할 수 있으며, 상기 하위 층 프로세싱은 공간적 스케일러빌러티를 위한 업-샘플링 또는 비트 깊이 스케일러빌러티를 위한 톤 맵핑 중 적어도 하나를 포함한다. 상기 고정형 리파이닝 필터를 적용하기 이전에, 다수의 채용된 고정형 리파이닝 필터 중에서, 상기 재구성된 레퍼런스 층 비디오 데이터에 대한 평가의 결과에 적어도 부분적으로 기초하여서 상기 고정형 리파이닝 필터를 적용할 것을 결정할 수 있다. 상기 평가는 국부적 적응성 방법(local adaptive method)에 적어도 부분적으로 기초한다. 상기 평가는 상기 재구성된 레퍼런스 층 비디오 데이터의 국부 에지 정보, 상기 재구성된 레퍼런스 층 비디오 데이터의 구배 강도 또는 상기 재구성된 레퍼런스 층 비디오 데이터의 국부 편차 중 적어도 하나를 평가하는 것을 포함할 수 있다. 상기 층 간 예측에 적어도 부분적으로 기초하여서 비트 스트림을 인코딩할 수 있다. 상기 비트 스트림은 레지듀얼 코딩(residual coding)으로 인코딩될 수 있다. 상기 비트 스트림을 인코딩하는 것은 상기 비트 스트림을 표시자를 갖도록 인코딩할 수 있다. 상기 표시자는 상기 고정형 리파이닝 필터를 적용할지의 여부를 특정하며 상기 표시자는 비트 스트림 플래그를 포함한다. 다수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 갖도록 상기 비트 스트림을 인코딩할 수 있다. 상기 비디오 데이터와 연관된 상기 비트 스트림에 액세스하여서 상기 고정형 리파이닝 필터를 적용할지의 여부를 특정하는 상기 표시자를 판정할 수 있다. 상기 표시자는 상기 비트 스트림 플래그를 포함할 수 있다. 상기 비디오 데이터와 연관된 상기 비트 스트림에 액세스하여서 상기 다수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지를 표시하도록 구성된 상기 고정형 리파이닝 필터 표시자를 판정할 수 있다. 상기 층 간 예측에 적어도 부분적으로 기초하여서 상기 인핸스먼트 층과 연관된 인핸스먼트 층 출력 비디오 데이터를 생성할 수 있다. 상기 고정형 리파이닝 필터를 적용하는 것은 단일 고정형 리파이닝 필터를 사용하는 것을 포함할 수 있으며 상기 단일 고정형 리파이닝 필터는 저역 통과 필터를 포함할 수 있다. 상기 고정형 리파이닝 필터를 적용하는 것은 다수의 고정형 리파이닝 필터를 채용하여서 상기 다수의 고정형 리파이닝 필터 중 상기 고정형 리파이닝 필터를 적용하는 것을 포함할 수 있다. 상기 고정형 리파이닝 필터를 적용하는 것은 상기 재구성된 레퍼런스 층 비디오 데이터와 필터 계수 간의 도트 프로덕트(dot product)를 취하고 이에 오프셋 값을 가산하는 것을 포함할 수 있다. 상기 고정형 리파이닝 필터를 적용하는 것은 상기 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터의 필터 윈도우에 적용하는 것을 포함할 수 있다. 상기 다수의 고정형 리파이닝 필터는 대칭형 고정형 리파이닝 필터, 비대칭형 고정형 리파이닝 필터, 1 차원 고정형 리파이닝 필터, 분리 가능한 고정형 리파이닝 필터, 비분리형 고정형 리파이닝 필터, 공간적 평탄화 필터, 공간적 샤프닝 필터(spatial sharpening filter), 특정 히스토그램 대역 인핸스먼트 필터, 특정 히스토그램 대역 통과 필터, 저 주파수 인핸스먼트 필터, 고 주파수 인핸스먼트 필터, 특정 주파수 대역 인핸스먼트 필터, 고역 통과 필터, 대역 통과 필터 또는 저역 통과 필터 중 적어도 하나를 포함할 수 있다. 상기 고정형 리파이닝 필터를 적용하는 것은 상기 고정형 리파이닝 필터 및 제 2 고정형 리파이닝 필터를 채용하여서 상기 고정형 리파이닝 필터를 적용하는 것을 포함할 수 있다. 상기 고정형 리파이닝 필터는 제 1 인핸스먼트 효과를 제공하며, 상기 제 2 고정형 리파이닝 필터는 제 2 인핸스먼트 효과를 제공할 수 있다. 상기 제 1 인핸스먼트 효과 및 제 2 인핸스먼트 효과는 서로 상이할 수 있다. 상기 제 1 인핸스먼트 효과는 저 주파수 인핸스먼트 효과, 고 주파수 인핸스먼트 효과, 특정 주파수 대역 내의 인핸스먼트 효과, 공간적 평탄화 필터, 공간적 샤프닝 필터(spatial sharpening filter), 특정 히스토그램 대역 인핸스먼트 필터 또는 특정 히스토그램 대역 통과 필터 중 적어도 하나를 포함할 수 있다. 상기 제 2 고정형 리파이닝 필터를 적용하는 것은 상기 재구성된 레퍼런스 층 비디오 데이터와 제 2 필터 계수 간의 도트 프로덕트(dot product)를 취하고 이에 제 2 오프셋 값을 가산하는 것을 포함할 수 있다. 상기 제 2 고정형 리파이닝 필터에 대한 상기 제 2 오프셋 값은 상기 고정형 리파이닝 필터에 대한 상기 오프셋 값과 상이할 수 있다. 상기 고정형 리파이닝 필터는 저역 통과 필터를 포함하며, 상기 제 2 고정형 리파이닝 필터는 고 주파수 인핸스먼트 필터를 포함할 수 있다. 상기 재구성된 레퍼런스 층 비디오 데이터는 영상(picture), 슬라이스 또는 블록 중 적어도 하나를 포함할 수 있다. 상기 재구성된 레퍼런스 층 비디오 데이터는 상기 비디오 데이터의 레퍼런스 층과 연관될 수 있다. 상기 레퍼런스 층은 베이스 층 또는 제 2 인핸스먼트 층 중 적어도 하나를 포함할 수 있다. 상기 인핸스먼트 층은 상기 제 2 인핸스먼트 층보다 상위 층이며, 상기 레퍼런스 층과 상기 인핸스먼트 층은 스케일러빌러티만큼 상이하며, 상기 스케일러빌러티는 품질 스케일러빌러티, 시간 스케일러빌러티 또는 비트 깊이 스케일러빌러티 중 적어도 하나를 포함할 수 있다. 상기 레퍼런스 층은 베이스 층을 포함하며 상기 인핸스먼트 층은 레벨 1 인핸스먼트 층을 포함할 수 있다. 상기 층 간 예측을 수행하는 것은 인핸스먼트 층 디코더 또는 베이스 층 디코더 중 적어도 하나를 통해서 층 간 예측을 수행하는 것을 포함할 수 있다. 상기 인핸스먼트 층 디코더는 적어도 부분적으로 하드웨어로 해서 구현될 수 있다. 상기 층 간 예측을 수행하는 것은 인핸스먼트 층 인코더 또는 베이스 층 인코더 중 적어도 하나를 통해서 층 간 예측을 수행하는 것을 포함할 수 있다.
다른 실례에서, 컴퓨터 상에서 비디오 코딩을 위한 시스템은 디스플레이 디바이스와, 하나 이상의 프로세서와, 하나 이상의 메모리 저장 장치와, 층 간 예측 모듈과 인핸스먼트 층 비디오 코더 등 및/또는 이들의 조합을 포함할 수 있다. 디스플레이 디바이스는 비디오 데이터를 제공하도록 구성될 수 있다. 하나 이상의 프로세서는 상기 디스플레이 디바이스에 통신 가능하게 연결될 수 있다. 하나 이상의 메모리 저장 장치는 상기 하나 이상의 프로세서와 통신 가능하게 연결될 수 있다. 상기 층 간 예측 모듈은 상기 하나 이상의 프로세서와 통신 가능하게 연결되어, 리파이닝된 재구성된 비디오 데이터에 적어도 일부 기초하여 그 비디오 데이터와 연관된 인핸스먼트 층을 위한 층 간 예측을 수행하도록 구성된다. 상기 인핸스먼트 층 비디오 코더는 상기 하나 이상의 프로세서와 통신 가능하게 연결되어, 상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 상기 리파이닝된 재구성된 비디오 데이터와 연관된 인핸스먼트 층에 대하여 층 간 예측을 수행하도록 구성될 수 있다. 상기 디스플레이 디바이스를 통한 이미지 데이터 제공은 상기 층 간 예측에 적어도 부분적으로 기초할 수 있다.
다른 예시적인 시스템에서, 상기 층 간 예측 모듈은 상기 고정형 리파이닝 필터를 적용하기 이전에, 하위 층 프로세싱(lower layer processing)을 상기 재구성된 이미지 데이터에 적용하도록 구성될 수 있다. 상기 하위 층 프로세싱은 공간적 스케일러빌러티(spatial scalability)를 위한 업-샘플링 또는 비트 깊이 스케일러빌러티를 위한 톤 맵핑 중 적어도 하나를 포함할 수 있다. 상기 층 간 예측 모듈은 상기 고정형 리파이닝 필터를 적용하기 이전에, 다수의 채용된 고정형 리파이닝 필터 중에서, 상기 재구성된 레퍼런스 층 비디오 데이터에 대한 평가의 결과에 적어도 부분적으로 기초하여서 상기 고정형 리파이닝 필터를 적용할 것을 결정하도록 구성될 수 있다. 상기 평가는 국부적 적응성 방법(local adaptive method)에 적어도 부분적으로 기초할 수 있다. 상기 평가는 상기 재구성된 레퍼런스 층 비디오 데이터의 국부 에지 정보, 상기 재구성된 레퍼런스 층 비디오 데이터의 구배 강도 또는 상기 재구성된 레퍼런스 층 비디오 데이터의 국부 편차 중 적어도 하나를 평가하는 것을 포함할 수 있다. 상기 인핸스먼트 층 비디오 코더는 상기 층 간 예측에 적어도 부분적으로 기초하여서 비트 스트림을 인코딩하도록 구성될 수 있다. 상기 비트 스트림은 레지듀얼 코딩(residual coding)으로 인코딩될 수 있다. 상기 비트 스트림을 인코딩하는 것은 상기 비트 스트림을 표시자를 갖도록 인코딩하며, 상기 표시자는 상기 고정형 리파이닝 필터를 적용할지의 여부를 특정할 수 있다. 상기 표시자는 비트 스트림 플래그를 포함할 수 있다. 상기 인핸스먼트 층 비디오 코더는 다수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 갖도록 상기 비트 스트림을 인코딩하도록 구성될 수 있다. 상기 인핸스먼트 층 비디오 코더는 상기 비디오 데이터와 연관된 비트 스트림에 액세스하여서 표시자를 판정하도록 구성될 수 있다. 상기 표시자는 고정형 리파이닝 필터에 적용할 지의 여부를 명시하도록 구성될 수 있다. 상기 표시자는 비트 스트림 플래그를 포함할 수 있다. 상기 인핸스먼트 층 비디오 코더는 상기 비디오 데이터와 연관된 비트 스트림에 액세스하여서 다수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 판정하도록 구성될 수 있다. 상기 인핸스먼트 층 비디오 코더는 상기 층 간 예측에 적어도 부분적으로 기초하여서 상기 인핸스먼트 층과 연관된 인핸스먼트 층 출력 비디오 데이터를 생성하는 것을 수행하도록 구성될 수 있다. 상기 층 간 예측 모듈은 단일 고정형 리파이닝 필터를 사용함으로써 상기 고정형 리파이닝 필터를 적용하도록 구성될 수 있다. 상기 단일 고정형 리파이닝 필터는 저역 통과 필터를 포함할 수 있다. 상기 층 간 예측 모듈은 다수의 고정형 리파이닝 필터를 사용하여서 상기 다수의 고정형 리파이닝 필터 중 상기 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터에 적용함으로써 상기 고정형 리파이닝 필터를 적용하도록 구성될 수 있다. 상기 층 간 예측 모듈은 상기 재구성된 레퍼런스 층 비디오 데이터와 필터 계수 간의 도트 프로덕트를 판정하고 이에 오프셋 값을 가산함으로써 상기 고정형 리파이닝 필터를 적용하도록 구성될 수 있다. 상기 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터에 적용하는 것은 상기 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터의 필터 윈도우에 적용하는 것을 포함할 수 있다. 상기 다수의 고정형 리파이닝 필터는 대칭형 고정형 리파이닝 필터, 비대칭형 고정형 리파이닝 필터, 1 차원 고정형 리파이닝 필터, 분리 가능한 이차원 고정형 리파이닝 필터, 비분리형 이차원 고정형 리파이닝 필터, 공간적 평탄화 필터, 공간적 샤프닝 필터(spatial sharpening filter), 특정 히스토그램 대역 인핸스먼트 필터, 특정 히스토그램 대역 통과 필터, 저 주파수 인핸스먼트 필터, 고 주파수 인핸스먼트 필터, 특정 주파수 대역 인핸스먼트 필터, 고역 통과 필터, 대역 통과 필터 또는 저역 통과 필터 중 적어도 하나를 포함할 수 있다. 상기 층 간 예측 모듈은 상기 고정형 리파이닝 필터 및 제 2 고정형 리파이닝 필터를 사용하여서 상기 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터에 적용함으로써 상기 고정형 리파이닝 필터를 적용하도록 구성될 수 있다. 상기 고정형 리파이닝 필터는 제 1 인핸스먼트 효과를 제공하도록 구성되며, 상기 제 2 고정형 리파이닝 필터는 제 2 인핸스먼트 효과를 제공하도록 구성될 수 있다. 상기 제 1 인핸스먼트 효과 및 제 2 인핸스먼트 효과는 서로 상이할 수 있다. 상기 제 1 인핸스먼트 효과는 저 주파수 인핸스먼트 효과, 고 주파수 인핸스먼트 효과, 특정 주파수 대역 내의 인핸스먼트 효과, 공간적 평탄화 필터, 공간적 샤프닝 필터(spatial sharpening filter), 특정 히스토그램 대역 인핸스먼트 필터 또는 특정 히스토그램 대역 통과 필터 중 적어도 하나를 포함할 수 있다. 상기 층 간 예측 모듈은 상기 재구성된 레퍼런스 층 비디오 데이터와 제 2 필터 계수 간의 도트 프로덕트를 판정하고 이에 제 2 오프셋 값을 가산함으로써 상기 제 2 고정형 리파이닝 필터를 적용하도록 구성될 수 있다. 상기 제 2 고정형 리파이닝 필터에 대한 상기 제 2 오프셋 값은 상기 고정형 리파이닝 필터에 대한 상기 오프셋 값과 상이할 수 있다. 상기 고정형 리파이닝 필터는 저역 통과 필터를 포함하며, 상기 제 2 고정형 리파이닝 필터는 고 주파수 인핸스먼트 필터를 포함할 수 있다. 상기 재구성된 레퍼런스 층 비디오 데이터는 영상(picture), 슬라이스 또는 블록 중 적어도 하나를 포함할 수 있다. 상기 재구성된 레퍼런스 층 비디오 데이터는 상기 비디오 데이터의 레퍼런스 층과 연관된다. 상기 레퍼런스 층은 베이스 층 또는 제 2 인핸스먼트 층 중 적어도 하나를 포함하며, 상기 인핸스먼트 층은 상기 제 2 인핸스먼트 층보다 상위 층이다. 상기 레퍼런스 층과 상기 인핸스먼트 층은 스케일러빌러티만큼 상이할 수 있다. 상기 스케일러빌러티는 품질 스케일러빌러티, 시간 스케일러빌러티 또는 비트 깊이 스케일러빌러티 중 적어도 하나를 포함할 수 있다. 상기 레퍼런스 층은 베이스 층을 포함하며 상기 인핸스먼트 층은 레벨 1 인핸스먼트 층을 포함할 수 있다. 상기 층 간 예측 모듈은 상기 인핸스먼트 층 비디오 코더 또는 베이스 층 비디오 코더 중 적어도 하나를 통해서 구현될 수 있다. 상기 인핸스먼트 층 비디오 코더는 인핸스먼트 층 비디오 디코더 또는 인핸스먼트 층 비디오 인코더 중 적어도 하나를 포함할 수 있다.
다른 실례들에서, 실시예들은 다음의 구성 요소들을 포함할 수 있다:
(1) 리파이닝 필터링을 수행하여서 스케일러블 비디오 코덱 실시예이 층 간 예측을 개선하는 메카니즘; (a) 프로세싱된 하위 층 재구성된 영상들에 대한 리파이닝 필터링을 적용함으로써 SVC 층 간 예측을 개선하는 메카니즘(여기서, 하위 층 재구성된 영상 프로세싱은 예를 들어 공간적 스케일러빌러티를 위한 업-샘플링, 비트-깊이 스케일러빌러티를 위한 톤 맵핑 또는 임의의 프로세싱이 없이 통과하는 것을 포함할 수 있다. 이러한 리파이닝의 목적은 인핸스먼트 층의 입력 픽셀과 그의 하위 층의 프로세싱된 재구성된 픽셀 간의 차/왜곡을 저감시키는 것이다).
(2) 오프셋을 갖는 다수의 고정형 필터들을 사용하여서 층 간 예측을 개선하는 메카니즘; (a) 몇몇 실시예들에서, 오프셋 값들은 제로로 강제될 수 있으며; (b) 몇몇 실시예들에서, 고정형 필터 계수들은 제로로 강제될 수 있으며 오직 오프셋 값만이 유효하며; (c) 몇몇 실시예들에서, 오프셋을 갖는 오직 하나의 고정형 필터만이 사용될 수 있으며; (d) 몇몇 실시예들에서, 오프셋들을 갖는 2 개 이상의 고정형 필터 세트가 사용될 수 있다.
(3) 상이한 인핸스먼트 효과들을 갖는 다수의 고정형 필터를 사용하여서 층 간 예측을 개선하는 메카니즘; (a) 몇몇 실시예들에서, 영상의 저 주파수를 인핸싱하는 필터가 사용되어서 평탄한 예측성 영상을 생성하며; (b) 몇몇 실시예들에서, 영상의 고 주파수를 인핸싱하는 필터를 사용하여서 샤프한 예측성 영상을 생성하고; (c) 몇몇 실시예들에서, 영상의 소정의 주파수 대역을 인핸싱하는 필터가 사용되어서 선택적 예측성 영상을 생성할 수 있다.
(4) 상이한 레벨에서 리파이닝 필터링을 적용하여서 층 간 예측을 개선하는 메카니즘; (a) 리파이닝 필터가 시퀀스/층/영상/슬라이스/블록 레벨에서 턴 온 또는 턴 오프될 수 있으며; (b) 최상의 필터가 시퀀스/층/영상/슬라이스/블록 레벨에서 스위칭될 수 있다.
(5) 리파이닝 필터의 사용을 적응적으로 결정하여서 층 간 예측을 개선하는 메카니즘; (a) 몇몇 실시예들에서, 리파이닝 필터가 적용될지의 여부 및 리파이닝을 위해서 어느 필터가 사용될지를 결정하는 것은 인코더에 의해서 수행되며 이러한 결정을 표시하는 플래그들이 비스 스트림 내에 포함되어서 디코더에 전송되며; (b) 몇몇 실시예들에서, 리파이닝 필터가 적용될지의 여부 및 리파이닝을 위해서 어느 필터가 사용될지를 결정하는 것은 사전 필터링 영상의 국부적 특성을 분석함으로써 이루어질 수 있다. 국부 에지 정보, 구배 강도, 국부 편차 및 다른 측정치가 사용되어서 리파이닝 필터의 사용을 결정할 수 있다. 디코더 및 인코더 모두가 동일한 절차를 수행하고 동일한 결정 결과를 생성하며 이로써 어떠한 추가적인 플래그가 비트 스트림 내에 포함될 필요가 없다.
다른 실례에서, 적어도 하나의 머신 판독 가능한 매체는 컴퓨팅 디바이스에서 실행되어서 이 컴퓨팅 디바이스로 하여금 상술한 실례들의 임의의 하나에 따른 방법을 수행하게 하는 다수의 인스트럭션들을 포함할 수 있다.
또 다른 실례에서, 장치는 상술한 실례들 중 임의의 하나에 따른 방법들을 수행하기 위한 수단들을 포함할 수 있다.
상술한 실례들은 특징들의 특정 조합을 포함할 수 있다. 그러나, 이러한 상술한 실례들은 이로 한정되는 것이 아니라 다양한 구현예에서, 상술한 실례들은 오직 이러한 특징들의 서브세트만을 수행하는 것, 이러한 특징들의 상이한 순서를 수행하는 것, 이러한 특징들의 상이한 조합을 수행하는 것 및/또는 명시적으로 열거된 이러한 특징들 이외의 다른 추가 특징들을 수행하는 것들을 포함할 수 있다. 예를 들어, 예시적인 방법들에 대해서 기술된 모든 특징들은 예시적인 장치, 예시적인 시스템 및/또는 예시적인 제품에 대해서도 구현될 수 있으며 이와 반대의 경우도 적용될 수 있다.
Claims (25)
- 스케일러블 비디오 코딩(scalable video coding)을 수행하기 위해 컴퓨터로 구현된 방법으로서,
재구성된 레퍼런스 층 비디오 데이터(reconstructed reference layer video data)에 고정형 리파이닝 필터(a fixed refining filter)를 적용하여, 리파이닝된 재구성된 비디오 데이터(refined reconstructed video data)를 생성하는 단계 - 상기 리파이닝된 재구성된 비디오 데이터를 생성하는 것은, 소정의 이미지 단위마다 복수의 고정형 리파이닝 필터 각각에 의해 처리된 비디오 데이터에 대해 계산된 함수값을 임계값과 비교함으로써 상기 복수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지 선택하고, 선택된 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터에 적용하는 것을 포함함 - 와,
상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여, 상기 리파이닝된 재구성된 비디오 데이터와 연관된 인핸스먼트 층(enhancement layer)에 대하여 층 간 예측(inter layer prediction)을 수행하는 단계와,
상기 복수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 갖도록 비트 스트림을 인코딩하는 단계를 포함하는
컴퓨터로 구현된 방법.
- 삭제
- 제 1 항에 있어서,
상기 고정형 리파이닝 필터를 적용하는 것은 상기 재구성된 레퍼런스 층 비디오 데이터와 필터 계수 간의 도트 프로덕트(dot product)를 취하고 이에 오프셋 값을 가산하는 것을 포함하며,
상기 고정형 리파이닝 필터를 적용하는 것은 상기 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터의 필터 윈도우에 적용하는 것을 포함하는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 복수의 고정형 리파이닝 필터는 제 1 고정형 리파이닝 필터 및 제 2 고정형 리파이닝 필터를 포함하며,
상기 제 1 고정형 리파이닝 필터는 제 1 인핸스먼트 효과를 제공하고, 상기 제 2 고정형 리파이닝 필터는 제 2 인핸스먼트 효과를 제공하고, 상기 제 1 인핸스먼트 효과 및 제 2 인핸스먼트 효과는 서로 상이하며,
상기 제 1 인핸스먼트 효과는 저 주파수 인핸스먼트 효과, 고 주파수 인핸스먼트 효과, 특정 주파수 대역 내의 인핸스먼트 효과, 공간적 평탄화 필터, 공간적 샤프닝 필터(spatial sharpening filter), 특정 히스토그램 대역 인핸스먼트 필터 또는 특정 히스토그램 대역 통과 주파수 필터 중 적어도 하나를 포함하는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 복수의 고정형 리파이닝 필터는 대칭형 고정형 리파이닝 필터, 비대칭형 고정형 리파이닝 필터, 1 차원 고정형 리파이닝 필터, 분리 가능한 2 차원 고정형 리파이닝 필터 또는 비분리형 2 차원 고정형 리파이닝 필터 중 적어도 하나를 포함하는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 복수의 고정형 리파이닝 필터는 공간적 평탄화 필터 또는 공간적 샤프닝 필터 중 적어도 하나를 포함하는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 복수의 고정형 리파이닝 필터는 특정 히스토그램 대역 인핸스먼트 필터 또는 특정 히스토그램 대역 통과 주파수 필터 중 적어도 하나를 포함하는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 복수의 고정형 리파이닝 필터는 저 주파수 인핸스먼트 필터, 고 주파수 인핸스먼트 필터, 특정 주파수 대역 내의 인핸스먼트 필터, 고역 통과 주파수 필터, 대역 통과 주파수 필터 또는 저역 통과 주파수 필터(low-pass frequency filter) 중 적어도 하나를 포함하는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 고정형 리파이닝 필터를 적용하기 이전에, 하위 층 프로세싱(lower layer processing)을 상기 재구성된 레퍼런스 층 비디오 데이터에 적용하는 단계를 더 포함하며,
상기 하위 층 프로세싱은 공간적 스케일러빌러티(spatial scalability)를 위한 업-샘플링 또는 비트 깊이 스케일러빌러티를 위한 톤 맵핑 중 적어도 하나를 포함하는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 고정형 리파이닝 필터를 적용하기 이전에, 상기 복수의 고정형 리파이닝 필터 중에서, 상기 재구성된 레퍼런스 층 비디오 데이터에 대한 평가의 결과에 적어도 부분적으로 기초하여서 어느 고정형 리파이닝 필터를 적용할 것을 결정하는 단계를 더 포함하며,
상기 평가는 국부적 적응성 방법(local adaptive method)에 적어도 부분적으로 기초하며,
상기 평가는 상기 재구성된 레퍼런스 층 비디오 데이터의 국부 에지 정보, 상기 재구성된 레퍼런스 층 비디오 데이터의 구배 강도 또는 상기 재구성된 레퍼런스 층 비디오 데이터의 국부 편차 중 적어도 하나를 평가하는 것을 포함하는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 비트 스트림은 상기 층 간 예측에 적어도 부분적으로 기초하여 인코딩되며, 상기 비트 스트림은 레지듀얼 코딩(residual coding)으로 인코딩되고, 상기 비트 스트림은 고정형 리파이닝 필터를 적용할지의 여부를 특정하는 표시자를 갖도록 인코딩되는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 비디오 데이터와 연관된 상기 비트 스트림에 액세스하여서 상기 고정형 리파이닝 필터를 적용할지의 여부를 특정하는 표시자를 판정하는 단계와,
상기 비디오 데이터와 연관된 비트 스트림에 액세스하여서 상기 복수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 판정하는 단계를 더 포함하는
컴퓨터로 구현된 방법.
- 제 1 항에 있어서,
상기 재구성된 레퍼런스 층 비디오 데이터는 상기 비디오 데이터의 레퍼런스 층과 연관되며, 상기 레퍼런스 층은 베이스 층 또는 제 2 인핸스먼트 층 중 적어도 하나를 포함하며, 상기 인핸스먼트 층은 상기 제 2 인핸스먼트 층보다 상위 층이며, 상기 레퍼런스 층과 상기 인핸스먼트 층은 스케일러빌러티만큼 상이하며, 상기 스케일러빌러티는 품질 스케일러빌러티, 시간 스케일러빌러티 또는 비트 깊이 스케일러빌러티 중 적어도 하나를 포함하며,
상기 레퍼런스 층은 베이스 층을 포함하며 상기 인핸스먼트 층은 레벨 1 인핸스먼트 층을 포함하는
컴퓨터로 구현된 방법.
- 컴퓨터 상에서 비디오 코딩을 위한 시스템으로서,
비디오 데이터를 제공하도록 구성된 디스플레이 디바이스와,
상기 디스플레이 디바이스에 통신 가능하게 연결되는 하나 이상의 프로세서와,
상기 하나 이상의 프로세서와 통신 가능하게 연결되는 하나 이상의 메모리 저장 장치와,
상기 하나 이상의 프로세서와 통신 가능하게 연결되어, 재구성된 레퍼런스 층 비디오 데이터(reconstructed reference layer video data)에 고정형 리파이닝 필터(fixed refining filter)를 적용함으로써 리파이닝된 재구성된 비디오 데이터(refined reconstructed video data)를 생성하도록 구성된 비디오 코더의 층 간 예측 모듈 - 상기 리파이닝된 재구성된 비디오 데이터를 생성하는 것은, 소정의 이미지 단위마다 복수의 고정형 리파이닝 필터 각각에 의해 처리된 비디오 데이터에 대해 계산된 함수값을 임계값과 비교함으로써 상기 복수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지 선택하고, 선택된 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터에 적용하는 것을 포함함 - 과,
상기 하나 이상의 프로세서와 통신 가능하게 연결되어, 상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여서 상기 리파이닝된 재구성된 비디오 데이터와 연관된 인핸스먼트 층에 대하여 층 간 예측(inter layer prediction)을 수행하도록 구성된 인핸스먼트 층 비디오 코더를 포함하며,
상기 복수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 갖도록 비트 스트림이 인코딩되고,
상기 디스플레이 디바이스를 통한 이미지 데이터 제공은 상기 층 간 예측에 적어도 부분적으로 기초하는
비디오 코딩을 위한 시스템.
- 제 14 항에 있어서,
상기 복수의 고정형 리파이닝 필터는 저역 통과 주파수 필터를 포함하는
비디오 코딩을 위한 시스템.
- 제 14 항에 있어서,
상기 복수의 고정형 리파이닝 필터는 제 1 고정형 리파이닝 필터 및 제 2 고정형 리파이닝 필터를 포함하며,
상기 제 1 고정형 리파이닝 필터는 제 1 인핸스먼트 효과를 제공하도록 구성되며, 상기 제 2 고정형 리파이닝 필터는 제 2 인핸스먼트 효과를 제공하도록 구성되며, 상기 제 1 인핸스먼트 효과 및 제 2 인핸스먼트 효과는 서로 상이한
비디오 코딩을 위한 시스템.
- 제 16 항에 있어서,
상기 제 1 고정형 리파이닝 필터는 저역 통과 주파수 필터를 포함하고, 상기 제 2 고정형 리파이닝 필터는 고 주파수 인핸스먼트 필터를 포함하는
비디오 코딩을 위한 시스템.
- 제 14 항에 있어서,
상기 층 간 예측 모듈은 복수의 고정형 리파이닝 필터를 사용하여서 상기 복수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터에 적용할지 결정함으로써 상기 고정형 리파이닝 필터를 적용하도록 구성되는
비디오 코딩을 위한 시스템.
- 제 14 항에 있어서,
상기 층 간 예측 모듈은 상기 재구성된 레퍼런스 층 비디오 데이터와 필터 계수 간의 도트 프로덕트를 판정하고 이에 오프셋 값을 가산함으로써 상기 고정형 리파이닝 필터를 적용하도록 구성되며,
상기 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터에 적용하는 것은 상기 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터의 필터 윈도우에 적용하는 것을 포함하는
비디오 코딩을 위한 시스템.
- 제 14 항에 있어서,
상기 층 간 예측 모듈은 상기 인핸스먼트 층 비디오 코더 또는 베이스 층 비디오 코더 중 적어도 하나를 통해서 구현되는
비디오 코딩을 위한 시스템.
- 제 14 항에 있어서,
상기 인핸스먼트 층 비디오 코더는 인핸스먼트 층 비디오 디코더를 포함하는
비디오 코딩을 위한 시스템.
- 제 14 항에 있어서,
상기 재구성된 레퍼런스 층 비디오 데이터는 상기 비디오 데이터의 레퍼런스 층과 연관되며, 상기 레퍼런스 층은 베이스 층 또는 제 2 인핸스먼트 층 중 적어도 하나를 포함하며, 상기 인핸스먼트 층은 상기 제 2 인핸스먼트 층보다 상위 층이며, 상기 레퍼런스 층과 상기 인핸스먼트 층은 스케일러빌러티만큼 상이하며, 상기 스케일러빌러티는 품질 스케일러빌러티, 시간 스케일러빌러티 또는 비트 깊이 스케일러빌러티 중 적어도 하나를 포함하며,
상기 레퍼런스 층은 베이스 층을 포함하며 상기 인핸스먼트 층은 레벨 1 인핸스먼트 층을 포함하는
비디오 코딩을 위한 시스템.
- 다수의 인스트럭션을 포함하는 적어도 하나의 머신 판독 가능한 저장 매체로서,
상기 다수의 인스트럭션은 컴퓨팅 디바이스 상에서 실행되어서 상기 컴퓨팅 디바이스로 하여금,
재구성된 레퍼런스 층 비디오 데이터(reconstructed reference layer video data)에 고정형 리파이닝 필터(fixed refining filter)를 적용하여, 리파이닝된 재구성된 비디오 데이터(refined reconstructed video data)를 생성하게 하고 - 상기 리파이닝된 재구성된 비디오 데이터를 생성하게 하는 것은, 소정의 이미지 단위마다 복수의 고정형 리파이닝 필터 각각에 의해 처리된 비디오 데이터에 대해 계산된 함수값을 임계값과 비교함으로써 상기 복수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지 선택하고, 선택된 고정형 리파이닝 필터를 상기 재구성된 레퍼런스 층 비디오 데이터에 적용하게 하는 것을 포함함-,
상기 리파이닝된 재구성된 비디오 데이터에 적어도 부분적으로 기초하여, 상기 리파이닝된 재구성된 비디오 데이터와 연관된 인핸스먼트 층(enhancement layer)에 대하여 층 간 예측(inter layer prediction)을 수행하게 하고
상기 복수의 고정형 리파이닝 필터 중 어느 고정형 리파이닝 필터를 적용할지를 표시하도록 구성된 고정형 리파이닝 필터 표시자를 갖도록 비트 스트림을 인코딩함으로써,
스케일러블 비디오 코딩(scalable video coding)을 수행하게 하는
머신 판독 가능한 저장 매체.
- 제 23 항에 있어서,
상기 고정형 리파이닝 필터를 적용하는 것은 상기 재구성된 레퍼런스 층 비디오 데이터와 필터 계수 간의 도트 프로덕트를 취하고 이에 오프셋 값을 가산하는 것을 포함하는
머신 판독 가능한 저장 매체.
- 제 23 항에 있어서,
상기 재구성된 레퍼런스 층 비디오 데이터는 상기 비디오 데이터의 레퍼런스 층과 연관되며, 상기 레퍼런스 층은 베이스 층 또는 제 2 인핸스먼트 층 중 적어도 하나를 포함하며, 상기 인핸스먼트 층은 상기 제 2 인핸스먼트 층보다 상위 층이며, 상기 레퍼런스 층과 상기 인핸스먼트 층은 스케일러빌러티만큼 상이하며, 상기 스케일러빌러티는 품질 스케일러빌러티, 시간 스케일러빌러티 또는 비트 깊이 스케일러빌러티 중 적어도 하나를 포함하며,
상기 레퍼런스 층은 베이스 층을 포함하며 상기 인핸스먼트 층은 레벨 1 인핸스먼트 층을 포함하는
머신 판독 가능한 저장 매체.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361749000P | 2013-01-04 | 2013-01-04 | |
US61/749,000 | 2013-01-04 | ||
US13/856,212 | 2013-04-03 | ||
US13/856,212 US9596465B2 (en) | 2013-01-04 | 2013-04-03 | Refining filter for inter layer prediction of scalable video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140089482A KR20140089482A (ko) | 2014-07-15 |
KR101731335B1 true KR101731335B1 (ko) | 2017-04-28 |
Family
ID=50023411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140000823A KR101731335B1 (ko) | 2013-01-04 | 2014-01-03 | 스케일러블 비디오 코딩의 층 간 예측을 위한 리파이닝 필터 |
Country Status (6)
Country | Link |
---|---|
US (2) | US9596465B2 (ko) |
EP (1) | EP2753088A1 (ko) |
JP (1) | JP5976696B2 (ko) |
KR (1) | KR101731335B1 (ko) |
BR (1) | BR102014000180A2 (ko) |
TW (1) | TWI548263B (ko) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7916952B2 (en) * | 2004-09-14 | 2011-03-29 | Gary Demos | High quality wide-range multi-layer image compression coding system |
US20130107949A1 (en) * | 2011-10-26 | 2013-05-02 | Intellectual Discovery Co., Ltd. | Scalable video coding method and apparatus using intra prediction mode |
WO2014106692A1 (en) * | 2013-01-07 | 2014-07-10 | Nokia Corporation | Method and apparatus for video coding and decoding |
US20160241882A1 (en) * | 2013-10-11 | 2016-08-18 | Sony Corporation | Image processing apparatus and image processing method |
MX2018003688A (es) | 2015-09-25 | 2018-08-01 | Huawei Tech Co Ltd | Aparato y metodo para compensacion de movimiento de video. |
EP3348058B1 (en) | 2015-09-25 | 2021-09-15 | Huawei Technologies Co., Ltd. | Adaptive sharpening filter for predictive coding |
CN108141603B (zh) | 2015-09-25 | 2020-12-15 | 华为技术有限公司 | 视频编解码方法及视频编解码器 |
WO2017052409A1 (en) | 2015-09-25 | 2017-03-30 | Huawei Technologies Co., Ltd. | Apparatus and method for video motion compensation with selectable interpolation filter |
MY197611A (en) | 2015-09-25 | 2023-06-28 | Huawei Tech Co Ltd | Apparatus and method for video motion compensation |
US20180359468A1 (en) * | 2015-10-01 | 2018-12-13 | Lg Electronics Inc. | Image processing method on basis of inter prediction mode and apparatus therefor |
FR3042936A1 (fr) * | 2015-10-23 | 2017-04-28 | Sagemcom Broadband Sas | Procede de codage et procede de decodage d'au moins une image |
WO2017121549A1 (en) * | 2016-01-12 | 2017-07-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Frequency based prediction |
GB201607879D0 (en) * | 2016-05-05 | 2016-06-22 | Magic Pony Technology Ltd | Video encoding using hierarchical algorithms |
KR102320198B1 (ko) * | 2017-04-05 | 2021-11-02 | 삼성전자주식회사 | 깊이 영상 보정 방법 및 장치 |
CN109285127B (zh) * | 2018-09-03 | 2021-08-31 | 中国民航大学 | 一种改进的PolSAR图像非局部均值滤波方法 |
JP2022548521A (ja) | 2019-09-23 | 2022-11-21 | アリババ グループ ホウルディング リミテッド | 参照ダウンサンプリングありの動き補償補間のためのフィルタ |
US11743459B2 (en) * | 2020-09-29 | 2023-08-29 | Qualcomm Incorporated | Filtering process for video coding |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006295913A (ja) * | 2005-04-11 | 2006-10-26 | Sharp Corp | 空間的スケーラブルコーディングのためのアダプティブアップサンプリング方法および装置 |
WO2012081609A1 (ja) * | 2010-12-14 | 2012-06-21 | シャープ株式会社 | 画像フィルタ装置、復号装置、符号化装置、および、データ構造 |
WO2012167712A1 (en) * | 2011-06-10 | 2012-12-13 | Mediatek Inc. | Method and apparatus of scalable video coding |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2663178B1 (fr) * | 1990-06-06 | 1995-07-21 | Thomson Csf | Procede d'estimation hierarchique du mouvement dans une sequence d'images. |
US6760463B2 (en) * | 1995-05-08 | 2004-07-06 | Digimarc Corporation | Watermarking methods and media |
US6236757B1 (en) * | 1998-06-18 | 2001-05-22 | Sharp Laboratories Of America, Inc. | Joint coding method for images and videos with multiple arbitrarily shaped segments or objects |
US7460596B2 (en) * | 2004-04-29 | 2008-12-02 | Mediatek Incorporation | Adaptive de-blocking filtering apparatus and method for MPEG video decoder |
US8340177B2 (en) * | 2004-07-12 | 2012-12-25 | Microsoft Corporation | Embedded base layer codec for 3D sub-band coding |
US8374238B2 (en) * | 2004-07-13 | 2013-02-12 | Microsoft Corporation | Spatial scalability in 3D sub-band decoding of SDMCTF-encoded video |
GB0600141D0 (en) * | 2006-01-05 | 2006-02-15 | British Broadcasting Corp | Scalable coding of video signals |
JP2009522971A (ja) * | 2006-01-10 | 2009-06-11 | ノキア コーポレイション | 拡張可能ビデオ符号化のための切換型フィルタアップサンプリング機構 |
KR100772873B1 (ko) * | 2006-01-12 | 2007-11-02 | 삼성전자주식회사 | 스무딩 예측을 이용한 다계층 기반의 비디오 인코딩 방법,디코딩 방법, 비디오 인코더 및 비디오 디코더 |
US8059714B2 (en) * | 2006-07-10 | 2011-11-15 | Sharp Laboratories Of America, Inc. | Methods and systems for residual layer scaling |
US8325819B2 (en) | 2006-10-12 | 2012-12-04 | Qualcomm Incorporated | Variable length coding table selection based on video block type for refinement coefficient coding |
RU2461977C2 (ru) * | 2006-12-18 | 2012-09-20 | Конинклейке Филипс Электроникс Н.В. | Сжатие и снятие сжатия изображения |
US8107571B2 (en) * | 2007-03-20 | 2012-01-31 | Microsoft Corporation | Parameterized filters and signaling techniques |
CN102084653B (zh) * | 2007-06-29 | 2013-05-08 | 弗劳恩霍夫应用研究促进协会 | 支持像素值细化可缩放性的可缩放视频编码 |
TWI336782B (en) | 2007-07-05 | 2011-02-01 | Apex Biotechnology Corp | Composite modified electrode trip |
WO2009051704A1 (en) * | 2007-10-16 | 2009-04-23 | Thomson Licensing | Methods and apparatus for artifact removal for bit depth scalability |
US8126054B2 (en) * | 2008-01-09 | 2012-02-28 | Motorola Mobility, Inc. | Method and apparatus for highly scalable intraframe video coding |
HUE024173T2 (en) * | 2008-04-16 | 2016-05-30 | Ge Video Compression Llc | Bit depth scalability |
US9571856B2 (en) | 2008-08-25 | 2017-02-14 | Microsoft Technology Licensing, Llc | Conversion operations in scalable video encoding and decoding |
EP2422520A1 (en) * | 2009-04-20 | 2012-02-29 | Dolby Laboratories Licensing Corporation | Adaptive interpolation filters for multi-layered video delivery |
JP5606625B2 (ja) * | 2010-07-21 | 2014-10-15 | ドルビー ラボラトリーズ ライセンシング コーポレイション | ビデオ符号化のための高度な動きモデルを使った参照処理 |
DE102010033171A1 (de) * | 2010-08-03 | 2012-02-09 | Krones Aktiengesellschaft | Verfahren und Vorrichtung zum Betreiben einer Anlage zum Behandeln von Behältnissen mit übergeordneter Parameteranwahl |
US8462221B2 (en) * | 2010-11-03 | 2013-06-11 | Eastman Kodak Company | Method for producing high dynamic range images |
BR112013031215B8 (pt) * | 2011-06-10 | 2022-07-19 | Mediatek Inc | Método e aparelho de codificação escalável de vídeo |
US8754671B2 (en) * | 2011-07-29 | 2014-06-17 | Crossbar, Inc. | Field programmable gate array utilizing two-terminal non-volatile memory |
ITMI20120788A1 (it) * | 2012-05-09 | 2013-11-10 | Ilpea Ind Spa | Sistema schermante flessibile a copertura totale per onde elettromagnetiche |
US9544587B2 (en) * | 2012-05-14 | 2017-01-10 | Google Technology Holdings LLC | Scalable video coding with enhanced base layer |
US10136144B2 (en) * | 2012-05-21 | 2018-11-20 | Mediatek Singapore Pte. Ltd. | Method and apparatus of inter-layer filtering for scalable video coding |
CN104272738A (zh) | 2012-06-15 | 2015-01-07 | 英特尔公司 | 用于可扩展视频编码的自适应滤波 |
WO2013189257A1 (en) * | 2012-06-20 | 2013-12-27 | Mediatek Inc. | Method and apparatus of bi-directional prediction for scalable video coding |
US9344718B2 (en) * | 2012-08-08 | 2016-05-17 | Qualcomm Incorporated | Adaptive up-sampling filter for scalable video coding |
WO2014053518A1 (en) * | 2012-10-01 | 2014-04-10 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Scalable video coding using subblock-based coding of transform coefficient blocks in the enhancement layer |
US9912942B2 (en) * | 2012-12-28 | 2018-03-06 | Qualcomm Incorporated | High-frequency-pass sample adaptive offset in video coding |
EP2942963A4 (en) * | 2013-01-04 | 2016-08-17 | Samsung Electronics Co Ltd | SCALABLE VIDEO ENCODING METHOD AND APPARATUS USING IMAGE OVERHEAD SAMPLING IN CONSIDERATION OF A PHASE AND METHOD AND APPARATUS FOR SCALEABLE VIDEO DECODING |
-
2013
- 2013-04-03 US US13/856,212 patent/US9596465B2/en active Active
-
2014
- 2014-01-02 TW TW103100052A patent/TWI548263B/zh not_active IP Right Cessation
- 2014-01-03 KR KR1020140000823A patent/KR101731335B1/ko active IP Right Grant
- 2014-01-03 EP EP14150101.5A patent/EP2753088A1/en not_active Withdrawn
- 2014-01-06 BR BR102014000180A patent/BR102014000180A2/pt not_active Application Discontinuation
- 2014-01-06 JP JP2014000268A patent/JP5976696B2/ja not_active Expired - Fee Related
-
2017
- 2017-02-15 US US15/433,851 patent/US10462467B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006295913A (ja) * | 2005-04-11 | 2006-10-26 | Sharp Corp | 空間的スケーラブルコーディングのためのアダプティブアップサンプリング方法および装置 |
WO2012081609A1 (ja) * | 2010-12-14 | 2012-06-21 | シャープ株式会社 | 画像フィルタ装置、復号装置、符号化装置、および、データ構造 |
WO2012167712A1 (en) * | 2011-06-10 | 2012-12-13 | Mediatek Inc. | Method and apparatus of scalable video coding |
Non-Patent Citations (1)
Title |
---|
Y-J Chiu, et al. Description of scalable video coding technology proposal by Intel. JCT-VC of ITU-T and ISO/IEC. JCTVC-K0039. Oct. 1, 2012, pp.1-23* |
Also Published As
Publication number | Publication date |
---|---|
US20170163989A1 (en) | 2017-06-08 |
US9596465B2 (en) | 2017-03-14 |
US20140192865A1 (en) | 2014-07-10 |
TWI548263B (zh) | 2016-09-01 |
US10462467B2 (en) | 2019-10-29 |
TW201448568A (zh) | 2014-12-16 |
JP5976696B2 (ja) | 2016-08-24 |
BR102014000180A2 (pt) | 2015-11-17 |
KR20140089482A (ko) | 2014-07-15 |
EP2753088A1 (en) | 2014-07-09 |
JP2014140163A (ja) | 2014-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101731335B1 (ko) | 스케일러블 비디오 코딩의 층 간 예측을 위한 리파이닝 필터 | |
US20150181216A1 (en) | Inter-layer pixel sample prediction | |
KR101653511B1 (ko) | 인터-레이어 잔차 예측 | |
TWI559749B (zh) | 層間移動資料繼承之技術 | |
US10536710B2 (en) | Cross-layer cross-channel residual prediction | |
KR20150070313A (ko) | 다수의 독립 코딩 스트림들 사이에서 공유된 모션 추정을 포함하는 비디오 코딩 | |
US9860533B2 (en) | Cross-layer cross-channel sample prediction | |
JP6005847B2 (ja) | スケーラブルなビデオコーディングのためのアダプティブフィルタリング | |
KR101777487B1 (ko) | 코딩 단위 비트 수 제한 | |
JP2015146599A (ja) | レイヤ間画素サンプル予測 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E90F | Notification of reason for final refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |