• 대한전기학회
Mobile QR Code QR CODE : The Transactions of the Korean Institute of Electrical Engineers
  • COPE
  • kcse
  • 한국과학기술단체총연합회
  • 한국학술지인용색인
  • Scopus
  • crossref
  • orcid

  1. (School of Electrical and Electronics Engineering Chung-Ang University, Korea.)



SHVC, intra-mode decision, inter-layer reference prediction.

1. 서 론

최근 들어 디지털 비디오 기술의 급격한 발전으로 실시간 비디오 컨프런싱, 인터넷 비디오 스트리밍, 모바일 TV 등등 다양한 형태의 멀티미디어 응용 분야가 각광 받고 있다. 또한, 모바일 기술 및 회로 제작 기술의 비약적인 발전으로 인해 다양한 형태의 멀티미디어 단말기 사용이 가능해지고 있다. 그런데, 다양한 형태의 멀티미디어 단말기는 서로 다른 화면 해상도를 가지고 있을 뿐만 아니라 연산 수행 능력, 네트워크 환경 등등에 있어서도 서로 다른 특성을 가지고 있다. 이러한 이질적인 특성의 단말기들을 동시에 사용할 수 있는 방법 중 하나는 원하는 동영상 신호를 디코딩한 후, 다시 특정 단말기의 코딩 파라미터에 맞추어 다시 코딩하는 트랜스코딩 (transcoding) 방법을 사용하는 것이다. 그러나, 트랜스코딩 방식은 연산 복잡도가 높으며, 지연 시간이 비교적 크기 때문에 실시간 비디오 응용 분야에는 그다지 적합하지 않다. 한편, 하나의 비디오를 (서로 다른 해상도, 프레임 레이트 등을 지원하는) 다수의 방식으로 인코딩한 후, 각각의 비트 스트림을 동시에 송출하는 simulcast 기술을 이용할 수도 있다. 그러나, simulcast 방식의 경우, 사실상 동일한 정보를 중복적으로 전송하게 되므로 네트워크 효율 관점에서 매우 비효율적인 방식이다.

이러한 문제점을 해결하기 위해 특정 동영상을 서로 다른 품질을 갖는 다수 개의 layer로 나누어 코딩한 후, 디코더의 상황에 따라 필요한 레이어만 선택적으로 디코딩할 수 있도록 지원하는 스케일러블 비디오 코딩 (scalable video coding, SVC)에 대한 연구가 이루어져 왔다 (1). SVC에서는 가장 기본적인 참조 계층 (base layer, BL)과 다수 개의 향상 계층 (enhanced layer, EL)으로 나누어 코딩을 실시하며, 디코더에서는 자신의 상황에 맞게 특정 레이어만 선택하여 디코딩을 진행한다. 가령, 공간 스케일러빌리티 (spatial scalability)의 경우, BL에서는 저해상도 영상을 처리하고, EL에서는 고해상도 영상을 처리한다. ITU-T Video Coding Experts Group과 ISO/IEC Moving Picture Experts Group의 공동 협력체인 Joint Collaborative Team on Video Coding (JCT-VC)에서는 최신 비디오 코딩 표준인 High Efficiency Video Coding (HEVC)에 대한 개정 표준으로서 Scalable HEVC (SHVC) 표준을 완성하였다 (2-5). 또한, Scalable HEVC test model (SHM)이라고 불리는 SHVC 표준의 reference software를 개발하여 비디오 코딩 알고리즘을 개발할 때, 성능 및 복잡도 비교의 기준이 될 수 있도록 하였다 (6).

그런데, 주지하는 바와 같이, HEVC 표준은 이전 비디오 코딩 표준인 H.264/AVC에 비해 매우 큰 연산 복잡도를 요구하며, SHVC의 경우, HEVC보다도 더욱 더 큰 연산 복잡도를 요구한다. 이에 (HEVC 및) SHVC의 연산 복잡도를 감소시키기 위한 다양한 연구가 진행되어 왔다. 가령, 검사해야 할 coding unit (CU) 레벨 중에서 일부를 생략하여 인코딩 속도를 향상시킬 수 있으며 (7-11), 검사해야 할 prediction unit (PU) 타입 중에서 일부를 생략하거나 검사해야 할 transform unit (TU) 레벨 중에서 일부를 생략하여 인코딩 속도를 향상시킬 수도 있다 (12-14). 또한, 검사해야 할 다양한 인터 모드와 인트라 모드 중에서 일부를 생략하여 인코딩 복잡도를 감소시킬 수도 있다 (7,8,14,15). 특히, SHVC에서는 BL에서의 코딩 정보를 효과적으로 이용하여 EL에서의 연산 복잡도를 낮추는 연구가 많이 이루어져 왔다 (7-15).

참고로, HEVC/SHVC의 인트라 코딩 방식에서는 그림 1에 나타낸 35개의 인트라 모드 중에서 최적 모드를 선택하게 되며, 인트라 모드 검사 과정은 rough mode decision (RMD), most probable modes (MPM) 결정, Rate-distortion optimized quantization에 기반한 RDO, Residual quadtree-based TU selection (RQT)의 네 개의 과정으로 구성된다. 그 중에서 RMD 과정에서는 35개의 내부 예측 모드 각각에 대해 Hadamard 비용 (H-cost)을 계산한 후, Hadamard 비용 값이 가장 낮은 모드들을 검사 목록에 추가하며, MPM 과정에서는 공간 상관도가 높은 모드들을 검사 목록에 추가한다. 한편, RDO 과정에서는 앞에서 선정한 RMD 및 MPM 후보 모드들에 대한 RD 비용을 계산하여 RD 비용이 가장 낮은 모드를 최종 최적 모드로 결정하며, RQT 과정에서는 최적 모드에 대한 최적 TU 크기를 결정한다.

