ITK () est une bibliothèque logicielle libre de classes C++ de traitement d'images. Elle contient des algorithmes de recalage d'image, de filtrage et de segmentation. Elle a été créée dans le but d'analyser toute sorte d'images médicales.

Caractéristiques Soutenir le ; créer une base pour la recherche future ; créer un dépôt des algorithmes fondamentaux ; développer une plate-forme pour le développement avancé de produits ; soutenir l'application commerciale de la technologie ; créer des conventions pour les travaux futurs ; développer une communauté autonome d'utilisateurs et de développeurs de logiciels.

Exemples Gradient d'image soumis à un filtre gaussien #include "itkImage.h" int main()

typedef itk::Image< unsigned char, 3 > ImageType; typedef itk::ImageFileReader< ImageType > ReaderType; typedef itk::ImageFileWriter< ImageType > WriterType; typedef itk::GradientRecursiveGaussianImageFilter< ImageType, ImageType > FilterType; ReaderType::Pointer reader = ReaderType::New(); WriterType::Pointer writer = WriterType::New(); reader->SetFileName("poumonCT.dcm"); writer->SetFileName("poumonLisse.hdr"); FilterType::Pointer filter = FilterType::New(); filter->SetInput( reader->GetOutput() ); writer->SetInput( filter->GetOutput() ); filter->SetSigma(); try

writer->Update();

catch( itk::ExceptionObject & excp )

std::cerr << excp << std::endl; return EXIT_FAILURE;

Segmentation par la méthode d'accroissement de région (Region Growing) #include "itkImage.h" int main()

typedef itk::Image< signed short, 3 > InputImageType; typedef itk::Image< unsigned char, 3 > OutputImageType; typedef itk::ImageFileReader< InputImageType > ReaderType; typedef itk::ImageFileWriter< OutputImageType > WriterType; typedef itk::ConnectedThresholdImageFilter< InputImageType, OutputImageType > FilterType; ReaderType::Pointer reader = ReaderType::New(); WriterType::Pointer writer = WriterType::New(); reader->SetFileName("cerveau.dcm"); writer->SetFileName("matiereBlanche.hdr"); FilterType::Pointer filter = FilterType::New(); filter->SetInput( reader->GetOutput() ); writer->SetInput( filter->GetOutput() ); filter->SetMultiplier(2.5); ImageType::IndexType seed; seed = 142; seed = 97; seed = 63; filter->AddSeed( seed ); try

writer->Update();

catch( itk::ExceptionObject & excp )

std::cerr << excp << std::endl; return EXIT_FAILURE;

Notes et références

Voir aussi Articles connexes Lissage d'images Recalage d'images Visualization Toolkit (VTK) Visible Human Project

Liens externes Insight Segmentation and Registration Toolkit

Catégorie:Bibliothèque logicielle graphique Catégorie:Logiciel libre sous licence Apache Catégorie:Informatique médicale