Introduction to Python and VTK

Size: px
Start display at page:

Download "Introduction to Python and VTK"

Transcription

1 Introduction to Python and VTK Scientific Visualization, HT 2013 Lecture 2 Johan Nysjö Centre for Image analysis Swedish University of Agricultural Sciences Uppsala University

2 2 About me PhD student in Computerized Image Analysis (since 2011) Developing methods and tools for interactive analysis of medical 3D (volume) images Research interests include image analysis, visualization, computer graphics, haptics, and GPGPU programming

3 3 Python (TBD)

4 4 What I use Python for Medical image analysis Graphics programming (PyOpenGL) Scientific visualization (VTK) GPGPU programming (PyOpenCL) High-performance computing (NumPy and SciPy) Scripting experiments for my PhD research Plotting things (Matplotlib)

5 5 VTK

6 6 VTK Open source, freely available C++ toolkit for visualization 3D computer graphics image processing (often combined with ITK) Managed by Kitware Inc. Object-oriented design High level of abstraction (compared to, e.g., OpenGL) Bindings/wrappers to Tcl/Tk, Python, and Java

7 Some examples of what you can do with VTK Creating visualizations of scalar, vector, and tensor fields volume data (e.g., 3D CT or MRI scans) Mesh and polygon processing Image analysis (2D and 3D images) Isosurface extraction Implementing your own algorithms 7

8 8 And more Surface rendering Volume rendering Ray casting Texture mapping (slice based) Lights and cameras Textures Save render window to.png,.jpg, (useful for creating short movies)

9 9 Volume rendering

10 Rendering graphical 3D models (imported from.stl,.ply,.obj, etc) Flat shading 10

11 11 Lighting and shading Source:

12 VTK is heavily object-oriented (and a bit over-designed...) 12

13 13 Rendering performance VTK has decent rendering performance and is good for rapid prototyping of 3D visualizations and applications but is not as optimized for rendering large complex 3D scenes (i.e., scenes with millions of polygons and dynamic content) as, e.g., dedicated game engines or scene-graph APIs Also, VTK does not support more advanced (per-pixel) lighting models out of the box

14 14 The visualization pipeline To visualize your data in VTK, you normally set up a pipeline like this: source/reader filter mapper actor renderer renderwindow interactor

15 15 Sources VTK provides various source classes that can be used to construct simple geometric objects like spheres, cubes, cones, cylinders, etc... Examples: vtkspheresource, vtkcubesource, vtkconesource, source/reader filter mapper actor renderer renderwindow interactor

16 16 Readers Reader classes reads data from file You can, e.g., use the vtkstructuredpointsreader to read volumetric image data or use the vtkstlreader to read a 3D model (polygon mesh) from a.stl file source/reader filter mapper actor renderer renderwindow interactor

17 17 Filters Filters a VTK classes that receive data, modify it in some way, and return the modified data as output to be used in the next step in the pipeline For instance, you can use filters to select data of a particular size, strength, intensity, etc You can also use filters to, e.g, process polygon meshes source/reader filter mapper actor renderer renderwindow interactor

18 18 Mappers vtkmapper is an abstract class to specify interface between data and graphics primitives Subclasses of vtkmapper map data through a lookup table and control the creation of rendering primitives that interface to the graphics library The mapping can be controlled by supplying a lookup table and specifying a scalar range to map data through vtkpolydatamapper is a class that maps polygonal data (vtkpolydata) to graphics primitives vtkpolydatamapper serves as a superclass for device-specific polydata mappers that do the actual mapping

19 19 Actors vtkactor is used to represent an entity in a rendering scene It inherits functions related to the actor's position and orientation from vtkprop The actor also has scaling and maintains a reference to the defining geometry (i.e., the mapper), rendering properties, and possibly a texture map source/reader filter mapper actor renderer renderwindow interactor

20 20 Renderer Rendering is the process of converting graphics primitives (points, lines, triangles, etc), a specification for lights, and a camera view into an 2D image that can be displayed on the screen The vtkrenderer class control the rendering process for actors and scenes VTK uses OpenGL for rendering source/reader filter mapper actor renderer renderwindow interactor

21 21 Render window The vtkrenderwindow class creates a window for renderers to draw into source/reader filter mapper actor renderer renderwindow interactor

22 22 Interactors The vtkrenderwindowinteractor class provides platform-independent window interaction via the mouse or keyboard Allows you to select (or, in computer graphics speak, pick) actors, rotate/zoom/pan the camera, etc Also handles time events source/reader filter mapper actor renderer renderwindow interactor

23 Example 1: A simple 3D scene 23

24 24 Pipeline for the cube example

25 25 Source code cube.py Included in the.zip file containing the source code and datasets for Assignment 1 You can download it from the course webpage on Studentportalen

26 Example 2: Earthquake data 26

27 Visualizing the quakes with sphere glyphs 27

28 28 Sphere glyphs Strength Position

29 29 Colormaps

30 30 Colormaps

31 31 Colormaps

32 Example 2: Air currents 32