본 논문에서는 All Intra 공간 스케일러빌리티의 연산 복잡도를 낮추는 효율적인 방안을 제안한다. All Intra 방식의 경우, BL 내의 영상은 모두 인트라 방식 (즉, 주변 블록의 공간 상관 관계를 이용하여 코딩하는 방식)으로 코딩되고, EL 내의 영상은 인트라 방식 또는 inter-layer reference prediction 방식 (즉, BL 영상을 이용하여 코딩하는 방식)으로 코딩된다. 본 논문에서는 BL 코딩 정보를 이용하여 EL 내에서의 인트라 모드 검사를 효과적으로 진행하여 연산 복잡도를 획기적으로 낮추면서 SHM 대비 성능 저하가 거의 없는 코딩 방식을 제안하고자 한다.

그림. 1. HEVC/SHVC에서의 인트라 모드

Fig. 1. Intra-Modes in HEVC/SHVC

../../Resources/kiee/KIEE.2020.69.4.602/fig1.png

2. Proposed Methods

원래 SHM에서는 기본 계층 (base layer, BL)에 대한 코딩을 먼저 진행한 후, 향상 계층 (enhanced layer, EL)에 대한 코딩을 진행한다. 또한, SHM에서는 EL에 대한 코딩을 진행할 때, 인트라 모드를 먼저 검사하고, 그 다음에 ILRP (inter-layer reference prediction) 모드를 검사하도록 되어 있다 (3-6). 그러나, 주지하는 바와 같이, ILRP 모드는 인트라 모드에 비해 최적 모드로 선택될 확률이 훨씬 높다. 한편, ILRP 모드를 검사하는 데 필요한 시간에 비하여 인트라 모드를 검사하는 데 필요한 시간은 훨씬 더 크다 (8,14). 따라서, 제안하는 방법에서는 ILRP 모드에 대한 검사는 항상 정상적으로 수행하지만, 인트라 모드의 경우, 검사 과정 중 일부를 효과적으로 생략하여 연산 복잡도를 감소시키고자 한다. 이를 위하여 제안하는 방법에서는 검사 순서를 변경하여 (인트라 모드보다) ILRP 모드를 먼저 검사하고, 인트라 모드를 검사할 때에는 ILRP 모드에서 얻은 정보를 사용하여 원래의 인트라 모드 검사 과정 중 일부를 효과적으로 생략하는 방식을 사용하고자 한다. 한편, 제안 방식에서는 4개의 인트라 모드 검사 과정 중에서 RMD 과정에서의 검사 시간과 RDO 과정에서의 검사 시간을 각각 감소시키는 방법을 제안하고자 한다. 이에 2.1절에서는 RMD 후보 선정에 대한 제안 알고리즘을 설명하고, 2.2절에서는 RDO 후보 선정에 대한 제안 알고리즘을 설명하고자 한다.

그림. 2. 현재 블록 (X) 및 주변 블록 (A, B, C)

Fig. 2. Current Block and Neighboring Blocks

../../Resources/kiee/KIEE.2020.69.4.602/fig2.png

2.1 Proposed Method for RMD Process

우선, 그림 2를 살펴 보자. 그림에서 블록 $X$는 현재 처리해야 할 블록을 나타내고, 블록 $A$, $B$, $C$는 각각 (현재 블록 대비) 왼쪽 상단 블록, 상단 블록, 왼쪽 블록을 나타낸다. 한편, $X_{ij}$는 $i$번째 행과 $j$번째 열에 있는 픽셀의 밝기 값을 나타내며, 여기서 밝기 값은 0부터 255 사이의 값을 갖는다. 또한, 그림에서 숫자 $N$은 CU의 크기를 나타내며, SHVC에서 $N$은 64, 32, 16 또는 8이 될 수 있다. 이 때, 공간적 상관 관계 때문에 $B_{Nj}$와 $X_{1j}$가 서로 동일하거나 매우 유사할 가능성이 매우 높을 것임을 예상할 수 있다 ($j =$1, 2, ..., $N$). 그러나, $B_{Nj}$와 $X_{Nj}$는 서로 그다지 가깝지 않으며 (특히, $N$이 큰 경우), 현재 블록이 주로 수직선 형태의 이미지로 구성되어 있을 때에만 서로 비슷할 것임을 예상할 수 있다. 이는 다음과 같은 average absolute difference (AAD) 값이 그림 1의 $m_{26}$ 모드가 예측 모드로서 적절한 지 아닌 지 여부를 판단할 수 있는 좋은 척도가 될 수 있다는 것을 의미한다.

(1)
$$A A D_{\text {vertical}}=\frac{1}{N} \sum_{j=1}^{N}\left|B_{N j}-X_{N j}\right|$$

즉, $AAD_{v ertical}$ 값이 어떤 임계값보다 크다면 $m_{26}$ 모드가 적절한 예측 모드가 아닐 확률이 높으며, 따라서, $m_{26}$ 모드에 대한 검사를 생략하는 것이 효율적이라는 의미이다. 마찬가지로 $m_{10}$ 모드에 대한 검사 여부를 결정하기 위해 다음의 AAD 값을 사용할 수 있다.

