OpenWalnut An Open-Source Visualization System

Similar documents
Discover the framework and make your first steps with it.

FreeFem++-cs, the FreeFem++ Graphical Interface

Current Status of Development of New VLBI Data Analysis Software

Introduction to Python

Introduction to GPU Computing

CMake/CTest/CDash OSCON 2009

lubyk lua libraries for live arts Gaspard Bucher (Buma)! artist, musician, coder

A generic framework for game development

The Clean programming language. Group 25, Jingui Li, Daren Tuzi

Image Management Suite. Mini Thesis. Roland Foster. Supervisors: Mr. Mehrdad Ghaziasgar and Mr. James Connan. B.Sc. Honours

Post-processing and Visualization with Open-Source Tools. Journée Scientifique Centre Image April 9, Julien Jomier

Evolutionary Algorithms Software

Introduction to MeVisLab Visual Programming Image Processing / VIsualization Examples VTK / ITK Integration MeVisLab SDK Features GUI Scripting

Scientific Visualization with Open Source Tools. HM 2014 Julien Jomier

a powerful graphical developing tool for prototyping image processing tasks

Facts about Visualization Pipelines, applicable to VisIt and ParaView

An Interactive Visualization Tool for Nipype Medical Image Computing Pipelines


USE OF SCILAB FOR SPACE MISSION ANALYSIS AND FLIGHT DYNAMICS ACTIVITIES

SUNPY: PYTHON FOR SOLAR PHYSICS. AN IMPLEMENTATION FOR LOCAL CORRELATION TRACKING

Sequential Performance Analysis with Callgrind and KCachegrind

How To Use A Karlsruhe Doppler Lidar

In: Proceedings of RECPAD th Portuguese Conference on Pattern Recognition June 27th- 28th, 2002 Aveiro, Portugal

Sequential Performance Analysis with Callgrind and KCachegrind

High Performance Cloud: a MapReduce and GPGPU Based Hybrid Approach

Stream Processing on GPUs Using Distributed Multimedia Middleware

NVIDIA CUDA Software and GPU Parallel Computing Architecture. David B. Kirk, Chief Scientist

Talend Technical Note

Visual Basic Programming. An Introduction

Equalizer. Parallel OpenGL Application Framework. Stefan Eilemann, Eyescale Software GmbH

What is An Introduction

VIDEO SCRIPT: Data Management

Experiences with 2-D and 3-D Mathematical Plots on the Java Platform

Introduction to GPU Programming Languages

Ball Aerospace s COSMOS Open Source Test System

APPLICATIONS OF LINUX-BASED QT-CUDA PARALLEL ARCHITECTURE

SAP HANA Cloud Platform

The Most Popular UI/Apps Framework For IVI on Linux

Variable Base Interface

Why this lecture exists ITK Lecture 12: Open Source & Cross Platform Software Development

James Ahrens, Berk Geveci, Charles Law. Technical Report

Python 2 and 3 compatibility testing via optional run-time type checking

Intro to scientific programming (with Python) Pietro Berkes, Brandeis University

Certificate Program in Applied Big Data Analytics in Dubai. A Collaborative Program offered by INSOFE and Synergy-BI

Online Data Monitoring Framework Based on Histogram Packaging in Network Distributed Data Acquisition Systems

Collaborative Open Market to Place Objects at your Service

How To Compare Real Time Scheduling To A Scheduled Scheduler On Linux On A Computer System With A Visualization System

Computer Vision Technology. Dave Bolme and Steve O Hara

Programming in C# with Microsoft Visual Studio 2010

GUI application set up using QT designer. Sana Siddique. Team 5

Faculty of Computer Science Computer Graphics Group. Final Diploma Examination

Visualization and Post Processing of OpenFOAM results a Brie. a Brief Introduction to VTK

CS 378: Computer Game Technology

Advanced Visualization for Chemistry

Visualization Plugin for ParaView

Virtualization Techniques for Cross Platform Automated Software Builds, Tests and Deployment

Internships and graduation jobs Development

CRASH COURSE PYTHON. Het begint met een idee

Freescale Semiconductor, I

Software Engineering Principles The TriBITS Lifecycle Model. Mike Heroux Ross Bartlett (ORNL) Jim Willenbring (SNL)

MayaVi: A free tool for CFD data visualization

Data analysis and visualization topics

Java the UML Way: Integrating Object-Oriented Design and Programming

Innovative Systems CVAA Compliance Statement

UniGR Workshop: Big Data «The challenge of visualizing big data»

WebSphere Business Monitor

Monitoring Infrastructure (MIS) Software Architecture Document. Version 1.1

DATA ITEM DESCRIPTION

Visualization with OpenDX

Scientific Programming with Python. Randy M. Wadkins, Ph.D. Asst. Prof. of Chemistry & Biochem.

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Programming Languages & Tools

QuickSpecs. NVIDIA Quadro M GB Graphics INTRODUCTION. NVIDIA Quadro M GB Graphics. Overview

1.00 Lecture 1. Course information Course staff (TA, instructor names on syllabus/faq): 2 instructors, 4 TAs, 2 Lab TAs, graders

Apache Thrift and Ruby

SyncTool for InterSystems Caché and Ensemble.

Lesson 1 Introduction to Rapid Application Development using Visual Basic

Complexities of Simulating a Hybrid Agent-Landscape Model Using Multi-Formalism

