image encodings

22
CSC 1040 - Computing with Images 1 Image encodings CSC 1040

Upload: naiya

Post on 07-Feb-2016

24 views

Category:

Documents


1 download

DESCRIPTION

Image encodings. CSC 1040. Last time: Color basics. Additive primaries Start with black background, use a hard edged brush of large diameter and set mode to “Difference” Apply red, green, blue Subtractive primaries Start with white background, - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Image encodings

CSC 1040 - Computing with Images 1

Image encodings

CSC 1040

Page 2: Image encodings

CSC 1040 - Computing with Images 2

Last time: Color basics

Page 3: Image encodings

CSC 1040 - Computing with Images 3

Color:(108,86,142) Position: (12,9)

x = 12

y = 9 red=108 green=86 blue=142

Page 4: Image encodings

CSC 1040 - Computing with Images 4

Today: Pixel encodings

Bitmap 1 bit

Grayscale 8 bits

RGB Color 3 colors: red, green, blue

8 bits/color24 bits

Page 5: Image encodings

CSC 1040 - Computing with Images 5

1 byte = 8 bitsHow much can we encode in 8 bits?

• Let’s walk it through.– If we have one bit, we can represent two patterns:

0 and 1.

– If we have two bits, we can represent four patterns: 00, 01, 10, and 11.

– If we have three bits, we can represent eight patterns: 000, 001, 010, 011, 100, 101, 110, 111

Page 6: Image encodings

CSC 1040 - Computing with Images 6

In n bits, we can have 2n patterns

– In 8 bits, we can have 28 patterns, or 256

– Values can be encoded as numbers from 0..255

Page 7: Image encodings

CSC 1040 - Computing with Images 7

Encoding RGB• Each component color (red,

green, and blue) is encoded as a single byte

• Colors go from (0,0,0) to (255,255,255)– If all three components are the

same, the color is in greyscale• (50,50,50) at (2,2)

– (0,0,0) (at position (1,2) in example) is black

– (255,255,255) is white

Page 8: Image encodings

CSC 1040 - Computing with Images 8

Is that enough?

• We’re representing color in 24 (3 * 8) bits.– That’s 16,777,216 (224) possible colors– Our eye can discern millions of colors - so probably pretty close

• Some graphics systems support 32 bits per pixel– Maybe more pixels for color, or an additional 8 bits to represent

256 levels of translucence

Remember: An image that uses 24 bit color is 24 times the size of

a bitmap image of the same resolution

Page 9: Image encodings

File Size

File size is usually measured in: bits, bytes, etc:• Byte = 8 bits• Kilobyte = 1024 bytes (= 210 bytes)• Megabyte = 1024 KB (= 210 KB or 220 bytes )• Gigabyte = 1024 MB (= 210 MB or 230 bytes)• Terabyte = 1024 GB (= 210 GB or 240 bytes)• …

CSC 1040 - Computing with Images 9

Page 10: Image encodings

Image size

• Image size:– Pixels (eg: 300 x 200)– Inches/centimeters (eg: 3 x 2 inches)

• Resolution: #pixels/inch (eg: 100 pixels/inch)

CSC 1040 - Computing with Images 10

Page 11: Image encodings

Increasing Image Print Size• Image size:

– Pixels (eg: 300 x 200)– Inches/centimeters (eg: 3 x 2 inches)

CSC 1040 - Computing with Images 11

6 x 43 x 2

Page 12: Image encodings

Increasing Image Print Size• Image size:

– Pixels (eg: 300 x 200)– Inches/centimeters (eg: 3 x 2 inches)

• Resolution: #pixels/inch (eg: 100 pixels/inch)

CSC 1040 - Computing with Images 12

6 x 43 x 2

50

Same pixels, NO Resampling

Page 13: Image encodings

Decreasing Image Print Size• Image size:

– Pixels (eg: 300 x 200)– Inches/centimeters (eg: 3 x 2 inches)

• Resolution: #pixels/inch (eg: 100 pixels/inch)

CSC 1040 - Computing with Images 13

1.5 x 13 x 2

200

Page 14: Image encodings

Changing the Number of Pixels (Resampling image)

• Image size:– Pixels 300 x 200)– Inches/centimeters (eg: 3 x 2 inches)

• Resolution: #pixels/inch (eg: 100 pixels/inch)

CSC 1040 - Computing with Images 14

150 x 100300 x 200

50

Page 15: Image encodings

Photoshop Image Size Menu

CSC 1040 - Computing with Images 15

Lock aspect ratio

Changes the actual pixels

Actual pixels

Print size

Page 16: Image encodings

CSC 1040 - Computing with Images 16

Pixel encodings

Bitmap 1 bit

Grayscale 8 bits

RGB Color 3 colors: red, green, blue

8 bits/color24 bits

Page 17: Image encodings

CSC 1040 - Computing with Images 17

RGB Color File Size

RGB color image24 bits (3 bytes)/pixel

Example: Image size: 300 x 200 pixels

•Total pixels = 300 x 200 pixels = 60,000 pixels

•File size = 60,000 x 3 bytes (3 bytes/pixel ) = 180,000

…..since there are 1024 bytes/KB:= 175.8 KB

Page 18: Image encodings

CSC 1040 - Computing with Images 18

Grayscale File Size

Grayscale image8 bits (1 byte)/pixel

Example: Image size: 300 x 200 pixels

•Total pixels = 300 x 200 pixels = 60,000 pixels

•File size = 60,000 bytes (1 byte/pixel )…..since there are 1024 bytes/KB:

= 58.6 KB

Page 19: Image encodings

CSC 1040 - Computing with Images 19

Bitmap File Size

Bitmap image1 bit/pixel

Example: Image size: 300 x 200 pixels

• Total Pixels = 300 x 200 pixels = 60,000 pixels

•File size = 60,000 bits (1 bit/pixel )….. Since there are 8 bits/byte:

•File size = 60,000 / 8 bytes = 7500 bytes

…..since there are 1024 bytes/KB:= 7.3 KB

Page 20: Image encodings

CSC 1040 - Computing with Images 20

Comparing file sizes for 300 x 200 image:

Bitmap 1 bit

Grayscale 8 bits (1 byte)

RGB Color 3 colors: red, green, blue

24 bits (3 bytes)

7.3 KB 58.6 KB 175.8 KB

Page 21: Image encodings

CSC 1040 - Computing with Images 21

Type of image Bits/pixel 320 x 240image

640 x 480image

1024 x 768image

Bitmap 1 76,800 bits=9,600 bytes=9.375KB

307,200 bits=38,400=37.5KB

786,432 bits=98,304 bytes=96KB

Grayscale 8 (1 byte)

614,400 bits=76,800 bytes=75 KB

2,457,600 bits= 307,200 bytes=300 KB

6291456 bits786,432 bytes768 KB

RGB color 24(3 bytes)

225 KB 900 KB 2,304 KB=2.25 MB

32 bit color(4 bytes)

32(4 bytes)

300 KB 1200 KB 3,072 KB= 3 MB

Size of images: More Examples

Page 22: Image encodings

CSC 1040 - Computing with Images 22

Next Time: Image Compression• Goal: Use fewer bytes to encode the same

or similar information• Reduce redundancy• Take advantage of human visual system –

don’t bother differentiating things that are unnoticeable

• Lose unimportant details