Examples from Georgia Tech’s CS 1315: Introduction to Media Computation Class examples and student work def clearRed(picture): for pixel in getPixels(picture): setRed(pixel,0) def greyscale(picture): for p in getPixels(picture): redness=getRed(p) greenness=getGreen(p) blueness=getBlue(p) luminance=(redness+blueness+greenness)/3 setColor(p, makeColor(luminance,luminance,luminance)) def negative(picture): for px in getPixels(picture): red=getRed(px) green=getGreen(px) blue=getBlue(px) negColor=makeColor(255-red,255-green,255-blue) setColor(px,negColor) Chromakey def chromakey(source,bg): for x in range(1,getWidth(source)): for y in range(1,getHeight(source)): p = getPixel(source,x,y) # My definition of blue: If the redness + greenness < blueness if (getRed(p) + getGreen(p) < getBlue(p)): #Then, grab the color at the same spot from the new background setColor(p,getColor(getPixel(bg,x,y))) Putting a jellyfish on a wall Chromakey Chromakey (for green) def chromakeyGreen(source,bg): # source should have something in front of green, bg is the new background for x in range(1,getWidth(source)): for y in range(1,getHeight(source)): p = getPixel(source,x,y) # My definition of green: If the greenness > redness AND blueness if getGreen(p) > getBlue(p) and getGreen(p) > getRed(p): #Then, grab the color at the same spot from the new background setColor(p,getColor(getPixel(bg,x,y))) SlowFadeout Movie: Background subtraction and a jungle Creating a fade-to-sunset: By reducing blue and green Lauren Duke Jennifer Blake Cynthia Aubrie Lee Rebecca O’Donnell Rachel Cobb Bradley Butler Miereille Murad Alex Alderman Uzma Ansari Hannah Gailey Does the class work? Success Rate • 60% of students surveyed at end of course say that they want a second course. • We are getting transfers into the CS major. Average GT’s CS1 72.2% (2000-2002) Media Computation Spring 2003 88.5% Fall 2003 87.5% Spring 2004 90.5% Quotes from students’ surveys • “I think that we're doing things that I could actually use as an architecture major—I like dealing with pictures and sounds.” • It was interesting/surprising to learn... “Adjusting pictures and sounds because it is something that I will be able to use far into the future.” • It was interesting/surprising to learn... “About how Photoshop works because now I understand what it is doing and I can use it better.” Quotes from Interviews with Female Students • Did we make it: • • • Relevant? “I dreaded CS, but ALL of the topics thus far have been applicable to my future career (& personal) plans—there isn't anything I don't like about this class!!!” Creative? Social? How did Women Respond to the Course? • Did we make it: • • • Relevant? Creative? “I just wish I had more time to play around with that and make neat effects. But JES will be on my computer forever, so… that’s the nice thing about this class is that you could go as deep into the homework as you wanted. So, I’d turn it in and then me and my roommate would do more after to see what we could do with it.” Social? How did Women Respond to the Course? • Did we make it: • • • Relevant? Creative? Social? “Actually, I think [collaboration] is one of the best things about this class. My roommate and I abided by all the rules... but we took full advantage of the collaboration. It was more just the ideas bouncing off each other. I don’t think this class would have been as much fun if I wasn’t able to collaborate.” Next steps… A second course • CS1316 “Representing structure and behavior” to be offered in Spring 2005 • Present a second course that meets national standards, but still in a media context • The first course is about surface level features • Professional media manipulation also represents structure: Tree of verses/chorus, scene graph • If we represent behavior, too, can make stampedes (Lion King) and villagers (Hunchback) by simply filming the simulation. Next steps… An alternative path and a minor • The two courses (Introduction to Media Computation and Representing Structure and Behavior) will become a pre-req to our traditional computer science courses. • Creating an “alternative path” into CS • We are now getting transfers into the CS major • We have now created a minor in CS • Creating a BS in Computational Media • Joint with School of Literature, Communications, and Culture Next steps… Moving beyond GT • Versions of Media Computation appearing at other institutions • Gainesville College (two year school in Northern Georgia) has offered the course three times • Georgia Perimeter College, DePauw, Brandeis, U. California Santa Cruz, U. IllinoisChicago, Florida Atlantic U., and U. Maryland at College Park teaching their own versions using our materials.