KR20220155033A - 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법 및 장치 - Google Patents

비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법 및 장치 Download PDF

Info

Publication number
KR20220155033A
KR20220155033A KR1020210062773A KR20210062773A KR20220155033A KR 20220155033 A KR20220155033 A KR 20220155033A KR 1020210062773 A KR1020210062773 A KR 1020210062773A KR 20210062773 A KR20210062773 A KR 20210062773A KR 20220155033 A KR20220155033 A KR 20220155033A
Authority
KR
South Korea
Prior art keywords
mode
prediction
affine
coding unit
current coding
Prior art date
Application number
KR1020210062773A
Other languages
English (en)
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 한국전자통신연구원
Priority to KR1020210062773A priority Critical patent/KR20220155033A/ko
Publication of KR20220155033A publication Critical patent/KR20220155033A/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • 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/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/134Methods 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명의 일 실시예는 현재 코딩 유닛에 대해 단방향 움직임 예측을 수행하는 단계, 상기 현재 코딩 유닛에 대해 양방향 움직임 예측을 수행하는 단계, 상기 현재 코딩 유닛의 상위 코딩 유닛의 최적의 모드에 기반하여 추가로 어파인 움직임 예측을 수행할지 판단하는 단계, 및 상기 상위 코딩 유닛의 최적의 모드가 생략(skip)모드 또는 병합(merge)모드에 상응하지 않는 경우, 상기 현재 코딩에 대해 상기 어파인 움직임 예측을 수행하는 단계를 포함하고, 상기 최적의 모드는 화면 내 예측 모드와 화면 간 예측 모드를 포함한 모든 예측 모드들에 대해 비트율-왜곡 비용(Rate-Distortion cost) 값을 계산하고, 상기 비트율-왜곡 비용 값들 중 가장 작은 값을 갖는 예측모드에 상응하는 것을 특징으로 하는 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법을 제공한다.

Description

