KR102412699B1 - 비디오 코딩에서 움직임 보상을 위한 시스템 및 방법 - Google Patents
비디오 코딩에서 움직임 보상을 위한 시스템 및 방법 Download PDFInfo
- Publication number
- KR102412699B1 KR102412699B1 KR1020167035965A KR20167035965A KR102412699B1 KR 102412699 B1 KR102412699 B1 KR 102412699B1 KR 1020167035965 A KR1020167035965 A KR 1020167035965A KR 20167035965 A KR20167035965 A KR 20167035965A KR 102412699 B1 KR102412699 B1 KR 102412699B1
- Authority
- KR
- South Korea
- Prior art keywords
- filter
- horizontal
- vertical
- pixel
- dimensional
- 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/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/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/70—Methods 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
-
- 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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- 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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
비디오의 비트열(bitstream)을 복호화(decoding)하기 위한 방법 및 사용자 장치에 관한 것이다. 사용자 장치는 송수신부 및 디코더를 포함한다. 송수신부(transceiver)는 픽셀(pixel) 블록을 포함하는 비디오의 부호화된(encoded) 비트열을 수신하도록 구성된다. 디코더는 다수의 수직 보간(interpolating) 필터들, 하나의 수직 1차원 필터 및 수직 2차원 필터 중에서 선택하도록 구성되는 처리 회로를 포함한다. 또한, 처리 회로는 다수의 수평 보간 필터들, 하나의 수평 1차원 필터 및 수평 2차원 필터 중에서 선택하도록 구성된다. 또한, 처리 회로는 픽셀 블록의 보간되는 픽셀들에 의해 적어도 하나의 픽셀 값을 생성하기 위해서, 선택된 수평 및 수직 보간 필터들을 사용하도록 구성된다. 또한, 처리 회로는 비디오를 복구하기 위해서, 적어도 하나의 픽셀 값을 사용하는 예측 복호화를 수행하도록 구성된다.
Description
본 발명은 일반적으로 비디오 코딩, 그리고 더 구체적으로는 비디오 코딩에서의 움직임 보상(motion compensation)에 관한 것이다.
움직임 보상(motion compensation)은 비디오에서 카메라 및/또는 객체의 움직임을 고려하여 주어진 이전 및/또는 이후의 프레임에 따라 비디오의 프레임을 예측하는데 사용되는 알고리즘 기법이다. 이것은 MPEG(moving picture experts group)-2 파일 생성과 같은 비디오 압축을 위한 비디오 데이터의 부호화에 사용된다. 움직임 보상은 기준 화상(reference picture)을 현재 화상으로 변환하는 관점에서 화상을 기술한다. 기준 화상은 시간상 이전이거나 이후의 시간일 수 있다. 이전에 전송/저장된 이미지로부터 이미지들이 정확하게 합성될 수 있으면, 압축 효율이 향상될 수 있다.
움직임 보상은 HEVC(high efficiency video coding) 및 H.264/AVC(advanced video codec)와 같은 비디오 코덱에서 중요한 구성이며, 코덱에서 가장 많은 압축 이득을 제공한다. 움직임 보상은 비디오의 시간적 중복(temporal redundancy)을 제거함으로써 비디오를 압축한다. 움직임 보상의 블록 기반 버전에서, 현재 화상의 블록은 이전에 코딩된 화상의 이동된 블록으로부터 예측된다. 움직임 벡터 (mvx, mvy)는 변위(displacement)를 나타내며, 여기서 mvx는 수평 방향의 변위이고, mvy는 수직 방향의 변위이다. 비디오의 객체가 부분 픽셀(fractional pixel) 움직임을 겪을(undergo) 수 있으므로, 이전에 코딩된 화상에서 예측된 블록을 결정하기 위해 샘플 보간(sample interpolation)이 필요하다. 샘플 보간은 보간 필터를 사용하여 수행된다. 보간 필터는 보간된 샘플의 품질을 제어하고, 나아가 압축 효율을 좌우한다.
본 발명은 비디오 코딩의 효율을 향상시키기 위한 것이다.
사용자 장치는 비디오의 비트열(bitstream)을 복호화(decoding)하기 위해 제공된다. 사용자 장치는 송수신부(transceiver) 및 디코더(decoder)를 포함한다. 송수신부는 픽셀 블록을 포함하는 비디오의 부호화된 비트열을 수신하도록 구성된다. 디코더는 복수의 수직 보간 필터 중에서 수직 1차원 필터 및 수직 2차원 필터 중 하나를 선택하도록 구성된 처리 회로를 포함한다. 또한, 처리 회로는 복수의 수평 보간 필터 중에서 수평 1차원 필터 및 수평 2차원 필터 중 하나를 선택하도록 구성된다. 또한 처리 회로는 선택된 수직 및 수평 보간 필터를 사용하여 픽셀 블록의 픽셀들을 보간함으로써 적어도 하나의 픽셀 값을 생성하도록 구성된다. 또한 처리 회로는 비디오를 복원하기 위해 적어도 하나의 픽셀 값을 사용하여 예측 복호화를 수행하도록 구성된다.
사용자 장치는 비디오의 비트열을 부호화하기 위해 제공된다. 사용자 장치는 송수신부 및 인코더를 포함한다. 인코더는, 복수의 수직 보간 필터들 중에서 수직 1차원 필터 및 수직 2차원 필터 중 하나를 선택하고, 복수의 수평 보간 필터들 중에서, 수평 1차원 필터 및 수평 2차원 필터 중 하나를 선택하고, 선택된 수평 및 수직 보간 필터를 사용하여 픽셀 블록의 픽셀들을 보간함으로써 적어도 하나의 픽셀 값을 생성하고, 적어도 하나의 픽셀 값을 사용하여 예측 부호화를 수행하여 비디오의 부호화된 비트열을 생성하도록 구성되는 처리 회로 및 비디오의 부호화된 비트열을 전송하도록 구성된 송수신부를 포함한다.
비디오의 부호화된 비트열을 복호화하는 방법이 제공된다. 방법은 픽셀 블록을 포함하는 비디오의 부호화된 비트열을 수신하는 단계를 포함한다. 또한, 방법은 복수의 수직 보간 필터들 중에서 수직 1차원 필터 및 수직 2차원 필터 중 하나를 선택하는 단계를 포함한다. 또한, 방법은 복수의 수평 보간 필터들 중에서 수평 1차원 필터 및 수평 2차원 필터 중 하나를 선택하는 단계를 포함한다. 또한, 방법은 픽셀 블록의 픽셀 값들을 보간함으로써 적어도 하나의 픽셀 값을 생성하기 위해 선택된 수직 및 수평 보간 필터를 사용하는 단계를 포함한다. 또한, 방법은 비디오를 복원하기 위해 적어도 하나의 픽셀 값을 사용하여 예측 복호화를 수행하는 단계를 포함한다.
하기에서 상세한 설명을 하기 전에, 본 특허 문헌 전체에 걸쳐 사용되는 특정 단어 및 어구들의 정의를 기술하는 것이 유리할 수 있다. "포함한다(include)" 및 "구성하다(comprise)" 용어 및 그 파생어는 제한 없는 포함을 의미한다. "또는"이라는 용어는 포괄적이며, 및/또는 을 의미한다. 본원에서 사용된 "~와 관련된(associated with)" 및 “그것과 관련되는(associated therewith)” 문구 및 이의 파생어들은 포함하다(include), ~내에 포함되다(be included within), ~와 상호 연결하다(interconnect with), 포함하다(contain), ~내에 포함되다(be contained within), ~에 또는 ~와 연결하다(connect to or with), ~에 또는 ~와 결합하다(couple to or with), ~와 통신할 수 있는(be communicable with), ~와 협력하다(cooperate with), 끼우다(interleave), 나란히 놓다(juxtapose), ~에 인접하다(be proximate to), ~에 또는 ~와 결합되다(be bound to or with), 가지다(have), ~의 속성을 갖다(have a property of), ~에 또는 ~와 관계가 있다(have a relationship to or with) 기타 등등을 의미할 수 있다. "컨트롤러"라는 용어는 적어도 하나의 동작을 제어하는 임의의 장치, 시스템 또는 그 일부를 의미하며, 그러한 장치는 하드웨어(hardware), 펌웨어(firmware) 또는 소프트웨어(software), 또는 이들 중 적어도 2개의 조합으로 구현될 수 있다. 임의의 특정 컨트롤러와 관련된 기능은 로컬(local) 또는 원격으로 중앙집중형 또는 분산형일 수 있다. 다른 특정 단어들 및 구문들의 정의가 본 특허 문서 전반에 걸쳐서 제공되며, 당업자는 대부분의 경우는 아니더라도 많은 경우에, 그러한 정의들이 정의된 단어들 및 구문들로 미래뿐 아니라 이전의 사용들에도 적용될 수 있음을 이해하여야 한다.
비디오 코딩에 있어서, 효율이 향상된다.
본 발명의 개시 및 그 장점들에 대한 보다 완전한 이해를 위해, 첨부된 도면들과 함께, 하기의 설명으로 참조가 이루어지며, 동일한 도면 부호는 동일한 부분을 나타낸다.
도 1은 본 개시에 따른 무선 네트워크의 예를 도시한다.
도 2는 본 개시에 따른 eNodeB의 예를 도시한다.
도 3은 본 개시에 따른 사용자 장치(user equipment, UE)의 예를 도시한다.
도 4a는 본 개시의 실시 예들에 따른 비디오 인코더의 예를 도시한다.
도 4b는 본 개시의 실시 예들에 따른 비디오 디코더의 예를 도시한다.
도 5a 내지 5c는 본 개시의 실시 예들에 따른 움직임 보상 보간 필터의 상위 레벨 비교를 도시한다.
도 6은 본 개시의 실시 예들에 따른 1/4 샘플 정확도의 부분 샘플(fractional sample) 위치들을 도시한다.
도 7은 본 개시에 따른 1/2-픽셀 위치들을 이용한 HEVC(high efficiency video coding)에서 부분-픽셀 보간의 절차를 도시한다.
도 8a 및 8b는 본 개시의 실시 예들에 따른 수평 방향을 따라 1/2-픽셀 보간이 사용된 샘플들을 도시한다.
도 9a 및 9b는 수직 방향을 따라 1/2-픽셀 보간이 사용된 샘플들을 도시한다.
도 10은 본 개시의 실시 예들에 따른 1/2-픽셀 위치들을 사용한 부분-픽셀 보간의 절차를 도시한다.
도 11a 및 11b는 본 개시의 실시 예들에 따른 2DHV(two dimensional horizontal and vertical) 필터 디자인 1/2-픽셀 보간을 위한 절차를 도시한다.
도 12는 본 개시의 실시 예에 따른 블록이 단-예측(uni-predicted) 또는 양-예측(bi-predicted) 인지에 따라 상이한 보간 필터들을 적용하는 절차를 도시한다.
도 13은 본 개시의 실시 예에 따른 2DHV 필터들의 사용을 시그널링(signal) 하기 위해 CU 레벨 플래그(coding unit-level flag)를 사용하는 절차를 도시한다.
도 1은 본 개시에 따른 무선 네트워크의 예를 도시한다.
도 2는 본 개시에 따른 eNodeB의 예를 도시한다.
도 3은 본 개시에 따른 사용자 장치(user equipment, UE)의 예를 도시한다.
도 4a는 본 개시의 실시 예들에 따른 비디오 인코더의 예를 도시한다.
도 4b는 본 개시의 실시 예들에 따른 비디오 디코더의 예를 도시한다.
도 5a 내지 5c는 본 개시의 실시 예들에 따른 움직임 보상 보간 필터의 상위 레벨 비교를 도시한다.
도 6은 본 개시의 실시 예들에 따른 1/4 샘플 정확도의 부분 샘플(fractional sample) 위치들을 도시한다.
도 7은 본 개시에 따른 1/2-픽셀 위치들을 이용한 HEVC(high efficiency video coding)에서 부분-픽셀 보간의 절차를 도시한다.
도 8a 및 8b는 본 개시의 실시 예들에 따른 수평 방향을 따라 1/2-픽셀 보간이 사용된 샘플들을 도시한다.
도 9a 및 9b는 수직 방향을 따라 1/2-픽셀 보간이 사용된 샘플들을 도시한다.
도 10은 본 개시의 실시 예들에 따른 1/2-픽셀 위치들을 사용한 부분-픽셀 보간의 절차를 도시한다.
도 11a 및 11b는 본 개시의 실시 예들에 따른 2DHV(two dimensional horizontal and vertical) 필터 디자인 1/2-픽셀 보간을 위한 절차를 도시한다.
도 12는 본 개시의 실시 예에 따른 블록이 단-예측(uni-predicted) 또는 양-예측(bi-predicted) 인지에 따라 상이한 보간 필터들을 적용하는 절차를 도시한다.
도 13은 본 개시의 실시 예에 따른 2DHV 필터들의 사용을 시그널링(signal) 하기 위해 CU 레벨 플래그(coding unit-level flag)를 사용하는 절차를 도시한다.
하기에서 논의되는 도 1 내지 도 13 및 본 특허 문헌에서 본 개시 내용의 원리를 설명하기 위해 사용된 다양한 실시 예들은 단지 설명을 위한 것이며, 본 발명의 범위를 제한하는 것으로 해석되어서는 아니된다. 당업자는 본 개시의 원리가 임의로 적절하게 배열된 장치 또는 시스템에서 구현될 수 있다는 것을 이해할 것이다.
본 개시는 비디오 코딩에서 움직임 보상을 위한 다양한 실시 예들을 설명한다. 움직임 보상 보간 필터들 및 방법들은 움직임 보상 보간 필터들의 다른 타입들을 언제 적용할지 결정하기 위해 개시된다.
본 개시의 하나 또는 그 이상의 실시 예들은 H.625/고효율 비디오 코딩(high efficiency video coding, 이하 ‘HEVC’)이 움직임 보상 보간을 위해 1차원 필터들을 사용하는 것을 고려한다. 움직임 보상 필터들은 수직 및 수평 방향들로 각각 적용된다. 움직임 보상 필터들은 단-예측(uni-predicted) 및 양-예측(bi-predicted) 블록들, 모든 블록 사이즈들, 기준 화상 리스트 0 및 리스트 1로부터 예측된 블록, 임의의 양자화 파라미터(parameter)를 사용하여 코딩된(coded) 블록에 균일하게 적용된다.
도 1은 본 개시에 따른 예시적인 무선 네트워크 100을 도시한다. 도 1에 도시 된 무선 네트워크 100의 실시 예는 단지 설명을 위한 것이다. 무선 네트워크 100의 다른 실시 예들이 개시의 범위를 벗어나지 않고 사용될 수 있다.
도 1에 도시 된 바와 같이, 무선 네트워크 100은 eNB(eNodeB) 101, eNB 102 및 eNB 103을 포함한다. eNB 101은 eNB 102 및 eNB 103과 통신한다. eNB 101은 또한 적어도 하나의 인터넷, 전용(proprietary) IP(internet protocol) 네트워크, 또는 다른 데이터 네트워크와 같은 적어도 하나의 IP 네트워크 130과 통신한다.
eNB 102는 eNB 102의 커버리지 영역 120내의 제 1 다수의 UE(user equipment)들에게 네트워크 130으로의 무선 광대역 접속을 제공한다. 제 1 다수의 UE들은 중소기업(small business)에 위치할 수 있는 UE 111, 대기업(enterprise)에 위치할 수 있는 UE 112, WiFi 핫스팟(hot spot)에 위치할 수 있는 UE 113, 제 1 주거지역에 위치할 수 있는 UE 114, 제2 주거지역에 위치할 수 있는 UE 115 및 휴대폰, 무선 랩톱(laptop), 무선 PDA 기타 등등의 모바일 장치일 수 있는 UE 116의 UE를 포함한다. eNB 103은 eNB 103의 커버리지 영역 125 내의 제2 다수의 UE들에게 네트워크 130으로의 무선 광대역 접속을 제공한다. 제2 다수의 UE들은 UE 115와 UE 116을 포함한다. 일부 실시 예에서, 하나 또는 그 이상의 eNB 101 내지 eNB 103들은 각자 서로 통신을 하거나, 5G(5th generation), LTE(Long Term Evolution), LTE-A(LTE-advanced), WiMAX(Worldwide Interoperability for Microwave Access)나 다른 발전된 무선 통신 기술을 이용하는 UE 111 내지 UE 116과 통신할 수 있다.
네트워크 타입에 따라서, “eNodeB” 또는 “eNB,” 대신에 “기지국” 또는 “AP(access point)“ 등의 많이 알려진 다른 용어가 사용될 수 있다. 편의를 위해서, “eNodeB” 또는 “eNB” 용어들은 본 발명 명세서에서 원격 단말기에 무선 접속기능을 제공하는 네트워크 기반시설 구성을 나타내는데 사용된다. 또한 네트워크 타입에 따라, “user equipment” 또는 “UE” 대신에 “모바일(mobile) 기지국”, “가입자국”, “원격 단말기” “무선 단말기” 및 “사용자 기기” 등의 많이 알려진 다른 용어가 사용될 수 있다. 편의를 위해서, “user equipment” or “UE,” 용어는 본 명세서에서 eNB에 무선으로 접속하는 원격 무선 장치를 지칭하며, UE는 모바일 기기(예를 들어, 모바일 전화기 또는 스마트 폰) 이거나 고정 장치(예를 들어, 데스크톱 컴퓨터 또는 자동판매기) 이다.
점선은 단순히 설명과 예시를 위해 원형에 가깝게 표현된 커버리지 영역들 120 및 125의 개략적인 범위를 나타낸다. 커버리지 영역들 120 및 125와 같이, eNB들에 관련되는 커버리지 영역들은 eNB들의 구성 및 자연 및 인공의 방해물에 따른 무선 환경의 변화에 따라 달라지는 불규칙한 형상을 포함하는 다른 형상을 가질 수 있다는 것이 명백히 이해되어야 한다.
아래에서보다 상세하게 설명되는 바와 같이, 본 개시의 적어도 하나의 측면에 대한 일반적인 설명이 추가된다.
도 1은 무선 네트워크 100의 일 예를 설명하고 있지만, 도 1에 대해서 다양한 변경들이 가능하다. 예를 들어, 무선 네트워크 100은 임의의 적절한 구조에서, 임의의 개수의 eNB들 및 임의의 개수의 UE들을 포함할 수 있다. 또한 eNB 101은 임의의 개수의 UE들과 직접적으로 통신이 가능하고, 임의의 개수의 UE들에게 네트워크 130으로 무선 광대역 접속을 제공할 수 있다. 마찬가지로, 각각의 eNB들 102 내지 103은 네트워크 130과 직접 통신할 수 있고, UE들에게 네트워크 130으로 직접 무선 광대역 접속을 제공할 수 있다. 이에 더하여, eNB들 101, 102 및/또는 103은 외부 전화 네트워크들이나 데이터 네트워크들의 다른 타입들과 같은, 다르거나, 추가적인 외부 네트워크들에게 접속을 제공할 수 있다.
도 2는 본 개시에 따른 eNB 102의 예시를 도시한다. 도 2에 도시한 eNB 102의 실시 예는 단지 예시를 위한 것에 불과하며, 도 1의 eNB 101 및 eNB 103은 같거나 유사한 구성을 가질 수 있다. 그러나, eNB들은 구성에 있어 매우 다양하게 변화할 수 있고, 도 2는 eNB의 어떠한 특정 구현에 본 발명의 범위를 제한하지 않는다.
도 2에 도시된 대로, eNB 102는 다중 안테나들 205a 내지 205n, 다중 RF 송수신기들 210a 내지 210n, 송신 처리 회로 215, 및 수신 처리 회로 220을 포함한다. eNB 102는 또한 컨트롤러/프로세서(controller/processor) 225, 메모리 230, 백홀 또는 네트워크 인터페이스 235를 포함한다.
RF 송수신기들 210a 내지 210n은 UE들이나 다른 eNB들에 의해 송신되는 신호들과 같이, 안테나들 205a 내지 205n으로부터 들어오는 RF 신호들을 수신한다. RF 송수신기들 210a 내지 210n은 IF(intermediate frequency) 또는 기저대역 신호를 생성하기 위해 들어오는 RF 신호를 하향-변환한다. IF 또는 기저대역 신호들은 기저대역 또는 IF 신호들을 필터링, 디코딩, 및/또는 디지털화를 통해 처리된 기저대역 신호를 생성하는 수신 처리 회로 220으로 보내진다. 수신 처리 회로 220은 처리된 기저대역 신호들을 이후의 과정을 위해 컨트롤러/프로세서 225로 전송한다.
송신 처리 회로 215는 컨트롤러/프로세서 225로부터 아날로그 또는 디지털 데이터(예를 들어, 음성 데이터, 웹 데이터, 전자메일, 또는 쌍방향 비디오 게임 데이터)를 수신한다. 송신 처리 회로 215는 처리된 기저대역 또는 IF 신호들을 생성하기 위해 출력되는 기저대역 데이터를 부호화(encodes), 다중화, 및/또는 디지털화(digitize)한다. RF 송수신기들 210a 내지 210n은 송신 처리 회로 215로부터 처리된 출력되는 기저대역 또는 IF 신호들을 수신하고, 기저대역 또는 IF 신호들을 안테나들 205a 내지 205n을 통해 전송되는 RF 신호로 상향-변환한다.
컨트롤러/프로세서 225는 eNB 102의 전반적인 동작을 조절하는 적어도 하나 이상의 프로세서 또는 다른 처리 장치를 포함할 수 있다. 예를 들어, 컨트롤러/프로세서 225는 잘 알려진 원리에 따라, RF 수신기들 210a 내지 210n 및 수신 처리 회로 220 신호로부터 순방향 채널 수신과 송신 처리 회로 215 신호로부터 역방향 채널 송신을 조절할 수 있다. 컨트롤러/프로세서 225는 고급 무선 통신 기능뿐만 아니라 부가적인 기능을 지원할 수 있다. 예를 들어, 컨트롤러/프로세서 225는 빔포밍(beam forming)을 지원하거나 또는 다중 안테나들 205a 내지 205n으로부터 나가는 신호들을 원하는 방향으로 효과적으로 조종하기 위해 나가는 신호들의 가중치를 다르게 설정하는 기능인 방향 라우팅(directional routing) 작동을 지원할 수 있다. 다른 다양한 기능들은 컨트롤러/프로세서 225에 의해 eNB 102에서 지원될 수 있다. 어떤 실시 예에서, 컨트롤러/프로세서 225는 적어도 하나의 마이크로프로세서(microprocessors) 또는 마이크로컨트롤러(microcontrollers)를 포함한다.
컨트롤러/프로세서 225는 또한 기본 OS(operating system) 같은 메모리 230에 존재하는 프로그램이나 다른 처리 등을 할 수 있다. 컨트롤러/프로세서 225는 실행하는 처리에 따른 요청으로, 메모리 230에 데이터를 입력/출력(in/out)을 할 수 있다.
컨트롤러/프로세서 225는 또한 백홀 또는 네트워크 인터페이스 235와 결합된다. 백홀 또는 네트워크 인터페이스 235는 eNB 102가 백홀 연결 또는 네트워크를 통해 다른 기기들 또는 시스템들과 통신할 수 있도록 해준다. 인터페이스 235는 임의의 적절한 유선 또는 무선 연결을 통한 통신을 지원한다. 예를 들어, eNB 102가 셀룰러(cellular) 통신 시스템(예를 들어, 5G, LTE 또는 LTE-A)의 일부로서 구현되고 있을 때, 인터페이스 235는 eNB 102가 다른 eNB들과 유선 또는 무선의 백홀 연결을 통한 통신이 가능하도록 해준다. eNB 102가 AP(access point)로서 작동하고 있을 때, 인터페이스 235는 eNB 102가 유선 또는 무선 로컬지역 네트워크 또는 광범위 네트워크(예를 들어, 인터넷)로의 유선 또는 무선 연결을 통한 통신이 가능하도록 해준다. 인터페이스 235는 이더넷(Ethernet) 또는 RF 송수신기와 같은, 유선 또는 무선 연결을 통한 통신을 지원하는 임의의 적절한 구조를 포함한다.
메모리 230은 컨트롤러/프로세서 225에 결합된다. 메모리의 일부는 RAM을 포함할 수 있고, 메모리의 다른 부분은 플래시 메모리나 다른 ROM을 포함할 수 있다.
아래에서보다 상세하게 설명되는 바와 같이, 본 개시의 적어도 하나의 측면에 대한 일반적인 설명이 추가된다.
도 2는 eNB 102의 일 예를 도시하지만, 다양한 변경이 도 2에 적용될 수 있다. 예를 들어, eNB 102는 도 2에 도시된 각각의 구성을 임의의 개수로 포함 할 수 있다. 특정한 예로서, AP(access point)는 인터페이스 235 중에 하나를 포함할 수 있고, 컨트롤러/프로세서 225는 다른 네트워크 주소들 간에 데이터 전송을 위한 라우팅(routing) 기능들을 지원할 수 있다. 다른 특정한 예로, 송신 처리 회로 215 및 수신 처리 회로 220가 단일 인스턴스(instance)를 포함하는 것으로 도시한 반면, eNB 102는 다중 인스턴스를 포함할 수 있다. (예를 들어, RF 송수신기마다 하나의 인스턴스) 또한, 도 2의 다양한 구성들이 결합되거나, 세분화되거나 생략될 수 있고, 특정 요구에 따라 추가적인 구성이 더해질 수 있다.
도 3은 본 개시에 따른 UE 116의 일 예를 도시한다. 도 3에 도시된 UE 116의 실시 예는 단지 설명을 위한 것이며, 도 1의 UE들 111 내지 115는 같거나 비슷한 구성을 가질 수 있다. 하지만, UE들은 다양한 구성을 가질 수 있고, 도 3은 UE들의 어떠한 특정 구현에 본 발명의 범위를 제한하지 않는다.
도 3에 도시된 대로, UE 116은 다중 안테나들 305, RF 송수신기들 310, 송신(transmit, TX) 처리 회로 315, 마이크로폰 320, 수신(receive, RX) 처리 회로 325를 포함한다. UE 116은 또한 스피커(speaker) 330, 메인 프로세서(main processor) 340, 입력/출력(input/output) 인터페이스(interface)(IF) 345, 키패드(keypad) 350, 디스플레이 355, 및 메모리 360을 포함한다. 메모리 360은 기본 운영체제(OS) 프로그램 361 및 하나 또는 그 이상의 어플리케이션(application) 362들을 포함한다.
RF 송수신기 310은 안테나 305로부터 네트워크 100의 eNB에 의해 전송된 들어오는 RF 신호를 수신한다. RF 송수신기 310은 들어오는 RF 신호를 하향-변환하여 중간주파수(IF) 또는 기저대역 신호를 생성한다. IF 또는 기저대역 신호는 기저대역 또는 IF 신호를 필터링(filtering), 복호화(decoding) 및/또는 디지털화(digitizing)함으로써 처리된 기저대역 신호를 생성하는 수신 처리 회로 325로 전송된다. 수신 처리 회로 325는 처리된 기저대역 신호를 스피커 330(예를 들어, 음성 데이터) 또는 이후의 처리를 위해 메인 프로세서 340(예를 들어, 웹 브라우징(web brwosing) 데이터)으로 송신한다.
송신 처리 회로 315는 아날로그 데이터 또는 마이크로폰 320으로부터 디지털 음성 데이터 또는 메인 프로세서 340으로부터 다른 아웃고잉(outgoing) 기저대역 데이터(예를 들어, 웹 데이터, 전자메일, 또는 쌍방향 비디오 게임 데이터)를 수신한다. 송신 처리 회로 315는 처리된 기저대역 또는 IF 신호를 생성하기 위해 아웃고잉 기저대역 데이터를 부호화(encodes), 다중화(multiplex), 및/또는 디지털화(digitize)한다. RF 송수신기들 310은 송신 처리 회로 315로부터 처리된 아웃고잉 기저대역 또는 IF 신호를 수신하고, 기저대역 또는 IF 신호를 안테나들 305를 통해 전송되는 RF 신호로 상향-변환한다.
메인 프로세서 340은 하나 또는 그 이상의 프로세서들 또는 다른 처리 장치들을 포함할 수 있고, UE 116의 전반적인 작동을 조절하기 위해 메모리 360에 저장된 기본 운영체제(OS) 프로그램 361을 실행할 수 있다. 예를 들어, 메인 프로세서 340은 잘 알려진 기술에 따라 RF 송수신기들 310, 수신 처리 회로 325 및 송신 처리 회로 315에 의한 순방향 채널 신호들의 수신 및 역방향 채널 신호들의 송신을 제어할 수 있다. 일부 실시 예에서, 메인 프로세서 340은 적어도 하나의 마이크로프로세서(microprocessor) 또는 마이크로컨트롤러(microcontroller)를 포함한다.
메인 프로세서 340은 또한 메모리 360에 존재하는 다른 처리들 및 프로그램들을 실행할 수 있다. 메인 프로세서 340은 프로세스를 실행할 때 요청에 따라 메모리360 데이터의 입력/출력(in/out)이 가능하다. 어떤 실시 예들에서, 메인 프로세서 340은 운영체제(OS) 프로그램 361 또는 eNB들로부터 수신한 신호들에 대한 응답 또는 연산자에 기반하여 어플리케이션 362를 실행하도록 구성된다. 메인 프로세서 340은 랩탑(laptop) 컴퓨터들 및 핸드헬드(handheld) 컴퓨터들 등의 다른 장치에 연결하는 기능을 UE 116으로 제공해주는 입력/출력 인터페이스 345와 결합된다. 입력/출력 인터페이스 345는 이러한 주변 기기들과 메인 컨트롤러 340 사이의 통신 경로이다.
메인 프로세서 340은 또한 키패드 350 및 디스플레이부 355에 결합된다. UE 116의 사용자는 UE 116으로 데이터를 입력하기 위해 키패드 350을 사용할 수 있다. 디스플레이 355는 텍스트 및/또는 웹 사이트들로부터 적어도 제한된 그래픽들, 또는 이들의 조합을 렌더링(rendering) 할 수 있는 액정 디스플레이 또는 다른 디스플레이일 수 있다.
메모리 360은 메인 프로세서 340에 결합된다. 메모리 360의 일부는 RAM(random access memory)을 포함할 수 있고, 메모리 360의 다른 일부의 경우, 플래시 메모리(flash memory)나 ROM(read-only memory)을 포함할 수 있다.
아래에서보다 상세하게 설명되는 바와 같이, 본 개시의 적어도 하나의 측면에 대한 일반적인 설명이 추가된다.
도 3은 UE 116의 하나의 예를 도시하고 있지만, 다양한 변경들이 도 3에 이루어질 수 있다. 예를 들어, 도 3의 다양한 구성들은 결합되거나, 세분화되거나, 또는 생략될 수 있고, 추가적인 구성들은 특정한 필요들에 따라 더해질 수 있다. 특정한 예시로서, 메인 프로세서 340은 하나 또는 그 이상의 중앙처리장치(CPUs)와 하나 또는 그 이상의 그래픽처리장치(GPUs)로 이루어지는 다중 프로세서로 세분화될 수 있다. 또한, 도 3에서 UE 116은 모바일 전화기나 스마트폰으로 구성되도록 설명하고 있지만, UE들은 다른 타입들의 모바일 또는 고정 기기들(stationary devices)로서 동작하도록 구성될 수 있다.
도 4a는 본 개시의 실시 예들에 따른 비디오 인코더 400의 예를 도시한다. 인코더 400의 실시 예는 단지 설명을 위함이다. 인코더 400의 다른 실시 예들은 본 발명을 제한하지 않는 범위 내에서 실시될 수 있다.
도 4a에 도시된 바와 같이, 인코더 400은 코딩부에 기초할 수 있다. 인트라(intra) 측정부 407 및 인트라 예측부 411는 현재 프레임 405의 인트라 모드(intra mode)의 예측 유닛들(prediction units)에 대한 인트라 예측(intra-prediction)을 수행할 수 있다. 움직임 측정부 412 및 움직임 보상부 415는 현재 프레임 405 및 기준 프레임 445를 사용하는 인터 예측(inter-prediction) 모드의 예측 유닛들에 대하여 인터 예측 및 움직임 보상을 각각 수행할 수 있다. 인트라/인터 모드 선택부 409는 인트라 예측부 411 및 움직임 보상부 415 중에 하나를 선택할 수 있다. 인트라 측정이기부 407, 인트라 예측부 411, 움직임 측정부 412 및 움직임 보상부 415로부터 출력된 예측 유닛들에 기반하여, 잔여 값들(residual values)이 생성될 수 있다. 변환부 420 및 양자화부(quantizer) 422을 통과함으로써, 생성된 잔여 값들은 양자화된 변환 계수들(quantized transform coefficients)로서 출력될 수 있다.
양자화된 변환 계수들은 역양자화부 430 및 역변환부 432를 통과함으로써, 잔여 값들로 복원될 수 있다. 복원된 잔여 값들은 디블로킹부 435와 샘플 적용 오프셋부(sample adaptive offset unit) 440을 통과함으로써 후처리되고(post-processed), 과 기준 프레임 445으로서 출력될 수 있다. 양자화된 변환 계수들은 엔트로피 인코더(entropy encoder) 425를 통과함으로써 비트열(bitstream) 427으로서 출력될 수 있다.
도 4b는 본 개시의 실시 예들에 따른 비디오 디코터 450의 예를 도시한다. 도 4b에 도시된 디코더 450의 실시 예는 단지 설명을 위함이다. 본 발명을 제한하지 않는 범위 내에서 다른 실시 예들이 실시될 수 있다.
도 4b에 도시된 바와 같이, 디코더 450은 코딩부에 기초할 수 있다. 부호화된 이미지 데이터를 포함하는 비트열은 엔트로피 디코더 462, 역양자화부 465를 통과함으로써, 역양자화된 데이터(inverse-quantized data)로서 출력될 수 있고, 역변환부 470을 통과함으로써 잔여 값들로 복원될 수 있다. 잔여 값들은 사각 블록 코딩 유닛들(rectangular block coding units)에 따라서, 인트라 예측부 472의 인트라 예측 결과 또는 움직임 보상부 475의 움직임 보상 결과에 더해짐으로써, 복원될 수 있다. 인트라/인터 모드 선택부 473은 인트라 예측부와 움직임 보상부 475 사이에서 선택할 수 있다. 복원된 코딩 유닛들은 디블로킹부 480 및 샘플 적용 오프셋부 482를 통과함으로써 다음 코딩 유닛들 또는 다음 프레임의 예측에 사용될 수 있다. 복호화를 수행하기 위해서, 이미지 디코터의 구성들(예: 엔트로피 디코더 462, 역양자화부 465, 역변환부 470, 인트라 예측부 472, 움직임 보상부 475, 디블로킹부 480 및 샘플 적응 오프셋부 482)은 이미지 복호화 절차를 수행할 수 있다.
인코더 400 및 디코더 450 각각의 기능적인 측면은 하기에서 설명될 것이다.
인트라 예측(411 및 472): 화상을 표현하기 위해 필요한 전송 데이터의 양을 줄이기 위해서, 인트라 예측은 각 프레임에서 공간 상관관계를 이용한다. 인트라-프레임은 필수적으로 임의 접속 지점이다(Intra-frame is essentially the random access point). 첫 번째 프레임이 인트라-프레임일 수 있고, 되감기(rewind) 및 빨리 감기(fast forwad)와 같은 임의 접속 능력을 제공하기 위해, 추가적인 프레임들이 인트라 프레임들일 수 있다. 추가적으로, 인터 프레임 안에 몇몇의 인트라 블록들이 있을 수 있다. 인트라 예측은 프레임 내에서 예측을 하는 것과 관련이 있는 반면, 인터 예측은 프레임들 간에 예측을 하는 것과 관련이 있다.
움직임 측정(412): 비디오 압축의 개념은 인터 예측이 수행될 때, 프레임 사이의 증분 변경들(incremental changes)만 저장하는 것이다. 두 개의 프레임들 내의 블록들 사이에 차이점들은 움직임 측정 툴(tool)에 의해 추출될 수 있다. 여기에서, 코딩될 현재 블록은 모션 벡터들의 집합 및 인터 예측 잔여들(inter-prediction residues)로 감소된다.
움직임 보상(415 및 475): 움직임 보상은 움직임 측정에 의해 부호화된 이미지를 복호화 하기 위해 사용될 수 있다. 이러한 이미지의 재구성은 수신된 모션 벡터들 및 기준 프레임 내의 블록으로부터 수행된다.
변환/역변환(420, 432 및 470): 변환부는 인터 프레임들 또는 인트라 프레임들에서 이미지를 압축하는데 사용될 수 있다. 통상적으로 사용되는 변환은 이산 코사인 변환(discrete cosine transform, 이하 ‘DCT’)이다.
양자화/역양자화(422, 430 및 465): 양자화 단계는, 각 변환 계수를 특정 수로 나누어 각 변환 계수 값이 가질 수 있는 가능한 값들의 양을 줄임으로써, 정보량을 감소시킬 수 있다. 이는 값들이 더 좁은 범위로 떨어지게 하므로, 엔트로피 코딩(entropy coding)에서 값들을 더 간소하게(more compactly) 표현할 수 있게 한다.
디블로킹 및 샘플 적응 오프셋부 (435, 440 및 482): 디블로킹은 이미지의 블록 단위 코딩으로 인한 부호화 아티팩트(encoding artifacts)들을 제거할 수 있다. 디블로킹 필터는 이미지 블록들의 경계들에 작용하고, 블로킹 아티팩트(bloking artifacts)들을 제거한다. 샘플 적응 오프셋은 링잉 아티팩트(ringing artifacts)들을 최소화 할 수 있다.
도 4a 및 4b에서, 인코더 400과 디코더 450 일부들은 분리된 단위들로서 도시된다. 하지만, 본 개시는 도시된 실시 예들에 한정되지 않는다. 또한, 도시한 바와 같이, 인코더 400 및 디코더 450은 여러 공통의 구성들을 포함한다. 어떤 실시 예들에서, 인코더 400과 디코더 450은 집적된 단위로서 동작할 수 있고, 인코더의 하나 또는 그 이상의 구성들은 복호화를 위해 사용될 수 있다(또는 그 반대도 가능). 게다가, 인코더 400 및 디코더 450의 각 구성요소는 임의의 적합한 하드웨어 또는 하드웨어 및 소프트웨어/펌웨어 명령의 조합을 사용하여 구현될 수 있으며, 다수의 구성 요소가 통합된 단위로 구현될 수 있다. 예를 들어, 하나 또는 그 이상의 FPGA(field programmable gate arrays), ASICs(application specific integrated circuits), 마이크로프로세서들(microprocessors), 마이크로컨트롤러들(microcontrollers), 디지털 신호 프로세서들(digital signal processor) 또는 그들의 조합에 의해 구현될 수 있다.
도 5a 내지 5c는 본 개시의 실시 예들에 따른 움직임 보상 보간 필터링의 상위 레벨 비교를 도시한다. 도 5a 내지 5c에서, Δx는 움직임 벡터의 x성분의 부분을 나타내며, Δy는 움직임 벡터의 y성분의 부분을 나타낸다. Δx가 0일 때 수평 방향의 보간을 생략하고, Δy가 0일 때 수직 방향의 보간을 생략한다. 도 5a는 2차원(2 dimension, 이하 ‘2D’) 비-분리형(non-separable) 움직임 보상 보간 필터를 도시한다. 도 5a는 행이 열보다 우선하는 방식에 따라(along rows followed by along columns) 1D(1 dimension, 이하 ‘1D’) 필터링으로 구현된 2D 분리형 움직임 보상 필터를 도시한다(또는 그 반대).
도 5c는 행이 열보다 우선하는 방식에 따라(along rows followed by along columns) 2D 필터링을 갖는 2D 분리형 움직임 보상 필터를 도시한다(또는 그 반대). 본 개시의 하나 또는 그 이상의 실시 예들은 HEVC와 같은 비디오 코딩 표준들에서 움직임 보상 보간을 위해 사용되는 1D 수직 및 수평 보간 필터들 대신하여, 2D 수직 및 수평(two dimensional horizontal and vertical, 이하 ‘2DHV’) 보간 필터들을 제공한다. HEVC와 같은 비디오 코딩 표준들에서 채택된 접근법은 도 5b에서와 같이, 수평 및 수직 방향으로 적용되는 2개의 1D 필터로 분할되는 2D 보간 필터이다. 본 개시는 수평 및 수직 방향으로 적용된 2개의 2D 필터들로 분리된 2D 분리형 보간 필터를 제공한다. 다른 시스템들에서는, 2D 비-분리형 보간 필터들이 제안된다. 2D 비-분리형 보간 필터는 분리 불가능한 방식으로 이미지에 직접 적용된다 (즉, 종속된 수평 및 수직 필터를 사용하는 2-패스(2-pass) 필터링이 없다).
본 개시의 다양한 실시 예들은 블록이 단-예측인지 또는 양-예측인지에 따라 다른 유형의 보간 필터들을 제공한다. 다른 유형의 보간 필터들은 블록 레벨에서 시그널링(signaling)되는 플래그(flag)에 의존하며, 여기서 블록은 코딩 유닛, 예측 유닛, 슬라이스, 타일, 화상 등일 수 있다. 본 개시의 2DHV 필터들은 부분 픽셀 보간에 필요한 위상 이동 특성을 갖도록 특별한 방식으로 설계된다. 수평 및 수직 보간 필터들은 상이한 2D 필터들일 수 있다. 필터들 중 하나는 2D일 수 있고 다른 하나는 1D일 수 있다. 수평 및 수직 2D 및 1D 보간 필터들에 사용되는 실제 필터 계수들은 본 개시에 제시된 예시적인 필터들과 다를 수 있다. 본 개시에 제시된 방법들은 임의의 부분 픽셀 샘플 위치에 적용될 수 있다. (예를 들어, 1/4 픽셀, 1/8 픽셀)
본 개시는 도시된 실시 예들에 한정되지 않는다. 본 개시에 제시된 방법들 및 시스템들은 루마 채널(luma channel)에 한정되지 않으며, 임의의 컬러 채널(color channel) 또는 깊이 채널(depth channel)에 적용될 수 있다. 본 개시에 따른 방법들은 수직 필터링을 먼저 수행하고 수평 필터링을 사용하는 것으로 설명되었지만, 수평 필터링을 먼저 수행하고 수직 필터링에 적용될 수도 있다. 상이한 보간 필터들은 또한 기준 화상 리스트에 기초하여 선택적으로 적용될 수 있다. 예를 들어, HEVC에서 기준 화상 리스트 1과 비교할 때, 기준 화상 리스트 0은 다른 보간 필터들을 사용할 수 있다. 또한 다른 보간 필터들은 계층-B, 계층-P 코딩 구조들 및/또는 블록에 사용된 양자화 파라미터(parameter)에 의존하는 계층적 코딩 구조에서 화상의 깊이에 따라 움직임 보상 블록 크기에 기초하여 선택적으로 적용될 수 있다. 본 개시에 따라 설명된 보간 필터들은 움직임 보상 필터링에만 적용되는 것으로 제한되지 않으며, 스케일러블(scalable) 비디오 코딩에서와 같은 이미지들의 업샘플링(upsampling)/다운샘플링(downsampling)에 사용될 수 있다.
본 개시의 다양한 실시 예들은 HEVC에서 사용되는 1D 수평 및 수직 보간 필터들 대신에 2DHV 필터들을 제공한다. 본 개시의 다양한 실시 예들은 2D 필터들이 보간의 품질을 제어하는데 더 많은 유연성을 제공하기 때문에 비트레이트(bitrate) 절감을 제공한다. 1/2-샘플 보간을 위해 본 개시에서 사용된 예시적인 2D 필터는 h = [1, 8; 16 16; 8 8]이다. CU-레벨 스위칭(coding unit-level switching)과의 결합으로(in combination with CU-level switching), 2D 필터는 HEVC를 통한 LDP(low delay P-frame) 테스트 조건들 하에서 8K 시퀀스들(sequences)에 대해 6.7 %의 비트 전송률 절감을 제공한다. 본 개시의 다양한 실시 예들은 추가적인 자유도(즉, 제2 차원)로 인한 복잡성 감소를 제공하고, 2D 필터는 더 낮은 복잡성을 갖도록 설계될 수 있다. 예를 들어, 본 개시에서 사용된 2D 보간 필터 h = [8,8; 16,16,8,8]에 대해, 구현 복잡도는 5회의 합산 연산들이다. 이에 반해 HEVC 1/2-샘플 8-탭 보간 필터 (h = [-1, 4, -11, 40, 40, -11, 4, -1])는 11 개의 덧셈을 사용한다.
본 개시의 다양한 실시 예들은 블록이 단-예측인지 또는 양-예측인지에 따라 상이한 보간 필터들의 선택적 적용을 제공한다. 본 개시의 다양한 실시 예들은, 단-예측 블록이 암시적 평활화 효과를 갖지 않는 반면, 2개의 블록들로부터의 평균화로 인해 양-예측 블록들은 암시적 평활화 효과를 내장하는 것을 제공한다. 블록이 단-예측인지 또는 양-예측인지에 따라 서로 다른 유형의 보간 필터를 사용하면 추가적인 압축 이득들을 제공할 수 있다. 예를 들어, 단-예측 블록은 양-예측 블록들을 위한 보간 필터와 비교하여, 더 부드러운 저역 통과 필터(low-pass filter)인 보간 필터를 사용할 수 있다.
도 5a 내지 5c는 본 개시의 실시 예들에 따른 움직임 보상 보간 필터링의 상위 레벨 비교를 도시한다. 도 5a 내지 5c에서, Δx는 움직임 벡터의 x성분의 부분을 나타내며, Δy는 움직임 벡터의 y성분의 부분을 나타낸다. Δx가 0일 때 수평 방향의 보간을 생략하고, Δy가 0일 때 수직 방향의 보간을 생략한다. 도 5a는 2차원(2 dimension, 이하 ‘2D’) 비-분리형(non-separable) 움직임 보상 보간 필터를 도시한다. 도 5b는 행이 열보다 우선하는 방식에 따라(along rows followed by along columns) 1D(1 dimension, 이하 ‘1D’) 필터링으로 구현된 2D 분리형 움직임 보상 필터를 도시한다(또는 그 반대).
도 6은 본 개시의 실시 예들에 따른 1/4 샘플 정확도를 갖는 분수 샘플 위치를 도시한다. 본 개시의 실시 예는 1/4 샘플 루마 보간을 위한 정수 샘플 위치(대문자를 갖는 블록) 및 분수 샘플 위치(소문자를 갖는 블록)를 제공한다. 블록 602는 정수 샘플 위치의 일 예이고, 블록 604은 분수 샘플 위치의 일 예이다.
도 6에서, Ax,y 블록들은 입력 블록의 정수 샘플들을 나타낸다. bx,y, hx,y, jx,y 블록들은 보간에 의해 계산되는 1/2 픽셀 위치들의 샘플들을 나타낸다. ax,y, cx,y, dx,y, ex,y, fx,y, gx,y, ix,y, kx,y, nx,y, px,y, qx,y, rx,y 블록들은 보간에 의해 계산되는 1/4 픽셀 위치들의 샘플들을 나타낸다.
도 7은 본 개시의 실시 예들에 따라 1/2 픽셀 위치들을 사용하는 HEVC에서의 부분 픽셀의 보간 프로세스 700을 도시한다. 도 7에서, Δx 및 Δy의 값에 따라 수평 및/또는 수직 보간이 수행된다. 수평 보간은 수평 이웃 샘플들에 1D 필터를 사용하여 수행된다. 수직 보간은 수직 이웃 샘플들에 대한 1D 필터를 사용하여 수행된다.
동작 702에서, 컨트롤러는 Δx를 식별한다. Δx=0일 때, 동작 704에서 컨트롤러는 Δy를 식별한다. Δy=0이면 보간이 수행되지 않고 샘플 위치는 Ax,y이다. 동작 704에서, Δy=1/2인 경우, 샘플 위치 h0,0에 대해 8개의 수직 이웃 샘플들을 사용하는 8-탭 필터에 의해 수직 보간만이 동작 706에서 수행된다.
동작 702에서, Δx=1/2일 때, 컨트롤러는 샘플 위치 b0,0에 대해 8개의 수평 이웃 샘플들을 사용하는 8-탭 필터에 의해 동작 708에서 수평 보간을 수행한다. 동작 710에서, 컨트롤러는 Δy를 식별한다. Δy=0일 때, 컨트롤러는 동작 708에서 수평 보간만을 수행하고 샘플 위치는 bx,y이다. Δy=1/2일 때, 컨트롤러는 수평 및 수직 보간을 수행한다. 수평 보간은 계산된 중간 샘플들 bx,y에 사용되며, 이후 최종 샘플들 jx,y를 계산하기 위해 수직 보간 된다.
도 8a 및 도 8b는 본 개시의 실시 예들에 따른, 수평 방향을 따라 1/2-픽셀 보간을 위해 사용되는 샘플들을 도시한다. 도 8a에서, HEVC는 수평 보간을 위해 수평 이웃 샘플들 802를 사용한다. 도 8b에서, 본 개시의 하나 또는 그 이상의 실시 예들은 수평 보간을 위해 수평 및 수직 이웃 샘플들 모두를 사용한다. 일 실시 예에서, 3x2 이웃 샘플들 804가 사용된다; M×N 이웃 샘플들 또는 불규칙한 형상 영역 또한 사용될 수 있다.
도 9a 및 도 9b는 수직 방향을 따라 1/2-픽셀 보간을 위해 사용된 샘플들을 도시한다. 도 9a에서, HEVC는 수직 보간을 위해 수직 이웃 샘플들 902를 사용한다. 도 9b에서, 본 개시의 하나 또는 그 이상의 실시 예들은 수직 보간을 위해 수평 및 수직 이웃 샘플들 모두를 사용한다. 일 실시 예에서, 2x3 이웃 샘플들 904가 사용된다; M×N 이웃 샘플들 또는 불규칙한 형상 영역 또한 사용될 수 있다.
도 10은 본 개시의 실시 예에 따라 1/2-픽셀 위치들을 이용한 부분-픽셀 보간의 프로세스 1000을 도시한다. 도 10에서, Δx 및 Δy의 값에 따라 수평 및/또는 수직 보간이 수행된다. 수평 보간은 M×N 근처에서 2D 필터를 사용하여 수행된다. 수직 보간은 M×N 이웃 샘플들에서 2D 필터를 사용하여 수행됩니다. 다른 실시 예들에서, 수평 보간에 대한 M×N 이웃 샘플들은 수직 보간에서 사용된 M×N 이웃 샘플들에 비해 다를 수 있다.
동작 1002에서, 컨트롤러는 Δx를 식별한다. Δx=0일 때, 동작 1004에서, 컨트롤러는 Δy를 식별한다. Δy=0이면 보간은 수행되지 않고 샘플 위치는 Ax,y이다. 동작 1004에서, Δy=1/2일 때, 샘플 위치 h0,0에 대해 수평 및 수직 이웃 샘플들을 사용하여 동작 1006에서 수직 보간만이 수행된다.
동작 1002에서, Δx=1/2일 때, 컨트롤러는 샘플 위치 b0,0에 대해 수평 및 수직 이웃샘플들을 모두 사용하여 동작 708에서 수평 보간을 수행한다. 동작 1010에서, 컨트롤러는 Δy를 식별한다. Δy=0일 때, 컨트롤러는 동작 708에서 수평 보간만을 수행하고 샘플 위치는 bx,y이다. Δy=1/2일 때, 컨트롤러는 수평 및 수직 보간을 수행한다. 수평 보간은 계산된 중간 샘플들 bx,y에 사용되며, 이 샘플들은 최종 샘플들 jx,y를 계산하기 위해 수직 보간된다. HEVC와 비교하여 수평 및 수직 샘플들은 수평 및 수직 보간 모두에서 사용된다.
도 11a 및 도 11b는 본 개시의 실시 예들에 따른 2DHV 필터 디자인 1/2-픽셀 보간을 위한 프로세스를 도시한다. 수평 보간은 수평 및 수직 이웃 샘플들에 대해 2D 필터를 사용하여 수행된다. 수직 보간은 수평 및 수직 이웃 샘플들에 대해 2D 필터를 사용하여 수행된다. 하나 또는 그 이상의 실시 예들에서, 2DHV 필터들은 크기 M×N(M열 및 N행)이다. 일부 필터 계수들은 0의 위상 이동을 갖는다. 2DHV 필터들은 부분-픽셀 보간에 사용되는 위상 이동과 일치하는 매우 특정한 위상 특성들을 갖는다.
도 11a에서, 위상 이동 특성들은 수평 보간 필터를 예시로써 사용하여 기술된다. 위상 이동 θ(1/2-픽셀 보간의 경우 θ=0.5, 1/4-픽셀 보간의 경우 θ=0.25 또는 0.75)를 사용하는 수평 보간용 2DHV 필터의 경우, 수평 보간용 2DHV 필터는 다음과 같이 정의 될 수 있다.
여기서, α1, α2, ..., αN은 스칼라 값들이고, h1, h2, ..., hN은 최대 길이 N의 1D 필터들이다. 1차원(1D) 필터 h1, h2, ..., hN은 θ의 위상 이동을 갖도록 설계된다. 이 예시적인 실시 예에서, 수평 보간을 위해 사용되는 전체 2DHV 필터는 수평 방향을 따라 위상 이동(θ)를 가질 것이고, 위상 이동(θ)은 [0, 1, 2, ..., αN]에 의해 정의된 1D 필터는 0의 위상 이동을 갖도록 설계된다. 수직 방향은 부분-픽셀 위상 이동 요건을 만족한다.
도 11a에서, 디자인 프로세스(design process)는 부분-픽셀 위상 이동 요건들을 만족시키기 위해 수직 방향을 따라 위상 이동 φ 및 수평 방향을 따라 0을 갖는 2DHV 수직 보간 필터를 설계하기 위해 사용된다. 위상 이동 φ (1/2-픽셀 보간의 경우 φ = 0.5, 1/4-픽셀 보간의 경우 φ = 0.25 또는 0.75) 를 사용하는 수직 보간용 2DHV 필터의 경우, 수직 보간용 2DHV 필터는 다음과 같이 정의 될 수 있다.
여기서, β1, β2, ..., βM은 스칼라 값이고, v1, v2, ..., vN은 최대 길이 M의 1차원(1D) 필터이다. 1차원(1D) 필터들 v1, v2, ..., vN은 φ의 위상 이동을 가지도록 설계된다. 이 예시적인 실시 예에서, 수직 보간을 위해 사용되는 전체 2DHV 필터는 수직 방향을 따라 위상 이동(φ)을, 수평 방향을 따라 0의 위상 이동을 가질 것이고, 따라서, 부분-픽셀 위상 이동 요건을 만족시킨다.
도 11a 및 도 11b의 디자인에 기초한 1/2-픽셀 수평 필터링을 위해 개발된 일 예의 2D 필터는 다음과 같다:
위의 필터를 사용한 필터링 작업은 다음과 같다.
b0,0 = (8A0, -1 + 8A1, -1 + 16A0,0 + 16A1,0 + 8A0,1 + 8A1,1 + 32) / 64
8과 16에 의한 곱셈은 왼쪽 이동으로 구현될 수 있다. 64 나누기는 오른쪽 이동으로 구현될 수 있다.
위의 필터를 사용한 필터링 작업은 다음과 같습니다.
b0,0 = (8A0, -1 + 8A1, -1-2A-1,0 + 18A0,0 + 18A1,0-2A2,0 + 8A0,1 + 8A1,1 + 32 ) / 64.
수직 필터링에 사용되는 필터는 상응하는 전치 행렬 필터이다. 필터링 방정식도 이에 상응하여 수정된다.
1/4-픽셀(0.25) 보간 필터의 예시 필터는 하기와 같다:
도 12는 본 개시의 실시 예에 따라 블록이 단-예측인지 또는 양-예측인지에 따라 상이한 보간 필터를 적용하는 프로세스 1200을 도시한다. 본 개시의 실시 예에서, 양-예측된 블록은 2개의 블록들의 평균 때문에 암시적 평활화 효과를 갖는다. 블록이 단-예측인지 또는 양-예측인지에 따라 다른 유형들의 보간 필터의 사용은 추가적인 압축 이득을 제공할 수 있다. 예를 들어, 양-예측 블록들에 대한 보간 필터에 비해, 단-예측 블록은 부드러운 저역 통과 필터(low-pass filter)인 보간 필터를 사용할 수 있다.
도 12에서, 동작 1202에서, 컨트롤러는 블록이 단-예측인지 결정한다. 블록이 단-예측이면, 동작 1204에서, 수평 보간 필터 h1Hor 및 수직 보간 필터 h1Ver가 사용된다. 블록이 양-예측이면, 동작 1206에서, h2Hor 및 h2Ver가 각각 사용된다. 일 예시적인 실시 예에서, 1/2-픽셀 샘플 결과들을 생성하기 위해 사용되는 Hor, h1Ver, h2Hor 및 h2Ver 필터들은 다음과 같다:
여기서 h1Ver=transpose(h1Hor), h2Hor=[-1, 4, -11, 40, 40, -11, 4, -1]/64 (HEVC 8-탭 필터) 및 h2Ver=transpose(h2Ver)이다. 위의 필터들은 예시 필터들이다. 다른 필터 조합들이 사용될 수 있다. 다른 실시 예들에서, 프로세스 1200는 다른 부분-픽셀 샘플 위치들에 적용될 수 있다.
도 13은 본 개시의 실시 예에 따라 2DHV 필터의 사용을 시그널링(signaling) 하기 위해 CU 레벨 플래그(coding unit-level flag)를 사용하는 프로세스 1300을 도시한다. 도 13에서, 1/2-픽셀 보간의 경우, 플래그에 따라, 2DHV 필터 또는 HEVC 8-탭 필터가 사용된다. 1/4-픽셀 보간의 경우, 플래그에 따라, 2DHV 필터 (또는 HEVC 4-탭 필터) 또는 HEVC 7-탭 필터가 사용된다.
동작 1302에서, 컨트롤러는 1/2-픽셀 또는 1/4-픽셀 보간이 사용되는지 여부를 결정한다. 1/2-픽셀 보간이 사용되면, 동작 1304에서, 컨트롤러는 플래그가 2D 필터를 사용하도록 지시하는지 여부를 결정한다. 만약에 플래그가 2D 필터를 가리키면, 동작 1306에서, 컨트롤러는 2DHV 필터를 사용하여 보간한다. 만약에 플래그가 2D 필터를 사용하지 않음을 가리키면, 동작 1308에서, 컨트롤러는 HEVC 8-탭 1/2-픽셀 필터를 사용하여 보간한다.
동작 1302에서 1/4-픽셀 보간이 사용되면, 컨트롤러는 동작 1310에서 플래그가 2D 필터를 사용하도록 지시하는지 여부를 결정한다. 플래그가 2D 필터를 가리키면, 동작 1312에서, 컨트롤러는 2DHV 필터 또는 HEVC 4-탭 필터를 사용하여 보간한다. 플래그가 2D 필터를 사용하지 않음을 가리키면, 동작 1314에서, 컨트롤러는 HEVC 7-탭 1/4-픽셀 필터를 사용하여 보간한다.
본 명세서에서 사용되는 바와 같이, 상이한 프로세스 및 방법은 컨트롤러에 의해 실행되는 것으로 언급된다. 그러나, 이러한 프로세스들 또는 방법들 중 임의의 것은 예를 들어, 프로세서 또는 처리 회로와 같은 여기에 개시된 다수의 구성요소들에 의해 실행될 수 있다.
본 발명은 예시적인 실시 예로 설명되었지만, 다양한 변경들 및 수정들이 당업자에게 제안될 수 있다. 본 개시는 청구된 청구범위 내에 있는 그러한 변경 및 수정을 포함하는 것으로 의도된다.
Claims (20)
- 비디오 데이터를 디코딩하는 장치에 있어서,
픽셀 블록을 포함하는 비디오의 부호화된 비트열을 수신하도록 구성되는 송수신부; 및
상기 비트열을 처리하는 디코더를 포함하고,
상기 디코더는,
상기 픽셀 블록에 포함된 적어도 하나의 픽셀의 움직임 벡터의 수직 방향 성분에 대응하는 제1 값, 및 상기 움직임 벡터의 수평 방향 성분에 대응하는 제2 값을 결정하고,
상기 제1 값이 0이 아닌 경우, 복수의 수직 보간 필터들 중에서 수직 1차원 필터 및 수직 2차원 필터 중 하나의 필터를 선택하되, 상기 픽셀 블록이 단-예측(uni-predicted)된 경우 상기 수직 1차원 필터를 선택하고, 상기 픽셀 블록이 양-예측(bi-predicted)된 경우 상기 수직 2차원 필터를 선택하고,
상기 제2 값이 0이 아닌 경우, 복수의 수평 보간 필터들 중에서 수평 1차원 필터 및 수평 2차원 필터 중 하나의 필터를 선택하되, 상기 픽셀 블록이 단-예측된 경우 상기 수평 1차원 필터를 선택하고, 상기 픽셀 블록이 양-예측된 경우 상기 수평 2차원 필터를 선택하고,
상기 선택된 필터들을 사용하여 상기 픽셀 블록의 상기 적어도 하나의 픽셀을 보간함으로써 적어도 하나의 픽셀 값을 생성하고,
상기 적어도 하나의 픽셀 값을 사용하여 상기 비디오를 복원하는 예측 복호화를 수행하도록 구성되는 장치.
- 청구항 1에 있어서, 상기 수평 2차원 필터 및 상기 수직 2차원 필터는, 상기 픽셀 블록의 M×N 이웃 샘플들을 사용하는 장치.
- 청구항 2에 있어서, 상기 수평 2차원 필터와 연관된 샘플들의 상기 M×N 이웃 샘플들은, 상기 수직 2차원 필터와 연관된 샘플들의 상기 M×N 이웃 샘플들과 상이한 것을 특징으로 하는 장치.
- 삭제
- 청구항 1에 있어서, 상기 디코더는,
2차원 보간의 사용 여부를 가리키는 플래그를 식별하고,
상기 복수의 수직 보간 필터들 중에서, 상기 플래그에 기초하여 상기 수직 1차원 필터 및 상기 수직 2차원 필터 중 하나의 필터를 선택하고,
상기 복수의 수평 보간 필터들 중에서, 상기 플래그에 기초하여 상기 수평 1차원 필터 및 상기 수평 2차원 필터 중 하나의 필터를 선택하는 장치.
- 비디오 데이터를 디코딩하는 방법에 있어서,
픽셀 블록을 포함하는 비디오의 부호화된 비트열을 수신하는 과정과,
상기 픽셀 블록에 포함된 적어도 하나의 픽셀의 움직임 벡터의 수직 방향 성분에 대응하는 제1 값, 및 상기 움직임 벡터의 수평 방향 성분에 대응하는 제2 값을 결정하는 과정과,
상기 제1 값이 0이 아닌 경우, 복수의 수직 보간 필터들 중에서 수직 1차원 필터 및 수직 2차원 필터 중 하나의 필터를 선택하는 과정과, 상기 픽셀 블록이 단-예측된 경우 상기 수직 1차원 필터를 선택하고, 상기 픽셀 블록이 양-예측된 경우 상기 수직 2차원 필터를 선택함,
상기 제2 값이 0이 아닌 경우, 복수의 수평 보간 필터들 중에서 수평 1차원 필터 및 수평 2차원 필터 중 하나의 필터를 선택하는 과정과, 상기 픽셀 블록이 단-예측된 경우 상기 수평 1차원 필터를 선택하고, 상기 픽셀 블록이 양-예측된 경우 상기 수평 2차원 필터를 선택함,
상기 선택된 필터들을 사용하여 상기 픽셀 블록의 상기 적어도 하나의 픽셀을 보간함으로써 적어도 하나의 픽셀 값을 생성하는 과정과,
상기 비디오를 복원하기 위해 상기 적어도 하나의 픽셀 값을 사용하여 예측 복호화를 수행하는 과정을 포함하는 방법.
- 청구항 6에 있어서, 상기 수평 2차원 필터 및 상기 수직 2차원 필터는, 상기 픽셀 블록의 M×N 이웃 샘플들을 사용하고, M은 열이고, N은 행인 방법.
- 청구항 7에 있어서, 상기 수평 2차원 필터와 연관된 샘플들의 상기 M×N 이웃 샘플들은, 상기 수직 2차원 필터와 연관된 샘플들의 상기 M×N 이웃 샘플들과 상이한 방법.
- 삭제
- 청구항 6에 있어서,
2차원 보간의 사용 여부를 가리키는 플래그를 식별하는 과정을 더 포함하며,
상기 필터들은, 상기 플래그에 기초하여 선택되는 방법.
- 비디오 데이터를 인코딩하는 장치에 있어서,
비디오의 비트열을 인코딩하는 인코더; 및
상기 비디오의 부호화된 비트열을 송신하도록 구성되는 송수신부를 포함하고,
상기 인코더는,
픽셀 블록에 포함된 적어도 하나의 픽셀의 움직임 벡터의 수직 방향 성분에 대응하는 제1 값, 및 상기 움직임 벡터의 수평 방향 성분에 대응하는 제2 값을 결정하고,
상기 제1 값이 0이 아닌 경우, 복수의 수직 보간 필터들 중에서 수직 1차원 필터 및 수직 2차원 필터 중 하나의 필터를 선택하되, 상기 픽셀 블록이 단-예측된 경우 상기 수직 1차원 필터를 선택하고, 상기 픽셀 블록이 양-예측된 경우 상기 수직 2차원 필터를 선택하고,
상기 제2 값이 0이 아닌 경우, 복수의 수평 보간 필터들 중에서, 수평 1차원 필터 및 수평 2차원 필터 중 하나의 필터를 선택하되, 상기 픽셀 블록이 단-예측된 경우 상기 수평 1차원 필터를 선택하고, 상기 픽셀 블록이 양-예측된 경우 상기 수평 2차원 필터를 선택하고,
상기 선택된 필터들을 사용하여 상기 픽셀 블록의 상기 적어도 하나의 픽셀을 보간함으로써 적어도 하나의 픽셀 값을 생성하고,
상기 부호화된 비트열을 생성하기 위해 상기 적어도 하나의 픽셀 값을 사용하여 예측 부호화를 수행하는 장치.
- 청구항 11에 있어서, 상기 수평 2차원 필터 및 상기 수직 2차원 필터는, 상기 적어도 하나의 픽셀 블록의 M×N 이웃 샘플들을 사용하고, M은 열이고, N은 행인 장치.
- 청구항 12에 있어서, 상기 수평 2차원 필터와 연관된 샘플들의 M×N 이웃 샘플들은. 상기 수직 2차원 필터와 연관된 샘플들의 M×N 이웃 샘플들과 상이한 장치.
- 삭제
- 청구항 11에 있어서, 상기 인코더는,
2차원 보간의 사용 여부를 가리키는 플래그를 식별하고,
상기 복수의 수직 보간 필터들 중에서 상기 플래그에 기초하여 상기 수직 1차원 필터 및 상기 수직 2차원 필터 중 하나의 필터를 선택하고,
상기 복수의 수평 보간 필터들 중에서 상기 플래그에 기초하여 상기 수평 1차원 필터 또는 상기 수평 2차원 필터 중 하나의 필터를 선택하는 장치.
- 비디오 데이터를 인코딩하는 방법에 있어서,
픽셀 블록에 포함된 적어도 하나의 픽셀의 움직임 벡터의 수직 방향 성분에 대응하는 제1 값, 및 상기 움직임 벡터의 수평 방향 성분에 대응하는 제2 값을 결정하는 과정과,
상기 제1 값이 0이 아닌 경우, 복수의 수직 보간 필터들 중에서 수직 1차원 필터 및 수직 2차원 필터 중 하나의 필터를 선택하는 과정과, 상기 픽셀 블록이 단-예측된 경우 상기 수직 1차원 필터를 선택하고, 상기 픽셀 블록이 양-예측된 경우 상기 수직 2차원 필터를 선택함,
상기 제2 값이 0이 아닌 경우, 복수의 수평 보간 필터들 중에서 수평 1차원 필터 및 수평 2차원 필터 중 하나의 필터를 선택하는 과정과, 상기 픽셀 블록이 단-예측된 경우 상기 수평 1차원 필터를 선택하고, 상기 픽셀 블록이 양-예측된 경우 상기 수평 2차원 필터를 선택함,
상기 선택된 필터들을 사용하여 상기 픽셀 블록의 상기 적어도 하나의 픽셀을 보간함으로써 적어도 하나의 픽셀 값을 생성하는 과정과,
비디오의 부호화된 비트열을 생성하기 위해 상기 적어도 하나의 픽셀 값을 사용하여 예측 부호화를 수행하는 과정과,
상기 부호화된 비트열을 전송하는 과정을 포함하는 방법.
- 청구항 16에 있어서, 상기 수평 2차원 필터 및 수직 2차원 필터는, 상기 픽셀 블록의 M×N 이웃 샘플들을 사용하고, M은 열이고, N은 행인 방법.
- 청구항 17에 있어서, 상기 수평 2차원 필터와 연관된 샘플들의 M×N 이웃 샘플들은, 상기 수직 2차원 필터와 연관된 샘플들의 M×N 이웃 샘플들과 상이한 것을 하는 방법.
- 삭제
- 청구항 16에 있어서,
2차원 보간의 사용 여부를 가리키는 플래그를 식별하는 과정을 더 포함하며,
상기 필터들은, 상기 플래그에 기초하여 선택되는 방법.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462018296P | 2014-06-27 | 2014-06-27 | |
US62/018,296 | 2014-06-27 | ||
US201462080068P | 2014-11-14 | 2014-11-14 | |
US62/080,068 | 2014-11-14 | ||
US14/750,885 | 2015-06-25 | ||
US14/750,885 US11122262B2 (en) | 2014-06-27 | 2015-06-25 | System and method for motion compensation in video coding |
PCT/KR2015/006642 WO2015199515A1 (en) | 2014-06-27 | 2015-06-29 | System and method for motion compensation in video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170023842A KR20170023842A (ko) | 2017-03-06 |
KR102412699B1 true KR102412699B1 (ko) | 2022-06-24 |
Family
ID=54932002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020167035965A KR102412699B1 (ko) | 2014-06-27 | 2015-06-29 | 비디오 코딩에서 움직임 보상을 위한 시스템 및 방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11122262B2 (ko) |
EP (1) | EP3162060B1 (ko) |
KR (1) | KR102412699B1 (ko) |
WO (1) | WO2015199515A1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7005854B2 (ja) | 2017-11-07 | 2022-01-24 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | ビデオ符号化のためのインター予測装置の補間フィルタ及び方法 |
CN110719475B (zh) * | 2018-07-13 | 2022-12-09 | 北京字节跳动网络技术有限公司 | 取决于形状的插值顺序 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011249986A (ja) * | 2010-05-25 | 2011-12-08 | Renesas Electronics Corp | 動き補償装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69230548T2 (de) * | 1991-08-23 | 2000-06-15 | Mitsubishi Denki K.K., Tokio/Tokyo | Pixelinterpolationsschaltkreis und Anwendungen |
US5852470A (en) * | 1995-05-31 | 1998-12-22 | Sony Corporation | Signal converting apparatus and signal converting method |
US6072830A (en) * | 1996-08-09 | 2000-06-06 | U.S. Robotics Access Corp. | Method for generating a compressed video signal |
TWI242382B (en) * | 2004-08-31 | 2005-10-21 | Sunplus Technology Co Ltd | Three-dimensional video composite signal demodulating method and system capable of inhibiting pseudo-color noises |
CN102497551A (zh) | 2006-11-30 | 2012-06-13 | 株式会社Ntt都科摩 | 动态图像编码装置及方法、动态图像解码装置及方法 |
EP1983759A1 (en) | 2007-04-19 | 2008-10-22 | Matsushita Electric Industrial Co., Ltd. | Estimation of separable adaptive interpolation filters for hybrid video coding |
US8705622B2 (en) * | 2008-04-10 | 2014-04-22 | Qualcomm Incorporated | Interpolation filter support for sub-pixel resolution in video coding |
EP2262267A1 (en) | 2009-06-10 | 2010-12-15 | Panasonic Corporation | Filter coefficient coding scheme for video coding |
US20100316291A1 (en) * | 2009-06-11 | 2010-12-16 | Shulan Deng | Imaging terminal having data compression |
US9219921B2 (en) | 2010-04-12 | 2015-12-22 | Qualcomm Incorporated | Mixed tap filters |
US20120134425A1 (en) * | 2010-11-29 | 2012-05-31 | Faouzi Kossentini | Method and System for Adaptive Interpolation in Digital Video Coding |
US20120230407A1 (en) | 2011-03-11 | 2012-09-13 | General Instrument Corporation | Interpolation Filter Selection Using Prediction Index |
-
2015
- 2015-06-25 US US14/750,885 patent/US11122262B2/en active Active
- 2015-06-29 WO PCT/KR2015/006642 patent/WO2015199515A1/en active Application Filing
- 2015-06-29 KR KR1020167035965A patent/KR102412699B1/ko active IP Right Grant
- 2015-06-29 EP EP15812037.8A patent/EP3162060B1/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011249986A (ja) * | 2010-05-25 | 2011-12-08 | Renesas Electronics Corp | 動き補償装置 |
Also Published As
Publication number | Publication date |
---|---|
KR20170023842A (ko) | 2017-03-06 |
EP3162060A1 (en) | 2017-05-03 |
US20150382005A1 (en) | 2015-12-31 |
US11122262B2 (en) | 2021-09-14 |
EP3162060A4 (en) | 2018-02-21 |
EP3162060B1 (en) | 2024-06-05 |
WO2015199515A1 (en) | 2015-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10230980B2 (en) | Overlapped motion compensation for video coding | |
EP3275188B1 (en) | Motion vector derivation in video coding | |
KR102524541B1 (ko) | 비디오 코딩에서 인트라 예측을 위한 시스템 및 방법 | |
EP3338448B1 (en) | Method and apparatus of adaptive inter prediction in video coding | |
JP5844392B2 (ja) | ビデオコード化における双方向予測インターモードのための動きベクトル予測子(mvp) | |
EP3528497A1 (en) | Image encoding/decoding method and device | |
KR20200108431A (ko) | 비디오 코딩에서의 디블록킹 필터 선택 및 적용 | |
KR20180019092A (ko) | 영상 코딩 시스템에서 조도 보상에 기반한 블록 예측 방법 및 장치 | |
JP5632079B2 (ja) | 圧縮ビットストリームへの交換補間フィルタ係数の組み込み | |
US20140314143A1 (en) | Method and apparatus for coefficient scan based on partition mode of prediction unit | |
KR20180081716A (ko) | 영상 코딩 시스템에서 임계값을 이용한 적응적 영상 예측 방법 및 장치 | |
JP2014209743A (ja) | 幾何学的動き区分のための固定小数点実装形態 | |
KR101646856B1 (ko) | 감소된 해상도 화소 보간 | |
US20200029082A1 (en) | Image processing method for performing processing of encoding tree unit and encoding unit, image decoding and encoding method using same, and device thereof | |
US9609318B2 (en) | Video encoding method, video decoding method, video encoding apparatus, video decoding apparatus, and programs thereof | |
US20130336398A1 (en) | Method and device for intra-prediction | |
KR20130029077A (ko) | 혼합된 탭 필터들 | |
KR20230150284A (ko) | 효율적인 비디오 인코더 아키텍처 | |
KR102412699B1 (ko) | 비디오 코딩에서 움직임 보상을 위한 시스템 및 방법 | |
AU2016316317B2 (en) | Method and apparatus of prediction offset derived based on neighbouring area in video coding | |
KR101735798B1 (ko) | 병합 모드를 기반으로 한 영상 부호화 방법 및 장치 | |
KR20230123951A (ko) | 비디오 코딩에서의 양방향 광학 플로우 | |
KR20130085376A (ko) | 부호화 모드 결정 방법 및 그 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |