| Contents | |
|---|---|
| General overview | “From zero to first projections” & the module structure |
| Projector extensions I | the StandardPipeline, Poisson noise & polychromatic projections |
| Spectral volumes I | how to create SpectralVolumeData using its factory methods |
| Convenience/usability I | using the file IO & finding information in the documentation |
| CTL GUI I | exploring gui::plot() |
By the end of this tutorial you will be able to:
CTL::MessageHandler and GUI II| Contents | |
|---|---|
| Convenience/usability II | CTL::MessageHandler - customizing message output & log files |
| CTL GUI II | details on UI features, the property-based approach |
By the end of this tutorial you will be able to:
Matrix class template| Contents | |
|---|---|
the Matrix class |
lightweight abstraction used for small matrices with fixed size |
By the end of this tutorial you will be able to:
MatrixMatrix class efficiently with or w/o using the CTL, including
SpectralVolumeData and CompositeVolume| Contents | |
|---|---|
| Spectral volumes II | create SpectralVolumeData from existing VoxelVolume data |
| Composite volumes I | how to manually compose volumes |
| Composite volumes II | decompose volumes using TwoMaterialThresholdVolumeDecomposer |
By the end of this tutorial you will be able to:
CTSystem, SimpleCTSystem, and the JSONSerializer| Contents | |
|---|---|
| CTSystem I | create, populate, and convert CTSystem and SimpleCTSystem objects |
| CTSystem II | how to adapt systems created from blueprints to your needs |
| Convenience/usability III | de-/serialize systems and setups using JSONSerializer |
By the end of this tutorial you will be able to:
| Contents | |
|---|---|
| MWE “pure OpenCL” | the OpenCL C++ API: the princial “workflow” of an OCL program |
| OpenCL Config | class that globally manages OpenCL objects (context, devices, …) |
| PinnedMemory | allows fast efficient data transfer between host and devices |
| Contents | |
|---|---|
| System components I | general overview and details about gantry, source, and detector classes |
| CTL Geometry I | basic concepts of geometry specifications in the CTL |
By the end of this tutorial you will:
AcquisitionSetup| Contents | |
|---|---|
| AcquisitionSetup I | general overview of the AcquisitionSetup and AcquisitionSetup::View |
| AcquisitionSetup II | strategies of modifying setups to your demands |
By the end of this tutorial you will:
AcquisitionSetup class works,AcquisitionSetup for customized scenarios.| Contents | |
|---|---|
| Reconstruction I | general overview of reconstruction in the CTL, OCL::FDKReconstructor |
| Reconstruction II | iterative reconstruction with ARTReconstructor |
| Reconstruction III | special topics: polychromatic reconstruction, iterative FDK |
By the end of this tutorial you will:
FDKReconstructor and ARTReconstructor classes, andARTReconstructor class in more sophisticated scenarios.| Contents | |
|---|---|
| Convenience/usability IV | reading/writing meta information using the io::NrrdFileIO |
| Reconstruction IV | import, preparation, and reconstruction of external/real data |
By the end of this tutorial you will:
(Source code) TBD
The example data of the flat detector setting (i.e. files fdct_xxx.den) are part of a collaboration with the group of Prof. Dr. Thorsten Walles from the University Clinic for Cardiac and Thoracic Surgery Magdeburg.
(Video) TBD
AbstractCTSystemBlueprint, AbstractDataModel, and AbstractPreparationProtocol| Contents | |
|---|---|
| Custom content I | overview of aspects in the CTL that can be extended by custom content |
| Custom content II | creating own system blueprints, data models, and preparation protocols |
| De-/serialization I | first steps towards getting custom classes de-/serializable |
By the end of this tutorial you will:
AbstractProjectionFilter and AbstractVolumeFilter| Contents | |
|---|---|
| Custom content III | creating own projection and volume filters (CPU versions) |
| De-/serialization II | de-/serialization of types that contain poylmorphic (CTL) types |
By the end of this tutorial you will:
GenericOCLProjectionFilter and GenericOCLVolumeFilter| Contents | |
|---|---|
| Custom content V | creating OpenCL-based projection and volume filters |
By the end of this tutorial you will:
GenericOCLProjectionFilter and GenericOCLVolumeFilter to implement projection and volume filters that utilize OpenCL.| Contents | |
|---|---|
| Custom content IV | implementing a custom file IO (read/write files of a particular type) |
By the end of this tutorial you will:
ProjectorExtension| Contents | |
|---|---|
| Custom content VI | implementing custom ProjectorExtension sub-classes |
By the end of this tutorial you will:
ProjectorExtensionProjectorExtension sub-classes for both cases mentioned in 1.[Raw data] Download here: https://www5.cs.fau.de/research/data/digital-brain-perfusion-phantom/index.html