비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법 및 장치 {APPARATUS AND METHOD FOR FAST AFFINE ENCODING FOR REDUCING ENCODING COMPLEXITY OF VIDEO}
본 발명은 VVC와 같은 고효율 비디오 코덱에서 높은 복잡도를 차지하고 있는 어파인 인터 모드의 움직임 추정 시간을 감소시킬 수 있는 장치 및 그 방법에 관한 것이다.
오늘날 더 높은 해상도를 갖는 영상의 수요가 증가하고, 360도 비디오와 같은 새로운 미디어 포맷의 수요가 증가하기 시작하였다. 현재 국제표준으로써 HEVC(High Efficiency Video Coding)가 가장 좋은 성능의 압축 코덱이다. 그리고 최근에는 보다 높은 성능의 압축 코덱을 위해 VCEG과 MPEG은 JVET을 구성하여 HEVC보다 성능이 2배 우수한 VVC(Versatile Video Coding)의 표준화를 진행중이다. 지난 수십년간 미디어의 발전과 그에 따라 많은 기술적 진보를 달성하였다.
MPEG-1 Part.2/H.261은 ITU-T의 비디오 통신을 위한 첫 번째표준으로 제정되었다. 기본적으로 H.261은 영상전화 및 화상회의 등 응용에 사용되는 것을 목표로 표준화되었다. H.261은 영상의 공간 및 시간 중복성을 제거한 예측 차분신호를 공간 축에서 주파수 축으로 이동시키는 DCT를 주요 툴로 사용하였으며, 양자화 된 변환 계수를 VCL을 사용하여 압축하였다.
H.251은 352x288급 해상도, 4:2:0 형태의 순차주사 포맷, 약 30FPS 급의 비디오를 40Kbps~2Mbps의 비트율로 압축하는 것을 목표로 한다.
MPEG-1 표준은 낮은 해상도의 비디오를 낮은 비트율로 압축하는 기술을 목표로 개발하였고, 전송을 고려하지 않아 에러에 취약하였기 때문에, 새로운 디지털 비디오 방송용 비디오 압축 표준이 필요하게 되었다.
MPEG-2 표준은 하이브리드 비디오 부호화 표준으로, 예측, 변환, 엔트로피 부호화를 모두 포함하고 있다. 예측 부호화는 16x16 크기의 매크로 블록을 기반으로 화면 내 예측과 화면 간 예측을 이용하여 예측 블록을 생성하는 방식을 지원한다.
디지털 TV 방송 및 DVD 서비스를 위해 다양한 비트율에 대한 압축을 지원하며, 순차 주사 방식의 비디오 압축을 지원한다.
H.264/AVC에는 좀 더 복잡하고 다양한 블록 크기를 이용한 움직임 예측/보상이 가능하고, 움직임 예측/보상을 위해 사용되는 움직입 벡터의 정확도가 1/4 픽셀의 길이만큼 정밀해지면서 영상 범위를 넘어서는 움직임 벡터의 사용도 가능해졌다.
8x8 크기의 변환뿐만 아니라 4x4 크기의 변환도 가능해졌고, 문맥 기반의 산술 코딩 도입으로 상당한 수준의 압축률 향상이 있었다.
HEVC 표준화 시점 이전의 최신 비디오 압축표준이었던 H.264/AVC는 위성, 케이블, 지상파 HD TV 방송 및 캠코더 등의 매우 다양한 응용분야에 사용되었다. 하지만 디지털 비디오 관련 서비스가 다양해지고, HD급 비디오보다 향상된 해상도 및 초고속 프레임 율을 갖는 초고화질 비디오에 대한 수요가 증가하면서 기존의 압축 성능을 능가하는 압축 표준이 필요하게 되었다.
주요 특징으로는 다양한 크기의 코딩 블록/ 예측 블록/ 변환 블록의 지원, 향상된 움직임 벡터 예측, 다양한 방향으로의 화면 내 예측, 향상된 문맥 기반의 산술 코딩 기술 등이 있다.
향후 전망으로, 인지적 화질 손상을 최소화하고 부호화 시간을 줄일 수 있는 고속 부호화 알고리즘 요구될 것이다.
산업적으로 더 높은 화질의 영상에 대한 수요와 가상현실과 증강현실, 그리고 360도 비디오와 같은 새로운 미디어 포맷에 대한 수요가 증가할 것으로 보인다.
VVC 코덱은 HEVC 코덱에 비해 더 다양해진 블록 구조, 화면 내 예측, 화면 간 예측 기술의 등장으로 인해 인지적 화질을 기준으로 2배 높은 압축성능을 보이지만, 10배 높은 부호화 복잡도를 가지고 있다. 이는 휴대폰과 저전력 단말기 등 다양한 환경에서 적용하기에 어려움이 있으므로 부호화 복잡도를 감소시키기 위한 노력이 필요하다.
국내 공개특허공보 제10-2020-0042949호(발명의 명칭: 움직임 벡터 해상도에 기초하여 영상을 부호화하는 장치 및 방법, 및 복호화 장치 및 방법)
본 발명은 VVC와 같은 고효율 인코딩 기술에서 높은 복잡도를 차지하고 있는 어파인 인터 모드의 움직임 추정 시간을 감소시키는 것을 목적으로 한다.
본 발명은 VVC와 같은 고효율 인코딩 기술에서 어파인 인터 모드의 움직임 추정시간을 감소시키고 손실을 최소화시켜 더 다양한 환경에서 고효율 인코딩 기술을 적용할 수 있도록 하는 것을 목적으로 한다.
본 발명의 일 실시예에 따른 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법은 현재 코딩 유닛에 대해 단방향 움직임 예측을 수행하는 단계, 상기 현재 코딩 유닛에 대해 양방향 움직임 예측을 수행하는 단계, 및 상기 현재 코딩 유닛의 상위 코딩 유닛의 최적의 모드가 생략(skip) 모드 또는 병합(merge) 모드에 상응하지 않는 경우, 상기 현재 코딩에 대해 상기 어파인 움직임 예측을 수행하는 단계를 포함한다.
이때, 상기 최적의 모드는 화면 내 예측 모드와 화면 간 예측 모드를 포함한 모든 예측 모드들에 대해 비트율-왜곡 비용(Rate-Distortion cost) 값을 계산하고, 상기 비트율-왜곡 비용 값들 중 가장 작은 값을 갖는 예측모드에 상응할 수 있다.
이때, 상기 어파인 움직임 예측을 수행하는 단계는 상기 현재 코딩 유닛의 상위 코딩 유닛의 최적의 모드가 모드가 스킵(skip) 모드 또는 병합(merge) 모드에 상응하지 않는 경우, 및 상기 상위 코딩 유닛의 최적의 모드가 병합(merge) 모드에 상응하고 상기 현재 코딩 유닛의 최적의 모드가 인터(inter) 모드인 경우에 상기 현재 코딩에 대해 어파인 움직임 예측을 수행하는 것을 특징으로 하는 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법.
이때, 상기 어파인 움직임 예측을 수행하는 단계는 4-파라미터 기반 어파인 인터 움직임 예측을 수행하는 단계, 및 6-파라미터 기반 어파인 인터 움직임 예측을 수행하는 단계를 포함할 수 있다.
이때, 상기 어파인 움직임 예측을 수행하는 단계는 상기 현재 코딩 유닛의 높이와 너비의 비율에 기반하여 상기 4-파라미터 기반 어파인 인터 움직임 예측 및 상기 6-파라미터 기반 어파인 인터 움직임 예측의 수행 여부를 판단하는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 장치는 현재 코딩 유닛에 대해 단방향 움직임 예측을 수행하는 단방향 예측부, 상기 현재 코딩 유닛에 대해 양방향 움직임 예측을 수행하는 쌍방향 예측부, 및 상기 현재 코딩 유닛의 상위 코딩 유닛의 최적의 모드가 스킵(skip) 모드 또는 병합(merge) 모드에 상응하지 않는 경우, 상기 현재 코딩에 대해 어파인 움직임 예측을 수행하는 어파인 움직임 예측부를 포함할 수 있다.
이때, 상기 최적의 모드는 화면 내 예측 모드와 화면 간 예측 모드를 포함한 모든 예측 모드들에 대해 비트율-왜곡 비용(Rate-Distortion cost) 값을 계산하고, 상기 비트율-왜곡 비용 값들 중 가장 작은 값을 갖는 예측모드에 상응할 수 있다.
이때, 상기 어파인 움직임 예측부는 상기 현재 코딩 유닛의 상위 코딩 유닛의 최적의 모드가 모드가 스킵(skip) 모드 또는 병합(merge) 모드에 상응하지 않는 경우, 및 상기 상위 코딩 유닛의 최적의 모드가 병합(merge) 모드에 상응하고 상기 현재 코딩 유닛의 최적의 모드가 인터(inter) 모드인 경우에 상기 현재 코딩에 대해 어파인 움직임 예측을 수행할 수 있다.
이때, 상기 어파인 움직임 예측부는 4-파라미터 기반 어파인 인터 움직임 예측 및/또는 6-파라미터 기반 어파인 인터 움직임 예측을 수행할 수 있다.
이때, 상기 어파인 움직임 예측부는 상기 현재 코딩 유닛의 높이와 너비의 비율에 기반하여 상기 4-파라미터 기반 어파인 인터 움직임 예측 및/또는 상기 6-파라미터 기반 어파인 인터 움직임 예측의 수행 여부를 판단할 수 있다.
본 발명에 따르면, VVC와 같은 고효율 인코딩 기술에서 높은 복잡도를 차지하고 있는 어파인 인터 모드의 움직임 추정 시간을 감소시킬 수 있다.
또한, 본 발명에 따르면, VVC와 같은 고효율 인코딩 기술에서 어파인 인터 모드의 움직임 추정시간을 감소시키고 손실을 최소화시켜 더 다양한 환경에서 고효율 인코딩 기술을 적용할 수 있도록 한다.
도 1은 본 발명의 일실시예에 따른 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법을 나타낸 흐름도이다.
도 2는 각 영상의 모드의 분포 비율과 인터 모드에서 AMVP 모드와 어파인 인터 모드의 분포를 나타낸다.
도 3은 어파인 인터 모드 내에서 4-파라미터와 6-파라미터의 분포도를 나타낸 도면이다.
도 4는 최적의 모드가 어파인 인터 모드인 경우, 참조 픽쳐 리스트에 대한 정보를 파악하기 위한 그래프이다.
도 5는 어파인 인터 모드의 참조 픽쳐 리스트의 인덱스에 대한 분포도를 나타낸 그래프이다.
도 6는 블록의 크기에 따른 어파인 인터 모드의 분포를 나타낸 그래프이다.
도 7는 블록의 크기에 따른 4-파라미터와 6-파라미터의 분포를 나타낸 도면이다.
도 8은 본 발명의 일실시예에 따른 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 장치 나타낸 블록도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
비록 "제1" 또는 "제2" 등이 다양한 구성요소를 서술하기 위해서 사용되나, 이러한 구성요소는 상기와 같은 용어에 의해 제한되지 않는다. 상기와 같은 용어는 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용될 수 있다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있다.
본 명세서에서 사용된 용어는 실시예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소 또는 단계가 하나 이상의 다른 구성요소 또는 단계의 존재 또는 추가를 배제하지 않는다는 의미를 내포한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 해석될 수 있다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 발명의 일실시예에 따른 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법을 나타낸 흐름도이다.
도 1을 참조하면, 본 발명의 일실시예는 인코더 과정에서 상위 코딩 유닛의 최적의 모드에 따라 현재 코딩 유닛에서 어파인 인터(Affine inter) 모드의 움직임 추정을 조기종료하는 알고리즘을 제안한다.
먼저, 본 발명의 일실시예에 따른 방법은 현재 코딩유닛에 대해 단방향 움직임 예측을 수행한다(S110).
이때, 상기 단방향 움직임 예측은 참조 프레임 리스트들 L0 및 L1을 사용할 수 있다.
이때, 단방향 움직임 예측 프로세스는 두개의 참조 리스트들에 의해 테스트 되어야 하므로, 두 리스트들에서 사용가능한 모든 프레임이 생성될 수 있다.
다음으로, 현재 코딩 유닛에 대해 양방향 움직임 예측을 수행한다(S120).
다음으로, 현재 코딩 유닛의 상위 코딩 유닛의 최적모드에 기반하여 움직임 예측을 조기종료할지 판단한다(S130).
이때, 최적의 모드는 화면 내 예측 모드와 화면 간 예측 모드를 포함한 모든 예측 모드들에 대해 비트율-왜곡 비용(Rate-Distortion cost) 값을 계산하고, 상기 비트율-왜곡 비용 값들 중 가장 작은 값을 갖는 예측모드에 상응할 수 있다. 비트율-왜곡 비용(RD cost)은 하기 [수학식 1]과 같이 나타낼 수 있다.
[수학식 1]
RD cost = Distortion + λ*rates
이때, Distortion은 현재 블록의 원본 블록과 복원 블록의 모든 픽셀의 차를 제곱한 후 더해준 값이다. 즉, Distortion이 낮아질수록 더 좋은 예측블록의 생성했다는 의미를 가지게 된다.
또한, λ는 라그랑지안 상수로써 양자화 계수(Quantization parameter)에 의해 결정되는 상수이고, rates는 비트율을 나타낸다.
이때, 단계(S130)상위 코딩 유닛의 최적의 모드가 생략(skip) 모드 또는 병합(merge) 모드가 아닌 경우, 어파인 움직임 예측(S140, S150)을 수행하도록 하고, 생략(skip) 모드 또는 병합(merge) 모드라면 현재 코딩 유닛의 최적 모드를 결정(S160)하도록 할 수 있다.
이때, 생략(skip) 모드와 병합(merge) 모드는 움직임 추정을 통해 얻어낸 주변 블록의 움직임 정보를 이용해 예측블록을 생성하는 방법이다.
인코딩 과정에서 현재 코딩 유닛의 최적의 모드가 생략(skip) 모드 혹은 병합(merge) 모드라는 것은 움직임이 거의 없는 블록임을 뜻한다.
따라서, 상위 코딩 유닛과 현재 코딩 유닛의 상관도가 높다는 점을 이용하여 VVC 코덱에서 높은 복잡도를 차지하고 있는 어파인 인터 모드의 움직임 추정 시간을 감소시킬 수 있다.
즉, 단계(S130)은 현재 코딩 유닛과 상위 코딩 유닛의 상관도를 비교하고, 현재 코딩 유닛과 상위 코딩 유닛의 상관도가 기설정된 값 이상인 경우, 움직임 예측을 조기 종료하도록 판단할 수 있다.
또한, 추후 인코딩 과정에서 상위 코딩 유닛의 정보뿐만 아니라 현재 코딩 유닛에서 어파인 인터의 움직임 추정 이전의 정보도 알 수 있기에 이를 이용하는 방법도 적용할 수 있다.
이때, 어파인 움직임 예측 단계는 4-파라미터 및/또는 6-파라미터 기반 어파인 움직임 예측을 수행할 수 있다(S140, S150).
이때, 4-파라미터 및 6-파라미터 기반 어파인 움직임 예측 여부는 코딩 유닛의 높이와 너비의 비율에 의해 결정될 수 있다.
예를 들어, 너비가 높이보다 큰 경우 4-파라미터에 기반한 어파인 움직임 예측만을 수행할 수 있으며, 너비와 높이의 비율에 의해 상기 어파인 움직임 예측여부를 구별할 수도 있다.
다만 본 발명의 범위가 이에 한정되는 것은 아니며, 상기 어파인 움직임 예측 여부는 다양한 기준에 의해 설정될 수 있다.
상기 단방향 움직임 예측, 상기 양방향 움직임 예측, 상기 어파인 움직임 예측에 기반하여 현재 노드의 최적모드를 결정할 수 있다(S160).
[표 1]
Figure pat00001
어파인 움직임 예측이 코덱에 미치는 영향을 파악하기 위해 VTM 9.0에서 랜덤 액세스 환경(Random access) 기준으로 각 영상마다 100프레임 씩 툴오프(Tool-off) 테스트를 진행하였다. 위의 [표 1]를 통해 어파인 모드가 79.45%만큼 코덱의 복잡도에 영향을 미치고 있고, 특히 'CatRobot', 'MarketPlace', 'Cactus'와 같은 특정 영상에서 손실이 크게 발생하는 것으로 확인된다.
이를 통해 어파인 모드는 영상의 특성에 따라 성능이 크게 변하는 특징을 가지고 있음을 알 수 있다.
[표 2]
Figure pat00002
[표 1]을 통해 어파인 움직임 예측이 VVC 코덱에 미치는 영향을 알 수 있다면, 좀 더 세부적으로 분석하고자 어파인 모드 중 어파인 인터 예측 모드만 툴오프 테스트를 진행하였다. 위의 [표 2]를 통해 어파인 인터 모드는 82.48%로 어파인 모드중 대부분의 복잡도를 차지하고 있으므로, 어파인 인터 모드가 고속 부호화를 적용하기에 적합함을 알 수 있다.
또한, 어파인 인터 모드의 툴오프(Tool-off) 테스트를 통해 어파인 병합(merge) 모드의 손실과 복잡도를 유추해 낼 수 있다.
어파인 병합(merge) 모드는 어파인 모드의 전체 복잡도 중 약 3%가량 차지하면서 손실은 약 1% 가까이 차지하고 있는데, 이를 통해 어파인 병합(merge) 모드는 어파인 인터 모드에 비해 고속 부호화를 적용시키기에 부적합하다는 것을 알 수 있다.
[표 3]
Figure pat00003
[표 3]에서는 인트라(Intra) 모드와 인트라 모드가 아닌(Non-Intra) 모드로 나누어서 각 모드가 영상에 얼마나 분포하는지를 나타내는 표이다. 인트라 모드는 공간적 중복성을 이용해 예측 블록을 생성하고, 인트라 모드가 아닌 모드는 시간적 중복성을 이용한 예측 방법으로써 생략(skip), 병합(merge), 인터(inter)모드를 통해 예측블록을 생성한다.
상기 [표 3]에서는 랜덤 액세스 환경(Random access)을 기준으로 대부분의 영상에서는 시간적 중복성을 활용한 툴들이 많이 사용되었지만, 'Campfire'에서는 공간적 중복성을 이용한 예측이 더 많이 사용된다. 이는 'Campfire'의 영상 특성으로써 각 프레임마다 일정한 주기를 갖는 패턴이 거의 없다는 것을 의미한다.
도 2는 각 영상의 모드의 분포 비율과 인터 모드에서 AMVP 모드와 어파인 인터 모드의 분포를 나타낸다.
도 2를 참조하면, 생략(skip) 모드가 가장 많이 분포하는 특성을 가지고 있고, 그 다음 병합(merge) 모드와 인터(inter) 모드 순으로 분포하는 것을 알 수 있다.
생략(skip) 모드와 병합(merge) 모드가 인터 모드에 비해 상당히 많이 분포해 있는데, 이는 VVC에서는 부호화 효율을 증가시키기 위해 HEVC보다 많은 병합(merge) 모드가 추가되었기 때문이다. 따라서, 시간적 중복성이 높은 블록의 경우 최적의 모드는 생략(skip) 모드와 병합(merge) 모드가 분포할 확률이 더 높아지게 되었다.
어파인 인터 모드의 분포는 인트라 모드를 제외하면 전체 모드 중에서 1.87%정도로 매우 낮은 수치를 기록했다.
이는 [표 3]에서 어파인 인터를 툴오프(Tool-off) 했을 경우 2.93%의 높은 손실을 기록한 것을 감안하면, 적은 개수의 어파인 인터 모드가 코덱성능에 큰 영향을 미치는 것을 의미한다. 이는 어파인 인터 모드는 불필요한 움직임 추정을 하는 경우가 많다는 것을 의미하므로 인코딩 과정에서 주변 모드의 정보에 의해 어파인 인터 모드가 어느 경우 많이 분포하는지 추가적인 분석이 필요하다.
도 3은 어파인 인터 모드 내에서 4-파라미터와 6-파라미터의 분포도를 나타낸 도면이다.
도 3을 참조하면, 6-파라미터는 4-파라미터보다 약 10%정도 많이 분포하는 것을 볼 수 있다.
이때, 6-파라미터가 비트량을 더 많이 차지한다는 점에서 양자화 계수(Quantization Parameter)에 따른 차이를 확인해 보았으나 어파인 인터는 양자화 계수에 따른 4-파라미터와 6-파라미터의 차이는 없었다.
도 4는 최적의 모드가 어파인 인터 모드인 경우, 참조 픽쳐 리스트에 대한 정보를 파악하기 위한 그래프이다.
어파인 인터 모드에서는 4-파라미터와 6-파라미터 두 경우 모드 L0에서 가장 높은 수치를 기록한다. 향상된 움직임 벡터 예측(Advanced Motion Vector Prediction, AMVP) 모드에서는 비트량은 높지만 더 정확한 예측 블록을 가져오는 양방향 예측이 단방향 예측보다 많이 분포하게 되는데, 어파인 인터 모드는 이와는 상반된 특성을 보여준다.
도 5는 어파인 인터 모드의 참조 픽쳐 리스트의 인덱스에 대한 분포도를 나타낸 그래프이다.
도 5를 참조하면, 어파인 인터 모드는 대부분 4-파라미터와 6-파라미터와 관계없이 모두 참조 픽쳐 인덱스 0에 대부분의 정보를 이용한다는 것을 알 수 있었다. 이는 어파인 인터 모드는 가장 가까운 픽쳐의 정보에 가장 많이 의존한다는 사실을 확인 할 수 있었고, 도 4의 실험과 함께 해석하면 어파인 인터 모드는 참조 픽쳐 리스트 L0와 참조 픽쳐 인덱스 0를 이용하므로 추후 인코더에서 SMVD(Symmetric MVD) 모드와 어파인 인터 모드와의 상관관계에 대해서 추가 분석이 필요하다는 것을 의미한다.
또한, AMVP 모드에서 단방향 예측 모드와 어파인 인터의 단방향 예측 모드간의 상관관계 역시 파악할 필요가 있다.
도 6는 블록의 크기에 따른 어파인 인터 모드의 분포를 나타낸 그래프이다.
도 6을 참조하면, 어파인 인터 모드는 16x16사이즈에서 128x128사이즈까지 총 12가지 종류의 블록사이즈가 존재한다. 위의 분포도를 보았을 때, 어파인 인터 모드는 16x16, 32x32, 64x64, 128x128과 같은 정사각형 블록에서 약 50%를 차지함을 볼 수 있다.
또한, 추가적으로 각 블록 사이즈에 따른 4-파라미터와 6-파라미터의 분포를 확인해 보았는데, 대부분의 블록은 6-파라미터가 많이 분포하였지만, 16x16, 32x16, 64x16의 블록에서는 4-파라미터가 많이 분포하게 된다. 이는 높이가 작아질수록 6-파라미터의 아래에 존재하는 움직임 벡터가 코딩 성능을 향상시키는데에 적은 영향을 미치기 때문이다.
도 7는 블록의 크기에 따른 4-파라미터와 6-파라미터의 분포를 나타낸 도면이다.
도 7을 참조하면, 블록의 크기에 따른 4-파라미터와 6-파라미터에 대한 영향을 알 수 있다. 도 7의 분포도는 너비와 높이의 비율에 따른 4-파라미터와 6-파라미터의 분포를 나타낸다. W/H=4의 의미는 너비(Width)가 높이(Height)의 4배인 경우이고, W/H=1/4의 의미는 높이가 너비의 크기의 4배인 경우이다. 너비가 높이보다 큰 경우 4-파라미터가 많이 분포한다는 것을 알 수 있다.
[표 4]
Figure pat00004
생략(skip) 모드와 병합(merge) 모드는 움직임 추정을 통해 얻어낸 주변 블록의 움직임 정보를 이용해 예측블록을 생성하는 방법이다. 그러므로 움직임이 적은 블록에서는 인터 모드에 비해 많이 분포하는 특성을 보이므로 인코더 과정을 통해 상위 블록의 최적의 모드가 생략(skip) 모드이거나 혹은 병합(merge) 모드인 경우 현재 블록의 최적의 모드가 어파인 인터 모드인 경우와의 상관관계를 분석했다. 실험 조건으로는 VTM 9.0의 랜덤 액세스 환경(Random access) 기준으로 'MarketPlace,' 'Cactus' 영상에 대해서 인트라 모드 구간 개수만큼 실험을 진행하였다.
[표 4]에서는 현재 코딩 유닛의 최적의 모드가 어파인 인터 모드인 경우는 0.38%로 생략 모드와 어파인 인터 모드는 상당히 낮은 상관관계를 보여주고 있다. 이를 통해 인코딩 과정에서 상위 코딩 유닛의 최적의 모드가 생략 모드인 경우 현재 코딩 유닛에서 어파인 인터의 움직임 추정을 조기종료 시킬 수 있는 알고리즘을 적용할 수 있다.
[표 5]
Figure pat00005
상위 코딩 유닛의 최적의 모드가 병합(merge) 모드일 경우, 현재 코딩 유닛의 최적의 모드가 어파인 인터 모드인 경우는 2.59%로써 생략(skip)에 비해서는 상대적으로 어파인 인터 모드와 높은 상관관계를 보여주고 있다. 이는 추후 상위 코딩 유닛의 최적의 모드가 병합(merge) 모드일 경우 어파인 인터의 움직임 추정을 조기종료 시키는 알고리즘을 적용할 경우 손실이 크게 발생할 우려가 있다.
특히, 이전 실험 결과를 통해 적은 비율의 어파인 인터 모드가 코덱의 성능을 크게 좌우하므로 손실을 최소화하기 위해 상위 코딩 유닛의 최적의 모드가 어파인 병합(merge) 모드일 때, 현재 코딩 유닛의 최적의 모드가 어파인 인터 모드일 경우가 다른 병합(merge) 모드에 비해 상대적으로 높으므로 이 경우는 고속 부호화 알고리즘에 적용시키지 않는 경우도 고려할 수 있다.
[표 6]
Figure pat00006
[표 6]에서는 지금까지의 분석 내용을 바탕으로 상위 코딩 유닛의 최적의 모드가 생략(skip) 모드인 경우, 현재 코딩 유닛이 어파인 인터 모드의 움직임 추정을 조기 종료하는 알고리즘을 적용 시켰을 경우의 결과이다. 실험조건으로는 VTM 9.0의 랜덤 액세스 환경(Random access) 환경에서 'FoodMarket4', 'BasketballDrive', 'BQTerrace' 세 개의 영상에 대해 33프레임으로 진행하였다. 평균적으로 0.08%의 손실과 약 2%정도의 복잡도 감소를 보였다.
도 8은 본 발명의 일실시예에 따른 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 장치 나타낸 블록도이다.
도 8을 참조하면, 본 발명의 일 실시예에 따른 VVC 코덱의 부호화 복잡도 감소를 위한 어파인 고속 부호화 장치는 현재 코딩 유닛에 대해 단방향 움직임 예측을 수행하는 단방향 움직임 예측부(810), 상기 현재 코딩 유닛에 대해 양방향 움직임 예측을 수행하는 양방향 움직임 예측부(820), 상기 현재 코딩 유닛의 상위 코딩 유닛의 최적의 모드에 기반하여 추가로 어파인 움직임 예측을 수행할지 판단하는 조기종료 판단부(830), 및 상기 상위 코딩 유닛의 최적의 모드가 생략(skip)모드 또는 병합(merge)모드에 상응하지 않는 경우, 상기 현재 코딩에 대해 상기 어파인 움직임 예측을 수행하는 어파인 움직임 예측부(840)를 포함할 수 있다.
또한, 상기 단방향 움직임 예측, 상기 양방향 움직임 예측, 상기 어파인 움직임 예측에 기반하여 현재 노드의 최적모드를 결정하는 최적모드 결정부(850)를 더 포함할 수 있다.
이때, 상기 단방향 움직임 예측부(810)는 상기 단방향 움직임 예측에 참조 프레임 리스트들 L0 및 L1을 사용할 수 있다.
이때, 단방향 움직임 예측 프로세스는 두개의 참조 리스트들에 의해 테스트 되어야 하므로, 두 리스트들에서 사용가능한 모든 프레임이 생성될 수 있다.
이때, 최적의 모드는 화면 내 예측 모드와 화면 간 예측 모드를 포함한 모든 예측 모드들에 대해 비트율-왜곡 비용(Rate-Distortion cost) 값을 계산하고, 상기 비트율-왜곡 비용 값들 중 가장 작은 값을 갖는 예측모드에 상응할 수 있다. 비트율-왜곡 비용은 상기 [수학식 1]과 같이 나타낼 수 있다.
이때, 상기 조기종료 결정부(830)는 상위 코딩 유닛의 최적의 모드가 생략(skip) 또는 병합(merge) 모드 가 아닌 경우, 어파인 움직임 예측을 수행하도록 하고, 생략(skip) 또는 병합(merge) 모드라면 현재 코딩 유닛의 최적 모드를 결정하도록 할 수 있다.
이때, 생략(skip) 모드와 병합(merge) 모드는 움직임 추정을 통해 얻어낸 주변 블록의 움직임 정보를 이용해 예측블록을 생성하는 방법이다.
인코딩 과정에서 현재 코딩 유닛의 최적의 모드가 생략(skip) 모드 혹은 병합(merge) 모드라는 것은 움직임이 거의 없는 블록임을 뜻한다.
따라서, 상위 코딩 유닛과 현재 코딩 유닛의 상관도가 높다는 점을 이용하여 VVC 코덱에서 높은 복잡도를 차지하고 있는 어파인 인터 모드의 움직임 추정 시간을 감소시킬 수 있다.
즉, 조기종료 결정부(830)은 현재 코딩 유닛과 상위 코딩 유닛의 상관도를 비교하고, 현재 코딩 유닛과 상위 코딩 유닛의 상관도가 기설정된 값 이상인 경우, 움직임 예측을 조기종료하도록 판단할 수 있다.
또한, 추후 인코딩 과정에서 상위 코딩 유닛의 정보뿐만 아니라 현재 코딩 유닛에서 어파인 인터의 움직임 추정 이전의 정보도 알 수 있기에 이를 이용하는 방법도 적용할 수 있다.
이때, 어파인 움직임 예측부(840)는 4-파라미터, 및 6-파라미터 기반 어파인 움직임 예측을 수행할 수 있다.
이때, 4-파라미터 및 6-파라미터 기반 어파인 움직임 예측 여부는 코딩 유닛의 높이와 너비의 비율에 의해 결정될 수 있다.
예를 들어, 너비가 높이보다 큰 경우 4-파라미터에 기반한 어파인 움직임 예측만을 수행할 수 있으며, 너비와 높이의 비율에 의해 상기 어파인 움직임 예측여부를 구별할 수도 있다.
다만 본 발명의 범위가 이에 한정되는 것은 아니며, 상기 어파인 움직임 예측 여부는 다양한 기준에 의해 설정될 수 있다.
또한, 본 발명의 일실시예에 따른 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 장치는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템에서 구현될 수 있다.
컴퓨터 시스템은 버스를 통하여 서로 통신하는 하나 이상의 프로세서, 메모리, 사용자 인터페이스 입력 장치, 사용자 인터페이스 출력 장치 및 스토리지를 포함할 수 있다. 또한, 컴퓨터 시스템은 네트워크에 연결되는 네트워크 인터페이스를 더 포함할 수 있다. 프로세서는 중앙 처리 장치 또는 메모리나 스토리지에 저장된 프로그램 또는 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리 및 스토리지는 휘발성 매체, 비휘발성 매체, 분리형 매체, 비분리형 매체, 통신 매체, 또는 정보 전달 매체 중에서 적어도 하나 이상을 포함하는 저장 매체일 수 있다. 예를 들어, 메모리는 ROM이나 RAM을 포함할 수 있다.
이상 실시예에 따르면 VVC 코덱과 같은 고효율 인코딩 기술에서 높은 복잡도를 차지하고 있는 어파인 인터 모드의 움직임 추정 시간을 감소시키며, 어파인 인터 모드로 인한 손실을 최소화시켜 더 다양한 환경에서 인코딩 기술을 적용할 수 있다.
본 발명에서 설명하는 특정 실행들은 실시예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
810: 단방향 움직임 예측부
820: 양방향 움직임 예측부
830: 조기종료 판단부
840: 어파인 움직임 예측부
850: 최적모드 결정부

