jpeg стандарт Лекц-15 · jpeg down-samples-дээж the “color channels” by...

Post on 20-May-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

JPEG стандарт

Лекц-15

МУИС ХШУИС МКУТийн багш П.Гантуяа

What is JPEG?

JPEG: Joint Photographic Expert Group —

an international standard in 1992.

Works for both color and grayscale images.

Targets at natural images.

Applications include satellite, medical

imaging, general photography ...

Color Space Conversion

JPEG first converts RGB to YUV or YCrCb.

Y is the luminance component (brightness).

Y = 0.299 R + 0.587 G + 0.144 B

U and V are color components

U = B – Y

V = R - Y

Y U V

Color Subsampling

JPEG down-samples-дээж the “color channels” by

half-хагас and partitions-хуваах,тусгаарлах

images into-руу 8x8 small blocks.

Y1 Y2

Y3 Y4

U V

Intensity-эрч Component-бүрэлдэхүүн Color components

DCT (Discrete Cosine Transform)

DCT converts each image 8x8 block into another

8x8 block.

The energy in DCT domain is concentrated into

very few coefficients.

DCT

Image

block

DCT

coefficients

0

2

4

6

8

0

2

4

6

8

-10

0

10

20

col

row

DC

T C

oeff

icie

nts

0

24

6

8

0

2

4

6

80

2

4

6

8

10

colrow

Gra

yscale

Level

Image block DCT Coefficients

Definition of DCT

A linear transfrom F(u,v) = x=07

y=0 7 h(u,v,x,y) f(x,y)

where h(u,v,x,y) is the linear weighting-нэмэгдэл function.

DCT:

The inverse transform IDCT recovers the original data from DCT

coefficients.

For DCT, h(u,v,x,y) can be decomposed-задрах

into g(u,x) * g(v,y)

F(u,v) = x=07

y=0 7 h(u,v,x,y) f(x,y)

= y=07

g(v,y) [x=0 7 g(u,x) f(x,y)]

Horizontal 1D DCT Vertical 1D DCT

followed

by

Given u and v, h can be viewed as an image of x and y.

u

v

DCT coefficients are projection of image block into these patterns.

Quantization

Recall that quantization can be used to collapse-

нурах the input into smaller number of values.-

эрхэм

For DCT coefficients,- we quantize different

coefficients in different details:

DC coefficient should have the most quantization

levels.

Quantization for AC coefficients can be coarser and

coarser as the frequency increases.

Y quantization table

17 18 24 99 99 99 99 99

18 21 26 66 99 99 99 99

24 26 56 99 99 99 99 99

47 66 99 99 99 99 99 99

99 99 99 99 99 99 99 99

99 99 99 99 99 99 99 99

99 99 99 99 99 99 99 99

U, V quantization table

Fq(u,v) = round(F(u,v)/Q(u,v)) Quantization:

Fr(u,v) = Fq(u,v) * Q(u,v) De-quantization:

quantization

dequantization

The Quality Factor

For most-ихэнх current-урсгал JPEG encoders,

we can choose a quality-чанар factor-хүчин зүйл

from 1 to 100.

The method-арга of controlling the compression-

шахах quality is by scaling- the quantization table.

For example,-жишээ

Fq(u,v) = round(F(u,v)* (quality) / Q(u,v))

DC Coefficients Encoding

D(m,n) D(m,n+1) D(m,n+2) D(m,n+3)

We compute the difference of each two successive quantized

coefficients

D(m,n) – 0 => d(m,n)

D(m,n+1) – D(m,n) => d(m,n+1)

D(m,n+2) – D(m,n+1) => d(m,n+2)

D(m,n+3) – D(m,n+2) => d(m,n+3)

DC Coefficients Encoding

Then, we encode each DC difference value by

(size, coefficient)

1 -1, 1

2 -3, -2, 2, 3

3 -7 …-4, 4, …,7

4

11 -2047,…,-1024,1024,…,2047

The Size Table

7 will be coded as (3, 7)

• The first number 3 is Huffman -

coded.

• The second 7 is encoded as

1’s complement 111.

(-7 will be 000)

Can we encode the dc difference value directly?

AC Coefficients Encoding

AC coefficients are not differentially encoded.

Instead, we first do run-length coding.

Zig-zag scanning

(0,11), (0,-12), (1, -12),

(0, 10), (0,16), (0, 0)

The run length code:

Indicates all are 0

from here

AC Coefficients Encoding (cont)

For AC coefficients, we now have a bunch-баглаа

of symbols-тэмдэг like

The “value”-үнэ цэнэ has large number of

possible-боломжтой values in [-1023, 1023].

Direct Huffman coding is infeasible.-

Instead, we generate-гаргах symbols like

(zero-run length, value)

( zero-run length, size, value)

Huffman coded 1’s complement

JPEG File Format

Start of image Frame End of image

Tables Header Scan Scan Scan …

Tables Header Segment Restart Segment ….

Block Block Block

JPEG Extensions

The basic mode of JPEG supports-дэмжлэг

sequential –дараалсан coding (the order-дэс

дараа is from top-оройгоос to bottom –төгсгөл

and left to right-зүүнээс баруун).

JPEG extensions support progressive-аажим,

дэвшилтэт modes-төрөлүүд*(JPEG өрөгтгөлийг

дэмждэг дэвшилтэт төрөлүүд)

Spectrum selection.-спектер сонголт

Successive approximation.-дараалсан утга

Hierarchical mode.-шаталсан төлөв

JPEG 2000

JPEG 2000 is a new standard-стандарт based on

wavelet- transform.-өөрчлөн хувиргах

JPEG2000 does not partition-хуваах, хуваагдал,

тусгаарлах an image into-руу small blocks.

Wavelet decomposes-зардал the whole-бүхэл

image into different-ялгаатай “bands” and then-

тэгээд дараа нь encodes-кодолсон the

coefficients in different-ялгаатай bands smartly.

50 100 150 200 250 300 350 400 450 500

50

100

150

200

250

300

350

400

450

500

The wavelet decomposition of Lena image using Haar Wavelet.

HL

LH

HH

LL

top related