(2)
$$A A D_{\text {horitontal}}=\frac{1}{N} \sum_{i=1}^{N}\left|C_{i N}-X_{i N}\right|$$

위의 설명에서 보인 바와 같이, 식 (1), (2)에서 정의한 두 개의 AAD 값을 사용하면 2개의 인트라 모드를 선택적으로 생략할 수 있지만, 그림 1에서 볼 수 있듯이, 35가지의 인트라 모드 중에서 두 개의 인트라 모드 (즉, $m_{26}$과 $m_{10}$ 모드)를 생략하는 것만으로는 인코딩 시간을 획기적으로 감소시킬 수 없다. 따라서, 제안 방법에서는 위에서 설명한 방법과 약간 다른 방법을 사용한다. 즉, 제안하는 방법에서는 다음과 같은 absolute difference of averages (ADA) 값을 사용하여 $m_{22}$, $m_{23}$, ..., $m_{30}$과 같은 수직 방향 인트라 모드들에 대한 검사 여부를 결정한다.

(3)
$$\begin{aligned} &A D A_{\text {vettical}} \\ &=| average_{\text{lost_row_B}}-\text {average}_{\text{last_row_X}} | \\ &=\left|\frac{\sum_{j=1}^{N} B_{N j}}{N}-\frac{\sum_{j=1}^{N} X_{N_{j}}}{N}\right|=\frac{1}{N}\left|\sum_{j=1}^{N}\left(B_{N j}-X_{N j}\right)\right| | \end{aligned}$$

참고로, $m_{26}$ 모드에 대한 검사 여부만 결정하고자 할 경우, 식 (3)의 $AAD_{v ertical}$ 지표보다 식 (2)의 $ADA_{v ertical}$ 지표가 더 좋은 지표가 될 것임을 예상할 수 있다. 그러나, $AAD_{v ertical}$ 의 경우, $m_{26}$ 모드에 대한 검사 여부에만 유용한 반면, $ADA_{v ertical}$ 지표의 경우, $m_{26}$ 모드 뿐만이 아니라 $m_{22}$~$m_{25}$ 및 $m_{27}$~$m_{30}$과 같은 다른 수직 인트라 모드에 대한 검사 여부를 결정할 때에도 유용하게 사용할 수 있기 때문에 제안하는 방법에서는 $AAD_{v ertical}$ 대신 $ADA_{ver tical}$를 사용한다. 참고로, 영상의 제일 위쪽에 위치한 블록들의 경우, 대응하는 상부 블록 (즉, 그림 2의 B 블록)이 존재하지 않기 때문에 식 (3)의 $ADA_{v ertical}$을 계산할 수 없다. 이 문제를 해결하기 위하여 제안 알고리즘에서는 공간적으로 매우 인접한 $B_{Nj}$와 $X_{1j}$의 값이 대개 매우 비슷함에 착안하여 $ADA_{ve rtical}$ 지표 대신 다음과 같이 정의하는 $ADA_{v ert}$ 지표를 사용한다.

(4)
$$\begin{aligned} &A D A_{v e r t}\\ &=| \text {average}_{\text {first}_{-} \text {row}_{-} x}-\text {average}_{\text {last}_{-} \text {row}_{-} x} |\\ &=\left|\frac{\sum_{j=1}^{N} X_{i j}}{N}-\frac{\sum_{j=1}^{N} X_{N j}}{N}\right|=\frac{1}{N}\left|\sum_{j=1}^{N}\left(X_{i j}-X_{N j}\right)\right| \end{aligned}$$

한편, 제안하는 방법에서는 $ADA_{ver t}$ 외에 다음의 세 가지 ADA 지표도 사용한다.

(5)
$$\begin{aligned} &A D A_{\text {hori}}\\ &=\left|\frac{\sum_{i=1}^{N} X_{i l}}{N}-\frac{\sum_{i=1}^{N} X_{i N}}{N}\right|=\frac{1}{N}\left|\sum_{i=1}^{N}\left(X_{i l}-X_{i N}\right)\right| \end{aligned}$$

(6)
$$\begin{aligned} &A D A_{\text {diag_(-45)}} \\ &=\frac{1}{N-1}\left|\left\{\sum_{j=1}^{N / 2} X_{l j}+\sum_{i=2}^{N / 2} X_{i l}\right\}-\left\{\sum_{j=N / 2}^{N} X_{N j}+\sum_{i=N / 2}^{N-1} X_{i N}\right\}\right| \end{aligned}$$

(7)
$$\begin{aligned}{l} &A D A_{\text {diag_(45)}} \\ &=\frac{1}{N-1}\left|\left\{\sum_{j=N / 2}^{N} X_{l j}+\sum_{i=2}^{N / 2} X_{i N}\right\}-\left\{\sum_{j=1}^{N / 2} X_{N j}+\sum_{i=N / 2}^{N-1} X_{i l}\right\}\right| \end{aligned}$$

