ECE3296 Digital Image and Video Processing Lab experiment 2 Digital Video Processing using MATLAB

Similar documents
Chapter 10 Basic Video Compression Techniques

An Overview of Video Coding Algorithms

AUDIOVISUAL COMMUNICATION

COMP 249 Advanced Distributed Systems Multimedia Networking. Video Compression Standards

Using enhancement data to deinterlace 1080i HDTV

Lecture 1: Introduction & Image and Video Coding Techniques (I)

FRAME RATE CONVERSION OF INTERLACED VIDEO

Film Sequence Detection and Removal in DTV Format and Standards Conversion

AN IMPROVED ERROR CONCEALMENT STRATEGY DRIVEN BY SCENE MOTION PROPERTIES FOR H.264/AVC DECODERS

Video Surveillance *

MULTI-STATE VIDEO CODING WITH SIDE INFORMATION. Sila Ekmekci Flierl, Thomas Sikora

Rounding Considerations SDTV-HDTV YCbCr Transforms 4:4:4 to 4:2:2 YCbCr Conversion

Table of content. Table of content Introduction Concepts Hardware setup...4

Module 1: Digital Video Signal Processing Lecture 5: Color coordinates and chromonance subsampling. The Lecture Contains:

A Novel Approach towards Video Compression for Mobile Internet using Transform Domain Technique

The Lecture Contains: Frequency Response of the Human Visual System: Temporal Vision: Consequences of persistence of vision: Objectives_template

Impact of scan conversion methods on the performance of scalable. video coding. E. Dubois, N. Baaziz and M. Matta. INRS-Telecommunications

Communication Theory and Engineering

N T I. Introduction. II. Proposed Adaptive CTI Algorithm. III. Experimental Results. IV. Conclusion. Seo Jeong-Hoon

SCode V3.5.1 (SP-601 and MP-6010) Digital Video Network Surveillance System

MPEGTool: An X Window Based MPEG Encoder and Statistics Tool 1

Visual Communication at Limited Colour Display Capability

Lecture 2 Video Formation and Representation

Video coding standards

06 Video. Multimedia Systems. Video Standards, Compression, Post Production

Video compression principles. Color Space Conversion. Sub-sampling of Chrominance Information. Video: moving pictures and the terms frame and

Video Transmission. Thomas Wiegand: Digital Image Communication Video Transmission 1. Transmission of Hybrid Coded Video. Channel Encoder.

ECE438 - Laboratory 4: Sampling and Reconstruction of Continuous-Time Signals

S-Series Server Setup Quiz

An Efficient Low Bit-Rate Video-Coding Algorithm Focusing on Moving Regions

How Does H.264 Work? SALIENT SYSTEMS WHITE PAPER. Understanding video compression with a focus on H.264

Audio and Video II. Video signal +Color systems Motion estimation Video compression standards +H.261 +MPEG-1, MPEG-2, MPEG-4, MPEG- 7, and MPEG-21

Multimedia Communications. Video compression

Module 4: Video Sampling Rate Conversion Lecture 25: Scan rate doubling, Standards conversion. The Lecture Contains: Algorithm 1: Algorithm 2:

1022 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 19, NO. 4, APRIL 2010

(Skip to step 11 if you are already familiar with connecting to the Tribot)

ERROR CONCEALMENT TECHNIQUES IN H.264 VIDEO TRANSMISSION OVER WIRELESS NETWORKS

Interlace and De-interlace Application on Video

Linrad On-Screen Controls K1JT

H.261: A Standard for VideoConferencing Applications. Nimrod Peleg Update: Nov. 2003

Contents. xv xxi xxiii xxiv. 1 Introduction 1 References 4

Wipe Scene Change Detection in Video Sequences

Ch. 1: Audio/Image/Video Fundamentals Multimedia Systems. School of Electrical Engineering and Computer Science Oregon State University

CHROMA CODING IN DISTRIBUTED VIDEO CODING

The H.263+ Video Coding Standard: Complexity and Performance

The Effect of Plate Deformable Mirror Actuator Grid Misalignment on the Compensation of Kolmogorov Turbulence

Research Article. ISSN (Print) *Corresponding author Shireen Fathima

Pre-processing of revolution speed data in ArtemiS SUITE 1

Multimedia Communications. Image and Video compression

Module 8 VIDEO CODING STANDARDS. Version 2 ECE IIT, Kharagpur

SCode V3.5.1 (SP-501 and MP-9200) Digital Video Network Surveillance System

FLEXIBLE SWITCHING AND EDITING OF MPEG-2 VIDEO BITSTREAMS

Selective Intra Prediction Mode Decision for H.264/AVC Encoders

Region Adaptive Unsharp Masking based DCT Interpolation for Efficient Video Intra Frame Up-sampling

DELTA MODULATION AND DPCM CODING OF COLOR SIGNALS

Session 1 Introduction to Data Acquisition and Real-Time Control

Adaptive Key Frame Selection for Efficient Video Coding

Chapter 2 Introduction to

Temporal Error Concealment Algorithm Using Adaptive Multi- Side Boundary Matching Principle