33 33 Arrow glyphs, first try

34 34 Arrow glyphs, first try Direction and speed

35 35 Cut planes

36 36 Cut planes Direction and speed

37 37 Arrow glyphs, second try

38 38 Arrow glyphs, second try Direction and speed

39 39 Streamtubes

40 40 Streamtubes Direction and speed Seeds (starting points)

41 Example 3: Medical 3D data 41

42 42 Outline

43 43 Outline Volume image

44 44 Multi-planar reformatting (MPR)

45 45 Multi-planar reformatting (MPR) Volume image

46 46 Surface rendering

47 47 Surface rendering Segmented volume image

48 48 Combined visualization

49 49 Conclusions VTK contains thousands of classes and might seem a bit intimidating at first... The pipeline is typically however, one can create useful visualizations with just a few of them source/reader filter mapper actor renderer renderwindow interactor Use VTK's example programs as templates when you write new programs!

50 50 Resources

51 51 More resources Anders has created a couple of nice VTK tutorials. You can find a link to them on the course webpage in Studentportalen. You will find these tutorials very useful when solving the assignments. Maybe too useful... but don't worry, I was kind enough to add some extra work into the assignments this year so you should be kept busy :-)

52 52 About the assignments There will be two assignments and one project The lab sessions will be in PC-lab 1312 and 1313 We encourage you to work in groups of 2 You are supposed to present your solutions to us (Johan and Anders) during the lab session (or at the next lab session). You don't have to hand in the code. VTK will be installed on the lab PCs (we are currently upgrading it) but I highly recommend you to install Python and VTK on your own computers

53 53 Installing VTK on Linux Normally included in the package repository. For instance, on Ubuntu you can install VTK and the Python-wrapper by just typing sudo apt-get install libvtk5-dev python-vtk Also fairly easy to build VTK from scratch. You need GCC, CMake, + some extra dependencies Finally, you can install VTK via the Python distributions EPD (which recently changed name to Enthought Canopy) and Anaconda (see next slide)

54 54 Installing VTK on Windows Don't bother compiling it yourself (unless you have plenty of time to spare) Install it via one of the following Python distributions: Enthought Python Distribution (EPD). You can apply for a free academic license here Anaconda (VTK is available in the package repository) pythonxy (Warning! will override existing Python installations) I will add more detailed installation instructions on Studentportalen

55 55 Installing VTK on Mac Install it via EPD or Anaconda (see previous slide). Previously, VTK was not included in the 64-bit Mac version of EPD (might have changed), so you might have to go for the 32-bit version Expect to spend some long hours in front of the compiler if you try to build it yourself...

56 56 See you on the first lab on Monday!

Introduction to Python and VTK

Introduction to Python and VTK Introduction to Python and VTK Scientific Visualization, HT 2014 Lecture 2 Johan Nysjö Centre for Image analysis Swedish University of Agricultural Sciences Uppsala University About me PhD student in Computerized

More information

Visualization ToolKit (VTK) Part I

Visualization ToolKit (VTK) Part I Visualization ToolKit (VTK) Part I Weiguang Guan RHPCS, ABB 131-G Email: guanw@mcmaster.ca Phone: 905-525-9140 x 22540 Outline Overview Installation Typical structure of a VTK application Visualization

More information

Introduction to Scientific Visualization

Introduction to Scientific Visualization CS53000 - Spring 2018 Introduction to Scientific Visualization Introduction to January 11, 2018 The Visualization Toolkit Open source library for Visualization Computer Graphics Imaging Written in C++

More information

Computer Graphics: Introduction to the Visualisation Toolkit

Computer Graphics: Introduction to the Visualisation Toolkit Computer Graphics: Introduction to the Visualisation Toolkit Visualisation Lecture 2 Taku Komura Institute for Perception, Action & Behaviour Taku Komura Computer Graphics & VTK 1 Last lecture... Visualisation

More information

VTK: The Visualiza.on Toolkit

VTK: The Visualiza.on Toolkit VTK: The Visualiza.on Toolkit Part I: Overview and Graphics Models Han- Wei Shen The Ohio State University What is VTK? An open source, freely available soiware system for 3D graphics, image processing,

More information

Introduction to Scientific Visualization

Introduction to Scientific Visualization Introduction to Scientific Visualization Data Sources Scientific Visualization Pipelines VTK System 1 Scientific Data Sources Common data sources: Scanning devices Computation (mathematical) processes

More information

Introduction to VTK and Python. Filip Malmberg Uppsala universitet

Introduction to VTK and Python. Filip Malmberg Uppsala universitet Introduction to VTK and Python Filip Malmberg filip@cb.uu.se IT Uppsala universitet Todays lecture Introduction to the Visualization Toolkit (VTK) Some words about the assignments Introduction to Python

More information

Visualization Toolkit(VTK) Atul Kumar MD MMST PhD IRCAD-Taiwan

