Binary Arithmetic Coding System with Adaptive Probability Estimation by "Virtual Sliding Window"
Evgeny Belyaev, M. R. Gilmutdinov, Andrey M. Turlikov · 2006
Virtual Sliding Window" algorithm presented in this paper is an adaptive mechanism for estimating the probability of ones at the output of binary non-stationary sources. It is based on "Imaginary sliding window" idea proposed by B. Ryabko. The proposed algorithm was used as an alternative adaptation mechanism in Context-Based Adaptive Binary Arithmetic Coding (CABAC) - an entropy coding scheme of H.264/AVC standard for video compression. The "virtual sliding window" algorithm was integrated into an open-source codec supporting H. 264/AVC standard. Comparison of the "virtual sliding window" algorithm with the original adaptation mechanism from CABAC is presented. Test results for standard video sequences are included. These results indicate that using the proposed algorithm improves rate-distortion performance compared to the original CABAC adaptation mechanism. Besides improvement in rate-distortion performances the "Virtual Sliding Window" algorithm has one more advantage. CABAC uses a finite state machine (FSM) for estimation of the probability of ones at the output of a binary source. Transitions for FSM are defined by a table stored in memory. The disadvantage of CABAC consists in frequent reference to this table (one time for every binary symbol encoding), which is critical for DSP implementation. The "Virtual Sliding Window" algorithm allows to avoid using the table of transitions 1.