예상할 수 있는 바와 같이, $ADA_{hori}$ 지표는 $m_{6}$~$m_{14}$ 모드 검사 여부를 결정하기 위해 사용되고, $ADA_{\text{diag_(-45)}}$ 지표는 $m_{14}$~$m_{22}$ 모드를 위해서 사용되며, $ADA_{\text{diag_(45)}}$ 지표는 $m_{2}$~$m_{6}$ 모드와 $m_{30}$~$m_{34}$ 모드를 위해서 사용된다. 조금 더 정확하게 말하자면, RMD 과정에서 다음과 같은 조건이 충족될 경우, 해당 인트라 모드에 대한 검사를 생략한다.

(8)
$$A D A_{\text {vert}} \geq T h_{\text {vert}}$$

(9)
$$A D A_{\text {hori}} \geq T h_{\text {hori}}$$

(10)
$$A D A_{\text {diag_(-45)}} \geq T h_{\text {diag_(-45)}}$$

(11)
$$A D A_{\text {diag_(-45)}} \geq T h_{\text {diag_(-45)}}$$

식 (8)~(11)에서 $Th_{v ert}$, $Th_{hori}$, $Th_{\text{diag_(-45)}}$, $Th_{\text{diag_(45)}}$는 인코딩 시간 및 화질 성능을 종합적으로 고려하여 적절하게 결정해야 하는 임계값이다. 즉, 이 값들이 작을수록 더 많은 수의 인트라 모드 검사가 생략되기 때문에 인코딩 복잡도는 감소하지만, 동시에 화질 열화도 커지게 되며, 반대로 이 값들이 클수록 화질 열화는 작지만, 동시에 인코딩 복잡도 감소 효과 역시 크지 않게 된다. 한편, 제안 방법에서는 (방향성 뿐만이 아니라) CU 블록의 크기에 따라서도 서로 다른 임계값을 사용한다. 참고로, 본 논문에서는 다양한 시뮬레이션을 진행하여 ILRP 모드와 인트라 모드가 최적 모드로 선택되는 확률이 CU 블록의 크기에 따라 크게 상이한 결과가 나오는 것을 확인하였다. 표 1은 ILRP 모드와 인트라 모드가 최적 모드로 선택될 확률을 보여준다.

표 1로부터 CU 블록의 크기가 증가함에 따라 인트라 모드가 최적의 모드로 선택될 확률이 감소하는 것을 알 수 있다. 이러한 결과는 인접해 있는 두 픽셀 사이의 거리가 증가할수록 두 픽셀 사이의 공간적 상관 관계가 감소한다는 사실에 서 비롯된다. 가령, $m_{26}$ 모드를 살펴보자. $m_{26}$ 모드에서 (모든 $j$에 대하여) $X_{1j}$, $X_{2j}$, ..., $X_{Nj}$에 대한 예측 값은 모두 $B_{Nj}$가 된다. 그런데, $i$의 값이 작을 경우, $X_{ij}$와 $B_{Nj}$는 공간적으로 근접해 있으므로 $X_{ij}$와 $B_{Nj}$의 값이 서로 같거나 또는 매우 비슷할 확률이 매우 높지만, $i$의 값이 클 경우, $X_{ij}$와 $B_{Nj}$는 공간적으로 떨어져 있으므로 $X_{ij}$와 $B_{Nj}$의 값이 서로 상당히 다를 가능성이 매우 높다. 즉, $i$의 값이 클 경우, $B_{Nj}$는 더 이상 $X_{ij}$에 대한 좋은 예측 값이 되지 않음을 알 수 있으며, 따라서, CU 크기가 클 경우, 인트라 모드의 예측 정확도는 감소하게 된다. 따라서, 제안하는 방법에서는 이러한 결과를 반영하기 위하여 서로 다른 CU 블록 크기에 대해 서로 다른 임계값을 사용한다.

표 1. CU 크기 별 (ILRP 모드와 인트라 모드의) 최적 모드 선택 확률

Table 1. Probability that the best mode is [the ILRP mode] or [one of intra modes]

CU Size

64×64

32×32

16×16

8×8

평균

Probability that the best mode is the ILRP mode

91.2%

85.4%

78.1%

70.3%

81.3%

Probability that the best mode is an intra mode

8.8%

14.6%

21.9%

29.7%

18.7%

주지하는 바와 같이, 35개의 인트라 모드 중에서 일반적인 방향 모드가 아닌 $m_{0}$와 $m_{1}$ 모드는 최적 모드로 선택될 확률이 가장 높은 모드들이며, 따라서, 이 2개의 모드는 항상 검사 목록에 포함한다. 즉, RMD 과정에서 검사하는 인트라 모드의 집합을 Ω1이라고 하면, Ω1은 항상 $m_{0}$와 $m_{1}$ 모드를 포함한다. 한편, 전술한 바와 같이, 제안하는 방법에서는 식 (8)~(11)의 4가지 조건을 검사한 후, 전체 인트라 모드 중 일부 모드에 대한 RMD 검사를 생략한다. 가령, 식 (8)~(11) 중에서 식 (8)~(10)의 조건은 만족하고, 식 (11)의 조건을 만족하지 않을 경우, RMD 과정에서 검사해야 하는 Ω1은 {$m_{0}$, $m_{1}$, $m_{22}$, $m_{23}$, ..., $m_{30}$}이 된다. 한편, 식 (8)~(11)의 조건을 모두 만족할 경우, RMD 과정에서 검사해야 하는 인트라 모드의 집합 Ω1은 $\left\{m_{0},\: m_{1}\right\}$이 된다. 제안 방법은 RMD 단계에서 여러 인트라 모드에 대한 검사를 생략함으로써 계산 복잡도를 효율적으로 감소시키지만, 그에 따르는 성능 저하는 상당히 작은 편이다. 표 2는 RMD 단계에서 검사하는 인트라 모드 수의 평균과 에러 확률을 CU 크기 별로 보여 주고 있다.