Visualization Toolkit(VTK) Atul Kumar MD MMST PhD IRCAD-Taiwan Visualization Toolkit(VTK) Atul Kumar MD MMST PhD IRCAD-Taiwan Visualization What is visualization?: Informally, it is the transformation of data or information into pictures.(scientific, Data, Information)

More information

Introduction to Visualization: ParaView. Dan Mazur, McGill HPC Aug 20, 2013

Introduction to Visualization: ParaView. Dan Mazur, McGill HPC Aug 20, 2013 Introduction to Visualization: ParaView Dan Mazur, McGill HPC daniel.mazur@mcgill.ca Aug 20, 2013 1 Outline What is scientific visualization? ParaView and visualization pipelines data import 1D, 2D, 3D

More information

Visualization Systems. Ronald Peikert SciVis Visualization Systems 11-1

Visualization Systems. Ronald Peikert SciVis Visualization Systems 11-1 Visualization Systems Ronald Peikert SciVis 2008 - Visualization Systems 11-1 Modular visualization environments Many popular visualization software are designed as socalled modular visualization environments

More information

Visualization Toolkit (VTK) An Introduction

Visualization Toolkit (VTK) An Introduction Visualization Toolkit (VTK) An Introduction An open source, freely available software system for 3D computer graphics, image processing, and visualization Implemented as a C++ class library, with interpreted

More information

Visualization. Images are used to aid in understanding of data. Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26]

Visualization. Images are used to aid in understanding of data. Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26] Visualization Images are used to aid in understanding of data Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26] Tumor SCI, Utah Scientific Visualization Visualize large

More information

Contours & Implicit Modelling 4

Contours & Implicit Modelling 4 Brief Recap Contouring & Implicit Modelling Contouring Implicit Functions Visualisation Lecture 8 lecture 6 Marching Cubes lecture 3 visualisation of a Quadric toby.breckon@ed.ac.uk Computer Vision Lab.

More information

14 Years of Object-Oriented Visualization. Bill Lorensen General Electric Corporate Research and Development

14 Years of Object-Oriented Visualization. Bill Lorensen General Electric Corporate Research and Development 14 Years of Object-Oriented Visualization Bill Lorensen General Electric Corporate Research and Development lorensen@crd.ge.com Object-Oriented Visualization Outline Beginnings Object-Oriented Visualization

More information

The Visualization Pipeline

The Visualization Pipeline The Visualization Pipeline The Visualization Pipeline 1-1 Outline Object oriented programming VTK pipeline Example 1-2 Object Oriented Programming VTK uses object oriented programming Impossible to Cover

More information

Using VTK and the OpenGL Graphics Libraries on HPCx

Using VTK and the OpenGL Graphics Libraries on HPCx Using VTK and the OpenGL Graphics Libraries on HPCx Jeremy Nowell EPCC The University of Edinburgh Edinburgh EH9 3JZ Scotland, UK April 29, 2005 Abstract Some of the graphics libraries and visualisation

More information

Introduction to scientific visualization with ParaView

Introduction to scientific visualization with ParaView Introduction to scientific visualization with ParaView Paul Melis SURFsara Visualization group paul.melis@surfsara.nl (some slides courtesy of Robert Belleman, UvA) Outline Introduction, pipeline and data

More information

Introduction to Visualization on Stampede

Introduction to Visualization on Stampede Introduction to Visualization on Stampede Aaron Birkland Cornell CAC With contributions from TACC visualization training materials Parallel Computing on Stampede June 11, 2013 From data to Insight Data

More information

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT COMP27112 Computer Graphics and Image Processing 2: Introducing image synthesis Toby.Howard@manchester.ac.uk 1 Introduction In these notes we ll cover: Some orientation how did we get here? Graphics system

More information

Introduction to scientific visualization with ParaView

Introduction to scientific visualization with ParaView Introduction to scientific visualization with ParaView Tijs de Kler SURFsara Visualization group Tijs.dekler@surfsara.nl (some slides courtesy of Robert Belleman, UvA) Outline Pipeline and data model (10

More information

IN4307 Medical Visualisation Module IDPVI

IN4307 Medical Visualisation Module IDPVI IN4307 Medical Visualisation Module IDPVI Dr. Charl P. Botha Week 6, 2012 1 / 38 Welcome! Visualisation in Medicine Definition in research, medicine and industry. Learning goals: Function as MedVis engineer

More information

Introduction to Scientific Visualization

Introduction to Scientific Visualization Introduction to Scientific Visualization Aaron Birkland Cornell Center for Advanced Computing Data Analysis on Ranger January 2012 A lab-intensive workshop Start off with basic concepts Data, transformations,

More information

Contours & Implicit Modelling 1

Contours & Implicit Modelling 1 Contouring & Implicit Modelling Visualisation Lecture 8 Institute for Perception, Action & Behaviour School of Informatics Contours & Implicit Modelling 1 Brief Recap Contouring Implicit Functions lecture

More information

Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University

Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University 15-462 Computer Graphics I Lecture 21 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

CPS 533 Scientific Visualization

CPS 533 Scientific Visualization CPS 533 Scientific Visualization Wensheng Shen Department of Computational Science SUNY Brockport Chapter 4: The Visualization Pipeline This chapter examines the process of data transformation and develops

More information

CG & Vis Primer. CG & Vis Primer. CG & Vis Primer. Tutorials Applied Visualizaton Why? A few remarks

CG & Vis Primer. CG & Vis Primer. CG & Vis Primer. Tutorials Applied Visualizaton Why? A few remarks Tutorials Applied Visualizaton Why? Summer Term 2009 Part IV - Computer Graphics and Visualization Visualization means draw an image from data Hence, we cannot visualize, if we don t know how a computer

More information

Visualization with ParaView

Visualization with ParaView Visualization with Before we begin Make sure you have 3.10.1 installed so you can follow along in the lab section http://paraview.org/paraview/resources/software.html http://www.paraview.org/ Background

More information

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes CSCI 420 Computer Graphics Lecture 26 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 2.11] Jernej Barbic University of Southern California Scientific Visualization

