Hank Childs, University of Oregon Lecture #1 CIS 410/510: Introduction to Scientific Visualization.

Slides:



Advertisements
Similar presentations
John Hurley Cal State LA
Advertisements

Team Software Project - Ebnenasir - Spring CS 3141: Team Software Project - Introduction Ali Ebnenasir Department of Computer Science Michigan Technological.
CS112: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Blackboard – Piazza – Textbook Highlight.
Hank Childs, University of Oregon November 15 th, 2013 Volume Rendering, Part 2.
Introduction to programming with Visual Basic.NET Dr. Marty Sirkin.
Economics 1 Principles of Microeconomics Instructor: Ted Bergstrom.
Computers in Principle & Practice I - V Deena Engel Computers in Principle and Practice I V , Sections 1 & 2 Fall, 2009 Deena Engel .
CS 197 Computers in Society Fall, Welcome, Freshmen!
COMP 110 Introduction to Programming Tabitha Peck M.S. January 9, 2008 MWF 3-3:50 pm Philips 367.
CS 201: Introduction To Programming With Java
OBJECT ORIENTED PROGRAMMING I LECTURE 1 GEORGE KOUTSOGIANNAKIS
COMP 110 Introduction to Programming Jingdan Zhang June 20, 2007 MTWRF 9:45-11:15 am Sitterson Hall 014.
COMP 110 Introduction to Programming Mr. Joshua Stough August 22, 2007 Monday/Wednesday/Friday 3:00-4:15 Gardner Hall 307.
Using MyMathLab Features You must already be registered or enrolled in a current MyMathLab class in order to use MyMathLab. If you are not registered or.
COMP 14 – 02: Introduction to Programming Andrew Leaver-Fay August 31, 2005 Monday/Wednesday 3-4:15 pm Peabody 217 Friday 3-3:50pm Peabody 217.
Experience in Applying Online Learning Techniques in Computer Science & Engineering Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University.
Technology Day May 5, 2012 Dawn Cox Best practices for new instructors.
Introduction to Programming Environments for Secondary Education CS 1140 Dr. Ben Schafer Department of Computer Science.
CS211: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Piazza – Textbook Highlight important.
Presented by Karen Porter UM School of Business Administration & ImpactOnlineMarketing.com Integrated Online Marketing: BMKT 420 – Course Overview.
COMP 111 Programming Languages 1 First Day. Course COMP111 Dr. Abdul-Hameed Assawadi Office: Room AS15 – No. 2 Tel: Ext. ??
Hank Childs, University of Oregon October 1, 2014 CIS 441/541: Introduction to Computer Graphics.
COMP Introduction to Programming Yi Hong May 13, 2015.
Course name : computer essentials. Instructor: Basma Alabdullatif Office: computer department instructors office, 1st floor Office hours: Saturday (11:00-01:00)
How to be an online student. How does it work? An online course follows a schedule and syllabus with due dates for assignments (just like an on-campus.
WEEK-1 PRINCIPLES OF MANAGEMENT BUSN 107, Özge Can.
Course Introduction Software Engineering
Welcome to IIT and cs115!.
Course Overview Ted Baker  Andy Wang COP 5641 / CIS 4930.
© Xiaoying Gao, Peter Andreae Introduction to Computer Program Design COMP T2. Xiaoying (Sharon) Gao Computer Science Victoria University of Wellington.
Leena Razzaq Office: 310BWVH Office hours: Monday 11am-1pm or by appointment jys.
CS355 Advanced Computer Architecture Fatima Khan Prince Sultan University, College for Women.
Course Organization & Format Visualization II MSIM 842, CS 795/895 Instructor: Jessica Crouch.
Catie Welsh January 10, 2011 MWF 1-1:50 pm Sitterson 014.
CSCI 51 Introduction to Computer Science Dr. Joshua Stough January 20, 2009.
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
COP3502: Introduction to Computer Science Yashas Shankar.
Course Overview Ted Baker  Andy Wang COP 5641 / CIS 4930.
Jongwook Woo CIS 528 Introduction to Big Data Science (Syllabus) Jongwook Woo, PhD California State University, LA Computer and Information.
LISA A. TOBLER, M.S. Introduction to Psychology PS124 Seminar #1.
Welcome to Academic Strategies CS Janine Przybyl "When there is a start to be made, don't step over! Start where you are." ~Edgar Cayce.
Advanced Legal Writing Seminar: Wednesdays, 10:00 p.m. EST Office Hours: Mondays from 3 – 5 p.m. EST, and by appointment AIM sign-in: cssouthall
Instructor: Basma Alabdullatif Office: Preparatory Year instructors office, 1st floor Office hours: sat(11-1), sun(11-1)
CIS 842: Specification and Verification of Reactive Systems Lecture ADM: Course Administration Copyright , Matt Dwyer, John Hatcliff, Robby. The.
Hank Childs, University of Oregon Lecture #2 Fields, Meshes, and Interpolation (Part 1)
Introduction to CIS Jan-16.
CM220 College Composition II Friday, January 29, Unit 1: Introduction to Effective Academic and Professional Writing Unit 1 Lori Martindale, Instructor.
Research Experience Program (REP) Spring 2008 Psychology 100 Ψ.
James Tam Introduction To CPSC 233 James Tam Java Object-Orientation Event driven software.
Winter 2016CISC101 - Prof. McLeod1 CISC101 Elements of Computing Science I Course Web Site: The lecture outlines.
CS112: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Blackboard – Piazza – Textbook Highlight.
James Tam Introduction To CPSC 233 James Tam Java Object-Orientation Graphical-user interfaces.
Data Structures and Algorithms in Java AlaaEddin 2012.
Physics of Animation (Art/Physics 123) Prof. Alejandro Garcia Fall 2009 Class is fully enrolled and I am not allowed to add students. Sorry.
Course Overview Ted Baker  Andy Wang COP 5641 / CIS 4930.
COP4020 INTRODUCTION FALL COURSE DESCRIPTION Programming Languages introduces the fundamentals of the design and implementation of programming languages.
SFTW241 Programming Languages Architecture 2002~2003 Semester II Duration: 2003/2/11~ 2003/4/11 University of Macau Faculty of Science and Technology Computer.
Research Experience Program (REP) Fall 2007 Psychology 100 Ψ.
Welcome!!!. Let’s start with introductions Introduce yourself, stating your name, and your some of your favorite books or movies. My name is Alyssa and.
Introduction to CIT Mar-16.
LISA A. TOBLER, M.S. Introduction to Psychology PS124 Seminar #1.
PROBLEM SOLVING AND PROGRAMMING ISMAIL ABUMUHFOUZ | CS 170.
1 1.Log in to the computer in front of you –Temp account: 210class / 2.Update your in Cascadia's system –If I need to you I'll use.
Spring 2008 Mark Fontenot CSE 1341 – Honors Principles of Computer Science I Note Set 1 1.
Designing Civil Engineering 240 – Geomatics Course objective Introduce engineering applications of surveying and geographical information systems, or GIS,
Welcome to Introduction to Psychology! Let’s share a bit about where we are all from…
Hank Childs, University of Oregon September 26, 2016 CIS 441/541: Introduction to Computer Graphics.
Course Overview - Database Systems
Course Overview - Database Systems
Forensic Science Unit One
Presentation transcript:

Hank Childs, University of Oregon Lecture #1 CIS 410/510: Introduction to Scientific Visualization

Outline Class Overview (Syllabus) Overview of Visualization: Scientific Visualization versus Information Visualization Project 1 Overview

Outline Class Overview (Syllabus) Overview of Visualization: Scientific Visualization versus Information Visualization Project 1 Overview

Syllabus is Online

Prerequisites For This Course CIS 330 is the only prerequisite – Waived for anyone who has good C++ knowledge CIS 441 is not a prerequisite

Enrolling In This Class We have a few spots available. Please contact me after class to discuss your case.

Grading (410) Introductory Projects: 45 points Advanced Project: 35 points Quizzes: 20 points Extra credit through: – Unused late passes – Community participation Grades: 90%: A-, 80%: B-, etc.

Grading (510) Introductory Projects: points Advanced Project: points Quizzes: 30 points Extra credit through: – Unused late passes – Community participation Grades: 90%: A-, 80%: B-, etc.

Introductory Projects

Advanced Projects Two tracks: – Custom project – Pre-defined project 410: you choose 510: do both

Custom Project You design and implement a project involving visualization Milestones: – Proposal: ~November 15 th (3% of grade) – Implementation: Dec 11 10:15am (27% of grade) – Presentation: Dec 11 10:15am (5% of grade)

Pre-defined Project Ray-casted volume rendering 35% of grade There will be a grading rubric that outlines different levels of complexity Also: attend project presentations for custom project – -4% of grade if missed

Language Used For This Class The introductory projects will be implemented in C++. – Each project will start with a skeleton The advanced project can be implemented in whatever you like.

Quizzes Quiz #1 on advection: 10 pts (410) / 15 (510) Quiz #2 on isosurfacing: 10 pts (410) / 15 (510)

Expectations This is a projects-driven class. The projects will help you learn the theory and techniques behind scientific visualization, but they will also help you become better programmers, and provide you with experiences, anecdotes, and images that will impress potential employers. The grading is designed to make sure you are keeping up with the assignments. – Staying on top of the projects will be critical to succeeding in this class.

Expectations The projects in this class will be hard work for those who have not done significant programming before. It is difficult to quote exactly how much time, since there is variation in background and programming skill. – I expect those who have less developed programming skills will find this class to be a considerable effort, but also that they will have significant improvement by the end of the course.

Norms for this class Please ask questions Please ask me to slow down Please give feedback Please always bring paper and pencil/pen … we will do exercises during class

This Class In a Nutshell… 1 st Half: Learn the basics behind scientific visualization 2 nd Half: Advanced project Most of the learning will happen with projects. The lectures are designed to help you do the projects.

Course Materials Textbook: The Visualization ToolKit. PowerPoint lectures will be posted online. Some lectures will be complemented with chalkboard exercises.

What is VTK? VTK: Visualization ToolKit Most popular visualization library in the world We will use this for our introductory projects Cross-platform, so you can use whatever development platform you please.

Office Hours Will hold Fri OH this week Will set up Doodle for OH for Weeks 2-10

Working Together All projects are individual projects. Copying code from other students is cheating. However: I highly encourage you to discuss your roadblocks with each other and lean on each other to figure out solutions to your problems.

Working Together, part 2 I have set up a forum on Piazza. – I will monitor (and respond) to the forum and encourage you all to do the same. – I may award extra credit to students who are particularly helpful on Piazza. – The amount of credit will vary based on involvement, with a maximum of 5%.

Evaluation Criteria I will describe evaluation criteria on a project-by- project basis. For the most part, – I give you: the right answer a differencing program – And ask that you send me: a screenshot of the differencing program showing you have no differences with the right answer your source code

Evaluation Criteria, pt 2 I withhold the right to provide reduced scores if I believe you have borrowed too much of your implementation from a peer, the internet, or other sources. – Although borrowing code from elsewhere is a great strategy in the real world, it is not going to help you learn scientific visualization or how to program. I will be looking at your source code.

Late Passes You have 2 "late passes." Late passes allow you to turn in your project after the due date for full credit. – Submitting a project with a Weds deadline on Friday (i.e., two days later) costs one late pass. – Submitting a project with a Friday deadline on the following Weds (i.e., five days later) costs two late passes. – Projects with a Friday deadline can possibly be submitted on a Monday for one late pass, but my availability on Mondays is not guaranteed and you may be forced to wait until Weds (and pay two late passes). If you run out of late passes, then you may continue to earn half credit on any project. Every unused late pass is worth 0% extra credit.

Class Summary This class will teach you the theory and techniques behind scientific visualization This class will improve your programming skills This class may help you land a job This class will require a lot of work

Grading (repeat of previous slide) Introductory Projects: 45% Advanced Project: 35% Quizzes: 20% Extra credit through: – Unused late passes – Community participation

Lecture hiccups Unfortunate: travel on Weds 9/30 Plan: experts for project 1 come in and offer support Other travel planned, will announce lecture modifications as they finalize

Lecture Plan First six weeks are mapped out. Last four weeks can be adaptive based on your project plans.

Outline Class Overview (Syllabus) Overview of Visualization: Scientific Visualization versus Information Visualization The Very Basics of Computer Graphics Project 1 Overview

Scientific Visualization An interdisciplinary branch of science – primarily concerned with the visualization of three- dimensional phenomena (architectural, meteorological, medical, biological, etc.) – the emphasis is on realistic renderings of volumes, surfaces, illumination sources, and so forth, perhaps with a dynamic (time) component. It is also considered a branch of computer science that is a subset of computer graphics. The purpose of scientific visualization is to graphically illustrate scientific data to enable scientists to understand, illustrate, and glean insight from their data. Source: wikipedia

Information Visualization The study of (interactive) visual representations of abstract data to reinforce human cognition. – The abstract data include both numerical and non- numerical data, such as text and geographic information. Source: wikipedia

SciVis vs InfoVis “it’s infovis when the spatial representation is chosen, and it’s scivis when the spatial representation is given” (A) (B) (E) (C) (D)

What sorts of data? Of course, lots of other data too…

What Is Visualization Used For? 3 Main Use Cases: – Communication – Confirmation – Exploration

How Visualization Works Many visual metaphors for representing data – How to choose the right tool from the toolbox? This course: – Describe the tools – Describe the systems that support the tools

This Class Focus is on SciVis We can add some InfoVis in the second half to fit advanced projects.

Outline Class Overview (Syllabus) Overview of Visualization: Scientific Visualization versus Information Visualization Project 1 Overview

Project #1 Goal: write a specific image Due: “Friday October 2nd”  “6am Saturday October 3rd” % of grade: 2% Goal: get multi-platform issues shaken out ASAP. Experience last year was pretty good.

What is ?  Cmake is a cross-platform, open-source build system.  CMake is a family of tools designed to build, test and package software.  CMake is used to control the software compilation process using simple platform and compiler independent configuration files.  CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice.

How do you install CMake? Go to & follow the directionswww.cmake.org

What is the ? The Visualization Toolkit (VTK) is an open- source, freely available software system for 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several interpreted interface layers including Tcl/Tk, Java, and Python. VTK is cross-platform and runs on Linux, Windows, Mac and Unix platforms.

How do you install VTK? Go to go to Resources- >Download and follow the directionswww.vtk.org

How do you install VTK, part 2? See if your favorite package manager has a version already. Note: V6.0 or 6.2 is required – Do not use 5.8 or 5.10

What do I do again? Install CMake & VTK. Download – “project1.cxx” from class website – “CMakeLists.txt” from class website – “data.vtk” from class website Run CMake Compile project1.cxx Run program Mail me screenshot of the result by 6am Sat. morning.

What should you do if you run into trouble? 1)Start with Piazza 2)Superstar students support: 9am 3)OH this week: Friday 4) me:

Don’t forget This lecture is available online – All project prompts are available online