표 2. RMD 과정에서 검사하는 인트라 모드 수의 평균 및 에러 확률

Table 2. Average number of modes examined in the RMD process and the average miss rate

CU Size

64×64

32×32

16×16

8×8

평균

Average number of modes examined in RMD step

19.2

21.5

22.4

22.1

21.3

Average miss rate

3.0%

3.4%

3.3%

3.5%

3.3%

참고로, 에러 확률은 다음과 같이 정의하며, 에러 CU는 원본 SHM에서의 최적 모드와 제안하는 방법에 의한 최적 모드가 다른 결과가 나오는 경우의 CU를 의미한다.

(12)
$$\text{miss_rate} = \frac{\text{에러 CU의 수}}{\text{전체 CU의 수}} \times 100(\%)$$

표에서 볼 수 있듯이, 제안하는 알고리즘의 RMD 과정에서 검사해야 하는 인트라 모드의 수는 평균 21.3으로 전체 35개의 인트라 모드의 수에 비해 60.9% 밖에 되지 않으나, miss rate는 3.3%로 매우 작음을 알 수 있다.

2.2 Proposed Method for RDO Process

원본 SHM의 경우, RDO 과정을 진행할 때, 3개 또는 8개의 RMD 모드를 RDO 검사 후보에 포함시킨다. 즉, RDO 과정에서 검사하는 인트라 모드의 집합을 Ω2라고 하면, 64×64, 32×32, 16×16 CU 블록에 대해서는 3개의 RMD 모드를 Ω2에 포함시키고, 8×8 CU 블록에 대해서는 8개의 RMD 모드를 Ω2에 포함시킨다. 즉, RMD 과정 진행 후 Hadamard RD cost가 $n$번째로 작은 모드를 $m_{\text{R MD_n}}$이라고 할 경우, 8×8 CU의 경우, $m_{\text{R MD_1}}$, $m_{\text{R MD_2}}$, ..., $m_{\text{R MD_8}}$ 모드를 Ω2에 포함시킨다. 반면, 제안하는 방법에서는 원본 SHM에 비해 더 작은 수의 RMD 후보를 사용하는 대신 다른 형태의 중요한 후보를 RDO 검사 후보 집합인 Ω2에 포함시킨다. 우선, 제안 방법의 경우, 64×64, 32×32, 16×16 CU 블록에 대해서는 최대 2개의 RMD 모드 (즉, $m_{\text{R MD_1}}$ $m_{\text{R MD_2}}$ 모드)를 Ω2에 포함시키고, 8×8 CU 블록에 대해서는 최대 5개의 RMD 모드 (즉, $m_{\text{R MD_1}}$, $m_{\text{R MD_2}}$, ..., $m_{\text{R MD_5}}$ 모드)를 Ω2에 포함시킨다. 단, 연산 복잡도를 낮추기 위하여 $m_{\text{R MD_1}}$을 제외한 나머지 RMD 모드들의 경우, 다음의 조건을 만족하는 경우에만 Ω2에 포함시킨다.

(13)
$$R D_{-} \cos t_{R M D_{-} n} \leq \alpha \times R D_{-} \cos t_{R M D_{-} 1}$$

참고로, 식 (13)에서 RD_costRMD_n은 mRMD_n 모드의 RD cost를 의미하며, $\alpha(\alpha >1)$는 연산 복잡도와 성능을 종합적으로 고려하여 결정해야 하는 매개 변수이다. 즉, $\alpha$의 값이 클수록 더 많은 수의 인트라 모드를 검사하게 되고, 결과적으로 화질 성능은 좋아지나, 동시에 인코딩 시간도 증가하게 된다. 한편, 다양한 시뮬레이션을 진행한 결과, 본 논문에서는 EL에서의 최적 인트라 모드가 BL에서의 최적 인트라 모드와 매우 높은 상관 관계를 가지고 있음을 확인하였다. 따라서, 제안 방법의 경우, 64×64, 32×32, 16×16 CU 크기에 대해서는 최대 2개의 BL 모드 (즉, $m_{\text{BL_1}}$, $m_{\text{BL_2}}$ 모드)를 Ω2에 포함시키고, 8×8 CU 크기에 대해서는 최대 3개의 BL 모드 (즉, $m_{\text{BL_1}}$, $m_{\text{BL_2}}$, $m_{\text{BL_3}}$ 모드)를 Ω2에 포함시킨다. (참고로, $m_{\text{BL_n}}$은 BL에서 RD cost가 $n$번째로 작은 모드를 의미한다). 한편, RMD 후보의 경우와 마찬가지로, $m_{\text{BL_1}}$을 제외한 나머지 BL 모드들의 경우, 다음의 조건을 만족하는 경우에만 Ω2에 포함시킨다.

(14)
$$R D_{-} \cos t_{B L_{-} n} \leq \beta \times R D_{-} \cos t_{\mathrm{BL}_{-} 1}$$

마지막으로 제안하는 방법에서는 다음의 방법을 사용하여 공간적으로 상관 관계가 높은 인트라 모드를 추가한다. 즉, $m_{L}$ 모드가 $m_{U}$ 모드와 같고, 그 모드가 Ω1에 속하는 경우, 그 인트라 모드를 Ω2에 추가한다 (참고로, $m_{L}$ 모드는 좌측 블록의 최적 모드를 의미하고, $m_{U}$ 모드는 상단 블록의 최적 모드를 의미한다). 편의상, 이 공간적 상관 모드를 $m_{MPM}$ 이라고 부르기로 한다. 결국, 제안 방법의 RDO 후보 집합 목록 Ω2의 경우, 64×64, 32×32, 16×16 CU 블록에서는 최대 5개의 모드 (즉, 2개의 RMD 모드, 2개의 BL 모드, 1개의 MPM 모드)를 포함할 수 있고, 8×8 CU 블록에서는 최대 9개의 모드 (즉, 5+3+1개의 모드)를 포함할 수 있다.

그러나, 다음과 같은 이유로 인해 실제로 RDO 과정에서 검사해야 하는 인트라 모드의 수는 대개의 경우 이보다 훨씬 작다. 우선, $m_{\text{R MD_1}}$을 제외한 나머지 RMD 모드들의 경우, 식 (13)을 만족하는 경우에만 Ω2에 포함되고, $m_{\text{BL_1}}$을 제외한 나머지 BL 모드들의 경우, 식 (14)를 만족하는 경우에만 Ω2에 포함된다. 또한, 3가지 후보군 (즉, RMD 모드들, BL 모드들, MPM 모드) 내에서 서로 중복되는 모드가 발생할 수 있다. 가령, $m_{BL2}$와 $m_{MPM}$이 서로 같을 수도 있고, $m_{R MD 2}$와 $m_{BL1}$이 서로 같을 수도 있는데, 이렇게 중복되는 모드들이 발생하는 경우, 실제 검사해야 하는 모드들의 수는 감소하게 된다. 마지막으로, 제안 방법에서는 다음과 같이 Ω2에 속한 여러 개의 모드들 중에서 1개 모드에 대한 검사만 실시할 수도 있다. 우선, 제안 방법에서는 Ω2에 속한 여러 개의 모드들 중에서 최적 모드로 선택될 확률이 가장 높은 $m_{\text{BL_1}}$에 대한 RDO 검사를 제일 먼저 실시한다. 한편, 앞에서 설명한 바와 같이, 인트라 모드와 ILRP 모드 중에서 ILRP 모드가 최적 모드로 선택될 확률이 훨씬 더 높다. 따라서, $m_{\text{BL_1}}$에 RDO 검사를 실시한 이후, 그 모드에 대한 RD cost가 ILRP 모드에 대한 RD cost보다 훨씬 클 경우, Ω2에 속한 다른 모드들의 RD cost가 ILRP 모드에 대한 RD cost보다 낮을 확률은 매우 낮기 때문에 $m_{\text{BL_1}}$을 제외한 잔여 모드들에 대한 검사를 생략할 수 있다. 즉, 다음 조건을 만족할 경우, Ω2에서 $m_{\text{BL_1}}$을 제외한 잔여 모드들에 대한 검사를 생략한다.

(15)
$$R D_{-} \cos t_{\text{BL_1}} \leq \gamma \times R D_{-} \operatorname{cost}_{\mathrm{ILRP}}$$

위와 같은 이유들로 인해 제안 방법의 RDO 과정에서 실제로 검사해야 하는 인트라 모드의 수는 매우 작으며, 앞서 설명한 바와 같이 RMD 과정에서 검사해야 하는 인트라 모드의 수도 매우 작기 때문에 원본 SHM에 비하여 훨씬 낮은 인코딩 시간을 갖게 된다. 이에 다음 절에서는 시뮬레이션 결과를 통해 제안 알고리즘의 인코딩 시간과 화질 성능에 대해 보다 자세히 설명하고자 한다.

3. Simulation Results

본 논문에서는 제안하는 모드 결정 방법을 SHM 12.2 참조 소프트웨어 (6)를 사용하여 구현하였으며, “공통 시험 조건 및 소프트웨어 참조 구성” 문서에 명시된 테스트 동영상을 사용하여 시뮬레이션을 진행하였다 (16). 표 3은 시뮬레이션에서 사용된 중요 파라미터의 값을 보여 준다. 참고로, 식 (13)~(15)의 매개 변수 값은 각각 $\alpha =1.3$, $\beta =1.5$, $\gamma =1.5$로 설정하였다.

표 3. 중요 시뮬레이션 파라미터

Table 3. Simulation Parameters

Parameter

Mode/Value

profile

Main

GOP

All Intra (spatial 2x)

QP

22, 26, 30, 34

# of frames

30

표 4. 다른 모드 선택 방식들과의 비교

Table 4. Comparison with other mode decision methods

Class

Sequence

Zuo (7)

Zhu (14)

proposed method

BD-BR

(%)

ΔTime

(%)

BD-BR

(%)

ΔTime

(%)

BD-BR

(%)

ΔTime

(%)

A

Traffic

0.34

18.3

0.25

11.2

0.22

23.1

PeopleOnStreet

0.32

16.4

0.25

15.3

0.20

21.9

B

Kimono

0.20

25.8

0.21

20.1

0.14

27.2

ParkScene

0.38

13.5

0.29

10.4

0.27

20.5

Cactus

0.27

17.1

0.24

14.2

0.21

23.4

BasketballDrive

0.37

15.3

0.32

13.0

0.25

22.1

BQTerrace

0.25

24.1

0.19

19.5

0.16

26.8

Average

0.30

18.6

0.25

14.8

0.21

23.6

표 4는 제안 알고리즘의 화질 성능 및 인코딩 복잡도를 다른 알고리즘들과 비교하여 보여 준다. 참고로, 공정한 비교 평가를 위하여 (고속 CU 크기 결정 알고리즘, 고속 TU 레벨 결정 알고리즘 등의 기타 알고리즘은 구현하지 않고) 고속 모드 결정 알고리즘 파트만 구현하여 비교하였다. 한편, 화질 성능 비교를 위해 Bjøntegaard 델타 비트 전송률 (BD-BR)을 표시하였으며, BD-BR 값과 BD-PSNR 값은 본질적으로 동일한 정보를 나타내기 때문에 표 4에서는 BD-BR 값만 표시하였다 (17). 또한, 표 4에서 $\Delta$Time은 다음과 같이 정의되는 인코딩 시간 감소율을 의미하며, 식 (16)에서 TSHM은 SHM의 인코딩 시간을 나타내고, Tproposed는 제안 알고리즘의 인코딩 시간을 나타낸다.

(16)
$$\Delta \operatorname{Time}=\frac{T_{\mathrm{SHM}}-T_{\mathrm{proposel}}}{T_{\mathrm{SHM}}} \times 100(\%)$$

표 4에서 볼 수 있는 바와 같이, 제안 알고리즘의 경우, 다른 알고리즘들에 비해 평균 인코딩 시간 감소율이 더 크며, 이에 대한 이유는 다음과 같이 설명할 수 있다. 우선, 제안 방법에서는 RMD 과정과 RDO 과정 모두에서 인코딩 시간을 효과적으로 감소시킨다. 특히, 제안 알고리즘에서는 식 (4)~(7)의 ADA 값을 이용하여 RMD 과정에서 불필요한 후보 모드를 매우 효과적으로 생략할 수 있다. 한편, 제안 방법은 RDO 과정에서도 식 (13)~(15)의 조건 식을 효과적으로 사용하여 인코딩 복잡도를 감소시킨다. 특히, 식 (15)의 검사를 통해 ILRP 모드 정보를 효과적으로 이용하여 검사해야 할 모드의 수를 획기적으로 감소시킬 수 있다. 이를 통해 제안 방법은 원본 SHM은 말할 것도 없고, Zuo (7)나 Zhu (14) 방법에 비해서도 훨씬 작은 수의 모드를 검사하게 된다.

한편, 표 4에서 볼 수 있듯이 제안 알고리즘은 BD-BR 성능 관점에서도 다른 방식들에 비해 매우 우수한 결과를 보이며, 이에 대한 이유는 다음과 같다. 우선, 제안 알고리즘에서는 방향성 요소 및 CU 크기에 따른 통계적 특성을 효과적으로 이용하여 검사해야 할 RMD 후보 모드를 효율적으로 결정한다. 또한, EL에서의 최적 모드와 BL에서의 최적 모드 사이의 높은 상관 관계를 감안하여 다수 개의 BL 모드를 RDO 후보군에 추가함으로써 화질 열화를 최소화한다. 한편, 2.2절에서 언급한 매개 변수 $\alpha ,\:\beta ,\:\gamma$ 의 값을 적절히 조정함으로써 BD-BR 성능과 인코딩 시간을 원하는 방식으로 미세하게 조정할 수 있는데, 이는 제안하는 알고리즘의 또 다른 장점이라고 할 수 있다.

4. 결 론

본 논문에서는 SHVC에서 사용할 수 있는 효과적인 고속 모드 결정 방법에 대한 알고리즘을 제안하였다. 제안 알고리즘은 RDO 과정에서 검사해야 하는 후보 모드 뿐만이 아니라 RMD 과정에서 검사해야 하는 후보 모드의 수도 효과적으로 감소시켜 인코딩 시간을 획기적으로 단축시킬 수 있다. RMD과정의 경우, 본 논문에서 제안하는 독창적인 absolute difference of averages (ADA) 값을 사용함으로써 average absolute difference (AAD) 값을 사용하는 경우에 비하여 더 많은 수의 모드를 생략시킬 수 있다. 한편, 본 논문에서 제안하는 방식에서는 ADA 값을 주변 블록의 값 대신 현재 블록의 값을 사용하는 방식으로 정의함으로써 제일 상단 블록이나 제일 좌측 블록에서도 예외 없이 제안 알고리즘을 적용할 수 있다. 또한, CU 크기에 따라 서로 다른 임계값을 사용함으로써 보다 효과적으로 인코딩 복잡도를 감소시킬 수 있다. RDO 과정에서는 EL과 BL 사이의 높은 상관 관계를 이용하여 다수 개의 BL 최적 모드를 사용하는 방식을 사용하고, 이에 추가로 공간 상관 관계와 RD cost가 작은 RMD 후보를 사용한다. 제안 알고리즘은 이렇게 다양한 형태의 후보군을 사용함으로써 화질 성능 열화를 최소화 시키지만, 많은 경우에 있어서 서로 다른 형태의 후보 모드 중에서 중복 모드가 발생하게 되고, 따라서, 인코딩 시간 관점에서도 효과적인 알고리즘이 된다. 한편, 제안 알고리즘에서 사용하는 매개변수 값들을 적절히 조정할 경우, BD-BR 성능과 인코딩 시간을 원하는 방식으로 미세하게 조정할 수 있으며, 이는 제안 방법의 또 다른 장점이라 할 수 있다.