More information

Visualization. CSCI 420 Computer Graphics Lecture 26

Visualization. CSCI 420 Computer Graphics Lecture 26 CSCI 420 Computer Graphics Lecture 26 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 11] Jernej Barbic University of Southern California 1 Scientific Visualization

More information

Visualization on TeraGrid at TACC

Visualization on TeraGrid at TACC Visualization on TeraGrid at TACC Drew Dolgert Cornell Center for Advanced Computing TeraGrid-Scale Visualization at Texas Advanced Computing Center Ranger: Sun cluster, 3936 nodes, 62976 cores Spur: Sun

More information

IN4307 Medical Visualisation Module IDPVI

IN4307 Medical Visualisation Module IDPVI IN4307 Medical Visualisation Module IDPVI Dr. Charl P. Botha Week 6, 2012 Course Introduction.................................................................... 2 Logistics.............................................................................

More information

Visualisation : Lecture 1. So what is visualisation? Visualisation

Visualisation : Lecture 1. So what is visualisation? Visualisation So what is visualisation? UG4 / M.Sc. Course 2006 toby.breckon@ed.ac.uk Computer Vision Lab. Institute for Perception, Action & Behaviour Introducing 1 Application of interactive 3D computer graphics to

More information

Insight VisREU Site. Agenda. Introduction to Scientific Visualization Using 6/16/2015. The purpose of visualization is insight, not pictures.