Claims (1)

  1. 현재 코딩 유닛에 대해 단방향 움직임 예측을 수행하는 단계;
    상기 현재 코딩 유닛에 대해 양방향 움직임 예측을 수행하는 단계; 및
    상기 현재 코딩 유닛의 상위 코딩 유닛의 최적의 모드가 스킵(skip) 모드 또는 병합(merge) 모드에 상응하지 않는 경우, 상기 현재 코딩에 대해 어파인 움직임 예측을 수행하는 단계;
    를 포함하고
    상기 최적의 모드는
    화면 내 예측 모드와 화면 간 예측 모드를 포함한 모든 예측 모드들에 대해 비트율-왜곡 비용(Rate-Distortion cost) 값을 계산하고, 상기 비트율-왜곡 비용 값들 중 가장 작은 값을 갖는 예측모드에 상응하는 것을 특징으로 하는 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법.
KR1020210062773A 2021-05-14 2021-05-14 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법 및 장치 KR20220155033A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210062773A KR20220155033A (ko) 2021-05-14 2021-05-14 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210062773A KR20220155033A (ko) 2021-05-14 2021-05-14 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20220155033A true KR20220155033A (ko) 2022-11-22

Family

ID=84236431

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210062773A KR20220155033A (ko) 2021-05-14 2021-05-14 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20220155033A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200042949A (ko) 2017-11-09 2020-04-24 삼성전자주식회사 움직임 벡터 해상도에 기초하여 영상을 부호화하는 장치 및 방법, 및 복호화 장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200042949A (ko) 2017-11-09 2020-04-24 삼성전자주식회사 움직임 벡터 해상도에 기초하여 영상을 부호화하는 장치 및 방법, 및 복호화 장치 및 방법

