1 CS 248 Assignment 1 Paint Program CS248 Help Session #1 Original slides by Georg Petschnigg Modified by: Sean Walker, Rene Patnode Stanford University.

Slides:



Advertisements
Similar presentations
Video Mosaics CS 294/283 Final Project Steve Martin U.C. Berkeley, Fall 2003.
Advertisements

Chapter 6 Raster Editing
Incorporating Color Techniques
| | Tel: | | Computer Training & Personal Development Adobe Photoshop CS3 Intermediate.
CGA 115 Professor Mary A. Malinconico. Questions from Last Week ????????
1 CS 248 Assignment 1 Paint Program CS248 Help Session #1 Eino-Ville Talvala Stanford University October 10, 2006 Original slides by Georg Petschnigg Modified.
Adobe Photoshop CS Design Professional TECHNIQUES INCORPORATING COLOR.
1 Lecture 6 Attributes of graphical primitives Colors Colors in OpenGL Algorithms for scan-conversion.
1 CS 248 – Project 1 Help Session (demo) (demo) Painting RGB and HSV sliders Brush visualization Weighted mask driven painting HSV checkboxes.
CS 248 Assignment 1 Paint Program Introduction to Computer Graphics Help Session presented by Georg Petschnigg Stanford University October 4, 2002.
Adobe Photoshop 6 Advanced Level Course. Easy Fixes Photoshop is the best tool to fix old, torn and faded photographs, and can fix almost all flaws in.
First Bytes - LabVIEW. Today’s Session Introduction to LabVIEW Colors and computers Lab to create a color picker Lab to manipulate an image Visual ProgrammingImage.
02/14/02(c) University of Wisconsin 2002, CS 559 Last Time Filtering Image size reduction –Take the pixel you need in the output –Map it to the input –Place.
Quiz 2 Results: Grade Scale
CSS/Photoshop Layouts - Quiz #5 Lecture Code:
Colour Digital Multimedia, 2nd edition Nigel Chapman & Jenny Chapman
INF1090 Part Deux Photography- Photomanipulation.
Digital Images The digital representation of visual information.
GIMP Graphic Image Manipulation Program. GIMP Image manipulation software Free Open Source Written by two students First version in 1996.
Unit 30 P1 – Hardware & Software Required For Use In Digital Graphics
Product Design Sketching Chromatic Theories. Color Spectrum The range of colors seen by human eye is the “visible color spectrum”
How to Learn in This Course CS 5010 Program Design Paradigms “Bootcamp” Lesson 0.1 © Mitchell Wand, This work is licensed under a Creative Commons.
Adobe Photoshop CS5 – Illustrated Unit F: Working with Brushes and Color Effect.
Chapter 5 Creating an Image Map.
Do Now: Do Not Log In. Take out your notebook and a pen. Good morning! Do Now: Do Not Log In. Take out your notebook and a pen. Good morning! Aim: Review.
Addison Wesley is an imprint of © 2010 Pearson Addison-Wesley. All rights reserved. Chapter 5 Working with Images Starting Out with Games & Graphics in.
Filtering and Color To filter a color image, simply filter each of R,G and B separately Re-scaling and truncating are more difficult to implement: –Adjusting.
Adobe Photoshop CS4 - Illustrated
Graphics Concepts CS 2302, Fall /3/20142 Drawing Paths.
Manipulate Graphics Skill Area Lecture Overview Photoshop’s GUI Basic Function Basic Image Manipulation.
Digital Media Exam Review SM1001 Digital Media, Semester A, 2011 School of Creative Media © Week 13, 2011.
1. Press the New Layer Button 3. Double click names to re-name Ball & Shadow layers 2. Click to change to 12 fps Step 1.
JRN 302: Introduction to Graphics and Visual Communication - Intro to Photoshop Thursday, 9/3/15.
How to Learn in This Course CS 5010 Program Design Paradigms “Bootcamp” Lesson 0.1 © Mitchell Wand, This work is licensed under a Creative Commons.
Graphics Lecture 4: Slide 1 Interactive Computer Graphics Lecture 4: Colour.
DIGITAL IMAGE. Basic Image Concepts An image is a spatial representation of an object An image can be thought of as a function with resulting values of.
Color and Blending 03/22/06. RGB  Why?  Monitor  Human vision system  Scale: 0-1, 0-n.
Project Two Adding Web Pages, Links, and Images Define and set a home page Add pages to a Web site Describe Dreamweaver's image accessibility features.
Do Now: Take out your notebook and a pen. Good Morning Do Now: Take out your notebook and a pen. Good Morning Aim: What is color? Mr. Spaterella Technology.
Graphics Concepts CS 2302, Fall /17/20142 Drawing in Android.
COMPUTER VISION Larry Wolff MTW Office: 212NEB Office Hours: Wed. 1-2PM.
1 Layer up to keep warm… A short tutorial on the usage of layers.
Open up your still frame image in photoshop. Create a copy of the Background copy.
Lecture # 19 Image Processing II. 2 Classes of Digital Filters Global filters transform each pixel uniformly according to the function regardless of.
How School Disadvantage occurs – use as an intro to the problem that Imagination Library Begins to Address –along with Say Yes
JRN 302: Introduction to Graphics and Visual Communication -Intro. to InDesign Thursday,
Copyright © Texas Education Agency, All rights reserved.1 Web Technologies Motion Graphics & Animation.
CS112: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Blackboard – Piazza – Textbook Highlight.
Computer Networks CNT5106C
GEOMETRIC STILL LIFE PAINTING PAINTING STUDIO. WHAT ARE YOU GOING TO BE DOING? You have recently completed a painting using acrylic paint that shows form.
Research Experience Program (REP) Fall 2007 Psychology 100 Ψ.
JRN 302: Introduction to Graphics and Visual Communication -Intro. to InDesign Thursday, 3/3/2016.
1 CS 248 Assignment 1 Paint Program CS248 Help Session #1 Ethan Dreyfuss Stanford University October 3, 2008 Original slides by Georg Petschnigg Modified.
CS 360 Lab 1 Professor: Krzysztof Nowak TA: Mark Boady.
Digital Media Exam Review SM1001 Digital Media, Semester A, 2009 School of Creative Media © Week 13, 2010.
EE400D DOCUMENTATION INSTRUCTIONAL SERIES BLOG POSTS.
Pixels, Colors and Shapes
Binary Representation in Audio and Images
Adjusting Image Colors Lasso & Marquee Tools
Design and Layout (part one)
We’ll be spending minutes talking about Quiz 1 that you’ll be taking at the next class session before you take the Gateway Quiz today.
Computer Graphics Enhancing Photos with Adobe Photoshop – Level 1.
Microsoft Word - Formatting Pages
Exercise 30 - Skills Fireworks uses layers to help you organize and work with the various elements in your drawings. You can us layers to keep objects.
Welcome to CS220/MATH 320 – Applied Discrete Mathematics Fall 2018
Design and Layout (part one)
Color Model By : Mustafa Salam.
CS 4731: Computer Graphics Final review
Agenda for Unit 5: Control Structures
Presentation transcript:

1 CS 248 Assignment 1 Paint Program CS248 Help Session #1 Original slides by Georg Petschnigg Modified by: Sean Walker, Rene Patnode Stanford University October 6, 2004

2 Session Overview Getting Started Assignment Discussion Overpainting Brush Tinting Brush Brush Visualization Grading Details Extra Credit Questions

3 Getting Started 1. Read assignment carefully and pay attention to the details. 2. Go to help session 3. Familiarize yourself with Raptor/Firebird Lab Located in the Basement of Sweet Hall

4 Development Environment Ways to work with TA Support Go to Sweet Hall (Best Way – 5 Minutes) Work Remotely (Good Way – 5 Minutes) Ways to work without TA support Reproduce Sweet Hall Lab development environment on you own Machine (1 Hour) Your code still has to work on the Sweet Hall machines (more risk for you)

5 Sweet Hall 1. Pick a free computer, Log on 2. Copy assignment from /usr/class/cs248/assignments/assignment1/ to local directory 3. Run ‘ make ’ 4. Run ‘./paint.i386-linux ’

6 Working Remotely 1. ssh to firebird, raptor or leland (make sure X-tunneling is enabled) 2. Export the display (using e.g. Exceed3D) 3. Follow instructions on previous slide >ssh raptor.stanford.edu >setenv DISPLAY yourIP:0.0 >xterm &

7 Assignment Discussion You are going to write a paint program Teaches you 2D Raster Graphics Visualize concepts learned in Class (Brushes, HSV) Be creative with extra credit The next slides follow the Assignment (Handout #3) step by step Reminder: Read the assignment

8 Paint Program 1973 Source: Dick Shoup “SuperPaint: An Early Frame Buffer Graphics System” IEEE Annals of the History of Computing, Vol 23, No 2, Apr-Jun 2001

9 Part 1: Over Painting Brush Rectangular Overpainting Brush Like Microsoft Paint or “Pencil Tool” in PhotoShop Color Picker for RGB, HSV See components/colorchooser.html or any components/colorchooser.html commercial paint program Value (1.0 bright, 0.0 black) Saturation (1.0 strong hue, 0.0 faded hue) Size Control for Brush Demo: Painting, Picking Colors in PaintShop Pro 7

10 Part 1: Basic Painting Loop Brush region

11 Part 1: Over Painting Brush Once you are done with Part 1 you should be able to draw some basic images Notice the hard edges and jaggies around the stroke… this is what Part 2 will fix

12 Part 2: Tinting Brush Implement Weighted Mask Driven Brush as described in Handout #4 Instead of a rectangular brush, have it gently “blend” to its surroundings. Use HSV interpolation Checkboxes for interpolating along H,S,V axis Allow all permutations HSV, HS, HV, SV, H, S, V Choose a mask function and give user control over it Make sure it gradually falls off to zero at edges!

13 Part 2: Weighted Blending Like painting with partially transparent paint. Commonly referred to as “alpha” blending. C new = (1-  ) C old +  C paint Compositing equation 

14 Part 2: Mask driven painting Lookup array determines how each pixel in the brush is affected. Paint every pixel in the brush region Paint only some of the pixels

15 Part 2: Weighted mask driven painting Mask contains alpha/weight for each pixel in brush

16 Part 2: RGB vs. HSV interpolation NewR = (1-  ) CanvasR +  PaintR NewG = (1-  ) CanvasG +  PaintG NewB = (1-  ) CanvasB +  PaintB NewH = (1-  ) CanvasH +  PaintH NewS = (1-  ) CanvasS +  PaintS NewV = (1-  ) CanvasV +  PaintV RGBinterpolation RGB interpolation HSV interpolation

17 Hue Saturation Part 2: RGB vs. HSV

18 Hue Saturation HSV RGB Part 2: RGB vs. HSV interpolation

19 Part 2: Math Example Interpolating half way between Red and Cyan (  = 0.5) NewColor = 0.5 Cyan Red RGBHSV Cyan Red Interpolation % GrayGreenish

20 Part 2: HSV Checkboxes Choose which HSV components to affect. Allow for any combination. if (H_check) NewH = (1-  ) CH +  PaintH else NewH = CH; if (S_check) NewS = (1-  ) CS +  PaintS else NewS = CS; if (V_check) NewV = (1-  ) CV +  PaintV else NewV = CV;

21 Part 2: Sample Images Image showing H, S, and V Tinting Overpainting #1 vs. Weighted Mask driven painting #2

22 Part 3: Brush Visualization Brush Visualization should tell user what its color, falloff and size is Brush should always be visible regardless of color Draw 1x (actual size) and 4x (four times larger in x and y) versions of the brush Make the larger version discretized – that is it should be a choppy/chunky/pixel replicated version of the actual brush (think xmag, snoop) Make sure this visualization will help you explain to user, TAs, Professor and yourself how the brush weights affect drawing

23 Requirements Correctness (40%) Don’t crash Implement all required features (Read the directions like a lawyer) Efficiency (20 %) No noticeable lag while using your application User Interface (20%) Programming Style (20%) Copying code (Don’t do it) Submitting with ‘/usr/class/cs248/bin/submit’

24 Extra credit example Blurring:

25 Questions? Ask now Come to Office Hours Remember: Computer Graphics is fun - if you are not having fun ask TAs for help