KR20210091314A - 인터 예측 및 표시를 위한 적응적인 영상 해상도 리스케일링 - Google Patents

인터 예측 및 표시를 위한 적응적인 영상 해상도 리스케일링 Download PDF

Info

Publication number
KR20210091314A
KR20210091314A KR1020217019261A KR20217019261A KR20210091314A KR 20210091314 A KR20210091314 A KR 20210091314A KR 1020217019261 A KR1020217019261 A KR 1020217019261A KR 20217019261 A KR20217019261 A KR 20217019261A KR 20210091314 A KR20210091314 A KR 20210091314A
Authority
KR
South Korea
Prior art keywords
resolution
segment
resampling
decoding
decoded
Prior art date
Application number
KR1020217019261A
Other languages
English (en)
Other versions
KR102589711B1 (ko
Inventor
스테판 웽거
징 예
병두 최
샨 리우
Original Assignee
텐센트 아메리카 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 텐센트 아메리카 엘엘씨 filed Critical 텐센트 아메리카 엘엘씨
Publication of KR20210091314A publication Critical patent/KR20210091314A/ko
Application granted granted Critical
Publication of KR102589711B1 publication Critical patent/KR102589711B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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/423Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Abstract

하나 이상의 프로세서에 의해 수행되는, 코딩된 비디오 시퀀스의 코딩된 영상을 디코딩하는 방법은, 복수의 영상에 대한 제1 고 레벨 신택스 구조로부터, 참조 세그먼트 해상도와 관련된 신택스 요소를 디코딩하는 단계, 제1 코딩된 영상에서 제2 코딩된 영상으로 변경되는 제2 고 레벨 신택스 구조로부터, 디코딩된 세그먼트 해상도와 관련된 신택스 요소를 디코딩하는 단계, 디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터의 샘플을 리샘플링하는 단계 - 상기 디코더는 세그먼트를 디코딩 해상도로 디코딩하고, 상기 참조 영상 버퍼로부터의 샘플의 해상도는 상기 참조 세그먼트 해상도임 -, 상기 디코딩된 세그먼트 해상도의 세그먼트를 상기 디코딩된 세그먼트 해상도의 디코딩된 세그먼트로 디코딩하는 단계, 및 상기 디코딩된 세그먼트를 상기 참조 영상 버퍼에 저장하는 단계를 포함한다.

Description

인터 예측 및 표시를 위한 적응적인 영상 해상도 리스케일링
관련 출원에 대한 상호 참조
본 출원은 2019년 1월 2일에 미국 특허청에 출원된 미국 가특허출원 제62 704,040호 및 2019년 12월 11일에 미국 특허청에 출원된 미국 특허출원 제16/710,389호로부터 우선권을 주장하며, 그 내용 전체는 인용에 의해 본 출원에 통합된다.
개시된 주제는 비디오 코딩 및 디코딩에 관한 것으로, 보다 구체적으로, 고레벨 신택스 구조에서의 적응적인 영상 해상도 리스케일링(picture resolution rescaling)을 위한 신택스 요소(syntax element) 및 영상 세그먼트(picture segment)의 관련 디코딩 및 스케일링 프로세스에 관한 것이다.
움직임 보상과 함께 인터 영상 예측(inter-picture prediction)을 사용하는 비디오 코딩 및 디코딩은 수십 년 동안 알려져 왔다. 압축되지 않은 디지털 비디오는 일련의 영상으로 구성될 수 있으며, 각각의 영상은, 예를 들어 1920×1080 휘도 샘플 및 연관된 색차 샘플(chrominance sample)의 공간 차원을 갖는다. 일련의 영상은, 예를 들어 초당 60개의 영상 또는 60Hz의, 고정 또는 가변 영상 레이트(비공식적으로 프레임 레이트라고도 함)를 가질 수 있다. 압축되지 않은 비디오는 상당한 비트레이트 요건을 갖는다. 예를 들어, 샘플당 8비트의 1080p60 4:2:0 비디오(60Hz 프레임 레이트에서 1920×1080 휘도 샘플 해상도)는 1.5Gbit/s에 가까운 대역폭을 필요로 한다. 한 시간의 이러한 비디오는 600GB 이상의 저장 공간이 필요하다.
비디오 코딩 및 디코딩의 한 가지 목적은 압축을 통해, 입력 비디오 신호의 중복성(redundancy)을 감소시키는 것일 수 있다. 압축은 전술한 대역폭 또는 저장 공간 요건을, 경우에 따라서는 두자릿수 이상 감소시키는 데 도움이 될 수 있다. 무손실 압축(lossless compression)과 손실 압축(lossy compression) 둘 다, 그리고 이들의 조합도 사용될 수 있다. 무손실 압축이란 압축된 원본 신호로부터 원본 신호의 정확한 사본을 재구축할 수 있는 기술을 말한다. 손실 압축을 사용하는 경우, 재구축된 신호는 원본 신호와 동일하지 않을 수 있지만, 원본 신호와 재구축된 신호 사이의 왜곡은, 구축된 신호가 의도된 애플리케이션에 유용할 정도로 충분히 작다. 비디오의 경우, 손실 압축이 널리 채용된다. 허용되는 왜곡의 양은 애플리케이션에 따라 다르며; 예를 들어, 특정 소비자 스트리밍 애플리케이션의 사용자는 텔레비전 기여 애플리케이션(television contribution application)의 사용자보다 높은 왜곡을 용인할 수 있다. 달성 가능한 압축 비율은 다음을 반영할 수 있다: 허용 가능한/용인 가능한 왜곡이 높을수록 압축 비율은 더 높을 수 있다.
비디오 인코더 및 디코더는 예를 들어, 움직임 보상(motion compensation), 변환(transform), 양자화(quantization), 및 엔트로피 코딩(entropy coding)을 포함한, 여러 광범위한 범주로부터의 기술을 이용할 수 있으며, 이들 중 일부를 이하에 소개할 것이다.
기본 정보 이론은 주어진 콘텐츠의 일련의 영상의 공간적으로 더 낮은 해상도 표현이 더 큰 표현보다 더 적은 비트로 압축될 수 있음을 시사한다. 따라서 대역폭이나 저장 공간이 충분하지 않거나, 높은 공간 해상도가 필요하지 않는 비용에 민감한 애플리케이션의 경우, 인코딩 전에 일련의 입력 영상을 다운샘플링(downsampling)하고 디코딩 후에 각각 업샘플링(upsampling)하여 표시에 적합한 영상을 획득하는 것이 수십 년 동안 사용되어 왔다. 예를 들어, 적어도 일부 MPEG-2 기반 TV 배포/표시 시스템은, 코딩 루프 외부에서, 채널을 통해 이용 가능한 대역폭이 불충분하여 양호한 재생 품질을 실현할 수 없는 경우에 잠재적으로 영상 그룹 마다에 기초하여 영상의 수평 해상도를 변경한다. 이와 관련하여, 많은 비디오 코덱이, 양자화기 값을 증가시켜(레이트 포락선 내에 머물기 위함) 점진적인 품질 저하가 붕괴하고 돌연한 상당한 품질 저하가 발생하는, "니(knee)"(레이트-왜곡 곡선에서)라고도 하는 "중단점(break point)"을 가진다는 것에 유의해야 한다. 일부 비디오 배포 시스템은 평균적인 복잡도의 콘텐츠의 중단점에 매우 가깝게 동작하므로, 갑작스러운 활동 증가는 후처리 기술로 쉽게 보상될 수 없는 성가신 아티팩트(artifact)를 초래할 수 있다.
코딩 루프 외부에서 해상도를 변경하는 것은 비디오 코덱 구현 및 사양 관점에서 비교적 간단한 문제일 수 있지만, 특별히 효과적이지는 않다. 이는 해상도의 변경이, 많은 경우에 코딩된 비디오 비트스트림에서 가장 일반적인 인터 코딩된 영상보다 몇 배 더 클 수 있는 인트라 코드 영상을 요구할 수 있기 때문이다. 본질적으로 대역폭 부족 문제일 수 있는 것을 해결하기 위해 추가 부담의 인트라 코딩된 영상을 추가하는 것은 역효과를 초래할 수 있으며, 큰 버퍼 및 이와 연관된 가능한 큰 지연을 요구하는 것이 효과적일 수 있다.
지연이 중요한 애플리케이션을 위해, 코딩 루프에서 비디오 시퀀스의 해상도를, 인트라 코딩된 영상을 사용하지 않고 변경할 수 있도록 하는 메커니즘이 고안되었다. 이러한 기술은 참조 영상의 리샘플링을 필요로 하기 때문에, 일반적으로 참조 영상 리샘플링(reference picture resampling, RPR) 기술로 알려져 있다. RPR은 표준화된 비디오 코딩에 도입되었으며, 1998년에 공개된 ITU-T Rec. H.263 Annex P에서, 특정 비디오 회의 시스템에 비교적 광범위하게 전개되었다. 이 기술은 적어도 다음과 같은 단점이 있다: 1. 참조 영상 리샘플링의 시그널링에 사용되는 신택스는 에러 내성(error resilient)이 없다. 2. 계산적으로 저렴하지만 채용된 업샘플 필터 및 다운샘플 필터 - 이중 선형 필터(bi-linear filter) -는 양호한 비디오 품질에 그다지 도움이 되지 않는다. 3. "뒤틀림(warping)"을 허용하는 특정 기술에는 불필요하고 부당한 기능이 지나치게 많을 수 있다. 4. 이 기술은 영상 세그먼트가 아닌 영상 전체에만 적용할 수 있다.
AV1로 알려진 보다 최근의 비디오 코딩 기술도 RPR을 제한적으로 지원한다. 위의 문제#1 및 #4와 유사한 문제가 있으며, 또한 채용된 필터는 특정 애플리케이션에 대해 매우 복잡하다.
실시예에 따르면, 코딩된 비디오 시퀀스의 코딩된 영상을 디코딩하는 방법은 하나 이상의 프로세서에 의해 수행되며, 상기 방법은, 복수의 영상에 대한 제1 고 레벨 신택스 구조로부터, 참조 세그먼트 해상도와 관련된 신택스 요소를 디코딩하는 단계, 제1 코딩된 영상에서 제2 코딩된 영상으로 변경되는 제2 고 레벨 신택스 구조로부터, 디코딩된 세그먼트 해상도와 관련된 신택스 요소를 디코딩하는 단계, 디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터의 샘플을 리샘플링하는 단계 - 상기 디코더는 세그먼트를 디코딩 해상도로 디코딩하고, 상기 참조 영상 버퍼로부터의 샘플의 해상도는 상기 참조 세그먼트 해상도임 -, 상기 디코딩된 세그먼트 해상도의 세그먼트를 상기 디코딩된 세그먼트 해상도의 디코딩된 세그먼트로 디코딩하는 단계, 및 상기 디코딩된 세그먼트를 상기 참조 영상 버퍼에 저장하는 단계를 포함한다.
시예에 따르면, 코딩된 비디오 시퀀스의 코딩된 영상을 디코딩하는 장치는, 컴퓨터 프로그램 코드를 저장하도록 구성된 하나 이상의 메모리; 상기 하나 이상의 메모리에 액세스하고 상기 컴퓨터 프로그램 코드에 따라 작동하도록 구성된 하나 이상의 프로세서를 포함하고, 상기 컴퓨터 프로그램 코드는, 복수의 영상에 대한 제1 고 레벨 신택스 구조로부터, 참조 세그먼트 해상도와 관련된 신택스 요소를 디코딩하도록 구성된 제1 디코딩 코드, 제1 코딩된 영상에서 제2 코딩된 영상으로 변경되는 제2 고 레벨 신택스 구조로부터, 디코딩된 세그먼트 해상도와 관련된 신택스 요소를 디코딩하도록 구성된 제2 디코딩 코드, 디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터의 샘플을 리샘플링하도록 구성된 리샘플링 코드 - 상기 디코더는 세그먼트를 디코딩 해상도로 디코딩하고, 상기 참조 영상 버퍼로부터의 샘플의 해상도는 상기 참조 세그먼트 해상도임 -, 상기 디코딩된 세그먼트 해상도의 세그먼트를 상기 디코딩된 세그먼트 해상도의 디코딩된 세그먼트로 디코딩하도록 구성된 제3 디코딩 코드, 및 상기 디코딩된 세그먼트를 상기 참조 영상 버퍼에 저장하도록 구성된 저장 코드를 포함한다.
실시예에 따르면, 코딩된 비디오 시퀀스의 코딩된 영상을 디코딩하기 위한 프로그램을 저장한, 컴퓨터로 판독 가능한 비 일시적인 저장 매체는, 상기 프로세서로 하여금, 복수의 영상에 대한 제1 고 레벨 신택스 구조로부터, 참조 세그먼트 해상도와 관련된 신택스 요소를 디코딩하게 하는 명령어, 제1 코딩된 영상에서 제2 코딩된 영상으로 변경되는 제2 고 레벨 신택스 구조로부터, 디코딩된 세그먼트 해상도와 관련된 신택스 요소를 디코딩하게 하는 명령어, 디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터의 샘플을 리샘플링하게 하는 명령어 - 상기 디코더는 세그먼트를 디코딩 해상도로 디코딩하고, 상기 참조 영상 버퍼로부터의 샘플의 해상도는 상기 참조 세그먼트 해상도임 -, 상기 디코딩된 세그먼트 해상도의 세그먼트를 상기 디코딩된 세그먼트 해상도의 디코딩된 세그먼트로 디코딩하게 하는 명령어, 및 상기 디코딩된 세그먼트를 상기 참조 영상 버퍼에 저장하게 하는 명령어를 포함한다.
개시된 주제의 추가적인 특징, 성질 및 다양한 이점은 이하의 상세한 설명 및 첨부 도면으로부터 더욱 명백해질 것이다.
도 1은 일 실시예에 따른 통신 시스템의 단순화된 블록도의 개략도이다.
도 2는 일 실시예에 따른 통신 시스템의 단순화된 블록도의 개략도이다.
도 3은 일 실시예에 따른 디코더의 단순화된 블록도의 개략도이다.
도 4는 일 실시예에 따른 인코더의 단순화된 블록도의 개략도이다.
도 5는 일 실시예에 따른 신택스 도면이다.
도 6은 일 실시예에 따른 참조 영상 리샘플링 가능한 디코더의 단순화된 블록도의 개략도이다.
도 7은 일 실시예에 따른 타일마다 참조 영상 리샘플링을 사용하는 타일 레이아웃의 개략도이다.
도 8a는 일 실시예에 따른 코딩된 비디오 시퀀스의 코딩된 영상을 디코딩하는 방법을 나타낸 흐름도이다.
도 8b는 일 실시예에 따른 비디오 시퀀스의 디코딩을 제어하기 위한 장치의 단순화된 블록도이다.
도 9는 일 실시예에 따른 컴퓨터 시스템의 개략도이다.
고 활동성 콘텐츠(high activity content)가 발생하는 경우에 평균 콘텐츠(average content)에 대해 중단점 근처에서 비디오 코딩을 수행하는 경우에 발생할 수 있는 품질 문제를 해결하기 위해, 인 루프(in-loop) RPR 기술이 필요하다. 알려진 기술과 달리, 이 기술은 성능 및 계산 복잡도 모두의 관점에서 효율적인 필터를 채용해야 하고, 오류 내성이 있어야 하며, 영상의 일부, 즉 (적어도 직사각형의) 영상 세그먼트에만 적용 가능해야 한다.
도 1은 본 개시의 일 실시예에 따른 통신 시스템(100)의 단순화된 블록도를 나타낸다. 통신 시스템(100)은 네트워크(150)를 통해 상호연결된 둘 이상의 단말기(110-120)를 포함할 수 있다. 데이터의 단방향 송신을 위해, 제1 단말기(110)는 네트워크(150)를 통해 다른 단말기(120)에 송신하기 위해 로컬 위치에서 비디오 데이터를 코딩할 수 있다. 제2 단말기(120)는 네트워크(150)로부터 다른 단말기의 코딩된 비디오 데이터를 수신하고, 코딩된 데이터를 디코딩하여 복원된 비디오 데이터(recovered video data)를 표시할 수 있다. 단방향 데이터 송신이 미디어 서빙 애플리케이션(media serving application) 등에서 일반적일 수 있다.
도 1은, 예를 들어 비디오 회의 동안에, 발생할 수 있는 코딩된 비디오의 양방향 송신을 지원하기 위해 제공되는 제2 단말기 쌍(130, 140)을 나타낸다. 데이터의 양방향 송신을 위해, 각각의 단말기(130, 140)는 네트워크(150)를 통해 다른 단말기에 송신하기 위해 로컬 위치에서 캡처된 비디오 데이터를 코딩할 수 있다. 각각의 단말기(130, 140)는 또한 다른 단말기에 의해 송신되는 코딩된 비디오 데이터를 수신할 수 있고, 코딩된 데이터를 디코딩할 수 있으며, 복원된 비디오 데이터를 로컬 디스플레이 기기에 표시할 수 있다.
도 1에서, 단말기(110-140)는 서버, 개인용 컴퓨터 및 스마트폰으로 예시될 수 있지만 본 발명의 원리는 이에 한정되지 않을 수 있다. 본 개시의 실시예는 랩톱 컴퓨터, 태블릿 컴퓨터, 미디어 플레이어 및/또는 전용 비디오 회의 장비를 구비한 애플리케이션을 찾아낸다. 네트워크(150)는, 예를 들어 유선 및/또는 무선 통신 네트워크를 포함한, 단말기(110-140) 사이에서 코딩된 비디오 데이터를 전달하는 임의의 수의 네트워크를 나타낸다. 통신 네트워크(150)는 회선 교환(circuit-switched) 채널 및/또는 패킷 교환(packet-switched) 채널에서 데이터를 교환할 수 있다. 대표적인 네트워크로는 전기통신 네트워크(telecommunications networks), 근거리 통신망(local area networks), 광역 통신망(wide area networks ) 및/또는 인터넷을 포함한다. 본 논의의 목적을 위해, 네트워크(150)의 아키텍처 및 토폴로지는 여기서 아래에 설명되지 않는 한, 본 개시의 동작에 중요하지 않을 수 있다.
도 2는 개시된 주제에 대한 애플리케이션의 일례로서, 스트리밍 환경에서 비디오 인코더 및 디코더의 배치를 나타낸다. 개시된 주제는, 예를 들어, 비디오 회의, 디지털 TV, CD, DVD, 메모리 스틱 등을 포함한, 디지털 미디어에 압축된 비디오의 저장을 포함하는, 다른 비디오 지원(video enabled) 애플리케이션에도 동일하게 적용될 수 있다.
스트리밍 시스템은, 예를 들어 압축되지 않은 비디오 샘플 스트림(202)을 생성하는, 예를 들어 디지털 카메라와 같은 비디오 소스(201)를 포함할 수 있는 캡처 서브시스템(capture subsystem)(213)을 포함할 수 있다. 인코딩된 비디오 비트스트림과 비교할 때 높은 데이터 볼륨을 강조하기 위해 굵은 선으로 표시된 샘플 스트림(202)은 카메라(201)에 연결된 인코더(203)에 의해 처리될 수 있다. 인코더(203)는 하드웨어, 소프트웨어, 또는 이들의 조합을 포함하여 아래에서 더 상세히 설명되는 바와 같이 개시된 주제의 측면들을 가능하게 하거나 구현할 수 있다. 샘플 스트림과 비교할 때 더 낮은 데이터 볼륨을 강조하기 위해 가는 선으로 표시된 인코딩된 비디오 비트스트림(204)은 장래의 사용을 위해 스트리밍 서버(205)에 저장될 수 있다. 하나 이상의 스트리밍 클라이언트(206, 208)는 스트리밍 서버(205)에 액세스하여 인코딩된 비디오 비트스트림(204)의 사본(207, 209)을 검색할 수 있다. 클라이언트(206)는 인코딩된 비디오 비트스트림(207)의 인커밍 사본을 디코딩하고 디스플레이(212) 또는 다른 렌더링 기기(도시되지 않음)에 렌더링될 수 있는 아웃고잉 비디오 샘플 스트림(211)을 생성하는 비디오 디코더(210)를 포함할 수 있다. 일부 스트리밍 시스템에서, 비디오 비트스트림(204, 207, 209)은 특정 비디오 코딩/압축 표준에 따라 인코딩될 수 있다. 이러한 표준의 예로는 ITU-T Recommendation H.265를 포함한다. 비공식적으로 다용도 비디오 코딩(Versatile Video Coding) 또는 VVC로 알려진 비디오 코딩 표준이 개발 중이다. 개시된 주제는 VVC의 맥락에서 사용될 수 있다.
도 3은 본 개시의 일 실시예에 따른 비디오 디코더(210)의 기능 블록도일 수 있다.
수신기(310)는 디코더(210)에 의해 디코딩될 하나 이상의 코덱 비디오 시퀀스를 수신할 수 있고; 동일하거나 다른 실시예에서, 한 번에 하나의 코딩된 비디오 시퀀스를 수신할 수 있으며, 여기서 각각의 코딩된 비디오 시퀀스의 디코딩은 다른 코딩된 비디오 시퀀스와 독립적이다. 코딩된 비디오 시퀀스는 인코딩된 비디오 데이터를 저장하는 저장 기기에 대한 하드웨어/소프트웨어 링크일 수 있는 채널(312)로부터 수신될 수 있다. 수신기(310)는 다른 데이터, 예를 들어 코딩된 오디오 데이터 및/또는 보조 데이터 스트림과 함께, 인코딩된 비디오 데이터를 수신할 수 있으며, 이들은 그 각각의 사용 엔티티(도시되지 않음)에 포워딩될 수 있다. 수신기(310)는 코딩된 비디오 시퀀스를 다른 데이터로부터 분리할 수 있다. 네트워크 지터를 방지하기 위해, 버퍼 메모리(315)는 수신기(310)와 엔트로피 디코더/파서(320)(이하 "파서") 사이에 결합될 수 있다. 수신기(310)가 충분한 대역폭 및 제어 가능성의 저장/포워딩 기기로부터, 또는 등시 동기 네트워크(isosychronous network)로부터 데이터를 수신하고 있을 때, 버퍼(315)는 필요하지 않을 수 있거나, 작을 수 있다. 인터넷과 같은 최선형 패킷 네트워크(best effort packet network)에서 사용하기 위해, 버퍼(315)가 필요할 수 있고, 비교적 클 수 있으며, 유리하게는 적응적인 크기(adaptive size)일 수 있다.
비디오 디코더(210)는 엔트로피 코딩된 비디오 시퀀스로부터 심볼(321)을 재구축하기 위한 파서(320)를 포함할 수 있다. 이러한 심볼의 카테고리로는, 도 2에 도시된 바와 같이, 디코더(210)의 작동을 관리하는 데 사용되는 정보와, 디코더의 필수 부분은 아니지만 디코더에 결합될 수 있는 디스플레이(212)와 같은 렌더링 기기를 제어하기 위한 잠재적 정보를 포함한다. 렌더링 기기(들)에 대한 제어 정보는 보충 강화 정보(Supplementary Enhancement Information(SEI) messages), 또는 비디오 사용성 정보(Video Usability Information, VUI) 파라미터 세트 프래그먼트(도시되지 않음)의 형태일 수 있다. 파서(320)는 수신된, 코딩된 비디오 시퀀스를 파싱/엔트로피 디코딩할 수 있다. 코딩된 비디오 시퀀스의 코딩은 비디오 코딩 기술 또는 표준에 따를 수 있고, 가변 길이 코딩, Huffman 코딩, 문맥 민감도가 있거나 없는 산술 코딩 등을 포함한, 당업자에게 잘 알려진 원리를 따를 수 있다. 파서(320)는 그룹에 대응하는 하나 이상의 파라미터에 기초하여, 비디오 디코더에서의 화소의 서브그룹 중 적어도 하나에 대한 서브그룹 파라미터의 세트를 코딩된 비디오 시퀀스로부터 추출할 수 있다. 서브그룹은 영상 그룹(Group of Pictures, GOPs), 영상, 타일, 슬라이스, 매크로블록, 코딩 유닛(Coding Unit, CU), 블록, 변환 유닛(Transform Unit, TU), 예측 유닛(Prediction Unit, PU) 등을 포함할 수 있다. 엔트로피 디코더/파서는 또한 코딩된 비디오 시퀀스 정보로부터 변환 계수, 양자화기 파라미터 값, 움직임 벡터 등과 같은 것을 추출할 수 있다.
파서(320)는 버퍼(315)로부터 수신된 비디오 시퀀스에 대해 엔트로피 디코딩/파싱 작업을 수행하여, 심볼(321)을 생성할 수 있다.
심볼의 재구축(321)에는 코딩된 비디오 영상 또는 그 일부(예: 인터 및 인트라 영상, 인터 및 인트라 블록)의 유형 및 기타 인자에 따라 다수의 상이한 유닛이 관여할 수 있다. 어떠한 유닛이 어떻게 관여하는지는 파서(320)에 의해, 코딩된 비디오 시퀀스로부터 파싱된 서브그룹 제어 정보에 의해 제어될 수 있다. 파서(320)와 이하의 다수의 유닛 사이의 그러한 서브그룹 제어 정보의 흐름은 명확성을 위해 나타내지 않았다.
이미 언급된 기능 블록을 넘어서, 디코더(210)는 이하에 설명되는 바와 같이 개념적으로 다수의 기능 유닛으로 세분화될 수 있다. 상업적 제약 하에서 작동하는 실제 구현에서, 이러한 유닛의 다수는 서로 밀접하게 상호작용하며, 적어도 부분적으로는 서로 통합될 수 있다. 그러나 개시된 주제를 설명하기 위해, 아래의 기능 유닛으로의 개념적 세분화가 적절하다.
첫 유닛은 스케일러/역변환 유닛(351)이다. 스케일러/역변환 유닛(351)은 파서(320)로부터 심볼(들)(321)로 사용할 변환, 블록 크기, 양자화 인자, 양자화 스케일링 매트릭스 등을 포함한, 제어 정보뿐만 아니라 양자화된 변환 계수를 수신한다. 스케일러/역변환 유닛(351)은 집성기(aggregator)(355)에 입력될 수 있는 샘플 값을 포함하는 블록을 출력할 수 있다.
경우에 따라서는, 스케일러/역변환 유닛(351)의 출력 샘플은 인트라 코딩된 블록에 관련될 수 있으며; 즉, 이전에 재구축된 영상으로부터의 예측 정보를 사용하지 않지만, 현재 영상의 이전에 재구축된 부분으로부터의 예측 정보를 사용할 수 있는 블록이다. 이러한 예측 정보는 인트라 영상 예측 유닛(352)에 의해 제공될 수 있다. 경우에 따라서는, 인트라 영상 예측 유닛(352)은 현재 (부분적으로 재구축된) 영상(356)으로부터 인출된 주위의 이미 재구축된 정보를 사용하여, 재구축중인 블록과 동일한 크기 및 형상의 블록을 생성한다. 집성기(355)는, 경우에 따라서는, 샘플마다에 기초하여, 인트라 예측 유닛(352)이 생성한 예측 정보를 스케일러/역변환 유닛(351)에 의해 제공되는 출력 샘플 정보에 추가한다.
다른 경우에, 스케일러/역 변환 유닛(351)의 출력 샘플은 인터 코딩되고 잠재적으로 움직임 보상된 블록에 속할 수 있다. 이러한 경우, 움직임 보상 예측 유닛(353)은 예측에 사용되는 샘플을 인출하기 위해 참조 영상 메모리(357)에 액세스할 수 있다. 블록에 속하는 심볼(321)에 따라 인출된 샘플을 움직임 보상한 후, 이러한 샘플은 집성기(355)에 의해 스케일러/역 변환 유닛의 출력(이 경우에 잔차 샘플 또는 잔차 신호라고 함)에 추가되어 출력 샘플 정보를 생성할 수 있다. 움직임 보상 유닛이 예측 샘플을 인출하는 참조 영상 메모리 형태 내의 주소는 움직임 벡터에 의해 제어될 수 있으며, 예를 들어 X, Y 및 참조 영상 구성요소를 가질 수 있는 심볼(321)의 형태로 움직임 보상 유닛에 사용할 수 있다. 움직임 보상은 또한 서브샘플 정확한 움직임 벡터가 사용되고 있을 때에 참조 영상 메모리부터 인출된 샘플 값의 보간, 움직임 벡터 예측 메커니즘 등을 포함할 수 있다.
집성기(355)의 출력 샘플은 루프 필터 유닛(354)에서 다양한 루프 필터링 기술의 대상이 될 수 있다. 비디오 압축 기술은 코딩된 비디오 비트스트림에 포함된 파라미터에 의해 제어되고 파서(320)로부터의 심볼(321)로서 루프 필터 유닛(354)에 이용 가능하게 되는 인 루프 필터 기술을 포함할 수 있지만, 또한 코딩된 영상 또는 코딩된 비디오 시퀀스의 이전(디코딩 순서상) 부분을 디코딩하는 동안에 획득된 메타 정보에 응답할 수 있을 뿐만 아니라 이전에 재구축되고 루프 필터링된 샘플 값에 응답할 수도 있다.
루프 필터 유닛(354)의 출력은 렌더 기기(render device)(212)에 출력될 수 있을뿐만 아니라 미래의 인터 영상 예측에 사용하기 위해 참조 영상 메모리(356)에 저장될 수 있는 샘플 스트림일 수 있다.
일단 완전히 재구축된 특정 코딩된 영상은 미래 예측을 위한 참조 영상으로서 사용될 수 있다. 코딩된 영상이 완전히 재구축되고 코딩된 영상이 참조 영상으로서 식별되면(예: 파서(320)에 의해), 현재 참조 영상(356)은 참조 영상 버퍼(357)의 일부가 될 수 있고, 다음의 코딩된 영상의 재구축을 시작하기 전에 새로운 현재 영상 메모리가 재할당될 수 있다.
비디오 디코더(320)는 ITU-T Rec. H.265와 같은 표준에 문서화될 수 있는 미리 결정된 비디오 압축 기술에 따라 디코딩 동작을 수행할 수 있다. 코딩된 비디오 시퀀스는, 비디오 압축 기술 문헌 또는 표준에, 특히 그 중의 프로파일 문서에 명시된 바와 같이, 비디오 압축 기술 또는 표준의 신택스를 고수한다는 의미에서, 사용되는 비디오 압축 기술 또는 표준에 의해 지정되는 신택스에 준거할 수 있다. 또한, 준수에 필요한 것은 코딩된 비디오 시퀀스의 복잡도가 비디오 압축 기술 또는 표준의 레벨에 의해 정의된 범위 내에 있어야 한다는 것일 수 있다. 경우에 따라서는, 레벨은 최대 영상 크기, 최대 프레임 레이트, 최대 재구축 샘플 레이트(예: 초당 메가 샘플로 측정됨), 최대 참조 영상 크기 등을 제한한다. 레벨마다 설정된 제한은 경우에 따라서는, 코딩된 비디오 시퀀스에서 시그널링된 가설 참조 디코더(Hypothetical Reference Decoder, HRD) 사양 및 메타 데이터를 통해 추가로 제한될 수 있다.
일 실시예에서, 수신기(310)는 인코딩된 비디오와 함께 추가(중복) 데이터를 수신할 수 있다. 추가 데이터는 코딩된 비디오 시퀀스(들)의 일부로서 포함될 수 있다. 추가 데이터는 데이터를 적절하게 디코딩하고/하거나 원본 비디오 데이터를 더 정확하게 재구축하기 위해 비디오 디코더(320)에 의해 사용될 수 있다. 추가 데이터는, 예를 들어 시간 계층, 공간 계층 또는 SNR 강화 계층(enhancement layer), 중복 슬라이스(redundant slice), 중복 영상(redundant picture), 순방향 오류 정정 코드(forward error correction code) 등의 형태일 수 있다.
도 4는 본 개시의 일 실시예에 따른 비디오 인코더(203)의 기능 블록도일 수 있다.
인코더(203)는 인코더(203)에 의해 코딩될 비디오 이미지(들)를 캡처할 수 있는 비디오 소스(201)(인코더의 일부가 아님)로부터 비디오 샘플을 수신할 수 있다.
비디오 소스(201)는 임의의 적절한 비트 심도(예: 8비트, 10비트, 12 비트,…), 임의의 색 공간(예: BT.601 Y CrCB, RGB,…) 및 임의의 적절한 샘플링 구조(예: Y CrCb 4:2:0, Y CrCb 4:4:4)일 수 있는 디지털 비디오 샘플 스트림의 형태로 인코더(203)에 의해 코딩될 소스 비디오 시퀀스를 제공할 수 있다. 미디어 서빙 시스템에서, 비디오 소스(201)는 미리 준비된 비디오를 저장하는 저장 기기일 수 있다. 비디오 회의 시스템에서, 비디오 소스(203)는 로컬 이미지 정보를 비디오 시퀀스로서 캡처하는 카메라일 수 있다. 비디오 데이터는 순차적으로 볼 때 움직임을 부여하는 복수의 개별 영상으로 제공될 수 있다. 영상 자체는 화소의 공간적 어레이로 구성될 수 있으며, 각각의 화소는 사용중인 샘플링 구조, 색 공간 등에 따라 하나 이상의 샘플을 포함할 수 있다. 당업자는 화소과 샘플 사이의 관계를 쉽게 이해할 수 있다. 아래 설명은 샘플에 중점을 둔다.
일 실시예에 따르면, 인코더(203)는 소스 비디오 시퀀스의 영상을 실시간으로 또는 애플리케이션에 의해 요구되는 임의의 다른 시간 제약하에 코딩된 비디오 시퀀스(443)로 코딩하고 압축할 수 있다. 적절한 코딩 속도를 강제하는 것은 제어기(450)의 기능 중 하나이다. 제어기는 이하에 설명된 바와 같이 다른 기능 유닛을 제어하며 이러한 유닛에 기능적으로 결합된다. 명확성을 위해 결합은 표시되지 않는다. 제어기에 의해 설정된 파라미터로는 레이트 제어 관련 파라미터(영상 스킵, 양자화기, 레이트 왜곡 최적화 기술의 람다 값 등), 영상 크기, 영상 그룹(GOP) 레이아웃, 최대 움직임 벡터 검색 범위 등을 포함할 수 있다. 제어기(450)의 다른 기능은 특정 시스템 설계에 최적화된 비디오 인코더(203)에 관련될 수 있기 때문에 당업자는 제어기(450)의 다른 기능을 쉽게 식별할 수 있다.
일부 비디오 인코더는 당업자가 "코딩 루프"로서 쉽게 인식하는 방식으로 작동한다. 지나치게 단순화된 설명으로서, 코딩 루프는 인코더(430)의 인코딩 부분(이하 "소스 코더")(코딩될 입력 영상 및 참조 영상(들)에 기초하여 심볼, 및 참조 영상(들)의 생성을 담당)과, 심볼을 재구축하여, (원격) 디코더도 생성할(심볼과 코딩된 비디오 비트스트림 간의 압축은 개시된 주제에서 고려된 비디오 압축 기술에서 무손실이므로) 샘플 데이터를 생성하는 인코더(203)에 내장된(로컬) 디코더(433)로 구성될 수 있다. 재구축된 샘플 스트림은 참조 영상 메모리(434)에 입력된다. 심볼 스트림의 디코딩은 디코더 위치(로컬 또는 원격)에 관계없이 비트가 정확한(bit-exact) 결과를 얻을 수 있으므로, 참조 영상 버퍼 내용은 로컬 인코더와 원격 인코더 사이에 비트가 정확하다. 다시 말해, 인코더의 예측 부분은 디코딩 동안에 예측을 사용하는 경우에 디코더가 "인식하는(see)" 것과 정확히 동일한 샘플 값을 참조 영상 샘플링으로 "인식한다". 참조 영상 동기성(및 예를 들어 채널 오류로 인해 동기성이 유지될 수 없는 경우, 결과로서 생긴 드리프트)는 당업자에게 잘 알려져 있다.
"로컬" 디코더(433)의 동작은 "원격" 디코더(210)의 동작과 동일할 수 있으며, 이는 이미 도 3과 관련하여 상세하게 설명하였다. 그러나 도 3도 간단히 참조하면, 심볼이 이용 가능하고 엔트로피 코더(445) 및 파서(320)에 의한 코딩된 비디오 시퀀스에 대한 심볼의 코딩/디코딩은 무손실일 수 있으므로, 채널(312), 수신기(310), 버퍼(315) 및 파서(320)를 포함한, 디코더(210)의 엔트로피 디코딩 부분은 로컬 디코더(433)에서 완전히 구현되지 않을 수 있다.
이 시점에서 이루어질 수 있는 관찰은 디코더에 존재하는 파싱/엔트로피 디코딩을 제외한 모든 디코더 기술도 반드시 상응하는 인코더에 실질적으로 동일한 기능적 형태로 존재할 필요가 있다는 것이다. 이러한 이유로, 개시된 주제는 디코더 동작에 초점을 맞추고 있다. 인코더 기술의 설명은 포괄적으로 설명된 디코더 기술의 반대이므로 생략할 수 있다. 특정 영역에서만 더 자세한 설명이 필요하며 아래에 제공된다.
동작의 일부로서, 소스 코더(430)는 "참조 프레임"으로 지정된 비디오 시퀀스로부터 하나 이상의 이전에 코딩된 프레임을 참조하여 입력 프레임을 예측적으로 코딩하는 움직임 보상된 예측 코딩을 수행할 수 있다. 이러한 방식으로, 코딩 엔진(432)은 입력 프레임의 화소 블록과, 입력 프레임에 대한 예측 참조(들)로서 선택될 수 있는 참조 프레임(들)의 화소 블록 사이의 차이를 코딩한다.
로컬 비디오 디코더(433)는 소스 코더(430)에 의해 생성된 심볼에 기초하여, 참조 프레임으로서 지정될 수 있는 프레임의 코딩된 비디오 데이터를 디코딩할 수 있다. 코딩 엔진(432)의 동작은 유리하게는 손실 프로세스일 수 있다. 코딩된 비디오 데이터가 비디오 디코더(도 4에 도시되지 않음)에서 디코딩될 수 있는 경우, 재구축된 비디오 시퀀스는 일반적으로 일부 오류가 있는, 소스 비디오 시퀀스의 복제본(replica)일 수 있다. 로컬 비디오 디코더(433)는 참조 프레임에 대해 비디오 디코더에 의해 수행될 수 있는 디코딩 프로세스를 복제하고 재구축된 참조 프레임이 참조 영상 캐시(434)에 저장되도록 할 수 있다. 이러한 방식으로, 인코더(203)는 원단(far-end)의 비디오 디코더에 의해 획득될 재구축된 참조 프레임으로서(송신 오류 없음) 공통 콘텐츠를 갖는 재구축된 참조 프레임의 사본을 로컬로 저장할 수 있다.
예측기(435)는 코딩 엔진(432)에 대한 예측 검색을 수행할 수 있다. 즉, 코딩될 새로운 프레임을 위해, 예측기(435)는 참조 영상 메모리(434)에서, 새로운 영상에 대한 적절한 예측 참조의 역할을 할 수 있는 샘플 데이터(후보 참조 화소 블록임), 또는 참조 영상 움직임 벡터, 블록 형상 등과 같은 특정 메타데이터를 검색할 수 있다. 예측기(435)는 적절한 예측 참조를 찾기 위해 샘플 블록별 화소 블록(sample block-by-pixel block) 단위로 동작할 수 있다. 경우에 따라서는, 예측기(435)에 의해 획득되는 검색 결과에 의해 결정되는 바와 같이, 입력 영상은 참조 영상 메모리(434)에 저장된 다수의 참조 영상으로부터 얻은 예측 참조를 가질 수 있다.
제어기(450)는, 예를 들어 비디오 데이터를 인코딩하기 위해 사용되는 파라미터 및 서브그룹 파라미터의 설정을 포함한, 비디오 코더(430)의 코딩 동작을 관리할 수 있다.
전술한 모든 기능 유닛의 출력은 엔트로피 코더(445)에서의 엔트로피 코딩 대상일 수 있다. 엔트로피 코더는 다양한 기능 유닛에 의해 생성된 심볼을, 예를 들어 Huffman 코딩, 가변 길이 코딩, 산술 코딩 등의 당업자에게 알려진 기술에 따라 심볼을 무손실 압축함으로써, 코딩된 비디오 시퀀스로 변환한다.
송신기(440)는 엔트로피 코더(445)에 의해 생성된 코딩된 비디오 시퀀스(들)를 버퍼링하여 인코딩된 비디오 데이터를 저장할 저장 기기에 대한 하드웨어/소프트웨어 링크일 수 있는 통신 채널(460)을 통한 송신을 위해 준비할 수 있다. 송신기(440)는 비디오 코더(430)로부터의 코딩된 비디오 데이터를 송신될 다른 데이터, 예를 들어 코딩된 오디오 데이터 및/또는 보조 데이터 스트림(소스는 도시되지 않음)과 병합할 수 있다.
제어기(450)는 인코더(203)의 동작을 관리할 수 있다. 코딩하는 동안, 제어기(450)는 각각의 코딩된 영상에 특정 코딩된 영상 유형을 할당할 수 있으며, 이는 각각의 영상에 적용될 수 있는 코딩 기술에 영향을 미칠 수 있다. 예를 들어, 영상은 종종 다음 프레임 유형 중 하나로서 할당될 수 있다:
인트라 영상(Intra Picture: I 영상)은 예측 소스로서 시퀀스 내의 어떤 프레임도 사용하지 않고 코딩 및 디코딩될 수 있는 것일 수 있다. 일부 비디오 코덱은, 예를 들어 독립 디코더 리프레시 영상(Independent Decoder Refresh Picture)을 포함한, 상이한 유형의 인트라 영상을 허용한다. 당업자는 I 영상의 이러한 변형 및 각각의 적용 및 특징을 알고 있다.
예측 영상(Predictive picture: P 영상)은 각각의 블록의 샘플 값을 예측하기 위해 최대 하나의 움직임 벡터 및 참조 색인을 사용하여 인트라 예측 또는 인터 예측을 사용하여 코딩 및 디코딩될 수 있는 것일 수 있다.
양방향 예측 영상(Bi-directionally Predictive Picture: B 영상)은 각각의 블록의 샘플 값을 예측하기 위해 최대 두 개의 움직임 벡터 및 참조 색인을 사용하는 인트라 예측 또는 인터 예측을 사용하여 코딩 및 디코딩될 수 있는 것일 수 있다. 유사하게, 다중 예측 영상(multiple-predictive picture)은 단일 블록의 재구축을 위해 두 개 이상의 참조 영상과, 연관 메타 데이터를 사용할 수 있다.
소스 영상은 일반적으로 공간적으로 복수의 샘플 블록(예: 4×4, 8×8, 4×8 또는 16×16 샘플 블록)으로 세분화되고 블록 단위로 코딩될 수 있다. 블록은 블록의 영상 각각에 적용된 코딩 할당에 의해 결정되는 다른 (이미 코딩된) 블록을 참조하여 예측적으로 코딩될 수 있다. 예를 들어, I 영상의 블록은 비 예측적으로 코딩되거나, 동일한 영상의 이미 코딩된 블록(공간 예측 또는 인트라 예측)을 참조하여 예측적으로 코딩될 수 있다. P 영상의 화소 블록은 이전에 코딩된 하나의 참조 영상을 참조하여 공간 예측을 통해 또는 시간 예측을 통해 비 예측적으로 코딩될 수 있다. B 영상의 블록은 이전에 코딩된 두 개의 참조 영상을 참조하여 공간 예측을 통해 또는 시간 예측을 통해 비 예측적으로 코딩될 수 있다.
비디오 코더(203)는 ITU-T Rec. H.265와 같은 미리 정해진 비디오 코딩 기술 또는 표준에 따라 코딩 동작을 수행할 수 있다. 그 동작에서, 비디오 코더(203)는 입력 비디오 시퀀스 내의 시간적 및 공간적 중복성을 이용하는 예측 코딩 동작을 포함한, 다양한 압축 동작을 수행할 수 있다. 따라서, 코딩된 비디오 데이터는 사용되는 비디오 코딩 기술 또는 표준에 의해 지정된 신택스를 준수할 수 있다.
일 실시예에서, 송신기(440)는 인코딩된 비디오와 함께 추가 데이터를 송신할 수 있다. 비디오 코더(430)는 코딩된 비디오 시퀀스의 일부로서 이러한 데이터를 포함할 수 있다. 추가 데이터는 시간/공간/SNR 강화 계층, 중복 영상 및 슬라이스와 같은 다른 형태의 중복 데이터, 보충 강화 정보(SEI) 메시지, 시각적 유용성 정보(Visual Usability Information, VUI) 파라미터 세트 프래그먼트 등을 포함할 수 있다.
도 5를 참조하면, 일 실시예에서, 플래그(예: adaptive_picture_resolution)(502)는 영상 세그먼트(예: 타일, 타일 그룹, CTU, CTU 그룹)의 공간 해상도가 디코딩, 예측을 위한 참조, 및 표시를 위한 출력(집합적으로 RPR 정보)을 위해 적응적으로 리샘플링/리스케일링/언스케일링(세 용어는 모두 상호 교환적으로 사용됨)될 수 있는지의 여부를 지시할 수 있다, 상기한 플래그가 RPR 정보의 존재를 지시하면, 특정 신택스 요소는 각각 참조 영상 및 출력 영상의 영상 크기를 지시할 수 있다. 이들 신택스 요소 및 전술한 플래그는, 예를 들어 디코더/비디오/시퀀스/영상/슬라이스/타일 파라미터 세트, 시퀀스/GOP/영상/슬라이스/GOB/타일 그룹/타일 헤더, 및/또는 SEI 메시지를 포함하기 위해, 임의의 적합한 고 레벨 신택스 구조일 수 있다. 이러한 모든 신택스 요소가 항상 존재할 필요는 없다. 예를 들어, RPR 해상도는 동적일 수 있지만, 영상의 종횡비는 비디오 코딩 기술이나 표준에서 고정될 수 있거나, 그 고정은 적절한 고 레벨 신택스 구조에서의 플래그로 시그널링될 수 있다. 유사하게, 비디오 코딩 기술 또는 표준은 참조 영상 리샘플링을 지정하고 출력 영상 리샘플링을 생략할 수 있으며, 그런 경우 출력 영상 크기 정보도 생략될 수 있다. 또 다른 예에서, 출력 영상 크기 정보의 존재는 그 자체의 플래그(도시되지 않음)를 조건으로 할 수 있다.
한정이 아닌 일례에서, 특정 RPR 정보는 시퀀스 파라미터 세트(501)에 있을 수 있다. 신택스 요소 reference_pic_width_in_luma_samples(503) 및 reference_pic_height_in_luma_samples(504)는 각각 참조 영상의 폭과 높이를 지시할 수 있다. 신택스 요소 output_pic_width_in_luma_samples(505) 및 output_pic_height_in_luma_samples(506)는 출력 영상 해상도를 지정할 수 있다. 전술한 모든 값은 비디오 압축 기술 또는 표준에서 일반적일 수 있는 휘도 샘플 단위 또는 기타 단위일 수 있다. 그 값에 대한 특정 제한은 비디오 코딩 기술 또는 표준에 의해 부과될 될 수도 있으며; 예를 들어, 하나 이상의 신택스 요소의 값은 특정한 2의 거듭 제곱이어야 하거나(비디오 코딩에서 일반적으로 사용되는 블록에 영상을 쉽게 맞출 수 있도록 하기 위함), 수평 크기 간의 관계는 특정 값으로 제한될 수 있다(이하에 설명되는 바와 같이, 특정 해상도 비율에 최적화된 유한 필터 세트를 설계할 수 있도록 하기 위함).
전술한 정보의 인코딩은 임의의 적합한 형태일 수 있다. 설명된 바와 같이, 한 가지 간단한 옵션은 ue(v)로 표시되는 부호 없는 정수 값인 가변 길이의 사용일 수 있다. H.264 또는 H.265와 같은 레거시 비디오 코딩 기술 또는 표준에서 영상 크기의 지시에 사용되는 옵션을 포함하는 다른 옵션이 항상 가능하다.
개시된 주제의 한 가지 목적은 코딩 루프 내부에, 즉, 코딩된 비디오 시퀀스(coded video sequence, CVS)의 서로 다른 영상 사이에 RPR을 허용하는 것이다. 따라서, 영상의 실제 디코딩된 크기를 지정하는 신택스 요소는 CVS 내에서, 신택스 요소를 잠재적으로 한 영상에서 다른 영상으로 변경할 수 있도록 해주는 신택스 구조에 있어야 한다. 일 실시예에서, 신택스 요소 decoded_pic_width_in_luma_samples(508) 및 decoded_pic_height_in_luma_samples(509)는 적절한 고 레벨 신택스, 여기서는 PPS(507)에 존재하고, 필드의 값은 코딩된 비디오 시퀀스(CVS) 내에서 변경될 수 있다. 다른 적절한 고 레벨 신택스 구조는 PPS, 슬라이스 파라미터 세트, 타일 파라미터 세트, 영상/슬라이스/GOB/타일 그룹/타일 헤더 및/또는 SEI 메시지를 포함할 수 있다. RPR 기술이 디코딩 프로세스에 규범적인 영향을 미칠 수 있기 때문에 SEI 메시지를 사용하는 것은 바람직하지 않을 수 있다. 이러한 신택스 요소의 코딩에 관해서는, 위의 주의 사항이 적용된다.
일 실시예에서, reference_pic_width_in_luma_samples 및 reference_pic_height_in_luma_samples는 디코딩된 영상 버퍼 내의 참조 영상 또는 참조 영상 세그먼트의 영상 해상도를 지시할 수 있다. 이는 참조 영상이 적용된 리샘플링과 관계없이 항상 전 해상도로 유지된다는 것을 의미할 수 있으며, 여기에 논의된 기술과 H.263 Annex P에 기재된 기술 사이의 한 가지 주요 차이점이다.
위의 설명은 RPR 기술이 전체 영상에 적용되는 것을 전체로 한다. 특정 환경은 타일 그룹, 타일, 슬라이스, GOB 등과 같은, 영상 세그먼트에 적용 가능한 RPR 기술의 이점을 누릴 수 있다. 예를 들어, 영상은 일반적으로 타일로 알려진, 의미상 다른 공간 영역으로 공간적으로 분할될 수 있다. 하나의 예는 보안 비디오이고 다른 것은, 예를 들어 큐브 프로젝션(큐브의 여섯 개 표면에 해당하는 6개의 뷰가 360도 장면의 표현을 구성함)을 사용하는 360도 비디오의 다양한 뷰이다. 이러한 시나리오 및 유사한 시나리오에서, 각각의 타일의 의미상 구별되는 콘텐츠는, 타일마다 콘텐츠 활동이 다를 수 있기 때문에, 타일마다에 기초하여, RPR 기술을 다르게 적용해야 할 수 있다. 따라서, 일 실시예에서, RPR 기술은 타일마다 적용될 수 있다. 이는 타일마다에 기초한 시그널링을 필요로 한다(표시되지 않음). 이러한 시그널링 기술은 시그널링이 잠재적으로 다수의 타일에 대해 포함될 필요가 있을 수 있다는 점을 제외하고는, 영상마다의 시그널링에 대해 위에서 설명한 것과 유사할 수 있다.
일 실시예에서, 각각의 타일 또는 타일 그룹은 타일 그룹 헤더 또는 헤더 파라미터 세트 또는 다른 적절한 고 레벨 신택스 구조에 서로 다른 값의 reference_tile_width_in_luma_samples 및 reference_tile_height_in_luma_samples을 가질 수 있다.
일 실시예에서, 참조 영상 해상도가 디코딩된 영상 해상도와 다르면, 디코딩된 영상은 참조 영상 해상도와 디코딩된 영상 해상도 사이의 비율과 관련하여 리스케일링될 수 있고, 그런 다음 리스케일링된 디코딩된 영상은 디코딩된 영상 버퍼(DPB)에 참조 영상으로서 저장될 수 있다.
일 실시예에서, 디코딩된 영상 해상도와 참조 영상 해상도 사이의 수직/수평 해상도 비율이 위에 개요를 설명한 바와 같이 명시적으로 시그널링되면, 디코딩된 영상은 시그널링된 비율과 관련하여 리스케일링될 수 있고, 그런 다음 리스케일링된 디코딩된 영상은 디코딩된 영상 버퍼(DPB)에 참조 영상으로서 저장될 수 있다.
일 실시예에서, output_pic_width_in_luma_samples 및 output_pic_height_in_luma_samples는 비디오 플레이어에게 출력 영상 또는 출력 영상 세그먼트의 영상 해상도를 지시할 수 있다.
일 실시예에서, 출력 영상 해상도가 참조 영상 해상도와 다르면, 참조 영상은 출력 영상 해상도와 참조 영상 해상도의 비율과 관련하여 리스케일링될 수 있고, 그런 다음 리스케일링된 참조 영상은 DPB로부터 출력 영상으로서 버핑 아웃되고(bumped out) 영상을 표시하도록 비디오 플레이어에 공급된다.
일 실시예에서, 참조 영상 해상도와 출력 영상 해상도 사이의 수직/수평 해상도 비율이 명시적으로 시그널링되면, 참조 영상은 출력 영상 해상도와 참조 영상 해상도 사이의 비율과 관련하여 리스케일링될 수 있으며, 그런 다음 리스케일링된 참조 영상은 DPB로부터 출력 영상으로서 범핑 아웃되고 영상을 표시하도록 비디오 플레이어에 공급될 수 있다.
일 실시예에서, 각각의 타일 또는 타일 그룹은 타일 그룹 헤더 또는 헤더 파라미터 세트 또는 다른 적절한시나 신텍스 구조에서 상이한 값의 output_tile_width_in_luma_samples 및 output_tile_height_in_luma_samples을 가질 수 있다.
특정 비디오 코딩 기술 또는 표준은 시간 서브계층 형태의 시간 확장성(temporal scalability)을 포함한다. 일 실시예에서, 각각의 서브계층은 상이한 값의 reference_pic_width_in_luma_samples, reference _pic_height_in_luma_samples, output_pic_width_in_luma_samples, output_pic_height_in_luma_samples, decoded_pic_width_in_luma_samples, decoded_pic_height_in_luma_samples을 가질 수 있다. 각각의 서브계층에 대한 신택스 요소는, 예를 들어 SPS, 또는 임의의 다른 적절한 고 레벨 신택스 구조에서 시그널링될 수 있다.
도 6을 참조하면, 일 실시예에서, 비디오 비트스트림 파서(602)는 코딩된 영상 버퍼(601)로부터 수신된 코딩된 비디오 비트스트림으로부터 상기한 신택스 요소 및 다른 신택스 요소를 파싱하고 해석할 수 있다. 코딩된 비디오 비트스트림으로부터 비-RPS 관련 신택스 요소를 수신하는 비디오 디코더는 잠재적으로 다운샘플링 된 해상도로 코딩된 영상을 재구축할 수 있다. 그렇게 하기 위해, 디코딩된 영상 버퍼(604)로부터 수신될 수 있는 참조 샘플이 필요할 수 있다. 일 실시예에 따르면, 디코딩된 영상 버퍼(604)가 참조 영상 또는 세그먼트를 전 해상도로 저장하기 때문에, 적절하게 리샘플링된 참조 영상을 디코더(603)에 제공하기 위해 리스케일링(605)이 필요할 수 있다. 리콜링(recalling)(603)은 스케일링 제어기(606)에 의해 제어될 수 있으며, 스케일링 파라미터(예: 위에서 언급한 신택스 요소)(607)를 수신하고 이를 리스케일러(605)를 위한 적합한 정보(608)로 변환했을 수 있으며; 예를 들어 적절한 리스케일링 필터 파라미터를 계산할 수 있다. 마지막으로, 출력 해상도 리스케일링이 또한 요구되면, 리스케일링 제어기(606)는 또한 디스플레이(610)를 위해 리스케일링하는 메커니즘에 리스케일링 정보(609)를 제공할 수 있다. 마지막으로, 재구축된 비디오는 비디오 플레이어(611)에 의해 재생되거나 소비 또는 저장을 위해 처리될 수 있다.
리스케일링 프로세스에서 사용되는 필터는 비디오 코딩 기술 또는 표준에서 특정될 수 있다. 양 방향의 필터링이 모두 코딩 루프 "내부"에 필요하므로 - 즉, 다운샘플(예: 디코딩된 영상 버퍼(604)에서 비디오 디코더(603)로) 및 업샘플(예: 비디오 디코더(603)에서 디코딩된 영상 버퍼(604)로) 모두 - 양 방향의 필터링은 완전히 지정된 대로 요구될 수 있으며, 가능한 한 많은 가역성(reversibility)을 위해 비디오 압축 기술 또는 표준에 의해 지정되어야 한다. 필터 설계 자체에 관해서는, 계산/구현 단순성과 성능 간의 균형을 유지할 필요가 있을 수 있다. 특정 초기 결과는 H.263 Annex P에서 제안된 이중 선형 필터가 성능 관점에서 차선일 수 있음을 지시한다. 다른 한편으로, 신경망 기반 처리를 채용하는 특정 적응형 필터링 기술은 상업적으로 적합한 시간 프레임으로 그리고 상업적으로 적합한 복잡도 제약 하에서 비디오 코딩 기술 또는 표준의 광범위한 채택을 가능하게 하기에는 너무 계산적으로 복잡할 수 있다. 균형으로서, SHVC에서 사용되는 것과 같은 필터 설계 또는 HEVC에서 사용되는 다양한 보간 필터가 적절할 수 있으며, 그 특성을 잘 이해할 수 있다는 추가적인 이점을 가질 수 있다.
도 7을 참조하면, 일 실시예에서, 슬라이스, GOB, 타일 또는 타일 그룹(이후 타일)과 같은, 각각의 영상 세그먼트는 상이한 해상도로, 디코딩된 타일에서 참조 타일로, 그리고 참조 타일에서 출력 타일(또는 영상)로 독립적으로 리스케일링될 수 있다.
인코더로의 입력 영상(701)이 정사각형이고, 각각 입력 영상의 1/4을 덮는 4개의 정사각형 소스 타일(702)(4개의 소스 타일 중 소스 타일 2를 보여줌)로 분할되는 것을 고려한다. 물론, 개시된 주제에 따르면, 다른 영상 지오메트리 및 타일 레이아웃이 마찬가지로 가능하다. 각각의 타일의 폭과 높이는 각각 W의 2배와 H의 2배이며, 이후 폭의 2배인 경우 "2W"로, 높이의 2배인 경우 "2H"로 표시된다(다른 숫자에 대해서도 마찬가지이다. 예를 들어 1W는 폭의 1배를 의미하고, 3H는 높이의 3배를 의미하며, 이 규칙은 도면과 설명 전체에 사용된다). 예를 들어 소스 타일은 보안 카메라 환경에서 서로 다른 장면의 카메라 뷰를 위한 것일 수 있다. 따라서 각각의 타일은 잠재적으로 근본적으로 다른 레벨의 활동을 갖는 콘텐츠를 커버할 수 있으며, 각각의 타일에 대해 다른 RPR 선택이 필요할 수 있다.
인코더(도시되지 않음)가 재구축 후, 다음과 같이 리스케일링된 해상도를 갖는 4개의 타일이 되는 코딩된 영상을 생성했다고 가정한다:
디코딩된 타일 0(702): 1H 및 1W
디코딩된 타일 1(703): 1H 및 2W
디코딩된 타일 2(704): 2H 및 2W
디코딩된 타일 3(705): 2H 및 1W
이로써 스케일로 표시된 바와 같이 디코딩된 타일 크기가 된다.
특정 비디오 코딩 기술 또는 표준에서, 어떤 타일에도 할당되지 않은 디코딩된 영상에 특정 샘플이 있을 수 있다는 점에 유의하기 바란다. 이러한 샘플을 코딩한다고 하더라도 어떻게 코딩할 수 있을지는 비디오 코딩 기술마다 다를 수 있다. 일 실시예에서, 특정 경우에, 표시된 타일 중 어느 것에도 할당되지 않은 샘플은 다른 타일에 할당될 수 있고, 모든 샘플은 예를 들어 스킵 모드에서 적은 수의 코딩된 비트를 생성하는 형태로 코딩될 수 있다. 일 실시예에서, 비디오 코딩 기술 또는 표준은, 영상의 모든 샘플이 각각의 비디오 영상에서 어떤 형태로 코딩되어야 한다는(현재는 약간 일반적인) 요건을 갖지 않을 수 있으며, 따라서 그러한 샘플에서 비트가 낭비되는 일은 없다. 또 다른 실시예에서는, 특정 패딩(padding) 기술을 사용하여 미사용 샘플을 효율적으로 채워 그 코딩 오버헤드를 무시할 수 있도록 한다.
이 예에서, 참조 영상 버퍼는 참조 영상 샘플을 전 해상도로 유지하는데, 이 경우 소스 해상도와 동일하다. 따라서, 참조를 위한 4개의 리스케일링된 타일(706 내지 709)은 각각 2H 및 2W 해상도로 유지될 수 있다. 디코딩된 타일(702 내지 705)의 다양한 해상도를 매칭시키기 위해, 디코더로부터 참조 영상 버퍼로 그리고 그 반대로 양 방향의 리스케일링(710)은 타일마다 다를 수 있다.
출력 리스케일링(711)이 또한 사용 중이면, 디코딩된 영상 버퍼의 출력은타일마다 또는 영상마다의 그래뉼래러티로, 표시(또는 처리)를 위한 출력 영상(712(으로 리스케일링될 수 있다. 표시를 위한 출력 영상(712)은 디코딩된 영상 버퍼의 영상보다 해상도가 더 크거나 작을 수 있다.
도 8a는 일 실시예에 따른, 코딩된 비디오 시퀀스의 코딩된 영상을 디코딩하는 방법(800)을 나타낸 흐름도이다. 일부 구현예에서, 도 8a의 하나 이상의 프로세스 블록은 디코더(210)에 의해 수행될 수 있다. 일부 구현예에서, 도 8a의 하나 이상의 프로세스 블록은 인코더(203)와 같은, 디코더(210)와 분리되거나 디코더(210)를 포함하는 다른 기기 또는 기기 그룹에 의해 수행될 수 있다.
도 8a를 참조하면, 방법(800)은 RPR 정보가 존재하는지의 여부를 판정하는 단계(805)를 포함하고, RPR 정보가 존재하지 않는다고 판정되면 방법이 종료된다(855). RPR 정보가 존재한다고 판정되면, 방법은 복수의 영상에 대한 제1 고 레벨 신택스 구조로부터 참조 세그먼트 해상도와 관련된 신택스 요소를 디코딩하는 단계(810)를 포함한다.
방법(800)은 제1 코딩된 영상에서 제2 코딩된 영상으로 변경되는 제2 고 레벨 신택스 구조로부터, 디코딩된 세그먼트 해상도와 관련된 신택스 요소를 디코딩하는 단계(820)를 포함한다.
방법(800)은 디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터 샘플을 리샘플링하는 단계(830)를 포함하고, 디코더는 디코딩 해상도로 세그먼트를 디코딩하며, 참조 영상 버퍼로부터의 샘플의 해상도는 참조 세그먼트 해상도이다.
방법(800)은 디코딩된 세그먼트 해상도의 세그먼트를 디코딩된 세그먼트 해상도의 디코딩된 세그먼트로 디코딩하는 단계(840)를 포함한다.
또한, 방법(800)은 디코딩된 세그먼트를 참조 영상 버퍼에 저장하는 단계(850)를 포함한다.
방법(800)은 디코딩된 세그먼트를 참조 세그먼트 해상도로 리샘플링하는 단계를 더 포함할 수 있다.
방법(800)은 디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터의 샘플을 리샘플링하는 것과, 디코딩된 세그먼트를 참조 세그먼트 해상도로 리샘플링하는 것 중 적어도 하나에 사용되는 리샘플링 필터를 더 포함할 수 있으며, 여기서는 리샘플링 필터는 이중 선형 필터보다 계산적으로 더 복잡하며 비 적응적이다.
방법(800)은 디코딩 해상도와 참조 세그먼트 해상도 사이의 관계에 기초하여 리샘플링 필터가 복수의 리샘플링 필터로부터 선택되는 것을 더 포함할 수 있다.
방법(800)은 세그먼트가 영상인 것을 더 포함할 수 있다.
방법(800)은 제1 코딩된 영상 및 제2 코딩된 영상 각각이 복수의 세그먼트를 포함하는 것을 더 포함할 수 있다.
방법(800)은 제3 고 레벨 신택스 구조로부터, 출력 해상도와 관련된 신택스 요소를 디코딩하는 단계; 및 디코딩된 세그먼트의 샘플을 출력 해상도로 리샘플링하는 단계를 더 포함할 수 있다.
방법(800)은 리샘플링이 폭 및 높이에 대해 상이한 리샘플링 인자를 사용하는 것을 더 포함할 수 있다.
도 8a는 방법(800)의 예시적인 블록을 도시하지만, 일부 구현예에서, 방법(800)은 도 8a에 나타낸 것보다 추가 블록, 더 적은 블록, 다른 블록, 또는 다르게 배열된 블록을 포함할 수 있다. 추가로 또는 대안으로, 방법(800)의 두 개 이상의 블록이 병렬로 수행될 수 있다.
또한, 제안된 방법은 처리 회로(예: 하나 이상의 프로세서 또는 하나 이상의 집적 회로)에 의해 구현될 수 있다. 일례에서, 하나 이상의 프로세서는 컴퓨터로 판독 가능한 비 일시적인 매체에 저장된 프로그램을 실행하여, 제안된 방법 중 하나 이상을 수행한다.
도 8b는 일 실시예에 따른, 비디오 시퀀스의 코딩된 영상을 디코딩하기 위한 장치(860)의 단순화된 블록도이다.
도 8b를 참조하면, 장치(860)는 제1 디코딩 코드(870), 제2 디코딩 코드(875), 리샘플링 코드(880), 제3 디코딩 코드(885) 및 저장 코드(890)를 포함한다.
제1 디코딩 코드(870)는 복수의 영상에 대한 제1 고 레벨 신택스 구조로부터, 참조 세그먼트 해상도와 관련된 신택스 요소를 디코딩하도록 구성된다.
제2 디코딩 코드(875)는 제1 코딩된 영상에서 제2 코딩된 영상으로 변경되는 제2 고 레벨 신택스 구조로부터, 디코딩된 세그먼트 해상도와 관련된 신택스 요소를 디코딩하도록 구성된다.
리샘플링 코드(880)는 디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터의 샘플을 리샘플링하도록 구성되며, 디코더는 세그먼트를 디코딩 해상도로 디코딩하고, 참조 영상 버퍼로부터의 샘플의 해상도는 참조 세그먼트 해상도이다.
제3 디코딩 코드(885)는 디코딩된 세그먼트 해상도의 세그먼트를 디코딩된 세그먼트 해상도의 디코딩된 세그먼트로 디코딩하도록 구성된다.
저장 코드(890)는 디코딩된 세그먼트를 참조 영상 버퍼에 저장하도록 구성된다.
전술한 기술은 컴퓨터로 판독 가능한 명령어를 사용하여 컴퓨터 소프트웨어로서 구현될 수 있고 하나 이상의 컴퓨터로 판독 가능한 매체에 물리적으로 저장될 수 있다.
전술한 적응적인 영상 해상도 리스케일링을 위한 기술은 컴퓨터로 판독 가능한 명령어을 사용하여 컴퓨터 소프트웨어로 구현될 수 있고 하나 이상의 컴퓨터로 판독 가능한 매체에 물리적으로 저장될 수 있다. 예를 들어, 도 9는 개시된 주제의 특정 실시예를 구현하기에 적합한 컴퓨터 시스템(900)을 도시한다.
컴퓨터 소프트웨어는 컴퓨터 중앙 처리 유닛(central processing unit, CPU), 그래픽 처리 유닛(graphics processing unit, GPU) 등에 의해, 어셈블리(assembly), 컴파일(compilation), 링킹(linking), 또는 이와 유사한 메커니즘을 거쳐 직접, 또는 해석(interpretation), 마이크로 코드 실행(micro-code execution) 등을 통해 실행될 수 있는 명령어를 포함하는 코드를 생성할 수 있는 임의의 적합한 기계 코드 또는 컴퓨터 언어를 사용하여 코딩될 수 있다.
명령어는, 예를 들어 개인용 컴퓨터, 태블릿 컴퓨터, 서버, 스마트폰, 게이밍 기기, 사물 인터넷 기기 등을 포함한, 다양한 유형의 컴퓨터 또는 그 구성요소에서 실행될 수 있다.
도 9에 도시된 컴퓨터 시스템(900)의 구성요소는 본질적으로 예시적인 것이며, 본 발명의 실시예를 구현하는 컴퓨터 소프트웨어의 사용 또는 기능의 범위에 대한 어떠한 제한을 시사하려는 의도는 아니다. 구성요소의 구성은 컴퓨터 시스템(900)의 실시예에 나타낸 구성요소 중 어느 하나 또는 조합과 관련된 임의의 종속성 또는 요건을 것으로 해석되어서는 안된다.
컴퓨터 시스템(900)은 특정 휴먼 인터페이스 입력 기기(human interface input device)를 포함할 수 있다. 이러한 휴먼 인터페이스 입력 기기는 한 명 이상의 인간 사용자에 의한 입력, 예를 들어 촉각 입력(예: 키 누름(keystroke), 스와이프(swip), 데이터 장갑 움직임), 오디오 입력(예: 음성, 박수), 시각적 입력(예: 제스처), 후각 입력(도시되지 않음)에 입력에 응답할 수 있다. 휴먼 인터페이스 기기는 또한 오디오(예: 음성, 음악, 주변 소리), 이미지(예: 스캔된 이미지, 정지 이미지 카메라로부터 획득한 사진 이미지), 비디오(예: 2차원 비디오, 입체 비디오(stereoscopic video)를 포함한 3차원 비디오)와 같은, 사람에 의한 의식적 입력과 반드시 직접 관련이 있는 것은 아닌 특정 미디어를 캡처하는 데 사용될 수도 있다.
입력 휴먼 인터페이스 기기는 키보드(901), 마우스(902), 트랙 패드(903), 터치 스크린(910), 데이터 장갑(904), 조이스틱(905), 마이크로폰(906), 스캐너(907), 카메라(908) 중 하나 이상(각각 하나만 표시됨)을 포함할 수 있다.
컴퓨터 시스템(900)은 특정 휴먼 인터페이스 출력 기기를 포함할 수 있다. 이러한 휴먼 인터페이스 출력 기기는 예를 들어 촉각 출력, 소리, 빛 및 냄새/맛을 통해, 한 명 이상의 인간 사용자의 감각을 자극할 수 있다. 이러한 휴먼 인터페이스 출력 기기는 촉각 출력 기기(예: 터치 스크린(910), 데이터 장갑(904), 또는 조이스틱(905)에 의한 촉각 피드백이지만, 입력 기기의 역할을 하지 않는 촉각 피드백 기기도 있을 수 있음), 오디오 출력 기기(예: 스피커(909), 헤드폰(도시되지 않음)), 시각적 출력 기기(예: 각각 터치 스크린 입력 기능이 있거나 없는, 각각 촉각 피드백 기능이 있거나 없는, CRT 스크린, LCD 스크린, 플라즈마 스크린, OLED 스크린을 포함하는 스크린(910) - 그 일부는 스테레오그래픽 출력(stereographic), 가상 현실 안경(virtual-reality glasses)(도시되지 않음), 홀로그래픽 디스플레이(holographic display) 및 연기 탱크(smoke tank)(도시되지 않음)와 같은 수단을 통해 2차원 시각적 출력 또는 3차원 이상의 출력을 할 수 있음 -), 및 프린터(도시되지 않음)를 포함할 수 있다.
컴퓨터 시스템(900)은 또한 CD/DVD 등의 매체(921)를 갖는 CD/DVD ROM RW(920)을 포함한 광학 매체, 썸 드라이브(thumb-drive )(922), 착탈 가능한 하드 드라이브 또는 솔리드 스테이트 드라이브(923), 테이프 및 플로피 디스크(도시되지 않음)와 같은 레거시 자기 매체, 보안 동글(security dongle)(도시되지 않음)과 같은 특수한 ROM/ASIC/PLD 기반 기기 등의 인간이 액세스 가능할 수 있는 저장 기기 및 그 연관 매체를 포함할 수도 있다.
당업자는 또한 현재 개시된 주제와 관련하여 사용된 바와 같이 컴퓨터로 판독 가능한 매체"라는 용어가 송신 매체, 반송파(carrier wave) 또는 기타 일시적인 신호를 포함하지 않는다는 것을 이해해야 한다.
컴퓨터 시스템(900)은 또한 하나 이상의 통신 네트워크(955)에 대한 인터페이스를 포함할 수 있다. 네트워크(955)는 예를 들어 무선, 유선, 광 등의 네트워크일 수 있다. 네트워크(955)는 또한 로컬, 광역, 대도시, 차량 및 산업, 실시간, 지연 허용 등의 네트워크일 수 있다. 네트워크(955)의 예로는 이더넷, 무선 LAN, GSM, 3G, 4G, 5G, LTE, 클라우드 등을 포함하는 셀룰러 네트워크, 케이블 TV, 위성 TV, 및 지상파 방송 TV를 포함하는 TV 유선 또는 무선 광역 디지털 네트워크, CANBus를 포함하는 차량 및 산업용, 등을 포함한다. 특정 네트워크(955)는 일반적으로 특정 범용 데이터 포트 또는 주변 버스(949)(예: 컴퓨터 시스템 900의 USB 포트)에 부착된 외부 네트워크 인터페이스 어댑터(954)를 필요로 하며; 다른 것은 일반적으로 이하에 설명하는 바와 같이 시스템 버스에 부착함으로써 컴퓨터 시스템(900)의 코어에 통합된다(예: PC 컴퓨터 시스템에의 이더넷 인터페이스 또는 스마트폰 컴퓨터 시스템에의 셀룰러 네트워크 인터페이스). 이러한 네트워크(955) 중 임의의 것을 사용하여, 컴퓨터 시스템(900)은 다른 네트워크와 통신할 수 있다. 이러한 통신은 단방향, 수신 전용(예: TV 방송), 단방향 전송 전용(예: CANbus에서 특정 CANbus 기기로) 또는 양방향(예: 로컬 또는 광역 디지털 네트워크를 사용하여 다른 컴퓨터 시스템으로)일 수 있다. 특정 프로토콜 및 프로토콜 스택이 전술한 바와 같은 네트워크(955) 및 네트워크 인터페이스(954) 각각에 사용될 수 있다.
전술한 휴먼 인터페이스 기기, 인간이 액세스 가능한 저장 기기치 및 네트워크 인터페이스는 컴퓨터 시스템(900)의 코어(940)에 부착될 수 있다.
코어(940)는 하나 이상의 중앙 처리 유닛(CPU)(941), 그래픽 처리 유닛(GPU)(942), FPGA(Field Programmable Gate Area)(943) 형태의 특수 프로그램 가능한 처리 유닛, 특정 태스크를 위한 하드웨어 가속기(944), 등을 포함할 수 있다. 판독 전용 메모리(Read-only memory, ROM)(945), 랜덤 액세스 메모리(946), 그래픽 어댑터(950), 사용자가 액세스할 수 없는 내부 하드 드라이브, SSD 등의 내부 대용량 저장장치(947)와 함께, 이러한 기기는 시스템을 통해 연결될 수 있다. 일부 컴퓨터 시스템에서, 시스템 버스(948)는 추가적인 CPU, GPU 등에 의한 확장을 가능하게 하는 하나 이상의 물리 플러그의 형태로 액세스 가능할 수 있다. 주변 기기는 코어의 시스템 버스(948)에 직접 연결되거나 주변 버스(949)를 통해 연결될 수 있다. 주변 버스를 위한 아키텍처로는 PCI, USB 등을 포함한다.
CPU(941), GPU(942), FPGA(943) 및 가속기(944)는, 조합하여, 전술한 컴퓨터 코드를 구성할 수 있는 특정 명령어를 실행할 수 있다. 그 컴퓨터 코드는 ROM(945) 또는 RAM(946)에 저장될 수 있다. 이행 데이터(transitional data)는 RAM(946)에도 저장될 수 있는 반면, 영구 데이터는 예를 들어 내부 대용량 저장장치(947)에 저장될 수 있다. 메모리 기기 중 어느 것에 대한 빠른 저장 및 검색은, 하나 이상의 CPU(941), GPU(942), 대용량 저장장치(947), ROM(945), RAM(946) 등과 밀접하게 연관될 수 있는 캐시 메모리의 사용을 통해 가능해질 수 있다.
컴퓨터로 판독 가능한 매체는 다양한 컴퓨터로 구현되는 동작(computer-implemented operation)을 수행하기 위한 컴퓨터 코드를 가질 수 있다. 매체 및 컴퓨터 코드는 본 개시의 목적을 위해 특별히 설계되고 구축된 것일 수 있거나, 컴퓨터 소프트웨어 분야의 당업자에게 잘 알려져있고 이용 가능한 종류일 수 있다.
한정이 아닌 예로서, 아키텍처(900), 구체적으로 코어(940)를 갖는 컴퓨터 시스템은 하나 이상의 유형의 컴퓨터로 판독 가능한 매체에 구현된 소프트웨어 실행하는 프로세서(들)(CPU, GPU, FPGA, 가속기 등을 포함)의 결과로서 기능을 제공할 수 있다. 이러한 컴퓨터로 판독 가능한 매체는 위에서 소개한 바와 같이 사용자가 액세스할 수 있는 대용량 저장장치와 연관된 매체일 수 있을 뿐만 아니라 코어 내부 대용량 저장장치(947) 또는 ROM(945)과 같은, 비 일시적인 성질의 코어(940)의 특정 저장장치일 수 있다. 본 개시의 다양한 실시예를 구현하는 소프트웨어는 그러한 기기에 저장되고 코어(940)에 의해 실행될 수 있다. 컴퓨터로 판독 가능한 매체는 구체적인 필요에 따라, 하나 이상의 메모리 기기 또는 칩을 포함할 수 있다. 소프트웨어는 코어(940) 및 특히 내부의 프로세서(CPU, GPU, FPGA 등 포함)로 하여금 RAM(946)에 저장된 데이터 구조를 정의하고 소프트웨어에 의해 정의된 프로세스에 따라 이러한 데이터 구조를 수정하는 것을 포함하여, 여기에 설명된 특정 프로세스 또는 특정 프로세스의 특정 부분을 실행하도록 할 수 있다. 추가로 또는 대안으로서, 컴퓨터 시스템은 여기에 설명된 특정 프로세스 또는 특정 프로세스의 특정 부분을 실행하기 위해 소프트웨어 대신 또는 소프트웨어와 함께 작동할 수 있는, 논리 배선(logic hardwired )의 결과로서 그렇지 않으면 회로(예: 가속기(944))에 다른 방식으로 구현되는 기능을 제공할 수 있다. 소프트웨어에 대한 언급은 논리를 포함할 수 있으며, 적절한 경우 그 반대도 마찬가지이다. 컴퓨터로 판독 가능한 매체에 대한 언급은 실행을 위한 소프트웨어를 저장하는 회로(예: 집적 회로(IC)), 실행을 위한 논리를 구현하는 회로, 또는 적절한 경우 둘 다를 포함할 수 있다. 본 개시는 하드웨어와 소프트웨어의 임의의 적절한 조합을 포함한다.
본 개시는 몇몇 예시적인 실시예를 설명했지만, 본 개시의 범위 내에 속하는 변경, 순열 및 다양한 대체 등가물이 있다. 따라서, 당업자는 본 명세서에 명시적으로 도시되지 않거나 설명되지 않았지만, 본 개시의 원리를 구현하고 따라서 본 개의 사상 및 범위 내에 있는 수많은 시스템 및 방법을 고안할 수 있다는 것을 이해할 것이다.

Claims (20)

  1. 하나 이상의 프로세서에 의해 수행되는, 코딩된 비디오 시퀀스의 코딩된 영상을 디코딩하는 방법으로서,
    복수의 영상에 대한 제1 고 레벨 신택스 구조로부터, 참조 세그먼트 해상도와 관련된 신택스 요소를 디코딩하는 단계;
    제1 코딩된 영상에서 제2 코딩된 영상으로 변경되는 제2 고 레벨 신택스 구조로부터, 디코딩된 세그먼트 해상도와 관련된 신택스 요소를 디코딩하는 단계;
    디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터의 샘플을 리샘플링하는 단계 - 상기 디코더는 세그먼트를 디코딩 해상도로 디코딩하고, 상기 참조 영상 버퍼로부터의 샘플의 해상도는 상기 참조 세그먼트 해상도임 -;
    상기 디코딩된 세그먼트 해상도의 세그먼트를 상기 디코딩된 세그먼트 해상도의 디코딩된 세그먼트로 디코딩하는 단계; 및
    상기 디코딩된 세그먼트를 상기 참조 영상 버퍼에 저장하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 디코딩된 세그먼트를 상기 참조 세그먼트 해상도로 리샘플링하는 단계를 더 포함하는 방법.
  3. 제2항에 있어서,
    상기 디코더에 의한 예측에 사용하기 위해 상기 참조 영상 버퍼로부터의 샘플을 리샘플링하는 단계 및 상기 디코딩된 세그먼트를 상기 참조 세그먼트 해상도로 리샘플링하는 단계 중 적어도 하나에 리샘플링 필터가 사용되며, 상기 리샘플링 필터는 이중 선형 필터보다 계산적으로 더 복잡하고 비 적응적인, 방법.
  4. 제3항에 있어서,
    상기 리샘플링 필터는 디코딩 해상도와 참조 세그먼트 해상도 사이의 관계에 기초하여 복수의 리샘플링 필터로부터 선택되는, 방법.
  5. 제1항에 있어서,
    상기 세그먼트는 영상인, 방법.
  6. 제1항에 있어서,
    상기 제1 코딩된 영상 및 상기 제2 코딩된 영상 각각은 복수의 세그먼트를 포함하는, 방법.
  7. 제1항에 있어서,
    제3 고 레벨 신택스 구조로부터, 출력 해상도와 관련된 신택스 요소를 디코딩하는 단계; 및
    디코딩된 세그먼트의 샘플을 출력 해상도로 리샘플링하는 단계를 더 포함하는 방법.
  8. 제1항에 있어서,
    상기 리샘플링은 폭 및 높이에 대해 상이한 리샘플링 인자를 사용하는, 방법.
  9. 코딩된 비디오 시퀀스의 코딩된 영상을 디코딩하는 장치로서,
    컴퓨터 프로그램 코드를 저장하도록 구성된 하나 이상의 메모리;
    상기 하나 이상의 메모리에 액세스하고 상기 컴퓨터 프로그램 코드에 따라 작동하도록 구성된 하나 이상의 프로세서를 포함하고,
    상기 컴퓨터 프로그램 코드는,
    복수의 영상에 대한 제1 고 레벨 신택스 구조로부터, 참조 세그먼트 해상도와 관련된 신택스 요소를 디코딩하도록 구성된 제1 디코딩 코드;
    제1 코딩된 영상에서 제2 코딩된 영상으로 변경되는 제2 고 레벨 신택스 구조로부터, 디코딩된 세그먼트 해상도와 관련된 신택스 요소를 디코딩하도록 구성된 제2 디코딩 코드;
    디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터의 샘플을 리샘플링하도록 구성된 리샘플링 코드 - 상기 디코더는 세그먼트를 디코딩 해상도로 디코딩하고, 상기 참조 영상 버퍼로부터의 샘플의 해상도는 상기 참조 세그먼트 해상도임 -;
    상기 디코딩된 세그먼트 해상도의 세그먼트를 상기 디코딩된 세그먼트 해상도의 디코딩된 세그먼트로 디코딩하도록 구성된 제3 디코딩 코드; 및
    상기 디코딩된 세그먼트를 상기 참조 영상 버퍼에 저장하도록 구성된 저장 코드를 포함하는,
    장치.
  10. 제9항에 있어서,
    상기 디코딩된 세그먼트를 상기 참조 세그먼트 해상도로 리샘플링하도록 구성된 제2 리샘플링 코드를 더 포함하는, 장치.
  11. 제10항에 있어서,
    상기 디코더에 의한 예측에 사용하기 위해 상기 참조 영상 버퍼로부터의 샘플을 리샘플링하는 것 및 상기 디코딩된 세그먼트를 상기 참조 세그먼트 해상도로 리샘플링하는 것 중 적어도 하나에 리샘플링 필터가 사용되며, 상기 리샘플링 필터는 이중 선형 필터보다 계산적으로 더 복잡하고 비 적응적인, 장치.
  12. 제11항에 있어서,
    상기 리샘플링 필터는 디코딩 해상도와 참조 세그먼트 해상도 사이의 관계에 기초하여 복수의 리샘플링 필터로부터 선택되는, 장치.
  13. 제9항에 있어서,
    상기 세그먼트는 영상인, 장치.
  14. 제9항에 있어서,
    상기 제1 코딩된 영상 및 상기 제2 코딩된 영상 각각은 복수의 세그먼트를 포함하는, 장치.
  15. 제9항에 있어서,
    상기 리샘플링은 폭 및 높이에 대해 상이한 리샘플링 인자를 사용하는, 장치.
  16. 코딩된 비디오 시퀀스의 코딩된 영상을 디코딩하기 위한 프로그램을 저장한, 컴퓨터로 판독 가능한 비 일시적인 저장 매체로서,
    상기 프로그램은 프로세서로 하여금,
    복수의 영상에 대한 제1 고 레벨 신택스 구조로부터, 참조 세그먼트 해상도와 관련된 신택스 요소를 디코딩하게 하는 명령어;
    제1 코딩된 영상에서 제2 코딩된 영상으로 변경되는 제2 고 레벨 신택스 구조로부터, 디코딩된 세그먼트 해상도와 관련된 신택스 요소를 디코딩하게 하는 명령어;
    디코더에 의한 예측에 사용하기 위해 참조 영상 버퍼로부터의 샘플을 리샘플링하게 하는 명령어 - 상기 디코더는 세그먼트를 디코딩 해상도로 디코딩하고, 상기 참조 영상 버퍼로부터의 샘플의 해상도는 상기 참조 세그먼트 해상도임 -;
    상기 디코딩된 세그먼트 해상도의 세그먼트를 상기 디코딩된 세그먼트 해상도의 디코딩된 세그먼트로 디코딩하게 하는 명령어; 및
    상기 디코딩된 세그먼트를 상기 참조 영상 버퍼에 저장하게 하는 명령어를 포함하는,
    컴퓨터로 판독 가능한 비 일시적인 저장 매체.
  17. 제16항에 있어서,
    상기 디코딩된 세그먼트를 상기 참조 세그먼트 해상도로 리샘플링하는 것을 더 포함하는, 컴퓨터로 판독 가능한 비 일시적인 저장 매체.
  18. 제17항에 있어서,
    상기 디코더에 의한 예측에 사용하기 위해 상기 참조 영상 버퍼로부터의 샘플을 리샘플링하는 것 및 상기 디코딩된 세그먼트를 상기 참조 세그먼트 해상도로 리샘플링하는 것 중 적어도 하나에 리샘플링 필터가 사용되며, 상기 리샘플링 필터는 이중 선형 필터보다 계산적으로 더 복잡하고 비 적응적인, 컴퓨터로 판독 가능한 비 일시적인 저장 매체.
  19. 제18항에 있어서,
    상기 리샘플링 필터는 디코딩 해상도와 참조 세그먼트 해상도 사이의 관계에 기초하여 복수의 리샘플링 필터로부터 선택되는, 컴퓨터로 판독 가능한 비 일시적인 저장 매체.
  20. 제16항에 있어서,
    상기 제1 코딩된 영상 및 상기 제2 코딩된 영상 각각은 복수의 세그먼트를 포함하는, 컴퓨터로 판독 가능한 비 일시적인 저장 매체.
KR1020217019261A 2019-01-02 2019-12-27 인터 예측 및 표시를 위한 적응적인 영상 해상도 리스케일링 KR102589711B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962704040P 2019-01-02 2019-01-02
US62/704,040 2019-01-02
US16/710,389 2019-12-11
US16/710,389 US11290734B2 (en) 2019-01-02 2019-12-11 Adaptive picture resolution rescaling for inter-prediction and display
PCT/US2019/068675 WO2020142358A1 (en) 2019-01-02 2019-12-27 Adaptive picture resolution rescaling for inter-prediction and display

Publications (2)

Publication Number Publication Date
KR20210091314A true KR20210091314A (ko) 2021-07-21
KR102589711B1 KR102589711B1 (ko) 2023-10-13

Family

ID=71123363

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217019261A KR102589711B1 (ko) 2019-01-02 2019-12-27 인터 예측 및 표시를 위한 적응적인 영상 해상도 리스케일링

Country Status (6)

Country Link
US (2) US11290734B2 (ko)
EP (1) EP3769531A4 (ko)
JP (1) JP7323618B2 (ko)
KR (1) KR102589711B1 (ko)
CN (1) CN112997503B (ko)
WO (1) WO2020142358A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023048500A1 (ko) * 2021-09-23 2023-03-30 엘지전자 주식회사 영상 부호화/복호화 방법, 비트스트림을 전송하는 방법 및 비트스트림을 저장한 기록 매체
WO2023059034A1 (ko) * 2021-10-04 2023-04-13 엘지전자 주식회사 적응적으로 해상도를 변경하는 영상 부호화/복호화 방법, 장치, 및 비트스트림을 전송하는 방법

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3777170A4 (en) * 2019-03-01 2021-11-10 Alibaba Group Holding Limited ADAPTIVE RESOLUTION VIDEO CODING
MX2022001594A (es) * 2019-08-06 2022-03-11 Op Solutions Llc Método de gestión adaptativa de resolución mediante subfichas.
WO2022216051A1 (ko) * 2021-04-08 2022-10-13 엘지전자 주식회사 영상 디코딩 방법 및 그 장치
JPWO2022264622A1 (ko) * 2021-06-18 2022-12-22
WO2023066672A1 (en) * 2021-10-21 2023-04-27 Nokia Technologies Oy Video coding using parallel units
CN116634177B (zh) * 2023-06-16 2024-02-20 北京行者无疆科技有限公司 一种基于hdmi通信设备的视频通信解码处理方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160016936A (ko) * 2013-05-31 2016-02-15 퀄컴 인코포레이티드 스케일링 팩터를 사용하는 리샘플링

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007528675A (ja) * 2004-03-09 2007-10-11 トムソン リサーチ ファンディング コーポレイション Avc用解像度低下更新モード
US9071847B2 (en) 2004-10-06 2015-06-30 Microsoft Technology Licensing, Llc Variable coding resolution in video codec
US7956930B2 (en) 2006-01-06 2011-06-07 Microsoft Corporation Resampling and picture resizing operations for multi-resolution video coding and decoding
CN102388620B (zh) * 2009-02-01 2014-10-29 Lg电子株式会社 广播接收机和三维视频数据处理方法
KR101379190B1 (ko) * 2009-10-28 2014-03-31 에스케이 텔레콤주식회사 적응적인 해상도 기반의 영상 부호화/복호화 방법 및 장치
US20130016769A1 (en) 2011-07-17 2013-01-17 Qualcomm Incorporated Signaling picture size in video coding
US9451284B2 (en) * 2011-10-10 2016-09-20 Qualcomm Incorporated Efficient signaling of reference picture sets
CN104813669B (zh) * 2012-09-21 2018-05-22 诺基亚技术有限公司 用于视频编码的方法和装置
CN104704850A (zh) * 2012-10-09 2015-06-10 思科技术公司 对位流中的图像格式转换的在先解码的图像的输出管理
CA2897152C (en) 2013-01-07 2019-03-05 Kemal Ugur Inter-layer video encoding and decoding with adaptive resolution change at indicated switching points
US9794555B2 (en) * 2013-03-15 2017-10-17 Arris Enterprises Llc Adaptive sampling filter process for scalable video coding
US20150016503A1 (en) 2013-07-15 2015-01-15 Qualcomm Incorporated Tiles and wavefront processing in multi-layer context
GB2516424A (en) * 2013-07-15 2015-01-28 Nokia Corp A method, an apparatus and a computer program product for video coding and decoding
AU2013228045A1 (en) 2013-09-13 2015-04-02 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding video data
KR20160101994A (ko) * 2013-12-20 2016-08-26 엘지전자 주식회사 적응적 샘플링을 이용한 비디오 신호의 인코딩, 디코딩 방법 및 그 장치
EP4020983A1 (en) * 2014-12-31 2022-06-29 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
GB2534136A (en) 2015-01-12 2016-07-20 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
WO2017052250A1 (ko) * 2015-09-23 2017-03-30 엘지전자(주) 영상의 부호화/복호화 방법 및 이를 위한 장치
US10764602B2 (en) * 2016-01-25 2020-09-01 Koninklijke Kpn N.V. Spatial scalable video coding
FI20165547A (fi) * 2016-06-30 2017-12-31 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodausta ja videokoodauksen purkua varten
CN108495130B (zh) * 2017-03-21 2021-04-20 腾讯科技(深圳)有限公司 视频编码、解码方法和装置、终端、服务器和存储介质
WO2019009473A1 (ko) * 2017-07-04 2019-01-10 엘지전자 주식회사 360도 비디오의 영역 기반 처리 방법 및 장치
CN111989920A (zh) 2018-02-20 2020-11-24 弗劳恩霍夫应用研究促进协会 支持变化的分辨率和/或有效地处理区域级打包的图片/视频编码
US10764603B2 (en) * 2018-12-31 2020-09-01 Alibaba Group Holding Limited Resolution-adaptive video coding
SG11202108935YA (en) * 2019-03-11 2021-09-29 Tencent America LLC Signaling of adaptive picture size in video bitstream

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160016936A (ko) * 2013-05-31 2016-02-15 퀄컴 인코포레이티드 스케일링 팩터를 사용하는 리샘플링

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023048500A1 (ko) * 2021-09-23 2023-03-30 엘지전자 주식회사 영상 부호화/복호화 방법, 비트스트림을 전송하는 방법 및 비트스트림을 저장한 기록 매체
WO2023059034A1 (ko) * 2021-10-04 2023-04-13 엘지전자 주식회사 적응적으로 해상도를 변경하는 영상 부호화/복호화 방법, 장치, 및 비트스트림을 전송하는 방법

Also Published As

Publication number Publication date
US20200213605A1 (en) 2020-07-02
JP2022513716A (ja) 2022-02-09
US11290734B2 (en) 2022-03-29
JP7323618B2 (ja) 2023-08-08
CN112997503B (zh) 2024-02-02
WO2020142358A1 (en) 2020-07-09
US20220132153A1 (en) 2022-04-28
KR102589711B1 (ko) 2023-10-13
EP3769531A1 (en) 2021-01-27
EP3769531A4 (en) 2022-01-26
CN112997503A (zh) 2021-06-18

Similar Documents

Publication Publication Date Title
KR102596380B1 (ko) 참조 픽처 리샘플링을 위한 시그널링
KR102589711B1 (ko) 인터 예측 및 표시를 위한 적응적인 영상 해상도 리스케일링
KR102592924B1 (ko) 비디오 비트스트림에서의 적응적 픽처 크기의 시그널링
US11765344B2 (en) Signaling of inter layer prediction in video bitstream
JP7408673B2 (ja) ビデオビットストリームにおけるインターレイヤ予測のシグナリング
JP7391994B2 (ja) 参照ピクチャー再サンプリングのための出力ピクチャー・サイズの信号伝達に関する方法、装置およびコンピュータ・プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant