DOI QR코드

DOI QR Code

A Study on Error-Resilient, Scalable Video Codecs Based on the Set Partitioning in Hierarchical Trees(SPIHT) Algorithm

계층적 트리의 집합 분할 알고리즘(SPIHT)에 기반한 에러에 강하고 가변적인 웨이브렛 비디오 코덱에 관한 연구

  • Inn-Ho, Jee (Dept. of Software and Communication Engineering, Hongik University)
  • 지인호 (홍익대학교 소프트웨어융합학과)
  • Received : 2023.01.04
  • Accepted : 2023.02.03
  • Published : 2023.02.28

Abstract

Compressed still image or video bitstreams require protection from channel errors in a wireless channel. Embedded Zerotree Coding(EZW), SPIHT could have provided unprecedented high performance in image compression with low complexity. If bit error is generated by dint of wireless channel transmission problem, the loss of synchronization on between encoder and decoder causes serious performance degradation. But wavelet zerotree coding algorithms are producing variable-length codewords, extremely sensitive to bit errors. The idea is to partition the lifting coefficients. A many partition of lifting transform coefficients distributes channel error from wireless channel to each partition. Therefore synchronization problem that caused quality deterioration in still image and video stream was improved.

압축된 정지 영상이나 비디오 비트열들은 무선채널에서 채널 에러의 보호가 요구된다. Embedded Zero Coding(EZW)와 SPIHT는 낮은 복합도의 영상압축에서 매우 우수한 성능을 제공하여준다. 무선 채널의 전송상의 문제로 인해 비트 에러가 발생하게 되면 부호화와 복호화 사이의 동기를 잃어버리게 되어 심각한 성능의 저하를 일으키게 된다. 그러나 웨이브렛 제로코딩 알고리즘은 에러에 매우 민감한 가변 길이 코드워드가 생성된다. 이 논문의 아이디어는 리프팅 계수들을 분할하는 것이다. 리프팅 변환들의 많은 분할이 무선채널의 채널 에러를 각 분할로 분배된다. 그래서 정지 영상이나 비디오 스트림에서 영상 왜곡을 야기 시키는 동기화 문제가 개선되었다.

Keywords

Ⅰ. 서론

리프팅 변환은 웨이브렛 변환의 모든 장점을 가지면서도 곱셈 연산을 이동과 지연 연산으로 대체하기 때문에 연산의 속도를 개선할 수 있고, in-place 연산이 가능하므로 메모리를 절약할 수 있으며 또한 정수형 연산이 가능하다. 또한 순방향 변환으로부터 역방향 변환이 완전히 가역적이라 역방향 변환을 쉽게 얻을 수 있다. 반면 웨이브렛 변환에 비해 에너지의 집중도가 약한 단점을 가지고 있다. EZW, SPIHT는 웨이브렛 변환 계수를 이용한 대표적인 영상 압축 방식이다[2]. SPIHT 압축 방식은 부호화가 수행된 후 비트열로 출력이 되어 복호화기에 전송이 된다. 적응적 산술 부호화 과정을 필요로 하는 EZW에 비해 SPIHT의 경우 엔트로피 부호화 과정을 거치지 않은 이진 전송만으로도 성능면에서 대략 같거나 우수한 성능을 나타낸다. 이렇게 압축된 정지영상이나 비디오 영상의 압축된 비트스트림은 무선 채널환경으로 부터 발생하는 에러로부터 보호 되어져야 한다. SPIHT 같은 제로트리 알고리즘은 중요한 계수의 한 비트가 에러가 있으면 부화화기와 복호화기 사의의 동기를 잃어버려 에러의 중요도를 넘는 심각한 현상을 야기 시킨다. 따라서 128채널의 OFDM 무선 채널을 가정하면 AWGN 채널 환경 하에서도 많은 영상의 왜곡을 발생 시킬 수 있다. 이러한 채널 에러에서도 채널 에러에 유연하게 영상을 전송하기 위하여 리프팅 변환된 계층적 트리구조의 계수를 다수의 계층적 트리 구조로 분할한다[4][6]. 이는 영상을 무선 채널을 통하여 영상을 전송함에 있어 채널 에러에 강하게 영상을 전송할 수 있게 된다.

Ⅱ. Lifting

그림 1은 리프팅의 한 단계를 나타낸다. 리프팅은 split, update, predict의 3단계로 이루어진다[1][3].

OTNBBE_2023_v23n1_37_f0001.png 이미지

그림 1. 리프팅 구조

Fig. 1. Lifting structure

Split: x[n]을 입력신호라 하면, 첫 번째로 x[n]을 우수와 기수의 다 위상 요소 xe[n]과 xo[n]으로 나눈다. 여기에서 xe[n] = x[2n]이고 xo[n] = x[2n + 1]이 된다.

Predict: 리프팅의 보간 공식에서 주변 계수 xe[n]으로부터 다 위상 계수 xo[n]을 예측한다. 각 xo[n]에 대한 예측기는 이웃한 우수의 계수들과 선형 결합한다.

\(\begin{aligned}P\left(x_{e}\right)[n]=\sum_{l} p_{l} x_{e}[n+l]\end{aligned}\)       (1)

여기에서 x[n]을 오차가 존재하는 xo[n]로 바꿈으로서 새로운 표현을 얻을 수 있다. 이것은 첫 번째 리프팅 단계를 이끌어 낸다.

d[n] = xo[n] - P(xe)[n]       (2)

Update: 마지막으로 세 번째 단계인 update 단계에서는 우수의 다 위상 계수 xe[n]에 대하여 저역통과 필터로 전달되고 부 표본화된 x[n]이 된다. xe[n]과 예측 오차 d[n]의 선형 결합을 통하여 업데이트 된다.

c[n] = xe[n] - U(d)[n]       (3)

위의 식 (3)에서 U(d)[n]는 예측 오차 d의 값들과 선형 결합을 이룬다.

\(\begin{aligned}U(d)[n]=\sum_{l} u_{l} d[n+l]\end{aligned}\)        (4)

각 리프팅 단계는 항상 역변환 가능하며 정보의 손실이 없다. 분석과 합성에 있어서 동일한 P와 U가 선택 되었다고 가정할 때 리프팅 구조는 완전 재생을 보장한다. FIR 웨이브렛 필터는 리프팅 단계로 인수 분해되기 때문에 복잡성은 기존 방법 절반으로 감소된다. 본 논문에서는 Daubechies 9/7 필터를 사용하여 리프팅 구조를 적용하였다. 식(5)는 Daubechies 9/7 필터의 다 위상 행렬이다.

\(\begin{aligned}P(z)=\left[\begin{array}{cc}1 \alpha\left(1+z^{-1}\right) \\ 0 & 1\end{array}\right]\left[\begin{array}{cc}1 & 0 \\ \beta(1+z) & 1\end{array}\right]\left[\begin{array}{cc}1 & \gamma\left(1+z^{-1}\right) \\ 0 & 1\end{array}\right]\left[\begin{array}{cc}1 & 0 \\ \delta(1+z) & 1\end{array}\right]\left[\begin{array}{cc}\zeta & 0 \\ 0 & 1 / \zeta\end{array}\right]\end{aligned}\)       (5)

다음의 값들은 식(5)의 다 위상 행렬과 그림 2에서의 파라미터이다.

OTNBBE_2023_v23n1_37_f0002.png 이미지

그림 2. 1차원 리프팅 구조

Fig. 2. 1-Dimensional lifting structure

α = -1.586134342, β = -0.05298011854, γ = 0.8829110762, δ = 0.4435068522, ζ = 1.14964398

리프팅 변환은 2세대 웨이브렛이라고 불리워진다. 하지만 웨이브렛 변환에 비해 에너지의 집중도가 낮기 때문에 EZW, SPIHT와 같은 제로트리 기반의 압축 알고리즘에서는 웨이브렛 변환만큼의 높은 성능을 나타내진 못한다. 하지만 정수형 연산이 가능하고 메모리를 절약할 수 있으며 또한 빠른 연산이 가능한 장점을 가지고 있다. 그림 2는 1차원 9/7리프팅 구조를 표현한 것이다. 기존의 컨벌루션 연상은 8번의 덧셈과 4.5번의 곱셈 과정을 통해 변환 계수를 얻지만, 9/7 리프팅 필터의 평균 연산은 계수 당 4번의 덧셈과 2번의 곱셈을 수행하므로 연산량이 거의 절반이다[7].

Ⅲ. Error-resilient SPIHT

1. SPIHT(Set Partitioning in Hierarchical Trees)

웨이브렛 변환에 의해 다해상도로 분해된 부대역들을 얻을 수 있다. 각 부대역 계층에서 상위계층에 에너지가 집중되며, 하위 계층으로 갈수록 분산이 감소하게 된다. SPIHT는 EZW방식을 개선한 알고리즘으로 압축 효율을 개선한 알고리즘이다. SPIHT는 계산과정이 빠르고, 부분 정렬에 의해 중요 비트를 먼저 보냄으로써 임베디드 부호화를 가능하게 하며, 점진적 전송이 가능하여 전송 과정에서의 오류에도 복호화 할 수 있는 장점을 가지고 있다. 또한 부대역간의 유사성을 이용하여 부호화함으로써 압축 효율을 높이고 원하는 비트율까지 부호화 할 수 있는 장점이 있다. SPIHT 알고리즘은 LIS(List of Significant Set), LIP(List of Insignificant Pixel, LSP(List of Significant Pixel)의 3개의 정렬 리스트에 저장되는 순서에 의해 압축 과정이 진행된다[2].

SPIHT는 임베디드 부호화 과정을 모두 마친 데이터들은 다단계 적응적 산술부호화를 이용한 엔트 LIP, LSP의 경우 화소 단위로 정렬 리스트에 저장되고 LIS의 경우 자손 노드에 의한 값이 있는 경우 그 하위 노드 집합이 정렬 리스트에 저장되게 된다. 이러한 과정은 사용자가 원하는 비트율을 만족할 때까지 반복적으로 수행된다. 그림 3은 SPIHT의 정렬 과정을 보여준다. 정렬과정이 끝나게 되면 중요 계수들이 모여있는 LSP 집합은 다시 세분과 과정을 거쳐 중요 계수의 MSB를 부호화 하게 된다.

OTNBBE_2023_v23n1_37_f0003.png 이미지

그림 3. SPIHT의 정렬 과정

Fig. 3. Sorting process of SPIHT

OTNBBE_2023_v23n1_37_f0004.png 이미지

그림 4. 중요 계수의 세분화 과정

Fig. 4. Segmentation procedure of important coefficients

2. 무선 채널 환경에서의 에러에 유연한 SPIHT

가변길이 부호화 방식은 현재 비디오 코덱이나 이미지 압축 분야에서 높은 성능을 나타내기 위해 사용되고 있다. SPIHT와 같은 제로트리 알고리즘에서 중요한 계수 또는 계수 집합을 전송할 때 하나의 비트 에러가 발생하게 되면 이것은 부호화기와 복호화기 사이의 동기를 잃게 하는 원인이 된다. 따라서 영상이나 비디오 파일에 심각한 성능저하를 가져오게 된다. 따라서 무선채널 상에서 전송오류에 강인한 알고리즘을 필요로 한다. 그림 5은 무선채널 상에서 발생하는 에러에 강인하기 위한 SPIHT 알고리즘을 보여준다. 이 알고리즘은 변환계수들을 S개의 부 집합으로 나누어 병렬 처리 하는 것이 기본 개념이다. 변환계수들을 S개의 부 집합 개의 부 집합에 분산 처리가 가능하게 되어 무선 채널 상에서 나타날 수 있는 에러가 변환 계수에 미치는 영향을 줄일 수 있어, 무선 채널 상에서 발생하는 에러에 보다 강한 압축 결과를 얻을 수 있다. 이렇게 나누어진 S개의 부 집합들은 각각의 부호화 과정을 거치게 되고 부호화된 각각의 비트열들은 인터리빙(interleaving)과정을 거쳐 실제 전송되는 비트 스트림을 생성하게 된다.

OTNBBE_2023_v23n1_37_f0005.png 이미지

그림 5. 에러에 강인한 SPIHT 알고리즘

Fig. 5. Error-resikient SPIHT 알고리즘

리프팅 변환된 계층적 트리구조는 식(2)에 의해서 최대 부 집합으로 분해되어 진다.

S = X ⦁ Y/4NS       (6)

여기서, X, Y는 영상의 가로축과 세로축의 크기를 나타내며 NS는 리프팅의 분해 레벨이다.

그림 6에서 (a)는 일반적인 SPIHT 알고리즘에서 전송되는 비트 스트림을 보여주고 있으며, (b)는 error-resilient SPIHT 알고리즘에서 부 집합들의 비트 스트림과 전송될 될 비트 스트림을 나타내고 있다.

OTNBBE_2023_v23n1_37_f0006.png 이미지

그림 6. Bit stream의 구조

Fig. 6. Structure of bit stream

Ⅳ. OFDM

영상을 전송하기 위해 OFDM(Orthogonal Frequency Division Multiplexing) 방식을 사용한다. OFDM의 기본원리는 고속 전송률을 갖는 데이터 열을 낮은 전송률을 갖는 많은 수의 데이터 열로 나누고 이들을 다수의 부반송파를 사용하여 동시에 전송하는 것이다. 낮은 전송률을 갖는 부반송파의 심볼 구간은 증가하게 되므로 다중경로 지연확산에 의해 발생하는 기간 상에서의 상대적인 분산이 감소한다. 모든 OFDM 심볼 사이에 채널의 지연확산보다 긴 보호구간을 삽입하여 심볼간 간섭(Inter Symbol Interference:ISI)을 제거할 수 있다. 또한 보호구간에 OFDM 신호의 일부를 복사하여 심볼의 시작부분에 배치하면 OFDM 심볼은 순환적으로 확장되어 부 반송파간 간섭(Inter Carrier Interference:ICI)을 피할 수 있다. 그림 7은 일반적인 OFDM 시스템의 블록도를 보여 주고 있으며 그림 8은 실험에 사용된 수신기와 송신기의 블록도를 보여주고 있다.

OTNBBE_2023_v23n1_37_f0007.png 이미지

그림 7. OFDM 송수신기의 블록도

Fig. 7. Block diagram of OFDM transmitter/receiver

OTNBBE_2023_v23n1_37_f0011.png 이미지

그림 8. 송신기와 수신기의 블록도

Fig. 8. Block diagram of transmitter and receiver

송수신 시스템에서 128채널의 FFT 채널을 사용하였다. 무선 채널 상에서의 잡음은 AWGN으로 계산하였다.

\(\begin{aligned}A W G N=\frac{1}{2} \operatorname{erfc}\left(\sqrt{E_{b} / N_{0}}\right)\end{aligned}\)       (7)

Ⅴ. 실험 및 결과

실험에서는 512×512의 크기를 갖는 8-bit Gray 레벨의 LENA 영상과 BARBARA 영상을 사용하였다. 리프팅 변환 계수는 식(6)에 의해 분해 레벨이 정해진다. 먼저 영상을 0.5bpp로 압축한 후 제안된 error-resilient SPIHT 알고리즘을 이용하여 S=1, S=4, S=16의 부 집합으로 분해하여 SPIHT 압축을 실행하였다. 분해 과정에서 식(6)을 사용하면 최대 S = 256까지 부 집합을 생성할 수 있다. S = 1인 경우 부 집합은 512×512 크기를 갖는 한 개의 부집합이 생성되며, S = 4인 경우 256×256 크기를 갖는 4개의 부집합이 생성된다. S=16인 경우 128×128 크기를 갖는 16개의 부 집합이 생성되게 된다. 압축과정은 각각의 부 집합별로 압축되며 압축 후 인터리빙 과정을 거쳐 전송되어질 하나의 비트열로 재조합 되어진다. 압축 과정을 거친 데이터들은 Eb/N0를 10dB인 AWGN 환경의 OFDM 시스템을 통해 압축 영상을 전송하고, 수신 후 영상을 재구성하게 된다. S = 1인 경우는 부 집합이 1개인 경우이기 때문에 error-resilient 알고리즘을 사용하지 않은 경우이다. 그림 9는 3-level로 분해된 리프팅 구조가 S = 4인 부 집합으로 분해되는 구조를 보여주고 있다. S의 값이 커질수록 채널 상에서 나타나는 오류들은 각각의 부 집합으로 퍼지게 되어 전체 변환계수 영역에 영향을 적게 미치게 된다. 그림 10와 그림 11에서 나타난 결과처럼 부 집합을 많이 나눌수록 동일한 압축률에서 보다 우수한 성능을 얻을 수 있다. 표 1은 LENA 영상과 BARBARA 영상을 가지고 실험한 결과의 PSNR을 나타내고 있다. Error-resilient 알고리즘을 적용한 경우 전송되는 비트열은 채널의 오류에 의해 발생되는 부호화와 복호화 사이에의 동기화 문제에 대해 강인하기 때문에 우수한 성능을 얻을 수 있다.

OTNBBE_2023_v23n1_37_f0008.png 이미지

그림 9. 부 집합들로 분해된 트리구조 (S=4)

Fig. 9. Structure with sub-set distributed tree scheme(S=4)

OTNBBE_2023_v23n1_37_f0009.png 이미지

그림 10. 1.0 bpp로 부호화된 LENA 영상

Fig. 10. Encoded LENA image at 1.0 bpp

OTNBBE_2023_v23n1_37_f0010.png 이미지

그림 11. 1.0 bpp로 부호화된 BARBARA 영상

Fig. 11. Encoded BARBARA image at 1.0 bpp

표 1. 실험 결과 (Eb/No) = 10dB)

