VTK

Last updated
Developer(s) Kitware Inc.
Stable release
9.3.0 [1]   OOjs UI icon edit-ltr-progressive.svg / 9 November 2023;4 months ago (9 November 2023)
Repository VTK Repository
Written in C, C++, Python [2]
Operating system Cross-platform
Type Scientific visualization
License 3-Clause BSD
Website www.vtk.org

The Visualization Toolkit (VTK) is a free software system for 3D computer graphics, image processing and scientific visualization. [3]

Contents

VTK is distributed under the GNU-approved [4] and FSF-approved [5] BSD 3-clause License. [6]

Functionality

VTK consists of a C++ class library and several interpreted interface layers including Tcl/Tk, Java, and Python. The toolkit is created and supported by the Kitware team. VTK supports a various visualization algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation. VTK has an information visualization framework, has a suite of 3D interaction widgets, supports parallel processing, and integrates with various databases and GUI toolkits such as Qt and Tk. VTK is cross-platform and runs on Linux, Windows, Mac and Unix platforms. The core of VTK is implemented as a C++ toolkit, requiring users to build applications by combining various objects into an application. The system also supports automated wrapping of the C++ core into Python, Java and Tcl, so that VTK applications may also be written using these programming languages. [3]

History

VTK was initially created in 1993 as companion software to the book The Visualization Toolkit: An Object-Oriented Approach to 3D Graphics. [7] The book and software were written by three researchers (Will Schroeder, Ken Martin and Bill Lorensen) on their own time and with permission from General Electric (thus the ownership of the software resided with, and continues to reside with, the authors). After the core of VTK was written, users and developers around the world began to improve and apply the system to real-world problems. [3]

With the founding of Kitware, the VTK community grew rapidly, and toolkit usage expanded into academic, research and commercial applications. A number of major companies and organizations, such as Sandia National Laboratories, Livermore National Laboratory, Los Alamos National Laboratory funded the development of VTK and even developed a number of VTK modules themselves. [3] VTK forms the core of the 3DSlicer biomedical computing application, and numerous research papers at IEEE Visualization and other conferences based on VTK have appeared. VTK has been used on a large 1024-processor computer at the Los Alamos National Laboratory to process nearly a Petabyte of data.

Later VTK was expanded to support the ingestion,[ clarification needed ] processing and display of informatics data. This work was supported by Sandia National Laboratories under the 'Titan' project. [8]

Criticism

In 2013, a survey paper on visualization for radiotherapy noticed that while VTK is a powerful and widely known toolkit, it lacked a number of important features, such as multivolume rendering, had no support of GPGPU libraries such as CUDA, no support of out-of-core rendering of huge datasets and no native support for visualization of time-dependent volumetric data. [9]

However, since 2013 there have been improvements such as VTK-m which can speed-up and parallelize certain computationally intensive tasks using accelerators such as GPGPU. [10] VTK is also used in the visualization pipeline of radiological imaging software such as MEDInria or Starviewer which perform multi-volume (also called fusion) and time-dependent (also called phase) visualizations. [11] [12]

See also

Related Research Articles

<span class="mw-page-title-main">Free software</span> Software licensed to be freely used, modified and distributed

Free software, libre software, or libreware is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, not price; all users are legally free to do what they want with their copies of a free software regardless of how much is paid to obtain the program. Computer programs are deemed "free" if they give end-users ultimate control over the software and, subsequently, over their devices.

<span class="mw-page-title-main">Sandia National Laboratories</span> National laboratory in Albuquerque, New Mexico.

Sandia National Laboratories (SNL), also known as Sandia, is one of three research and development laboratories of the United States Department of Energy's National Nuclear Security Administration (NNSA). Headquartered in Kirtland Air Force Base in Albuquerque, New Mexico, it has a second principal facility next to Lawrence Livermore National Laboratory in Livermore, California, and a test facility in Waimea, Kauai, Hawaii. Sandia is owned by the U.S. federal government but privately managed and operated by National Technology and Engineering Solutions of Sandia, a wholly owned subsidiary of Honeywell International.

<span class="mw-page-title-main">Scientific visualization</span> Interdisciplinary branch of science concerned with presenting scientific data visually

Scientific visualization is an interdisciplinary branch of science concerned with the visualization of scientific phenomena. It is also considered a subset of computer graphics, a branch of computer science. The purpose of scientific visualization is to graphically illustrate scientific data to enable scientists to understand, illustrate, and glean insight from their data. Research into how people read and misread various types of visualizations is helping to determine what types and features of visualizations are most understandable and effective in conveying information.

<span class="mw-page-title-main">Volume rendering</span> Representing a 3D-modeled object or dataset as a 2D projection

In scientific visualization and computer graphics, volume rendering is a set of techniques used to display a 2D projection of a 3D discretely sampled data set, typically a 3D scalar field.

ITK is a cross-platform, open-source application development framework widely used for the development of image segmentation and image registration programs. Segmentation is the process of identifying and classifying data found in a digitally sampled representation. Typically the sampled representation is an image acquired from such medical instrumentation as CT or MRI scanners. Registration is the task of aligning or developing correspondences between data. For example, in the medical environment, a CT scan may be aligned with an MRI scan in order to combine the information contained in both.

<span class="mw-page-title-main">Prefuse</span> Java-based toolkit

Prefuse is a Java-based toolkit for building interactive information visualization applications. It supports a rich set of features for data modeling, visualization and interaction. It provides optimized data structures for tables, graphs, and trees, a host of layout and visual encoding techniques, and support for animation, dynamic queries, integrated search, and database connectivity.

