Low complexity H.264 list decoder for enhanced quality real-time video over IP

Similar documents
Laboratoire d'informatique, de Robotique et de Microélectronique de Montpellier Montpellier Cedex 5 France

Scalable Extension of HEVC 한종기

H.264 Video Transmission with High Quality and Low Bitrate over Wireless Network

Module 6 STILL IMAGE COMPRESSION STANDARDS

MPEG-4: Simple Profile (SP)

ERROR-ROBUST INTER/INTRA MACROBLOCK MODE SELECTION USING ISOLATED REGIONS

THE H.264 ADVANCED VIDEO COMPRESSION STANDARD

streams cannot be decoded properly, which would severely affect the quality of reconstructed video. Therefore, error resilience is utilized to solve

Lecture 5: Error Resilience & Scalability

Robust Error Detection Methods for H.264/AVC Videos

Rate-Distortion Optimized Layered Coding with Unequal Error Protection for Robust Internet Video

Advanced Video Coding: The new H.264 video compression standard

Scalable video coding with robust mode selection

Xiaoqing Zhu, Sangeun Han and Bernd Girod Information Systems Laboratory Department of Electrical Engineering Stanford University

Optimal Estimation for Error Concealment in Scalable Video Coding

High Efficient Intra Coding Algorithm for H.265/HVC

ESTIMATION OF THE UTILITIES OF THE NAL UNITS IN H.264/AVC SCALABLE VIDEO BITSTREAMS. Bin Zhang, Mathias Wien and Jens-Rainer Ohm

VIDEO COMPRESSION STANDARDS

Unit-level Optimization for SVC Extractor

Fast Decision of Block size, Prediction Mode and Intra Block for H.264 Intra Prediction EE Gaurav Hansda

PREFACE...XIII ACKNOWLEDGEMENTS...XV

Error Concealment Used for P-Frame on Video Stream over the Internet

IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, VOL. 19, NO. 9, SEPTEMBER

An Unequal Packet Loss Protection Scheme for H.264/AVC Video Transmission

CAMED: Complexity Adaptive Motion Estimation & Mode Decision for H.264 Video

Complexity Reduced Mode Selection of H.264/AVC Intra Coding

4G WIRELESS VIDEO COMMUNICATIONS

SMART: An Efficient, Scalable and Robust Streaming Video System

Recommended Readings

1480 IEEE TRANSACTIONS ON MULTIMEDIA, VOL. 14, NO. 5, OCTOBER 2012

LIST OF TABLES. Table 5.1 Specification of mapping of idx to cij for zig-zag scan 46. Table 5.2 Macroblock types 46

ADAPTIVE JOINT H.263-CHANNEL CODING FOR MEMORYLESS BINARY CHANNELS

Digital Video Processing

No-reference perceptual quality metric for H.264/AVC encoded video. Maria Paula Queluz

VHDL Implementation of H.264 Video Coding Standard

Fast Mode Decision for H.264/AVC Using Mode Prediction

Objective: Introduction: To: Dr. K. R. Rao. From: Kaustubh V. Dhonsale (UTA id: ) Date: 04/24/2012

Frequency Band Coding Mode Selection for Key Frames of Wyner-Ziv Video Coding

The VC-1 and H.264 Video Compression Standards for Broadband Video Services

Development of reliable protocol Sliding window protocols. C = channel capacity in bps I = interrupt/service time + propagation delay

Jimin Xiao, Tammam Tillo, Senior Member, IEEE, Yao Zhao, Senior Member, IEEE

A Novel Deblocking Filter Algorithm In H.264 for Real Time Implementation

Combined Copyright Protection and Error Detection Scheme for H.264/AVC

Evaluation of H.264/AVC Coding Elements and New Improved Scalability/Adaptation Algorithm/Methods

Experimental Evaluation of H.264/Multiview Video Coding over IP Networks

High Efficiency Video Coding. Li Li 2016/10/18

Error Control Techniques for Interactive Low-bit Rate Video Transmission over the Internet.

Standard-Compliant Enhancements of JVT Coded Video for Transmission over Fixed and Wireless IP

FAST: A Framework to Accelerate Super- Resolution Processing on Compressed Videos

FAST SPATIAL LAYER MODE DECISION BASED ON TEMPORAL LEVELS IN H.264/AVC SCALABLE EXTENSION

A LOW-COMPLEXITY AND LOSSLESS REFERENCE FRAME ENCODER ALGORITHM FOR VIDEO CODING

Development and optimization of coding algorithms for mobile 3DTV. Gerhard Tech Heribert Brust Karsten Müller Anil Aksay Done Bugdayci

Introduction to Video Encoding

Stereo DVB-H Broadcasting System with Error Resilient Tools

Reduced Frame Quantization in Video Coding

BANDWIDTH REDUCTION SCHEMES FOR MPEG-2 TO H.264 TRANSCODER DESIGN

Professor, CSE Department, Nirma University, Ahmedabad, India

Congestion Resiliency of Data Partitioned H.264/AVC Video over Wireless Networks

Complexity Reduction Tools for MPEG-2 to H.264 Video Transcoding

The new Hybrid approach to protect MPEG-2 video header

Distributed Video Coding

Congestion Resiliency of Data Partitioned H.264/AVC Video over Wireless Networks

Investigation of the GoP Structure for H.26L Video Streams

CONTENT ADAPTIVE COMPLEXITY REDUCTION SCHEME FOR QUALITY/FIDELITY SCALABLE HEVC

SINGLE PASS DEPENDENT BIT ALLOCATION FOR SPATIAL SCALABILITY CODING OF H.264/SVC

Fast HEVC Intra Mode Decision Based on Edge Detection and SATD Costs Classification

Upcoming Video Standards. Madhukar Budagavi, Ph.D. DSPS R&D Center, Dallas Texas Instruments Inc.

Coding for the Network: Scalable and Multiple description coding Marco Cagnazzo

SNR Scalable Transcoding for Video over Wireless Channels

An Efficient Saliency Based Lossless Video Compression Based On Block-By-Block Basis Method

The Scope of Picture and Video Coding Standardization

JPEG 2000 vs. JPEG in MPEG Encoding

An Optimized Template Matching Approach to Intra Coding in Video/Image Compression

Video Transcoding Architectures and Techniques: An Overview. IEEE Signal Processing Magazine March 2003 Present by Chen-hsiu Huang

CODING METHOD FOR EMBEDDING AUDIO IN VIDEO STREAM. Harri Sorokin, Jari Koivusaari, Moncef Gabbouj, and Jarmo Takala

A Quantized Transform-Domain Motion Estimation Technique for H.264 Secondary SP-frames

Multimedia networked applications: standards, protocols and research trends

Efficient MPEG-2 to H.264/AVC Intra Transcoding in Transform-domain

SIGNAL COMPRESSION. 9. Lossy image compression: SPIHT and S+P

Deblocking Filter Algorithm with Low Complexity for H.264 Video Coding

Tampering Detection in Compressed Digital Video Using Watermarking

AN ADAPTIVE ERROR CONCEALMENT MECHANISM FOR H.264/AVC ENCODED LOW-RESOLUTION VIDEO STREAMING

Crash Course in Wireless Video

Compressed-Domain Video Processing and Transcoding

Motion Vector Coding Algorithm Based on Adaptive Template Matching

Error resilient packet switched H.264 video telephony over third generation networks

International Journal of Emerging Technology and Advanced Engineering Website: (ISSN , Volume 2, Issue 4, April 2012)

EFFICIENT PU MODE DECISION AND MOTION ESTIMATION FOR H.264/AVC TO HEVC TRANSCODER

Jointly Optimized Transform Domain Temporal Prediction (TDTP) and Sub-pixel Interpolation

MOTION ESTIMATION AT THE DECODER USING MAXIMUM LIKELIHOOD TECHNIQUES FOR DISTRIBUTED VIDEO CODING. Ivy H. Tseng and Antonio Ortega

Robust IP and UDP-lite header recovery for packetized multimedia transmission

Coding of Coefficients of two-dimensional non-separable Adaptive Wiener Interpolation Filter

Zonal MPEG-2. Cheng-Hsiung Hsieh *, Chen-Wei Fu and Wei-Lung Hung

Optimum Quantization Parameters for Mode Decision in Scalable Extension of H.264/AVC Video Codec

H.264/AVC Baseline Profile to MPEG-4 Visual Simple Profile Transcoding to Reduce the Spatial Resolution

ON THE PERFORMANCE OF H.264/MVC OVER LOSSY IP-BASED NETWORKS

A DYNAMIC MOTION VECTOR REFERENCING SCHEME FOR VIDEO CODING. Jingning Han, Yaowu Xu, and James Bankoski

CMPT 365 Multimedia Systems. Media Compression - Video

A High Quality/Low Computational Cost Technique for Block Matching Motion Estimation

An Efficient Table Prediction Scheme for CAVLC

Transcription:

Low complexity H.264 list decoder for enhanced quality real-time video over IP F. Golaghazadeh1, S. Coulombe1, F-X Coudoux2, P. Corlay2 1 École de technologie supérieure 2 Université de Valenciennes CCECE 2017

Outline q Introduction q Problem statement q Literature review q Proposed approach q Experimental setup and results q Conclusions 2

Problem statement Unreliable Channels Transmission Errors Visual Quality Degradation ØCorrupted Video Packets (bit errors) (e.g. attenuation, multi-path fading) ØLost Video Packets (e.g. network congestion) v Compressed video streams are very vulnerable to errors Motion-compensated prediction process Time Error propagation in compressed video! 3

Literature review Video source Video Encoder Error Resilience 00111010110 Unreliable channel Reconstructed sequence Error Concealment Video Decoder 00111010100 Error Correction Intact packets 00111010110 00101110100 Damaged packets 4

q Error Concealment: Literature review Estimates missing pixels by using Spatial correlation [1] Temporal correlation [2] Both spatial and temporal correlation Ø - spatio-temporal boundary matching and partial differential equation (STBMA) [3] Partially damaged packets may contain valuable information [4] [1] J. Liu, et al., Spatial error concealment with an adaptive linear predictor, 2015. [2] J. Zhou, et al., Efficient motion vector interpolation for error concealment of H.264/AVC, 2011. [3] Y. Chen, et al., Video error concealment using spatio-temporal boundary matching and partial differential equation, 2008. [4] L. Superiori, et al., Performance of a H.264/AVC error detection algorithm based on syntax analysis, 2006. 5

Literature review q Error Correction: List decoding n bits corrupted slice (S R ) candidate slice1 (S 1 ) candidate slice2 (S 2 ) ranked based on Channel soft information candidate generator candidate slice3 (S 3 )... video decoder (validator) Complex!? N=2 n candidate slicen (S N ) H :solution space Other Constraints likeliest slice (S* ) [5] D. Levine, et al., Iterative joint source-channel Decoding of H.264 compressed video, 2007. [6] N. Nguyen, et al., Iterative joint source- channel decoding for H.264 video transmission using virtual checking method at source decoder, 2010. [7] G. Sabeva, et al., Robust decoding of H.264 encoded video transmitted over wireless channels, 2006. [8] C. Weidmann, et al., Combined sequential decoding and error concealment of H.264 Video, 2004. [9] R. A. Farrugia, et al., Robust decoder-based error control strategy for recovery of H.264/AVC video content, 2011. 6

Literature review q Error Correction: Syntax Level Soft/Hard Output Maximum Likelihood Decoding (SO/HO-MLD) [10] Generate only a set of valid candidates at the correction process of each syntax element Any mistake in the decoding of a syntax element will propagate and reduce the performance Lack of access to the soft information in the application layer (complex to implement) [10] F. Caron, et al., Video error correction using soft-output and hard-output maximum likelihood decoding applied to an H.264 baseline profile, 2015. 7

Proposed approach Ø Reduction candidate list by analyzing the calculated UDP checksum value at the receiver side. Checksum: verify the integrity of the delivered message UDP checksum: one s complement of the one s complement sum of a pseudo UDP header, UDP header and application data message. byte 0 1 2 3 4 Pseudo UDP header Source IP Address Destination IP Address Zero Protocol UDP Length UDP header Source Port Num Length Destination Port Num UDP Checksum Data (variable length) 8

TRANSMISSION Bit Position Proposed approach 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Packet 1 0 0 1 0 0 1 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 Bit Position 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Second 16-bit word 0 0 1 0 0 1 1 0 1 1 0 1 0 0 0 1 First 16-bit word 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 Ones's compl. Sum 1 1 1 1 0 0 1 1 0 1 1 0 1 0 0 1 Checksum (C T ) 0 0 0 0 1 1 0 0 1 0 0 1 0 1 1 0 UDP checksum calculation: C T m -1 = åw i = 0 i Ø Divide the packet into chunks of 16-bit words. Ø Compute one s complement sum over all the words. 16-bit word Ø Flip all the bits of the final sum (one s complement). 9