How To Write A Windows Operating System (Windows) (For Linux) (Windows 2) (Programming) (Operating System) (Permanent) (Powerbook) (Unix) (Amd64) (Win2) (X

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

Java 7 Recipes. Freddy Guime. vk» (,\['«** g!p#« Carl Dea. Josh Juneau. John O'Conner

Enhanced Project Management for Embedded C/C++ Programming using Software Components

Intel Media Server Studio - Metrics Monitor (v1.1.0) Reference Manual

Giac/Xcas, a swiss knife for mathematics

WESTMORELAND COUNTY PUBLIC SCHOOLS Integrated Instructional Pacing Guide and Checklist Computer Math

fakultät für informatik informatik 12 technische universität dortmund Data flow models Peter Marwedel Informatik 12 TU Dortmund Germany

Transcription:

An Open-Source Visualization System 1 Alexander Wiebel 3 Mario Hlawitschka 2 Gerik Scheuermann 1 1 Abteilung für Bild- und Signalverarbeitung, Institut für Informatik, Universität Leipzig, Germany 2 Institute for Data Analysis and Visualization (IDAV), and Department of Computer Science, University of California, Davis, USA 3 Max-Planck-Institut für Kognitions- und Neurowissenschaften, Leipzig, Germany

Outline 1 Yet Another Visualization Tool? 2 What is 3 Software Design 4 Results and Future Work

Outline 1 Yet Another Visualization Tool? 2 What is 3 Software Design 4 Results and Future Work

Available Tools MeVisLab (www.mevislab.de) Amira (www.amira.com) ParaView (www.paraview.org) VISH (vish.origo.ethz.ch) MedINRIA (www-sop.inria.fr/asclepios/software/medinria) Mayavi (mayavi.sourceforge.net) SCIRun (www.scirun.org) Teem (teem.sourceforge.net)

Context Collaboration: Neuroscientists & Visualization Researchers two different requirements to a visualization tool Neuroscientist = End-User Visualization Researcher = Developer

Requirements Open Source and free MeVisLab Amira ParaView VISH MedINRIA Mayavi SCIRun Teem

Requirements Open Source and free General Purpose (w.r.t. medical visualization) MeVisLab Amira ParaView VISH MedINRIA Mayavi SCIRun Teem

Requirements Open Source and free General Purpose (w.r.t. medical visualization) All-In-One: Usable tool and powerful framework MeVisLab Amira ParaView VISH MedINRIA Mayavi SCIRun Teem

Requirements Open Source and free General Purpose (w.r.t. medical visualization) All-In-One: Usable tool and powerful framework Easily extensible (flexibility) MeVisLab Amira ParaView VISH MedINRIA Mayavi SCIRun Teem

Requirements Open Source and free General Purpose (w.r.t. medical visualization) All-In-One: Usable tool and powerful framework Easily extensible (flexibility) Easy to use (graphical user interface) MeVisLab Amira ParaView? VISH MedINRIA Mayavi SCIRun Teem

Requirements Open Source and free General Purpose (w.r.t. medical visualization) All-In-One: Usable tool and powerful framework Easily extensible (flexibility) Easy to use (graphical user interface) Portable (Linux, Windows and MacOS X) MeVisLab Amira ParaView VISH MedINRIA Mayavi SCIRun Teem

Outline 1 Yet Another Visualization Tool? 2 What is 3 Software Design 4 Results and Future Work

What is today Multi-modal visualization tool Powerful framework Fast growing amount of algorithms and methods Actively developed Heavily used by: Max Planck Institute for Cognitive- and Brain Sciences Max Planck Institute for Neurology Our group for all kinds of medical visualization research Other international groups began developing for/with

How it looks

How it looks

How it looks

How it looks

How it looks

Developer Details Written in C++, extensively using Boost GUI with QT Graphics engine uses OpenSceneGraph Programmed with long code life-time and readability in mind Extensive documentation with Doxygen Unit-testing (cxxtest) Strict Code-Style rules with automatic checking (cpplint)

External Lib Integration CUDA integration Teem ITK Ossim FSL...

Outline 1 Yet Another Visualization Tool? 2 What is 3 Software Design 4 Results and Future Work

Design Goals Easy-to-use GUI Responsiveness Interactivity Flexibility Extensibility Only portable external libraries

Overview

The Module Own Thread Data In- and Output only through connectors Communication with User/GUI by properties Graphics Output using scenegraph No knowledge about other modules, GUI or loaded data Can be a container for other modules Push mechanism

Connectors Strictly typed by the kind of data transferred Automatic connection management GUI can provide list of compatible modules for an given connector to user Module get informed, or woke up if new data arrives on connector Automatic change propagation along module graph Abstract implementation allows many kinds of connectors (streaming, bidirectional,...)

Properties Strictly typed (Bool, Floating Point Values, Integers, Strings, Filenames, Vectors, Matrices,...) Possible to define value-constraints Ensures always valid values Grouping of properties GUI implements widgets for handling them According to type Constraints Grouping Propagation of changes

Container Modules can be module container Forwarding of properties and connectors from or to the internal module graph Allows hiding complexity One module even for complex use cases Easy to re-use existing functionality

Overview II

Outline 1 Yet Another Visualization Tool? 2 What is 3 Software Design 4 Results and Future Work

Results Combines best out of two worlds Flexible and extensible framework Easy-to-use and interactive tool Strict separation of GUI and framework Exchangeable GUI and adaptable GUI Interactive and Responsible Portable

Future Work Integration of scripting features (arbitrary language via SWIG) Integration of OpenCL More features from Teem Several GUI s for several purpose or one flexible GUI More file types support

Interested? Website: www.openwalnut.org Videos: www.youtube.com/user/org

Demo Demo

Thank You for Listening Questions?