OTNBBE_2023_v23n1_37_t0001.png 이미지

Table 1. Experimental result (Eb/No) = 10dB)

Ⅵ. 결론

압축된 정지영상이나 비디오 영상의 압축된 비트스트림은 무선 채널환경으로부터 발생하는 에러로부터 보호되어져야한다. EZW, SPIHT는 적은 복잡도를 가지고 높은 성능을 얻을 수 있는 웨이브렛 변환 계수를 이용한 대표적인 영상 압축 방식이지만 가변길이 코드워드를 사용하기 때문에 비트 에러에 매우 민감한 단점을 가지고 있다. 무선 채널의 전송상의 문제로 인해 비트 에러가 발생하게 되면 부호화와 복호화 사이의 동기를 잃어버리게 되어 심각한 성능의 저하를 일으키게 된다. 이러한 문제를 해결하기 위하여 본 논문에서는 리프팅 변환된 계수를 여러 개의 부 집합으로 분리하여 각각 부호화하고 부호화 된 결과는 인터리빙 과정을 거치게 된다. 따라서 채널 상에서 발생하는 오류들이 부 집합에 의해 분리됨으로써 부호화와 복호화 사이에서에 동기화를 완전히 잃어 버리는 문제를 해결할 수 있게 되어 전송 과정에 오류에도 불구하고 좋은 성능의 영상을 얻을 수 있다.

