Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Computer Science – Chapter 9 CSc 2010 Spring 2011 Marco Valero.

Similar presentations


Presentation on theme: "Introduction to Computer Science – Chapter 9 CSc 2010 Spring 2011 Marco Valero."— Presentation transcript:

1 Introduction to Computer Science – Chapter 9 CSc 2010 Spring 2011 Marco Valero

2 Overview Review image basics Making pictures Image processing Shrinking and enlarging Blurring and sharpening Negative and embossing Robot vision

3 Image basics We used takePicture and show to respectively take and show pictures already We’ve also seen savePicture as a means to save a snapshot to disk makePicture( ) will load a picture from disk and return a picture object ▫myPic = makePicture(pickAFile())

4 Image basics Height and width can be retrieved from a picture ▫getHeight( ) and getWidth( ) show(, ) ▫We can call show(myPic, ‘my title’) to create a window with a title

5 Making pictures Rather than taking pictures, we can create our own ▫width = height = 100 ▫newPic = makePicture(width, height, black) RGB ▫Each is a byte, 0-255 We can loop through each pixel just like a matrix and change the value

6 Image processing We can think of the bitmap as a matrix then any transformation from one picture to another is a matrix transformation 500x500 pixel bitmap ▫250k pixels ▫If 10 operations per transformation that’s 2.5 mil ops! Image processing is intensive

7 Shrinking & enlarging If we wanted to shrink a given n x n image by a factor of f ▫Result size is n/f x n/f ▫Bitmap[x*f, y*f] -> NewBitmap[x, y] Enlarging is the inverse ▫Result size is n*f x n*f ▫Bitmap[x/f, y/f] -> NewBitmap[x, y]

8 Blurring & sharpening Pixel transformation as a result of its local neighbors’ values Blurring is done by setting a pixels value to the averages of its neighbors ▫V = sum([getRed(up),getRed(left),…]) / 5 Sharpening is done by subtracting the sum of its neighbors ▫V = 5*getRed(self) – sum([neighborvalues])

9 Negative & embossing To create a negative of an image we simply subtract 255 from the current value ▫V = 255 – getRed(pixel) Creating an embossed effect is done by subtracting a neighbors value from a pixel ▫V = getRed(pixel) – getRed(neighbor)

10 Robot vision Are computers good at recognizing objects? Are _we_ good at recognizing objects? What would a simple tracking code look like?

11 Robot vision What if we only focused on the object? ▫We can use high contrast filter ▫What are the issues with this? Blob filtering ▫takePicture(‘blob’) ▫Compare to older program


Download ppt "Introduction to Computer Science – Chapter 9 CSc 2010 Spring 2011 Marco Valero."

Similar presentations


Ads by Google