Spinner- an exercise in UI development. Spin a record Clicking

Transform Coding of Still Images

Motion Re-estimation for MPEG-2 to MPEG-4 Simple Profile Transcoding. Abstract. I. Introduction

Understanding Compression Technologies for HD and Megapixel Surveillance

CERIAS Tech Report Preprocessing and Postprocessing Techniques for Encoding Predictive Error Frames in Rate Scalable Video Codecs by E

Module 8 VIDEO CODING STANDARDS. Version 2 ECE IIT, Kharagpur

A few quick notes about the use of Spectran V2

Video 1 Video October 16, 2001

Television History. Date / Place E. Nemer - 1

MPEG-2. ISO/IEC (or ITU-T H.262)

Case Study: Can Video Quality Testing be Scripted?

Using Motion-Compensated Frame-Rate Conversion for the Correction of 3 : 2 Pulldown Artifacts in Video Sequences

Torsional vibration analysis in ArtemiS SUITE 1

Module 1: Digital Video Signal Processing Lecture 3: Characterisation of Video raster, Parameters of Analog TV systems, Signal bandwidth

Table of Contents. 2 Select camera-lens configuration Select camera and lens type Listbox: Select source image... 8

Video. Philco H3407C (circa 1958)

10 Digital TV Introduction Subsampling

WYNER-ZIV VIDEO CODING WITH LOW ENCODER COMPLEXITY

EECS150 - Digital Design Lecture 12 Project Description, Part 2

Overview: Video Coding Standards

SHOT DETECTION METHOD FOR LOW BIT-RATE VIDEO CODING

Lab 1 Introduction to the Software Development Environment and Signal Sampling

How to Optimize Ad-Detective

EMBEDDED ZEROTREE WAVELET CODING WITH JOINT HUFFMAN AND ARITHMETIC CODING

Syrah. Flux All 1rights reserved

Understanding PQR, DMOS, and PSNR Measurements

AMIQ-K2 Program for Transferring Various-Format I/Q Data to AMIQ. Products: AMIQ, SMIQ

Performance Evaluation of Error Resilience Techniques in H.264/AVC Standard

Spatio-temporal inaccuracies of video-based ultrasound images of the tongue

Rotation p. 55 Scale p. 56 3D Transforms p. 56 Warping p. 58 Expression Language p. 58 Filtering Algorithms p. 60 Basic Image Compositing p.

Lab Determining the Screen Resolution of a Computer

Principles of Video Compression

RedRat Control User Guide

Smart Coding Technology

A Matlab toolbox for. Characterisation Of Recorded Underwater Sound (CHORUS) USER S GUIDE

R&D White Paper WHP 085. The Rel : a perception-based measure of resolution. Research & Development BRITISH BROADCASTING CORPORATION.

The H.26L Video Coding Project

Format Conversion Design Challenges for Real-Time Software Implementations

Multimedia. Course Code (Fall 2017) Fundamental Concepts in Video

Midterm Review. Yao Wang Polytechnic University, Brooklyn, NY11201

VIDEO GRABBER. DisplayPort. User Manual

Transcription:

ECE3296 Digital Image and Video Processing Lab experiment 2 Digital Video Processing using MATLAB Objective i. To learn a simple method of video standards conversion. ii. To calculate and show frame difference which is widely used in video compression iii. To detect motion in video sequences. Equipment MATLAB software version R2009b. Introduction This lab experiment consists of three parts. In part 1, you will learn a method in video standards conversion which is called frame rate up-conversion. Video standards conversion is actually the task of converting digital video from one standard to another. This task is necessary as various digital video systems, ranging from all-digital-high-definition TV to videophone, have different spatio-temporal resolution requirements. This leads to the emergence of different format standards to store, transmit, and display digital video signals. Frame rate up-conversion increase the temporal sampling rate in progressive video. Examples of frame rate conversion include conversion from a digitized motion picture recorded with a temporal rate of 24 frames/sec to NTSC format, which requires 60 fields/sec. Example of product that uses frame rate up conversion is the Samsung 46" high-definition LCD TV with auto motion plus 120Hz technology. It virtually eliminates any motion blur and creates smooth transitions between frames. It basically calculates the image between frames and inserts it, creating a non-repetitive transition from one to the next. The result is a clearer picture especially during a slow motion video. In part 2 of the lab, you will calculate frame difference between the current frame and the previous frame of a video sequence. The frame difference can indicate the amount of motion present in the video. In the frame difference, the lighter pixels are those whose intensity has changed with respect to the previous frame due to motion. The frame difference is usually computed in the video compression using the modified original previous frame. The video compression methods usually employ a two step procedure to compress the video sequence. The first step involves prediction of the frame to be coded by using a motion compensation algorithm on the previous frame(s) which has been already coded (and is therefore available to the decoder). After subtracting the motion predicted frame from the frame to be coded, we are left with a residual image which is termed Displaced Frame Difference (DFD). The DFD is usually coded using a transform based technique. In part 3, you will use the Video and Image Processing Blockset to detect motion in video sequences using a method derived from the frame difference technique in part 2. The objective is to detect whether the current video shots have large motion or little motion. One application example is in a video surveillance camera system. The system will initiate alarm signal if awkward motion (such as thief snatching and running) is detected. Revised: January 2010 (Hezerul Abdul Karim), February 2011 (Sarina Mansor) 1

