Sunteți pe pagina 1din 38

EECE/CS 253 Image Processing

Lecture Notes: JPEG Image Compression Richard Alan Peters II Department of Electrical Engineering and Computer Science Fall Semester 2011
. 1 . .... . .

This work is licensed under the Creative Commons Attribution-Noncommercial 2.5 License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc/2.5/ or send a letter to Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA.

From the Article by Wallace:


Title: The JPEG Still Picture Compression Standard Source: Communications of the ACM archive Volume 34, Issue 4 (April 1991) Special issue on digital multimedia systems Pages: 30-44 Year: 1991 ISSN: 0001-0782 Author: Gregory K. Wallace Digital Equipment Corp., Maynard, MA Publisher: ACM Press New York, NY, USA

29 November 2011

1999-2011 by Richard Alan Peters II

The JPEG Still Picture Compression Standard


Joint Photographic Experts Group A standards committee set up by the CCITT and the ISO. Tasked in the late 1980s to generate a generalpurpose standard for compression of almost all continuous tone and still-image applications. Published Standard: Digital Compression and Coding of Continuous-tone Still Images Requirements and Guidelines, ISO/IEC 10918-1:1993(E)
1999-2011 by Richard Alan Peters II 3

29 November 2011

JPEGs Goals for the Standard


Be at or near the state of the art in compression rate and image fidelity. User decides on the trade-off between image fidelity and compression ratio. Be applicable to any kind of continuous-tone digital image source (unrestricted with respect to content, complexity, color-range, statistics, etc.) Have tractable computational complexity for implementation on a wide range of computational hardware.
1999-2011 by Richard Alan Peters II 4

29 November 2011

JPEGs Modes of Operation


1. 2. 3. 4.

Sequential encoding: each component (band) encoded in a single raster scan Progressive encoding: progressive coarseto-fine encoding and decoding of entire image Lossless encoding: exact recovery of original image Hierarchical encoding: multiresolution compression with independently retrievable lower-resolution versions

29 November 2011

1999-2011 by Richard Alan Peters II

JPEG Codec
image RGB YCbCr
conversion

down sample color

partition into 88 blocks

FDCT

quantizer

entropy encoder

table spec

table spec

Compressed Data

entropy decoder

dequantizer

IDCT

up sample color

YCbCr RGB
conversion

image

table spec

table spec

29 November 2011

1999-2011 by Richard Alan Peters II

JPEG Baseline Process


DCT-based process Source image: 8-bit samples within each component Sequential Huffman coding: 2 AC and 2 DC tables Decoders process scans with 1, 2, 3, or 4 components Interleaved and non-interleaved scans

29 November 2011

1999-2011 by Richard Alan Peters II

A A Standard Standard Color Color Test Test Chart Chart

29 November 2011

1999-2011 by Richard Alan Peters II

Well use the image in some of the following slides.

29 November 2011

1999-2011 by Richard Alan Peters II

Color Conversion: RGB YCbCr


RGB Y + Cb + Cr

Y 0.25678824 0.50412941 0.09790588 R 16 Cb = - 0.14822290 - 0.29099279 0.43921596 G + 128 Cr 0.43921569 - 0.36778831 - 0.07142737 B 128

29 November 2011

1999-2011 by Richard Alan Peters II

10

Downsample Color Bands


+ +

+ Y
29 November 2011

by by a a factor factor of of 2 2

+ Cb Cr

1999-2011 by Richard Alan Peters II

11

Partition Each Band into 88 Blocks

29 November 2011

1999-2011 by Richard Alan Peters II

12

Prep for Forward Discrete Cosine Transform


Each image band is operated on independently. Each 88 image block is operated on independently. Shift all image values from I[0, 2P-1] to I[-2P-1, 2P-1-1]. E.g. [0, 255] [-128, 127]. The FDCT decomposes each block into a set of coefficients with respect to the 64 orthogonal basis functions shown on the next slide.

29 November 2011

1999-2011 by Richard Alan Peters II

13

DCT Functions and Variables


F{}(v, u ; r, c) - DCT of 88 block from I starting at (r,c)
( ) - Normalization Factor (v, u ; , ) - 2D Cosine Basis Function, (v,u) r - image row index (vertical, increasing down) c - image column index (horizontal, increasing right) - DCT row index (horizontal wave fronts, vertical propagation down) - DCT column index (vertical wave fronts, horizontal propagation right) v - DCT row frequency index (vertical, increasing down) u - DCT column frequency index (horizontal, increasing right)
29 November 2011 1999-2011 by Richard Alan Peters II 14

DCT Basis Functions u=0


v=0

u=7

(v, u; , )

white = =1 1 white black = = -1 -1 black

v=7

29 November 2011

1999-2011 by Richard Alan Peters II

15

Forward Discrete Cosine Transform