<span class="mw-page-title-main">ParaView</span> Scientific visualization software

ParaView is an open-source multiple-platform application for interactive, scientific visualization. It has a client–server architecture to facilitate remote visualization of datasets, and generates level of detail (LOD) models to maintain interactive frame rates for large datasets. It is an application built on top of the Visualization Toolkit (VTK) libraries. ParaView is an application designed for data parallelism on shared-memory or distributed-memory multicomputers and clusters. It can also be run as a single-computer application.

<span class="mw-page-title-main">Kitware</span>

Kitware, Inc. is a technology company headquartered in Clifton Park, New York. The company is involved in the research and development of open-source software in the fields of computer vision, medical imaging, visualization, 3D data publishing, and technical software development.

<span class="mw-page-title-main">Tk (software)</span> GUI toolkit or framework

Tk is a cross-platform widget toolkit that provides a library of basic elements of GUI widgets for building a graphical user interface (GUI) in many programming languages. It is free and open-source software released under a BSD-style software license.

<span class="mw-page-title-main">3D Slicer</span> Image analysis and scientific visualization software

3D Slicer (Slicer) is a free and open source software package for image analysis and scientific visualization. Slicer is used in a variety of medical applications, including autism, multiple sclerosis, systemic lupus erythematosus, prostate cancer, lung cancer, breast cancer, schizophrenia, orthopedic biomechanics, COPD, cardiovascular disease and neurosurgery.

<span class="mw-page-title-main">IGSTK</span>

The Image-Guided Surgery Toolkit is a software package oriented to facilitate the development of image-guided surgery applications.

<span class="mw-page-title-main">Voreen</span> Volume visualization library and development platform

Voreen is an open-source volume visualization library and development platform. Through the use of GPU-based volume rendering techniques it allows high frame rates on standard graphics hardware to support interactive volume exploration.

<span class="mw-page-title-main">GIMIAS</span>

GIMIAS is a workflow-oriented environment focused on biomedical image computing and simulation. The open-source framework is extensible through plug-ins and is focused on building research and clinical software prototypes. Gimias has been used to develop clinical prototypes in the fields of cardiac imaging and simulation, angiography imaging and simulation, and neurology

<span class="mw-page-title-main">MeVisLab</span>

MeVisLab is a cross-platform application framework for medical image processing and scientific visualization. It includes advanced algorithms for image registration, segmentation, and quantitative morphological and functional image analysis. An IDE for graphical programming and rapid user interface prototyping is available.

Orthanc is a standalone DICOM server. It is designed to improve the DICOM flows in hospitals and to support research about the automated analysis of medical images. Orthanc lets its users focus on the content of the DICOM files, hiding the complexity of the DICOM format and of the DICOM protocol. It is licensed under the GPLv3.

<span class="mw-page-title-main">Ginkgo CADx</span> Medical imaging software and DICOM viewer

Ginkgo CADx is an abandoned multi platform DICOM viewer (*.dcm) and dicomizer. Ginkgo CADx is licensed under LGPL license, being an open source project with an open core approach. The goal of Ginkgo CADx project was to develop an open source professional DICOM workstation.

<span class="mw-page-title-main">Studierfenster</span>

Studierfenster or StudierFenster (SF) is a free, non-commercial open science client/server-based medical imaging processing online framework. It offers capabilities, like viewing medical data (computed tomography (CT), magnetic resonance imaging (MRI), etc.) in two- and three-dimensional space directly in the standard web browsers, like Google Chrome, Mozilla Firefox, Safari, and Microsoft Edge. Other functionalities are the calculation of medical metrics (dice score and Hausdorff distance), manual slice-by-slice outlining of structures in medical images (segmentation), manual placing of (anatomical) landmarks in medical image data, viewing medical data in virtual reality, a facial reconstruction and registration of medical data for augmented reality, one click showcases for COVID-19 and veterinary scans, and a Radiomics module.

References

  1. Error: Unable to display the reference properly. See the documentation for details.
  2. "Kitware / VTK - GitLab".
  3. 1 2 3 4 Visualization Handbook, Academic Press, 2005, ISBN   012387582X, Chapter 30: the Visualization Toolkit
  4. "Various Licenses and Comments about Them". Gnu.org.
  5. "License:BSD-3-Clause". FSF.org.
  6. "Files · v8.1.1 · VTK / VTK". GitLab.
  7. Schroeder, Will; Martin, Ken; Lorensen, Bill (2006), The Visualization Toolkit (4th ed.), Kitware, ISBN   978-1-930934-19-1
  8. "Sandia Titan webpage". Archived from the original on 2009-02-13. Retrieved 2008-11-11.
  9. Miguel Nunes, Matthias Schlachter, Katja Buehler, "Visualization Tools for Radiotherapy - a Survey", in: Innovative imaging to improve radiotherapy treatments, materials of 2nd summer school by SUMMER Marie Curie Research Training Network, a EU &th Framework Programme, 2013, ISBN   1291604170
  10. "VTKM". VTKM. Retrieved 12 July 2020.
  11. Ruiz, Marc; Julià, Adrià; Boada, Imma (May 2020). "Starviewer and its comparison with other free software DICOM viewers using a novel hierarchical evaluation framework". International Journal of Medical Informatics. 137: Supporting materials section. doi:10.1016/j.ijmedinf.2020.104098. hdl: 10256/17874 . PMID   32066084. S2CID   211158287.
  12. "Github project: An advanced LibreOffice spreadsheet that hierarchically evaluates several features of DICOM viewers". Viewers compasion. Retrieved 12 July 2020.

Further reading