ASSIGNMENT: Practical Development and Implementation of a Simple (Two View) WynerZiv/Slepian-Wolf Codec)
Found two promising efforts to build on:

1. Discover Codec Project 2. MPEG-2 MATLAB Project I actually found the second one first because it is a C/matlab codec project. The other one is a mono-view Wyner-Ziv codec that I thought should be easy to convert to a 2 view codec.

1. DISCOVER Codec Project Authors: Huisheng X. Artigas1, J. Ascenso2, M. Dalai3, S. Klomp4, D. Kubasov5, M. Ouaret6
1Technical 4Leibniz

University of Catalonia, 2Instituto Superior Técnico, 3University of Brescia, Universität Hannover, 5INRIA Rennes, 6Ecole Polytechnique Fédérale de Lausanne

The Project: Discover is acronym for: Distributed Coding for Video Services a European project that ran for two years. The discover codec is based on another codec, the H264 codec which is the reference codec software held by the joint video team of MPEG and ITU-T. It is written in Microsoft Visual basic.

The Technicalities:  Distributed Video Coding is a new video coding paradigm based on W-Z and S-W information theoretic results.  The architecture is based on that proposed by Bernd Girod’s group PRISM codec.  It is a Mono-view W-Z codec, they claimed to have developed a multiview one but is not made publicly available.  Simple encoding phase as seen from the architecture block diagram below comprises blocks 1-3.  The incoming sequences is split into two, 1st part known as key frames is encoded by the conventional H264 encoder in intra mode.  The remaining is encoded in distributed mode (W-Z) coding by generating syndrome bits (which are coefficients of block based transform) that are stored in a buffer. They are sent to the decoder progressively when requested. A minimum number which is first transmitted to decoder is calculated by encoder to avoid delay at decoder and more bits are sent on request.  The decoding is more complex due to the fact that temporal correlation is exploited at the decoder by motion estimation. The key frames are decoded by the H264 decoder which is used to construct the so-called SI which is an estimate of the original W-Z frames got by motion compensation between two sequential frames. The difference between the W-Z and SI is considered to be correlation noise (WZ-SI)  The inverse transform of the block based transform is then used at block 7 to get estimated coefficients taking into account the channel noise. Block 8 does the W-Z decoding and iterates to ask for more coefficients from the buffer until decoding is successful.  The decoded sequence is obtained by conveniently multiplexing the decoded key frames and W-Z frames.

Experiments and results reported by Discover:  Experiments are performed using QCIF, YUV sequences. The “foreman” and Hall &Monitor sequences results are published.  Rate and distortion results refer to luminance.  Result comparism is made with low complexity codecs such as H263+ and H264 both in intra modes.  Many papers and conferences presentations have been published based on the discover codec. My Results – What I have done so far  Been able to acquire the foreman sequence and run the WZ discover codec using this sequence in QCIF, YUV mode.  I have tried other formats CIF, YUV mode that is also supported by the Discover codec.  I have tried to introduce my own video sequence which is the Dance sequence view1 of the multi-view sequence that I have acquired and converted to the QCIF, YUV format 

Objective/Comments/Conclusion  I need to get the codes to work with other sequences.  I need to find a way to move on to multi-view (at first 2 views) and exploit the correlation between views.  Future further work is proposed to try out the MPEG-2 codec to see how it compares with the WZ discover codec.  A lot of groundwork on probably getting the raw Visual Basic codes may be necessary to be able to adjust them.  A matlab implementation of the codes should be tried, I realize that most of the codes are been parsed through matlab to allow for plots and comparism.

Sign up to vote on this title
UsefulNot useful