F{I}(v, u ; r, c) = 1 4 ( v ) (u ) ( v , u ; , ) I ( r + , c + )
=0 =0 1 for = 0 2 ( ) = 1 otherwise
,, uu) ), ,( ( ,, ) ) (v {0,,7} {0,,7}xx{0,,7}. {0,,7}. (v (r ,, cc) ) (r {0,8,16,,R} {0,8,16,,R}xx{0,8,16,,C}, {0,8,16,,C},

1 1 (v, u ; , ) = cos 16 (2 + 1) v cos 16 (2 + 1) u


c+ r+

F{I}(4,4; r,c)
u v

p.w. product

row cos: (v=4, )

col cos: (u=4, )

= col cos row cos 8x8 block of I @ (r,c)

F(v,u;r,c)

29 November 2011

1999-2011 by Richard Alan Peters II

16

Forward Discrete Cosine Transform


F{ II }(0,0; rr ,c ))is F{ }(0,0; ,c isthe the DC DCcomponent componentof of the the8x8 8x8block block from I at ,c )) from I at(r (r ,c the theothers othersare are the theAC ACcomponents, components, e.g. F{ I }(4,4; rr ,c ). e.g. F{I}(4,4; ,c ).

29 November 2011

1999-2011 by Richard Alan Peters II

17

Forward Discrete Cosine Transform

Negative

Input

Output

-log Out.

Neg. Neg. & & neg. neg. log log just for just for visibility visibility here. here.

29 November 2011

1999-2011 by Richard Alan Peters II

18

Forward Discrete Cosine Transform


Each vv ,u ,c ), Eachvalue, value,F( F( ,u; ;rr ,c ),in inthe the8x8 8x8output output is isthe thesum sumof ofthe thepixel-wise pixel-wiseproduct productof of the 8x8 block that starts at ( r , c ) in the the 8x8 block that starts at (r,c) in the image imageand andthe thecosine cosinebasis basisfunction functionat at row v , column u in the table. row v, column u in the table.
Negative

Input

Output

-log Out.

(r ,c (r ,c) ) {0,8,16,,R} {0,8,16,,R}xx{0,8,16,,C}, {0,8,16,,C}, ,u (v ,u) ) {0,,7} {0,,7}xx{0,,7}. {0,,7}. (v

Neg. Neg. & & neg. neg. log log just for just for visibility visibility here. here.

29 November 2011

1999-2011 by Richard Alan Peters II

19

Example FDCT Quantization Tables


Luminance Quantization Table
2 2 3 4 5 6 8 2 2 2 4 5 7 3 2 3 5 7 4 4 5 7 5 5 7 6 7 8 11 9 11

Chrominance Quantization Table


3 3 7 3 4 7 13 15 15 15 15 7 13 14 12 12 12

9 11 12

7 13 14 12 12 12 12

9 11 12 12

13 13 14 12 12 12 12 12 15 14 12 12 12 12 12 12 15 12 12 12 12 12 12 12 15 12 12 12 12 12 12 12 15 12 12 12 12 12 12 12 Precision: 8 bits Approximate quality factor: 92.57 Scaling: 14.85 Variance: 23.00

9 11 12 12 12

9 11 12 12 12 12

9 11 12 12 12 12 12

11 11 12 12 12 12 12 12 Precision: 8 bits Approximate quality factor: 91.64 Scaling: 16.71 Variance: 22.54

29 November 2011

1999-2011 by Richard Alan Peters II

20

FDCT Quantization Procedure


255 19 58 22 42 9 48 3 23 4 10 18 26 6 13 0 34 19 11 9 19 23 13 13 13 12 2 12 9 14 11 18 44 18 14 7 23 20 15 16 11 9 6 11 15 10 12 4 44 16 12 12 16 19 18 11 6 15 7 9 6 21 10 14 1 1 2 2 3 3 7 14 1 1 2 2 3 5 10 13 1 2 2 3 8 8 11 13 2 3 3 4 11 10 12 15 3 4 6 7 10 12 15 15 6 8 8 12 16 15 17 14 8 9 10 11 15 16 17 14 10 8 8 9 11 13 14 14 255 19 29 11 14 3 7 0 23 4 5 9 9 1 1 0 34 10 6 3 2 3 1 1 7 4 1 3 1 1 1 1 15 5 2 1 2 2 1 1 2 1 1 1 1 1 1 0 6 2 1 1 1 1 1 1 1 2 1 1 1 2 1 1

Output of FDCT, F(u,v), at image pixel location (r,c).

Quantization Table, Q(u,v)

F
(r c (, r ,c) ) {0,8,16,,R} xx{0,8,16,,C}, {0,8,16,,R} {0,8,16,,C},

F (u,v ) (u,v ) = round Q (u,v )

Quantized Result, FQ(u,v) at image pixel location (r,c).

This ThisQ(u,v) Q(u,v)is isyet yetanother another quantization table. quantization table.

29 November 2011

1999-2011 by Richard Alan Peters II

21

Image DC Components (88 constant blocks)

29 November 2011

1999-2011 by Richard Alan Peters II

22

DC Component Coding (DPCM)

DC components from 32 blocks

Differential PCM coding of same

DC components are coded separately from the AC components.


29 November 2011 1999-2011 by Richard Alan Peters II 23

Quantized coefficient encoding order


255 23 34 19 4 10 29 5 6 11 9 3 14 9 2 3 1 3 7 1 1 0 0 1 7 15 4 5 1 2 3 1 1 2 1 2 1 1 1 1 2 1 1 1 1 1 1 0 6 2 1 1 1 1 1 1 1 2 1 1 1 2 1 1

start DC

end

AC: 23 19 29 4 34 7 10 5 11 14 9 6 4 15 2 5 1 3 9 3 7 1 2 3 2 1 6 1 2 1 1 1 3 1 0 0 1 1 2 1 1 2 1 1 1 2 1 1 1 1 1

29 November 2011

1999-2011 by Richard Alan Peters II

24

Entropy Encoding of AC Coefficients


Two step process:
1. Convert zigzag sequence of quantized coefficients into a sequence of symbols. 2. Convert symbols to a data stream of variable length codes.
Symbol Symbol 1 1= = (Runlength, (Runlength, Size) Size) Symbol Symbol 2 2= = Amplitude Amplitude
29 November 2011 1999-2011 by Richard Alan Peters II 25

Entropy Encoding of Coefficients


Symbol 1: (Runlength, Size); Symbol 2: Amplitude AC:
Runlength: number of consecutive zero values (0-15) Size: number of bits used to encode amplitude (1-10) Amplitude: quantized value

DC:
Runlength: not included Size: number of bits used to encode amplitude (1-11) Amplitude: quantized value
29 November 2011 1999-2011 by Richard Alan Peters II 26

Variable Length Entropy Encoding


size 1 2 3 4 5 6 7 8 9 10
DC only

amplitude -1,1 -3,-2,2,3 -7-4,47 -15-8,815 -31-16,1631 -63-32,3263 -127-64,64128 -255-128,128255 -511-256,256511 -1023-512,5121023 -2047-1024,10242047
1999-2011 by Richard Alan Peters II 27

Symbol 2 Coding

11

29 November 2011

Effects of Quality Settings

Image: http://en.wikipedia.org/wiki/File:Quality_comparison_jpg_vs_saveforweb.jpg

29 November 2011

1999-2011 by Richard Alan Peters II

28

JFIF Information Display Program


JPEGsnoop - JPEG File Decoding Utility by Calvin Hass 2010 From the web page: Every digital photo contains a wealth of hidden information -- JPEGsnoop was written to expose these details to those who are curious. Not only can one determine the various settings that were used in the digital camera in taking the photo (EXIF metadata, IPTC), but one can also extract information that indicates the quality and nature of the JPEG image compression used by the camera in saving the file. Digital cameras specify compression quality levels, many of them wildly different, leading to the fact that some cameras produce far better JPEG images than others. http://www.impulseadventure.com/photo/
29 November 2011 1999-2011 by Richard Alan Peters II 29

Example: JPEG/JFIF Encoded Image

Keith Hamshere Soairse Ronan 2007

29 November 2011

1999-2011 by Richard Alan Peters II

30

Data Markers from the JPEG File Interchange Format (JFIF)


Short name Code Payload Name Comments

SOI

0xFFD8

none

Start Of Image Start Of Frame (Baseline) Start Of Frame (Progressive) Define Huffman Table(s) Define Quantization Table(s) Define Restart Interval Start Of Scan Indicates that this is a baseline DCT-based JPEG, and specifies the width, height, number of components, and component subsampling (e.g., 4:2:0). Indicates that this is a progressive DCT-based JPEG, and specifies the width, height, number of components, and component subsampling (e.g., 4:2:0). Specifies one or more Huffman tables.

SOF0

0xFFC0

variable size

SOF2

0xFFC2

variable size

DHT

0xFFC4

variable size

DQT

0xFFDB

variable size

Specifies one or more quantization tables. Specifies the interval between RSTn markers, in macroblocks. This marker is followed by two bytes indicating the fixed size so it can be treated like any other variable size segment. Begins a top-to-bottom scan of the image. In baseline DCT JPEG images, there is generally a single scan. Progressive DCT JPEG images usually contain multiple scans. This marker specifies which slice of data it will contain, and is immediately followed by entropy-coded data. Inserted every r macroblocks, where r is the restart interval set by a DRI marker. Not used if there was no DRI marker. The low 3 bits of the marker code cycle in value from 0 to 7. For example, an Exif JPEG file uses an APP1 marker to store metadata, laid out in a structure based closely on TIFF. Contains a text comment.

DRI

0xFFDD

2 bytes

SOS

0xFFDA

variable size

RSTn

0xFFD0D7

none

Restart Applicationspecific Comment

APPn

0xFFEn

variable size

COM

0xFFFE

variable size

EOI

0xFFD9

none

End Of Image

29 November 2011

Source: ISO/IEC 10918-1:1994, p.36, viaPeters http://en.wikipedia.org/wiki/JPEG 1999-2011 by Richard Alan II

31

JPEG / JFIF Information (via JPEGsnoop)


Filename: Filename:[Saoirse [SaoirseRonan Ronan--Ember.jpg] Ember.jpg] Filesize: [3156857] Bytes Filesize: [3156857] Bytes Start StartOffset: Offset:0x00000000 0x00000000 *** Marker: *** Marker:SOI SOI(xFFD8) (xFFD8)*** *** OFFSET: 0x00000000 OFFSET: 0x00000000 *** ***Marker: Marker:APP13 APP13(xFFED) (xFFED)*** *** OFFSET: 0x00000002 OFFSET: 0x00000002 length = length =28 28 Identifier = Identifier =[Photoshop [Photoshop3.0] 3.0] 8BIM: 8BIM:[0x0404] [0x0404]Name=[] Name=[]Len=[0x0000] Len=[0x0000] IPTC IPTC[0xFFE1:002] [0xFFE1:002]??size=12392 size=12392 *** ***Marker: Marker:APP1 APP1(xFFE1) (xFFE1)*** *** OFFSET: 0x00000020 OFFSET: 0x00000020 length = length =560 560 Identifier = Identifier =[http://ns.adobe.com/xap/1.0/] [http://ns.adobe.com/xap/1.0/] XMP XMP= = *** ***Marker: Marker:APP0 APP0(xFFE0) (xFFE0)*** *** OFFSET: 0x00000252 OFFSET: 0x00000252 length length = =16 16 identifier = identifier =[JFIF] [JFIF] version version = =[1.2] [1.2] density = density =300 300xx300 300DPI DPI(dots (dotsper perinch) inch) thumbnail = 0 x 0 thumbnail = 0 x 0 *** ***Marker: Marker:APP2 APP2(xFFE2) (xFFE2)*** *** OFFSET: 0x00000264 OFFSET: 0x00000264 length = length =576 576 Identifier = Identifier =[ICC_PROFILE] [ICC_PROFILE] ICC ICCProfile: Profile: Marker MarkerNumber Number= =11of of11 Profile Size : 560 bytes Profile Size : 560 bytes Preferred : :'ADBE' PreferredCMM CMMType Type 'ADBE'(0x41444245) (0x41444245) Profile Version : 0.2.1.0 Profile Version : 0.2.1.0(0x02100000) (0x02100000) Profile : :Display ProfileDevice/Class Device/Class DisplayDevice Deviceprofile profile('mntr' ('mntr'(0x6D6E7472)) (0x6D6E7472)) Data Colour Space : rgbData ('RGB ' (0x52474220)) Data Colour Space : rgbData ('RGB ' (0x52474220)) Profile Profileconnection connectionspace space(PCS) (PCS) : :'XYZ 'XYZ' '(0x58595A20) (0x58595A20) Profile creation date : 1999-06-03 Profile creation date : 1999-06-0300:00:00 00:00:00 Profile : :'acsp' Profilefile filesignature signature 'acsp'(0x61637370) (0x61637370) Primary : :Apple Primaryplatform platform AppleComputer, Computer,Inc. Inc.('APPL' ('APPL'(0x4150504C)) (0x4150504C)) Profile flags : 0x00000000 Profile flags : 0x00000000 Profile > Profileflags flags >Profile Profilenot notembedded embedded Profile flags > Profile can't Profile flags > Profile can'tbe beused usedindependently independentlyof ofembedded embedded Device Manufacturer : 'none' (0x6E6F6E65) Device Manufacturer : 'none' (0x6E6F6E65) Device : :'....' DeviceModel Model '....'(0x00000000) (0x00000000) Device attributes : 0x00000000_00000000 Device attributes : 0x00000000_00000000 Device > Deviceattributes attributes >Reflective Reflective Device attributes > Device attributes >Glossy Glossy Device > Deviceattributes attributes >Media Mediapolarity polarity= =negative negative Device attributes > Black & white media Device attributes > Black & white media Rendering : :Perceptual Renderingintent intent Perceptual Profile creator : Profile creator :'ADBE' 'ADBE'(0x41444245) (0x41444245) Profile : :0x00000000_00000000_00000000 ProfileID ID 0x00000000_00000000_00000000

29 November 2011

1999-2011 by Richard Alan Peters II

32

JPEG / JFIF Information (via JPEGsnoop)


*** ***Marker: Marker:DQT DQT(xFFDB) (xFFDB)*** *** Define a Quantization Define a QuantizationTable. Table. OFFSET: OFFSET:0x000004B6 0x000004B6 Table Tablelength length= =132 132 ------Precision=8 Precision=8bits bits Destination DestinationID=0 ID=0(Luminance) (Luminance) DQT, DQT,Row Row#0: #0: 22 22 33 44 55 66 88 11 11 DQT, DQT,Row Row#1: #1: 22 22 22 44 55 77 99 11 11 DQT, DQT,Row Row#2: #2: 33 22 33 55 77 99 11 11 12 12 DQT, DQT,Row Row#3: #3: 44 44 55 77 99 11 11 12 12 12 12 DQT, DQT,Row Row#4: #4: 55 55 77 99 11 11 12 12 12 12 12 12 DQT, DQT,Row Row#5: #5: 66 77 99 11 11 12 12 12 12 12 12 12 12 DQT, DQT,Row Row#6: #6: 88 99 11 11 12 12 12 12 12 12 12 12 12 12 DQT, DQT,Row Row#7: #7: 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 Approx quality factor = 91.64 (scaling=16.71 Approx quality factor = 91.64 (scaling=16.71variance=22.54) variance=22.54) ------Precision=8 Precision=8bits bits Destination DestinationID=1 ID=1(Chrominance) (Chrominance) DQT, DQT,Row Row#0: #0: 33 33 77 13 13 15 15 15 15 15 15 15 15 DQT, Row #1: 3 4 7 13 14 12 12 DQT, Row #1: 3 4 7 13 14 12 12 12 12 DQT, DQT,Row Row#2: #2: 77 77 13 13 14 14 12 12 12 12 12 12 12 12 DQT, DQT,Row Row#3: #3: 13 13 13 13 14 14 12 12 12 12 12 12 12 12 12 12 DQT, Row #4: 15 14 12 12 12 12 12 DQT, Row #4: 15 14 12 12 12 12 12 12 12 DQT, DQT,Row Row#5: #5: 15 15 12 12 12 12 12 12 12 12 12 12 12 12 12 12 DQT, DQT,Row Row#6: #6: 15 15 12 12 12 12 12 12 12 12 12 12 12 12 12 12 DQT, Row #7: 15 12 12 12 12 12 12 DQT, Row #7: 15 12 12 12 12 12 12 12 12 Approx Approxquality qualityfactor factor= =92.57 92.57(scaling=14.85 (scaling=14.85variance=23.00) variance=23.00) *** ***Marker: Marker:SOF0 SOF0(Baseline (BaselineDCT) DCT)(xFFC0) (xFFC0)*** *** OFFSET: OFFSET:0x0000053C 0x0000053C Frame Frameheader headerlength length= =17 17 Precision Precision= =88 Number Numberof ofLines Lines= =2592 2592 Samples Samplesper perLine Line= =3872 3872 Image ImageSize Size= =3872 3872xx2592 2592 Raw RawImage ImageOrientation Orientation= =Landscape Landscape Number Numberof ofImg Imgcomponents components= =33

Comp[1]: Comp[1]:ID=0x01, ID=0x01,Samp SampFac=0x11 Fac=0x11(Subsamp (Subsamp11xx1), 1),Quant QuantTbl TblSel=0x00 Sel=0x00(Lum: (Lum: Y) Y) Comp[2]: ID=0x02, Samp Fac=0x11 (Subsamp 1 x 1), Quant Tbl Sel=0x01 (Chrom: Comp[2]: ID=0x02, Samp Fac=0x11 (Subsamp 1 x 1), Quant Tbl Sel=0x01 (Chrom:Cb) Cb) Comp[3]: Comp[3]:ID=0x03, ID=0x03,Samp SampFac=0x11 Fac=0x11(Subsamp (Subsamp11xx1), 1),Quant QuantTbl TblSel=0x01 Sel=0x01(Chrom: (Chrom:Cr) Cr)

*** ***Marker: Marker:DRI DRI(Restart (RestartInterval) Interval)(xFFDD) (xFFDD)*** *** OFFSET: OFFSET:0x0000054F 0x0000054F length length = =44 interval interval = =484 484

29 November 2011

1999-2011 by Richard Alan Peters II

33

JPEG / JFIF Information (via JPEGsnoop)


*** ***Marker: Marker:DHT DHT(Define (DefineHuffman HuffmanTable) Table)(xFFC4) (xFFC4)*** *** OFFSET: 0x00000555 OFFSET: 0x00000555 Huffman Huffmantable tablelength length= =418 418 ------Destination DestinationID ID= =00 Class = 0 (DC / Lossless Class = 0 (DC / LosslessTable) Table) Codes Codesof oflength length01 01bits bits(000 (000total): total): Codes Codesof oflength length02 02bits bits(000 (000total): total): Codes Codesof oflength length03 03bits bits(007 (007total): total):04 0405 0503 0302 0206 0601 0100 00 Codes of length 04 bits (001 total): 07 Codes of length 04 bits (001 total): 07 Codes Codesof oflength length05 05bits bits(001 (001total): total):08 08 Codes of length 06 bits (001 total): Codes of length 06 bits (001 total):09 09 Codes Codesof oflength length07 07bits bits(001 (001total): total):0A 0A Codes Codesof oflength length08 08bits bits(001 (001total): total):0B 0B Codes Codesof oflength length09 09bits bits(000 (000total): total): Codes of length 10 bits (000 Codes of length 10 bits (000total): total): Codes Codesof oflength length11 11bits bits(000 (000total): total): Codes Codesof oflength length12 12bits bits(000 (000total): total): Codes Codesof oflength length13 13bits bits(000 (000total): total): Codes Codesof oflength length14 14bits bits(000 (000total): total): Codes Codesof oflength length15 15bits bits(000 (000total): total): Codes Codesof oflength length16 16bits bits(000 (000total): total): Total Totalnumber numberof ofcodes: codes:012 012 ------Destination DestinationID ID= =11 Class = 0 (DC / Lossless Class = 0 (DC / LosslessTable) Table) Codes Codesof oflength length01 01bits bits(000 (000total): total): Codes Codesof oflength length02 02bits bits(002 (002total): total):01 0100 00 Codes of length 03 bits (002 total): 02 Codes of length 03 bits (002 total): 0203 03 Codes Codesof oflength length04 04bits bits(003 (003total): total):04 0405 0506 06 Codes Codesof oflength length05 05bits bits(001 (001total): total):07 07 Codes Codesof oflength length06 06bits bits(001 (001total): total):08 08 Codes of length 07 bits (001 total): Codes of length 07 bits (001 total):09 09 Codes Codesof oflength length08 08bits bits(001 (001total): total):0A 0A Codes Codesof oflength length09 09bits bits(001 (001total): total):0B 0B Codes Codesof oflength length10 10bits bits(000 (000total): total): Codes of length 11 bits (000 Codes of length 11 bits (000total): total): Codes Codesof oflength length12 12bits bits(000 (000total): total): Codes Codesof oflength length13 13bits bits(000 (000total): total): Codes Codesof oflength length14 14bits bits(000 (000total): total): Codes Codesof oflength length15 15bits bits(000 (000total): total): Codes Codesof oflength length16 16bits bits(000 (000total): total): Total Totalnumber numberof ofcodes: codes:012 012

29 November 2011

1999-2011 by Richard Alan Peters II

34

JPEG / JFIF Information (via JPEGsnoop)


------Destination DestinationID ID= =00 Class = 1 (AC Table) Class = 1 (AC Table) Codes Codesof oflength length01 01bits bits(000 (000total): total): Codes of length 02 bits (002 Codes of length 02 bits (002total): total):01 0102 02 Codes of length 03 bits (001 total): 03 Codes of length 03 bits (001 total): 03 Codes Codesof oflength length04 04bits bits(003 (003total): total):11 1104 0400 00 Codes of length 05 bits (003 total): 05 21 Codes of length 05 bits (003 total): 05 2112 12 Codes Codesof oflength length06 06bits bits(002 (002total): total):31 3141 41 Codes Codesof oflength length07 07bits bits(004 (004total): total):51 5106 0613 1361 61 Codes of length 08 bits (002 total): 22 71 Codes of length 08 bits (002 total): 22 71 Codes Codesof oflength length09 09bits bits(006 (006total): total):81 8114 1432 3291 91A1 A107 07 Codes of length 10 bits (007 total): 15 B1 42 23 C1 Codes of length 10 bits (007 total): 15 B1 42 23 C152 52D1 D1 Codes of length 11 bits (003 total): E1 33 16 Codes of length 11 bits (003 total): E1 33 16 Codes Codesof oflength length12 12bits bits(004 (004total): total):62 62F0 F024 2472 72 Codes of length 13 bits (002 total): 82 F1 Codes of length 13 bits (002 total): 82 F1 Codes Codesof oflength length14 14bits bits(006 (006total): total):25 2543 4334 3453 5392 92A2 A2 Codes of length 15 bits (002 total): B2 63 Codes of length 15 bits (002 total): B2 63 Codes Codesof oflength length16 16bits bits(115 (115total): total): 73 C2 35 44 27 93 A3 73 C2 35 44 27 93 A3B3 B336 3617 1754 5464 6474 74C3 C3D2 D2E2 E2 08 26 83 09 0A 18 19 84 94 45 46 A4 B4 56 D3 08 26 83 09 0A 18 19 84 94 45 46 A4 B4 56 D355 55 28 281A 1AF2 F2E3 E3F3 F3C4 C4D4 D4E4 E4F4 F465 6575 7585 8595 95A5 A5B5 B5C5 C5 D5 E5 F5 66 76 86 96 A6 B6 C6 D6 E6 F6 37 47 D5 E5 F5 66 76 86 96 A6 B6 C6 D6 E6 F6 37 4757 57 67 6777 7787 8797 97A7 A7B7 B7C7 C7D7 D7E7 E7F7 F738 3848 4858 5868 6878 7888 88 98 A8 B8 C8 D8 E8 F8 29 39 49 59 69 79 89 99 98 A8 B8 C8 D8 E8 F8 29 39 49 59 69 79 89 99A9 A9 B9 B9C9 C9D9 D9E9 E9F9 F92A 2A3A 3A4A 4A5A 5A6A 6A7A 7A8A 8A9A 9AAA AABA BACA CA DA EA FA DA EA FA Total Totalnumber numberof ofcodes: codes:162 162 ------Destination DestinationID ID= =11 Class Class= =11(AC (ACTable) Table) Codes Codesof oflength length01 01bits bits(000 (000total): total): Codes Codesof oflength length02 02bits bits(002 (002total): total):01 0100 00 Codes Codesof oflength length03 03bits bits(002 (002total): total):02 0211 11 Codes Codesof oflength length04 04bits bits(001 (001total): total):03 03 Codes Codesof oflength length05 05bits bits(002 (002total): total):04 0421 21 Codes Codesof oflength length06 06bits bits(003 (003total): total):12 1231 3141 41 Codes Codesof oflength length07 07bits bits(005 (005total): total):05 0551 5113 1361 6122 22 Codes Codesof oflength length08 08bits bits(005 (005total): total):06 0671 7181 8191 9132 32 Codes Codesof oflength length09 09bits bits(004 (004total): total):A1 A1B1 B1F0 F014 14 Codes Codesof oflength length10 10bits bits(005 (005total): total):C1 C1D1 D1E1 E123 2342 42 Codes Codesof oflength length11 11bits bits(006 (006total): total):15 1552 5262 6272 72F1 F133 33 Codes Codesof oflength length12 12bits bits(004 (004total): total):24 2434 3443 4382 82 Codes Codesof oflength length13 13bits bits(008 (008total): total):16 1692 9253 5325 25A2 A263 63B2 B2C2 C2 Codes Codesof oflength length14 14bits bits(003 (003total): total):07 0773 73D2 D2 Codes Codesof oflength length15 15bits bits(003 (003total): total):35 35E2 E244 44 Codes Codesof oflength length16 16bits bits(109 (109total): total): 83 8317 1754 5493 9308 0809 090A 0A18 1819 1926 2636 3645 451A 1A27 2764 6474 74 55 5537 37F2 F2A3 A3B3 B3C3 C328 2829 29D3 D3E3 E3F3 F384 8494 94A4 A4B4 B4C4 C4 D4 D4E4 E4F4 F465 6575 7585 8595 95A5 A5B5 B5C5 C5D5 D5E5 E5F5 F546 4656 5666 66 76 7686 8696 96A6 A6B6 B6C6 C6D6 D6E6 E6F6 F647 4757 5767 6777 7787 8797 97A7 A7 B7 B7C7 C7D7 D7E7 E7F7 F738 3848 4858 5868 6878 7888 8898 98A8 A8B8 B8C8 C8D8 D8 E8 E8F8 F839 3949 4959 5969 6979 7989 8999 99A9 A9B9 B9C9 C9D9 D9E9 E9F9 F92A 2A 3A 3A4A 4A5A 5A6A 6A7A 7A8A 8A9A 9AAA AABA BACA CADA DAEA EAFA FA Total Totalnumber numberof ofcodes: codes:162 162

29 November 2011

1999-2011 by Richard Alan Peters II

35

JPEG / JFIF Information (via JPEGsnoop)


*** ***Marker: Marker:SOS SOS(Start (Startof ofScan) Scan)(xFFDA) (xFFDA)*** *** OFFSET: 0x000006F9 OFFSET: 0x000006F9 Scan Scanheader headerlength length= =12 12 Number of img components Number of img components= =33 Component[1]: selector=0x01, Component[1]: selector=0x01,table=0x00 table=0x00 Component[2]: Component[2]:selector=0x02, selector=0x02,table=0x11 table=0x11 Component[3]: Component[3]:selector=0x03, selector=0x03,table=0x11 table=0x11 Spectral Spectralselection selection= =00....63 63 Successive Successiveapproximation approximation= =0x00 0x00 *** ***Decoding DecodingSCAN SCANData Data*** *** OFFSET: 0x00000707 OFFSET: 0x00000707 Scan ScanDecode DecodeMode: Mode:No NoIDCT IDCT(DC (DConly) only) NOTE: Low-resolution DC component NOTE: Low-resolution DC componentshown. shown. Scan ScanData Dataencountered encounteredmarker marker 0xFFD9 @ 0xFFD9 @0x00302B77.0 0x00302B77.0 Compression Compressionstats: stats: Compression CompressionRatio: Ratio:3028.43:1 3028.43:1 Bits per pixel: Bits per pixel: 0.01:1 0.01:1 Huffman Huffmancode codehistogram histogramstats: stats: Huffman Table: Huffman Table:(Dest (DestID: ID:0, 0,Class: Class:DC) DC) ##codes of length 01 bits: 00(( 0%) codes of length 01 bits: 0%) ##codes 00(( 0%) codesof oflength length02 02bits: bits: 0%) ##codes of length 03 bits: 142702 codes of length 03 bits: 142702((91%) 91%) ##codes codesof oflength length04 04bits: bits: 8490 8490(( 5%) 5%) ##codes codesof oflength length05 05bits: bits: 3974 3974(( 3%) 3%) ##codes of length 06 bits: 1649 codes of length 06 bits: 1649(( 1%) 1%) ##codes 11(( 0%) codesof oflength length07 07bits: bits: 0%) ##codes 00(( 0%) codesof oflength length08 08bits: bits: 0%) ##codes of length 09 bits: 00(( 0%) codes of length 09 bits: 0%) ##codes 00(( 0%) codesof oflength length10 10bits: bits: 0%) ##codes 00(( 0%) codesof oflength length11 11bits: bits: 0%) ##codes 00(( 0%) codesof oflength length12 12bits: bits: 0%) ##codes 00(( 0%) codesof oflength length13 13bits: bits: 0%) ##codes 00(( 0%) codesof oflength length14 14bits: bits: 0%) ##codes 00(( 0%) codesof oflength length15 15bits: bits: 0%) ##codes 00(( 0%) codesof oflength length16 16bits: bits: 0%) Huffman HuffmanTable: Table:(Dest (DestID: ID:1, 1,Class: Class:DC) DC) ##codes of length 01 bits: 00(( 0%) codes of length 01 bits: 0%) ##codes codesof oflength length02 02bits: bits: 162056 162056((52%) 52%) ##codes of length 03 bits: 128895 codes of length 03 bits: 128895((41%) 41%) ##codes codesof oflength length04 04bits: bits: 22673 22673(( 7%) 7%) ##codes 88(( 0%) codesof oflength length05 05bits: bits: 0%) ##codes 00(( 0%) codesof oflength length06 06bits: bits: 0%) ##codes of length 07 bits: 00(( 0%) codes of length 07 bits: 0%) ##codes 00(( 0%) codesof oflength length08 08bits: bits: 0%) ##codes 00(( 0%) codesof oflength length09 09bits: bits: 0%) ##codes 00(( 0%) codesof oflength length10 10bits: bits: 0%) ##codes 00(( 0%) codesof oflength length11 11bits: bits: 0%) ##codes 00(( 0%) codesof oflength length12 12bits: bits: 0%) ##codes 00(( 0%) codesof oflength length13 13bits: bits: 0%) ##codes 00(( 0%) codesof oflength length14 14bits: bits: 0%) ##codes 00(( 0%) codesof oflength length15 15bits: bits: 0%) ##codes 00(( 0%) codesof oflength length16 16bits: bits: 0%)

29 November 2011

1999-2011 by Richard Alan Peters II

36

JPEG / JFIF Information (via JPEGsnoop)


Huffman HuffmanTable: Table:(Dest (DestID: ID:0, 0,Class: Class:AC) AC) ##codes of length 01 bits: 00(( 0%) codes of length 01 bits: 0%) ##codes codesof oflength length02 02bits: bits: 2103874 2103874((53%) 53%) ##codes of length 03 bits: 393151 codes of length 03 bits: 393151((10%) 10%) ##codes codesof oflength length04 04bits: bits: 712367 712367((18%) 18%) ##codes of length 05 bits: 368952 codes of length 05 bits: 368952(( 9%) 9%) ##codes codesof oflength length06 06bits: bits: 148211 148211(( 4%) 4%) ##codes codesof oflength length07 07bits: bits: 116694 116694(( 3%) 3%) ##codes codesof oflength length08 08bits: bits: 52460 52460(( 1%) 1%) ##codes codesof oflength length09 09bits: bits: 49772 49772(( 1%) 1%) ##codes of length 10 bits: 19533 codes of length 10 bits: 19533(( 0%) 0%) ##codes codesof oflength length11 11bits: bits: 2118 2118(( 0%) 0%) ##codes codesof oflength length12 12bits: bits: 2566 2566(( 0%) 0%) ##codes of length 13 bits: 726 codes of length 13 bits: 726(( 0%) 0%) ##codes codesof oflength length14 14bits: bits: 367 367(( 0%) 0%) ##codes of length 15 bits: 24 codes of length 15 bits: 24(( 0%) 0%) ##codes codesof oflength length16 16bits: bits: 1861 1861(( 0%) 0%) Huffman HuffmanTable: Table:(Dest (DestID: ID:1, 1,Class: Class:AC) AC) ##codes of length 01 bits: 00(( 0%) codes of length 01 bits: 0%) ##codes codesof oflength length02 02bits: bits: 580346 580346((62%) 62%) ##codes of length 03 bits: 209085 codes of length 03 bits: 209085((22%) 22%) ##codes codesof oflength length04 04bits: bits: 25344 25344(( 3%) 3%) ##codes codesof oflength length05 05bits: bits: 50682 50682(( 5%) 5%) ##codes codesof oflength length06 06bits: bits: 50395 50395(( 5%) 5%) ##codes codesof oflength length07 07bits: bits: 10862 10862(( 1%) 1%) ##codes codesof oflength length08 08bits: bits: 2482 2482(( 0%) 0%) ##codes codesof oflength length09 09bits: bits: 2378 2378(( 0%) 0%) ##codes of length 10 bits: 941 codes of length 10 bits: 941(( 0%) 0%) ##codes codesof oflength length11 11bits: bits: 273 273(( 0%) 0%) ##codes of length 12 bits: 00(( 0%) codes of length 12 bits: 0%) ##codes 11(( 0%) codesof oflength length13 13bits: bits: 0%) ##codes of length 14 bits: 00(( 0%) codes of length 14 bits: 0%) ##codes 00(( 0%) codesof oflength length15 15bits: bits: 0%) ##codes 00(( 0%) codesof oflength length16 16bits: bits: 0%) YCC YCCclipping clippingin inDC: DC: Y component: Y component:[<0= [<0= Cb Cbcomponent: component:[<0= [<0= Cr Crcomponent: component:[<0= [<0= RGB RGBclipping clippingin inDC: DC: R component: R component:[<0= [<0= G G component: component:[<0= [<0= B component: B component:[<0= [<0= 0] 0][>255= [>255= 0] 0][>255= [>255= 0] 0][>255= [>255= 0] 0][>255= [>255= 0] 0][>255= [>255= 0] 0][>255= [>255= 0] 0] 0] 0] 0] 0] 0] 0] 0] 0] 0] 0]

Average AveragePixel PixelLuminance Luminance(Y): (Y): Y=[ 86] (range: Y=[ 86] (range:0..255) 0..255) Brightest BrightestPixel PixelSearch: Search: YCC=[ 1016, YCC=[ 1016, 0, 0, 0] 0] RGB=[255,255,255] RGB=[255,255,255]@ @MCU[ MCU[94, 94, 1] 1] Finished FinishedDecoding DecodingSCAN SCANData Data Number of RESTART Number of RESTARTmarkers markersdecoded: decoded:323 323 Next position in scan buffer: Next position in scan buffer: Offset Offset0x00302B75.1 0x00302B75.1

29 November 2011

1999-2011 by Richard Alan Peters II

37

JPEG / JFIF Information (via JPEGsnoop)


*** ***Marker: Marker:EOI EOI(End (Endof ofImage) Image)(xFFD9) (xFFD9)*** *** OFFSET: 0x00302B77 OFFSET: 0x00302B77 *** ***Searching SearchingCompression CompressionSignatures Signatures*** *** Signature: Signature: Signature Signature(Rotated): (Rotated): File FileOffset: Offset: Chroma Chromasubsampling: subsampling: EXIF EXIFMake/Model: Make/Model: EXIF EXIFMakernotes: Makernotes: EXIF EXIFSoftware: Software: 0166B0BC0B82C8233430BF67FA31C829 0166B0BC0B82C8233430BF67FA31C829 0166B0BC0B82C8233430BF67FA31C829 0166B0BC0B82C8233430BF67FA31C829 00bytes bytes 1x1 1x1 NONE NONE NONE NONE NONE NONE

Searching SearchingCompression CompressionSignatures: Signatures:(3327 (3327built-in, built-in,00user(*) user(*))) EXIF.Make EXIF.Model EXIF.Make/ /Software Software EXIF.Model ----------------------------------------------------------------------------------- ----------------------------------SW SW:[Adobe :[AdobePhotoshop] Photoshop] Quality Subsamp Quality SubsampMatch? Match? -------------------------------------------- -------------[Save [SaveAs As10] 10]

Based Basedon onthe theanalysis analysisof ofcompression compressioncharacteristics characteristicsand andEXIF EXIFmetadata: metadata: ASSESSMENT: ASSESSMENT:Class Class11--Image Imageis isprocessed/edited processed/edited Position PositionMarked Marked@ @MCU=[ MCU=[177, 177, 52](0,0) 52](0,0)YCC=[ YCC=[-468, -468, -60, -60, 30] 30]

29 November 2011

1999-2011 by Richard Alan Peters II

38

S-ar putea să vă placă și