Introduction to Media Computation

Slides:



Advertisements
Similar presentations
Computer Science 101 RGB Color System. Simplified Introduction to Color Vision Go to How We See: The First Steps of Human Vision or Color Vision for more.
Advertisements

TOPIC 5 INTRODUCTION TO PICTURES 1 1 Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by M. Guzdial and B.
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.
Bit Depth and Spatial Resolution SIMG-201 Survey of Imaging Science © 2002 CIS/RIT.
Mr. Chapman Science 8.  As we all know by now (I hope!) the visible spectrum of light is all the colours that you can see in the rainbow – ROY G. BIV.
Digital Media Lecture 6: Color Part 1 Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan.
Technology and digital images. Objectives Describe how the characteristics and behaviors of white light allow us to see colored objects. Describe the.
Georgia Institute of Technology Introduction to Media Computation Barb Ericson Georgia Institute of Technology May 2006.
© 1999 Rochester Institute of Technology Color. Imaging Science Workshop for Teachers ©Chester F. Carlson Center for Imaging Science at RIT Color Images.
TOPIC 4 INTRODUCTION TO MEDIA COMPUTATION: DIGITAL PICTURES Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach.
CS1315: Introduction to Media Computation Picture encoding and manipulation.
© 1999 Rochester Institute of Technology Introduction to Digital Imaging.
Agenda Last class: Memory, Digitizing Numbers Today: Digitizing: Text
Georgia Institute of Technology Introduction to Processing Digital Sounds part 1 Barb Ericson Georgia Institute of Technology Sept 2005.
CSC1401. Learning Goals Understand at a conceptual level What is media computation? How does color vision work? How can you make colors with red, green,
ManipulatingPictures-Mod6-part11 Manipulating Pictures, Arrays, and Loops part 1 Barb Ericson Georgia Institute of Technology.
Georgia Institute of Technology Manipulating Pictures, Arrays, and Loops Barb Ericson Georgia Institute of Technology August 2005.
Color and Vision General Physics. Band of Visible Light ROYGBIV (Red, Orange, Yellow, Green, Blue, Indigo, Violet)
ManipulatingPictures-Mod6-part61 Manipulating Pictures, Arrays, and Loops: Eliminating color, Inversion, grey scale and adjusting for luminance Barb Ericson.
TOPIC 5 INTRODUCTION TO PICTURES 1 1 Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by M. Guzdial and B.
How digital cameras work The Exposure The big difference between traditional film cameras and digital cameras is how they capture the image. Instead of.
Intro-Sound-part1 Introduction to Processing Digital Sounds part 1 Barb Ericson Georgia Institute of Technology Oct 2009.
TOPIC 4 INTRODUCTION TO MEDIA COMPUTATION: DIGITAL PICTURES Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach.
Georgia Institute of Technology Workshop for Programming And Systems Management Teachers Chapter 3 Introduction to Media Computation, Java, and DrJava.
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.
Unit 1 The History of Photography & The Camera
Getting and displaying
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Image Processing Objectives To understand pixel based image processing
Binary Notation and Intro to Computer Graphics
LAB 1 Manipulating Pictures
25.2 The human eye The eye is the sensory organ used for vision.
Manipulating Pictures, Arrays, and Loops part 2
Manipulating Pictures, Arrays, and Loops part 2
Workshop for Programming And Systems Management Teachers
The Colour of Light: Additive colour theory.
Additive Colour Theory
Colour theory.
Introduction to Electromagnetic waves, Light, and color
Manipulating Pictures, Arrays, and Loops part 3
Declaring Variables – Mod 4
Introduction to Media Computation
Chapter I Digital Imaging Fundamentals
Barb Ericson Georgia Institute of Technology Dec 2009
Why does a blue shirt look blue?
LET’S LEARN ABOUT GRAPHICS!
COMS 161 Introduction to Computing
TechnoSpecialist Computers Information Package
Teaching Java using Turtles part 1
Manipulating Pictures, Arrays, and Loops part 2
Manipulating Pictures, Arrays, and Loops part 2
Barb Ericson Georgia Institute of Technology August 2005
Declaring Variables – Mod 4
Workshop for Programming And Systems Management Teachers
Manipulating Pictures, Arrays, and Loops
Manipulating Pictures, Arrays, and Loops
Introduction to Java, and DrJava
Manipulating Pictures, Arrays, and Loops
About Color.
Multimedia System Image
Barb Ericson Georgia Institute of Technology May 2006
Visuals are analog signals...
Manipulating Pictures, Arrays, and Loops
Introduction to Java, and DrJava
Introduction to Java, and DrJava part 1
Manipulating Pictures, Arrays, and Loops part 6
Teaching Java using Turtles
Presentation transcript:

