350 likes | 473 Views
Digital Media. Lecture 4.1: Image Encoding Practice Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan. Refer to Supplemental text:. Ways to store an image as numbers: Bitmapped Graphics Ways to store an image as numbers: Vector Graphics. Practice Examples.
E N D
Digital Media Lecture 4.1: Image Encoding Practice Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan
Refer to Supplemental text: • Ways to store an image as numbers: Bitmapped Graphics • Ways to store an image as numbers: Vector Graphics
Practice Examples • Each image encoded three ways: • 24 bit RGB • Run Length Encoding • Table Encoding
Example 1 24 bit RGB 237, 132, 30 -orange 255, 255, 255 -white 67, 139, 23 -green 120, 248, 254 -cyan 232, 68, 21 -red 0, 59, 250 -blue
Example 1 24 bit RGB 237, 132, 30 -orange 255, 255, 255 -white 67, 139, 23 -green 120, 248, 254 -cyan 232, 68, 21 -red 0, 59, 250 -blue orange | white | green | cyan |cyan | cyan | red | orange | white | red | white | blue
Example 1 24 bit RGB 237, 132, 30 -orange 255, 255, 255 -white 67, 139, 23 -green 120, 248, 254 -cyan 232, 68, 21 -red 0, 59, 250 -blue orange | white | green | cyan |cyan | cyan | red | orange | white | red | white | blue 237, 132, 30 | 255, 255, 255 | 67, 139, 23 | 120, 248, 254 | 120, 248, 254 | 120, 248, 254 | 232, 68, 21 | 237, 132, 30 | 255, 255, 255 | 232, 68, 21 | 255, 255, 255 | 0, 59, 250
Example 1 24 bit RGB 237, 132, 30 -orange 255, 255, 255 -white 67, 139, 23 -green 120, 248, 254 -cyan 232, 68, 21 -red 0, 59, 250 -blue orange | white | green | cyan |cyan | cyan | red | orange | white | red | white | blue 237, 132, 30 | 255, 255, 255 | 67, 139, 23 | 120, 248, 254 | 120, 248, 254 | 120, 248, 254 | 232, 68, 21 | 237, 132, 30 | 255, 255, 255 | 232, 68, 21 | 255, 255, 255 | 0, 59, 250 36 bytes total (excluding any header)
Example 1 24 bit RGB Run length encoding RLE 1 byte for the count 237, 132, 30 -orange 255, 255, 255 -white 67, 139, 23 -green 120, 248, 254 -cyan 232, 68, 21 -red 0, 59, 250 -blue
Example 1 24 bit RGB Run length encoding RLE 1 byte for the count 237, 132, 30 -orange 255, 255, 255 -white 67, 139, 23 -green 120, 248, 254 -cyan 232, 68, 21 -red 0, 59, 250 -blue 1 orange | 1 white | 1 green | 3 cyan | 1 red | 1 orange | 1 white | 1 red | 1 white | 1 blue
Example 1 24 bit RGB Run length encoding RLE 1 byte for the count 237, 132, 30 -orange 255, 255, 255 -white 67, 139, 23 -green 120, 248, 254 -cyan 232, 68, 21 -red 0, 59, 250 -blue 1 orange | 1 white | 1 green | 3 cyan | 1 red | 1 orange | 1 white | 1 red | 1 white | 1 blue 1 237, 132, 30 | 1 255, 255, 255 | 1 67, 139, 23 | 3 120, 248, 254 | 1 232, 68, 21 | 1 237, 132, 30 | 1 255, 255, 255 | 1 232, 68, 21 | 1 255, 255, 255 | 1 0, 59, 250
Example 1 24 bit RGB Run length encoding RLE 1 byte for the count 237, 132, 30 -orange 255, 255, 255 -white 67, 139, 23 -green 120, 248, 254 -cyan 232, 68, 21 -red 0, 59, 250 -blue 1 orange | 1 white | 1 green | 3 cyan | 1 red | 1 orange | 1 white | 1 red | 1 white | 1 blue 1 237, 132, 30 | 1 255, 255, 255 | 1 67, 139, 23 | 3 120, 248, 254 | 1 232, 68, 21 | 1 237, 132, 30 | 1 255, 255, 255 | 1 232, 68, 21 | 1 255, 255, 255 | 1 0, 59, 250 40 bytes total (excluding any header) notice that in this case, the RLE is larger than the 24 bit RGB
Example 1 24 bit RGB Table Encoding 237, 132, 30 -orange 255, 255, 255 -white 67, 139, 23 -green 120, 248, 254 -cyan 232, 68, 21 -red 0, 59, 250 -blue
Example 1 24 bit RGB Table Encoding 237, 132, 30 -orange 237, 132, 30 orange 000 255, 255, 255 -white 255, 255, 255 white 001 67, 139, 23 -green 67, 139, 23 green 010 120, 248, 254 -cyan 120, 248, 254 cyan 011 232, 68, 21 -red 232, 68, 21 red 100 0, 59, 250 -blue 0, 59, 250 blue 101
Example 1 24 bit RGB Table Encoding 237, 132, 30 -orange 237, 132, 30 orange 000 255, 255, 255 -white 255, 255, 255 white 001 67, 139, 23 -green 67, 139, 23 green 010 120, 248, 254 -cyan 120, 248, 254 cyan 011 232, 68, 21 -red 232, 68, 21 red 100 0, 59, 250 -blue 0, 59, 250 blue 101 color table: 18 bytes
Example 1 24 bit RGB Table Encoding 237, 132, 30 -orange 237, 132, 30 orange 000 255, 255, 255 -white 255, 255, 255 white 001 67, 139, 23 -green 67, 139, 23 green 010 120, 248, 254 -cyan 120, 248, 254 cyan 011 232, 68, 21 -red 232, 68, 21 red 100 0, 59, 250 -blue 0, 59, 250 blue 101 color table: 18 bytes 000 001 010 011 011 011 100 000 001 100 001 101
Example 1 24 bit RGB Table Encoding 237, 132, 30 -orange 237, 132, 30 orange 000 255, 255, 255 -white 255, 255, 255 white 001 67, 139, 23 -green 67, 139, 23 green 010 120, 248, 254 -cyan 120, 248, 254 cyan 011 232, 68, 21 -red 232, 68, 21 red 100 0, 59, 250 -blue 0, 59, 250 blue 101 color table: 18 bytes 000 001 010 011 011 011 100 000 001 100 001 101 bitmapped portion: 36 bits/8 = 5 (4.5) bytes
Example 1 24 bit RGB Table Encoding 237, 132, 30 orange 000 237, 132, 30 -orange 255, 255, 255 white 001 255, 255, 255 -white 67, 139, 23 -green 67, 139, 23 green 010 120, 248, 254 cyan 011 120, 248, 254 -cyan 232, 68, 21 red 100 232, 68, 21 -red 0, 59, 250 -blue 0, 59, 250 blue 101 color table: 18 bytes 000 001 010 011 011 011 100 000 001 100 001 101 bitmapped portion: 36 bits/8 = 5 (4.5) bytes Total: 18 + 5 = 23 bytes (excluding any header)
Example 2 24 bit RGB 232, 68, 21 -red 255, 255, 255 -white 237, 132, 30 -orange 0, 59, 250 -blue
Example 2 24 bit RGB 232, 68, 21 -red 255, 255, 255 -white 237, 132, 30 -orange 0, 59, 250 -blue red | orange | white | white | red | white | blue | blue | red | white | white | white 232, 68, 21 | 237, 132, 30 | 255, 255, 255 | 255, 255, 255 | 232, 68, 21 | 255, 255, 255 | 0, 59, 250 | 0, 59, 250 | 232, 68, 21 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 36 bytes total (excluding any header)
Example 2 24 bit RGB Run length encoding RLE 1 byte for the count 232, 68, 21 -red 255, 255, 255 -white 237, 132, 30 -orange 0, 59, 250 -blue
Example 2 24 bit RGB Run length encoding RLE 1 byte for the count 232, 68, 21 -red 255, 255, 255 -white 237, 132, 30 -orange 0, 59, 250 -blue 1 red | 1 orange | 2 white | 1 red | 1 white | 2 blue | 1 red | 3 white 1 232, 68, 21 | 1 237, 132, 30 | 2 255, 255, 255 | 1 232, 68, 21 | 1 255, 255, 255 | 2 0, 59, 250 | 1 232, 68, 21 | 3 255, 255, 255 | 32 bytes total (excluding any header)
Example 2 24 bit RGB Table Encoding 232, 68, 21 -red 255, 255, 255 -white 237, 132, 30 -orange 0, 59, 250 -blue
Example 2 24 bit RGB Table Encoding 232, 68, 21 -red 232, 68, 21 red 00 255, 255, 255 -white 255, 255, 255 white 01 237, 132, 30 -orange 237, 132, 30 orange 10 0, 59, 250 -blue 0, 59, 250 blue 11 color table: 12 bytes 00 10 01 01 00 01 11 11 00 01 01 01 bitmapped portion: 24 bits/8 = 3 bytes Total: 12 + 3 = 15 bytes (excluding any header)
Example 3 24 bit RGB 237, 132, 30 -orange 255, 255, 255 -white 120, 248, 254 -cyan orange | orange | white | orange | cyan | cyan | orange | cyan | orange 237, 132, 30 | 237, 132, 30 | 255, 255, 255 | 237, 132, 30 | 120, 248, 254 | 120, 248, 254 | 237, 132, 30 | 120, 248, 254 | 237, 132, 30 27 bytes total (excluding any header)
Example 3 24 bit RGB Run length encoding RLE 1 byte for the count 237, 132, 30 -orange 255, 255, 255 -white 120, 248, 254 -cyan 2 orange | 1 white | 1 orange | 2 cyan | 1 orange | 1 cyan | 1 orange 2 237, 132, 30 | 1 255, 255, 255 | 1 237, 132, 30 | 2 120, 248, 254 | 1 237, 132, 30 | 1 120, 248, 254 | 1 237, 132, 30 28 bytes total (excluding any header)
Example 3 24 bit RGB Table Encoding 237, 132, 30 -orange 255, 255, 255 -white 120, 248, 254 -cyan 237, 132, 30 orange 00 color table: 9 bytes 255, 255, 255 white 01 120, 248, 254 cyan 10 00 00 01 00 10 10 00 10 00 bitmapped portion: 18 bits / 8 = 3 bytes Total: 9 + 3 = 12 bytes (excluding any header)
237, 132, 30 -orange Example 4 24 bit RGB Table Encoding 237, 132, 30 orange 000 255, 255, 255 -white 255, 255, 255 white 001 67, 139, 23 -green 67, 139, 23 green 010 120, 248, 254 -cyan 120, 248, 254 cyan 011 232, 68, 21 -red 232, 68, 21 red 100 0, 59, 250 -blue 0, 59, 250 blue 101 color table: 18 bytes 000 000 001 010 000 011 011 011 000 100 000 001 000 100 001 101 bitmapped portion: 48 bits/8 = 6 bytes Total: 18 + 6 = 24 bytes (excluding any header)