Insight VisREU Site. Agenda. Introduction to Scientific Visualization Using 6/16/2015. The purpose of visualization is insight, not pictures. 2015 VisREU Site Introduction to Scientific Visualization Using Vetria L. Byrd, Director Advanced Visualization VisREU Site Coordinator REU Site Sponsored by NSF ACI Award 1359223 Introduction to SciVis(High

More information

3D Visualization for Matlab

3D Visualization for Matlab 3D Visualization for Matlab Erich Birngruber, René Donner, Georg Langs Computational Image Analysis and Radiology Lab Medical University of Vienna, Austria http://www.cir.meduniwien.ac.at/ CSAIL, Massachusetts

More information

Visualization Computer Graphics I Lecture 20

Visualization Computer Graphics I Lecture 20 15-462 Computer Graphics I Lecture 20 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 15, 2003 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

Scalar Visualization

Scalar Visualization Scalar Visualization Visualizing scalar data Popular scalar visualization techniques Color mapping Contouring Height plots outline Recap of Chap 4: Visualization Pipeline 1. Data Importing 2. Data Filtering

More information

AUTOMATIC GRAPHIC USER INTERFACE GENERATION FOR VTK

AUTOMATIC GRAPHIC USER INTERFACE GENERATION FOR VTK AUTOMATIC GRAPHIC USER INTERFACE GENERATION FOR VTK Wilfrid Lefer LIUPPA - Université de Pau B.P. 1155, 64013 Pau, France e-mail: wilfrid.lefer@univ-pau.fr ABSTRACT VTK (The Visualization Toolkit) has

More information

Cindy3D Project Documentation

Cindy3D Project Documentation Cindy3D Project Documentation Matthias Reitinger Jan Sommer March 13, 2012 2 Contents 1. Project overview 4 1.1. Cinderella & CindyScript........................... 4 1.2. Cindy3D.....................................

More information

Graphics Programming. Computer Graphics, VT 2016 Lecture 2, Chapter 2. Fredrik Nysjö Centre for Image analysis Uppsala University

Graphics Programming. Computer Graphics, VT 2016 Lecture 2, Chapter 2. Fredrik Nysjö Centre for Image analysis Uppsala University Graphics Programming Computer Graphics, VT 2016 Lecture 2, Chapter 2 Fredrik Nysjö Centre for Image analysis Uppsala University Graphics programming Typically deals with How to define a 3D scene with a

More information

CIS 581 Interactive Computer Graphics (slides based on Dr. Han-Wei Shen s slides) Requirements. Reference Books. Textbook

CIS 581 Interactive Computer Graphics (slides based on Dr. Han-Wei Shen s slides) Requirements. Reference Books. Textbook CIS 581 Interactive Computer Graphics (slides based on Dr. Han-Wei Shen s slides) Instructor: Rick Parent (parent@cse.osu.edu) Credit: 4 Class: MWF 10:30 11:18 pm DL357 Office hours: MW 11:30 12:18 DL

More information

COS 116 The Computational Universe Laboratory 10: Computer Graphics

COS 116 The Computational Universe Laboratory 10: Computer Graphics COS 116 The Computational Universe Laboratory 10: Computer Graphics As mentioned in lecture, computer graphics has four major parts: imaging, rendering, modeling, and animation. In this lab you will learn

More information

Lecture overview. Visualisatie BMT. Goal. Summary (1) Summary (3) Summary (2) Goal Summary Study material

Lecture overview. Visualisatie BMT. Goal. Summary (1) Summary (3) Summary (2) Goal Summary Study material Visualisatie BMT Introduction, visualization, visualization pipeline Arjan Kok a.j.f.kok@tue.nl Lecture overview Goal Summary Study material What is visualization Examples Visualization pipeline 1 2 Goal

More information

0. Introduction: What is Computer Graphics? 1. Basics of scan conversion (line drawing) 2. Representing 2D curves

0. Introduction: What is Computer Graphics? 1. Basics of scan conversion (line drawing) 2. Representing 2D curves CSC 418/2504: Computer Graphics Course web site (includes course information sheet): http://www.dgp.toronto.edu/~elf Instructor: Eugene Fiume Office: BA 5266 Phone: 416 978 5472 (not a reliable way) Email:

More information

SUBJECT CODE: CS 6630 SUBJECT: SCIENTIFIC VISUALIZATION

SUBJECT CODE: CS 6630 SUBJECT: SCIENTIFIC VISUALIZATION SUBJECT CODE: CS 6630 SUBJECT: SCIENTIFIC VISUALIZATION LEENA KORA EMAIL:leenak@cs.utah.edu CADE_ACCOUNT: kora PART A AND B (Univariate clormaps) Visualizing images as color-mapped plane and heightfields

More information

VRX: Virtual Reality explorer Toolkit v A brief system specification -

VRX: Virtual Reality explorer Toolkit v A brief system specification - VRX: Virtual Reality explorer Toolkit v. 2.0 - A brief system specification - Michal Koutek, Email: M.Koutek@ewi.tudelft.nl VR and Visualization Group, Faculty of Electrical Engineering, Mathematics and

More information

Introduction to 3D Graphics

Introduction to 3D Graphics Graphics Without Polygons Volume Rendering May 11, 2010 So Far Volumetric Rendering Techniques Misc. So Far Extended the Fixed Function Pipeline with a Programmable Pipeline Programming the pipeline is

More information

Scalar Visualization Part I. Lisa Avila Kitware, Inc.

Scalar Visualization Part I. Lisa Avila Kitware, Inc. Scalar Visualization Part I Lisa Avila Kitware, Inc. Overview Topics covered in Part I: Color mapping Cutting Contouring Image processing Topics covered in Part II: Volume rendering Controlling the volume

More information

CPS 533 Scientific Visualization

CPS 533 Scientific Visualization CPS 533 Scientific Visualization Wensheng Shen Department of Computational Science SUNY Brockport Chapter 3: Computer Graphics Primer Computer graphics is the foundation of data visualization Visualization

More information

CIS 581 Interactive Computer Graphics

CIS 581 Interactive Computer Graphics CIS 581 Interactive Computer Graphics Instructor: Han-Wei Shen (hwshen@cse.ohio-state.edu) Credit: 4 Class: MWF 2:30 pm 3:18 pm DL 264 Office hours: TuTr 11 am - 12pm DL 789 Web: http://www.cse.ohio-state.edu/~hwshen/581

More information

CS 4620 Program 3: Pipeline

CS 4620 Program 3: Pipeline CS 4620 Program 3: Pipeline out: Wednesday 14 October 2009 due: Friday 30 October 2009 1 Introduction In this assignment, you will implement several types of shading in a simple software graphics pipeline.

More information

Data Visualization (CIS/DSC 468)

Data Visualization (CIS/DSC 468) Data Visualization (CIS/DSC 468) Vector Visualization Dr. David Koop Visualizing Volume (3D) Data 2D visualization slice images (or multi-planar reformating MPR) Indirect 3D visualization isosurfaces (or

More information

Rapid Application Prototyping Environment. Currently 920+ Standard modules in the MeVisLab SDK core, modules delivered in total

Rapid Application Prototyping Environment. Currently 920+ Standard modules in the MeVisLab SDK core, modules delivered in total 1 MeVisLab MIP Prototyping 2 MeVisLab http://www.mevislab.de/ In more than 20 years of development, MeVisLab has become one of the most powerful development platforms for medical image computing research.

More information

Data analysis with ParaView CSMP Workshop 2009 Gillian Gruen

Data analysis with ParaView CSMP Workshop 2009 Gillian Gruen Data analysis with ParaView 3.4.0 CSMP Workshop 2009 Gillian Gruen How to...... display a data set ( Contour, Glyph, Clip, Slice) be efficient in displaying similar data sets ( work with Lookmarks )...

More information

Scalable and Distributed Visualization using ParaView

Scalable and Distributed Visualization using ParaView Scalable and Distributed Visualization using ParaView Eric A. Wernert, Ph.D. Senior Manager & Scientist, Advanced Visualization Lab Pervasive Technology Institute, Indiana University Big Data for Science

More information

Contour Analysis And Visualization

Contour Analysis And Visualization Contour Analysis And Visualization Objectives : stages The objectives of Contour Analysis and Visualization can be described in the following 1. To study and analyse the contour 2. Visualize the contour

More information

CSCD18: Computer Graphics. Instructor: Leonid Sigal

CSCD18: Computer Graphics. Instructor: Leonid Sigal CSCD18: Computer Graphics Instructor: Leonid Sigal CSCD18: Computer Graphics Instructor: Leonid Sigal (call me Leon) lsigal@utsc.utoronto.ca www.cs.toronto.edu/~ls/ Office: SW626 Office Hour: M, 12-1pm?

More information

CSE528 Computer Graphics: Theory, Algorithms, and Applications

CSE528 Computer Graphics: Theory, Algorithms, and Applications CSE528 Computer Graphics: Theory, Algorithms, and Applications Hong Qin State University of New York at Stony Brook (Stony Brook University) Stony Brook, New York 11794--4400 Tel: (631)632-8450; Fax: (631)632-8334

More information

Lecture overview. Visualisatie BMT. Fundamental algorithms. Visualization pipeline. Structural classification - 1. Structural classification - 2

Lecture overview. Visualisatie BMT. Fundamental algorithms. Visualization pipeline. Structural classification - 1. Structural classification - 2 Visualisatie BMT Fundamental algorithms Arjan Kok a.j.f.kok@tue.nl Lecture overview Classification of algorithms Scalar algorithms Vector algorithms Tensor algorithms Modeling algorithms 1 2 Visualization

More information

What is visualization? Why is it important?

What is visualization? Why is it important? What is visualization? Why is it important? What does visualization do? What is the difference between scientific data and information data Visualization Pipeline Visualization Pipeline Overview Data acquisition

More information

Lecture 12: Mid-term test solution & project. CITS 3003 Graphics & Animation

Lecture 12: Mid-term test solution & project. CITS 3003 Graphics & Animation Lecture 12: Mid-term test solution & project CITS 3003 Graphics & Animation Slides: E. Angel and D. Shreiner: Interactive Computer Graphics 6E Addison-Wesley 2012 Objectives Explain solution to the mid-term

More information

PRISM Project for Integrated Earth System Modelling An Infrastructure Project for Climate Research in Europe funded by the European Commission

PRISM Project for Integrated Earth System Modelling An Infrastructure Project for Climate Research in Europe funded by the European Commission PRISM Project for Integrated Earth System Modelling An Infrastructure Project for Climate Research in Europe funded by the European Commission under Contract EVR1-CT2001-40012 The VTK_Mapper Application

More information

Scalar Data. CMPT 467/767 Visualization Torsten Möller. Weiskopf/Machiraju/Möller

Scalar Data. CMPT 467/767 Visualization Torsten Möller. Weiskopf/Machiraju/Möller Scalar Data CMPT 467/767 Visualization Torsten Möller Weiskopf/Machiraju/Möller Overview Basic strategies Function plots and height fields Isolines Color coding Volume visualization (overview) Classification

More information

Scalar Data. Visualization Torsten Möller. Weiskopf/Machiraju/Möller

Scalar Data. Visualization Torsten Möller. Weiskopf/Machiraju/Möller Scalar Data Visualization Torsten Möller Weiskopf/Machiraju/Möller Overview Basic strategies Function plots and height fields Isolines Color coding Volume visualization (overview) Classification Segmentation

More information

POVRAY: a tool for scientific visualisation Paul Bourke WASP, UWA

POVRAY: a tool for scientific visualisation Paul Bourke WASP, UWA POVRAY: a tool for scientific visualisation Paul Bourke WASP, UWA Introduction POVRay is a raytracer. For each position (pixels) in the image plane rays are traced from a virtual camera into a scene. The

More information

CHAPTER 1 Graphics Systems and Models 3

CHAPTER 1 Graphics Systems and Models 3 ?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........

More information

Visualization Computer Graphics I Lecture 20

Visualization Computer Graphics I Lecture 20 15-462 Computer Graphics I Lecture 20 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] November 20, 2003 Doug James Carnegie Mellon University http://www.cs.cmu.edu/~djames/15-462/fall03

More information

Topics and things to know about them:

Topics and things to know about them: Practice Final CMSC 427 Distributed Tuesday, December 11, 2007 Review Session, Monday, December 17, 5:00pm, 4424 AV Williams Final: 10:30 AM Wednesday, December 19, 2007 General Guidelines: The final will

More information

Computer Graphics. Anders Hast. måndag 25 mars 13

Computer Graphics. Anders Hast. måndag 25 mars 13 Computer Graphics Anders Hast Who am I? 5 years in Industry after graduation, 2 years as highschool teacher. 1996 Teacher, University of Gävle 2004 PhD, Computerized Image Processing Computer Graphics

More information

CSC 7443: Scientific Information Visualization

CSC 7443: Scientific Information Visualization Scientific Information Visualization CSC 7443, Spring 2011 9:10 am to 10:30 am, Tuesday and Thursday 104 Audubon Hall Bijaya Bahadur Karki Course Description Catalog: Study computer visualization principles,

More information

Introduction to Python Introduction to VTK. Filip Malmberg Uppsala universitet

Introduction to Python Introduction to VTK. Filip Malmberg Uppsala universitet Introduction to Python Introduction to VTK Filip Malmberg filip@cb.uu.se IT Uppsala universitet Part 1: Introduction to Python IT Uppsala universitet What is Python? Dynamic, interpreted high-level language.

More information

EF432. Introduction to spagetti and meatballs

EF432. Introduction to spagetti and meatballs EF432 Introduction to spagetti and meatballs CSC 418/2504: Computer Graphics Course web site (includes course information sheet): http://www.dgp.toronto.edu/~karan/courses/418/ Instructors: L2501, T 6-8pm

More information

CS451Real-time Rendering Pipeline

CS451Real-time Rendering Pipeline 1 CS451Real-time Rendering Pipeline JYH-MING LIEN DEPARTMENT OF COMPUTER SCIENCE GEORGE MASON UNIVERSITY Based on Tomas Akenine-Möller s lecture note You say that you render a 3D 2 scene, but what does

More information

tutorial : modeling synaptic plasticity

tutorial : modeling synaptic plasticity tutorial : modeling synaptic plasticity Computational Neuroscience by the Mediterranean Winter School, Jan 20th, 2016 Michael Graupner Université Paris Descartes CNRS UMR 8118, Paris, France michael.graupner@parisdescartes.fr

More information

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling Welcome to the lectures on computer graphics. We have

More information

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane Rendering Pipeline Rendering Converting a 3D scene to a 2D image Rendering Light Camera 3D Model View Plane Rendering Converting a 3D scene to a 2D image Basic rendering tasks: Modeling: creating the world

More information

Computer Graphics 1, Fall 2005

Computer Graphics 1, Fall 2005 Computer Graphics 1, Fall 2005 Computer Graphics 1, Fall 2005 Patrick Karlsson Ingela Nyström Erik Vidholm Anders Hast Filip Malmberg patrick@cb.uu.se ingela@cb.uu.se erik@cb.uu.se aht@hig.se filip@cb.uu.se

More information

3D Data visualization with Mayavi and TVTK

3D Data visualization with Mayavi and TVTK 3D Data visualization with Mayavi and TVTK Prabhu Ramachandran Department of Aerospace Engineering IIT Bombay Advanced tutorials at SciPy09 Caltech, Pasadena Aug. 18, 2009 Prabhu Ramachandran (IIT Bombay)

More information

EF432. Introduction to spagetti and meatballs

EF432. Introduction to spagetti and meatballs EF432 Introduction to spagetti and meatballs CSC 418/2504: Computer Graphics Course web site (includes course information sheet): http://www.dgp.toronto.edu/~karan/courses/418/fall2015 Instructor: Karan

More information

Introduction to Visualization and Computer Graphics

Introduction to Visualization and Computer Graphics Introduction to Visualization and Computer Graphics DH2320, Fall 2015 Prof. Dr. Tino Weinkauf Introduction to Visualization and Computer Graphics Visibility Shading 3D Rendering Geometric Model Color Perspective

More information

Scientific Visualization. Katia Oleinik:

Scientific Visualization. Katia Oleinik: Scientific Visualization Katia Oleinik: koleinik@bu.edu Scientific Visualization (or SciVis) is a branch of computer science which is concerned with graphical representation of real-world objects and scientific

More information

Topic 0. Introduction: What Is Computer Graphics? CSC 418/2504: Computer Graphics EF432. Today s Topics. What is Computer Graphics?

Topic 0. Introduction: What Is Computer Graphics? CSC 418/2504: Computer Graphics EF432. Today s Topics. What is Computer Graphics? EF432 Introduction to spagetti and meatballs CSC 418/2504: Computer Graphics Course web site (includes course information sheet): http://www.dgp.toronto.edu/~karan/courses/418/ Instructors: L0101, W 12-2pm

More information

Computer Graphics and Visualization. What is computer graphics?

Computer Graphics and Visualization. What is computer graphics? CSCI 120 Computer Graphics and Visualization Shiaofen Fang Department of Computer and Information Science Indiana University Purdue University Indianapolis What is computer graphics? Computer graphics

More information

Homework #2. Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves

Homework #2. Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves Computer Graphics Instructor: Brian Curless CSEP 557 Autumn 2016 Homework #2 Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves Assigned: Wednesday, Nov 16 th Due: Wednesday, Nov 30

More information

Practical 2: Ray Tracing

Practical 2: Ray Tracing 2017/2018, 4th quarter INFOGR: Graphics Practical 2: Ray Tracing Author: Jacco Bikker The assignment: The purpose of this assignment is to create a small Whitted-style ray tracer. The renderer should be

More information

Computer Graphics: Programming, Problem Solving, and Visual Communication

Computer Graphics: Programming, Problem Solving, and Visual Communication Computer Graphics: Programming, Problem Solving, and Visual Communication Dr. Steve Cunningham Computer Science Department California State University Stanislaus Turlock, CA 95382 copyright 2002, Steve

More information

Introduction to Computer Graphics. Knowledge basic concepts 2D and 3D computer graphics

Introduction to Computer Graphics. Knowledge basic concepts 2D and 3D computer graphics Introduction to Computer Graphics Knowledge basic concepts 2D and 3D computer graphics 1 Introduction 2 Basic math 3 2D transformations 4 3D transformations 5 Viewing 6 Primitives 7 Geometry 8 Shading

More information

Data Visualization. What is the goal? A generalized environment for manipulation and visualization of multidimensional data

Data Visualization. What is the goal? A generalized environment for manipulation and visualization of multidimensional data Data Visualization NIH-NSF NSF BBSI: Simulation and Computer Visualization of Biological Systems at Multiple Scales June 2-4, 2 2004 Joel R. Stiles, MD, PhD What is the goal? A generalized environment

More information

Level of Details in Computer Rendering

Level of Details in Computer Rendering Level of Details in Computer Rendering Ariel Shamir Overview 1. Photo realism vs. Non photo realism (NPR) 2. Objects representations 3. Level of details Photo Realism Vs. Non Pixar Demonstrations Sketching,

More information

Image Registration Lecture 1: Introduction

Image Registration Lecture 1: Introduction Image Registration Lecture 1: Introduction Prof. Charlene Tsai Outline Syllabus Registration problem Applications of registration Components of a solution Thematic questions underlying registration Software

More information

COMP30019 Graphics and Interaction Perspective & Polygonal Geometry

COMP30019 Graphics and Interaction Perspective & Polygonal Geometry COMP30019 Graphics and Interaction Perspective & Polygonal Geometry Department of Computing and Information Systems The Lecture outline Introduction Perspective Geometry Virtual camera Centre of projection

More information

Data Representation in Visualisation

Data Representation in Visualisation Data Representation in Visualisation Visualisation Lecture 4 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Taku Komura Data Representation 1 Data Representation We have

More information

COS 116 The Computational Universe Laboratory 10: Computer Graphics

COS 116 The Computational Universe Laboratory 10: Computer Graphics COS 116 The Computational Universe Laboratory 10: Computer Graphics As mentioned in lecture, computer graphics has four major parts: imaging, rendering, modeling, and animation. In this lab you will learn

More information

Blender Notes. Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 1 The Blender Interface and Basic Shapes

Blender Notes. Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 1 The Blender Interface and Basic Shapes Blender Notes Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 1 The Blender Interface and Basic Shapes Introduction Blender is a powerful modeling, animation and rendering

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology Texture and Environment Maps Fall 2018 Texture Mapping Problem: colors, normals, etc. are only specified at vertices How do we add detail between vertices without incurring

More information

CSE 167: Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013

CSE 167: Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 CSE 167: Introduction to Computer Graphics Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 Today Course organization Course overview 2 Course Staff Instructor Jürgen Schulze,

More information

COMP environment mapping Mar. 12, r = 2n(n v) v

COMP environment mapping Mar. 12, r = 2n(n v) v Rendering mirror surfaces The next texture mapping method assumes we have a mirror surface, or at least a reflectance function that contains a mirror component. Examples might be a car window or hood,

More information

An Introduction to Geometric Modeling using Polygonal Meshes

An Introduction to Geometric Modeling using Polygonal Meshes An Introduction to Geometric Modeling using Polygonal Meshes Joaquim Madeira Version 0.2 October 2014 U. Aveiro, October 2014 1 Main topics CG and affine areas Geometric Modeling Polygonal meshes Exact

More information

Scalar Algorithms: Contouring

Scalar Algorithms: Contouring Scalar Algorithms: Contouring Computer Animation and Visualisation Lecture tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour School of Informatics Contouring Scaler Data Last Lecture...

More information

Previously... contour or image rendering in 2D

Previously... contour or image rendering in 2D Volume Rendering Visualisation Lecture 10 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Previously... contour or image rendering in 2D 2D Contour line

More information

Deferred Rendering Due: Wednesday November 15 at 10pm

Deferred Rendering Due: Wednesday November 15 at 10pm CMSC 23700 Autumn 2017 Introduction to Computer Graphics Project 4 November 2, 2017 Deferred Rendering Due: Wednesday November 15 at 10pm 1 Summary This assignment uses the same application architecture

More information