Similar Documents

Publication Publication Date Title
Xin et al. Digital video transcoding
JP4391809B2 (ja) 画像のシーケンスを適応的に符号化するシステムおよび方法
CN101133648B (zh) 用于帧内预测视频编码的模式选择方法及设备
US9258567B2 (en) Method and system for using motion prediction to equalize video quality across intra-coded frames
US20170118472A1 (en) Video encoding/decoding apparatus and method
CN100380982C (zh) 图像编码方法和装置
US20060002474A1 (en) Efficient multi-block motion estimation for video compression
KR100950743B1 (ko) 화상 정보 부호화 장치 및 방법, 및 화상 정보 복호 장치및 방법
EP3026906A1 (en) Moving image encoding apparatus and operation method thereof
US20070036218A1 (en) Video transcoding
US20150312575A1 (en) Advanced video coding method, system, apparatus, and storage medium
US10715815B2 (en) Method and apparatus for real-time SAO parameter estimation
JP4391810B2 (ja) 画像のシーケンスを適応的に符号化するシステムおよび方法
CN1938728A (zh) 使用包括多个宏块的预测和非预测画面对画面序列编码的方法和装置
US8442113B2 (en) Effective rate control for video encoding and transcoding
KR100929607B1 (ko) 엠펙-2 메인 프로파일에서 h.264/avc 베이스라인프로파일로의 트랜스코딩 방법
KR20130085088A (ko) 스케일러블 비디오 코딩에서의 고속 모드 결정 방법 및 그 장치
KR20220155033A (ko) 비디오 부호화 복잡도 감소를 위한 어파인 고속 부호화 방법 및 장치
Lee et al. MPEG-4 to H. 264 transcoding using macroblock statistics
Li et al. A fast downsizing video transcoder based on H. 264/AVC standard
JP4281667B2 (ja) 画像符号化装置
KR100718468B1 (ko) 영상 축소 트랜스 코딩 방법 및 장치
WO2015015404A2 (en) A method and system for determining intra mode decision in h.264 video coding
KR100986992B1 (ko) H.264 인코딩 시 고속 인터 모드 결정 방법
WO2009045178A1 (en) A method of transcoding a data stream and a data transcoder