introduction to electrical and computer engineering jan p. allebach school of electrical and...
TRANSCRIPT
Introduction to electrical and computer engineering
Jan P. Allebach
School of Electrical and Computer Engineering
Special thanks to
Dan Dickinson Mu Qiao Jennifer Talavage
Synopsis
What is electrical and computer engineering? Digital photography Image enhancement Digital halftoning
What do electrical/computer engineers do?
Analyze and design systems Develop algorithms Write programs Work with people
– Team members– Customers– Management
What skills does an electrical/computer engineer need?
Desire to solve problems, and make things work Willingness to work hard Good math ability Good communications skills Ability to work with others
Technology areas
Materials and devices Circuits and systems Power systems Computers Communications and networking Signal and image processing
Signal and image processing
CD and DVD technologies High definition TV Medical imaging systems
– CAT scan– MRI
MP3 Cell phones Voice recognition and synthesis Digital cameras Inkjet and laser printers
Synopsis
What is electrical and computer engineering? Digital photography Image enhancement Digital halftoning
Anatomy of a film-based camera
SceneLensesIrisColor filmFocal plane
shutter
What’s different about a digital camera?
Replace the film by– detector array– image processing module– digital storage
Detector array
Note that we must demosiac the image to obtain 2048x1536 pixels for each of the R, G, and B frames.
Digitization of the pixel values
Each pixel value is represented by three 8-bit binary numbers
Binary Decimal
0000 0000 00000 0001 10000 0010 20000 0011 30000 0100 40000 0101 50000 0110 60000 0111 7
. . . . . . . . .
1111 1100 2521111 1101 2531111 1110 2541111 1111 255
Associated Color
A picture is worth a lot more than a thousand words!
Total no. pixels = 2048x1536 = 3,145,728 or 3.1 Megapixels.
With 3 bytes/pixel, we have 9.3 Megabytes/image. With image compression, this image can be stored in
about 1 Megabyte A 512 Mbyte flashRAM card will then hold about 500
images.
Synopsis
What is electrical and computer engineering? Digital photography Image enhancement Digital halftoning
Contrast modification
The image is mapped pixel-by-pixel through the transformation curve.
22233334444453332222222666667000Input imageOutput imageGray value transformation
01234567InputOutput00026777
Alternate representation of the grayscale transformation
Contrast enhancement example
Original Image Enhanced Image
Spatial filtering
Each output pixel is a weighted sum of input pixels in neighborhood of output pixel location.
000000000000001111001111001111001111-1-1-1-1-1-1-1-180Filter weightsInput ImageOutput Image
Spatial filtering
000000000000001111001111001111001111-1-1-1-1-1-1-1-180Filter weightsInput ImageOutput Image0000000000
Spatial filtering
000000000000001111001111001111001111-1-1-1-1-1-1-1-180Filter weightsInput ImageOutput Image0000000000-1
Spatial filtering
000000000000001111001111001111001111-1-1-1-1-1-1-1-180Filter weightsInput ImageOutput Image0000000000-1-2
Spatial filtering
000000000000001111001111001111001111-1-1-1-1-1-1-1-180Filter weightsInput ImageOutput Image0000000000-1-2-3-3-3-2-3-3-3
Spatial filtering
000000000000001111001111001111001111-1-1-1-1-1-1-1-180Filter weightsInput ImageOutput Image0000000000-1-2-3-3-3-2-3-3-35
Spatial filtering
000000000000001111001111001111001111-1-1-1-1-1-1-1-180Filter weightsInput ImageOutput Image0000000000-1-2-3-3-3-2-3-3-35333333
Spatial filtering
000000000000001111001111001111001111-1-1-1-1-1-1-1-180Filter weightsInput ImageOutput Image0000000000-1-2-3-3-3-2-3-3-353333330
Spatial filtering
Filter responds only to edges – no response in constant areas.
000000000000001111001111001111001111-1-1-1-1-1-1-1-180Filter weightsInput ImageOutput Image0000000000-1-2-3-3-3-2-3-3-35333333000000000
Sharpening
To sharpen the image, we simply add to it a scaled component of the edge detection result.
0000000000000011110011110011110011110Input ImageSharpened Image00000000001.31111111110Output of edge detection filter
0000000000-1-2-3-3-3-2-3-3-35333333000000000+=0.1x1.31.31.31.31.3-.3-.3-.3-.3-.3-.3-.2-.21.5-.1
Sharpening example
Original Image Sharpened Image
Synopsis
What is electrical and computer engineering? Digital photography Image enhancement Digital halftoning
Digital printing
Each pixel in a monochrome image is represented by a string of eight 0s and 1s.
A monochrome digital printer represents each pixel by a single 0 or 1:– “0” means no colorant at that pixel location– “1” means put a colorant dot at that pixel location
To create the impression of a continuous-tone image, we use a process known as halftoning.
Digital halftoning
The perception of levels of gray intermediate to black or white depends on a local average of the binary texture.
Digital halftoning
Detail is rendered by local modulation of this texture.
Screening is a thresholding process
Simple point-to-point transformation of each pixel in the continuous-tone image to a binary value.
Process requires no memory or neighborhood information.
1 1 1 1
1 3 3 1
1 3 3
1 1 1
1
1
0.5
1.52.5
3.5
1 1 1 1
1 3 3 1
1 3 3
1 1 1
1
1
Continuous-Tone Image
Halftone Image
Compare
0.5
1.52.5
3.5
Threshold Matrix
Threshold
Why not use a single threshold? A single threshold yields only a silhouette
representation of the image. No gray levels intermediate to white or black
are rendered. To generate additional gray levels, the
threshold must be dithered, i.e. perturbed about the constant value.
Continuous-tone original image
Result of applying a fixed threshold at midtone
Basic structure of screening algorithm
1 1 1 1
1 3 3 1
1 3 3
1 1 1
1
1
0.5
1.52.5
3.5
1 1 1 1
1 3 3 1
1 3 3
1 1 1
1
1
Continuous-Tone Image
Halftone Image
Compare
0.5
1.52.5
3.5
Threshold Matrix
The threshold matrix is periodically tiled over the entire continuous-tone image.
How tone is rendered
If we threshold the screen against a constant gray value, we obtain the binary texture used to represent that constant level of absorptance.
12345678910111213141516777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777Threshold MatrixHalftone ImageContinuous-Tone ImageCompare
Dot profile function The family of binary textures used to render each level of constant tone is called the dot profile function. There is a one-to-one relationship between the dot profile and the screen.
12345678910111213141516Threshold MatrixDot Profile
That’s all!
Thanks for your attention Now let’s try some of these ideas out!