Presentation is loading. Please wait.

Presentation is loading. Please wait.

Digital Media Lecture 4: Bitmapped images: Compression & Convolution Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan.

Similar presentations


Presentation on theme: "Digital Media Lecture 4: Bitmapped images: Compression & Convolution Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan."— Presentation transcript:

1 Digital Media Lecture 4: Bitmapped images: Compression & Convolution Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan

2 Bitmapped image compression Consider this image: With no compression... RGB encoding => 64 x 3 = 192 bytes 64 pixels

3 A Side Note We’ve been talking about RGB encoding for images… So… How many different colors can you make if using a 24 bit RGB color scheme? 2**24 = 16,777,216 different colors

4 Bitmapped image compression 64 pixels Color table representation: With 2 colors: #0 - 0 100 100 #1 - 255 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 -6 bytes for the color table -64 X 1 = 64 / 8 = 8 bytes for the pointer table 6 + 8 = 14 bytes total

5 Bitmapped image compression Run length encoding: 64 pixels 9RGB 6RGB 2RGB 6RGB 2RGB 6RGB 2RGB 6RGB 2RGB 6RGB 2RGB 6RGB 9RGB 9(0,0,255) 6(255,0,0) 2(0,0,255)6(255,0,0) 2(0,0,255) 6(255,0,0)2(0,0,255) 6(255,0,0) 2(0,0,255)6(255,0,0) 2(0,0,255) 6(255,0,0)9(0,0,255) = 52 bytes

6 Bitmapped image compression Run length encoding: RLE gets its advantage when there are a number of pixels next to one another that are the same color This advantage is dependent on the CONTENT of the image. Why? Could RLE result in a larger image? How?

7 Bitmapped image compression Run length encoding: Consider this image: 64 pixels RLE compression... 1RGB 1RGB 1RGB... 1RGB 1RGB 1RGB -> 256 bytes

8 Bitmapped image compression Lossless or Lossy? 24 bit RGB encoding is lossless What about table encoding? Lossless and lossy It depends on…? What about RLE encoding? Lossless

9 Bitmapped image compression JPEG JPG is Lossy Best suited for natural photographs Fine details with continuous tone changes JPEG takes advantage of the fact that humans don’t perceive the effect of high frequencies accurately High frequency components are associated with abrupt changes in image intensity… like a hard edge

10 JPEG finds these high frequency components by treating the image as a matrix Using the Discrete Cosine Transform (DCT) to convert an array of pixels into an array of coefficients The DCT is expensive computationally so the image is broken into 8x8 pixel squares and applied to each of the squares Bitmapped image compression JPEG

11 The high frequency components do not contribute much to the perceptible quality of the image So JPEG encodes these frequencies at different quantization levels… The low frequency components are with greater detail than the high frequency changes. ==>JPEG uses more storage space for the more visible elements of an image Bitmapped image compression JPEG

12 Why use a lossy compression technique? It is effective for the kinds of images it is intended for ==> 95% reduction in size But it suffers from artifacts like edges that blur... WHY? Can the difference be seen? HMMMmmmm… Bitmapped image compression JPEG

13 Bitmapped image compression Original file zoomed in

14 Bitmapped image compression Comparing tiff & jpeg

15 Bitmapped image compression JPEG Again… Why use a lossy compression technique? For this example: The original.tiff file is 1,300,000 bytes The jpeg file is only 156,000 bytes When viewing the two full size images you cannot see the minute differences Only zooming in to the image shows the artifacts caused by jpeg compression

16 Side Note! To make matters worse… Humans are a mess! The human vision system is very complex Upside down Split- left side of eye to right side of brain Right side of eye to left side of brain Cones and rods not uniformly distributed Cones and rods are upside down resulting in blind spots in each eye that we just ignore! Partially responsible for making lossy techniques work… you don’t see what you think you see ==>

17 Optical illusions Humans are a mess! See Additional Class Information: Illusions

18 Bitmapped image compression returning to Resizing issues…

19 Resizing issues Here the original 4x4 image is doubled in both dimensions to 8x8 by adding pixels But this example is pretty simple because the original is all one color…

20 Resizing issues If you double both dimensions you have to add pixels... But what color? ? Well, the answer is… it depends! ? ? ?

21 Resizing issues If you double both dimensions you have to add pixels... But what color? ? The simplest approach would be to copy the color but… You can consider the colors that surround the original pixel ? ? ?

22 Resizing issues If you cut each of the dimensions in half you remove… (8x8 -> 4x4)=> 64 - 16 = 48 pixels You have to remove 3/4 of the pixels! 64 pixels 16 pixels How do you decide which pixels to remove?

23 Resizing issues One answer: throw them away! Here it works... but only because it is a solid color 1 2 3

24 Resizing issues But what if it is multi-colored? You can use the information in the surrounding pixels to influence the remaining pixel How do you do this? Remember… it’s just numbers in there! 1 2 3

25 Convolution Underlies much of bitmapped image processing including downsizing and filters like blur and sharpen 1 2 3

26 Blur filter: Convolution under the sheets

27 Convolution: How it works Images as piles of numbers: Art and Mathematics Collide! (of Bezier Curves and Convolution) Images are collections of numbers

28 Convolution: How it works Convolution uses a convolution matrix (in this case 3 X 3) to process the original image one pixel at a time

29 Convolution: How it works Resulting in a completely new image… But how?

30 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255`255 0000000

31 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 X 255`255 0000000

32 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 X 255`255 0000000

33 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255 0000000 0/9 x 255 + 3/9 x 255 + 0/9 x 255 + 0/9 x 255 + 3/9 x 255 + 0/9 x 255 = 0 + 85 + 0 + 0 + 85 + 0 = 255

34 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255 X 0000000

35 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255 170 255 0000000 0/9 x 255 + 3/9 x 255 + 0/9 x 255 + 0/9 x 0+ 3/9 x 0 + 0/9 x 0= 0 + 85 + 0 + 0 + 0 + 0 = 170

36 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255 170 X 255 0000000

37 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255 170 255 0000000 0/9 x 255 + 3/9 x 255 + 0/9 x 255 + 0/9 x 0 + 3/9 x 0+ 0/9 x 0+ 0/9 x 255 + 3/9 x 255 + 0/9 x 255 = 0 + 85 + 0 + 0 + 0 + 0 + 0 + 85+ 0 = 170

38 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255 170 X 255 0000000

39 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255 170 255 0000000 0/9 x 0 + 3/9 x 0 + 0/9 x 0 + 0/9 x 255 + 3/9 x 255 + 0/9 x 255 + 0/9 x 255 + 3/9 x 255 + 0/9 x 255 = 0 + 0 + 0 + 0 + 85+ 0 + 0 + 85+ 0 = 170

40 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255 170 X 255 0000000

41 Convolution: How it works 0/93/90/9 3/90/9 3/90/9 255 170 255 0000000 0/9 x 255 + 3/9 x 255+ 0/9 x 255 + 0/9 x 255 + 3/9 x 255 + 0/9 x 255 = 0 + 85 + 0 + 0 + 85+ 0 = 255

42 Convolution: How it works 255 170 255 0000000

43 Convolution: How it works In short… –the math is simple –there’s a lot of multiplication –there’s a lot of addition –just keeping track of where you are is really the only issue here!

44


Download ppt "Digital Media Lecture 4: Bitmapped images: Compression & Convolution Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan."

Similar presentations


Ads by Google