Document 7483703

Download Report

Transcript Document 7483703

Telematics/Network Engineering Experimental study on scan order and motion compensation in lossless video coding

Scan order and motion compensation in lossless coding

Team

School of Telematics and Network Engineering Carinthia Tech Institute, Austria Team of students: Stefan A. Kramatsch Agnes Gruber, Alexander Krapesch, Stefan Matschitsch, Thomas Mayerdorfer, Stefan Miedl, Stefan Moser, Martin Tschinder, Stefan Zorn-Pauli Project leader Dr. Andreas Uhl Head of School Dr. Herbert Stögner

Motivation Basics Realization Results Conclusion

Presentation Outline

Structure

Motivation

Project goals

Semester Project in Compression Techniques 2 Alternative way to view videos Make data compression more concrete Experience usage of programming languages in picture processing

Basics(1)

Lossless video coding

Mainly used in medical applications – required by legal regulation JPEG, JPEG-LS, lossless JPEG 2000 on per-frame basis Temporal redundancy ignored

no motion compensation

limited compression performance

Basics(2)

Classical view of video data

Basics(3)

Classical view of video data

Temporally ordered still images Frames are similar

basis for motion compensated hybrid coding

basis for application of 3D video techniques Possible to form a 3D block of video data

Basics(4)

Different views on the video block

Horizontal View

Normal view

Basics(5)

Different views on the video block

Horizontal view Vertical view Frame 40 Frame 112 Frame 112

Basics(6)

Scan order

Basics(7)

Streams – stream compression

File seen as a stream of gray values Written to a .txt file File compressors used: - Arithmetical coder - Runlength Encoding (RLE) - Huffman Coding

Basics(8)

Motion compensation – Block matching

Scene divided into non overlapping “block“ regions Compare blocks (current <-> reference frame)

motion vector for each block “Best“ match based on mean square error

Stored as prediction Current frame – prediction = residual frame

to be compressed

Common for lossy compression

Basics(9)

Motion compensation – Block matching

Usage in lossless coding Normally temporal based

now spatially Horizontal View Reference Frame 1 Residual Frame 40 Vertical View Frame 112 non BM and BM Frame 112 non BM and BM

Realization(1)

Implementation

Input: all frames of a video (in .pgm format) Build the 3D video block

Cut normally, vertically and horizontally

With or without blockmatching

Frame based or stream based computing Implemented in c++

Realization(2)

Implementation of block matching

Matlab application Based on one reference frame

all remaining: residual frames Searchwindow 32x32 Pixels Blocksize 16x16 Pixels Similar Block search based on Root Mean Square

Realization(3)

Lossless frame compression

JPEG 2000 Lossless mode Java Implementation: JJ2000 ( http://jj2000.epfl.ch

) Standard options except:

Lossless Mode (“ –lossless on “)

Cancel console output (“ –verbose off “)

Realization(4)

Testvideos (Spatial x Temporal resolution)

Akiyo (176 x 144 x 300) – low movement Carphone (176 x 144 x 383) – high movement Claire (176 x 144 x 494) – low movement Football (720 x 486 x 60) – high movement Foreman (176 x 144 x 49) – high movement Grandma (176 x 144 x 871) – low movement Mobile (720 x 576 x 40) – high movement Mother and Daughter (176 x 144 x 962) – low movement Salesman (176 x 144 x 449) – low movement

Results

Compression Ratio Low movement High Movement Stream

Conclusion(1)

Without Blockmatching

Improved frame based compression by alternative views Exploitation of spatial instead of temporal redundancies through alternative scan order Little computational demand compared to BM Increased memory demand and coding delay Stream compression has little effect

Conclusion(2)

With Blockmatching

The increase of compression ratio does not justify the usage of BM algorithms in case of alternative views Superior results for 1D based compression algorithms

Telematics/Network Engineering

Thank you for your attention!