Introduction to Media Computation Barb Ericson Georgia Institute of Technology May 2006 Georgia Institute of Technology

Georgia Institute of Technology Learning Goals Understand at a conceptual level What is media computation? How does color vision work? How can you make colors with red, green, and blue light? How do digital cameras and computer displays work? What is a pixel? How can you show a picture from a file in Java? Georgia Institute of Technology

What is Media Computation? Processing picture elements sound fragments movie frames Text files and HTML pages The speed and storage capacity of modern computers makes this possible Even for beginning students just learning to program Georgia Institute of Technology

How Does Color Vision Work? Our eyes and brain work together to make sense of what we see The cones in our eyes are what allow us to see in color The rods allow us to see black, white, and shades of gray Our cones are sensitive to red, green, and blue light All other colors are combinations of these See http://www.cyh.com/cyh/kids/detail.html?topic_id=1484 and http://library.thinkquest.org/C001464/cgi-bin/view.cgi?show_item=eye_function_slight for an explanation of vision. See http://www.phys.ufl.edu/~avery/course/3400/vision/rod_cone_microscope.gif for a picture of rods and cones. See http://www.harmsy.freeuk.com/headless.html and http://www.exploratorium.edu/seeing/exhibits/index.html for some optical illusions. See http://library.thinkquest.org/C001464/cgi-bin/main.cgi? For Georgia Institute of Technology

Red, Green and Blue Light White light is a combination of red, green, and blue Full intensity red, green, and blue combined Black is the absence of all light No red, green or blue light All other colors are combinations Of red, green, and blue Of different intensities See http://lite.bu.edu/lite1/color/mix/mixmac.html for an applet that lets you mix colors. See http://www.sciencenetlinks.com/tools.cfm?DocID=41&Grade=6-8 for an explanation of why paint primary colors are different that light primary colors. Georgia Institute of Technology

Georgia Institute of Technology Color Exercise Start DrJava In the interactions pane type ColorChooser.pickAColor(); Click on the RGB tab and move the sliders to change the intensity of red, green, and blue Make white, black, red, blue, green, yellow, violet, and orange Can you figure out why the colors range from 0 to 255? If I tell you that each color is stored in 8 bits does that help? Hold up a CD and change the angle of it with the light. What colors do you see? Do you think pickAColor is an object method or a class method? How can you tell? Georgia Institute of Technology

How do Digital Cameras Work? There are red, green, and blue filters that capture the amount of each color at a position A part of a grid There are many positions picture element or pixel 640 x 480 is low resolution 1600 x 1200 is high resolution The more pixels the better the picture Can enlarge it without it looking grainy For more information on how digital camera work see http://travel.howstuffworks.com/digital-camera.htm. Georgia Institute of Technology

How do Computer Displays Work? A display has pixels (picture elements) Each pixel has a red, green, and blue component Combinations of red, green, and blue give the resulting color Black is 0 red, 0 green and 0 blue White is 255 red, 255 green, 255 blue See http://computer.howstuffworks.com/monitor.htm for more information on how computer monitors work. See http://entertainment.howstuffworks.com/tv3.htm for information on CRT devices. See http://electronics.howstuffworks.com/lcd.htm for information on LCD devices. Colors are often digitized as 24 bits per pixel, 8 bits for red, 8 for green, and 8 for blue. Thus the intensity of the red can be from 0 to 255 since 8 bits are used. Georgia Institute of Technology

