This course introduces the most important concepts and algorithms that are used in modern image and video coding approaches. We will particularly focus on techniques that are found in current international video coding standards.
In a short first part, we introduce the so-called raw data formats, which are used as input and output formats of image and video codecs. This part covers the following topics:
Colour spaces and their relation to human visual perception
Transfer functions (gamma encoding)
Why do we use the YCbCr format?
The second part of the course deals with still image coding and includes the following topics:
The start: How does JPEG work?
Why do we use the Discrete Cosine Transform?
Efficient coding of transform coefficients
Prediction of image blocks
Adaptive block partitioning
How do we take decisions in an encoder?
In the third part, we discuss approaches that make video coding much more efficient than coding all pictures using still image coding techniques:
Coding of motion vectors
Algorithms for motion estimation
Sub-sample accurate motion vectors and interpolation filters
Usage of multiple reference pictures
What are B pictures and why do we use them?
Deblocking and deringing filters
Efficient temporal coding structures
In the exercises, we will implement our own image codec (in a gradual manner). We may extend it to a simple video codec.
Bull, D. R., “Communicating Pictures: A Course in Image and Video Coding,” Elsevier, 2014.
Ohm, J.-R., “Multimedia Signal Coding and Transmission,” Springer, 2015.
Wien, M., “High Efficiency Video Coding — Coding Tools and Specifications,” Springer 2014.
Sze, V., Budagavi, M., and Sullivan, G. J. (eds.), “High Efficiency Video Coding (HEVC): Algorithm and Architectures,” Springer, 2014.
Schwarz, H. and Wiegand, T., “Video Coding: Part II of Fundamentals of Source and Video Coding,” Foundations and Trends in Signal Processing, Now Publishers, vol. 10, no. 1–3, 2016.
T9/SR 006 Seminarraum
wöchentlich, ab 14.04.2020, 16:00 - 18:00 (14 Termine)