References

  1. W. Swelden, "The lifting scheme: A new philosophy in bi-orthogonal wavelet construction", Proc. SPIE, Vol. 5, pp. 68-79, 1995. https://doi.org/10.1117/12.217619
  2. Said and W. A. Pearlman, "A new fast and efficient image codec based on set partitioning in hierarchical trees," IEEE Trans. Circuits Sys. Video Technol., Vol. 6, pp. 243-250, June 1996. https://doi.org/10.1109/76.499834
  3. I. Daubechies and W. Sweldens, "Factoring wavelet transforms into lifting steps", J. Fourier Anal. Applicat., Vol. 4, pp. 247-269, 1998. https://doi.org/10.1007/BF02476026
  4. C. D. Creusere, "A new method of robust image compression based on the embedded zerotree wavelet algorithm", IEEE Trans. Image Processing, Vol. 6, pp. 1536-1442, Oct. 1997.
  5. C. W. Yap and K. N. Ngan, "Error resilient transmission of SPIHT coded images over fading channels," IEE proc.-vis Image Signal Process, Vol. 148, No. 1, Feb. 2001.
  6. Sungdae Cho and W. A. Pearlman, "A Full-Featured, Error-Resilient, Scalable Wavelet Video Codec Based on the Set Partitioning in Hierarchical Tree(SPIHT) Algorithm," IEEE Transactions on circuits and Systems for video technology, Vol. 12, No. 3, March. 2002.
  7. Lin Luo, Yunnanjin Li and Ya-Qin Zhang, "3-D Wavelet Compression and Progressive Inverse Wavelet Synthesis Rendering of Concentric Mosaic," IEEE Trans. Image Processing, Vol. 11, pp. 802-816, July 2002. https://doi.org/10.1109/TIP.2002.801942
  8. R. Boujeibene, Y. Jemaa and M. Zribi, "An efficient codec for image compression based on spline wavelet transform and improved SPIHT algorithm," IEEE 2017 International Conference on High Performance Computing & Simulation, 2017.
  9. Joong-Hee Lim, Jong-Hong Shin and Inn-Ho Jee, "Improvement of double density discrete wavelet transform with enhancement of directional selectivity," The Institute of Internet, Broadcasting and Communication, Vol. 12, No. 2, pp 221-232, April 2012. DOI: http:vdx.doi.org/lO.7236/JIWIT.2012.12.2.221 https://doi.org/10.7236/JIWIT.2012.12.2.221
  10. Jong-Yong Lee,, "Performance comparison between hierarchical routing protocols applying new performance evaluation items," The Institute of Internet, Broadcasting and Communication, Vol. 20, No. 4, pp. 51-57, Aug. 31, 2020. DOI: https//doi.org/10.7236/JIIBC.2020.4.51