KR102008592B1 - 비디오 코딩에서의 인트라 블록 복사를 위한 디블로킹 방법 - Google Patents
비디오 코딩에서의 인트라 블록 복사를 위한 디블로킹 방법 Download PDFInfo
- Publication number
- KR102008592B1 KR102008592B1 KR1020177009601A KR20177009601A KR102008592B1 KR 102008592 B1 KR102008592 B1 KR 102008592B1 KR 1020177009601 A KR1020177009601 A KR 1020177009601A KR 20177009601 A KR20177009601 A KR 20177009601A KR 102008592 B1 KR102008592 B1 KR 102008592B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- boundary
- intrabc
- neighboring reconstructed
- reconstructed blocks
- 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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
IntraBC(인트라 블록 복사) 모드를 포함하는 비디오 코딩 시스템의 블록 경계에 디블록킹 필터를 적용하기 위한 방법 및 장치가 개시된다. 본 발명에 따르면, 2 개의 이웃하는 재구성된 블록에서 적어도 하나의 IntraBC 코딩된 블록을 포함하는 2 개의 이웃하는 재구성된 블록의 적어도 하나의 조합에 대하여, 1 또는 0과 동일한 경계 필터 강도는 2 개의 이웃하는 재구성된 블록과 연관되는 코딩 파라미터에 기초하여 선택된다. 그 후, 디블로킹 필터는 선택된 경계 필터 강도를 이용하여 블록 경계 주위의 2 개의 이웃하는 재구성된 블록의 이웃 샘플들에 적용된다. 예컨대, 2 개의 이웃하는 재구성된 블록이 하나의 IntraBC 코딩된 블록과 하나의 인터 코딩된 블록에 대응하는 할 때, 경계 필더 강도는 1로 설정된다.
Description
관련 출원에 대한 상호 참조
본 발명은 2014년 9월 15일에 출원 된 미국 가특허출원 제62/050,258호의 우선권을 주장한다. 미국 가특허출원은 그 전체가 본원에 참고로 통합된다.
발명의 분야
본 발명은 인트라-블록 복사(Intra-block copy; IntraBC)를 포함하는 코딩 모드를 사용하는 비디오 코딩에 관한 것이다. 특히, 본 발명은 IntraBC 모드를 포함하는 비디오 코딩 시스템에 대한 블록 경계들 주위의 아티팩트(artifact)들을 완화시킴으로써 시각 품질을 향상시키기 위한 디블록킹(deblocking) 필터에 관한 것이다.
HEVC(High Efficiency Video Coding)는 최근 개발된 새로운 코딩 표준입니다. 고효율 비디오 코딩(HEVC) 시스템에서, H.264/AVC의 고정 크기 매크로블록은 코딩 유닛(CU)으로 명명된 가변 블록으로 대체된다. CU의 픽셀은 코딩 효율을 향상시키기 위해 동일한 코딩 파라미터를 공유한다. CU는 HEVC에서 코딩된 트리 단위(coded tree unit; CTU)라고도 지칭되는 가장 큰 CU(largest CU; LCU)로 시작될 수도 있다. 코딩 단위의 개념 이외에도, 예측 단위(prediction unit; PU)의 개념이 HEVC에도 도입되었다. CU 계층적 트리의 분할이 완료되면, 각 리프 CU는 예측 타입 및 PU 파티션에 따라 하나 이상의 예측 유닛(PU)으로 더 분할된다. 화면 내용 코딩을 위한 몇 가지 코딩 도구가 개발되어 있다. 본 발명과 관련된 이러한 도구는 다음과 같이 간략하게 검토된다.
도 1a는 HEVC에 따른 인-루프(in-loop) 처리를 통합하는 예시적인 적응적 인터(Inter)/인트라(Intra) 비디오 코딩 시스템을 도시한다. 인터 예측에서, 모션 추정(Motion Estimation; ME)/모션 보상(MC)(112)은 다른 화상 또는 화상들로부터의 비디오 데이터에 기초하여 예측 데이터를 제공하는데 사용된다. 스위치(114)는 인트라 예측(Intra Prediction)(110) 또는 인터-예측 데이터를 선택하고, 선택된 예측 데이터는 덧셈기(116)에 공급되어 잔류물이라고도 불리는 예측 에러를 형성한다. 그 후, 예측 오차는 변환(T)(118)에 의해 처리되고 이어서 양자화(Q)(120)에 의해 처리된다. 그 후, 변환된 및 양자화된 잔류물은 엔트로피 인코더(122)에 의해 코딩되어 압축된 비디오 데이터에 대응하는 비디오 비트스트림을 형성한다. 그 후, 변환 계수들과 연관된 비트 스트림은 모션, 모드 및 이미지 영역과 연련된 다른 정보와 같은 부가 정보로 패킹된다. 부수 정보는 또한 필요한 대역폭을 줄이기 위해 엔트로피 코딩될 수도 있다. 따라서, 부가 정보와 연관된 데이터는 도 1a에 도시된 바와 같이 엔트로피 인코더(122)에 제공된다. 인터-예측 모드가 사용될 때, 참조(reference) 화상 또는 화상들은 인코더 단부에서 또한 재구성되어야한다. 결과적으로, 변환된 및 양자화된 잔류물은 잔류물을 회수하기 위해 역양자화(Inverse Quantization; IQ)(124) 및 역변환(Inverse Transformation; IT)(126)에 의해 처리된다. 그 후, 잔류물은 재구성(Reconstruction; REC)(128)에서 예측 데이터(136)에 다시 가산되어 비디오 데이터를 재구성한다. 재구성된 비디오 데이터는 기준 화상 버퍼(134)에 저장되어 다른 프레임의 예측에 사용될 수도 있다.
도 1a에 도시된 바와 같이, 입력 비디오 데이터는 인코딩 시스템에서 일련의 처리를 거친다. REC(128)로부터의 재구성된 비디오 데이터는 일련의 처리로 인해 다양한 손상을 받을 수도 있다. 따라서, 비디오 품질을 향상시키기 위하여 재구성된 비디오 데이터가 참조 화상 버퍼(134)에 저장되기 전에 시각적 품질을 향상시키기 위해 재구성된 비디오 데이터에 다양한 인-루프 처리가 적용된다. 개발되는 고효율 비디오 코딩(HEVC) 표준에서, 디블로킹 필터(Deblocking Filter; DF)(130) 및 샘플 적응 오프셋(Sample Adaptive Offset; SAO)(131)은 화질을 향상시키기 위해 개발되었다. 인-루프 필터 정보는 디코더가 필요한 정보를 적절하게 복구할 수 있도록 비트 스트림에 통합될 수도 있다. 따라서, SAO로부터의 인-루프 필터 정보는 비트 스트림으로의 통합을 위해 엔트로피 인코더(122)에 제공된다. 도 1a에서, DF(130)는 먼저 재구성된 비디오에 적용되고, SAO(131)는 그 후 DF 처리된 비디오에 적용된다. 그러나, DF와 SAO 사이의 처리 순서는 재배열될 수 있다.
도 1a의 인코더에 대한 대응하는 디코더가 도 1b에 도시된다. 비디오 비트스트림은 엔트로피 디코더(142)에 의해 디코딩되어, 변환되고 양자화된 잔류물, SAO 정보 및 다른 시스템 정보를 복원한다. 디코더 측에서는, ME/MC 대신에 MC(Motion Compensation)(113)만이 수행됩니다. 디코딩 프로세스는 인코더 측의 재구성 루프와 유사하다. 복원된 변환 및 양자화된 잔류물, SAO 정보 및 다른 시스템 정보는 비디오 데이터를 재구성하는데 사용된다. 재구성된 비디오는 DF(130) 및 SAO(131)에 의해 추가 처리되어 최종 강화 디코딩된 비디오를 생성한다.
HEVC의 코딩 프로세스는 LCU(Largest Coding Unit)라고 불리는 블록 구조를 사용하여 화상을 인코딩 또는 디코딩한다. LCU는 쿼드트리(quadtree)를 사용하여 적응적으로 코딩 단위(CU)로 분할된다. 각 리프 CU에서, DF는 각 8 × 8 블록에 대해 수행되고 HEVC에서는, DF가 8 × 8 블록 경계에 적용된다. 각 8 × 8 블록에 대해, 수직 블록 경계(수직 에지라고도 함)에 걸쳐 수평 필터링이 먼저 적용된 다음, 수평 블록 경계(수평 에지라고도 함)에 걸쳐 수직 필터링이 적용된다. 루마 블록 경계를 처리하는 동안에, 경계의 각 측부에 있는 4 개의 픽셀이 필터 파라미터 유도에 포함되며, 경계의 각 측부에 있는 최대 3 개의 픽셀이 필터링 후에 변경 될 수도 있다.
도 2는 2 개의 블록 사이의 수직 에지(210)에 대한 DF 프로세스에 관련된 픽셀들을 도시하며, 여기서 각각의 가장 작은 정사각형은 하나의 픽셀을 나타낸다. 에지의 좌측의 픽셀들(즉, 220으로 표시된 픽셀 열 p0 내지 p3)은 하나의 8 × 8 재구성된 블록으로부터의 것이고, 에지의 우측의 픽셀들(즉, 230으로 표시된 픽셀 열 q0 내지 q3)은 또 다른 8 × 8 재구성된 블록으로부터의 것이다. HEVC에 따른 DF 프로세스에서, 2 개의 8 × 8 블록의 코딩 정보는 에지의 경계 필터 강도(BS 또는 경계 강도라고도 함)를 먼저 계산하는데 사용된다. 경계 필터 강도가 결정된 후, 재구성된 픽셀의 열 p0-p3 및 q0-q3은 필터 온/오프 결정 및 강한/약한 필터 선택을 포함하는 필터 파라미터를 유도하는데 사용된다.
도 3은 수평 에지(310)에 대한 DF 프로세스에 관련된 경계 픽셀을 도시하며, 여기서 각각의 가장 작은 정사각형은 하나의 픽셀을 나타낸다. 에지의 상부측의 픽셀(즉, 320으로 표시된 픽셀 행 p0 내지 p3)은 하나의 8 × 8 재구성된 블록으로부터의 것이고, 에지의 하부측의 픽셀(즉, 330으로 표시된 픽셀 행 q0 내지 q3)은 또 다른 8 × 8 재구성된 블록으로부터 것이다. 수평 에지에 대한 DF 프로세스는 수직 에지에 대한 DF 프로세스와 유사하다.
HEVC에 따르면, 3 가지 레벨(즉, 2, 1 및 0)의 경계 필터 강도가 사용될 수도 있다. 강한 경계(즉, 경계가 보다 더 가시적임)의 경우, 더 강한 디블로킹 필터가 사용되어 더 부드러운 경계를 만든다. 강한 DF는 BS = 2로 표시되고 약한 DF는 BS = 1로 표시된다. BS가 0이면, 이는 디블로킹 필터를 나타내지 않는다.
현재, 화면 내용 코딩(screen content coding; SCC) 및 3D 확장을 포함하는 HEVC(고효율 비디오 코딩)의 확장이 개발되고 있다. 화면 내용 코딩은 4 : 2 : 2 및 4 : 4 : 4와 같이 4 : 2 : 0이 아닌 색상 포맷을 사용하여 코딩 화명 캡처된 내용에서, 12, 14, 16과 같은 비트 심도가 높은 비디오 데이터를 목표로 하며, 3D 확장은 깊이 데이터를 가진 멀티-뷰 비디오의 코딩을 목표로 한다.
SCC 개발 과정 동안에, "IntraBC(Intra picture block copy)" 기술을 비롯하여 다양한 비디오 코딩 도구가 설명되었다. IntraBC 기법은 먼저 JCTVC-M0350[Budagavi et al., AHG8: Video coding using Intra motion compensation, Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC 1/SC 29/WG11 13th Meeting: Incheon, KR, 18-26 Apr. 2013, Document: JCTVC-M0350]에 개시되어 있다. JCTVC-M0350에 따른 예가 도 4에 도시되며, 여기서, 현재 코딩 유닛(CU, 410)은 인트라 MC(모션 보상)를 사용하여 코딩된다. 예측 블록(420)은 현재 CU 및 변위 벡터(412)로부터 위치된다. 이 예에서, 검색 영역은 현재 CTU(코딩 트리 단위), 좌측 CTU 및 좌측 좌측 CTU로 제한된다. 예측 블록은 이미 재구성된 영역으로부터 얻어진다. 그 후, 현재 CU에 대한 모션 벡터(MV) 또는 블록 벡터(BV) 및 잔류물이라고도 불리는 변위 벡터가 코딩된다. HEVC는 CTU 및 CU 블록 구조를 비디오 데이터 코딩의 기본 단위로 채택하는 것이 잘 알려져 있다. 각 화상은 CTU로 분할되고, 각 CTU는 CU로 다시 분할된다. 예측 단계 동안에, 각각의 CU는 예측 처리를 수행하기 위한 예측 유닛(PU)으로 불리는 복수의 블록으로 분할될 수도 있다.
JCTVC-M0350에 기초한 수정은, 수평 및 수직 BV 성분이 0이 안되게 하기 위한 JCTVC-N0256[Pang et al., Non-RCE3: Intra Motion Compensation with 2-D MVs, Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC 1/SC 29/WG11 14th Meeting: Vienna, AT, 25 July - 2 Aug. 2013, Document: JCTVC- N0256]에 개시되어 있다. 또한, BV 코딩 방법은 JCTVC-N0256에 개시되어 있다. 하나의 방법은 좌측 또는 그 보다 큰 BV를 BV 예측자로 사용하고 결과적인 BVD(BV 차)를 코딩한다. BVD가 0인지 여부를 나타내는 플래그가 먼저 시그널링된다. BVD가 0이 아닐 때, 3차 코드의 지수-골룸(exponential-golomb)은 BVD의 나머지 절대 레벨을 인코딩하는데 사용된다. BVD의 기호는 플래그를 사용하여 코딩된다. 다른 방법에 따르면, 어떠한 예측자도 사용되지 않고, BV는 HEVC에서 BVD 코딩에 사용 된 지수-골룸 코드를 사용하여 코딩된다.
JCTVC-N0256은 또한 파이프라인 친화적 접근법을 일부 개시한다. 예를 들어, 보간 필터가 사용되지 않는다. 또한 BV 검색 영역이 제한된다. 일례에서, 탐색 영역은 현재 CTU 및 좌측 CTU로 제한된다. 다른 예에서, 검색 영역은 현재 CTU와 좌측 CTU의 가장 오른쪽 4 열로 제한됩니다.
SCM-2.0[Joshi et al., Screen content coding test model 2(SCM 2), Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG 16 WP3 and ISO/IEC JTC 1/SC29/WG11, 18th Meeting: Sapporo, JP, 30 June - 9 July 2014, Document: JCTVC-R1014]에서, 블록 벡터(BV) 코딩은 JCTVC-R0309[Pang, et al., Non-SCCE1: Combination of JCTVC-R0185 and JCTVC-R0203, Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG 16 WP3 and ISO/IEC JTC 1/SC29/WG11, 18th Meeting: Sapporo, JP, 30 June - 9 July 2014, Document: JCTVC-R0309]에 따라 이웃하는 BV와 코딩된 BV를 BV 예측자(BVP)를 이용하도록 수정된다. BV 예측자는 HEVC의 AMVP 계획과 유사하게 유도된다. 예측자 후보 리스트는 도 5에 도시된 바와 같이 먼저 공간 이웃 블록(a1 및 b1)을 순서대로 액세스함으로써 구성된다. 공간 이웃들 중 어느 것이 블록 벡터를 갖지 않으면, (-2*CU_width, 0) 및 (-CU_width, 0)으로 초기화되는 마지막 2 개의 코딩된 BV는 블록 벡터 후보 리스트를 채우기 위해 사용되어 그 리스트에 두 개의 다른 항목이 포함된다. 라인 버퍼가 필요없도록 하려면, 현재 CTU 외부의 상기 BV를 사용할 수 없는 것으로 간주한다. 마지막 2 개의 코딩된 BV는 각 CTU에 대해 (0, 0)으로 리셋되어 데이터 의존성을 방지한다.
현재, IntraBC 코딩된 블록에 대한 BV는 정수 정확도로 표시되고, 이는 1/4 정확도로 표시되는 인터 코딩된 블록에 대한 MV와는 상이하다.
SCM-2.0에 따르면, 디블로킹 필터 프로세스는, 종래의 HEVC와 유사한 재구성 프로세스 이후에 블록 경계를 따라 실행될 것이다. 경계 필터 강도(BS)는 강한 필터링, 약한 필터링 또는 필터링 없음이 경계에 적용되어야 하는지 여부를 결정한다. HEVC에서, 에지가 디블로킹 필터를 필요로 한다면, 상이한 블록 경계 필터링 강도(BS)가 상이한 속성을 갖는 블록 경계에 할당된다. 요약하면, 이하의 BS 결정 프로세스가 적용된다.
단계 1. 블록 경계의 측부의 임의의 블록이 인트라 코딩되었는지 여부에 대응하는 테스트 1이 수행된다. 결과가 표명되면(즉, 결과 = 예), BS에 2와 동일한 값이 할당되고 BS 결정 프로세스가 종료된다. 그렇지 않은 경우, BS 결정 프로세스는 단계 2 단계로 진행한다.
단계 2. 블록 경계가 또한 변환 블록 에지인지 여부 그리고 블록 경계의 측부 상의 적어도 하나의 블록이 난-제로 계수를 갖는지에 대응하는 테스트 2가 수행된다. 결과가 표명되면(즉, 결과 = 예), BS에 1과 동일한 값이 할당되고 BS 결정 프로세스가 종료된다. 그렇지 않은 경우, BS 결정 프로세스는 단계 3으로 진행한다.
단계 3. 블록 경계의 양측에 있는 두 개의 블록과 관련된 코딩 파라미터에 대한 테스트 3이 수행된다. BS에는 테스트 3의 결과에 기초하여 1 또는 0과 동일한 값이 할당된다. 테스트 3에는, RefList(참조 화상 리스트, 참조 리스트라고도 함), RefIdx(참조 화상 인덱스, 참조 인덱스라고도 함), 사용된 MV의 수, 양측의 MV 차와 같은 부호화 파라미터가 사용될 수도 있다. 예를 들어, 2 개의 블록이 동일한 화상을 참조하고, 2 개의 MV 사이의 차가 하나의 정수 픽셀(어느 하나의 구성 요소)보다 작은 경우, BS는 0으로 설정된다. 그렇지 않은 경우, BS는 1로 설정된다.
블록 경계의 일 측부에서 IntraBC 코딩된 블록이 포함되는 경우의 경계 에지에 대해, 현재 HEVC 실행에 따른 디블록킹 필터 BS 결정은 IntraBC 코딩된 블록을 인트라 코딩된 블록으로서 취급한다. 따라서, 블록 경계 옆의 두 블록 중 어느 하나가 IntraBC 코딩되는 경우, 관련 에지에 대한 BS에는 디블록킹 필터 동작에 대해 2와 동일한 값이 할당된다.
IntraBC 코딩된 블록과 관련된 현재 디블로킹 필터 실행에 따르면, 필터링 프로세스는 인트라 블록과 유사한 방식으로 IntraBC 코딩된 블록을 처리한다. 따라서, IntraBC 코딩된 블록이 포함될 경우 바람직한 시각 품질을 얻지 못할 수도 있다. 따라서, 시각적 품질을 향상시키기 위해 IntraBC 코딩된 블록과 연관된 블록 경계에 대한 디블록킹 필터 프로세스를 개발하는 것이 바람직하다.
IntraBC(인트라-블록 복사) 모드를 포함하는 비디오 코딩 시스템에서 블록 경계에 디블로킹 필터를 적용하기 위한 방법 및 장치가 개시되어 있다. 본 발명에 따르면, 2 개의 이웃하는 재구성된 블록들에서 적어도 하나의 IntraBC 코딩된 블록을 포함하는 2 개의 이웃하는 재구성된 블록의 적어도 하나의 조합에 대해, 1 또는 0과 동일한 경계 필터 강도가, 2 개의 이웃하는 재구성된 블록들과 연관되는 코딩 파라미터에 기초하여 선택된다. 그 후, 디블로킹 필터는 선택된 경계 필터 강도를 사용하여 블록 경계 주위의 2 개의 이웃하는 재구성된 블록의 이웃하는 샘플에 적용된다.
일 실시형태에서, IntraBC 코딩된 블록이 참조 화상 인덱스값을 사용하여 시그널링되고 2 개의 이웃하는 재구성된 블록이 하나의 IntraBC 코딩된 블록 및 하나의 인터 코딩된 블록에 대응할 때, 블록 경계가 또한 변환 블록 에지이고, 2 개의 이웃하는 재구성된 블록 중 적어도 하나가 하나 이상의 0이 아닌 계수를 가지면, 경계 필터 강도는 1로 설정된다. 블록 경계가 변환 블록 에지가 아니거나 2 개의 이웃하는 재구성된 블록 중 어느 것도 0이 아닌 계수를 갖지 않으면, 경계 필터 강도는, 참조 화상 리스트(RefList), 참조 화상 인덱스(RefIdx), 사용된 모션 벡터의 수, 상기 2 개의 이웃하는 재구성된 블록과 연관되는 모션 벡터차를 포함하는 코딩-파라미터 그룹으로부터 선택되는 인자들에 따라서 1 또는 0으로 설정된다. 예를 들어, 블록 경계가 하나의 변환 블록 에지가 아니거나 2개의 이웃하는 재구성된 블록 중 어느 것도 0이 아닌 계수를 갖지 않으면, 경계 필터 강도는 1로 설정된다.
다른 실시형태에서, IntraBC 코딩된 블록이 참조 화상 인덱스값을 사용하여 시그널링되고 2 개의 이웃하는 재구성된 블록이 2 개의 IntraBC 코딩된 블록에 대응할 때, 블록 경계가 또한 하나의 변환 블록 에지이고, 2개의 이웃하는 재구성된 블록 중 적어도 하나가 하나 이상의 0이 아닌 계수들을 가지면, 경계 필터 강도는 1로 설정된다. 블록 경계가 하나의 변환 블록 에지가 아니거나 2 개의 이웃하는 재구성된 블록 중 어느 것도 0이 아닌 계수를 갖지 않으면, 경계 필터 강도는, RefList, RefIdx, 사용된 모션 벡터의 수, 상기 2 개의 이웃하는 재구성된 블록과 연관되는 모션 벡터차를 포함하는 코딩 파라미터 그룹으로부터 선택된 하나 이상의 인자에 따라 1 또는 0으로 설정된다.
또 다른 실시형태에서, 각각의 IntraBC 코딩된 블록이 참조 화상 인덱스값을 사용하여 시그널링되고 2 개의 이웃하는 재구성된 블록이 하나의 IntraBC 코딩된 블록 및 하나의 인터 코딩된 블록에 대응할 때, 특정 참조 화상 인덱스가 IntraBC 코딩된 블록에 할당된다. 현재 화상은 IntraBC 코딩된 블록의 참조 화상으로서 사용된다. 현재 화상은 L0, L1에 대응하는 참조 화상 리스트 또는 L0, L1과는 다른 별도의 참조 화상 리스트에 할당된다. 특정 참조 화상 인덱스는 현재 슬라이스 헤더에서 정규 인터 참조 화상에 의해 사용되지 않는 값에 대응한다. 특정 참조 화상 인덱스는 -1 또는 참조 화상 리스트(L0 또는 L1) 내의 참조 화상 인덱스의 총수에 대응할 수도 있다.
다른 실시형태에 따르면, 각각의 IntraBC 코딩된 블록이 참조 화상 인덱스값을 사용하여 시그널링되고 2 개의 이웃하는 재구성된 블록이 2 개의 IntraBC 코딩된 블록에 대응할 때, 동일한 특정 참조 화상 리스트 및 동일한 특정 참조 화상 인덱스가 이들 2 개의 IntraBC 코딩된 블록에 할당된다.
IntraBC 플래그를 사용하는 것에 기초한 IntraBC 시그널링의 경우에, 2 개의 이웃하는 재구성된 블록이 하나의 IntraBC 코딩된 블록 및 하나의 인터 코딩된 블록에 대응하면, 경계 필터 강도는 1로 설정된다. 2 개의 인접하는 재구성된 블록이 2 개의 IntraBC 코딩된 블록에 대응하는 경우, 2 개의 IntraBC 코딩된 블록과 연관된 2 개의 블록 벡터 간의 차이가 임계값 이상이면, 경계 필터 강도가 1로 설정되고, 그렇지 않은 경우, 경계 필터 강도는 0으로 설정된다. 임계값은 1, 2 또는 4에 대응할 수도 있다.
일 실시형태에서, 2 개의 이웃하는 재구성된 블록 중 임의의 것이 다른 화상으로부터의 보상 블록을 참조하면, 2 개의 이웃하는 재구성된 블록 중 임의의 것은 경계 필터 강도의 선택과 관련하여 인터 코딩된 블록으로 간주된다.
다른 실시형태에서, 경계 블록이 IntraBC 코딩된 블록인 경우, IntraBC 코딩된 블록의 블록 벡터는 하나 이상의 코딩 파라미터에 기초하여 경계 필터 강도를 1 또는 0으로 선택하는 것과 관련하여 1/4 샘플 정확도로 변환된다. 예를 들어, IntraBC 코딩된 블록의 블록 벡터는 블록 벡터를 2만큼 좌측으로 시프트함으로써 1/4 샘플 정확도로 변환될 수도 있다.
도 1a는 DF 및 SAO 인-루프 처리를 통합하는 고효율 비디오 코딩(HEVC) 표준에 따른 예시적인 적응적 인터/인트라 비디오 인코딩 시스템을 도시한다.
도 1b는 DF 및 SAO 인-루프 처리를 통합하는 고효율 비디오 코딩(HEVC) 표준에 따른 예시적인 적응적 인터/인트라 비디오 디코딩 시스템을 도시한다.
도 2는 디블로킹 필터를 위한 2 개의 8 × 8 블록들 사이의 수직 블록 에지의 예를 도시한다.
도 3은 디블로킹 필터를 위한 2 개의 8 × 8 블록들 사이의 수평 에지의 예를 도시한다.
도 4는 인트라-블록 복사(IntraBC) 모드에 따른 인트라 모션 보상의 예를 도시하며, 여기서 수평 변위 벡터가 사용된다.
도 5는 HEVC의 어드밴스드 모션 벡터 예측(advanced motion vector prediction; AMVP) 모드에 따른 모션 벡터 예측을 위한 이웃하는 블록의 예를 도시한다.
도 6은 인트라 블록 복사(IntraBC) 모드를 포함하는 코딩 시스템에 대한 예시적인 흐름도를 도시하며, 여기서 시스템은 본 발명의 실시형태를 포함하는 경계 필터 강도 유도를 사용한다.
도 1b는 DF 및 SAO 인-루프 처리를 통합하는 고효율 비디오 코딩(HEVC) 표준에 따른 예시적인 적응적 인터/인트라 비디오 디코딩 시스템을 도시한다.
도 2는 디블로킹 필터를 위한 2 개의 8 × 8 블록들 사이의 수직 블록 에지의 예를 도시한다.
도 3은 디블로킹 필터를 위한 2 개의 8 × 8 블록들 사이의 수평 에지의 예를 도시한다.
도 4는 인트라-블록 복사(IntraBC) 모드에 따른 인트라 모션 보상의 예를 도시하며, 여기서 수평 변위 벡터가 사용된다.
도 5는 HEVC의 어드밴스드 모션 벡터 예측(advanced motion vector prediction; AMVP) 모드에 따른 모션 벡터 예측을 위한 이웃하는 블록의 예를 도시한다.
도 6은 인트라 블록 복사(IntraBC) 모드를 포함하는 코딩 시스템에 대한 예시적인 흐름도를 도시하며, 여기서 시스템은 본 발명의 실시형태를 포함하는 경계 필터 강도 유도를 사용한다.
이하의 설명은 본 발명을 수행하는 최선으로 고려된 모드에 관한 것이다. 이 설명은 본 발명의 일반적인 원리를 설명하기 위한 것이며 제한적인 의미로 해석되어서는 안된다. 본 발명의 범위는 첨부된 청구 범위를 참조함으로써 가장 잘 결정된다.
본 발명의 실시형태들에 따르면, IntraBC 코딩된 블록은 디블로킹 필터링 프로세스 동안 비-인트라 모드로서 처리되는 반면, 현재 화상과 다른 화상으로부터의 보상 블록을 참조하는 재구성된 블록은 인터 코딩된 블록으로서 취급된다. 현재 IntraBC 코딩된 블록의 블록 벡터(block vector; BV)는 다른 코딩 파라미터들과 함께, 경계 필터 강도(boundary filter strength; BS)가 1 또는 0과 동일한 값으로 할당되는지 여부를 결정하는데 사용될 것이다.
IntraBC 시그널링의 경우, 실행되는 두 가지 접근법 즉, ref_idx 접근 및 ibc_flag 접근이 존재한다. ref_idx 접근법에 따르면, 현재 화상은 IntraBC 코딩된 블록에 대한 참조 화상으로서 취급되고, 특정 RefList 및 ref_idx 값은 이 IntraBC 코딩된 블록에 할당될 것이다. ibc_flag 접근법에 따르면, IntraBC 코딩된 블록은 ibc_flag 또는 intra_bc_flag로 지칭되는 플래그에 의해 시그널링된다. 슬라이스는 비디오 코딩에 사용되는 비디오 구조이고, 화상은 복수의 슬라이스로 분할되며 각 슬라이스는 그 슬라이스에 고유한 코딩 파라미터의 집합을 사용할 수 있음을 주목하여야 한다. 또한, 슬라이스 특정 코딩 정보가 디코더 측에서 복구될 수 있도록 현재 슬라이스에 고유한 코딩 정보가 슬라이스 헤더에 시그널링될 수도 있다. 2 개의 IntraBC 시그널링 방식(즉, ref_idx 및 ibc_flag) 각각에 대해, 적어도 하나의 IntraBC 코딩된 블록과 관련된 경계 에지의 디블로킹 필터에 대한 경계 필터 강도 결정을 위해 고려해야할 3가지 경우가 있다.
ref_
idx
접근 방식에 기초한
IntraBC
시그널링
사례 1. 블록 경계 옆에 있는 하나의 블록은 인트라 코딩되고 다른 블록은 IntraBC 코딩된다. BS는 이 경계 에지에 대해 2와 동일한 값을 할당받게 된다.
사례 2. 블록 경계 옆의 하나의 블록은 인터 코딩되고 다른 블록은 IntraBC 코딩된다. 본 발명의 일 실시형태에 따르면, IntraBC 코딩된 블록을 포함하는 현재 화상은 IntraBC 코딩된 블록에 대한 참조 화상로서 취급된다. 참조 화상(즉, 현재 화상)은 특정 참조 화상 리스트, RefList에 배치된다. 특정 참조 화상 인덱스값, ref_idx는 이 IntraBC 코딩된 블록에 할당되어 디블로킹 프로세스 동안 이들 파라미터가 사용될 수 있다. 예를 들어, 현재 화상은 기준 화상 리스트 0(L0) 및 기준 화상 인덱스에 할당될 수 있고, ref_idx는 이하에 따라 결정된다.
ref_idx = num _ref_ idx _l0_active_ minus1 + 1 (1)
여기서, num _ref_ idx _l0_active_ minus1는 현재 슬라이스에 대한 L0 내의 참조 화상의 개수를 나타내는 슬라이스 헤더 신택스이다.
정규 인터 참조 화상은 포괄적으로, 0에서 num _ref_ idx _l0_active_ minus1에 이르기까지 자신의 ref_idx를 가질 것이다. 일반적으로, ref_idx = -1(또는 참조 화상리스트 L0 내의 참조 화상 인덱스의 총수)와 같은, 정규 인터 참조 화상에 의해 사용되지 않는 임의의 ref_idx는 IntraBC 코딩된 블록에 할당될 수 있다. 전술한 BS 결정 프로세스의 단계 2 및 단계 3은 BS 값을 결정하기 위해 적용될 수 있다.
다른 예에서, 현재 화상은 참조 화상 리스트 1(즉, L1)에 할당되고, 참조 화상 인덱스(ref_idx)는 다음에 따라 결정된다.
ref_idx = num _ref_ idx _l1_active_ minus1 + 1 (2)
여기서, num _ref_ idx _l1_active_ minus1는 현재 슬라이스에 대한 L1 내의 참조 화상의 개수를 나타내는 슬라이스 헤더 신택스이다. 정규 인터 참조 화상은 포괄적으로, 0에서 num _ref_ idx _l1_active_ minus1에 이르기까지 자신의 ref_idx를 가질 것이다. 일반적으로, ref_idx = -1(또는 참조 화상 리스트(L1) 내의 참조 화상 인덱스의 총수)와 같은, 정규 인터 참조 화상에 의해 사용되지 않는 임의의 ref_idx는 IntraBC 코딩된 블록에 할당될 수 있다. 전술한 BS 결정 프로세스의 단계 2 및 단계 3은 BS 값을 결정하기 위해 적용될 수 있다.
또 다른 실시형태에서, 현재 화상에는 L0 및 L1과 다른 제 3 참조 화상 리스트(예를 들어, L2)가 할당된다. 이 IntraBC 코딩된 블록에 임의의 ref_idx 값(예컨대 : 0 또는 -1)을 할당할 수 있다. 전술한 BS 결정 프로세스의 단계 2 및 단계 3은 BS 값을 결정하기 위해 적용될 수 있다. 일 실시형태에서, BS 결정 프로세스의 단계 3이 적용되는 경우, 인터 코딩된 블록 및 IntraBC 코딩된 블록에 대한 참조 화상이 상이하기 때문에, 관련 경계 에지에 대한 BS에는 1과 동일한 값이 할당될 것이다.
사례 3. 블록 경계에서의 두 블록은 IntraBC 코딩된다. Similar to Case 2, both blocks will be assigned a specific RefList value and ref_idx value so that these parameters can be used during the Inter deblocking process.사례 2와 유사하게, 두 블록에 특정 RefList 값과 ref_idx 값이 할당되어, 인터 디블로킹 프로세스 동안에 이들 파라미터를 사용할 수 있다. 이 경우, 블록들 양자에 대한 RefList 및 ref_idx는 동일해야 한다. 전술한 BS 결정 프로세스의 단계 2 및 단계 3은 BS 값을 결정하기 위해 적용될 수 있다. 일 실시형태에서, BS 결정 프로세스의 단계 3이 적용되면, 관련 경계 에지들에 대한 BS는 다음의 인자들 즉, 참조 화상 리스트(RefList), 참조 화상 인덱스(reference picture index; RefIdx), 사용된 BV의 수, 및 2 개의 이웃하는 IntraBC 코딩된 블록과 연관된 BV 차(difference) 중 적어도 하나에 기초하여 1 또는 0과 동일한 값이 할당될 것이다. 예를 들어, 2 개의 이웃하는 IntraBC 코딩된 블록이 동일한 참조 화상을 참조하고, 2 개의 이웃하는 IntraBC 코딩된 블록과 연관된 2 개의 BV가 동일한 경우, BS는 0으로 설정된다. 그렇지 않으면, BS는 1로 설정된다.
ibc
_flag 접근 방식을 기초하여
시그널링된
IntraBC
사례 1. 블록 경계에서 하나 블록은 인트라 코딩되고 다른 블록은 IntraBC 코딩된다. BS는 이 경계 에지에 대해 2와 동일한 값을 할당받게 된다.
사례 2. 블록 경계에서의 하나의 블록은 인터 코딩되고 다른 블록은 IntraBC 코딩된다. BS는 이 경계 에지에 대해 1과 동일한 값을 할당받게 된다.
사례 3. 블록 경계에서의 두 블록은 IntraBC 코딩된다. 이 두 블록의 두 BV는 BV0 및 BV1로 지칭된다. BV0 및 BV1의 수평 또는 수직 성분 간의 절대 차가 N 이상이면, BS는 이 경계 에지에 대해 1과 동일한 값을 할당받게 된다. 그렇지 않으면, BS에는 이 경계 에지에 대해 0과 동일한 값이 할당될 것이다. N은 1, 2, 4 또는 다른 정수일 수 있다.
IntraBC
BV
시프트
HEVC에서, 루마 성분에 대한 MV는 인터 코딩된 블록에 대해 1/4 샘플 정확도를 갖는다. 한편, IntraBC 코딩된 블록에 대한 BV는 정수 정확도를 갖는다. 본 발명의 일 실시형태에 따르면, IntraBC 코딩된 블록에 대한 BV는 루마(luma) 성분에 대한 MV와 동일한 정확도를 갖도록 변환된다. 예를 들어, BV는 디블로킹 필터 처리 동안에 2만큼 좌측으로 시프트될 수 있다. 따라서, 좌측으로 시프트된 BV는 인터코딩된 블록의 MV와 동일한 정밀도를 가질 것이다.
본 발명의 실시형태를 포함하는 시스템의 성능은, SCM-3.0 소프트웨어(화면 내용 코딩 테스트 모델 버전 3.0)에 기초한 앵커 시스템과 비교된다. 본 발명의 실시형태를 포함하는 시스템은, ref_idx 접근법에 기초한 IntraBC 시그널링을 사용하고, BS 결정 프로세스는 ref_idx 접근법에 기초한 IntraBC 시그널링과 연관된 사례 1 내지 사례 3에서 설명된다. 한편, SCM-3.0 기반 시스템은 블록 경계 옆의 임의의 IntraBC 코딩된 블록을 인트라 블록으로 처리한다. 이 테스트는 다양한 테스트 비디오 자료에 대해 수행된다. 성능은, BD-레이트(Rate)에 기초하여 비교되며, 여기서, BD-레이트는 비디오 코딩 분야에서 잘 알려진 성능 측정치이다. 성능 비교는 모든 인트라, 랜덤 액세스 및 저지연 B-화상을 포함한 다양한 구성에 대해 수행된다. 비교에 기초하여, 현재의 실시형태를 포함하는 시스템은, 모든 인트라 구성에 대해 최대 1.3 %, 랜덤 액세스 구성에 대해 최대 1.9 % 및 저지연 B-화상에 대해 최대 2.9 %의 RD-레이트 감소를 달성한다.
도 6은 인트라 블록 복사(IntraBC) 모드를 포함하는 코딩 시스템에 대한 예시적인 흐름도를 도시하며, 여기서 시스템은 본 발명의 실시형태를 포함하는 경계 필터 강도 유도를 사용한다. 시스템은 단계 610에 나타낸 바와 같이 2 개의 이웃하는 재구성된 블록들 사이의 블록 경계를 갖는 현재 화상의 2 개의 이웃하는 재구성된 블록들에 대한 입력 데이터를 수신한다. 입력 데이터는 디블로킹 필터에 의해 필터링되는 2 개의 이웃하는 블록들에 대한 재구성된 데이터를 포함한다. 입력 데이터는 또한 블록 경계의 양측에서 2 개의 이웃하는 블록과 연련된 코딩 파라미터를 포함할 수도 있다. 인코딩을 위해, 코딩 파라미터는 또한 인코더 측에서 유도될 수도 있다. 디코딩을 위해, 코딩 파라미터는 디코더에 의해 수신된 비트스트림으로부터 파싱될 수도 있다. 입력 데이터는 메모리(예를 들어, 컴퓨터 메모리, 버퍼(RAM 또는 DRAM) 또는 기타 미디어) 또는 프로세서로부터 검색될 수도 있다. 2 개의 이웃하는 재구성된 블록과 연관된 하나 이상의 코딩 파라미터가 단계 620에서 결정된다. 단계 630에서, "적어도 하나의 이웃하는 재구성된 블록이 IntraBC 코딩된 경우"가 테스트된다. 그 결과가 "예(Yes)"이면, 단계 640 및 단계 650이 수행된다. 그 결과가 "아니오(No)"이면, 단계 640 및 단계 650은 스킵되고, 이 경우에는, 종래의 HEVC(예를 들어, SCM-3.0)에 따른 BS 결정 프로세스가 사용될 수도 있다.
위에 도시된 흐름도는 본 발명에 따른 IntraBC 코딩의 일례를 예시하기 위한 것이다. 당업자는 본 발명의 사상을 벗어나지 않고 각 단계를 변경하거나, 단계들을 재배열하거나, 단계를 분할하거나, 단계들을 조합하여 본 발명을 실시할 수도 있다.
상기 설명은 당업자가 특정 애플리케이션 및 그 요구 사항의 맥락에서 제공된 바와 같이 본 발명을 실시할 수 있도록 제시된다. 기술된 실시형태들에 대한 다양한 수정들이 당업자에게 명백할 것이며, 본 명세서에서 정의 된 일반적인 원리들은 다른 실시형태들에 적용될 수도 있다. 따라서, 본 발명은 도시되고 설명된 특정 실시형태들에 한정되도록 의도되지 않고, 본 명세서에서 개시된 원리들 및 신규한 특징들에 부합하는 가장 넓은 범위와 일치하게 된다. 상기 상세한 설명에서, 본 발명의 완전한 이해를 제공하기 위해 다양한 특정 세부 사항이 도시된다. 그럼에도 불구하고, 당업자는 본 발명이 실시될 수도 있음을 이해할 것이다.
전술한 바와 같은 본 발명의 실시형태는 다양한 하드웨어, 소프트웨어 코드, 또는 이들의 조합으로 구현될 수도 있다. 예를 들어, 본 발명의 실시형태는 본 명세서에서 설명된 처리를 수행하기 위해 비디오 압축 칩에 통합된 하나 이상의 전자 회로 또는 비디오 압축 소프트웨어에 통합된 프로그램 코드 일 수 있다.
본 발명의 실시형태는 또한 본 명세서에 설명된 처리를 수행하는 디지털 신호 프로세서(DSP) 상에서 실행될 프로그램 코드일 수도 있다. 본 발명은 또한, 컴퓨터 프로세서, 디지털 신호 프로세서, 마이크로프로세서, 또는 필드 프로그래머블 게이트 어레이(FPGA)에 의해 수행될 복수의 기능을 포함할 수도 있다. 이러한 프로세서는 본 발명에 의해 구현되는 특정 방법을 정의하는 머신 판독가능한 소프트웨어 코드 또는 펌웨어 코드를 실행함으로써, 본 발명에 따른 특정 작업을 수행하도록 구성될 수 있다. 소프트웨어 코드 또는 펌웨어 코드는 서로 다른 프로그래밍 언어와 다른 형식이나 스타일로 개발될 수도 있다. 소프트웨어 코드는 또한 다른 타겟 플랫폼에 대하여 컴파일될 수도 있다. 그러나, 본 발명에 따라서 작업을 수행하도록 코드를 구성하는 다른 수단 및 소프트웨어 코드의 다른 코드 포맷, 스타일 및 언어는, 본 발명의 사상 및 범위를 벗어나지 않을 것이다.
본 발명은 그 사상 또는 본질적인 특성을 벗어나지 않고 다른 특정 형태로 구현될 수도 있다. 설명된 실시예는 모든 점에서 단지 예시에 지나지 않고 제한적인 것이 아닌 것으로 간주되어야 한다. 따라서, 본 발명의 범위는 상기 상세한 설명보다는 첨부된 청구범위에 의해 나타내어진다. 청구범위의 균등물의 의미 및 범위 내에 있는 모든 변경은 본 발명의 범위 내에 포함되어야 한다.
Claims (19)
- IntraBC[인트라 블록 복사(Intra-block copy)] 모드를 포함하는 비디오 코딩 시스템에서 블록 경계에 디블로킹 필터를 적용하는 방법에 있어서,
2 개의 이웃하는 재구성된 블록 사이에 블록 경계를 갖는 현재 화상(picture)의 2 개의 이웃하는 재구성된 블록과 연관된 입력 데이터를 수신하는 단계와,
상기 2 개의 이웃하는 재구성된 블록들과 연관된 하나 이상의 코딩 파라미터를 결정하는 단계와,
상기 2 개의 이웃하는 재구성된 블록에서 적어도 하나의 IntraBC 코딩된 블록을 포함하는 2 개의 이웃하는 재구성된 블록의 적어도 하나의 조합에 대하여,
상기 하나 이상의 코딩 파라미터에 기초하여 경계 필터 강도를 1 또는 0으로 선택하는 단계와,
상기 블록 경계 주위의 상기 2 개의 이웃하는 재구성된 블록의 이웃하는 샘플들에, 상기 경계 필터 강도를 이용하여 디블록킹 필터를 적용하는 단계를 포함하는 디블로킹 필터를 적용하는 방법. - 제1항에 있어서, 각 IntraBC 코딩된 블록이 참조 화상 인덱스값을 이용하여 시그널링되고 상기 2 개의 이웃하는 재구성된 블록이 하나의 IntraBC 코딩된 블록과 하나의 인터 코딩된 블록에 대응할 때, 상기 블록 경계가 또한 하나의 변환 블록 에지이고 상기 2 개의 이웃하는 재구성된 블록 중 적어도 하나가 0이 아닌 계수를 가지면, 상기 경계 필터 강도는 1로 설정되는 것인 디블로킹 필터를 적용하는 방법.
- 제2항에 있어서, 상기 블록 경계가 하나의 변환 블록 에지가 아니거나 상기 2 개의 이웃하는 재구성된 블록 중 어느 것도 0이 아닌 계수를 갖지 않으면, 상기 경계 필터 강도는, 참조 화상 리스트(RefList), 참조 화상 인덱스(RefIdx), 사용된 모션 벡터의 수, 상기 2 개의 이웃하는 재구성된 블록과 연관되는 모션 벡터차를 포함하는 코딩-파라미터 그룹으로부터 선택된 하나의 이상의 인자에 따라서 1 또는 0으로 설정되는 것인 디블로킹 필터를 적용하는 방법.
- 제2항에 있어서, 상기 블록 경계가 하나의 변환 블록 에지가 아니거나 상기 2 개의 이웃하는 재구성된 블록 중 어느 것도 0이 아닌 계수를 갖지 않으면, 상기 경계 필터 강도는 1로 설정되는 것인 디블로킹 필터를 적용하는 방법.
- 제1항에 있어서, 각 IntraBC 코딩된 블록이 참조 화상 인덱스값을 이용하여 시그널링되고 상기 2 개의 이웃하는 재구성된 블록이 2 개의 IntraBC 코딩된 블록에 대응할 때, 상기 경계 블록이 또한 하나의 변환 블록 에지이고 상기 2 개의 이웃하는 재구성된 블록 중 적어도 하나가 0이 아닌 계수를 가지면, 상기 경계 필터 강도는 1로 설정되는 것인 디블로킹 필터를 적용하는 방법.
- 제5항에 있어서, 상기 블록 경계가 하나의 변환 블록 에지가 아니거나 상기 2 개의 이웃하는 재구성된 블록 중 어느 것도 0이 아닌 계수를 갖지 않으면, 상기 경계 필터 강도는, 참조 화상 리스트(RefList), 참조 화상 인덱스(RefIdx), 사용된 블록 벡터의 수, 상기 2 개의 이웃하는 재구성된 블록과 연관되는 블록 벡터차를 포함하는 코딩-파라미터 그룹으로부터 선택되는 하나 이상의 인자에 따라서 1 또는 0으로 설정되는 것인 디블로킹 필터를 적용하는 방법.
- 제1항에 있어서, 각 IntraBC 코딩 블록이 참조 화상 인덱스값을 이용하여 시그널링되고 상기 2 개의 이웃하는 재구성된 블록이 하나의 IntraBC 코딩된 블록 및 하나의 인터 코딩된 블록에 대응할 때, 특정 참조 화상 인덱스는 상기 하나의 IntraBC 코딩된 블록에 할당되는 것인 디블로킹 필터를 적용하는 방법.
- 제7항에 있어서, 상기 현재 화상은 상기 하나의 IntraBC 코딩된 블록에 대한 참조 화상으로서 사용되는 것인 디블로킹 필터를 적용하는 방법.
- 제8항에 있어서, 상기 현재 화상은 L0, L1에 대응하는 참조 화상 리스트에 또는 L0, L1와는 상이한 별도의 참조 화상 리스트에 할당되는 것인 디블로킹 필터를 적용하는 방법.
- 제7항에 있어서, 상기 특정 참조 화상 인덱스는, 현재의 슬라이스 헤더 내의 정규 인트라 참조 화상에 의해 사용되지 않는 값에 대응하는 것인 디블로킹 필터를 적용하는 방법.
- 제10항에 있어서, 상기 특정 참조 화상 인덱스는, -1 또는 참조 화상 리스트 내의 참조 화상 인덱스(L0 또는 L1)의 총수에 대응하는 것인 디블로킹 필터를 적용하는 방법.
- 제1항에 있어서, 각 IntraBC 코딩된 블록이 참조 화상 인덱스값을 이용하여 시그널링되고, 상기 2 개의 이웃하는 재구성된 블록이 2 개의 IntraBC 코딩된 블록에 대응할 때, 동일한 특정 참조 화상 리스트와 동일한 특정 참조 화상 인덱스는 상기 2 개의 IntraBC 코딩된 블록에 할당되는 것인 디블로킹 필터를 적용하는 방법.
- 제1항에 있어서, 각 IntraBC 코딩된 블록이 IntraBC 플래그를 이용하여 시그널링되고 상기 2 개의 이웃하는 재구성된 블록이 하나의 IntraBC 코딩된 블록 및 하나의 인터 코딩된 블록에 대응할 때, 상기 경계 필터 강도는 1로 설정되는 것인 디블로킹 필터를 적용하는 방법.
- 제1항에 있어서, 각 IntraBC 코딩된 블록이 IntraBC 플래그를 이용하여 시그널링되고 상기 2 개의 이웃하는 재구성된 블록이 2 개의 IntraBC 코딩된 블록에 대응할 때, 상기 2 개의 IntraBC 코딩된 블록과 연관된 2 개의 블록 벡터가 임계값 이상이면, 상기 경계 블록 강도는 1로 설정되고, 상기 2 개의 블록 벡터가 임계값 미만이면, 상기 경계 블록 강도는 0으로 설정되는 것인 디블로킹 필터를 적용하는 방법.
- 제14항에 있어서, 상기 임계값은 1, 2 또는 4에 대응하는 것인 디블로킹 필터를 적용하는 방법.
- 제1항에 있어서, 상기 2 개의 이웃하는 재구성된 블록 중 임의의 것이 다른 화상으로부터 보상 블록을 참조하는 경우, 상기 2 개의 이웃하는 재구성된 블록 중 임의의 것은, 상기 경계 필터 강도를 선택하는 단계와 관련하여 인터 코딩된 블록으로서 간주되는 것인 디블로킹 필터를 적용하는 방법.
- 제1항에 있어서, 상기 블록 경계의 일 측부에서의 각 IntraBC 코딩된 블록에 대하여, 각 IntraBC 코딩된 블록의 블록 벡터는, 상기 하나 이상의 코딩 파라미터에 기초하여 상기 경계 필터 강도를 1 또는 0으로서 선택하는 단계와 관련하여 1/4 샘플 정확도로 변환되는 것인 디블로킹 필터를 적용하는 방법.
- 제17항에 있어서, 각 IntraBC 코딩된 블록의 블록 벡터는, 상기 블록 벡터를 2만큼 좌측으로 시프팅함으로써 상기 1/4 샘플 정확도로 변환되는 것인 디블로킹 필터를 적용하는 방법.
- IntraBC(인트라 블록 복사) 모드를 포함하는 비디오 코딩 시스템에서 블록 경계에 디블록킹 필터를 적용하기 위한 장치에 있어서,
하나 이상의 전자 회로를 구비하며,
상기 하나 이상의 전자 회로는,
2 개의 이웃하는 재구성된 블록 사이에 블록 경계를 갖는 현재 화상의 2 개의 이웃하는 재구성된 블록과 연관된 입력 데이터를 수신하고,
상기 2 개의 이웃하는 재구성된 블록들에 대하여 하나 이상의 코딩 파라미터를 결정하고,
상기 2 개의 이웃하는 재구성된 블록에서 적어도 하나의 IntraBC 코딩된 블록을 포함하는 2 개의 이웃하는 재구성된 블록의 적어도 하나의 조합에 대하여,
상기 하나 이상의 코딩 파라미터에 기초하여 경계 필터 강도를 1 또는 0으로 선택하고,
상기 블록 경계 주위의 상기 2 개의 이웃하는 재구성된 블록의 이웃하는 샘플들에, 상기 경계 필터 강도를 이용하여 디블록킹 필터를 적용하도록 구성되는 것인 디블로킹 필터를 적용하기 위한 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462050258P | 2014-09-15 | 2014-09-15 | |
US62/050,258 | 2014-09-15 | ||
PCT/US2015/046887 WO2016043933A1 (en) | 2014-09-15 | 2015-08-26 | Method of deblocking for intra block copy in video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170053696A KR20170053696A (ko) | 2017-05-16 |
KR102008592B1 true KR102008592B1 (ko) | 2019-08-07 |
Family
ID=55533683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177009601A KR102008592B1 (ko) | 2014-09-15 | 2015-08-26 | 비디오 코딩에서의 인트라 블록 복사를 위한 디블로킹 방법 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10743034B2 (ko) |
EP (1) | EP3178228B1 (ko) |
KR (1) | KR102008592B1 (ko) |
CN (2) | CN111988606B (ko) |
WO (1) | WO2016043933A1 (ko) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11109036B2 (en) * | 2013-10-14 | 2021-08-31 | Microsoft Technology Licensing, Llc | Encoder-side options for intra block copy prediction mode for video and image coding |
WO2015054811A1 (en) * | 2013-10-14 | 2015-04-23 | Microsoft Corporation | Features of intra block copy prediction mode for video and image coding and decoding |
US10856009B2 (en) * | 2014-09-04 | 2020-12-01 | Mediatek Inc. | Method of block vector clipping and coding for screen content coding and video coding |
CN115134607A (zh) * | 2015-06-11 | 2022-09-30 | 杜比实验室特许公司 | 使用自适应去块滤波编码和解码图像的方法及其装置 |
EP3440837A4 (en) * | 2016-04-06 | 2019-09-04 | Telefonaktiebolaget LM Ericsson (publ) | METHOD, CODIER AND TRANSCODER FOR TRANSCODING |
US10735725B2 (en) | 2016-09-14 | 2020-08-04 | Microsoft Technology Licensing, Llc | Boundary-intersection-based deblock filtering |
WO2018191224A1 (en) * | 2017-04-11 | 2018-10-18 | Vid Scale, Inc. | 360-degree video coding using face continuities |
US10848761B2 (en) | 2017-06-29 | 2020-11-24 | Qualcomm Incorporated | Reducing seam artifacts in 360-degree video |
US11153607B2 (en) | 2018-01-29 | 2021-10-19 | Mediatek Inc. | Length-adaptive deblocking filtering in video coding |
CN112335250A (zh) * | 2018-06-28 | 2021-02-05 | 韩国电子通信研究院 | 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质 |
CN110662053B (zh) | 2018-06-29 | 2022-03-25 | 北京字节跳动网络技术有限公司 | 使用查找表的视频处理方法、装置和存储介质 |
JP7295231B2 (ja) | 2018-06-29 | 2023-06-20 | 北京字節跳動網絡技術有限公司 | Lutとamvpの間の相互作用 |
JP7460617B2 (ja) | 2018-06-29 | 2024-04-02 | 北京字節跳動網絡技術有限公司 | Lut更新条件 |
KR20210024502A (ko) | 2018-06-29 | 2021-03-05 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | Hmvp 후보를 병합/amvp에 추가할 때의 부분/풀 프루닝 |
EP3791589A1 (en) | 2018-06-29 | 2021-03-17 | Beijing Bytedance Network Technology Co. Ltd. | Which lut to be updated or no updating |
TWI728388B (zh) | 2018-06-29 | 2021-05-21 | 大陸商北京字節跳動網絡技術有限公司 | Lut中的運動候選的檢查順序 |
EP3791586A1 (en) | 2018-06-29 | 2021-03-17 | Beijing Bytedance Network Technology Co. Ltd. | Concept of using one or multiple look up tables to store motion information of previously coded in order and use them to code following blocks |
AU2019293670B2 (en) | 2018-06-29 | 2023-06-08 | Beijing Bytedance Network Technology Co., Ltd. | Update of look up table: FIFO, constrained FIFO |
TWI731365B (zh) | 2018-07-02 | 2021-06-21 | 大陸商北京字節跳動網絡技術有限公司 | Merge索引編碼 |
CN111064961B (zh) | 2018-09-12 | 2023-06-09 | 北京字节跳动网络技术有限公司 | 视频处理方法和装置 |
JP7334246B2 (ja) * | 2018-11-12 | 2023-08-28 | 北京字節跳動網絡技術有限公司 | インター-イントラ複合予測の簡単化 |
JP7275286B2 (ja) | 2019-01-10 | 2023-05-17 | 北京字節跳動網絡技術有限公司 | Lut更新の起動 |
EP4373095A3 (en) | 2019-01-10 | 2024-08-21 | Huawei Technologies Co., Ltd. | Deblocking filter for sub-partition boundaries caused by intra sub-partition coding tool |
CN113383554B (zh) | 2019-01-13 | 2022-12-16 | 北京字节跳动网络技术有限公司 | LUT和共享Merge列表之间的交互 |
CN113330739A (zh) | 2019-01-16 | 2021-08-31 | 北京字节跳动网络技术有限公司 | Lut中的运动候选的插入顺序 |
US11012686B2 (en) * | 2019-03-08 | 2021-05-18 | Tencent America LLC | Unified block vector prediction for intra picture block compensation |
CN118764632A (zh) | 2019-03-12 | 2024-10-11 | 现代自动车株式会社 | 用于有效地对残差块解码的方法和装置 |
WO2020192611A1 (en) | 2019-03-22 | 2020-10-01 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between merge list construction and other tools |
EP3954128A4 (en) * | 2019-05-11 | 2022-06-15 | Beijing Bytedance Network Technology Co., Ltd. | UNBLOCK FILTER FOR VIDEO CODING |
US11487939B2 (en) * | 2019-05-15 | 2022-11-01 | Salesforce.Com, Inc. | Systems and methods for unsupervised autoregressive text compression |
CN112291558B (zh) * | 2019-07-23 | 2023-06-27 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
CN114424560A (zh) * | 2019-09-20 | 2022-04-29 | 北京字节跳动网络技术有限公司 | 用于屏幕内容的自适应分辨率变化和可缩放编解码 |
EP4029271A4 (en) * | 2019-10-05 | 2022-11-16 | Huawei Technologies Co., Ltd. | REMOVAL OF BLOCKING ARTIFACTS IN A PREDICTED CODING UNIT BY INTRA-BLOCK COPY |
US11516477B2 (en) * | 2021-02-11 | 2022-11-29 | Qualcomm Incorporated | Intra block copy scratch frame buffer |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7450641B2 (en) | 2001-09-14 | 2008-11-11 | Sharp Laboratories Of America, Inc. | Adaptive filtering based upon boundary strength |
KR100679035B1 (ko) * | 2005-01-04 | 2007-02-06 | 삼성전자주식회사 | 인트라 bl 모드를 고려한 디블록 필터링 방법, 및 상기방법을 이용하는 다 계층 비디오 인코더/디코더 |
US8320455B2 (en) * | 2009-03-05 | 2012-11-27 | Qualcomm Incorporated | System and method to process motion vectors of video data |
JP2011040966A (ja) * | 2009-08-10 | 2011-02-24 | Renesas Electronics Corp | 画像処理装置、画像処理方法及びプログラム |
MX2013007018A (es) * | 2011-03-10 | 2013-07-30 | Mediatek Singapore Pte Ltd | Metodo y aparato para desbloquear un filtro. |
US9554128B2 (en) | 2011-09-13 | 2017-01-24 | Hfi Innovation Inc. | Method and apparatus for reduction of deblocking filter |
KR102138907B1 (ko) * | 2011-11-04 | 2020-07-29 | 엘지전자 주식회사 | 영상 정보 인코딩/디코딩 방법 및 장치 |
KR102032000B1 (ko) * | 2011-11-04 | 2019-10-14 | 선 페이턴트 트러스트 | 변경된 이미지 블록 경계 세기 유도에 의한 디블로킹 필터링 |
RS56322B1 (sr) * | 2012-04-16 | 2017-12-29 | Hfi Innovation Inc | Postupak i aparat za filtriranje u petlji preko granica režnja ili pločice |
US9549182B2 (en) * | 2012-07-11 | 2017-01-17 | Qualcomm Incorporated | Repositioning of prediction residual blocks in video coding |
US10904551B2 (en) * | 2013-04-05 | 2021-01-26 | Texas Instruments Incorporated | Video coding using intra block copy |
US10015515B2 (en) * | 2013-06-21 | 2018-07-03 | Qualcomm Incorporated | Intra prediction from a predictive block |
WO2015054811A1 (en) * | 2013-10-14 | 2015-04-23 | Microsoft Corporation | Features of intra block copy prediction mode for video and image coding and decoding |
US20150271515A1 (en) * | 2014-01-10 | 2015-09-24 | Qualcomm Incorporated | Block vector coding for intra block copy in video coding |
US9832467B2 (en) * | 2014-10-07 | 2017-11-28 | Qualcomm Incorporated | Deblock filtering for intra block copying |
-
2015
- 2015-08-26 KR KR1020177009601A patent/KR102008592B1/ko active IP Right Grant
- 2015-08-26 US US15/508,998 patent/US10743034B2/en active Active
- 2015-08-26 CN CN202010722532.1A patent/CN111988606B/zh active Active
- 2015-08-26 WO PCT/US2015/046887 patent/WO2016043933A1/en active Application Filing
- 2015-08-26 EP EP15841291.6A patent/EP3178228B1/en active Active
- 2015-08-26 CN CN201580048875.1A patent/CN107079162B/zh active Active
-
2020
- 2020-07-15 US US16/930,088 patent/US11297352B2/en active Active
Non-Patent Citations (4)
Title |
---|
Budagavi et al., AHG8: Video coding using Intra motion compensation, (JCTVC-M0350), JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC 1/SC 29/WG11 13th Meeting: Incheon, KR, 18-26 Apr. 2013 |
Joshi et al., ‘Screen content coding test model 2(SCM 2)’, (JCTVC-R1014), JCT-VC of ITU-T SG 16 WP3 and ISO/IEC JTC 1/SC29/WG11, 18th Meeting: Sapporo, JP, 30 June - 9 July 2014 |
Pang et al., ‘Non-RCE3: Intra Motion Compensation with 2-D MVs’, (JCTVC- N0256), JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC 1/SC 29/WG11 14th Meeting: Vienna, AT, 25 July - 2 Aug. 2013 |
Pang, et al., Non-SCCE1: Combination of JCTVC-R0185 and JCTVC-R0203, (JCTVC-R0309), JCT-VC of ITU-T SG 16 WP3 and ISO/IEC JTC 1/SC29/WG11, 18th Meeting: Sapporo, JP, 30 June - 9 July 2014 |
Also Published As
Publication number | Publication date |
---|---|
US10743034B2 (en) | 2020-08-11 |
US20200351521A1 (en) | 2020-11-05 |
US20170302966A1 (en) | 2017-10-19 |
WO2016043933A1 (en) | 2016-03-24 |
CN111988606B (zh) | 2022-09-20 |
CN107079162B (zh) | 2020-08-21 |
KR20170053696A (ko) | 2017-05-16 |
US11297352B2 (en) | 2022-04-05 |
EP3178228A1 (en) | 2017-06-14 |
EP3178228B1 (en) | 2023-10-04 |
EP3178228A4 (en) | 2018-02-21 |
CN111988606A (zh) | 2020-11-24 |
CN107079162A (zh) | 2017-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102008592B1 (ko) | 비디오 코딩에서의 인트라 블록 복사를 위한 디블로킹 방법 | |
CN109644271B (zh) | 用于二叉树分割块的确定候选集的方法及装置 | |
US10356438B2 (en) | Method and apparatus of error handling for video coding using intra block copy mode | |
CA2964324C (en) | Method of guided cross-component prediction for video coding | |
US9094658B2 (en) | Method and apparatus of adaptive loop filtering | |
US11303900B2 (en) | Method and apparatus for motion boundary processing | |
CN108028931B (zh) | 用于视频编解码的自适应帧间预测的方法及装置 | |
US20170295370A1 (en) | Method of Adaptive Motion Vector Resolution for Video Coding | |
EP3007447A1 (en) | Method for improving intra-prediction of diagonal mode in video coding | |
KR101981905B1 (ko) | 인코딩 방법 및 장치, 디코딩 방법 및 장치, 및 컴퓨터 판독가능 저장 매체 | |
US20150010091A1 (en) | Method and apparatus for loop filtering cross tile or slice boundaries | |
WO2016057208A1 (en) | Deblock filtering for intra block copying | |
KR20130079261A (ko) | 3차원 영상 부호화 방법 및 장치, 및 복호화 방법 및 장치 | |
JP2023090929A (ja) | ビデオ復号化方法、ビデオ復号化装置及び記憶媒体 | |
WO2020142762A1 (en) | Bit-width control for bi-directional optical flow | |
CN114009033A (zh) | 用于用信号通知对称运动矢量差模式的方法和装置 | |
Chiu et al. | Decoder-side motion estimation and wiener filter for HEVC | |
WO2020239038A1 (en) | Video processing methods and apparatuses for determining deblocking filter decision in video coding systems | |
KR20230128555A (ko) | 인코딩 및 디코딩 방법, 장치 및 이의 기기 | |
CN110771166B (zh) | 帧内预测装置和方法、编码、解码装置、存储介质 | |
WO2023246901A1 (en) | Methods and apparatus for implicit sub-block transform coding |
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 |