Acknowledgements

This research was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT). (No. 2017R1A2B4012710)

References

1 
H. Schwarz, D. Marpe, T. Wiegand, 2007, Overview of the scalable video coding extension of the H. 264/AVC standard, IEEE Transactions on circuits and systems for video technology, Vol. 17, No. 9, pp. 1103-1120DOI
2 
G. Sullivan, J. Ohm, W. Han, T. Wiegand, 2012, Overview of the High Efficiency Video Coding (HEVC) standard, IEEE Trans. Circuits Syst. Video Technol., Vol. 22, No. 12, pp. 1649-1668DOI
3 
G. J. Sullivan, 2013, Standardized Extensions of High Efficiency Video Coding (HEVC), IEEE Journal of Selected Topics in Signal Processing, Vol. 7, No. 6, pp. 1001-1016DOI
4 
J. Chen, J. Boyce, Y. Ye, M. M. Hannuksela, 2013, Scalable High Efficiency Video Coding Draft 3, Joint Collaborative Team on Video Coding (JCT-VC) Document JCTVCN1008, 14th Meeting, Vienna, AustriaGoogle Search
5 
J. Boyce, Y. Ye, J. Chen, A. K. Ramasubramonian, 2015, Overview of SHVC: Scalable Extensions of the High Efficiency Video Coding Standard, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 26, No. 1, pp. 20-34DOI
6 
SHVC reference software, https:// hevc.hhi.fraunhofer.de/svn/svn_SHVCSoftware/tags/SHM-12.2/Google Search
7 
X. Zuo, L. Yu, dec. 2014, Fast mode decision method for all intra spatial scalability in SHVC, in Proc. VCIP, pp. 394-397DOI
8 
T. Katayama, W. Shi, T. Song, T. Shimamoto, 2016, Low-Complexity Intra Coding Algorithm in Enhancement Layer for SHVC, 2016 IEEE International Conference on Consumer Electronics (ICCE).DOI
9 
C. C. Wang, Y. S. Chang, K. N. Huang, 2016, Efficient Coding Tree Unit Decision Method for Scalable High-Efficiency Video Coding Encoder, Recent Advances in Image and Video Coding. InTechDOI
10 
L. Shen, G. Feng, P. An, 2019, SHVC CU Processing Aided by a Feedforward Neural Network, IEEE Transactions on Industrial Informatics, Vol. 15, No. 11, pp. 5803-5815DOI
11 
X. Li, M. Chen, Z. Qu, J. Xiao, M. Gabbouj, 2017, An effective CU size decision method for quality scalability in SHVC, Multimedia Tools and Applications, Vol. 76, No. 6, pp. 8011-8030DOI
12 
H. R. Tohidypour, M. T. Pourazad, P. Nasiopoulos, 2013, Content adaptive complexity reduction scheme for quality/fidelity scalable HEVC, in Proc. of 2013 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)DOI
13 
Q. Li, B. Liu, D. Wang, 2019, Fast CU Size Decision and PU Mode Decision Algorithm for Quality SHVC Inter Coding, Multimedia Tools and Applications, Vol. 78, No. 6, pp. 7819-7839DOI
14 
G. Zhu, G. Chen, T. Ikenaga, 2016, Fast enhancement layer intra coding based on inter-channel correlations and TU depth correlation in SHVC, in Proc. IEEE Signal Processing and Its Applications, pp. 50-53DOI
15 
D. Wang, C. Yuan, Y. Sun, J. Zhang, H. Zhou, 2014, Fast Mode and Depth Decision Algorithm for Intra Prediction of Quality SHVC, 2014 International Conference on Intelligent Computing (ICIC)DOI
16 
V. Seregin, Y. He, Apr 2014, Common SHM test conditions and software reference configurations, Document JCT-VC Q1009Google Search
17 
G. Bjøntegaard, Apr 2001, Calculation of average PSNR differences between RD-curves, ITU-T 13th Video Coding Experts Group (VCEG) Meeting, Doc. VCEG-M33Google Search

저자소개

신성윤 (Sungyoon Shin)
../../Resources/kiee/KIEE.2020.69.4.602/au1.png

He received the B.S degree in Electronics Engineering from Kook-Min University, Seoul, Korea in 2017 and M.S degree in Electrical Engineering from Chung-Ang University, Seoul, Korea in 2019.

His current research interests include computer vision, machine learning, biomedical engineering, high efficiency video compression techniques, and scalable video coding.

유성욱 (Sungwook Yu)
../../Resources/kiee/KIEE.2020.69.4.602/au2.png

He received his B.S. degree in electrical engineering from Seoul National University, Seoul, Korea, in 1992.

He received his M.S. and Ph.D. degrees in electrical and computer engineering from the University of Texas at Austin, in 1996 and 2000, respectively.

From 2000 to 2004, he worked at Intel Corp. in Austin, TX.

He worked for a year at Samsung Semiconductor Inc. in Korea before joining the faculty of electrical and electronics engineering department in Chung-Ang University, Seoul, Korea in 2005.

His research interests are in the area of artificial intelligence and digital image processing.