Lab Answer Sheet Name:.. Student ID:.. Major:.. Part 1: Frame rate up conversion a) Download image sequence foreman.qcif from the MATLAB server. b) Download file YUVviewer from the MATLAB server. c) Play the sequence using the YUVviewer. Frame size is QCIF. d) Type the command below at MATLAB editor or in notepad and save as readimg.m: Nx=176; %Vertical size of image% Ny=144; %Horizontal size of image% Nt=50; %No of frames in image sequence% A = zeros(ny,nx); fid=fopen('c:\foreman.qcif','r','b'); %Input image sequence% figure; for t=1:nt, A(:,:)=transpose(fread(fid,[Nx,Ny],'uint8')); %Reading the Y (luminance) information% tmp=fread(fid,[nx/2,ny/2],'uint8'); %Reading the U (chrominance) information% tmp=fread(fid,[nx/2,ny/2],'uint8'); %Reading the V (chrominance) information% B = A / max(a(:)); imshow(b); imwrite(b,sprintf('c:\\foreman%03d.jpg',t),'jpg','quality',100); %Writing 1 frame (the luminance information) to a file% end fclose(fid); The commands above will write the luminance information of the images in the video sequence to files. e) Read three frames of the sequence into MATLAB array for example frame 20, 21 and 22. Choose frames that show large motion. f) Perform frame interpolation between frame 20 and frame 22 using repeat previous frame method and pixel averaging method. So you will have frame 20, frame 20 (repeated frame) and frame 22 for repeat previous frame method; and frame 20, (frame 20 + frame 22)/2 and frame 22 for pixel averaging method. g) Calculate PSNR between the original frame 21 and the repeated frame db h) Calculate PSNR between the original frame 21 and the averaged frame. db i) Compare both PSNRs, spatial and temporal picture quality and suggest which method is better. Revised: January 2010 (Hezerul Abdul Karim), February 2011 (Sarina Mansor) 2

Student ID: j) How can you relate this experiment to frame rate up conversion? (Hints: Assume the original foreman image sequence is recorded at 30 frames/sec) Part 2: Frame difference a) You may use the same image sequence from part 1 of the lab for this experiment. b) You may use some of the source code developed in part 1 for part 2. c) Choose two frames from the image sequence. You may name it current and previous frame (e.g. frame 10 is the previous frame and frame 11 is the current frame) d) Calculate the absolute value of the frame difference between current and previous frame. e) Multiply the difference by a constant value, k (e.g. k=3), and show the image of the frame difference. f) Discuss with your lab partner how this frame difference can be minimized. Part 3: Detect Motion in Video Seqences a) From the Matlab main window, select File->New->Model. A new simulink window will appear. Save this model in the hard disk. b) On the new simulink window, select Help->Blockset->Video and Image Processing Blockset. The Simulink Block Data Type Support for Video and Image Processing Blockset window will appear. This window contains the libraries (block diagram) needed to perform your simulation. Click on the Block Matching to see the examples of the block diagram. Double clicking on the block diagram will reveal the details to be filled in for that block. c) The blocks that you need for your simulation are shown in Figure 1. Revised: January 2010 (Hezerul Abdul Karim), February 2011 (Sarina Mansor) 3

Student ID: Figure 1: Block sets needed to detect motion d) Search the block sets shown in Figure 1 from the Video and Image Processing Blockset and the Simulink Block Data Type Support for all libraries and drag them to your simulink window. Arrange the block sets appropriately. e) The idea of this experiment is to detect large motion on video sequences. If there is large motion, a text Big motion is to be inserted in the video frame. The large motion can be detected using the sum of absolute differences (SAD) between current frame and previous frame. If the SAD is larger than a threshold value, the current frame can be considered to have large motion. f) Download long_interview_qcif.yuv sequence from the MATLAB server. g) Connect the block diagrams appropriately and filled in the necessary parameters for each block diagram. You may leave the parameters as default values. h) Run the simulink model by clicking Simulation->Start or the Start simulation button. i) You may use other block sets that are not shown in Figure 1 in your experiment. j) Discuss your observation:.... k) Identify the suitable threshold value to identify the big motion. Threshold value for long_interview_qcif.yuv: l) Repeat your simulation with foreman.qcif sequence. Evaluate your observation and compare with the previous video sequence..... Threshold value for foreman.qcif: End of experiment Revised: January 2010 (Hezerul Abdul Karim), February 2011 (Sarina Mansor) 4

Marking Scheme You are required to write down your answers in the lab sheet. The distributed marks are as follows: 1. Part 1 10% 2. Part 2 5% 3. Part 3 10% Revised: January 2010 (Hezerul Abdul Karim), February 2011 (Sarina Mansor) 5