Georgia Institute of Technology

Slides:



Advertisements
Similar presentations
Conditionals-part31 Conditionals – part 3 Barb Ericson Georgia Institute of Technology Nov 2009.
Advertisements

CSC1401 Using Decisions in Java - 2. Learning Goals Understand at a conceptual and practical level How to use conditionals with > 2 possibilities How.
ManipulatingPictures-Mod6-part21 Manipulating Pictures, Arrays, and Loops part 2 Barb Ericson Georgia Institute of Technology.
Georgia Institute of Technology Manipulating Pictures, Arrays, and Loops part 1.
Conditionals-part11 Barb Ericson Georgia Institute of Technology Nov 2009.
Georgia Institute of Technology Two-Dimensional Arrays and Nested Loops – part 6 Barb Ericson Georgia Institute of Technology August 2005.
TOPIC 7 MODIFYING PIXELS IN A MATRIX NESTED FOR LOOPS 1 Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by.
NestedLoops-part11 Nested Loops – part 1 Barb Ericson Georgia Institute of Technology Nov 2009.
Replacing colors using if We don’t have to do one-to-one changes or replacements of color We can use if to decide if we want to make a change.  We could.
CSC1401 Viewing a picture as a 2D image - 1. Review from the last week We used a getPixels() to get all of the pixels of a picture But this has been somewhat.
ManipulatingPictures-part11 Manipulating Pictures, Arrays, and Loops part 1 Barb Ericson Georgia Institute of Technology Nov 2009.
Georgia Institute of Technology Movies part 5 Barb Ericson Georgia Institute of Technology April 2006.
TOPIC 11 RETURNING VALUES FROM METHODS PICTURE TRANSFORMATIONS 1 Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach.
Georgia Institute of Technology Manipulating Pictures, Arrays, and Loops Barb Ericson Georgia Institute of Technology August 2005.
TOPIC 6 MODIFYING PICTURES USING LOOPS 1 Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by M. Guzdial and.
CS 101: Introduction to Computing Color replacements and targeted color replacement (if statement) Developed by Mark Guzdial, Georgia Institute of Technology,
ManipulatingPictures-Mod6-part61 Manipulating Pictures, Arrays, and Loops: Eliminating color, Inversion, grey scale and adjusting for luminance Barb Ericson.
03-ConditionalsInPictures Barb Ericson Georgia Institute of Technology Feb 2010 Working with ranges in pictures.
Chapter 5: Advanced Picture Techniques (partial deck)
Creative Commons Attribution Non-Commercial Share Alike License sa/3.0/
Georgia Institute of Technology Introduction to Media Computation Barb Ericson Georgia Institute of Technology May 2006.
CPSC1301 Computer Science 1 Chapter 4 Manipulating Pictures, Arrays, and Loops part 5.
Conditionals-part41 Conditionals – part 4 Barb Ericson Georgia Institute of Technology Dec 2009.
Conditionals-Mod8-part41 Conditionals – part 4 Replace background Barb Ericson Georgia Institute of Technology May 2007.
CSC1401 Using Decisions in Java - 1. Recall from Alice We only wanted to shoot a lightning bolt at a philosopher So, we used the If statement.
Conditionals-part21 Conditionals – part 2 Barb Ericson Georgia Institute of Technology Nov 2009.
TOPIC 10 THE IF STATEMENT 1 Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by M. Guzdial and B. Ericson,
Georgia Institute of Technology What is new in Java 5.0 (1.5)? Barb Ericson Georgia Institute of Technology June 2006.
Georgia Institute of Technology Manipulating Pictures, Arrays, and Loops Barb Ericson Georgia Institute of Technology August 2005.
Conditionals-Mod8-part21 Conditionals – part 2 Edge Detection Barb Ericson Georgia Institute of Technology May 2007.
ManipulatingPictures-part31 Manipulating Pictures, Arrays, and Loops part 3 Barb Ericson Georgia Institute of Technology Nov 2009.
04-ManipulatingPictures-part21 Manipulating Pictures, Arrays, and Loops part 2 Barb Ericson Georgia Institute of Technology June 2008.
Georgia Institute of Technology Two-Dimensional Arrays and Nested Loops – part 2 Barb Ericson Georgia Institute of Technology August 2005.
Manipulating Pictures, Arrays, and Loops part 2
Manipulating Pictures, Arrays, and Loops part 2
Topic 6 Modifying Pictures Using Loops
Barb Ericson Georgia Institute of Technology Dec 2009
Manipulating Pictures, Arrays, and Loops part 3
Topic 10 The if statement Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by M. Guzdial and B. Ericson,
Georgia Institute of Technology
Barb Ericson Georgia Institute of Technology August 2005
Barb Ericson Georgia Institute of Technology August 2005
Manipulating Pictures, Arrays, and Loops part 2
Manipulating Pictures, Arrays, and Loops part 2
Georgia Institute of Technology
Manipulating Pictures, Arrays, and Loops
Barb Ericson Georgia Institute of Technology August 2005
Two-Dimensional Arrays and Nested Loops – part 1
Barb Ericson Georgia Institute of Technology August 2005
Manipulating Pictures, Arrays, and Loops part 5
Two-Dimensional Arrays and Nested Loops – part 2
Two-Dimensional Arrays and Nested Loops – part 1
Georgia Institute of Technology
Workshop for Programming And Systems Management Teachers
Manipulating Pictures, Arrays, and Loops part 4
Manipulating Pictures, Arrays, and Loops
Manipulating Pictures, Arrays, and Loops part 3
CSE 113 A February , 2009.
Two-Dimensional Arrays and Nested Loops – part 2
Manipulating Pictures, Arrays, and Loops
Manipulating Pictures, Arrays, and Loops
Manipulating Pictures, Arrays, and Loops
February , 2009 CSE 113 B.
Manipulating Pictures, Arrays, and Loops part 6
Chapter 6 Conditionals - part 4
Barb Ericson Georgia Institute of Technology May 2006
CS1315: Introduction to Media Computation
Manipulating Pictures, Arrays, and Loops
Manipulating Pictures, Arrays, and Loops part 6
Presentation transcript:

Georgia Institute of Technology Conditionals – part 3 Georgia Institute of Technology

Georgia Institute of Technology Learning Goals Understand at a conceptual and practical level How to use conditionals with > 2 possibilities How to sepia-tint a picture How to test for values in ranges How to posterize a picture Georgia Institute of Technology

Using Multiple If Statements If we are doing different things based on a set of ranges 0 <= x <= 5 5 < x <= 10 10 < x if (0 <= x && x <= 5) Statement or block if (5 < x && x <= 10) if (10 < x) Georgia Institute of Technology

Using “else if” for > 2 Options If we are doing different things based on a set of ranges 0 <= x <= 5 5 < x <= 10 10 < x You don’t need to check if x > 5 since the first if block would have executed if it was if (0 <= x && x <= 5) Statement or block else if (x <= 10) else Georgia Institute of Technology

Conditionals with > 2 Choices if (0 <= x && x <= 5) { } else if (x <= 10) else // what is x? Georgia Institute of Technology

Georgia Institute of Technology

Georgia Institute of Technology Exercise: Assume a grade is >=0 and <=100 Print out “A” if the grade is >90 Print out “B” if the grade is (80, 90] Print out “C” if the grade is (70, 80] Print out “F” if otherwise Georgia Institute of Technology

Georgia Institute of Technology

Georgia Institute of Technology Posterize Reducing the number of different colors in an image Set all values in a range to one value (the midpoint of the range) Set all < 64 to 31 Set all <128 to 95 Set all < 192 to 159 Set the rest to 223 The image here is part of market.jpg after doing posterization. Georgia Institute of Technology

Exercise: Posterize Algorithm Loop through all the pixels in an image Get the red value for the pixel Find the right range and set the new red value Get the green value for the pixel Find the right range and set the new green value Get the blue value for the pixel Find the right range and set the new blue value Georgia Institute of Technology

Georgia Institute of Technology

Georgia Institute of Technology Sepia-Toned Pictures Have a yellowish tint, used to make things look old and western Georgia Institute of Technology

Sepia-toned Algorithm First make the picture grayscale. Loop through the pixels in the picture Change the shadows (darkest grays) to be even darker (0 <= red < 60) Make the middle grays a brown color (60 <= red < 190) Make the highlights (lightest grays) a bit yellow (190 <= red) Increase red and green Or decrease blue Georgia Institute of Technology

Georgia Institute of Technology Sepia-toned Method public void sepiaTint() { Pixel pixelObj = null; double redValue = 0; double greenValue = 0; double blueValue = 0; // first change the current picture to grayscale this.grayscale(); Georgia Institute of Technology

Sepia-toned Method - Cont // loop through the pixels for (int x = 0; x < this.getWidth(); x++) { for (int y = 0; y < this.getHeight(); y++) // get the current pixel and color values pixelObj = this.getPixel(x,y); redValue = pixelObj.getRed(); greenValue = pixelObj.getGreen(); blueValue = pixelObj.getBlue(); Georgia Institute of Technology

Sepia-toned Method - Cont // tint the shadows darker if (redValue < 60) { redValue = redValue * 0.9; greenValue = greenValue * 0.9; blueValue = blueValue * 0.9; } // tint the midtones a light brown by reducing the blue else if (redValue < 190) blueValue = blueValue * 0.8; Georgia Institute of Technology

Sepia-toned Method - Cont // tint the highlights a light yellow // by reducing the blue else { blueValue = blueValue * 0.9; } // set the colors pixelObj.setRed((int) redValue); pixelObj.setGreen((int) greenValue); pixelObj.setBlue((int) blueValue); Georgia Institute of Technology

Georgia Institute of Technology Posterize Exercise Write the method posterize() in the Picture.java class that will reduce the number of colors by changing color values to 1 of 4 values Set all 0 to 63 to 31 (< 64) Set all 64 to 127 to 95 (< 128) Set all 128 to 191 to 159 (< 192) Set all 192 to 255 to 223 Test with tammy.jpg Georgia Institute of Technology

Georgia Institute of Technology Testing sepiaTint String file = FileChooser.getMediaPath(“gorge.jpg”); Picture p = new Picture(file); p.explore(); p.sepiaTint(); Georgia Institute of Technology

Georgia Institute of Technology Summary Use if, else if, and else for > 2 possiblities Add additional else if’s as needed To sepia-tint a picture Change it to grayscale Make the shadows darker Make the middle grays brown Make the lightest grays yellow To posterize a picture Change each color to the center of a range of colors Georgia Institute of Technology