ecec-453 image processing architecture

Click here to load reader

Post on 11-Feb-2016

31 views

Category:

Documents

0 download

Embed Size (px)

DESCRIPTION

ECEC-453 Image Processing Architecture. 3/11/2004 Exam Review Oleh Tretiak Drexel University. Please complete course survey (on the web). Announcements. Final on March 20 Cumulative Extra credit problem - write plugin for ImageJ (everybody does a different plugin). - PowerPoint PPT Presentation

TRANSCRIPT

ECE-C490 Winter 2000 Image Processing ArchitecturePage *
Page *
Page *
Cumulative
Extra credit problem - write plugin for ImageJ (everybody does a different plugin)
Image Processigng Architecture
Page *
Image Processigng Architecture
Page *
Unit operation: Multiply 8x8 matrix with 8x1 matrix ~ 64 ops
Image Processigng Architecture
Page *
N input and output samples ~ N2= 64 operations (additions + multiplications)
2D DCT - direct implementation
2D DCT - separable implementation, Y = TXTT = ZTT, where
Z = TX, all matrices are NxN -> 2N3 operations
For N = 8
2D DCT separable — 1024 operations, 16 ops/pixel
Big savings due to separable transform
Inverse DFT — same story.
Page *
Subtract range mean value
Lossless entropy coding of the quantized samples
Different quantization step is used for different DCT coefficients
ykl — DCT coefficients, qkl — quantizer steps
zkl — quantized values
Image Processigng Architecture
Page *
Page *
Page *
Page *
Coding AC Coefficients
AC coefficients are coded in zig-zag (called ZZ in standard) order to maximize possible runs of zeros.
Code unit consist of run length
followed by coefficient size.
is the same as for DC differences
(Table 2.9)
size = -18. In the table, -18
is in category 5. Code is
(6/5, 01101). If the Huffman
code for 6/5 is 1101,
codeword = 110101101
Page *
Page *
Page *
I ~ image, P ~ prediction, E ~ error
P(x, y, t+1) = P(x, y, t) + Code(E(x, y, t))
At receiver, Ie(x, y, t) = P(x, y, t+1)
Ie(x, y, t) ~ estimate of image at time t
Encoder
Decoder
Page *
Page *
Page *
Each location requires 3MN operations
Picture dimensions IxJ, F pictures per second
3IJF(2p + 1)2 operations per second
I = 720, J = 480, F = 30, p = 15 —> 30 GOPS
Guaranteed to find best (MAE) displacement
How to do it?
Page *
Full macroblock 16x16
16 x speedup, smaller macroblock
16 x speedup, fewer displacement vectors
p = ±16, p’ = ±4
Around point of best match, do local search in Down 2 reference image (3x3 search zone)
Repeat for Full reference image (3x3 search zone)
Full
Page *
1-D
2-D
1-D
2-D
Page *
Spatial
Block-based DCT
Huffman coding (no arithmetic coding) of motion vectors and quantized DCT coefficients
352 x 340 pixels, 12 bits per pixel, picture rate 30 pictures per second —> 30.4 Mbps
Coded bit stream 1.15 Mbps (must leave bandwidth for audio)
Compression 26:1
Page *
I — intraframe coding only
Page *
Page *
Page *
Lecture 15
MPEG-1 Wrap-up
Data below for decoder, SIF pictures, 2 B pictures per P
IDCT must be precise, because of inter-frame coding
MPEG-1 does not deliver quality acceptable for broadcast —> MPEG-2
Image Processigng Architecture
Page *
616000
26.3314285714
Y
352x240
352x288
Page *
Capability for fast forward, fast reverse play, stop frame
Bit stream scalability
Resilience to bit errors
Page *
Lecture 15
MPEG-2 profiles
A profile is a subset of the entire MPEG-2 bit-stream syntax
Simple
Main
4:2:2
SNR
Spatial
High
Multiview
Low — MPEG1
Page *
Page *
Page *
Page *
Page *
252 pix/line, 288 line, 30 fps noninterlace
Terminal equipment converts frame and line numbers
Y Cb Cr components, color sub-sampled by a factor of 2 in both directions
Coding
I and P frames only, P blocks can be skipped
Motion compensation optional, only integer compensation
(Optional) forward error correction coding
Image Processigng Architecture
Page *
Page *
63%
10%
10%
Page *
H.263 and MPEG-4 based on ~1995 technology
After 1995, MPEG and VCEG (video coding) started working on a new low-rate standard (H.26L)
Rec H.264 released in September 2002
Information on http://www.vcodex.com/ (some is on our web site)
Site maintained by Ian Richardson, who has written books about video coding
Image Processigng Architecture
Page *
Page *
Image Processigng Architecture
Page *
Image Processigng Architecture
Page *
Mode 0: Vertical, extrapolate from upper samples
Mode 1: Horizontal, extrapolate from left samples
Mode 2: DC, mean of upper and left-hand samples
Mode 3: Plane, linear fit to left and upper samples
Image Processigng Architecture
Page *
4x4 and 2x2 DC coefficients transformed (again)
Image Processigng Architecture
Page *
Trick: Y = (CXCT).*E
Page *
Image Processigng Architecture
Page *
Arithmetic coding an option
Image Processigng Architecture
Page *
Average across inter-block lines if difference
is too big
mode (intra or inter) and quantization step
size
Page *

View more