Pictures are made up of Pixels Digital cameras record light at pixels Monitors display pictures using pixels Our limited vision acuity helps us to see the discrete pixels as a smooth picture If we blow up the picture we can see the pixels Georgia Institute of Technology

Georgia Institute of Technology Digital Pictures Capture the intensity of the red, green, and blue colors at each pixel Stored as a bunch of numbers 8 bits for red, 8 bits for green, 8 bits for blue Need nearly 1 million bytes to store a 640 x 480 picture Need 3 million bytes to store an image from a 1 megapixel (million pixel) camera Displayed as red, green, and blue colors on the computer display Lots of them close together Our brain sees a smooth color image Georgia Institute of Technology

Georgia Institute of Technology Getting Started We will start with modifying and creating pictures Changing colors in the picture After pictures we will work with sounds Modifying volume, pitch, reversing, etc Georgia Institute of Technology

Georgia Institute of Technology The Picture Class To make doing media manipulation easier We have created a set of classes for you to use Picture, ColorChooser, FileChooser, Pixel, etc These are not part of the Java language But were created at Georgia Tech You should have added the directory that has these classes to your classpath Back when we worked with Turtles This tells Java where to find the classes Georgia Institute of Technology

Creating a Picture Object To create a picture object from a file We need the full name of the file We can use FilePicker.pickAFile() to get that Class method that returns the full file name as a String We need to ask the Picture class to create the picture object Using the data from the specified file new Picture(fileName) If we want to see the picture we have created We will ask the picture object to show itself Georgia Institute of Technology

Georgia Institute of Technology Naming each Piece First let’s pick a file name and save a reference to the resulting String object in a variable called fileName String fileName = FileChooser.pickAFile(); Next, let’s create a Picture object and save a reference to it in a variable called pictureObj Picture pictureObj = new Picture(fileName); Now send the show() message to the picture object pictureObj.show(); Notice that we don’t need to declare a variable each time we use it. We only need to give the type the first time we mention the name. In fact, the code won’t compile if you try to declare two variables with the same name. Georgia Institute of Technology

Georgia Institute of Technology Naming Each Part This is showing the picture tammy.jpg. Tammy is a Computer Science student at Georgia Tech. Georgia Institute of Technology

Georgia Institute of Technology Doing it all at Once You can create a picture object by passing it the result of using the FileChooser to pick a file and then tell that picture object to show itself All in one line new Picture(FileChooser.pickAFile()).show() But then you don’t have a way to refer to the file or picture again. Georgia Institute of Technology

Georgia Institute of Technology Show Picture Exercise Try both ways of creating a picture object and showing it. new Picture(FileChooser.pickAFile()).show() And do each piece one step at a time naming the result of each method String fileName = FileChooser.pickAFile(); System.out.println(fileName); Picture picture = new Picture(fileName); System.out.println(picture); picture.show(); Use System.out.println(expression) to see the value of the thing referred to by the variable. Georgia Institute of Technology

Substitution and Evaluation In programming you can Use a literal String name = “Barb”; Use a variable String myName = “Barb”; String name2 = myName; Use an expression String n3 = “Ba” + “rb”; Use the result of a method invocation String n4 = student1.getName(); Values get substituted for variable names when expressions are evaluated Georgia Institute of Technology

Georgia Institute of Technology Summary Media computation can mean processing millions to billions of bytes The speed of modern computers makes media computation possible even for beginners We see combinations of red, green, and blue light A pixel is a picture element Digital pictures store red, green, and blue values from 0 to 255 for each pixel in a picture You can pick a file, create a picture object, and show it using: String file = FileChooser.pickAFile(); Picture pictObj = new Picture(file); pictObj.show(); Georgia Institute of Technology