RECEPTION Bit Position Proposed approach 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Packet 1 0 0 1 0 0 1 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 Bit Position 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Second 16-bit word 0 0 1 0 0 1 1 0 1 1 0 1 0 0 0 1 First 16-bit word 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 Ones's compl. Sum 1 1 1 1 0 0 1 1 0 1 1 0 1 0 0 1 Checksum (C T ) 0 0 0 0 1 1 0 0 1 0 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Checksum(C R ) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 The zero value of C R validates the received packet. C R m -1 = W + Cµ å i = 0 i T If no error: m-1 m -1 m-1 = W + W = ( W + W i ) å i i i i= 0 i = 0 i= 0 = FFFF = å 0000 å the received versions of W i and C T are denoted as W i and C µ T 10

TRANSMISSION Bit Position 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Packet 1 0 0 1 0 0 1 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 RECEPTION Bit Position Proposed approach Corrupted 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Packet 1 0 0 1 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 Bit Position 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Second 16-bit word 0 0 1 0 0 0 1 0 1 1 0 1 0 0 0 1 First 16-bit word 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 Ones's compl. sum 1 1 1 1 0 1 1 1 0 1 1 0 1 0 0 1 C T 0 0 0 0 1 1 0 0 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 Checksum(C R ) 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 Non-zero value of C R : received packet is corrupted. The checksum is indication the position of the error in modulo 16. 11

Proposed approach Error Type C R 1 j 0 j 000... 010... 000 0 j 1 j Col. 15 j 0 111... 101... 111 C R Patterns 1000 0000 0000 0000 0100 0000 0000 0000 0000. 0000 0000 0001 0111 1111 1111 1111 1011 1111 1111 1111. 1111 1111 1111 1110 The C R pattern : - potential error columns in the words - type of the flipped bits 12

Candidate Reduction One bit in error in a packet of N bits: Traditional list decoding approaches: N candidates proposed approaches: N /32 candidates. 97% reduction remaining candidates: about 3% Packet length (bits) Average number of candidates List Decoding Proposed Eliminated candidates 272 272 9 97% 768 768 24 97% 1120 1120 35 97% 5280 5280 165 97% 13

v Coding Parameters: Simulation setup - Baseline profile of H.264 (simulator: JM software v.18.5) - First 60 Frames of sequence: Foreman (352x288), Crew (704x576), Opening Ceremony, Walk (720x576). - Coded in IPPP format, Intra refresh rate of 30 frames, quantization parameters (QPs): 22, 27, 32, and 37 - Each slice (= a single row of MBs), encapsulated into RTP packets. - UDP checksum calculated on RTP packet IP UDP RTP NAL Slice v Corrupted frame: 31 th -59 th randomly v Channel bit error rate (BER): [10-7, 10-6 ]: one bit error v Decoding Options : Error Concealment: Error Correction: Frame Copy (FC-JM) Spatio Temporal Boundary Matching (STBMA) Maximum likelihood Decoding (HO-MLD) Proposed List Decoding (Proposed) 14

Seq: Crew, QP 27 100 90 80 Percentage of Perfectly Corrected Packet Percentage 60 40 20 0 32 34 36 38 40 42 44 46 48 50 52 Frame number 95% very close PSNR to the intact one. 100 90 Intact FC-JM Frequency 80 70 60 50 40 STBMA MLD-hard Proposed histogram with 0.1 step size 30 20 10 0 34.8 35.2 35.6 36 36.4 36.8 37.2 37.6 38 38.4 PSNR values 15

Seq: Crew, QP 27 Average PSNR (db) 38.6 38.4 38.2 38 37.8 37.6 37.4 37.2 37 36.8 Intact Proposed STBMA HO-MLD JM-FC 32 34 36 38 40 42 44 46 48 50 52 Frame number Average: 38.49 38.44 38.05 37.92 37.22 16

PSNR gain over JM-FC Average PSNR gain (db) over JM-FC 5 4 3 2 1 0.5 0 =1.31(dB) =1.51(dB) 2.78 (db) 1.47(dB) 1.27(dB) Proposed STBMA HO-MLD 22 27 32 37 QP values Ø Percentage of fully correcting bitstream: Proposed approach: 80% HO-MLD approach: 6% 17

Visual quality comparison JM-FC STBMA Intact HO-MLD Proposed 18

Visual quality comparison JM-FC STBMA Intact HO-MLD Proposed 19

Conclusions One bit in error: Candidate reduction from N to N/32; Complexity reduction : 97% On average: 2.78 db gains over JM-FC 80% fully corrected packet q Future step: The proposed approach can also be applied on HEVC coded sequences, and it can be extended to the case of more than one bit in error [1]. [1] F. Golaghazadeh,, et al., Checksum-filtered list decoding applied to H.264 and H.265 video error correction, 2017. 20

Questions This research was funded by The Natural Science And Engineering Research Council of Canada 21