Zum Inhalt springen

Insight Segmentation and Registration Toolkit

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 13. November 2025 um 00:27 Uhr durch imported>SchlurcherBot (Bot: http → https).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
ITK

[[Datei:Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)|150px]]
Basisdaten

Maintainer Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Entwickler National Library of Medicine, Kitware Inc. und diverse Universitäten
Erscheinungsjahr Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Aktuelle Version Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Aktuelle Vorabversion Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Betriebssystem Unix-Derivate (Linux, macOS), Windows
Programmier­sprache C, C++, Python<ref>Insight Software Consortium / ITK - GitHub. Abgerufen am 10. Juni 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>
Kategorie Bildverarbeitung
Lizenz Apache 2.0 Lizenz<ref>License. Abgerufen am 10. Juni 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>
deutschsprachig ja
www.itk.org

Das {{Modul:Vorlage:lang}} Modul:Multilingual:153: attempt to index field 'data' (a nil value) (ITK) ist eine Open-Source-C++-Programmbibliothek für die Segmentierung und Registrierung von Bildern.

Allgemeines

Die Entwicklung von ITK wurde ab 1999 von der National Library of Medicine gestartet, um offene Klassenbibliotheken und Schnittstellen für die Auswertung des Visible Human Projects zu schaffen.<ref>History. Abgerufen am 10. Juni 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> Typische Anwendungsgebiete von ITK sind z. B. die Verarbeitung von medizinischen Daten aus der Computertomographie und der Magnetresonanztomografie. Als Build-System kommt CMake zum Einsatz, welches speziell für ITK entwickelt wurde.<ref>Overview. Abgerufen am 10. Juni 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>

Beispiele

Glättung mithilfe von einem Gaußfilter

<syntaxhighlight lang="cpp">

  1. include <itkImage.h>
  2. include <itkImageFileReader.h>
  3. include <itkImageFileWriter.h>
  4. include <itkDiscreteGaussianImageFilter.h>

int main(int argc, char *argv[]) {

   typedef itk::Image<unsigned char, 2> ImageType;
   typedef itk::ImageFileReader<ImageType> ReaderType;
   typedef itk::ImageFileWriter<ImageType> WriterType;
   typedef itk::DiscreteGaussianImageFilter<ImageType, ImageType> GaussianFilterType;
   ReaderType::Pointer reader = ReaderType::New();
   reader->SetFileName("test.jpg");
   GaussianFilterType::Pointer smoothFilter = GaussianFilterType::New();
   smoothFilter->SetInput(reader->GetOutput());
   smoothFilter->SetVariance(3);
   WriterType::Pointer writer = WriterType::New();
   writer->SetInput(smoothFilter->GetOutput());
   writer->SetFileName("smoothImage.png");
   try
   {
     writer->Update();
   }
   catch( itk::ExceptionObject & excp )
   {
     std::cerr << excp << std::endl;
     return EXIT_FAILURE;
   }

return EXIT_SUCCESS; } </syntaxhighlight>

Region Growing Segmentierung

<syntaxhighlight lang="cpp">

  1. include <itkImage.h>
  2. include <itkImageFileReader.h>
  3. include <itkImageFileWriter.h>
  4. include <itkConnectedThresholdImageFilter.h>

int main(int argc, char *argv[]) {

   typedef itk::Image<unsigned char, 3> ImageType;
   typedef itk::ImageFileReader<ImageType> ReaderType;
   typedef itk::ImageFileWriter<ImageType> WriterType;
   typedef itk::ConnectedThresholdImageFilter<ImageType, ImageType> RegionFilterType;
   ReaderType::Pointer reader = ReaderType::New();
   reader->SetFileName("test.nii");
   ImageType::IndexType seed;
   seed[0] = 142;
   seed[1] =  97;
   seed[2] =  63;
   RegionFilterType::Pointer regionFilter = RegionFilterType::New();
   regionFilter->SetInput(reader->GetOutput());
   regionFilter->SetSeed(seed);
   WriterType::Pointer writer = WriterType::New();
   writer->SetInput(regionFilter->GetOutput());
   writer->SetFileName("region.nii");
   try
   {
     writer->Update();
   }
   catch( itk::ExceptionObject & excp )
   {
     std::cerr << excp << std::endl;
     return EXIT_FAILURE;
   }

return EXIT_SUCCESS; } </syntaxhighlight>

Siehe auch

Weblinks

Einzelnachweise

<references />