├── .clang-format ├── .hooks-config.bash ├── CMake ├── CTestCustom.cmake.in ├── ExternalData.cmake ├── ExternalData_config.cmake.in ├── ITKSetStandardCompilerFlags.cmake ├── ITKSoftwareGuideExternalData.cmake ├── ITK_CheckCCompilerFlag.cmake ├── ITK_CheckCXXCompilerFlag.cmake ├── PreventInBuildInstalls.cmake ├── PreventInSourceBuilds.cmake ├── SlicerMacroCheckExternalProjectDependency.cmake └── SlicerMacroEmptyExternalProject.cmake ├── CMakeLists.txt ├── CONTRIBUTING.md ├── CTestConfig.cmake ├── Common.cmake ├── ITKSoftwareGuide.cmake ├── Latex ├── Copyright.tex ├── HowtoExample.tex ├── Insight.bib ├── Insight.ist ├── Insight.sty ├── InsightBook.cls ├── InsightHowto.cls ├── InsightManual.cls ├── InsightMarkup.sty ├── InsightPaper.sty ├── InsightSoftwareGuide.cls ├── algorithm.sty ├── algorithmic.sty ├── amssymb.sty ├── doubleWordCheck.pl ├── extractImageBoundingBox.sh ├── fancyhdr.sty ├── floatflt.sty ├── fncychap.sty ├── gitdags.sty └── times.sty ├── README.md ├── SoftwareGuide ├── Art │ ├── 3DregionGrowingScreenshot1.jpg │ ├── BSplineInterpolation.eps │ ├── BayesianPluginClassifier.eps │ ├── BinaryImage.jpg │ ├── BinaryMedianImageFilterOutput1.png │ ├── BinaryMedianImageFilterOutput10.png │ ├── BinaryMedianImageFilterOutput50.png │ ├── BinaryThresholdTransferFunction.eps │ ├── BrainMidSagittalSlice.jpg │ ├── BrainProtonDensitySlice.jpg │ ├── BrainProtonDensitySlice2x3.jpg │ ├── BrainProtonDensitySlice2x3b.jpg │ ├── BrainProtonDensitySliceBorder20.jpg │ ├── BrainProtonDensitySliceR10X13Y17S12.jpg │ ├── BrainProtonDensitySliceRotated10.jpg │ ├── BrainProtonDensitySliceShifted13x17y.jpg │ ├── BrainT1Slice.jpg │ ├── CMakeLists.txt │ ├── CMakeSetupScreenShot.jpg │ ├── CannySegmentationLevelSetImageFilterCollaborationDiagram1.eps │ ├── CannySegmentationLevelSetImageFilterVentricle2.jpg │ ├── Circle.png │ ├── CompareImages.tcl │ ├── CompositeExamplePipeline.eps │ ├── CompositeFilterStages.eps │ ├── Configure_ITK_Default.jpg │ ├── Configure_ITK_Group.jpg │ ├── CorpusCallosumMeanShape.jpg │ ├── CorpusCallosumModeMinus0.jpg │ ├── CorpusCallosumModeMinus1.jpg │ ├── CorpusCallosumModeMinus2.jpg │ ├── CorpusCallosumModePlus0.jpg │ ├── CorpusCallosumModePlus1.jpg │ ├── CorpusCallosumModePlus2.jpg │ ├── DICOM-OrientationDiagram-LPS.dia │ ├── DICOM-OrientationDiagram-Radiologist-vs-NeuroSurgeon.dia │ ├── Dashboard.jpg │ ├── DataPipeline.eps │ ├── DataPipelineOneConnection.eps │ ├── DataPipelineUpdate.eps │ ├── DeformableModelCollaborationDiagram.eps │ ├── DeformableRegistration1CheckerboardAfter.jpg │ ├── DeformableRegistration1CheckerboardBefore.jpg │ ├── DeformableRegistration1Output.jpg │ ├── DeformableRegistration2CheckerboardAfter.jpg │ ├── DeformableRegistration2CheckerboardBefore.jpg │ ├── DeformableRegistration2Output.jpg │ ├── DeformableRegistration4DiffAfter.jpg │ ├── DeformableRegistration4DiffBefore.jpg │ ├── DiscreteGaussian.eps │ ├── DiscreteGaussian.gnu │ ├── DisplayImage.tcl │ ├── DudaClassifier.eps │ ├── FastMarchingCollaborationDiagram1.eps │ ├── FastMarchingImageFilterOutput1.jpg │ ├── FastMarchingImageFilterOutput2.jpg │ ├── FastMarchingImageFilterOutput3.jpg │ ├── FatMRISlice.jpg │ ├── FivePoints.jpg │ ├── FuzzyConnectednessClassDiagram1.eps │ ├── FuzzyConnectednessCollaborationDiagram1.eps │ ├── FuzzyVoronoiCollaborationDiagram1.eps │ ├── FuzzyVoronoiDeformableCollaborationDiagram1.eps │ ├── GeodesicActiveContourShapePriorCollaborationDiagram.eps │ ├── GeodesicActiveContourShapePriorImageFilterOutput1.jpg │ ├── GeodesicActiveContourShapePriorImageFilterOutput2.jpg │ ├── GeodesicActiveContourShapePriorImageFilterOutput5.jpg │ ├── GeodesicActiveContourShapePriorImageFilterOutput6.jpg │ ├── GeodesicActiveContoursCollaborationDiagram1.eps │ ├── GeometricalObjects.eps │ ├── Histogram.eps │ ├── HybridSegmentationEngine1.eps │ ├── HybridSegmentationFCVDDM.eps │ ├── HybridSegmentationFuzzyVoronoiOutput.jpg │ ├── HybridSegmentationFuzzyVoronoiOutput2.jpg │ ├── ITK_CMake_GUI_Ubuntu.png │ ├── ITK_CMake_GUI_Windows.png │ ├── ITKv4RegistrationComponentsDiagram.eps │ ├── ImageAdaptorConcept.eps │ ├── ImageAdaptorToVectorImageComponentX.jpg │ ├── ImageAdaptorToVectorImageComponentY.jpg │ ├── ImageIOCollaborationDiagram.eps │ ├── ImageIOFactoriesClassDiagram.eps │ ├── ImageIOFactoriesUseCases.eps │ ├── ImageOriginAndSpacing.eps │ ├── ImageOverlap.eps │ ├── ImageOverlapInterpolator.eps │ ├── ImageOverlapIterator.eps │ ├── ImageOverlapedRegions.eps │ ├── ImageRegistration1Figures.gnup │ ├── ImageRegistration1Figures.sh │ ├── ImageRegistration1Pipeline.eps │ ├── ImageRegistration1TraceMetric.eps │ ├── ImageRegistration1TraceTranslations.eps │ ├── ImageRegistration2Figures.gnup │ ├── ImageRegistration2Figures.sh │ ├── ImageRegistration2TraceMetric.eps │ ├── ImageRegistration2TraceMetric2.eps │ ├── ImageRegistration2TraceTranslations.eps │ ├── ImageRegistration2TraceTranslations2.eps │ ├── ImageRegistration3Observer.eps │ ├── ImageRegistration4Figures.gnup │ ├── ImageRegistration4Figures.sh │ ├── ImageRegistration4FiguresBins.gnup │ ├── ImageRegistration4FiguresNumberOfBins.sh │ ├── ImageRegistration4TraceMetric.eps │ ├── ImageRegistration4TraceTranslations.eps │ ├── ImageRegistration4TraceTranslations2.eps │ ├── ImageRegistration4TraceTranslationsNumberOfBins.eps │ ├── ImageRegistration5Figures.gnup │ ├── ImageRegistration5Figures.sh │ ├── ImageRegistration5TraceAngle1.eps │ ├── ImageRegistration5TraceAngle2.eps │ ├── ImageRegistration5TraceMetric1.eps │ ├── ImageRegistration5TraceMetric2.eps │ ├── ImageRegistration5TraceTranslations1.eps │ ├── ImageRegistration5TraceTranslations2.eps │ ├── ImageRegistration6Figures.gnup │ ├── ImageRegistration6Figures.sh │ ├── ImageRegistration6TraceAngle.eps │ ├── ImageRegistration6TraceMetric.eps │ ├── ImageRegistration6TraceTranslations.eps │ ├── ImageRegistration7Figures.gnup │ ├── ImageRegistration7Figures.sh │ ├── ImageRegistration7TraceAngle.eps │ ├── ImageRegistration7TraceMetric.eps │ ├── ImageRegistration7TraceScale.eps │ ├── ImageRegistration7TraceTranslations.eps │ ├── ImageRegistration8Figures.gnup │ ├── ImageRegistration8Figures.sh │ ├── ImageRegistration8TraceAngle.eps │ ├── ImageRegistration8TraceMetric.eps │ ├── ImageRegistration8TraceTranslations.eps │ ├── ImageRegistration9Figures.gnup │ ├── ImageRegistration9Figures.sh │ ├── ImageRegistration9TraceAngle.eps │ ├── ImageRegistration9TraceMetric.eps │ ├── ImageRegistration9TraceTranslations.eps │ ├── ImageRegistrationConcept.eps │ ├── ImageRegistrationCoordinateSystemsDiagram.eps │ ├── ImageSliceIteratorWithIndexOutput.jpg │ ├── IsolatedConnectedImageFilterOutput0.jpg │ ├── IteratorFigure1.eps │ ├── Kitware-logo-medium-res.png │ ├── LaplacianSegmentationLevelSetImageFilterCollaborationDiagram1.eps │ ├── LevelSetSegmentationFigure1.eps │ ├── LevelSetZeroSet.eps │ ├── MeanSquaresMetricFigures.gnup │ ├── MeanSquaresMetricFigures.sh │ ├── MeanSquaresMetricPlot1.eps │ ├── MeanSquaresMetricPlot2.eps │ ├── MinMaxCurvatureFlowFunctionDiagram.eps │ ├── ModelToImageRegistrationComponentsDiagram.eps │ ├── ModelToImageRegistrationConcept.eps │ ├── ModelToImageRegistrationTraceAngle.eps │ ├── ModelToImageRegistrationTraceTranslations.eps │ ├── MultiResImageRegistration1Figures.gnup │ ├── MultiResImageRegistration1Figures.sh │ ├── MultiResImageRegistration1TraceMetric.eps │ ├── MultiResImageRegistration1TraceTranslations.eps │ ├── MultiResImageRegistration2Figures.gnup │ ├── MultiResImageRegistration2Figures.sh │ ├── MultiResImageRegistration2TraceMetric.eps │ ├── MultiResImageRegistration2TraceTranslations.eps │ ├── MultiResRegistrationConcept.eps │ ├── MultiStageImageRegistration1Figures.sh │ ├── MultiStageImageRegistration2Figures.sh │ ├── NeighborhoodConnectedImageFilterOutput1.jpg │ ├── NeighborhoodConnectedImageFilterOutput2.jpg │ ├── NeighborhoodConnectedImageFilterOutput3.jpg │ ├── NeighborhoodIteratorFig1.eps │ ├── NeighborhoodIteratorFig2.eps │ ├── NeighborhoodIterators1b.jpg │ ├── NeighborhoodIterators6a.jpg │ ├── NeighborhoodIterators6b.jpg │ ├── NeighborhoodIterators6c.jpg │ ├── OptimizersHierarchy.eps │ ├── Optimizersv4Hierarchy.eps │ ├── ParaviewScreenshot1.jpg │ ├── ParaviewScreenshot2.jpg │ ├── ParaviewScreenshot3.jpg │ ├── ParaviewScreenshot4.jpg │ ├── ParaviewScreenshot5.jpg │ ├── ParzenWindowing1.eps │ ├── ParzenWindowing13.eps │ ├── ParzenWindowing2.eps │ ├── ParzenWindowing3.eps │ ├── PointSetWithVectors.eps │ ├── RGBCurvatureAnisotropicDiffusionImageFilterOutput2.jpg │ ├── RGBGradientAnisotropicDiffusionImageFilterOutput2.jpg │ ├── RatLungSlice1.jpg │ ├── RatLungSlice2.jpg │ ├── RegistrationComponentsDiagram.eps │ ├── ResampleImageFilterInput2x3.jpg │ ├── ResampleImageFilterOutput11.jpg │ ├── ResampleImageFilterOutput1Analysis.eps │ ├── ResampleImageFilterOutput2Analysis.eps │ ├── ResampleImageFilterOutput3Analysis.eps │ ├── ResampleImageFilterOutput5.jpg │ ├── ResampleImageFilterOutput6.jpg │ ├── ResampleImageFilterOutput7.jpg │ ├── ResampleImageFilterOutput7b.jpg │ ├── ResampleImageFilterOutput8.jpg │ ├── ResampleImageFilterOutput8b.jpg │ ├── ResampleImageFilterOutput9.jpg │ ├── ResampleImageFilterTransformComposition1.eps │ ├── ResampleImageFilterTransformComposition2.eps │ ├── ResampleImageFilterTransformComposition3.eps │ ├── ResampleImageFilterTransformComposition4.eps │ ├── ResampleImageFilterTransformComposition5.eps │ ├── ResampleImageFilterTransformComposition6.eps │ ├── SampleInheritanceTree.eps │ ├── ShapeDetectionCollaborationDiagram1.eps │ ├── ShapedNeighborhoodIterators1a.jpg │ ├── ShapedNeighborhoodIterators1c.jpg │ ├── ShapedNeighborhoodIterators1d.jpg │ ├── SigmoidBase.eps │ ├── SigmoidParameterAlpha.eps │ ├── SigmoidParameterBeta.eps │ ├── SignedDanielssonDistanceMapImageFilterOutput.png │ ├── SlicesBrainWebConfidenceConnected.png │ ├── SpatialObjectExampleTransforms.eps │ ├── StatisticalClassificationFramework.eps │ ├── ThresholdSegmentationLevelSetImageFilterCollaborationDiagram1.eps │ ├── ThresholdSegmentationLevelSetImageFilterFigure1.eps │ ├── ThresholdTransferFunctionAbove.eps │ ├── ThresholdTransferFunctionBelow.eps │ ├── ThresholdTransferFunctionOutside.eps │ ├── TransformsHierarchy.dot │ ├── TransformsHierarchy.sh │ ├── TranslationAndRotationCenter.eps │ ├── TwoNormalDensityFunctionPlot.jpg │ ├── VectorCurvatureAnisotropicDiffusionImageFilterInput.jpg │ ├── VectorCurvatureAnisotropicDiffusionImageFilterOutput.jpg │ ├── VectorGradientAnisotropicDiffusionImageFilterInput.jpg │ ├── VectorGradientAnisotropicDiffusionImageFilterOutput.jpg │ ├── VisibleWomanEyeSlice.jpg │ ├── VisibleWomanEyeSliceBlueComponent.jpg │ ├── VisibleWomanEyeSliceGreenComponent.jpg │ ├── VisibleWomanEyeSliceRedComponent.jpg │ ├── VisibleWomanHeadSlice.jpg │ ├── VoronoiSegmentationClassDiagram1.eps │ ├── VoronoiSegmentationCollaborationDiagram1.eps │ ├── VoronoiSegmentationCollaborationDiagram2.eps │ ├── WatershedAbdomenSegmentation.jpg │ ├── WatershedCatchmentBasins.eps │ ├── WatershedImageFilter.eps │ ├── WatershedRendering.jpg │ ├── WatershedsHierarchy.eps │ ├── cc-by.png │ ├── ccmake-2-8-screenshot.png │ ├── ccmakeScreenShot.jpg │ ├── cmake-gui-2-8-win-screenshot.png │ └── itkLogo.jpg ├── CMake │ └── FindLATEX.cmake ├── CMakeLists.txt ├── Cover │ ├── ITKSoftwareGuideSinglePDFCoverPage.odt │ ├── README.md │ └── Source │ │ ├── AntialiasFilter.cxx │ │ ├── BinaryMaskMedianFilter.cxx │ │ ├── BinaryThresholdFilter.cxx │ │ ├── CMakeLists.txt │ │ ├── DilateFilter.cxx │ │ ├── ImageReadExtractWriteRGB.cxx │ │ ├── ModelBasedSegmentation.cxx │ │ ├── NegateFilter.cxx │ │ ├── RescaleIntensityFilter.cxx │ │ ├── SoftwareGuideCover.tcl │ │ ├── VWBlueRemoval.cxx │ │ ├── VWColorSegmentation.cxx │ │ ├── VWHistogramHSV.cxx │ │ ├── VWHistogramRGB.cxx │ │ ├── VectorGradientAnisotropicDiffusionFilter.cxx │ │ └── seedPoints ├── DvipsWrapper.bat.in ├── DvipsWrapper.sh.in ├── Examples │ ├── CMakeLists.txt │ ├── ParseCxxExamples.py │ └── RunExamples.py ├── HTLaTeXWrapper.bat.in ├── HTLaTeXWrapper.sh.in ├── LaTeXWrapper.bat.in ├── LaTeXWrapper.sh.in ├── Latex │ ├── 00-Preamble-Common.tex │ ├── 01-PrintedPreamble-Book1.tex │ ├── 01-PrintedPreamble-Book2.tex │ ├── 01-PrintedPreamble-Common.tex │ ├── 02-Cover-Book1.tex │ ├── 02-Cover-Book2.tex │ ├── 03-Abstract-Book1.tex │ ├── 03-Abstract-Book2.tex │ ├── 03-Abstract-Common.tex │ ├── 04-Contributors.tex │ ├── Appendices │ │ ├── CodingStyleGuide.tex │ │ ├── GitWorkflow.tex │ │ └── Licenses.tex │ ├── Architecture │ │ ├── DataRepresentation.tex │ │ ├── ImageAdaptors.tex │ │ ├── Iterators.tex │ │ ├── SpatialObjects.tex │ │ └── SystemOverview.tex │ ├── CMakeLists.txt │ ├── CellularAggregates.tex │ ├── CommandLineArgumentsForExamples.tex │ ├── DesignAndFunctionality │ │ ├── AnisotropicDiffusionFiltering.tex │ │ ├── ConfidenceConnectedOnBrainWeb.tex │ │ ├── DeformableRegistration.tex │ │ ├── DeformableRegistration4OnBrain.tex │ │ ├── DemonsRegistration.tex │ │ ├── FeatureExtractionMethods.tex │ │ ├── Filtering.tex │ │ ├── FiniteElementRegistrationParameters1.txt │ │ ├── HybridSegmentationMethods.tex │ │ ├── IO.tex │ │ ├── ImageInterpolators.tex │ │ ├── ImageMetrics.tex │ │ ├── ImagePyramids.tex │ │ ├── LevelSetsSegmentation.tex │ │ ├── ModelBasedRegistration.tex │ │ ├── Optimizers.tex │ │ ├── Registration.tex │ │ ├── Segmentation.tex │ │ ├── Statistics.tex │ │ ├── Transforms.tex │ │ ├── Visualization.tex │ │ ├── VisualizingDeformationFieldsUsingParaview.tex │ │ └── WatershedSegmentation.tex │ ├── DevelopmentGuidelines │ │ ├── CreateAModule.tex │ │ ├── SoftwareProcess.tex │ │ ├── WriteACompositeFilter.tex │ │ └── WriteAFilter.tex │ ├── ITKSoftwareGuide-Book1.tex │ ├── ITKSoftwareGuide-Book2.tex │ ├── Introduction │ │ ├── Installation.tex │ │ └── Introduction.tex │ ├── MarketingMaterial.tex │ ├── README.md │ └── index.html └── SoftwareGuideConfiguration.tex.in ├── SuperBuild.cmake ├── SuperBuild ├── External_ITK.cmake └── External_RunExamples.cmake ├── TODO ├── Utilities ├── Hooks │ ├── commit-msg │ ├── pre-commit │ └── prepare-commit-msg └── SetupForDevelopment.sh └── XFigOriginals └── SoftwareGuide └── Art ├── BSplineInterpolation.fig ├── BayesianPluginClassifier.fig ├── BinaryThresholdTransferFunction.fig ├── CannySegmentationLevelSetImageFilterCollaborationDiagram1.fig ├── CompositeExamplePipeline.fig ├── CompositeFilterStages.fig ├── DataPipeline.fig ├── DataPipelineOneConnection.fig ├── DataPipelineUpdate.fig ├── DeformableModelCollaborationDiagram.fig ├── DiscreteGaussian.fig ├── DudaClassifier.fig ├── FastMarchingCollaborationDiagram1.fig ├── FuzzyConnectednessClassDiagram1.fig ├── FuzzyConnectednessCollaborationDiagram1.fig ├── FuzzyVoronoiCollaborationDiagram1.fig ├── FuzzyVoronoiDeformableCollaborationDiagram1.fig ├── GeodesicActiveContourShapePriorCollaborationDiagram.fig ├── GeodesicActiveContoursCollaborationDiagram1.fig ├── GeometricalObjects.fig ├── Histogram.fig ├── HybridSegmentationEngine1.fig ├── HybridSegmentationFCVDDM.fig ├── ImageAdaptorConcept.fig ├── ImageIOCollaborationDiagram.fig ├── ImageIOFactoriesClassDiagram.fig ├── ImageIOFactoriesUseCases.fig ├── ImageOriginAndSpacing.fig ├── ImageOverlap.fig ├── ImageOverlapInterpolator.fig ├── ImageOverlapIterator.fig ├── ImageOverlapedRegions.fig ├── ImageRegistration1Pipeline.fig ├── ImageRegistration3Observer.fig ├── ImageRegistrationConcept.fig ├── ImageRegistrationCoordinateSystemsDiagram.fig ├── IteratorFigure1.fig ├── LaplacianSegmentationLevelSetImageFilterCollaborationDiagram1.fig ├── LevelSetSegmentationFigure1.fig ├── LevelSetZeroSet.fig ├── MinMaxCurvatureFlowFunctionDiagram.fig ├── ModelToImageRegistrationComponentsDiagram.fig ├── ModelToImageRegistrationConcept.fig ├── ModelToImageRegistrationTraceAngle.fig ├── ModelToImageRegistrationTraceTranslations.fig ├── MultiResImageRegistration1TraceMetric.fig ├── MultiResImageRegistration1TraceTranslations.fig ├── MultiResImageRegistration2TraceMetric.fig ├── MultiResImageRegistration2TraceTranslations.fig ├── MultiResRegistrationComponents.fig ├── MultiResRegistrationConcept.fig ├── NeighborhoodIteratorFig1.fig ├── NeighborhoodIteratorFig2.fig ├── OptimizersHierarchy.fig ├── ParzenWindowing1.fig ├── ParzenWindowing13.fig ├── ParzenWindowing2.fig ├── ParzenWindowing3.fig ├── PointSetWithVectors.fig ├── RegistrationComponentsDiagram.fig ├── ResampleImageFilterOutput1Analysis.fig ├── ResampleImageFilterOutput2Analysis.fig ├── ResampleImageFilterOutput3Analysis.fig ├── ResampleImageFilterTransformComposition1.fig ├── ResampleImageFilterTransformComposition2.fig ├── ResampleImageFilterTransformComposition3.fig ├── ResampleImageFilterTransformComposition4.fig ├── ResampleImageFilterTransformComposition5.fig ├── ResampleImageFilterTransformComposition6.fig ├── SampleInheritanceTree.fig ├── ShapeDetectionCollaborationDiagram1.fig ├── SigmoidBase.fig ├── SigmoidParameterAlpha.fig ├── SigmoidParameterBeta.fig ├── SpatialObjectExampleTransforms.fig ├── StatisticalClassificationFramework.fig ├── ThresholdSegmentationLevelSetImageFilterCollaborationDiagram1.fig ├── ThresholdSegmentationLevelSetImageFilterFigure1.fig ├── ThresholdTransferFunctionAbove.fig ├── ThresholdTransferFunctionBelow.fig ├── ThresholdTransferFunctionOutside.fig ├── TranslationAndRotationCenter.fig ├── VoronoiSegmentationClassDiagram1.fig ├── VoronoiSegmentationCollaborationDiagram1.fig ├── VoronoiSegmentationCollaborationDiagram2.fig ├── WatershedCatchmentBasins.fig ├── WatershedImageFilter.fig └── WatershedsHierarchy.fig /.hooks-config.bash: -------------------------------------------------------------------------------- 1 | #========================================================================== 2 | # 3 | # Copyright NumFOCUS 4 | # 5 | # Licensed under the Apache License, Version 2.0 (the "License"); 6 | # you may not use this file except in compliance with the License. 7 | # You may obtain a copy of the License at 8 | # 9 | # https://www.apache.org/licenses/LICENSE-2.0.txt 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | #==========================================================================*/ 18 | 19 | # Loaded by .git/hooks/(pre-commit|commit-msg|prepare-commit-msg) 20 | # during git commit after local hooks have been installed. 21 | 22 | hooks_chain_pre_commit="Utilities/Hooks/pre-commit" 23 | hooks_chain_commit_msg="Utilities/Hooks/commit-msg" 24 | hooks_chain_prepare_commit_msg="Utilities/Hooks/prepare-commit-msg" 25 | #hooks_chain_post_commit="Utilities/Hooks/post-commit" 26 | -------------------------------------------------------------------------------- /CMake/ExternalData_config.cmake.in: -------------------------------------------------------------------------------- 1 | set(ExternalData_OBJECT_STORES "@ExternalData_OBJECT_STORES@") 2 | set(ExternalData_URL_TEMPLATES "@ExternalData_URL_TEMPLATES@") 3 | set(ExternalData_TIMEOUT_INACTIVITY "@ExternalData_TIMEOUT_INACTIVITY@") 4 | set(ExternalData_TIMEOUT_ABSOLUTE "@ExternalData_TIMEOUT_ABSOLUTE@") 5 | -------------------------------------------------------------------------------- /CMake/ITKSoftwareGuideExternalData.cmake: -------------------------------------------------------------------------------- 1 | get_filename_component(_ITKExternalData_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) 2 | include(${_ITKExternalData_DIR}/ExternalData.cmake) 3 | 4 | ## The user can specify an environmental variable for shared locations of 5 | ## of object files to prevent continuous downloading of common objects. 6 | if(NOT ExternalData_OBJECT_STORES) 7 | # Use ExternalData_OBJECT_STORES from environment as default. 8 | set(ExternalData_OBJECT_STORES_DEFAULT "") 9 | if(DEFINED "ENV{ExternalData_OBJECT_STORES}") 10 | file(TO_CMAKE_PATH "$ENV{ExternalData_OBJECT_STORES}" ExternalData_OBJECT_STORES_DEFAULT) 11 | endif() 12 | endif() 13 | 14 | set(ExternalData_OBJECT_STORES "${ExternalData_OBJECT_STORES_DEFAULT}" CACHE STRING 15 | "Semicolon-separated list of local directories holding data objects in the layout %(algo)/%(hash).") 16 | mark_as_advanced(ExternalData_OBJECT_STORES) 17 | if(NOT ExternalData_OBJECT_STORES) 18 | set(ExternalData_OBJECT_STORES "${CMAKE_BINARY_DIR}/ExternalData/Objects") 19 | file(MAKE_DIRECTORY "${ExternalData_OBJECT_STORES}") 20 | endif() 21 | list(APPEND ExternalData_OBJECT_STORES 22 | # Local data store populated by the ITK pre-commit hook 23 | "${CMAKE_SOURCE_DIR}/.ExternalData" 24 | ) 25 | 26 | set(ExternalData_BINARY_ROOT ${CMAKE_BINARY_DIR}/ExternalData) 27 | 28 | set(ExternalData_URL_TEMPLATES "" CACHE STRING 29 | "Additional URL templates for the ExternalData CMake script to look for testing data. E.g. 30 | file:///var/bigharddrive/%(algo)/%(hash)") 31 | mark_as_advanced(ExternalData_URL_TEMPLATES) 32 | list(APPEND ExternalData_URL_TEMPLATES 33 | # Local data store populated by the ITK pre-commit hook 34 | "file:///${${PROJECT_NAME}_SOURCE_DIR}/.ExternalData/%(algo)/%(hash)" 35 | # Data published by Iowa Psychiatry web interface 36 | ## The primary home for data 37 | "https://slicer.kitware.com/midas3/api/rest?method=midas.bitstream.download&checksum=%(hash)" 38 | # Data published by MIDAS 39 | "https://midas3.kitware.com/midas/api/rest?method=midas.bitstream.download&checksum=%(hash)&algorithm=%(algo)" 40 | # Data published by developers using git-gerrit-push. 41 | "https://www.itk.org/files/ExternalData/%(algo)/%(hash)" 42 | ) 43 | 44 | # Tell ExternalData commands to transform raw files to content links. 45 | # TODO: Condition this feature on presence of our pre-commit hook. 46 | set(ExternalData_LINK_CONTENT MD5) 47 | 48 | -------------------------------------------------------------------------------- /CMake/ITK_CheckCCompilerFlag.cmake: -------------------------------------------------------------------------------- 1 | # - Check whether the C compiler supports a given flag. 2 | # CHECK_C_COMPILER_FLAG( ) 3 | # - the compiler flag 4 | # - variable to store the result 5 | # This internally calls the check_c_source_compiles macro. 6 | # See help for CheckCSourceCompiles for a listing of variables 7 | # that can modify the build. 8 | 9 | #============================================================================= 10 | # Copyright 2006-2010 Kitware, Inc. 11 | # Copyright 2006 Alexander Neundorf 12 | # 13 | # Distributed under the OSI-approved BSD License (the "License"); 14 | # see accompanying file Copyright.txt for details. 15 | # 16 | # This software is distributed WITHOUT ANY WARRANTY; without even the 17 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 18 | # See the License for more information. 19 | #============================================================================= 20 | # (To distribute this file outside of CMake, substitute the full 21 | # License text for the above reference.) 22 | 23 | include(CheckCSourceCompiles) 24 | 25 | macro (ITK_CHECK_C_COMPILER_FLAG _FLAG _RESULT) 26 | set(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}") 27 | set(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}") 28 | CHECK_C_SOURCE_COMPILES("int main() { return 0; }" ${_RESULT} 29 | # Some compilers do not fail with a bad flag 30 | FAIL_REGEX "warning: command line option .* is valid for .* but not for C" 31 | # Apple gcc 32 | FAIL_REGEX "unrecognized .*option" # GNU 33 | FAIL_REGEX "unknown .*option" # Clang 34 | FAIL_REGEX "ignoring unknown option" # MSVC 35 | FAIL_REGEX "warning D9002" # MSVC, any lang 36 | FAIL_REGEX "[Uu]nknown option" # HP 37 | FAIL_REGEX "[Ww]arning: [Oo]ption" # SunPro 38 | FAIL_REGEX "command option .* is not recognized" # XL 39 | FAIL_REGEX "warning #10156: ignoring option" # INTEL compilers 40 | ) 41 | set (CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}") 42 | endmacro () 43 | -------------------------------------------------------------------------------- /CMake/ITK_CheckCXXCompilerFlag.cmake: -------------------------------------------------------------------------------- 1 | # - Check whether the CXX compiler supports a given flag. 2 | # CHECK_CXX_COMPILER_FLAG( ) 3 | # - the compiler flag 4 | # - variable to store the result 5 | # This internally calls the check_cxx_source_compiles macro. See help 6 | # for CheckCXXSourceCompiles for a listing of variables that can 7 | # modify the build. 8 | 9 | #============================================================================= 10 | # Copyright 2006-2010 Kitware, Inc. 11 | # Copyright 2006 Alexander Neundorf 12 | # 13 | # Distributed under the OSI-approved BSD License (the "License"); 14 | # see accompanying file Copyright.txt for details. 15 | # 16 | # This software is distributed WITHOUT ANY WARRANTY; without even the 17 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 18 | # See the License for more information. 19 | #============================================================================= 20 | # (To distribute this file outside of CMake, substitute the full 21 | # License text for the above reference.) 22 | 23 | include(CheckCXXSourceCompiles) 24 | 25 | macro (ITK_CHECK_CXX_COMPILER_FLAG _FLAG _RESULT) 26 | set(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}") 27 | set(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}") 28 | CHECK_CXX_SOURCE_COMPILES("int main() { return 0;}" ${_RESULT} 29 | # Some compilers do not fail with a bad flag 30 | FAIL_REGEX "unrecognized .*option" # GNU 31 | FAIL_REGEX "unknown .*option" # Clang 32 | FAIL_REGEX "ignoring unknown option" # MSVC 33 | FAIL_REGEX "warning D9002" # MSVC, any lang 34 | FAIL_REGEX "[Uu]nknown option" # HP 35 | FAIL_REGEX "[Ww]arning: [Oo]ption" # SunPro 36 | FAIL_REGEX "command option .* is not recognized" # XL 37 | FAIL_REGEX "not supported in this configuration; ignored" # AIX 38 | FAIL_REGEX "File with unknown suffix passed to linker" # PGI 39 | FAIL_REGEX "warning #10156: ignoring option" # INTEL compilers 40 | ) 41 | set (CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}") 42 | endmacro () 43 | -------------------------------------------------------------------------------- /CMake/PreventInBuildInstalls.cmake: -------------------------------------------------------------------------------- 1 | # Adapted from ITKv4/CMake/PreventInBuildInstalls.cmake 2 | string(TOLOWER "${CMAKE_INSTALL_PREFIX}" _PREFIX) 3 | string(TOLOWER "${${CMAKE_PROJECT_NAME}_BINARY_DIR}" _BUILD) 4 | if("${_PREFIX}" STREQUAL "${_BUILD}") 5 | message(FATAL_ERROR 6 | "The current CMAKE_INSTALL_PREFIX points at the build tree:\n" 7 | " ${CMAKE_INSTALL_PREFIX}\n" 8 | "This is not supported." 9 | ) 10 | endif() 11 | -------------------------------------------------------------------------------- /CMake/PreventInSourceBuilds.cmake: -------------------------------------------------------------------------------- 1 | # Adapted from ITKv4/CMake/PreventInSourceBuilds.cmake 2 | # 3 | # This function will prevent in-source builds 4 | function(AssureOutOfSourceBuilds PROJECT_NAME) 5 | # make sure the user doesn't play dirty with symlinks 6 | get_filename_component(srcdir "${CMAKE_SOURCE_DIR}" REALPATH) 7 | get_filename_component(bindir "${CMAKE_BINARY_DIR}" REALPATH) 8 | 9 | # disallow in-source builds 10 | if("${srcdir}" STREQUAL "${bindir}") 11 | message("###########################################################################") 12 | message("# ${PROJECT_NAME} should not be configured & built in the ${PROJECT_NAME} source directory") 13 | message("# You must run cmake in a build directory.") 14 | message("# For example:") 15 | message("#") 16 | message("# mkdir ${PROJECT_NAME}-Sandbox ; cd ${PROJECT_NAME}-sandbox") 17 | message("#") 18 | message("# Check out source code in ${PROJECT_NAME}-sandbox") 19 | message("#") 20 | message("# mkdir ${PROJECT_NAME}-build") 21 | message("#") 22 | message("# this will create the following directory structure") 23 | message("#") 24 | message("# ${PROJECT_NAME}-Sandbox") 25 | message("# +--${PROJECT_NAME}") 26 | message("# +--${PROJECT_NAME}-build") 27 | message("#") 28 | message("# Then you can proceed to configure and build") 29 | message("# by using the following commands") 30 | message("#") 31 | message("# cd ${PROJECT_NAME}-build") 32 | message("# cmake ../${PROJECT_NAME} # or ccmake, or cmake-gui") 33 | message("# make") 34 | message("#") 35 | message("# NOTE: Given that you already tried to make an in-source build") 36 | message("# CMake have already created several files & directories") 37 | message("# in your source tree.") 38 | message("#") 39 | message("# The following command will show you all files not part of ${PROJECT_NAME}") 40 | message("# cd ${PROJECT_NAME}-Sandbox/${PROJECT_NAME}") 41 | message("# svn status | grep '[^?]' | awk '{print \$2}'") 42 | message("#") 43 | message("# WARNING: if you have added files to ${PROJECT_NAME} but not used svn add") 44 | message("# to add them to SVN's version control, this command will display them") 45 | message("# along with the files CMake created during configuration. You will need") 46 | message("# to either save them outside the ${PROJECT_NAME} source tree, or run svn add") 47 | message("# to let SVN know they are legitimate source files.") 48 | message("# Once you've verified that all unknown files are the result of CMake") 49 | message("# configuration, you can run this command to clean them up") 50 | message("# svn status | grep '[^?]' | awk '{print \$2}' | xargs rm -fr") 51 | message("###########################################################################") 52 | message(FATAL_ERROR "Quitting configuration") 53 | endif() 54 | endfunction() 55 | 56 | AssureOutOfSourceBuilds(${CMAKE_PROJECT_NAME}) 57 | -------------------------------------------------------------------------------- /CMake/SlicerMacroEmptyExternalProject.cmake: -------------------------------------------------------------------------------- 1 | ########################################################################### 2 | # 3 | # Library: CTK 4 | # 5 | # Copyright (c) Kitware Inc. 6 | # 7 | # Licensed under the Apache License, Version 2.0 (the "License"); 8 | # you may not use this file except in compliance with the License. 9 | # You may obtain a copy of the License at 10 | # 11 | # https://www.commontk.org/LICENSE 12 | # 13 | # Unless required by applicable law or agreed to in writing, software 14 | # distributed under the License is distributed on an "AS IS" BASIS, 15 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | # See the License for the specific language governing permissions and 17 | # limitations under the License. 18 | # 19 | ########################################################################### 20 | 21 | # See https://github.com/commontk/CTK/blob/master/CMake/ctkMacroEmptyExternalProject.cmake 22 | 23 | # 24 | # Convenient macro allowing to define a "empty" project in case an external one is provided 25 | # using for example _DIR. 26 | # Doing so allows to keep the external project dependency system happy. 27 | # 28 | macro(SlicerMacroEmptyExternalProject proj dependencies) 29 | 30 | ExternalProject_Add(${proj} 31 | SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj} 32 | BINARY_DIR ${proj}-build 33 | DOWNLOAD_COMMAND "" 34 | CONFIGURE_COMMAND "" 35 | BUILD_COMMAND "" 36 | INSTALL_COMMAND "" 37 | DEPENDS 38 | ${dependencies} 39 | ) 40 | endmacro() 41 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(ITK_OLDEST_VALIDATED_POLICIES_VERSION "3.16.3") 2 | set(ITK_NEWEST_VALIDATED_POLICIES_VERSION "3.19.7") 3 | cmake_minimum_required(VERSION ${ITK_OLDEST_VALIDATED_POLICIES_VERSION}...${ITK_NEWEST_VALIDATED_POLICIES_VERSION} FATAL_ERROR) 4 | 5 | set(PRIMARY_PROJECT_NAME ITKSoftwareGuide) 6 | 7 | ## NOTE THERE SHOULD BE NO PROJECT STATEMENT HERE! 8 | ## This file acts as a simple switch to initiate 9 | ## two completely independent CMake build environments. 10 | 11 | #----------------------------------------------------------------------------- 12 | # Superbuild Option - Enabled by default 13 | # Phase I: ${PRIMARY_PROJECT_NAME}_SUPERBUILD is set to ON, and the 14 | # supporting packages defined in "SuperBuild.cmake" 15 | # are built. The last package in "SuperBuild.cmake" 16 | # to be built is a recursive call to this 17 | # file with ${PRIMARY_PROJECT_NAME}_SUPERBUILD explicitly 18 | # set to "OFF" to initiate Phase II 19 | # 20 | # Phase II: Build the ${PRIMARY_PROJECT_NAME}, referencing the support 21 | # packages built in Phase I. 22 | #----------------------------------------------------------------------------- 23 | option(${PRIMARY_PROJECT_NAME}_SUPERBUILD "Build ${PRIMARY_PROJECT_NAME} and the projects it depends on via SuperBuild.cmake." ON) 24 | mark_as_advanced(${PRIMARY_PROJECT_NAME}_SUPERBUILD) 25 | 26 | set(PDF_QUALITY_LEVEL "Screen" CACHE STRING "PDF Quality. Options are: Screen, Printer, PrePress") 27 | 28 | #----------------------------------------------------------------------------- 29 | # Superbuild script 30 | #----------------------------------------------------------------------------- 31 | project(${PRIMARY_PROJECT_NAME}) # <- NOTE: Here is the main project name setting 32 | if(${PRIMARY_PROJECT_NAME}_SUPERBUILD) 33 | project(SuperBuild_${PRIMARY_PROJECT_NAME}) # <- NOTE: Project name for pre-requisites is different form main project 34 | include("${CMAKE_CURRENT_SOURCE_DIR}/SuperBuild.cmake") 35 | return() 36 | else() 37 | include("${CMAKE_CURRENT_SOURCE_DIR}/${PRIMARY_PROJECT_NAME}.cmake") 38 | return() 39 | endif() 40 | 41 | message(FATAL_ERROR "You should never reach this point !") 42 | -------------------------------------------------------------------------------- /CTestConfig.cmake: -------------------------------------------------------------------------------- 1 | set(CTEST_PROJECT_NAME "ITKSoftwareGuide") 2 | set(CTEST_NIGHTLY_START_TIME "1:00:00 UTC") 3 | 4 | set(CTEST_DROP_METHOD "http") 5 | set(CTEST_DROP_SITE "open.cdash.org") 6 | set(CTEST_DROP_LOCATION "/submit.php?project=Insight") 7 | set(CTEST_DROP_SITE_CDASH TRUE) 8 | -------------------------------------------------------------------------------- /ITKSoftwareGuide.cmake: -------------------------------------------------------------------------------- 1 | 2 | include(${CMAKE_CURRENT_LIST_DIR}/Common.cmake) 3 | 4 | #----------------------------------------------------------------------------- 5 | # Update CMake module path 6 | #------------------------------------------------------------------------------ 7 | set(CMAKE_MODULE_PATH 8 | ${${PROJECT_NAME}_SOURCE_DIR}/CMake 9 | ${${PROJECT_NAME}_BINARY_DIR}/CMake 10 | ${CMAKE_MODULE_PATH} 11 | ) 12 | 13 | #----------------------------------------------------------------------------- 14 | find_package(ITK REQUIRED) 15 | if(Slicer_BUILD_${PROJECT_NAME}) 16 | set(ITK_NO_IO_FACTORY_REGISTER_MANAGER 1) # Incorporate with Slicer nicely 17 | endif() 18 | include(${ITK_USE_FILE}) 19 | 20 | if( NOT IS_DIRECTORY "${ITK_SOURCE_DIR}" ) 21 | message(FATAL_ERROR "ITK source directory is not set :${ITK_SOURCE_DIR}:") 22 | endif() 23 | if( NOT IS_DIRECTORY "${ITK_BINARY_DIR}" ) 24 | message(FATAL_ERROR "ITK build directory is not set :${ITK_BINARY_DIR}:") 25 | endif() 26 | 27 | #----------------------------------------------------------------------------- 28 | enable_testing() 29 | include(CTest) 30 | 31 | #----------------------------------------------------------------------- 32 | # Setup locations to find externally maintained test data. 33 | #----------------------------------------------------------------------- 34 | include(${PROJECT_NAME}ExternalData) 35 | 36 | add_subdirectory(SoftwareGuide) 37 | 38 | ExternalData_Add_Target( ${PROJECT_NAME}FetchData ) # Name of data management target 39 | -------------------------------------------------------------------------------- /Latex/Copyright.tex: -------------------------------------------------------------------------------- 1 | \par 2 | Copyright \copyright{} 2001 The Insight Consortium. 3 | All rights reserved. 4 | 5 | See the end of this document for complete license and permissions 6 | information. 7 | \par 8 | 9 | -------------------------------------------------------------------------------- /Latex/Insight.ist: -------------------------------------------------------------------------------- 1 | line_max 100 2 | headings_flag 1 3 | heading_prefix " \\bigletter " 4 | 5 | preamble "\\begin{theindex} 6 | \\def\\bigletter#1{{\\Large\\sffamily#1}\\nopagebreak\\vspace{1mm}} 7 | 8 | " 9 | 10 | symhead_positive "{Symbols}" 11 | numhead_positive "{Numbers}" 12 | -------------------------------------------------------------------------------- /Latex/InsightMarkup.sty: -------------------------------------------------------------------------------- 1 | % Modified after the document ltxmarkup.sty 2 | % Created by Fred L. Drake, Jr. , as part of the 3 | % Python Documentation Project. 4 | % 5 | % Define some simple markup for the LaTeX command documentation: 6 | 7 | \ProvidesPackage{InsightMarkup} 8 | \RequirePackage{Insight} % fulllineitems environment 9 | 10 | % These two macros are used in constructing the last parameter to the 11 | % envdesc and macrodesc environments. 12 | 13 | \newcommand{\itk@ltx@optparam}[1]{{[}\var{#1}{]}} 14 | \newcommand{\itk@ltx@param}[1]{\{\var{#1}\}} 15 | 16 | \newenvironment{envdesc}[2]{ 17 | \begin{fulllineitems} 18 | \item[\code{\e begin\{{\bfseries #1}\}{% 19 | \let\op=\itk@ltx@optparam% 20 | \let\p=\itk@ltx@param% 21 | \let\unspecified=\itk@unspecified% 22 | \let\moreargs=\itk@moreargs% 23 | #2}}] 24 | \item[\code{\e end\{{\bfseries #1}\}}] 25 | \index{#1 environment@\idxcode{#1} environment} 26 | \index{environments!#1@\idxcode{#1}} 27 | }{\end{fulllineitems}} 28 | 29 | \newenvironment{macrodesc}[2]{ 30 | \begin{fulllineitems} 31 | \item[\code{{\e\bfseries#1}{% 32 | \let\op=\itk@ltx@optparam% 33 | \let\p=\itk@ltx@param% 34 | \let\unspecified=\itk@unspecified% 35 | \let\moreargs=\itk@moreargs% 36 | #2}}] 37 | \index{#1@\idxcode{\e #1}} 38 | }{\end{fulllineitems}} 39 | 40 | \newcommand{\env}[1]{\code{#1}} 41 | \newcommand{\macro}[1]{\code{\e#1}} 42 | -------------------------------------------------------------------------------- /Latex/InsightPaper.sty: -------------------------------------------------------------------------------- 1 | % 2 | % Change this to say a4paper instead of letterpaper if you want A4. These 3 | % are the latex defaults. 4 | % 5 | \newcommand{\itk@paper}{letterpaper} 6 | \newcommand{\itk@ptsize}{11pt} 7 | 8 | % These set up the fonts for the documents. 9 | % 10 | % The "times" package makes the default font the PostScript Times 11 | % font, which makes for smaller PostScript and a font that more people 12 | % like. 13 | % 14 | % The "avant" package causes the AvantGarde font to be used for 15 | % sans-serif text, instead of the uglier Helvetica set up by the "times" 16 | % package. 17 | % 18 | %\RequirePackage{avant}\typeout{Using AvantGarde instead of Computer Modern.} 19 | \RequirePackage{times}\typeout{Using Times instead of Computer Modern.} 20 | -------------------------------------------------------------------------------- /Latex/algorithm.sty: -------------------------------------------------------------------------------- 1 | % ALGORITHM STYLE -- Released 8 April 1996 2 | % for LaTeX-2e 3 | % Copyright -- 1994 Peter Williams 4 | % E-mail Peter.Williams@dsto.defence.gov.au 5 | \NeedsTeXFormat{LaTeX2e} 6 | \ProvidesPackage{algorithm} 7 | \typeout{Document Style `algorithm' - floating environment} 8 | 9 | \RequirePackage{float} 10 | \RequirePackage{ifthen} 11 | \newcommand{\ALG@within}{nothing} 12 | \newboolean{ALG@within} 13 | \setboolean{ALG@within}{false} 14 | \newcommand{\ALG@floatstyle}{ruled} 15 | \newcommand{\ALG@name}{Algorithm} 16 | \newcommand{\listalgorithmname}{List of \ALG@name s} 17 | 18 | % Declare Options 19 | % first appearance 20 | \DeclareOption{plain}{ 21 | \renewcommand{\ALG@floatstyle}{plain} 22 | } 23 | \DeclareOption{ruled}{ 24 | \renewcommand{\ALG@floatstyle}{ruled} 25 | } 26 | \DeclareOption{boxed}{ 27 | \renewcommand{\ALG@floatstyle}{boxed} 28 | } 29 | % then numbering convention 30 | \DeclareOption{part}{ 31 | \renewcommand{\ALG@within}{part} 32 | \setboolean{ALG@within}{true} 33 | } 34 | \DeclareOption{chapter}{ 35 | \renewcommand{\ALG@within}{chapter} 36 | \setboolean{ALG@within}{true} 37 | } 38 | \DeclareOption{section}{ 39 | \renewcommand{\ALG@within}{section} 40 | \setboolean{ALG@within}{true} 41 | } 42 | \DeclareOption{subsection}{ 43 | \renewcommand{\ALG@within}{subsection} 44 | \setboolean{ALG@within}{true} 45 | } 46 | \DeclareOption{subsubsection}{ 47 | \renewcommand{\ALG@within}{subsubsection} 48 | \setboolean{ALG@within}{true} 49 | } 50 | \DeclareOption{nothing}{ 51 | \renewcommand{\ALG@within}{nothing} 52 | \setboolean{ALG@within}{true} 53 | } 54 | \DeclareOption*{\edef\ALG@name{\CurrentOption}} 55 | 56 | % ALGORITHM 57 | % 58 | \ProcessOptions 59 | \floatstyle{\ALG@floatstyle} 60 | \ifthenelse{\boolean{ALG@within}}{ 61 | \ifthenelse{\equal{\ALG@within}{part}} 62 | {\newfloat{algorithm}{htbp}{loa}[part]}{} 63 | \ifthenelse{\equal{\ALG@within}{chapter}} 64 | {\newfloat{algorithm}{htbp}{loa}[chapter]}{} 65 | \ifthenelse{\equal{\ALG@within}{section}} 66 | {\newfloat{algorithm}{htbp}{loa}[section]}{} 67 | \ifthenelse{\equal{\ALG@within}{subsection}} 68 | {\newfloat{algorithm}{htbp}{loa}[subsection]}{} 69 | \ifthenelse{\equal{\ALG@within}{subsubsection}} 70 | {\newfloat{algorithm}{htbp}{loa}[subsubsection]}{} 71 | \ifthenelse{\equal{\ALG@within}{nothing}} 72 | {\newfloat{algorithm}{htbp}{loa}}{} 73 | }{ 74 | \newfloat{algorithm}{htbp}{loa} 75 | } 76 | \floatname{algorithm}{\ALG@name} 77 | 78 | \newcommand{\listofalgorithms}{\listof{algorithm}{\listalgorithmname}} 79 | 80 | -------------------------------------------------------------------------------- /Latex/doubleWordCheck.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | # 3 | # Script for searching for double words in the text 4 | # 5 | # Contributed by Hans Johnson, Iowa University 6 | # This was one of the first examples in the Mastering Regular Expressions Book. 7 | # There are several other gems like this in that book. 8 | # 9 | 10 | $/ = ".\n"; 11 | while (<>) { 12 | next if !s/\b([a-z]+)((\s|<[^>]+>)+)(\1\b)/\e[7m$1\e[m$2\e[7m$4\e[m/ig; 13 | s/^([^\e]*\n)+//mg; 14 | s/^/$ARGV: /mg; 15 | print; 16 | } 17 | 18 | -------------------------------------------------------------------------------- /Latex/extractImageBoundingBox.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | convert $1 eps:- | grep "%%BoundingBox" > $1.bb 3 | 4 | -------------------------------------------------------------------------------- /Latex/times.sty: -------------------------------------------------------------------------------- 1 | %% 2 | %% This is file `times.sty', 3 | %% generated with the docstrip utility. 4 | %% 5 | %% The original source files were: 6 | %% 7 | %% psfonts.dtx (with options: `times') 8 | %% 9 | %% IMPORTANT NOTICE: 10 | %% 11 | %% For the copyright see the source file. 12 | %% 13 | %% Any modified versions of this file must be renamed 14 | %% with new filenames distinct from times.sty. 15 | %% 16 | %% For distribution of the original source see the terms 17 | %% for copying and modification in the file psfonts.dtx. 18 | %% 19 | %% This generated file may be distributed as long as the 20 | %% original source files, as listed above, are part of the 21 | %% same distribution. (The sources need not necessarily be 22 | %% in the same archive or directory.) 23 | \ProvidesPackage{times} 24 | [2002/09/08 PSNFSS-v9.0a 25 | (SPQR) 26 | ] 27 | \renewcommand{\sfdefault}{phv} 28 | \renewcommand{\rmdefault}{ptm} 29 | \renewcommand{\ttdefault}{pcr} 30 | \endinput 31 | %% 32 | %% End of file `times.sty'. 33 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/3DregionGrowingScreenshot1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/3DregionGrowingScreenshot1.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BinaryImage.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BinaryImage.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BinaryMedianImageFilterOutput1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BinaryMedianImageFilterOutput1.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/BinaryMedianImageFilterOutput10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BinaryMedianImageFilterOutput10.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/BinaryMedianImageFilterOutput50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BinaryMedianImageFilterOutput50.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/BrainMidSagittalSlice.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BrainMidSagittalSlice.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BrainProtonDensitySlice.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BrainProtonDensitySlice.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BrainProtonDensitySlice2x3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BrainProtonDensitySlice2x3.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BrainProtonDensitySlice2x3b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BrainProtonDensitySlice2x3b.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BrainProtonDensitySliceBorder20.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BrainProtonDensitySliceBorder20.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BrainProtonDensitySliceR10X13Y17S12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BrainProtonDensitySliceR10X13Y17S12.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BrainProtonDensitySliceRotated10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BrainProtonDensitySliceRotated10.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BrainProtonDensitySliceShifted13x17y.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BrainProtonDensitySliceShifted13x17y.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/BrainT1Slice.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/BrainT1Slice.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # Convert images from different formats 3 | # into Encapsulated Postscript to be 4 | # included in LaTeX files. 5 | # 6 | # TODO: It is likely some images sitting in this directory are no longer in use. 7 | # 8 | 9 | file(GLOB PNGandJPG_IMAGES *.jpg *.png) 10 | file(GLOB EPS_IMAGES *.eps) 11 | 12 | find_package(ImageMagick REQUIRED) 13 | if(NOT IMAGEMAGICK_CONVERT_EXECUTABLE) 14 | message("ImageMagick convert utility was not found. Please pass to advanced mode and provide its full path") 15 | endif() 16 | # Convert an image from some file format to EPS for inclusion in Latex using 17 | # ImageMagick. This image is an input image. A separate macro is necessary 18 | # because input images do not have any dependencies 19 | set(EPS_INPUT_CONVERT_FLAGS) 20 | set(EPS_OUTPUT_CONVERT_FLAGS) 21 | if( PDF_QUALITY_LEVEL STREQUAL "Printer" ) 22 | # Upsample to satisfy the printer 23 | set( EPS_INPUT_CONVERT_FLAGS -density 72 ) 24 | set( EPS_OUTPUT_CONVERT_FLAGS -density 72 -scale 4194304@ ) 25 | endif() 26 | 27 | set(OutputEPSFilePath "${SoftwareGuide_BINARY_DIR}/Art") 28 | foreach(ImageFile ${PNGandJPG_IMAGES}) 29 | get_filename_component(ImageFileNoExt ${ImageFile} NAME_WE) 30 | set(OutputEPSFile "${OutputEPSFilePath}/${ImageFileNoExt}.eps") 31 | add_custom_command( 32 | OUTPUT ${OutputEPSFile} 33 | COMMAND ${IMAGEMAGICK_CONVERT_EXECUTABLE} 34 | ${EPS_INPUT_CONVERT_FLAGS} 35 | ${ImageFile} 36 | ${EPS_OUTPUT_CONVERT_FLAGS} 37 | ${OutputEPSFile} 38 | DEPENDS ${ImageFile} 39 | ) 40 | set(EPS_DEPS ${EPS_DEPS} ${SoftwareGuide_BINARY_DIR}/Art/${ImageFileNoExt}.eps) 41 | endforeach() 42 | 43 | 44 | foreach(ImageFile ${EPS_IMAGES}) 45 | get_filename_component(ImageFileNoExt ${ImageFile} NAME_WE) 46 | file(COPY "${SoftwareGuide_SOURCE_DIR}/Art/${ImageFileNoExt}.eps" 47 | DESTINATION "${SoftwareGuide_BINARY_DIR}/Art/") 48 | set(EPS_DEPS ${EPS_DEPS} ${SoftwareGuide_BINARY_DIR}/Art/${ImageFileNoExt}.eps) 49 | endforeach() 50 | 51 | add_custom_target(SoftwareGuideArt 52 | ALL 53 | DEPENDS ${EPS_DEPS} 54 | ) 55 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/CMakeSetupScreenShot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/CMakeSetupScreenShot.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/CannySegmentationLevelSetImageFilterVentricle2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/CannySegmentationLevelSetImageFilterVentricle2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/Circle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/Circle.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/CompareImages.tcl: -------------------------------------------------------------------------------- 1 | package require vtk 2 | 3 | vtkPNGReader reader1 4 | reader1 SetFileName "PNG/BrainT1SliceBorder20.png" 5 | 6 | vtkPNGReader reader2 7 | reader2 SetFileName "PNG/BrainProtonDensitySliceShifted13x17y.png" 8 | 9 | vtkImageCheckerboard checkers 10 | checkers SetInput 0 [reader1 GetOutput] 11 | checkers SetInput 1 [reader2 GetOutput] 12 | checkers SetNumberOfDivisions 4 4 1 13 | 14 | vtkPNGWriter writer 15 | writer SetInput [ checkers GetOutput ] 16 | 17 | writer SetFileName "PNG/ImageRegistration2CheckboardBefore.png" 18 | writer Write 19 | 20 | reader2 SetFileName "PNG/ImageRegistration2Output.png" 21 | writer SetFileName "PNG/ImageRegistration2CheckboardAfter.png" 22 | writer Write 23 | 24 | vtkImageViewer viewer 25 | viewer SetInput [ checkers GetOutput ] 26 | 27 | viewer SetColorWindow 256 28 | viewer SetColorLevel 128 29 | 30 | viewer Render 31 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/Configure_ITK_Default.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/Configure_ITK_Default.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/Configure_ITK_Group.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/Configure_ITK_Group.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/CorpusCallosumMeanShape.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/CorpusCallosumMeanShape.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/CorpusCallosumModeMinus0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/CorpusCallosumModeMinus0.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/CorpusCallosumModeMinus1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/CorpusCallosumModeMinus1.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/CorpusCallosumModeMinus2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/CorpusCallosumModeMinus2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/CorpusCallosumModePlus0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/CorpusCallosumModePlus0.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/CorpusCallosumModePlus1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/CorpusCallosumModePlus1.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/CorpusCallosumModePlus2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/CorpusCallosumModePlus2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DICOM-OrientationDiagram-LPS.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DICOM-OrientationDiagram-LPS.dia -------------------------------------------------------------------------------- /SoftwareGuide/Art/DICOM-OrientationDiagram-Radiologist-vs-NeuroSurgeon.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DICOM-OrientationDiagram-Radiologist-vs-NeuroSurgeon.dia -------------------------------------------------------------------------------- /SoftwareGuide/Art/Dashboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/Dashboard.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DeformableRegistration1CheckerboardAfter.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DeformableRegistration1CheckerboardAfter.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DeformableRegistration1CheckerboardBefore.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DeformableRegistration1CheckerboardBefore.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DeformableRegistration1Output.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DeformableRegistration1Output.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DeformableRegistration2CheckerboardAfter.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DeformableRegistration2CheckerboardAfter.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DeformableRegistration2CheckerboardBefore.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DeformableRegistration2CheckerboardBefore.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DeformableRegistration2Output.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DeformableRegistration2Output.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DeformableRegistration4DiffAfter.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DeformableRegistration4DiffAfter.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DeformableRegistration4DiffBefore.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/DeformableRegistration4DiffBefore.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/DiscreteGaussian.gnu: -------------------------------------------------------------------------------- 1 | set samples 30 2 | set xrange [-2:2] 3 | set term fig color 4 | set output "gaussian.fig" 5 | plot exp(-x*x), exp(-x*x) with boxes 6 | quit 7 | 8 | 9 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/DisplayImage.tcl: -------------------------------------------------------------------------------- 1 | package require vtk 2 | 3 | vtkPNGReader reader 4 | reader SetFileName "PNG/BrainT1SliceBorder20.png" 5 | 6 | vtkImageViewer viewer 7 | viewer SetInput [reader GetOutput] 8 | viewer SetColorWindow 256 9 | viewer SetColorLevel 128 10 | 11 | viewer Render 12 | 13 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/FastMarchingImageFilterOutput1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/FastMarchingImageFilterOutput1.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/FastMarchingImageFilterOutput2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/FastMarchingImageFilterOutput2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/FastMarchingImageFilterOutput3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/FastMarchingImageFilterOutput3.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/FatMRISlice.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/FatMRISlice.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/FivePoints.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/FivePoints.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/GeodesicActiveContourShapePriorImageFilterOutput1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/GeodesicActiveContourShapePriorImageFilterOutput1.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/GeodesicActiveContourShapePriorImageFilterOutput2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/GeodesicActiveContourShapePriorImageFilterOutput2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/GeodesicActiveContourShapePriorImageFilterOutput5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/GeodesicActiveContourShapePriorImageFilterOutput5.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/GeodesicActiveContourShapePriorImageFilterOutput6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/GeodesicActiveContourShapePriorImageFilterOutput6.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/HybridSegmentationFuzzyVoronoiOutput.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/HybridSegmentationFuzzyVoronoiOutput.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/HybridSegmentationFuzzyVoronoiOutput2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/HybridSegmentationFuzzyVoronoiOutput2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ITK_CMake_GUI_Ubuntu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ITK_CMake_GUI_Ubuntu.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/ITK_CMake_GUI_Windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ITK_CMake_GUI_Windows.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageAdaptorToVectorImageComponentX.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ImageAdaptorToVectorImageComponentX.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageAdaptorToVectorImageComponentY.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ImageAdaptorToVectorImageComponentY.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration1Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 12 2 | 3 | 4 | 5 | set xlabel "Iteration No." 6 | set ylabel "Mean Squares Metric" 7 | 8 | set output "ImageRegistration1TraceMetric.eps" 9 | plot "ImageRegistration1OutputCleaned.txt" using 1:2 notitle with lines lt 1, "ImageRegistration1OutputCleaned.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 10 | 11 | 12 | set xlabel "X Translations (mm)" 13 | set ylabel "Y Translations (mm)" 14 | 15 | set parametric 16 | set size square 17 | 18 | set output "ImageRegistration1TraceTranslations.eps" 19 | plot "ImageRegistration1OutputCleaned.txt" using 3:4 notitle with lines lt 1, "ImageRegistration1OutputCleaned.txt" using 3:4 notitle with points lt 0 pt 12 ps 1 20 | 21 | 22 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration1Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 4 | DATADIR="/home/ibanez/src/Insight/Examples/Data" 5 | 6 | # 7 | # Execute the example and capture the output. 8 | # 9 | $EXAMPLESBINDIR/ImageRegistration1 $DATADIR/BrainProtonDensitySliceBorder20.png $DATADIR/BrainProtonDensitySliceShifted13x17y.png ImageRegistration1Output.png | tee ImageRegistration1Output.txt 10 | 11 | # 12 | # Take the first N lines, and remove the characters "[" "]" "," 13 | # 14 | head -n 15 ImageRegistration1Output.txt | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\=/ /g" | sed "s/\:/ /" | sed "s/\[/ /g" > ImageRegistration1OutputCleaned.txt 15 | 16 | # 17 | # Take the metric and translation data and generate plots with GNUPlot 18 | # 19 | gnuplot ImageRegistration1Figures.gnup 20 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration2Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 12 2 | 3 | 4 | 5 | set xlabel "Iteration No." 6 | set ylabel "Mutual Information Viola-Wells" 7 | 8 | set output "ImageRegistration2TraceMetric.eps" 9 | plot "ImageRegistration2OutputCleaned.txt" using 1:2 notitle with lines lt 1, "ImageRegistration2OutputCleaned.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 10 | 11 | set output "ImageRegistration2TraceMetric2.eps" 12 | plot [150:200] "ImageRegistration2OutputCleaned.txt" using 1:2 notitle with lines lt 1, "ImageRegistration2OutputCleaned.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 13 | 14 | 15 | 16 | 17 | set xlabel "X Translations (mm)" 18 | set ylabel "Y Translations (mm)" 19 | 20 | set parametric 21 | set size square 22 | 23 | set output "ImageRegistration2TraceTranslations.eps" 24 | plot "ImageRegistration2OutputCleaned.txt" using 3:4 notitle with lines lt 1, "ImageRegistration2OutputCleaned.txt" using 3:4 notitle with points lt 0 pt 12 ps 1 25 | 26 | set trange [150:200] 27 | set xrange [12.5:13.5] 28 | set yrange [16.5:17.5] 29 | 30 | set output "ImageRegistration2TraceTranslations2.eps" 31 | plot "ImageRegistration2OutputCleaned.txt" using 3:4 notitle with lines lt 1, "ImageRegistration2OutputCleaned.txt" using 3:4 notitle with points lt 0 pt 12 ps 1 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration2Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 4 | DATADIR="/home/ibanez/src/Insight/Examples/Data" 5 | 6 | # 7 | # Execute the example and capture the output. 8 | # 9 | # $EXAMPLESBINDIR/ImageRegistration2 $DATADIR/BrainT1SliceBorder20.png $DATADIR/BrainProtonDensitySliceShifted13x17y.png ImageRegistration2Output.png | tee ImageRegistration2Output.txt 10 | 11 | # 12 | # Take the first 200 lines, and remove the characters "[" "]" "," 13 | # 14 | head -n 200 ImageRegistration2Output.txt | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > ImageRegistration2OutputCleaned.txt 15 | 16 | # 17 | # Take the metric and translation data and generate plots with GNUPlot 18 | # 19 | gnuplot ImageRegistration2Figures.gnup 20 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration4Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 12 2 | 3 | 4 | 5 | set xlabel "Iteration No." 6 | set ylabel "Mutual Information Mattes" 7 | 8 | set output "ImageRegistration4TraceMetric.eps" 9 | plot "ImageRegistration4OutputCleaned.txt" using 1:2 notitle with lines lt 1, "ImageRegistration4OutputCleaned.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 10 | 11 | 12 | 13 | 14 | set xlabel "X Translations (mm)" 15 | set ylabel "Y Translations (mm)" 16 | 17 | set parametric 18 | set size square 19 | 20 | set output "ImageRegistration4TraceTranslations.eps" 21 | plot "ImageRegistration4OutputCleaned.txt" using 3:4 notitle with lines lt 1, "ImageRegistration4OutputCleaned.txt" using 3:4 notitle with points lt 0 pt 12 ps 1 22 | 23 | set trange [150:200] 24 | set xrange [12.5:13.5] 25 | set yrange [16.5:17.5] 26 | 27 | set output "ImageRegistration4TraceTranslations2.eps" 28 | plot "ImageRegistration4OutputCleaned.txt" using 3:4 notitle with lines lt 1, "ImageRegistration4OutputCleaned.txt" using 3:4 notitle with points lt 0 pt 12 ps 1 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration4Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 4 | DATADIR="/home/ibanez/src/Insight/Examples/Data" 5 | 6 | OUTPUTDATAFILE="ImageRegistration4Output.txt" 7 | OUTPUTDATAFILECLEANED="ImageRegistration4OutputCleaned.txt" 8 | 9 | # 10 | # Execute the example and capture the output. 11 | # 12 | $EXAMPLESBINDIR/ImageRegistration4 $DATADIR/BrainT1SliceBorder20.png $DATADIR/BrainProtonDensitySliceShifted13x17y.png ImageRegistration4Output.png 0 ImageRegistration4CheckerBoardAfter.png ImageRegistration4CheckerBoardBefore.png | tee $OUTPUTDATAFILE 13 | # 14 | # Take the first 200 lines, and remove the characters "[" "]" "," 15 | # 16 | head -n 200 $OUTPUTDATAFILE | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > $OUTPUTDATAFILECLEANED 17 | 18 | # 19 | # Take the metric and translation data and generate plots with GNUPlot 20 | # 21 | gnuplot ImageRegistration4Figures.gnup 22 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration4FiguresBins.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 12 2 | 3 | 4 | set xlabel "X Translations (mm)" 5 | set ylabel "Y Translations (mm)" 6 | 7 | set parametric 8 | set size square 9 | 10 | set output "ImageRegistration4TraceTranslationsNumberOfBins.eps" 11 | 12 | plot "ImageRegistration4OutputCleaned10.txt" using 3:4 notitle with lines lt 1, \ 13 | "ImageRegistration4OutputCleaned11.txt" using 3:4 notitle with lines lt 1, \ 14 | "ImageRegistration4OutputCleaned12.txt" using 3:4 notitle with lines lt 1, \ 15 | "ImageRegistration4OutputCleaned13.txt" using 3:4 notitle with lines lt 1, \ 16 | "ImageRegistration4OutputCleaned14.txt" using 3:4 notitle with lines lt 1, \ 17 | "ImageRegistration4OutputCleaned15.txt" using 3:4 notitle with lines lt 1, \ 18 | "ImageRegistration4OutputCleaned16.txt" using 3:4 notitle with lines lt 1, \ 19 | "ImageRegistration4OutputCleaned17.txt" using 3:4 notitle with lines lt 1, \ 20 | "ImageRegistration4OutputCleaned18.txt" using 3:4 notitle with lines lt 1, \ 21 | "ImageRegistration4OutputCleaned19.txt" using 3:4 notitle with lines lt 1, \ 22 | "ImageRegistration4OutputCleaned20.txt" using 3:4 notitle with lines lt 1, \ 23 | "ImageRegistration4OutputCleaned21.txt" using 3:4 notitle with lines lt 1, \ 24 | "ImageRegistration4OutputCleaned22.txt" using 3:4 notitle with lines lt 1, \ 25 | "ImageRegistration4OutputCleaned23.txt" using 3:4 notitle with lines lt 1, \ 26 | "ImageRegistration4OutputCleaned24.txt" using 3:4 notitle with lines lt 1, \ 27 | "ImageRegistration4OutputCleaned25.txt" using 3:4 notitle with lines lt 1, \ 28 | "ImageRegistration4OutputCleaned26.txt" using 3:4 notitle with lines lt 1, \ 29 | "ImageRegistration4OutputCleaned27.txt" using 3:4 notitle with lines lt 1, \ 30 | "ImageRegistration4OutputCleaned28.txt" using 3:4 notitle with lines lt 1, \ 31 | "ImageRegistration4OutputCleaned29.txt" using 3:4 notitle with lines lt 1, \ 32 | "ImageRegistration4OutputCleaned30.txt" using 3:4 notitle with lines lt 1 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration4FiguresNumberOfBins.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 4 | DATADIR="/home/ibanez/src/Insight/Examples/Data" 5 | 6 | NUMBEROFBINS="30" 7 | 8 | OUTPUTDATAFILE="ImageRegistration4Output$NUMBEROFBINS.txt" 9 | OUTPUTDATAFILECLEANED="ImageRegistration4OutputCleaned$NUMBEROFBINS.txt" 10 | 11 | # 12 | # Execute the example and capture the output. 13 | # 14 | $EXAMPLESBINDIR/ImageRegistration4 $DATADIR/BrainT1SliceBorder20.png $DATADIR/BrainProtonDensitySliceShifted13x17y.png ImageRegistration4Output.png 0 ImageRegistration4CheckerBoardAfter.png ImageRegistration4CheckerBoardBefore.png $NUMBEROFBINS | tee $OUTPUTDATAFILE 15 | # 16 | # Take the first 200 lines, and remove the characters "[" "]" "," 17 | # 18 | head -n 200 $OUTPUTDATAFILE | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > $OUTPUTDATAFILECLEANED 19 | 20 | # 21 | # Take the metric and translation data and generate plots with GNUPlot 22 | # 23 | #gnuplot ImageRegistration4Figures.gnup 24 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration5Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 12 2 | 3 | 4 | 5 | set xlabel "Iteration No." 6 | set ylabel "Square Differences Metric" 7 | 8 | set output "ImageRegistration5TraceMetric1.eps" 9 | plot "ImageRegistration5OutputCleaned1.txt" using 1:2 notitle with lines lt 1, "ImageRegistration5OutputCleaned1.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 10 | 11 | set output "ImageRegistration5TraceMetric2.eps" 12 | plot "ImageRegistration5OutputCleaned2.txt" using 1:2 notitle with lines lt 1, "ImageRegistration5OutputCleaned2.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 13 | 14 | 15 | 16 | 17 | set xlabel "Iteration No." 18 | set ylabel "Rotation Angle (radians)" 19 | 20 | set output "ImageRegistration5TraceAngle1.eps" 21 | plot "ImageRegistration5OutputCleaned1.txt" using 1:3 notitle with lines lt 1, "ImageRegistration5OutputCleaned1.txt" using 1:3 notitle with points lt 0 pt 12 ps 1 22 | 23 | 24 | set output "ImageRegistration5TraceAngle2.eps" 25 | plot "ImageRegistration5OutputCleaned2.txt" using 1:3 notitle with lines lt 1, "ImageRegistration5OutputCleaned2.txt" using 1:3 notitle with points lt 0 pt 12 ps 1 26 | 27 | 28 | 29 | 30 | set xlabel "X Translations (mm)" 31 | set ylabel "Y Translations (mm)" 32 | 33 | set parametric 34 | set size square 35 | 36 | set output "ImageRegistration5TraceTranslations1.eps" 37 | plot "ImageRegistration5OutputCleaned1.txt" using 6:7 notitle with lines lt 1, "ImageRegistration5OutputCleaned1.txt" using 6:7 notitle with points lt 0 pt 12 ps 1 38 | 39 | 40 | set output "ImageRegistration5TraceTranslations2.eps" 41 | plot "ImageRegistration5OutputCleaned2.txt" using 6:7 notitle with lines lt 1, "ImageRegistration5OutputCleaned2.txt" using 6:7 notitle with points lt 0 pt 12 ps 1 42 | 43 | 44 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration5Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 4 | DATADIR="/home/ibanez/src/Insight/Examples/Data" 5 | 6 | OUTPUTDATAFILE1="ImageRegistration5Output1.txt" 7 | OUTPUTDATAFILECLEANED1="ImageRegistration5OutputCleaned1.txt" 8 | 9 | # 10 | # Execute the example and capture the output. 11 | # 12 | $EXAMPLESBINDIR/ImageRegistration5 $DATADIR/BrainProtonDensitySliceBorder20.png $DATADIR/BrainProtonDensitySliceRotated10.png ImageRegistration5Output.png ImageRegistration5DifferenceAfter.png ImageRegistration5DifferenceBefore.png 0.1 | tee $OUTPUTDATAFILE1 13 | # 14 | # Take the first N lines, and remove the characters "[" "]" "," 15 | # 16 | head -n 20 $OUTPUTDATAFILE1 | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > $OUTPUTDATAFILECLEANED1 17 | 18 | 19 | 20 | OUTPUTDATAFILE2="ImageRegistration5Output2.txt" 21 | OUTPUTDATAFILECLEANED2="ImageRegistration5OutputCleaned2.txt" 22 | 23 | # 24 | # Execute the example and capture the output. 25 | # 26 | $EXAMPLESBINDIR/ImageRegistration5 $DATADIR/BrainProtonDensitySliceBorder20.png $DATADIR/BrainProtonDensitySliceR10X13Y17.png ImageRegistration5Output.png ImageRegistration5DifferenceAfter.png ImageRegistration5DifferenceBefore.png 1.0 | tee $OUTPUTDATAFILE2 27 | # 28 | # Take the first N lines, and remove the characters "[" "]" "," 29 | # 30 | head -n 46 $OUTPUTDATAFILE2 | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > $OUTPUTDATAFILECLEANED2 31 | 32 | 33 | # 34 | # Take the metric and translation data and generate plots with GNUPlot 35 | # 36 | gnuplot ImageRegistration5Figures.gnup 37 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration6Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 12 2 | 3 | 4 | 5 | set xlabel "Iteration No." 6 | set ylabel "Square Differences Metric" 7 | 8 | set output "ImageRegistration6TraceMetric.eps" 9 | plot "ImageRegistration6OutputCleaned.txt" using 1:2 notitle with lines lt 1, "ImageRegistration6OutputCleaned.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 10 | 11 | 12 | 13 | set xlabel "Iteration No." 14 | set ylabel "Rotation Angle (radians)" 15 | 16 | set output "ImageRegistration6TraceAngle.eps" 17 | plot "ImageRegistration6OutputCleaned.txt" using 1:3 notitle with lines lt 1, "ImageRegistration6OutputCleaned.txt" using 1:3 notitle with points lt 0 pt 12 ps 1 18 | 19 | 20 | 21 | set xlabel "X Translations (mm)" 22 | set ylabel "Y Translations (mm)" 23 | 24 | set parametric 25 | set size square 26 | 27 | set output "ImageRegistration6TraceTranslations.eps" 28 | plot "ImageRegistration6OutputCleaned.txt" using 6:7 notitle with lines lt 1, "ImageRegistration6OutputCleaned.txt" using 6:7 notitle with points lt 0 pt 12 ps 1 29 | 30 | 31 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration6Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 4 | DATADIR="/home/ibanez/src/Insight/Examples/Data" 5 | 6 | OUTPUTDATAFILE="ImageRegistration6Output.txt" 7 | OUTPUTDATAFILECLEANED="ImageRegistration6OutputCleaned.txt" 8 | 9 | # 10 | # Execute the example and capture the output. 11 | # 12 | $EXAMPLESBINDIR/ImageRegistration6 $DATADIR/BrainProtonDensitySliceBorder20.png $DATADIR/BrainProtonDensitySliceR10X13Y17.png ImageRegistration6Output.png ImageRegistration6DifferenceBefore.png ImageRegistration6DifferenceAfter.png | tee $OUTPUTDATAFILE 13 | # 14 | # Take the first N lines, and remove the characters "[" "]" "," 15 | # 16 | head -n 22 $OUTPUTDATAFILE | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > $OUTPUTDATAFILECLEANED 17 | 18 | 19 | 20 | # 21 | # Take the metric and translation data and generate plots with GNUPlot 22 | # 23 | gnuplot ImageRegistration6Figures.gnup 24 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration7Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 12 2 | 3 | 4 | 5 | set xlabel "Iteration No." 6 | set ylabel "Square Differences Metric" 7 | 8 | set output "ImageRegistration7TraceMetric.eps" 9 | plot "ImageRegistration7OutputCleaned.txt" using 1:2 notitle with lines lt 1, "ImageRegistration7OutputCleaned.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 10 | 11 | 12 | 13 | set xlabel "Iteration No." 14 | set ylabel "Scale Factor" 15 | 16 | set output "ImageRegistration7TraceScale.eps" 17 | plot "ImageRegistration7OutputCleaned.txt" using 1:3 notitle with lines lt 1, "ImageRegistration7OutputCleaned.txt" using 1:3 notitle with points lt 0 pt 12 ps 1 18 | 19 | 20 | 21 | set xlabel "Iteration No." 22 | set ylabel "Rotation Angle (radians)" 23 | 24 | set output "ImageRegistration7TraceAngle.eps" 25 | plot "ImageRegistration7OutputCleaned.txt" using 1:4 notitle with lines lt 1, "ImageRegistration7OutputCleaned.txt" using 1:4 notitle with points lt 0 pt 12 ps 1 26 | 27 | 28 | 29 | set xlabel "X Translations (mm)" 30 | set ylabel "Y Translations (mm)" 31 | 32 | set parametric 33 | set size square 34 | 35 | set output "ImageRegistration7TraceTranslations.eps" 36 | plot "ImageRegistration7OutputCleaned.txt" using 7:8 notitle with lines lt 1, "ImageRegistration7OutputCleaned.txt" using 7:8 notitle with points lt 0 pt 12 ps 1 37 | 38 | 39 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration7Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 4 | DATADIR="/home/ibanez/src/Insight/Examples/Data" 5 | 6 | OUTPUTDATAFILE="ImageRegistration7Output.txt" 7 | OUTPUTDATAFILECLEANED="ImageRegistration7OutputCleaned.txt" 8 | 9 | # 10 | # Execute the example and capture the output. 11 | # 12 | $EXAMPLESBINDIR/ImageRegistration7 $DATADIR/BrainProtonDensitySliceBorder20.png $DATADIR/BrainProtonDensitySliceR10X13Y17S12.png ImageRegistration7Output.png ImageRegistration7DifferenceBefore.png ImageRegistration7DifferenceAfter.png 1.0 1.0 0.0 | tee $OUTPUTDATAFILE 13 | # 14 | # Take the first N lines, and remove the characters "[" "]" "," 15 | # 16 | head -n 67 $OUTPUTDATAFILE | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > $OUTPUTDATAFILECLEANED 17 | 18 | 19 | 20 | # 21 | # Take the metric and translation data and generate plots with GNUPlot 22 | # 23 | gnuplot ImageRegistration7Figures.gnup 24 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration8Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 22 2 | 3 | set xlabel "Iteration No." 4 | set ylabel "Square Differences Metric" 5 | 6 | set output "ImageRegistration8TraceMetric.eps" 7 | plot "ImageRegistration8OutputCleaned.txt" using 1:2 notitle with lines lt 1, "ImageRegistration8OutputCleaned.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 8 | 9 | 10 | set xlabel "Iteration No." 11 | set ylabel "Z Versor Component" 12 | 13 | set output "ImageRegistration8TraceAngle.eps" 14 | plot "ImageRegistration8OutputCleaned.txt" using 1:5 notitle with lines lt 1, "ImageRegistration8OutputCleaned.txt" using 1:5 notitle with points lt 0 pt 12 ps 1 15 | 16 | 17 | set xlabel "X Translations (mm)" 18 | set ylabel "Y Translations (mm)" 19 | 20 | set output "ImageRegistration8TraceTranslations.eps" 21 | plot "ImageRegistration8OutputCleaned.txt" using 6:7 notitle with lines lt 1, "ImageRegistration8OutputCleaned.txt" using 6:7 notitle with points lt 0 pt 12 ps 1 22 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration8Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | # script to execute ImageRegistration8.cxx, and capture the output and plot it 3 | # with gnuplot 4 | 5 | 6 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 7 | BRAINWEBDATADIR="/home/ibanez/data/BrainWeb" 8 | 9 | OUTPUTDATAFILE="ImageRegistration8Output.txt" 10 | OUTPUTDATAFILECLEANED="ImageRegistration8OutputCleaned.txt" 11 | 12 | # 13 | # Execute the example and capture the output. 14 | # 15 | $EXAMPLESBINDIR/ImageRegistration8 $BRAINWEBDATADIR/brainweb1e1a10f20.mha $BRAINWEBDATADIR/brainweb1e1a10f20Rot10Tx15.mha ImageRegistration8Output.mhd ImageRegistration8DifferenceBefore.mhd ImageRegistration8DifferenceAfter.mhd ImageRegistration8Output.png ImageRegistration8DifferenceBefore.png ImageRegistration8DifferenceAfter.png | tee $OUTPUTDATAFILE 16 | 17 | # 18 | # Take the first N lines, and remove the characters "[" "]" "," 19 | # 20 | head -n 24 $OUTPUTDATAFILE | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > $OUTPUTDATAFILECLEANED 21 | 22 | # 23 | # Take the metric and translation data and generate plots with GNUPlot 24 | # 25 | gnuplot ImageRegistration8Figures.gnup 26 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration9Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 22 2 | 3 | set xlabel "Iteration No." 4 | set ylabel "Square Differences Metric" 5 | 6 | set output "ImageRegistration9TraceMetric.eps" 7 | plot "ImageRegistration9OutputCleaned.txt" using 1:2 notitle with lines lt 1, "ImageRegistration9OutputCleaned.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 8 | 9 | 10 | set xlabel "Iteration No." 11 | set ylabel "Angle (degrees)" 12 | 13 | set output "ImageRegistration9TraceAngle.eps" 14 | plot "ImageRegistration9OutputCleaned.txt" using 1:9 notitle with lines lt 1, "ImageRegistration9OutputCleaned.txt" using 1:9 notitle with points lt 0 pt 12 ps 1 15 | 16 | 17 | set size square 18 | set xlabel "X Translations (mm)" 19 | set ylabel "Y Translations (mm)" 20 | 21 | set output "ImageRegistration9TraceTranslations.eps" 22 | plot "ImageRegistration9OutputCleaned.txt" using 7:8 notitle with lines lt 1, "ImageRegistration9OutputCleaned.txt" using 7:8 notitle with points lt 0 pt 12 ps 1 23 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageRegistration9Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | # script to execute ImageRegistration9.cxx and capture the output and plot it 3 | # gnuplot 4 | 5 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 6 | DATADIR="/home/ibanez/src/Insight/Examples/Data" 7 | 8 | OUTPUTDATAFILE="ImageRegistration9Output.txt" 9 | OUTPUTDATAFILECLEANED="ImageRegistration9OutputCleaned.txt" 10 | 11 | # 12 | # Execute the example and capture the output. 13 | # 14 | $EXAMPLESBINDIR/ImageRegistration9 $DATADIR/BrainProtonDensitySliceBorder20.png $DATADIR/BrainProtonDensitySliceR10X13Y17.png ImageRegistration9Output.png ImageRegistration9DifferenceBefore.png ImageRegistration9DifferenceAfter.png 1.0 300 | tee $OUTPUTDATAFILE 15 | # 16 | # Take the first N lines, and remove the characters "[" "]" "," 17 | # 18 | head -n 134 $OUTPUTDATAFILE | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" | sed "s/AffineAngle://g" > $OUTPUTDATAFILECLEANED 19 | 20 | # 21 | # Take the metric and translation data and generate plots with GNUPlot 22 | # 23 | gnuplot ImageRegistration9Figures.gnup 24 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/ImageSliceIteratorWithIndexOutput.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ImageSliceIteratorWithIndexOutput.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/IsolatedConnectedImageFilterOutput0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/IsolatedConnectedImageFilterOutput0.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/Kitware-logo-medium-res.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/Kitware-logo-medium-res.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/MeanSquaresMetricFigures.gnup: -------------------------------------------------------------------------------- 1 | set dgrid3d 50,50,2 2 | set contour both 3 | set cntrparam bspline 4 | set cntrparam levels incremental 0,1000,12000 5 | set noclabel 6 | set zlabel "Mean Squares Metric" 7 | set xlabel "Translation in X (mm)" 8 | set ylabel "Translation in Y (mm)" 9 | 10 | set terminal postscript portrait eps color "Times Roman" 12 11 | set output "MeanSquaresMetricPlot1.eps" 12 | splot "MeanSquaresMetricOutput.txt" notitle with lines 13 | 14 | set nosurface 15 | set contour base 16 | set view 0,90,1,1 17 | set size square 18 | set cntrparam levels incremental 0,500,12000 19 | set xlabel 20 | set ylabel 21 | 22 | set terminal postscript portrait eps color "Times Roman" 12 23 | set output "MeanSquaresMetricPlot2.eps" 24 | splot "MeanSquaresMetricOutput.txt" notitle with lines 25 | 26 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/MeanSquaresMetricFigures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/ibanez/bin/ITKGcc3.3/bin" 4 | DATADIR="/home/ibanez/src/Insight/Examples/Data" 5 | 6 | OUTPUTDATAFILE="MeanSquaresMetricOutput.txt" 7 | 8 | # 9 | # Execute the example and capture the output. 10 | # 11 | $EXAMPLESBINDIR/MeanSquaresImageMetric1 $DATADIR/BrainProtonDensitySlice.png $DATADIR/BrainProtonDensitySlice.png | tee $OUTPUTDATAFILE 12 | 13 | 14 | # 15 | # Take the metric and translation data and generate plots with GNUPlot 16 | # 17 | gnuplot MeanSquaresMetricFigures.gnup 18 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/MultiResImageRegistration1Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 22 2 | 3 | set xlabel "Iteration No." 4 | set ylabel "Metric " 5 | 6 | set output "MultiResImageRegistration1TraceMetric.eps" 7 | plot "MultiResImageRegistration1OutputCleanedQuarterRes.txt" using 1:2 notitle with lines lt 1, "MultiResImageRegistration1OutputCleanedQuarterRes.txt" using 1:2 notitle with points lt 0 pt 12 ps 1 8 | 9 | set xlabel "X Translations (mm)" 10 | set ylabel "Y Translations (mm)" 11 | 12 | set parametric 13 | set size square 14 | 15 | set output "MultiResImageRegistration1TraceTranslations.eps" 16 | plot "MultiResImageRegistration1OutputCleaned2.txt" using 3:4 notitle with lines lt 1, "MultiResImageRegistration1OutputCleaned2.txt" using 3:4 notitle with points lt 0 pt 12 ps 1 17 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/MultiResImageRegistration1Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/karthik/work/ITK/binaries/Insight/Nightly/bin" 4 | DATADIR="/home/karthik/work/ITK/src/Insight/Nightly/Examples/Data" 5 | 6 | # 7 | # Execute the example and capture the output. 8 | # 9 | $EXAMPLESBINDIR/MultiResImageRegistration1 $DATADIR/BrainT1SliceBorder20.png $DATADIR/BrainProtonDensitySliceShifted13x17y.png MultiResImageRegistration1Output.png | tee MultiResImageRegistration1Output.txt 10 | 11 | # 12 | # Take the first 6 lines, and remove the characters "[" "]" "," 13 | # 14 | head -n 6 MultiResImageRegistration1Output.txt | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > MultiResImageRegistration1OutputCleanedQuarterRes.txt 15 | 16 | head -n 100 MultiResImageRegistration1Output.txt | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > MultiResImageRegistration1OutputCleaned2.txt 17 | 18 | # 19 | # Take the metric and translation data and generate plots with GNUPlot 20 | # 21 | gnuplot MultiResImageRegistration1Figures.gnup 22 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/MultiResImageRegistration2Figures.gnup: -------------------------------------------------------------------------------- 1 | set terminal postscript portrait eps color "Times Roman" 22 2 | 3 | set xlabel "Iteration No." 4 | set ylabel "Metric " 5 | 6 | set output "MultiResImageRegistration2TraceMetric.eps" 7 | plot "MultiResImageRegistration2OutputCleaned.txt" using 9:2 notitle with lines lt 1, "MultiResImageRegistration2OutputCleaned.txt" using 9:2 notitle with points lt 0 pt 12 ps 1 8 | 9 | set xlabel "X Translations (mm)" 10 | set ylabel "Y Translations (mm)" 11 | 12 | set parametric 13 | set size square 14 | 15 | set output "MultiResImageRegistration2TraceTranslations.eps" 16 | plot "MultiResImageRegistration2OutputCleaned.txt" using 7:8 notitle with lines lt 1, "MultiResImageRegistration2OutputCleaned.txt" using 7:8 notitle with points lt 0 pt 12 ps 1 17 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/MultiResImageRegistration2Figures.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/zsh 2 | 3 | EXAMPLESBINDIR="/home/karthik/work/ITK/binaries/Insight/Nightly/bin" 4 | DATADIR="/home/karthik/work/ITK/src/Insight/Nightly/Examples/Data" 5 | 6 | # 7 | # Execute the example and capture the output. 8 | # 9 | $EXAMPLESBINDIR/MultiResImageRegistration2 $DATADIR/BrainT1SliceBorder20.png $DATADIR/BrainProtonDensitySliceShifted13x17y.png MultiResImageRegistration2Output.png | tee MultiResImageRegistration2Output.txt 10 | 11 | # 12 | # Take the first 5 lines, and remove the characters "[" "]" "," 13 | # 14 | head -n 100 MultiResImageRegistration2Output.txt | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > MultiResImageRegistration2OutputCleaned.txt 15 | 16 | # 17 | # Take the metric and translation data and generate plots with GNUPlot 18 | # 19 | gnuplot MultiResImageRegistration2Figures.gnup 20 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/MultiStageImageRegistration1Figures.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | EXAMPLESBINDIR="/scratch/ITK-softwareGuide/release/bin" 4 | DATADIR="/scratch/ITK/ITK/Examples/Data" 5 | 6 | OUTPUTDATAFILE="MultiStageImageRegistration1Output.txt" 7 | OUTPUTDATAFILECLEANED="MultiStageImageRegistration1OutputCleaned.txt" 8 | 9 | # 10 | # Execute the example and capture the output. 11 | # 12 | $EXAMPLESBINDIR/MultiStageImageRegistration1 $DATADIR/BrainT1SliceBorder20.png $DATADIR/BrainProtonDensitySliceR10X13Y17.png MultiStageImageRegistration1Output.png 100 MultiStageImageRegistration1CheckerboardBefore.png MultiStageImageRegistration1CheckerboardAfter.png | tee $OUTPUTDATAFILE 13 | 14 | # 15 | # Take the first 5 lines, and remove the characters "[" "]" "," 16 | # 17 | head -n 100 MultiStageImageRegistration1Output.txt | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > $OUTPUTDATAFILECLEANED 18 | 19 | # 20 | # Take the metric and translation data and generate plots with GNUPlot 21 | # 22 | gnuplot MultiStageImageRegistration1Figures.gnup 23 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/MultiStageImageRegistration2Figures.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | EXAMPLESBINDIR="/scratch/ITK-softwareGuide/release/bin" 4 | DATADIR="/scratch/ITK/ITK/Examples/Data" 5 | 6 | OUTPUTDATAFILE="MultiStageImageRegistration2Output.txt" 7 | OUTPUTDATAFILECLEANED="MultiStageImageRegistration2OutputCleaned.txt" 8 | 9 | # 10 | # Execute the example and capture the output. 11 | # 12 | $EXAMPLESBINDIR/MultiStageImageRegistration2 $DATADIR/BrainT1SliceBorder20.png $DATADIR/BrainProtonDensitySliceR10X13Y17.png MultiStageImageRegistration2Output.png 100 MultiStageImageRegistration2CheckerboardBefore.png MultiStageImageRegistration2CheckerboardAfter.png | tee $OUTPUTDATAFILE 13 | 14 | # 15 | # Take the first 5 lines, and remove the characters "[" "]" "," 16 | # 17 | head -n 100 MultiStageImageRegistration2Output.txt | sed "s/\]/ /g" | sed "s/\,/ /g" | sed "s/\[/ /g" > $OUTPUTDATAFILECLEANED 18 | 19 | # 20 | # Take the metric and translation data and generate plots with GNUPlot 21 | # 22 | gnuplot MultiStageImageRegistration2Figures.gnup 23 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/NeighborhoodConnectedImageFilterOutput1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/NeighborhoodConnectedImageFilterOutput1.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/NeighborhoodConnectedImageFilterOutput2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/NeighborhoodConnectedImageFilterOutput2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/NeighborhoodConnectedImageFilterOutput3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/NeighborhoodConnectedImageFilterOutput3.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/NeighborhoodIterators1b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/NeighborhoodIterators1b.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/NeighborhoodIterators6a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/NeighborhoodIterators6a.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/NeighborhoodIterators6b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/NeighborhoodIterators6b.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/NeighborhoodIterators6c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/NeighborhoodIterators6c.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ParaviewScreenshot1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ParaviewScreenshot1.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ParaviewScreenshot2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ParaviewScreenshot2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ParaviewScreenshot3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ParaviewScreenshot3.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ParaviewScreenshot4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ParaviewScreenshot4.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ParaviewScreenshot5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ParaviewScreenshot5.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/RGBCurvatureAnisotropicDiffusionImageFilterOutput2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/RGBCurvatureAnisotropicDiffusionImageFilterOutput2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/RGBGradientAnisotropicDiffusionImageFilterOutput2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/RGBGradientAnisotropicDiffusionImageFilterOutput2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/RatLungSlice1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/RatLungSlice1.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/RatLungSlice2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/RatLungSlice2.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ResampleImageFilterInput2x3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ResampleImageFilterInput2x3.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ResampleImageFilterOutput11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ResampleImageFilterOutput11.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ResampleImageFilterOutput5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ResampleImageFilterOutput5.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ResampleImageFilterOutput6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ResampleImageFilterOutput6.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ResampleImageFilterOutput7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ResampleImageFilterOutput7.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ResampleImageFilterOutput7b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ResampleImageFilterOutput7b.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ResampleImageFilterOutput8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ResampleImageFilterOutput8.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ResampleImageFilterOutput8b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ResampleImageFilterOutput8b.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ResampleImageFilterOutput9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ResampleImageFilterOutput9.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ShapedNeighborhoodIterators1a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ShapedNeighborhoodIterators1a.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ShapedNeighborhoodIterators1c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ShapedNeighborhoodIterators1c.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/ShapedNeighborhoodIterators1d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ShapedNeighborhoodIterators1d.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/SignedDanielssonDistanceMapImageFilterOutput.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/SignedDanielssonDistanceMapImageFilterOutput.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/SlicesBrainWebConfidenceConnected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/SlicesBrainWebConfidenceConnected.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/TransformsHierarchy.sh: -------------------------------------------------------------------------------- 1 | dot -Tps TransformsHierarchy.dot -o TransformsHierarchy.ps 2 | -------------------------------------------------------------------------------- /SoftwareGuide/Art/TwoNormalDensityFunctionPlot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/TwoNormalDensityFunctionPlot.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/VectorCurvatureAnisotropicDiffusionImageFilterInput.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/VectorCurvatureAnisotropicDiffusionImageFilterInput.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/VectorCurvatureAnisotropicDiffusionImageFilterOutput.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/VectorCurvatureAnisotropicDiffusionImageFilterOutput.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/VectorGradientAnisotropicDiffusionImageFilterInput.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/VectorGradientAnisotropicDiffusionImageFilterInput.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/VectorGradientAnisotropicDiffusionImageFilterOutput.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/VectorGradientAnisotropicDiffusionImageFilterOutput.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/VisibleWomanEyeSlice.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/VisibleWomanEyeSlice.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/VisibleWomanEyeSliceBlueComponent.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/VisibleWomanEyeSliceBlueComponent.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/VisibleWomanEyeSliceGreenComponent.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/VisibleWomanEyeSliceGreenComponent.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/VisibleWomanEyeSliceRedComponent.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/VisibleWomanEyeSliceRedComponent.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/VisibleWomanHeadSlice.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/VisibleWomanHeadSlice.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/WatershedAbdomenSegmentation.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/WatershedAbdomenSegmentation.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/WatershedRendering.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/WatershedRendering.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/cc-by.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/cc-by.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/ccmake-2-8-screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ccmake-2-8-screenshot.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/ccmakeScreenShot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/ccmakeScreenShot.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Art/cmake-gui-2-8-win-screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/cmake-gui-2-8-win-screenshot.png -------------------------------------------------------------------------------- /SoftwareGuide/Art/itkLogo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Art/itkLogo.jpg -------------------------------------------------------------------------------- /SoftwareGuide/Cover/ITKSoftwareGuideSinglePDFCoverPage.odt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InsightSoftwareConsortium/ITKSoftwareGuide/96450bf1b8a882b02d416a5929e44301b59acfe3/SoftwareGuide/Cover/ITKSoftwareGuideSinglePDFCoverPage.odt -------------------------------------------------------------------------------- /SoftwareGuide/Cover/README.md: -------------------------------------------------------------------------------- 1 | ITK Software Guide Cover 2 | ======================== 3 | 4 | This directory contains the elements used for generating the cover of the ITK 5 | SoftwareGuide. 6 | 7 | The subdirectory 8 | [`Source`](https://github.com/InsightSoftwareConsortium/ITKSoftwareGuide/tree/master/SoftwareGuide/Cover/Source) 9 | contains all the code used for the processing of the images using ITK. 10 | -------------------------------------------------------------------------------- /SoftwareGuide/Cover/Source/AntialiasFilter.cxx: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Insight Segmentation & Registration Toolkit 4 | Module: AntialiasFilter.cxx 5 | Language: C++ 6 | Date: $Date$ 7 | Version: $Revision$ 8 | 9 | Copyright (c) 2002 Insight Consortium. All rights reserved. 10 | See ITKCopyright.txt or https://www.itk.org/HTML/Copyright.htm for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | 18 | 19 | #include "itkImageFileReader.h" 20 | #include "itkImageFileWriter.h" 21 | #include "itkAntiAliasBinaryImageFilter.h" 22 | #include "itkImage.h" 23 | 24 | 25 | int 26 | main(int argc, char ** argv) 27 | { 28 | 29 | // Verify the number of parameters in the command line 30 | if (argc < 5) 31 | { 32 | std::cerr << "Usage: " << std::endl; 33 | std::cerr << argv[0] << " inputImageFile outputImageFile " << std::endl; 34 | std::cerr << " maximumRMSError maximumIterations " << std::endl; 35 | return -1; 36 | } 37 | 38 | 39 | using InputPixelType = unsigned char; 40 | using OutputPixelType = float; 41 | 42 | constexpr unsigned int Dimension = 3; 43 | 44 | using InputImageType = itk::Image; 45 | using OutputImageType = itk::Image; 46 | 47 | using ReaderType = itk::ImageFileReader; 48 | using WriterType = itk::ImageFileWriter; 49 | 50 | using FilterType = itk::AntiAliasBinaryImageFilter; 51 | 52 | auto filter = FilterType::New(); 53 | 54 | 55 | const double maximumRMSError = atof(argv[3]); 56 | const unsigned int long numberOfIterations = atol(argv[4]); 57 | 58 | filter->SetMaximumRMSError(maximumRMSError); 59 | filter->SetMaximumIterations(numberOfIterations); 60 | 61 | auto reader = ReaderType::New(); 62 | auto writer = WriterType::New(); 63 | 64 | const char * inputFilename = argv[1]; 65 | const char * outputFilename = argv[2]; 66 | 67 | reader->SetFileName(inputFilename); 68 | writer->SetFileName(outputFilename); 69 | 70 | 71 | filter->SetInput(reader->GetOutput()); 72 | 73 | writer->SetInput(filter->GetOutput()); 74 | 75 | 76 | try 77 | { 78 | writer->Update(); 79 | } 80 | catch (const itk::ExceptionObject & err) 81 | { 82 | std::cout << "ExceptionObject caught !" << std::endl; 83 | std::cout << err << std::endl; 84 | return -1; 85 | } 86 | 87 | 88 | return 0; 89 | } 90 | -------------------------------------------------------------------------------- /SoftwareGuide/Cover/Source/BinaryMaskMedianFilter.cxx: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Insight Segmentation & Registration Toolkit 4 | Module: BinaryMaskMedianFilter.cxx 5 | Language: C++ 6 | Date: $Date$ 7 | Version: $Revision$ 8 | 9 | Copyright (c) 2002 Insight Consortium. All rights reserved. 10 | See ITKCopyright.txt or https://www.itk.org/HTML/Copyright.htm for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | 18 | 19 | #include "itkImageFileReader.h" 20 | #include "itkImageFileWriter.h" 21 | #include "itkBinaryMedianImageFilter.h" 22 | #include "itkImage.h" 23 | 24 | 25 | int 26 | main(int argc, char ** argv) 27 | { 28 | 29 | // Verify the number of parameters in the command line 30 | if (argc < 4) 31 | { 32 | std::cerr << "Usage: " << std::endl; 33 | std::cerr << argv[0] << " inputImageFile outputImageFile " << std::endl; 34 | std::cerr << " radius " << std::endl; 35 | return -1; 36 | } 37 | 38 | 39 | using PixelType = unsigned char; 40 | 41 | constexpr unsigned int Dimension = 3; 42 | 43 | using ImageType = itk::Image; 44 | 45 | 46 | using ReaderType = itk::ImageFileReader; 47 | using WriterType = itk::ImageFileWriter; 48 | 49 | 50 | using FilterType = itk::BinaryMedianImageFilter; 51 | 52 | auto filter = FilterType::New(); 53 | 54 | 55 | unsigned int radius = atoi(argv[3]); 56 | 57 | ImageType::SizeType size; 58 | 59 | size[0] = radius; 60 | size[1] = radius; 61 | size[2] = radius; 62 | 63 | 64 | filter->SetRadius(size); 65 | 66 | filter->SetBackgroundValue(0); 67 | filter->SetForegroundValue(255); 68 | 69 | 70 | auto reader = ReaderType::New(); 71 | auto writer = WriterType::New(); 72 | 73 | // 74 | // Here we recover the file names from the command line arguments 75 | // 76 | const char * inputFilename = argv[1]; 77 | const char * outputFilename = argv[2]; 78 | 79 | reader->SetFileName(inputFilename); 80 | writer->SetFileName(outputFilename); 81 | 82 | 83 | filter->SetInput(reader->GetOutput()); 84 | 85 | writer->SetInput(filter->GetOutput()); 86 | 87 | 88 | try 89 | { 90 | writer->Update(); 91 | } 92 | catch (const itk::ExceptionObject & err) 93 | { 94 | std::cout << "ExceptionObject caught !" << std::endl; 95 | std::cout << err << std::endl; 96 | return -1; 97 | } 98 | 99 | 100 | return 0; 101 | } 102 | -------------------------------------------------------------------------------- /SoftwareGuide/Cover/Source/BinaryThresholdFilter.cxx: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | #include "itkImage.h" 4 | #include "itkImageFileReader.h" 5 | #include "itkImageFileWriter.h" 6 | #include "itkBinaryThresholdImageFilter.h" 7 | 8 | 9 | int 10 | main(int argc, char * argv[]) 11 | { 12 | 13 | if (argc < 5) 14 | { 15 | std::cerr << "BinaryThresholdFilter inputFile outputFile lowerThreshold upperThreshold" << std::endl; 16 | return -1; 17 | } 18 | 19 | using InputPixelType = signed short; 20 | using InputImageType = itk::Image; 21 | 22 | 23 | using OutputPixelType = unsigned char; 24 | using OutputImageType = itk::Image; 25 | 26 | using ImageReaderType = itk::ImageFileReader; 27 | using ImageWriterType = itk::ImageFileWriter; 28 | 29 | using FilterType = itk::BinaryThresholdImageFilter; 30 | 31 | auto filter = FilterType::New(); 32 | 33 | filter->ReleaseDataFlagOn(); 34 | 35 | auto imageReader = ImageReaderType::New(); 36 | imageReader->SetFileName(argv[1]); 37 | 38 | 39 | try 40 | { 41 | imageReader->Update(); 42 | } 43 | catch (const itk::ExceptionObject & excp) 44 | { 45 | std::cerr << excp << std::endl; 46 | return -1; 47 | } 48 | 49 | filter->SetInput(imageReader->GetOutput()); 50 | 51 | 52 | filter->SetInsideValue(255); 53 | filter->SetOutsideValue(0); 54 | 55 | const InputPixelType lowerThreshold = atoi(argv[3]); 56 | const InputPixelType upperThreshold = atoi(argv[4]); 57 | 58 | filter->SetLowerThreshold(lowerThreshold); 59 | filter->SetUpperThreshold(upperThreshold); 60 | 61 | 62 | try 63 | { 64 | filter->Update(); 65 | } 66 | catch (const itk::ExceptionObject & excp) 67 | { 68 | std::cerr << excp << std::endl; 69 | return -1; 70 | } 71 | 72 | auto imageWriter = ImageWriterType::New(); 73 | 74 | imageWriter->SetFileName(argv[2]); 75 | 76 | imageWriter->SetInput(filter->GetOutput()); 77 | 78 | 79 | try 80 | { 81 | imageWriter->Update(); 82 | } 83 | catch (const itk::ExceptionObject & excp) 84 | { 85 | std::cerr << excp << std::endl; 86 | return -1; 87 | } 88 | 89 | 90 | return 0; 91 | } 92 | -------------------------------------------------------------------------------- /SoftwareGuide/Cover/Source/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.10.2 FATAL_ERROR) 2 | cmake_policy(VERSION 3.10.2) 3 | 4 | project( VWSegmentation ) 5 | 6 | find_package( ITK REQUIRED ) 7 | include( ${ITK_USE_FILE} ) 8 | 9 | set( operations 10 | VWHistogramRGB 11 | VWHistogramHSV 12 | VWColorSegmentation 13 | VWBlueRemoval 14 | ImageReadExtractWriteRGB 15 | BinaryMaskMedianFilter 16 | AntialiasFilter 17 | DilateFilter 18 | NegateFilter 19 | VectorGradientAnisotropicDiffusionFilter 20 | BinaryThresholdFilter 21 | ModelBasedSegmentation 22 | ) 23 | 24 | foreach( operation ${operations} ) 25 | add_executable( ${operation} ${operation}.cxx ) 26 | target_link_libraries( ${operation} ${ITK_LIBRARIES} ) 27 | endforeach() 28 | -------------------------------------------------------------------------------- /SoftwareGuide/Cover/Source/DilateFilter.cxx: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Insight Segmentation & Registration Toolkit 4 | Module: DilateFilter.cxx 5 | Language: C++ 6 | Date: $Date$ 7 | Version: $Revision$ 8 | 9 | Copyright (c) 2002 Insight Consortium. All rights reserved. 10 | See ITKCopyright.txt or https://www.itk.org/HTML/Copyright.htm for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | 18 | 19 | #include "itkImageFileReader.h" 20 | #include "itkImageFileWriter.h" 21 | #include "itkBinaryDilateImageFilter.h" 22 | #include "itkBinaryBallStructuringElement.h" 23 | #include "itkImage.h" 24 | 25 | 26 | int 27 | main(int argc, char ** argv) 28 | { 29 | 30 | // Verify the number of parameters in the command line 31 | if (argc < 4) 32 | { 33 | std::cerr << "Usage: " << std::endl; 34 | std::cerr << argv[0] << " inputImageFile outputImageFile " << std::endl; 35 | std::cerr << " radius " << std::endl; 36 | return -1; 37 | } 38 | 39 | 40 | using PixelType = unsigned char; 41 | 42 | constexpr unsigned int Dimension = 3; 43 | 44 | using ImageType = itk::Image; 45 | 46 | 47 | using ReaderType = itk::ImageFileReader; 48 | using WriterType = itk::ImageFileWriter; 49 | 50 | 51 | using StructuringElementType = itk::BinaryBallStructuringElement; 52 | 53 | using FilterType = itk::BinaryDilateImageFilter; 54 | 55 | auto filter = FilterType::New(); 56 | 57 | 58 | unsigned int radius = atoi(argv[3]); 59 | 60 | StructuringElementType structuringElement; 61 | 62 | structuringElement.SetRadius(radius); 63 | 64 | structuringElement.CreateStructuringElement(); 65 | 66 | filter->SetKernel(structuringElement); 67 | 68 | 69 | auto reader = ReaderType::New(); 70 | auto writer = WriterType::New(); 71 | 72 | const char * inputFilename = argv[1]; 73 | const char * outputFilename = argv[2]; 74 | 75 | reader->SetFileName(inputFilename); 76 | writer->SetFileName(outputFilename); 77 | 78 | 79 | filter->SetInput(reader->GetOutput()); 80 | 81 | writer->SetInput(filter->GetOutput()); 82 | 83 | 84 | try 85 | { 86 | writer->Update(); 87 | } 88 | catch (const itk::ExceptionObject & err) 89 | { 90 | std::cout << "ExceptionObject caught !" << std::endl; 91 | std::cout << err << std::endl; 92 | return -1; 93 | } 94 | 95 | 96 | return 0; 97 | } 98 | -------------------------------------------------------------------------------- /SoftwareGuide/Cover/Source/RescaleIntensityFilter.cxx: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Insight Segmentation & Registration Toolkit 4 | Module: RescaleIntensityFilter.cxx 5 | Language: C++ 6 | Date: $Date$ 7 | Version: $Revision$ 8 | 9 | Copyright (c) 2002 Insight Consortium. All rights reserved. 10 | See ITKCopyright.txt or https://www.itk.org/HTML/Copyright.htm for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | 18 | 19 | #include "itkImageFileReader.h" 20 | #include "itkImageFileWriter.h" 21 | #include "itkRescaleIntensityImageFilter.h" 22 | #include "itkImage.h" 23 | 24 | 25 | int 26 | main(int argc, char ** argv) 27 | { 28 | 29 | // Verify the number of parameters in the command line 30 | if (argc < 3) 31 | { 32 | std::cerr << "Usage: " << std::endl; 33 | std::cerr << argv[0] << " inputImageFile outputImageFile " << std::endl; 34 | return -1; 35 | } 36 | 37 | 38 | using InputPixelType = float; 39 | using OutputPixelType = unsigned char; 40 | 41 | constexpr unsigned int Dimension = 3; 42 | 43 | using InputImageType = itk::Image; 44 | using OutputImageType = itk::Image; 45 | 46 | 47 | using ReaderType = itk::ImageFileReader; 48 | using WriterType = itk::ImageFileWriter; 49 | 50 | 51 | using FilterType = itk::RescaleIntensityImageFilter; 52 | 53 | auto filter = FilterType::New(); 54 | 55 | 56 | auto reader = ReaderType::New(); 57 | auto writer = WriterType::New(); 58 | 59 | const char * inputFilename = argv[1]; 60 | const char * outputFilename = argv[2]; 61 | 62 | reader->SetFileName(inputFilename); 63 | writer->SetFileName(outputFilename); 64 | 65 | 66 | filter->SetInput(reader->GetOutput()); 67 | 68 | writer->SetInput(filter->GetOutput()); 69 | 70 | filter->SetOutputMinimum(0); 71 | filter->SetOutputMaximum(255); 72 | 73 | try 74 | { 75 | writer->Update(); 76 | } 77 | catch (const itk::ExceptionObject & err) 78 | { 79 | std::cout << "ExceptionObject caught !" << std::endl; 80 | std::cout << err << std::endl; 81 | return -1; 82 | } 83 | 84 | 85 | return 0; 86 | } 87 | -------------------------------------------------------------------------------- /SoftwareGuide/Cover/Source/VWBlueRemoval.cxx: -------------------------------------------------------------------------------- 1 | #include "itkImage.h" 2 | #include "itkImageFileReader.h" 3 | #include "itkImageFileWriter.h" 4 | #include "itkRGBPixel.h" 5 | #include "itkImageRegionIterator.h" 6 | 7 | 8 | int 9 | main(int argc, char * argv[]) 10 | { 11 | 12 | if (argc < 3) 13 | { 14 | std::cerr << "VWBlueRemoval inputFile outputFile" << std::endl; 15 | return -1; 16 | } 17 | 18 | using PixelComponentType = unsigned char; 19 | using ImagePixelType = itk::RGBPixel; 20 | 21 | using ImageType = itk::Image; 22 | 23 | using ImageReaderType = itk::ImageFileReader; 24 | using ImageWriterType = itk::ImageFileWriter; 25 | 26 | 27 | ImageType::Pointer image; 28 | 29 | { // Local scoope for destroying the reader 30 | auto imageReader = ImageReaderType::New(); 31 | imageReader->SetFileName(argv[1]); 32 | try 33 | { 34 | imageReader->Update(); 35 | } 36 | catch (const itk::ExceptionObject & excp) 37 | { 38 | std::cout << excp << std::endl; 39 | return -1; 40 | } 41 | 42 | image = imageReader->GetOutput(); 43 | } 44 | 45 | using IteratorType = itk::ImageRegionIterator; 46 | 47 | IteratorType it(image, image->GetBufferedRegion()); 48 | it.GoToBegin(); 49 | 50 | 51 | // 52 | // Separatrix Plane Coefficients 53 | // 54 | const double A = -48.0; 55 | constexpr double B = 0.0; 56 | constexpr double C = 59.0; 57 | constexpr double D = 106.0; 58 | 59 | 60 | // 61 | // RGB color to replace blue 62 | // 63 | ImagePixelType replaceValue; 64 | replaceValue[0] = 0; 65 | replaceValue[1] = 0; 66 | replaceValue[2] = 0; 67 | 68 | 69 | // 70 | // In place replacement 71 | // 72 | while (!it.IsAtEnd()) 73 | { 74 | ImagePixelType pixel = it.Get(); 75 | const PixelComponentType red = pixel.GetRed(); 76 | const PixelComponentType green = pixel.GetGreen(); 77 | const PixelComponentType blue = pixel.GetBlue(); 78 | 79 | const double distanceToPlane = A * red + B * green + C * blue + D; 80 | 81 | const bool pixelIsOnBlueSide = (distanceToPlane > 0); 82 | 83 | if (pixelIsOnBlueSide) 84 | { 85 | it.Set(replaceValue); 86 | } 87 | ++it; 88 | } 89 | 90 | 91 | auto imageWriter = ImageWriterType::New(); 92 | 93 | imageWriter->SetFileName(argv[2]); 94 | imageWriter->SetInput(image); 95 | 96 | 97 | try 98 | { 99 | imageWriter->Update(); 100 | } 101 | catch (const itk::ExceptionObject & excp) 102 | { 103 | std::cout << excp << std::endl; 104 | return -1; 105 | } 106 | 107 | 108 | return 0; 109 | } 110 | -------------------------------------------------------------------------------- /SoftwareGuide/Cover/Source/VWHistogramRGB.cxx: -------------------------------------------------------------------------------- 1 | #include "itkImage.h" 2 | #include "itkImageFileReader.h" 3 | #include "itkImageFileWriter.h" 4 | #include "itkRGBPixel.h" 5 | #include "itkImageRegionConstIterator.h" 6 | 7 | 8 | int 9 | main(int argc, char * argv[]) 10 | { 11 | 12 | if (argc < 3) 13 | { 14 | std::cerr << "VWSegmentation inputFile histogramRGBFile" << std::endl; 15 | return -1; 16 | } 17 | 18 | using PixelComponentType = unsigned char; 19 | using InputPixelType = itk::RGBPixel; 20 | using OutputPixelType = unsigned short; 21 | 22 | using InputImageType = itk::Image; 23 | using OutputImageType = itk::Image; 24 | 25 | using ReaderType = itk::ImageFileReader; 26 | using WriterType = itk::ImageFileWriter; 27 | 28 | using RegionType = OutputImageType::RegionType; 29 | using SizeType = OutputImageType::SizeType; 30 | using IndexType = OutputImageType::IndexType; 31 | 32 | InputImageType::Pointer inputImage; 33 | 34 | { // local scope for destroying the reader 35 | 36 | auto reader = ReaderType::New(); 37 | reader->SetFileName(argv[1]); 38 | try 39 | { 40 | reader->Update(); 41 | } 42 | catch (const itk::ExceptionObject & excp) 43 | { 44 | std::cout << excp << std::endl; 45 | return -1; 46 | } 47 | inputImage = reader->GetOutput(); 48 | } 49 | 50 | RegionType region; 51 | SizeType size; 52 | IndexType start; 53 | 54 | start.Fill(0); 55 | 56 | size[0] = 256; 57 | size[1] = 256; 58 | size[2] = 256; 59 | 60 | region.SetSize(size); 61 | region.SetIndex(start); 62 | 63 | auto histogramImage = OutputImageType::New(); 64 | histogramImage->SetRegions(region); 65 | histogramImage->Allocate(); 66 | histogramImage->FillBuffer(0); 67 | 68 | 69 | using IteratorType = itk::ImageRegionConstIterator; 70 | 71 | IteratorType it(inputImage, inputImage->GetBufferedRegion()); 72 | it.GoToBegin(); 73 | 74 | IndexType index; 75 | 76 | while (!it.IsAtEnd()) 77 | { 78 | InputPixelType pixel = it.Get(); 79 | PixelComponentType red = pixel.GetRed(); 80 | PixelComponentType green = pixel.GetGreen(); 81 | PixelComponentType blue = pixel.GetBlue(); 82 | index[0] = red; 83 | index[1] = green; 84 | index[2] = blue; 85 | 86 | OutputPixelType count = histogramImage->GetPixel(index); 87 | count++; 88 | histogramImage->SetPixel(index, count); 89 | ++it; 90 | } 91 | 92 | 93 | auto writer = WriterType::New(); 94 | 95 | writer->SetFileName(argv[2]); 96 | writer->SetInput(histogramImage); 97 | 98 | 99 | try 100 | { 101 | writer->Update(); 102 | } 103 | catch (const itk::ExceptionObject & excp) 104 | { 105 | std::cout << excp << std::endl; 106 | return -1; 107 | } 108 | 109 | 110 | return 0; 111 | } 112 | -------------------------------------------------------------------------------- /SoftwareGuide/Cover/Source/VectorGradientAnisotropicDiffusionFilter.cxx: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Insight Segmentation & Registration Toolkit 4 | Module: VectorGradientAnisotropicDiffusionFilter.cxx 5 | Language: C++ 6 | Date: $Date$ 7 | Version: $Revision$ 8 | 9 | Copyright (c) 2002 Insight Consortium. All rights reserved. 10 | See ITKCopyright.txt or https://www.itk.org/HTML/Copyright.htm for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | 18 | #include "itkImage.h" 19 | #include "itkImageFileReader.h" 20 | #include "itkImageFileWriter.h" 21 | #include "itkVectorGradientAnisotropicDiffusionImageFilter.h" 22 | #include "itkCastImageFilter.h" 23 | #include "itkRGBPixel.h" 24 | 25 | 26 | int 27 | main(int argc, char * argv[]) 28 | { 29 | 30 | if (argc < 5) 31 | { 32 | std::cerr << "Usage: " << std::endl; 33 | std::cerr << argv[0] << " inputImageFile outputGradientImageFile "; 34 | std::cerr << "numberOfIterations timeStep " << std::endl; 35 | return 1; 36 | } 37 | 38 | using PixelComponentType = float; 39 | constexpr unsigned long Dimension = 3; 40 | 41 | using PixelType = itk::RGBPixel; 42 | using ImageType = itk::Image; 43 | 44 | using OutputPixelType = itk::RGBPixel; 45 | using OutputImageType = itk::Image; 46 | 47 | 48 | using ReaderType = itk::ImageFileReader; 49 | 50 | using WriterType = itk::ImageFileWriter; 51 | 52 | using CasterType = itk::CastImageFilter; 53 | 54 | using FilterType = itk::VectorGradientAnisotropicDiffusionImageFilter; 55 | 56 | 57 | auto reader = ReaderType::New(); 58 | reader->SetFileName(argv[1]); 59 | 60 | auto filter = FilterType::New(); 61 | 62 | filter->SetInput(reader->GetOutput()); 63 | 64 | const unsigned int numberOfIterations = atoi(argv[3]); 65 | const double timeStep = atof(argv[4]); 66 | 67 | filter->SetNumberOfIterations(numberOfIterations); 68 | filter->SetTimeStep(timeStep); 69 | filter->SetConductanceParameter(3.0); 70 | 71 | filter->Update(); 72 | 73 | auto caster = CasterType::New(); 74 | 75 | auto writer = WriterType::New(); 76 | 77 | caster->SetInput(filter->GetOutput()); 78 | writer->SetInput(caster->GetOutput()); 79 | writer->SetFileName(argv[2]); 80 | writer->Update(); 81 | 82 | return 0; 83 | } 84 | -------------------------------------------------------------------------------- /SoftwareGuide/DvipsWrapper.bat.in: -------------------------------------------------------------------------------- 1 | @ECHO OFF 2 | 3 | SET TEXINPUTS=%TEXINPUTS%;${ITK_TEXINPUTS} 4 | 5 | "${DVIPS_CONVERTER}" %1 %2 6 | -------------------------------------------------------------------------------- /SoftwareGuide/DvipsWrapper.sh.in: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | TEXINPUTS=$TEXINPUTS:${ITK_TEXINPUTS} 4 | 5 | export TEXINPUTS 6 | 7 | ${DVIPS_CONVERTER} "$@" 8 | 9 | -------------------------------------------------------------------------------- /SoftwareGuide/HTLaTeXWrapper.bat.in: -------------------------------------------------------------------------------- 1 | @ECHO OFF 2 | 3 | SET TEXINPUTS=%TEXINPUTS%;${ITK_TEXINPUTS} 4 | 5 | "${HTLATEX_CONVERTER}" %1 "html,2,info" "" "" "-shell-escape" 6 | -------------------------------------------------------------------------------- /SoftwareGuide/HTLaTeXWrapper.sh.in: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | TEXINPUTS=$TEXINPUTS:${ITK_TEXINPUTS} 4 | export TEXINPUTS 5 | 6 | "${HTLATEX_CONVERTER}" "$@" "html,2,info" "" "" "-shell-escape" 7 | -------------------------------------------------------------------------------- /SoftwareGuide/LaTeXWrapper.bat.in: -------------------------------------------------------------------------------- 1 | @ECHO OFF 2 | 3 | SET TEXINPUTS=%TEXINPUTS%;${ITK_TEXINPUTS} 4 | 5 | "${LATEX_COMPILER}" -shell-escape %1 %2 6 | -------------------------------------------------------------------------------- /SoftwareGuide/LaTeXWrapper.sh.in: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | TEXINPUTS=$TEXINPUTS:${ITK_TEXINPUTS} 4 | export TEXINPUTS 5 | 6 | # NOTE: Run 3 times just to get all dependencies resolved. 7 | ${LATEX_COMPILER} -shell-escape "$@" 8 | 9 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/01-PrintedPreamble-Book1.tex: -------------------------------------------------------------------------------- 1 | \begin{minipage}[t][1.0cm][b]{\textwidth} 2 | \begin{center} 3 | Printed and produced in the United States of America.\\ 4 | \bf{ISBN 978-1-930934-35-1} 5 | \end{center} 6 | \end{minipage} 7 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/01-PrintedPreamble-Book2.tex: -------------------------------------------------------------------------------- 1 | \begin{minipage}[t][1.0cm][b]{\textwidth} 2 | \begin{center} 3 | Printed and produced in the United States of America.\\ 4 | \bf{ISBN 978-1-930934-36-8} 5 | \end{center} 6 | \end{minipage} 7 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/01-PrintedPreamble-Common.tex: -------------------------------------------------------------------------------- 1 | \hfill 2 | \begin{minipage}[t][6cm][b]{0.6\textwidth} 3 | \Large 4 | \renewcommand{\baselinestretch}{1.5} 5 | Hans J. Johnson\\ 6 | Matthew McCormick \\ 7 | Luis Ib\'{a}\~{n}ez\\ 8 | and the \emph{Insight Software Consortium} 9 | \normalsize 10 | \end{minipage} 11 | 12 | 13 | \begin{minipage}[t][2cm][b]{\textwidth} 14 | \rule{14cm}{1pt} 15 | \end{minipage} 16 | 17 | \newpage 18 | 19 | \begin{minipage}[t][4cm][b]{\textwidth} 20 | \begin{center} 21 | \includegraphics[width=0.5\textwidth]{Kitware-logo-medium-res.eps} 22 | \end{center} 23 | \par 24 | \begin{center} 25 | \large 26 | 27 | \copyright \the\year \; Kitware, Inc. \emph{(cover, preface, postface)}\\ 28 | \copyright \the\year \; Insight Software Consortium \emph{(main text body)}\\ 29 | Published by Kitware, Inc. \texttt{https://www.kitware.com} 30 | \normalsize 31 | \end{center} 32 | \end{minipage} 33 | 34 | 35 | \begin{minipage}[t][2.25cm][b]{\textwidth} 36 | \begin{center} 37 | An electronic version of this document is available from 38 | \texttt{https://itk.org}. 39 | \end{center} 40 | \begin{tabular}{p{.9\textwidth}} 41 | This work is licensed under a Creative Commons Attribution 3.0 Unported License. 42 | \begin{center} 43 | \includegraphics[width=3.4cm]{cc-by.eps} 44 | \end{center}\\ 45 | \end{tabular} 46 | \end{minipage} 47 | 48 | 49 | \begin{minipage}[t][2.5cm][b]{\textwidth} 50 | \begin{center} 51 | This project has been funded in whole or in part with Federal funds from the 52 | National Institutes of Health (NLM, NIDCR, NIMH, NEI, NINDS, NIDCD, NCI), the 53 | NSF, and the DoD (TATRC). Funding has primarily come under the direction of the 54 | National Library of Medicine, National Institutes of Health, under numerous 55 | contracts. Recently, the major revision to the toolkit, ITKv4, was made 56 | possible by NLM directed funds from the American Reinvestment and Recovery Act 57 | (ARRA). 58 | \end{center} 59 | \end{minipage} 60 | 61 | 62 | \begin{minipage}[t][1.0cm][b]{\textwidth} 63 | \begin{center} 64 | All product names mentioned herein are the trademarks of their respective 65 | owners. 66 | \end{center} 67 | \end{minipage} 68 | 69 | 70 | \begin{minipage}[t][2.7cm][b]{\textwidth} 71 | \begin{center} 72 | Document created with \LaTeX{}, using CMake as 73 | configuration manager, with a Python script to extract examples from the 74 | \code{ITK/Examples} directory. All code in this document compiled at 75 | the time of publication. 76 | \end{center} 77 | \end{minipage} 78 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/02-Cover-Book2.tex: -------------------------------------------------------------------------------- 1 | % We want this material to fit on two pages 2 | \small 3 | 4 | \chapter*{About the Cover} 5 | 6 | The cover image consists of a photograph of ABS plastic anatomical objects 7 | printed with a MakerBot Replicator 2X 3D printer. Mesh STL files were generated from the images with VTK. 8 | 9 | \begin{description} 10 | 11 | \item [Skull.] 12 | Given that the origins of ITK are with the Visible Human Project, it is 13 | appropriate that the skull was derived from the Visible Woman dataset. The 14 | skull was segmented with ITK from the Visible Woman head CT images with simple 15 | thresholding\footnote{\url{https://github.com/XiaoxiaoLiu/3D-printing}}. 16 | 17 | \item[Brain.] 18 | The brain model was segmented with ITK as described in the open science 19 | publication: 20 | \begin{quote} 21 | McCormick M, Liu X, Jomier J, Marion C and Ibanez L. ITK: 22 | enabling reproducible research and open science. Front. Neuroinform. 8:13. 23 | 2014. doi: 10.3389/fninf.2014.00013 24 | \end{quote} 25 | 26 | \end{description} 27 | 28 | \normalsize 29 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/03-Abstract-Book1.tex: -------------------------------------------------------------------------------- 1 | This book is a guide for developing software with ITK; it is the first of two 2 | companion books. This book covers building and installation, general 3 | architecture and design, as well as the process of contributing in the ITK 4 | community. The second book covers detailed design and functionality for 5 | reading and writing images, filtering, registration, segmentation, and 6 | performing statistical analysis. 7 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/03-Abstract-Book2.tex: -------------------------------------------------------------------------------- 1 | This book is a guide for developing software with ITK; it is the second of two 2 | companion books. This book covers detailed design and functionality for 3 | reading and writing images, filtering, registration, segmentation, and 4 | performing statistical analysis. The first book covers building and installation, general 5 | architecture and design, as well as the process of contributing in the ITK 6 | community. 7 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/03-Abstract-Common.tex: -------------------------------------------------------------------------------- 1 | \chapter*{Abstract} 2 | \noindent 3 | The National Library of Medicine Insight Segmentation and Registration Toolkit, 4 | shortened as the Insight Toolkit \href{https://itk.org}{(ITK)}, is an 5 | open-source software toolkit for performing registration and 6 | segmentation. \emph{Segmentation} is the process of identifying and 7 | classifying data found in a digitally sampled 8 | representation. Typically the sampled representation is an image 9 | acquired from such medical instrumentation as CT or MRI 10 | scanners. \emph{Registration} is the task of aligning or developing 11 | correspondences between data. For example, in the medical environment, 12 | a CT scan may be aligned with a MRI scan in order to combine the 13 | information contained in both. 14 | 15 | ITK is a cross-platform software. It uses a build environment known as 16 | \href{https://cmake.org}{CMake} to manage platform-specific project 17 | generation and compilation process in a platform-independent way. ITK is 18 | implemented in C++. ITK's implementation style employs generic programming, 19 | which involves the use of templates to generate, at compile-time, code that can 20 | be applied \emph{generically} to any class or data-type that supports the 21 | operations used by the template. The use of C++ templating means that the code 22 | is highly efficient and many issues are discovered at compile-time, rather than 23 | at run-time during program execution. It also means that many of ITK's 24 | algorithms can be applied to arbitrary spatial dimensions and pixel types. 25 | 26 | An automated wrapping system integrated with ITK generates an interface between 27 | C++ and a high-level programming language \href{https://www.python.org}{Python}. 28 | This enables rapid prototyping and faster exploration of ideas by shortening the 29 | edit-compile-execute cycle. In addition to automated 30 | wrapping, the \href{https://www.itk.org/Wiki/SimpleITK}{SimpleITK} project 31 | provides a streamlined interface to ITK that is available for C++, Python, Java, 32 | CSharp, R, Tcl and Ruby. 33 | 34 | Developers from around the world can use, debug, maintain, and extend the 35 | software because ITK is an open-source project. ITK uses a 36 | model of software development known as Extreme 37 | Programming. Extreme Programming collapses the usual software development 38 | methodology into a simultaneous iterative process of 39 | design-implement-test-release. The key features of Extreme Programming 40 | are communication and testing. Communication among the members of the 41 | ITK community is what helps manage the rapid evolution of the 42 | software. Testing is what keeps the software stable. An 43 | extensive testing process supported by the system known as 44 | \href{https://open.cdash.org/index.php?project=Insight}{CDash} 45 | measures the quality of ITK code on a daily basis. The ITK Testing Dashboard is 46 | updated continuously, reflecting the quality of the code at any moment. 47 | 48 | The most recent version of this document is available online at 49 | \url{https://itk.org/ItkSoftwareGuide.pdf}. 50 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/CommandLineArgumentsForExamples.tex: -------------------------------------------------------------------------------- 1 | \section{Command Line Arguments} 2 | 3 | This section summarizes the command line arguments used for running the 4 | examples presented all along the text. You may use these values for future 5 | reference as good initial guesses of parameters. Then play modifying the values 6 | in order to appreciate their effect on the results of the filter. 7 | 8 | For simplicity we assume here that the image files are in the same directory 9 | than the executables, or what is equivalent, that the executables are in the 10 | path and we are located in the data directory. 11 | 12 | \subsection{Filtering} 13 | 14 | BilateralImageFilter BrainProtonDensitySlice.png BilateralImageFilterOutput.png 6.0 5.0 15 | BinaryMinMax BrainProtonDensitySlice.png BinaryMinMaxOutput.png 10 0.25 1 128 16 | BinaryThresholdImageFilter BrainProtonDensitySlice.png BinaryThresholdImageFilterOutput.png 150 180 0 255 17 | BinomialBlurImageFilter BrainProtonDensitySlice.png BinomialBlurImageFilterOutput.png 5 18 | CastingImageFilter ** It is grouping several casting filters, not accepting parameters, not writing to files 19 | 20 | CurvatureAnisotropicDiffusionImageFilter BrainProtonDensitySlice.png CurvatureAnisotropicDiffusionImageFilterOutput.png 5 0.25 3.0 21 | CurvatureFlowImageFilter BrainProtonDensitySlice.png CurvatureFlowImageFilterOutput.png 5 0.25 22 | DanielssonDistanceMapImageFilter FivePoints.png DanielssonDistanceMapImageFilterOutput1.png DanielssonDistanceMapImageFilterOutput2.png DanielssonDistanceMapImageFilterOutput3.mha 23 | DiscreteGaussianImageFilter BrainProtonDensitySlice.png DiscreteGaussianImageFilterOutput.png 1.73 10 24 | GradientAnisotropicDiffusionImageFilter BrainProtonDensitySlice.png GradientAnisotropicDiffusionImageFilterOutput.png 15 0.1 3.0 25 | GradientMagnitudeImageFiler BrainProtonDensitySlice.png GradientMagnitudeImageFilerOutput.png 26 | GradientMagnitudeRecursiveGaussianImageFilter BrainProtonDensitySlice.png GradientMagnitudeRecursiveGaussianImageFilterOutput.png 5 27 | LaplacianImageFilter BrainProtonDensitySlice.png LaplacianImageFilterOutput.png 28 | MathematicalMorphologyBinaryFilters BrainProtonDensitySlice.png MathematicalMorphologyBinaryFiltersErode.png MathematicalMorphologyBinaryFiltersErodeDilate.png 150 180 29 | 30 | 31 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/DesignAndFunctionality/ConfidenceConnectedOnBrainWeb.tex: -------------------------------------------------------------------------------- 1 | \subsubsection{Application of the Confidence Connected filter on the Brain Web Data} 2 | This section shows some results obtained by applying the Confidence Connected filter on the BrainWeb database. The filter was applied on a 181 $\times$ 217 $\times$ 181 crosssection of the {\it brainweb165a10f17} dataset. The data is a MR T1 acquisition, with an intensity non-uniformity of 20\% and a slice thickness 1mm. The dataset may be obtained from 3 | \code{https://www.bic.mni.mcgill.ca/brainweb/} or 4 | \code{https://data.kitware.com/\#folder/5882712d8d777f4f3f3072df} 5 | 6 | The previous code was used in this example replacing the image dimension by 3. 7 | Gradient Anistropic diffusion was applied to smooth the image. The filter used 2 iterations, a time step of 0.05 and a conductance value of 3. The smoothed volume was then segmented using the Confidence Connected approach. Five seed points were used at coordinate locations (118,85,92), (63,87,94), (63,157,90), (111,188,90), (111,50,88). The ConfidenceConnnected filter used the parameters, a neighborhood radius of 2, 5 iterations and an $f$ of 2.5 (the same as in the previous example). The results were then rendered using VolView. 8 | 9 | Figure \ref{fig:3DregionGrowingScreenshot1} shows the rendered volume. Figure \ref{fig:SlicesBrainWeb} shows an axial, sagittal and a coronal slice of the volume. 10 | 11 | \begin{figure} 12 | \centering 13 | \includegraphics[width=0.6\textwidth]{3DregionGrowingScreenshot1.eps} 14 | \itkcaption[Whitematter Confidence Connected segmentation.]{White matter segmented using Confidence Connected region growing.} 15 | \label{fig:3DregionGrowingScreenshot1} 16 | \end{figure} 17 | 18 | \begin{figure} 19 | \centering 20 | \includegraphics[width=\textwidth]{SlicesBrainWebConfidenceConnected.eps} 21 | \itkcaption[Axial, sagittal, and coronal slice of Confidence Connected segmentation.]{Axial, sagittal and coronal slice segmented using Confidence Connected region growing.} 22 | \label{fig:SlicesBrainWeb} 23 | \end{figure} 24 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/DesignAndFunctionality/DeformableRegistration.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % 4 | % This file is included in Registration.tex 5 | % 6 | % Labels and section entries are defined in that file. 7 | % 8 | % 9 | % 10 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 | 12 | 13 | \subsection{FEM-Based Image Registration} 14 | \label{sec:FEMBasedImageRegistration} 15 | 16 | \begin{figure} 17 | \centering 18 | \includegraphics[width=0.44\textwidth]{DeformableRegistration1CheckerboardBefore.eps} 19 | \includegraphics[width=0.44\textwidth]{DeformableRegistration1CheckerboardAfter.eps} 20 | \itkcaption[FEM-based deformable registration results]{Checkerboard comparisons 21 | before and after FEM-based deformable registration.} 22 | \label{fig:DeformableRegistration1Output} 23 | \end{figure} 24 | 25 | \input{DeformableRegistration1.tex} 26 | 27 | Figure \ref{fig:DeformableRegistration1Output} presents the results of 28 | the FEM-based deformable registration applied to two time-separated 29 | slices of a living rat dataset. Checkerboard comparisons of the two 30 | images are shown before registration (left) and after registration 31 | (right). Both images were acquired from the same living rat, the 32 | first after inspiration of air into the lungs and the second after 33 | exhalation. Deformation occurs due to the relaxation of the diaphragm 34 | and the intercostal muscles, both of which exert force on the lung tissue 35 | and cause air to be expelled. 36 | 37 | The following is a documented sample parameter file that can be used with this 38 | deformable registration example. This example demonstrates the setup of a 39 | basic registration problem that does not use multi-resolution strategies. As a 40 | result, only one value for the parameters between \texttt{(\# of pixels per 41 | element)} and \texttt{(maximum iterations)} is necessary. In order to use a 42 | multi-resolution strategy, you would have to specify values for those 43 | parameters at each level of the pyramid. 44 | 45 | \small 46 | \verbatiminput{FiniteElementRegistrationParameters1.txt} 47 | \normalsize 48 | 49 | \subsection{BSplines Image Registration} 50 | \label{sec:BSplinesImageRegistration} 51 | \input{DeformableRegistration4.tex} 52 | 53 | 54 | \subsection{Level Set Motion for Deformable Registration} 55 | \label{sec:LevelSetMotionForDeformableRegistration} 56 | \input{DeformableRegistration5.tex} 57 | 58 | 59 | \subsection{BSplines Multi-Grid Image Registration} 60 | \label{sec:BSplinesMultiGridImageRegistration} 61 | \input{DeformableRegistration6.tex} 62 | 63 | 64 | \subsection{BSplines Multi-Grid Image Registration in 3D} 65 | \label{sec:BSplinesMultiGridImageRegistrationIn3D} 66 | \input{DeformableRegistration7.tex} 67 | 68 | 69 | \subsection{Image Warping with Kernel Splines} 70 | \label{sec:ImageWarpingWithKernelSplines} 71 | \input{LandmarkWarping2.tex} 72 | 73 | 74 | \subsection{Image Warping with BSplines} 75 | \label{sec:ImageWarpingWithBSplines} 76 | \input{BSplineWarping1.tex} 77 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/DesignAndFunctionality/DeformableRegistration4OnBrain.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % 4 | % This file is included in DeformableRegistration.tex 5 | % 6 | % Labels and section entries are defined in that file. 7 | % 8 | % 9 | % 10 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 | Let us register the deformed volumes generated by Thin plate warping in the 12 | previous example using DeformableRegistration4.cxx. Since ITK is in general 13 | N-dimensional, the only change in the example is to replace the 14 | \code{ImageDimension} by 3. 15 | 16 | The registration method uses B-splines and an LBFGS optimizer. The trace in 17 | Table. \ref{tab:LBFGStrace} prints the trace of the optimizer through the 18 | search space. 19 | 20 | \begin{table} 21 | \begin{center} 22 | \begin{tabular}{ | p{3cm} | p{1.8cm} | p{2.5cm} | p{4cm} | } 23 | \hline 24 | \textbf{Iteration} & 25 | \textbf{Function value} & 26 | \textbf{$\|G\|$} & 27 | \textbf{Step length} \\ 28 | \hline\hline 29 | 1 & 156.981 & 14.911 & 0.202 \\ 30 | 2 & 68.956 & 11.774 & 1.500 \\ 31 | 3 & 38.146 & 4.802 & 1.500 \\ 32 | 4 & 26.690 & 2.515 & 1.500 \\ 33 | 5 & 23.295 & 1.106 & 1.500\\ 34 | 6 & 21.454 & 1.032 & 1.500\\ 35 | 7 & 20.322 & 1.557 & 1.500\\ 36 | 8 & 19.751 & 0.594 & 1.500\\ 37 | \hline 38 | \end{tabular} 39 | \end{center} 40 | \itkcaption[LBFGS Optimizer trace]{LBFGS Optimizer trace. 41 | \label{tab:LBFGStrace}} 42 | \end{table} 43 | 44 | Here $\|G\|$ is the norm of the gradient at the current estimate of the 45 | minimum, $x$. ``Function Value" is the current value of the function, f(x). 46 | 47 | The resulting deformation field that maps the moving to the fixed image is 48 | shown in \ref{fig:DeformationFieldOutput}. A difference image of two slices 49 | before and after registration is shown in 50 | \ref{fig:DefRegistrationDiffScreenshot}. As can be seen from the figures, the 51 | deformation field is in close agreement to the one generated from the Thin 52 | plate spline warping. 53 | 54 | \begin{figure} 55 | \centering 56 | \includegraphics[width=0.6\textwidth]{ParaviewScreenshot5.eps} 57 | \itkcaption[Deformation field output]{Resulting deformation field that maps the moving image to the fixed image.} 58 | \label{fig:DeformationFieldOutput} 59 | \end{figure} 60 | 61 | \begin{figure} 62 | \centering 63 | \includegraphics[width=0.44\textwidth]{DeformableRegistration4DiffBefore.eps} 64 | \includegraphics[width=0.44\textwidth]{DeformableRegistration4DiffAfter.eps} 65 | \itkcaption[Difference image]{Difference image from a slice before and after registration.} 66 | \label{fig:DefRegistrationDiffScreenshot} 67 | \end{figure} 68 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/DesignAndFunctionality/FeatureExtractionMethods.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % 4 | % This file is included from the file Segmentation.tex 5 | % 6 | % Section tag and label are placed in this top file. 7 | % 8 | % 9 | % 10 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 | 12 | 13 | Extracting salient features from images is an important task on image 14 | processing. It is typically used for guiding segmentation methods, preparing 15 | data for registration methods, or as a mechanism for recognizing anatomical 16 | structures in images. The following section introduce some of the feature 17 | extraction methods available in ITK. 18 | 19 | 20 | \subsection{Hough Transform} 21 | \label{sec:HoughtTransform} 22 | 23 | The Hough transform is a widely used technique for detection of geometrical 24 | features in images. It is based on mapping the image into a parametric space 25 | in which it may be easier to identify if particular geometrical features are 26 | present in the image. The transformation is specific for each desired 27 | geometrical shape. 28 | 29 | \subsubsection{Line Extraction} 30 | \label{sec:HoughtLineExtraction} 31 | \input{HoughTransform2DLinesImageFilter.tex} 32 | 33 | 34 | \subsubsection{Circle Extraction} 35 | \label{sec:HoughtCircleExtraction} 36 | \input{HoughTransform2DCirclesImageFilter.tex} 37 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/DesignAndFunctionality/ImagePyramids.tex: -------------------------------------------------------------------------------- 1 | 2 | \index{itk::Multi\-Resolution\-Pyramid\-Image\-Filter} 3 | 4 | In ITK, the \doxygen{MultiResolutionPyramidImageFilter} can be used to create 5 | a sequence of reduced resolution images from the input image. The 6 | down-sampling is performed according to a user defined multi-resolution 7 | schedule. The schedule is specified as an \doxygen{Array2D} of integers, 8 | containing shrink factors for each multi-resolution level (rows) for each 9 | dimension (columns). For example, 10 | 11 | \small 12 | \begin{verbatim} 13 | 8 4 4 14 | 4 4 2 15 | \end{verbatim} 16 | \normalsize 17 | 18 | is a schedule for a three dimensional image for two multi-resolution levels. 19 | In the first (coarsest) level, the image is reduced by a factor of 8 20 | in the column dimension, factor of 4 in the row dimension and a factor 21 | of 4 in the slice dimension. In the second level, the image reduced 22 | by a factor of 4 in the column dimension, 4 in the row dimension and 23 | 2 in the slice dimension. 24 | 25 | \index{itk::Multi\-Resolution\-Pyramid\-Image\-Filter!SetNumberOfLevels()} 26 | 27 | The method \code{SetNumberOfLevels()} is used to set the number of 28 | resolution levels in the pyramid. This method will allocate memory 29 | for the schedule and generate a default table with the starting 30 | (coarsest) shrink factors for all dimensions set to $2^(M-1)$, 31 | where $M$ is the number of levels. All factors are halved for 32 | all subsequent levels. For example, if we set the number of levels 33 | to 4, the default schedule is then: 34 | 35 | \small 36 | \begin{verbatim} 37 | 8 8 8 38 | 4 4 4 39 | 2 2 2 40 | 1 1 1 41 | \end{verbatim} 42 | \normalsize 43 | 44 | \index{itk::Multi\-Resolution\-Pyramid\-Image\-Filter!GetSchedule()} 45 | \index{itk::Multi\-Resolution\-Pyramid\-Image\-Filter!SetSchedule()} 46 | \index{itk::Multi\-Resolution\-Pyramid\-Image\-Filter!SetStartingShrinkFactors()} 47 | 48 | The user can get a copy of the schedule using method \code{GetSchedule()}, 49 | make modifications, and reset it using method \code{SetSchedule()}. 50 | Alternatively, a user can create a default table by specifying the 51 | starting (coarsest) shrink factors using the method 52 | \code{SetStartingShrinkFactors()}. The factors for the subsequent 53 | levels are generated by halving the factor or setting it to one, 54 | depending on which is larger. For example, for a 4 level pyramid 55 | and starting factors of 8, 8 and 4, the generated schedule would be: 56 | 57 | \small 58 | \begin{verbatim} 59 | 8 8 4 60 | 4 4 2 61 | 2 2 1 62 | 1 1 1 63 | \end{verbatim} 64 | \normalsize 65 | 66 | When this filter is triggered by \code{Update()}, $M$ outputs are produced 67 | where the $m$-th output corresponds to the $m$-th level of the pyramid. 68 | To generate these images, Gaussian smoothing is first performed using a 69 | \doxygen{DiscreteGaussianImageFilter} with the variance set to $(s/2)^2$, 70 | where $s$ is the shrink factor. The smoothed images are then sub-sampled using 71 | a \doxygen{ShrinkImageFilter}. 72 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/DesignAndFunctionality/Visualization.tex: -------------------------------------------------------------------------------- 1 | \chapter{Visualization} 2 | 3 | Interface to visualization systems such as OpenGL and VTK. 4 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/MarketingMaterial.tex: -------------------------------------------------------------------------------- 1 | \newpage 2 | \newpage 3 | \thispagestyle{empty} 4 | \includegraphics[width=14cm]{flyer-vtk-textbook.eps} 5 | \newpage 6 | \thispagestyle{empty} 7 | \includegraphics[width=14cm]{flyer-cmake.eps} 8 | \newpage 9 | \thispagestyle{empty} 10 | \includegraphics[width=14cm]{flyer-itk.eps} 11 | \newpage 12 | \thispagestyle{empty} 13 | \includegraphics[width=14cm]{flyer-paraview.eps} 14 | \newpage 15 | \thispagestyle{empty} 16 | \includegraphics[width=14cm]{flyer-activiz.eps} 17 | \newpage 18 | \thispagestyle{empty} 19 | \includegraphics[width=14cm]{flyer-volview.eps} 20 | \newpage 21 | \thispagestyle{empty} 22 | \includegraphics[width=14cm]{flyer-polyviz.eps} 23 | \newpage 24 | \thispagestyle{empty} 25 | \includegraphics[width=14cm]{flyer-kitware.eps} 26 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/README.md: -------------------------------------------------------------------------------- 1 | Style Guidelines for the ITK Software Guide 2 | =========================================== 3 | 4 | 1. Make sure code is formatted according to ITK style guidelines; especially 5 | note the use of brackets `{}` and two-space indentation: 6 | 7 | ```cpp 8 | for () 9 | { 10 | yabba++; 11 | dabba++; 12 | do++; 13 | } 14 | ``` 15 | 16 | 2. `\doxygen{}` - The first occurrence of a class in a section should use this 17 | (or for those in sub-name spaces like `itk::Statistics::`) use 18 | `\subdoxygen{}`. 19 | 20 | Subsequent references to the class name should just use plain text (do not 21 | use `\code{}` or `\doxygen{}`). This is for readability (too much font 22 | changing drives the reader nuts). 23 | 24 | 3. `\code{}` - Method names (which should have a trailing `()`, e.g., 25 | `SetSigma()`); reserved C++ words (`for`, `while`, `switch`, etc.); simple 26 | types (`char`, `unsigned char`, `float`, etc.); and other content found in 27 | the ITK source code. 28 | 29 | 4. Section Naming - Use upper case for most words with the exception of 30 | articles and prepositions (e.g., *The Holy Iterator and ITK*). 31 | 32 | 5. Begin Latex sections in code with: 33 | ```cpp 34 | // Software Guide : BeginLatex 35 | // 36 | include the extra blank line with //, it makes formatting easier. End with 37 | // 38 | // Software Guide : EndLatex 39 | ``` 40 | 41 | 6. Include code snippets in code with: 42 | ```cpp 43 | // Software Guide : BeginCodeSnippet 44 | // Software Guide : EndCodeSnippet 45 | ``` 46 | Anything inside these gets put into the document; avoid blank lines or too 47 | much whitespace. Make sure any comments in included code are correct in 48 | terms of grammar, spelling, and are complete sentences. 49 | Note that **the code should not exceed 79 columns** or it will go out of 50 | margins in the PDF document. 51 | 52 | 7. Figure/table captions should be proper sentences and end in a period 53 | `.`. 54 | 55 | 8. Specific proper nouns like `Figure 1` or `Table 2` should be capitalized. A 56 | general, non-specific noun (*referring to the figure above*) should not 57 | be capitalized. Try to use the `~` symbol to connect `Figure~\ref{}` to 58 | avoid bad page breaks. 59 | 60 | 9. Don't forget to index. You may need hyphenation directives in long 61 | class/method names, etc. 62 | Avoid the use of the `{textbf}` at the end of the index. It looks nice on 63 | the printed version but breaks the hyperlinks in the PDF online version. 64 | 65 | 10. When possible, a short paragraph on motivation/theory prior to an example 66 | is good. It's not a theory book, so balance the amount of material 67 | carefully. 68 | -------------------------------------------------------------------------------- /SoftwareGuide/Latex/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | The ITK Software Guide 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 |
14 | 15 |
16 |
17 |
18 | 19 |

The ITK Software Guide

20 | 21 |

22 | The National Library of Medicine Insight Toolkit (ITK) 23 | is an open-source, cross-platform system for medical image processing. It 24 | provides medical imaging researchers with an extensive suite of leading-edge 25 | algorithms for registering, segmenting, analyzing, and quantifying medical 26 | data. It is used in thousands of research and commercial applications, from 27 | major labs to individual innovators. 28 |

29 | 30 |

31 | This ITK Software Guide is the handbook for developing software with ITK. 32 | It is divided into two companion books. 33 |

34 | 35 |

36 | The first book covers 37 | building and installation, general architecture and design, as well as the 38 | process of contributing in the ITK community. 39 |

40 | 41 |

42 | The second book covers 43 | detailed design and functionality for reading and writing images, filtering, 44 | registration, segmentation, and performing statistical analysis. 45 |

46 | 47 |

48 | Links to download the PDF versions can be found in the ITK 49 | software resources webpage. 50 | For an online, single PDF file compilation, please visit the 51 | ItkSoftwareGuide.pdf link. 52 |

53 | 54 |

55 | The books are also available in hard copy 56 | form.

57 | 58 |
59 |
60 |
61 | 62 |
63 |
64 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /SoftwareGuide/SoftwareGuideConfiguration.tex.in: -------------------------------------------------------------------------------- 1 | % Define where in the disk is the Insight source tree 2 | \def\ITKSOURCEDIR{@ITK_SOURCE_DIR@} 3 | \graphicspath{{@SoftwareGuide_SOURCE_DIR@/Art/}{@SoftwareGuide_BINARY_DIR@/Art/}{@SoftwareGuide_BINARY_DIR@/Art/Generated/}} 4 | \def\bibtexdatabasepath{@SoftwareGuide_SOURCE_DIR@/../Latex/Insight} 5 | \def\ITKVERSIONMAJORMINOR{@ITK_VERSION_MAJOR@.@ITK_VERSION_MINOR@} 6 | \def\ITKVERSIONMAJORMINORPATCH{@ITK_VERSION_MAJOR@.@ITK_VERSION_MINOR@.@ITK_VERSION_PATCH@} 7 | 8 | \newif\ifitkPrintedVersion 9 | @SoftwareGuide_PRINTED_VERSION_LATEX_BOOLEAN@ 10 | 11 | \newif\ifitkDraftWatermark 12 | @SoftwareGuide_DRAFT_WATERMARK_LATEX_BOOLEAN@ 13 | 14 | \newif\ifitkFullVersion 15 | \itkFullVersiontrue 16 | 17 | % Define command to make reference to on-line Doxygen documentation 18 | \newcommand{\doxygen}[1]{ 19 | \href{https://www.itk.org/Doxygen/html/classitk_1_1#1.html}{\code{itk::#1}}} 20 | 21 | % Define command to make reference to on-line Doxygen documentation 22 | \newcommand{\subdoxygen}[2]{ 23 | \href{https://www.itk.org/Doxygen/html/classitk_1_1#1_1_1#2.html}{\code{itk::#1::#2}}} 24 | 25 | % Define command for the standard comment introducing classes with similar functionalities 26 | \newcommand{\relatedClasses}{ 27 | \textbf{The following classes provide similar functionality:}} 28 | -------------------------------------------------------------------------------- /Utilities/Hooks/commit-msg: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | #========================================================================== 3 | # 4 | # Copyright NumFOCUS 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # https://www.apache.org/licenses/LICENSE-2.0.txt 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | #==========================================================================*/ 19 | 20 | egrep-q() { 21 | egrep "$@" >/dev/null 2>/dev/null 22 | } 23 | 24 | # Prepare a copy of the message: 25 | # - strip comment lines 26 | # - stop at "diff --git" (git commit -v) 27 | commit_msg="$GIT_DIR/COMMIT_MSG" 28 | sed -n -e '/^#/d' -e '/^diff --git/q' -e 'p;d' "$1" > "$commit_msg" 29 | 30 | die() { 31 | echo 'commit-msg hook failure' 1>&2 32 | echo '-----------------------' 1>&2 33 | echo '' 1>&2 34 | echo "$@" 1>&2 35 | echo ' 36 | To continue editing, run the command 37 | git commit -e -F '"$commit_msg"' 38 | (assuming your working directory is at the top).' 1>&2 39 | exit 1 40 | } 41 | 42 | # Check the first line for a standard prefix. 43 | cat "$commit_msg" | 44 | while IFS='' read line; do 45 | # Look for the first non-empty line. 46 | len=$(echo -n "$line" | wc -c) 47 | if test $len -gt 0; then 48 | # Look for valid prefixes. 49 | echo "$line" | 50 | egrep-q '^(Merge|Revert|BUG:|COMP:|DOC:|ENH:|PERF:|STYLE:|WIP:) ' || 51 | die 'Start ITK commit messages with a standard prefix (and a space): 52 | BUG: - fix for runtime crash or incorrect result 53 | COMP: - compiler error or warning fix 54 | DOC: - documentation change 55 | ENH: - new functionality 56 | PERF: - performance improvement 57 | STYLE: - no logic impact (indentation, comments) 58 | WIP: - Work In Progress not ready for merge 59 | To reference GitHub issue XXXX, add "Issue #XXXX" to the commit message. 60 | If the issue addresses an open issue, add "Closes #XXXX" to the message.' 61 | 62 | # Reject bug number reference that CDash rejects. 63 | echo "$line" | 64 | egrep-q '^BUG: [0-9][0-9]*\.' && 65 | die 'Do not put a "." after the bug number: 66 | 67 | '"$line" 68 | 69 | # Done. Skip rest of lines. 70 | break 71 | fi 72 | done && 73 | rm -f "$commit_msg" || exit 1 74 | -------------------------------------------------------------------------------- /Utilities/Hooks/pre-commit: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | #========================================================================== 3 | # 4 | # Copyright NumFOCUS 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # https://www.apache.org/licenses/LICENSE-2.0.txt 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | #==========================================================================*/ 19 | 20 | egrep-q() { 21 | egrep "$@" >/dev/null 2>/dev/null 22 | } 23 | 24 | die() { 25 | echo 'pre-commit hook failure' 1>&2 26 | echo '-----------------------' 1>&2 27 | echo '' 1>&2 28 | echo "$@" 1>&2 29 | exit 1 30 | } 31 | 32 | #----------------------------------------------------------------------------- 33 | 34 | # Check that developer setup is up-to-date. 35 | lastSetupForDevelopment=$(git config --get hooks.SetupForDevelopment || echo 0) 36 | eval $(grep '^SetupForDevelopment_VERSION=' "${BASH_SOURCE%/*}/../SetupForDevelopment.sh") 37 | top_level_dir=$(git rev-parse --show-toplevel) 38 | test -n "$SetupForDevelopment_VERSION" || SetupForDevelopment_VERSION=0 39 | if test $lastSetupForDevelopment -lt $SetupForDevelopment_VERSION; then 40 | die "Developer setup in this work tree is out of date. Please re-run 41 | 42 | \"$top_level_dir/Utilities/SetupForDevelopment.sh\" 43 | " 44 | fi 45 | -------------------------------------------------------------------------------- /Utilities/Hooks/prepare-commit-msg: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | #========================================================================== 3 | # 4 | # Copyright NumFOCUS 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # https://www.apache.org/licenses/LICENSE-2.0.txt 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | #==========================================================================*/ 19 | 20 | egrep-q() { 21 | egrep "$@" >/dev/null 2>/dev/null 22 | } 23 | 24 | # First argument is file containing commit message. 25 | commit_msg="$1" 26 | 27 | # Check for our extra instructions. 28 | egrep-q "^# Start ITK commit messages" -- "$commit_msg" && return 0 29 | 30 | # Insert our extra instructions. 31 | commit_msg_tmp="$commit_msg.$$" 32 | instructions='#\ 33 | # Start ITK commit messages with a standard prefix (and a space):\ 34 | # BUG: - fix for runtime crash or incorrect result\ 35 | # COMP: - compiler error or warning fix\ 36 | # DOC: - documentation change\ 37 | # ENH: - new functionality\ 38 | # PERF: - performance improvement\ 39 | # STYLE: - no logic impact (indentation, comments)\ 40 | # WIP: - Work In Progress not ready for merge\ 41 | # To have an automatic link created between this patch set\ 42 | # and the issue referenced at issues.itk.org, simply\ 43 | # add ITK-#### in somewhere in the commit message. 44 | #' && 45 | sed '/^# On branch.*$/ a\ 46 | '"$instructions"' 47 | /^# Not currently on any branch.*$/ a\ 48 | '"$instructions"' 49 | ' "$commit_msg" > "$commit_msg_tmp" && 50 | mv "$commit_msg_tmp" "$commit_msg" 51 | -------------------------------------------------------------------------------- /Utilities/SetupForDevelopment.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | #========================================================================== 3 | # 4 | # Copyright NumFOCUS 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # https://www.apache.org/licenses/LICENSE-2.0.txt 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | #==========================================================================*/ 19 | 20 | cd "${BASH_SOURCE%/*}/.." && 21 | Utilities/GitSetup/setup-user && echo && 22 | Utilities/GitSetup/setup-hooks && echo && 23 | Utilities/GitSetup/setup-git-aliases && echo && 24 | (Utilities/GitSetup/setup-upstream || 25 | echo 'Failed to setup origin. Run this again to retry.') && echo && 26 | (Utilities/GitSetup/setup-github || 27 | echo 'Failed to setup GitHub. Run this again to retry.') && echo && 28 | Utilities/GitSetup/tips && 29 | Utilities/GitSetup/github-tips 30 | 31 | # Rebase master by default 32 | git config rebase.stat true 33 | git config branch.master.rebase true 34 | 35 | # Disable old Gerrit hooks 36 | hook=$(git config --get hooks.GerritId) && 37 | if "$hook"; then 38 | echo ' 39 | ITK has migrated from Gerrit to GitHub for code reviews. 40 | 41 | Disabling the GerritId hook that adds a "Change-Id" footer to commit 42 | messages for interaction with Gerrit. Also, removing the "gerrit" remote.' && 43 | git config hooks.GerritId false 44 | git config --get remote.gerrit.url > /dev/null && \ 45 | git remote remove gerrit 46 | fi 47 | 48 | # Record the version of this setup so Hooks/pre-commit can check it. 49 | SetupForDevelopment_VERSION=1 50 | git config hooks.SetupForDevelopment ${SetupForDevelopment_VERSION} 51 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/BinaryThresholdTransferFunction.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 2550 4500 3300 4875 11 | 4 1 0 50 0 0 12 0.0000 4 135 480 2925 4650 Lower\001 12 | 4 1 0 50 0 0 12 0.0000 4 135 750 2925 4875 Threshold\001 13 | -6 14 | 6 3750 4500 4500 4875 15 | 4 1 0 50 0 0 12 0.0000 4 180 465 4125 4650 Upper\001 16 | 4 1 0 50 0 0 12 0.0000 4 135 750 4125 4875 Threshold\001 17 | -6 18 | 6 1800 1200 2475 1650 19 | 4 0 0 50 0 0 12 0.0000 4 180 525 1800 1350 Output\001 20 | 4 0 0 50 0 0 12 0.0000 4 180 675 1800 1575 Intensity\001 21 | -6 22 | 6 5175 4425 5850 4875 23 | 4 0 0 50 0 0 12 0.0000 4 180 390 5175 4575 Input\001 24 | 4 0 0 50 0 0 12 0.0000 4 180 675 5175 4800 Intensity\001 25 | -6 26 | 6 825 3450 1425 3825 27 | 4 0 0 50 0 0 12 0.0000 4 135 600 825 3600 Outside\001 28 | 4 0 0 50 0 0 12 0.0000 4 135 450 825 3825 Value\001 29 | -6 30 | 6 900 1725 1425 2100 31 | 4 0 0 50 0 0 12 0.0000 4 135 465 900 1875 Inside\001 32 | 4 0 0 50 0 0 12 0.0000 4 135 450 900 2100 Value\001 33 | -6 34 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1650 1875 50 50 1650 1875 1700 1875 35 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1650 3600 50 50 1650 3600 1700 3600 36 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 2925 4350 50 50 2925 4350 2975 4350 37 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 4125 4350 50 50 4125 4350 4175 4350 38 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 39 | 2925 3750 2925 4275 40 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 41 | 4125 3750 4125 4275 42 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 43 | 2850 1875 1725 1875 44 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 45 | 0 0 1.00 60.00 120.00 46 | 1650 4350 1650 1350 47 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 48 | 0 0 1.00 60.00 120.00 49 | 1650 4350 5475 4350 50 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 6 51 | 2250 3600 2925 3600 2925 1875 4125 1875 4125 3600 5100 3600 52 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 53 | 2175 3600 1725 3600 54 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/CompositeExamplePipeline.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 Produced by xfig version 3.2.5-alpha5 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 1575 2295 2475 2610 11 | 5 1 0 1 0 7 50 -1 -1 0.000 0 0 0 0 2025.000 2475.000 2025 2340 2160 2475 2025 2610 12 | 1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 2025 2475 64 64 2025 2475 2089 2475 13 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 14 | 1 1 1.00 60.00 120.00 15 | 1575 2475 1935 2475 16 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 17 | 1 1 1.00 60.00 120.00 18 | 2160 2475 2475 2475 19 | -6 20 | 6 7650 2295 8550 2610 21 | 5 1 0 1 0 7 50 -1 -1 0.000 0 0 0 0 8100.000 2475.000 8100 2340 8235 2475 8100 2610 22 | 1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 8100 2475 64 64 8100 2475 8164 2475 23 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 24 | 1 1 1.00 60.00 120.00 25 | 7650 2475 8010 2475 26 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 27 | 1 1 1.00 60.00 120.00 28 | 8235 2475 8550 2475 29 | -6 30 | 6 2833 2869 7346 3330 31 | 6 3733 2969 4581 3240 32 | 5 1 0 1 0 7 50 -1 -1 0.000 0 0 0 0 4183.000 3105.000 4183 2970 4318 3105 4183 3240 33 | 1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 4183 3105 64 64 4183 3105 4247 3105 34 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 35 | 1 1 1.00 60.00 120.00 36 | 3733 3105 4093 3105 37 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 38 | 1 1 1.00 60.00 120.00 39 | 4318 3105 4581 3105 40 | -6 41 | 6 5596 2969 6433 3240 42 | 5 1 0 1 0 7 50 -1 -1 0.000 0 0 0 0 5983.000 3105.000 5983 2970 6118 3105 5983 3240 43 | 1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 5983 3105 64 64 5983 3105 6047 3105 44 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 45 | 1 1 1.00 60.00 120.00 46 | 5596 3105 5893 3105 47 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 48 | 1 1 1.00 60.00 120.00 49 | 6118 3105 6433 3105 50 | -6 51 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 6896 3094 450 225 6446 2869 7346 3319 52 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 3283 3105 450 225 2833 2880 3733 3330 53 | 1 2 0 1 0 7 60 -1 -1 0.000 1 0.0000 5093 3105 496 206 4597 3105 5589 3105 54 | 4 0 0 50 -1 0 12 0.0000 4 135 705 2968 3150 Gradient\001 55 | 4 0 0 50 -1 0 12 0.0000 4 150 630 6613 3150 Rescale\001 56 | 4 1 0 50 -1 0 12 0.0000 4 150 825 5095 3166 Threshold\001 57 | -6 58 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 1125 2475 450 225 675 2250 1575 2700 59 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 9000 2475 450 225 8550 2250 9450 2700 60 | 2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 61 | 2475 2475 7650 2475 62 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 3 63 | 7345 3090 7650 3090 7650 2475 64 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 65 | 7785 3735 7785 1800 2205 1800 2205 3735 7785 3735 66 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 67 | 1 1 1.00 60.00 120.00 68 | 2475 2475 2475 3105 2833 3105 69 | 4 0 0 50 -1 0 12 0.0000 4 135 570 855 2520 Reader\001 70 | 4 0 0 50 -1 0 12 0.0000 4 135 510 8820 2520 Writer\001 71 | 4 0 0 50 -1 0 12 0.0000 4 195 2535 3780 2160 CompositeExampleImageFilter\001 72 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/CompositeFilterStages.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 Produced by xfig version 3.2.5-alpha5 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 1575 2295 2475 2610 11 | 5 1 0 1 0 7 50 -1 -1 0.000 0 0 0 0 2025.000 2475.000 2025 2340 2160 2475 2025 2610 12 | 1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 2025 2475 64 64 2025 2475 2089 2475 13 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 14 | 1 1 1.00 60.00 120.00 15 | 1575 2475 1935 2475 16 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 17 | 1 1 1.00 60.00 120.00 18 | 2160 2475 2475 2475 19 | -6 20 | 6 3375 2295 4275 2610 21 | 5 1 0 1 0 7 50 -1 -1 0.000 0 0 0 0 3825.000 2475.000 3825 2340 3960 2475 3825 2610 22 | 1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 3825 2475 64 64 3825 2475 3889 2475 23 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 24 | 1 1 1.00 60.00 120.00 25 | 3375 2475 3735 2475 26 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 27 | 1 1 1.00 60.00 120.00 28 | 3960 2475 4275 2475 29 | -6 30 | 6 5175 2295 6075 2610 31 | 5 1 0 1 0 7 50 -1 -1 0.000 0 0 0 0 5625.000 2475.000 5625 2340 5760 2475 5625 2610 32 | 1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 5625 2475 64 64 5625 2475 5689 2475 33 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 34 | 1 1 1.00 60.00 120.00 35 | 5175 2475 5535 2475 36 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 37 | 1 1 1.00 60.00 120.00 38 | 5760 2475 6075 2475 39 | -6 40 | 6 6975 2295 7875 2610 41 | 5 1 0 1 0 7 50 -1 -1 0.000 0 0 0 0 7425.000 2475.000 7425 2340 7560 2475 7425 2610 42 | 1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 7425 2475 64 64 7425 2475 7489 2475 43 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 44 | 1 1 1.00 60.00 120.00 45 | 6975 2475 7335 2475 46 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 47 | 1 1 1.00 60.00 120.00 48 | 7560 2475 7875 2475 49 | -6 50 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 1125 2475 450 225 675 2250 1575 2700 51 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 2925 2475 450 225 2475 2250 3375 2700 52 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 4725 2475 450 225 4275 2250 5175 2700 53 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 8325 2475 450 225 7875 2250 8775 2700 54 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 4725 2475 2340 900 2385 1575 7065 3375 55 | 1 2 0 1 0 7 50 -1 -1 0.000 1 0.0000 6538 2464 450 225 6088 2239 6988 2689 56 | 4 0 0 50 -1 0 12 0.0000 4 150 555 855 2520 Source\001 57 | 4 0 0 50 -1 0 12 0.0000 4 195 555 2655 2520 Stage1\001 58 | 4 0 0 50 -1 0 12 0.0000 4 180 555 4455 2520 Stage2\001 59 | 4 0 0 50 -1 0 12 0.0000 4 165 375 8145 2520 Sink\001 60 | 4 0 0 50 -1 0 12 0.0000 4 180 885 4320 1890 Composite\001 61 | 4 0 0 50 -1 0 12 0.0000 4 180 690 6255 2520 Stage...n\001 62 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/DataPipelineOneConnection.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 5 1 0 1 0 7 50 0 -1 0.000 0 0 0 0 2376.142 3919.443 2370 3797 2498 3906 2373 4042 11 | 6 900 3735 1980 4095 12 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 1440 3915 540 180 1440 3915 1980 4095 13 | 4 1 0 50 0 0 12 0.0000 4 135 540 1423 3970 Reader\001 14 | -6 15 | 6 2846 3688 3950 4150 16 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 3398 3919 552 231 3398 3919 3950 4150 17 | 4 1 0 50 0 0 12 0.0000 4 135 720 3387 3890 Gaussian\001 18 | 4 1 0 50 0 0 12 0.0000 4 135 405 3404 4073 Filter\001 19 | -6 20 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 2362 3909 50 50 2362 3909 2412 3909 21 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 22 | 0 0 1.00 60.00 120.00 23 | 1981 3913 2370 3909 24 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 25 | 0 0 1.00 60.00 120.00 26 | 2494 3913 2846 3917 27 | 4 0 0 50 0 0 12 0.0000 4 180 465 2194 3705 Image\001 28 | 4 1 0 50 0 0 8 0.0000 4 120 735 3421 4282 ProcessObject\001 29 | 4 1 0 50 0 0 8 0.0000 4 120 570 2407 4218 DataObject\001 30 | 4 1 0 50 0 0 8 0.0000 4 120 735 1434 4285 ProcessObject\001 31 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/DataPipelineUpdate.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 5 1 0 1 0 7 50 0 -1 0.000 0 0 0 0 2376.142 3919.443 2370 3797 2498 3906 2373 4042 11 | 5 1 0 1 0 7 50 0 -1 0.000 0 0 0 0 4295.142 3915.443 4289 3793 4417 3902 4292 4038 12 | 6 900 3735 1980 4095 13 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 1440 3915 540 180 1440 3915 1980 4095 14 | 4 0 0 50 0 0 12 0.0000 4 135 540 1209 3974 Reader\001 15 | -6 16 | 6 2846 3688 3950 4150 17 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 3398 3919 552 231 3398 3919 3950 4150 18 | 4 1 0 50 0 0 12 0.0000 4 135 405 3419 4078 Filter\001 19 | 4 1 0 50 0 0 12 0.0000 4 135 720 3427 3897 Gaussian\001 20 | -6 21 | 6 4619 3734 5723 4090 22 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 5171 3912 552 178 5171 3912 5723 4090 23 | 4 1 0 50 0 0 12 0.0000 4 180 975 5188 3967 Thresholding\001 24 | -6 25 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 2362 3909 50 50 2362 3909 2412 3909 26 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 4300 3909 50 50 4300 3909 4350 3909 27 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 5984 3900 50 50 5984 3900 6034 3900 28 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 29 | 0 0 1.00 60.00 120.00 30 | 1981 3913 2370 3909 31 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 32 | 0 0 1.00 60.00 120.00 33 | 2494 3913 2846 3917 34 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 35 | 0 0 1.00 60.00 120.00 36 | 3950 3913 4296 3913 37 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 38 | 0 0 1.00 60.00 120.00 39 | 4418 3908 4628 3912 40 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 41 | 0 0 1.00 60.00 120.00 42 | 5724 3904 5988 3904 43 | 2 1 2 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2 44 | 5183 4089 5183 5911 45 | 2 1 2 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2 46 | 3395 4144 3395 5863 47 | 2 1 2 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2 48 | 1422 4096 1422 5781 49 | 2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2 50 | 0 0 1.00 60.00 120.00 51 | 5183 4404 3402 4404 52 | 2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2 53 | 0 0 1.00 60.00 120.00 54 | 3374 4698 1416 4698 55 | 2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2 56 | 0 0 1.00 60.00 120.00 57 | 1431 5376 3389 5376 58 | 2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2 59 | 0 0 1.00 60.00 120.00 60 | 3402 5602 5183 5602 61 | 4 0 0 50 0 0 12 0.0000 4 180 465 2194 3705 Image\001 62 | 4 0 0 50 0 0 12 0.0000 4 180 465 4114 3724 Image\001 63 | 4 0 0 50 0 0 12 0.0000 4 180 465 5786 3735 Image\001 64 | 4 0 0 50 0 0 12 0.0000 4 180 705 5272 4315 Update()\001 65 | 4 0 0 50 0 0 12 0.0000 4 180 1230 1491 5302 GenerateData()\001 66 | 4 0 0 50 0 0 12 0.0000 4 180 705 1483 4939 Update()\001 67 | 4 0 0 50 0 0 12 0.0000 4 180 1230 5245 5801 GenerateData()\001 68 | 4 0 0 50 0 0 12 0.0000 4 180 1230 3477 5548 GenerateData()\001 69 | 4 0 0 50 0 0 12 0.0000 4 180 705 3450 4630 Update()\001 70 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/FuzzyConnectednessClassDiagram1.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 4650 900 7425 1350 11 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 12 | 4650 900 7425 900 7425 1350 4650 1350 4650 900 13 | 4 1 0 50 0 12 12 0.0000 4 180 2415 6000 1200 itk::ImageToImageFilter\001 14 | -6 15 | 6 3375 1875 8325 2325 16 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 17 | 3375 1875 8325 1875 8325 2325 3375 2325 3375 1875 18 | 4 1 0 50 0 12 12 0.0000 4 180 4620 5850 2175 itk::SimpleFuzzyConnectednessImageFilterBase\001 19 | -6 20 | 6 525 2925 5775 3375 21 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 22 | 525 2925 5775 2925 5775 3375 525 3375 525 2925 23 | 4 1 0 50 0 12 12 0.0000 4 180 4830 3150 3225 itk::SimpleFuzzyConnectednessScalarImageFilter\001 24 | -6 25 | 6 6225 2925 11175 3375 26 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 27 | 6225 2925 11175 2925 11175 3375 6225 3375 6225 2925 28 | 4 1 0 50 0 12 12 0.0000 4 180 4515 8700 3225 itk::SimpleFuzzyConnectednessRGBImageFilter\001 29 | -6 30 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 31 | 0 0 1.00 60.00 120.00 32 | 6000 1350 6000 1875 33 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 34 | 0 0 1.00 60.00 120.00 35 | 7200 2325 7200 2925 36 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 37 | 0 0 1.00 60.00 120.00 38 | 4350 2325 4350 2925 39 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/FuzzyConnectednessCollaborationDiagram1.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 1500 3225 2550 4125 11 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 2025 3675 525 450 2025 3675 2550 4125 12 | 4 1 0 50 0 0 12 0.0000 0 180 390 2025 3600 Input\001 13 | 4 1 0 50 0 0 12 0.0000 0 180 750 2025 3825 itk::Image\001 14 | -6 15 | 6 8100 3225 9150 4125 16 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 8625 3675 525 450 8625 3675 9150 4125 17 | 4 1 0 50 0 0 12 0.0000 0 180 525 8625 3600 Output\001 18 | 4 1 0 50 0 0 12 0.0000 0 180 750 8625 3825 itk::Image\001 19 | -6 20 | 6 5400 2175 7200 2775 21 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 6300 2475 900 300 6300 2475 7200 2775 22 | 4 1 0 50 0 0 12 0.0000 0 135 1515 6300 2550 Estimated Variance\001 23 | -6 24 | 6 3450 2175 5250 2775 25 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 4350 2475 900 300 4350 2475 5250 2775 26 | 4 1 0 50 0 0 12 0.0000 0 135 1260 4350 2550 Estimated Mean\001 27 | -6 28 | 6 3450 4575 5250 5175 29 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 4350 4875 900 300 4350 4875 5250 5175 30 | 4 1 0 50 0 0 12 0.0000 0 135 1350 4350 4950 Other Parameters\001 31 | -6 32 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 33 | 7275 4125 7275 3225 3375 3225 3375 4125 7275 4125 34 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 35 | 0 0 1.00 60.00 120.00 36 | 2550 3675 3375 3675 37 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 38 | 0 0 1.00 60.00 120.00 39 | 7275 3675 8100 3675 40 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 41 | 0 0 1.00 60.00 120.00 42 | 4350 2775 4350 3225 43 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 44 | 0 0 1.00 60.00 120.00 45 | 6300 2775 6300 3225 46 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 47 | 0 0 1.00 60.00 120.00 48 | 4350 4575 4350 4125 49 | 4 1 0 50 0 12 12 0.0000 4 180 3045 5325 3750 FuzzyConnectednessImageFilter\001 50 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/FuzzyVoronoiDeformableCollaborationDiagram1.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 150 2400 1200 3300 11 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 675 2850 525 450 675 2850 1200 3300 12 | 4 1 0 50 0 0 12 0.0000 0 180 390 675 2775 Input\001 13 | 4 1 0 50 0 0 12 0.0000 0 180 750 675 3000 itk::Image\001 14 | -6 15 | 6 6075 2400 7125 3300 16 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 6600 2850 525 450 6600 2850 7125 3300 17 | 4 1 0 50 0 0 12 0.0000 0 180 495 6600 2775 Binary\001 18 | 4 1 0 50 0 0 12 0.0000 0 180 750 6600 3000 itk::Image\001 19 | -6 20 | 6 1725 2400 5625 3300 21 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 22 | 5625 3300 5625 2400 1725 2400 1725 3300 5625 3300 23 | 4 1 0 50 0 0 12 0.0000 0 180 3465 3675 2925 FuzzyConnectedness + VoronoiSegmentation\001 24 | -6 25 | 6 7575 2400 9750 3300 26 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 27 | 9750 3300 9750 2400 7575 2400 7575 3300 9750 3300 28 | 4 1 0 50 0 0 12 0.0000 0 135 1410 8700 2925 Deformable Model\001 29 | -6 30 | 6 10200 2400 11250 3300 31 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 10725 2850 525 450 10725 2850 11250 3300 32 | 4 1 0 50 0 0 12 0.0000 0 180 525 10725 2775 Output\001 33 | 4 1 0 50 0 0 12 0.0000 0 180 750 10725 3000 itk::Image\001 34 | -6 35 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 36 | 0 0 1.00 60.00 120.00 37 | 1200 2850 1725 2850 38 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 39 | 0 0 1.00 60.00 120.00 40 | 5625 2850 6075 2850 41 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 42 | 0 0 1.00 60.00 120.00 43 | 7125 2850 7575 2850 44 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 45 | 0 0 1.00 60.00 120.00 46 | 9750 2850 10200 2850 47 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 4 48 | 0 0 1.00 60.00 120.00 49 | 1425 2850 1425 3825 8625 3825 8625 3300 50 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/Histogram.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 1800 225 4500 2925 11 | 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 12 | 1800 225 2700 225 2700 1125 1800 1125 1800 225 13 | 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 14 | 1800 1125 2700 1125 2700 2025 1800 2025 1800 1125 15 | 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 16 | 1800 2025 2700 2025 2700 2925 1800 2925 1800 2025 17 | 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 18 | 2700 225 3600 225 3600 1125 2700 1125 2700 225 19 | 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 20 | 2700 1125 3600 1125 3600 2025 2700 2025 2700 1125 21 | 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 22 | 2700 2025 3600 2025 3600 2925 2700 2925 2700 2025 23 | 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 24 | 3600 225 4500 225 4500 1125 3600 1125 3600 225 25 | 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 26 | 3600 1125 4500 1125 4500 2025 3600 2025 3600 1125 27 | 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 28 | 3600 2025 4500 2025 4500 2925 3600 2925 3600 2025 29 | -6 30 | 3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 8 31 | 1 1 1.00 60.00 120.00 32 | 2340 900 4050 810 4320 1395 4005 1845 2520 1665 2430 2340 33 | 2565 2655 4050 2655 34 | 0.000 1.000 1.000 1.000 1.000 1.000 1.000 0.000 35 | 4 0 0 50 -1 0 12 0.0000 4 135 225 1440 405 2.6\001 36 | 4 0 0 50 -1 0 12 0.0000 4 135 225 1440 1305 4.6\001 37 | 4 0 0 50 -1 0 12 0.0000 4 135 225 3015 1620 0.5\001 38 | 4 0 0 50 -1 0 12 0.0000 4 135 225 3015 2520 2.5\001 39 | 4 0 0 50 -1 0 12 0.0000 4 135 225 2115 720 0.0\001 40 | 4 0 0 50 -1 0 12 0.0000 4 135 225 2115 1665 2.0\001 41 | 4 0 0 50 -1 0 12 0.0000 4 135 225 2115 2520 5.0\001 42 | 4 0 0 50 -1 0 12 0.0000 4 135 225 3015 720 2.0\001 43 | 4 0 0 50 -1 0 12 0.0000 4 135 225 3960 720 3.0\001 44 | 4 0 0 50 -1 0 12 0.0000 4 135 225 3960 1620 1.0\001 45 | 4 0 0 50 -1 0 12 0.0000 4 135 225 3960 2520 0.0\001 46 | 4 0 0 50 -1 0 12 0.0000 4 135 225 2745 135 3.1\001 47 | 4 0 0 50 -1 0 12 0.0000 4 135 225 3645 135 5.1\001 48 | 4 0 0 50 -1 0 12 0.0000 4 135 225 4545 135 7.1\001 49 | 4 0 0 50 -1 0 12 0.0000 4 135 225 1845 135 1.1\001 50 | 4 0 0 50 -1 0 12 0.0000 4 135 225 1440 2205 6.6\001 51 | 4 0 0 50 -1 0 12 0.0000 4 135 225 1485 3150 8.6\001 52 | 4 0 0 50 -1 0 12 0.0000 4 180 420 1845 450 (0, 0)\001 53 | 4 0 0 50 -1 0 12 0.0000 4 180 420 3690 2250 (2, 2)\001 54 | 4 0 0 50 -1 0 12 0.0000 4 180 420 1890 1350 (0, 1)\001 55 | 4 0 0 50 -1 0 12 0.0000 4 180 420 1890 2250 (0, 2)\001 56 | 4 0 0 50 -1 0 12 0.0000 4 180 420 2790 450 (1, 0)\001 57 | 4 0 0 50 -1 0 12 0.0000 4 180 420 3645 450 (2, 0)\001 58 | 4 0 0 50 -1 0 12 0.0000 4 180 420 2790 1350 (1, 1)\001 59 | 4 0 0 50 -1 0 12 0.0000 4 180 420 3690 1350 (2, 1)\001 60 | 4 0 0 50 -1 0 12 0.0000 4 180 420 2745 2250 (1, 2)\001 61 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/HybridSegmentationEngine1.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 4875 2775 6900 3450 11 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 12 | 4875 2775 6900 2775 6900 3450 4875 3450 4875 2775 13 | 4 1 0 50 0 0 12 0.0000 0 135 885 6000 3075 Deformable\001 14 | 4 1 0 50 0 0 12 0.0000 0 180 975 6000 3300 Model (DM)\001 15 | -6 16 | 6 4875 3825 6900 4500 17 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 18 | 4875 3825 6900 3825 6900 4500 4875 4500 4875 3825 19 | 4 1 0 50 0 0 12 0.0000 0 135 1485 5925 4125 Gibb Prior / Markov\001 20 | 4 1 0 50 0 0 12 0.0000 0 180 1620 5925 4350 Random Field (MRF)\001 21 | -6 22 | 6 4875 4800 6900 5400 23 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 24 | 4875 4800 6900 4800 6900 5400 4875 5400 4875 4800 25 | 4 1 0 50 0 0 12 0.0000 0 135 600 5925 5025 Voronoi\001 26 | 4 1 0 50 0 0 12 0.0000 0 180 645 5925 5250 Diagram\001 27 | -6 28 | 6 4875 5700 6900 6300 29 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 30 | 4875 5700 6900 5700 6900 6300 4875 6300 4875 5700 31 | 4 1 0 50 0 0 12 0.0000 0 180 465 5925 5925 Fuzzy\001 32 | 4 1 0 50 0 0 12 0.0000 0 180 1590 5925 6150 Connectedness (FC)\001 33 | -6 34 | 6 2100 4275 2850 4650 35 | 4 1 0 50 0 0 12 0.0000 0 135 705 2475 4425 Vectorial\001 36 | 4 1 0 50 0 0 12 0.0000 0 135 465 2475 4650 Scene\001 37 | -6 38 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 39 | 0 0 1.00 60.00 120.00 40 | 5625 3450 5625 3825 41 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 42 | 0 0 1.00 60.00 120.00 43 | 6150 3825 6150 3450 44 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 45 | 0 0 1.00 60.00 120.00 46 | 5625 5700 5625 5400 47 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 48 | 0 0 1.00 60.00 120.00 49 | 6150 5400 6150 5700 50 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 4 51 | 0 0 1.00 60.00 120.00 52 | 6900 3225 7425 3225 7425 5925 6900 5925 53 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 54 | 0 0 1.00 60.00 120.00 55 | 6900 3075 7875 3075 56 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 57 | 0 0 1.00 60.00 120.00 58 | 6900 4200 7875 4200 59 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 60 | 0 0 1.00 60.00 120.00 61 | 6900 5100 7875 5100 62 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 63 | 0 0 1.00 60.00 120.00 64 | 6900 6075 7875 6075 65 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 4 66 | 0 0 1.00 60.00 120.00 67 | 4875 5925 4350 5925 4350 3225 4875 3225 68 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 4 69 | 0 0 1.00 60.00 120.00 70 | 0 0 1.00 60.00 120.00 71 | 4875 3000 3825 3000 3825 6075 4875 6075 72 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 73 | 0 0 1.00 60.00 120.00 74 | 3825 4125 4875 4125 75 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 76 | 0 0 1.00 60.00 120.00 77 | 3825 5025 4875 5025 78 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 79 | 0 0 1.00 60.00 120.00 80 | 3000 4575 3825 4575 81 | 4 0 0 50 0 0 12 0.0000 0 180 1065 8025 3150 Binary Output\001 82 | 4 0 0 50 0 0 12 0.0000 0 180 1065 8025 4275 Binary Output\001 83 | 4 0 0 50 0 0 12 0.0000 0 180 1065 8025 5175 Binary Output\001 84 | 4 0 0 50 0 0 12 0.0000 0 180 1065 8025 6150 Binary Output\001 85 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/HybridSegmentationFCVDDM.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 2325 3825 3075 4650 11 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 12 | 2325 3825 3075 3825 3075 4650 2325 4650 2325 3825 13 | 4 1 0 50 0 0 12 0.0000 4 135 300 2700 4200 DM\001 14 | 4 1 0 50 0 0 12 0.0000 4 135 225 2700 4425 3D\001 15 | -6 16 | 6 2325 2625 3075 3450 17 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 18 | 2325 2625 3075 2625 3075 3450 2325 3450 2325 2625 19 | 4 1 0 50 0 0 12 0.0000 4 135 270 2700 3000 VD\001 20 | 4 1 0 50 0 0 12 0.0000 4 135 225 2700 3225 2D\001 21 | -6 22 | 6 3750 3150 4500 3975 23 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 24 | 3750 3150 4500 3150 4500 3975 3750 3975 3750 3150 25 | 4 1 0 50 0 0 12 0.0000 4 135 225 4125 3525 FC\001 26 | 4 1 0 50 0 0 12 0.0000 4 135 225 4125 3750 3D\001 27 | -6 28 | 6 675 3300 1575 3900 29 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 1125 3600 450 300 1125 3600 1575 3900 30 | 4 1 0 50 0 0 12 0.0000 4 180 390 1125 3525 Input\001 31 | 4 1 0 50 0 0 12 0.0000 4 180 465 1125 3750 Image\001 32 | -6 33 | 6 4875 3300 5775 3900 34 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 5325 3600 450 300 5325 3600 5775 3900 35 | 4 1 0 50 0 0 12 0.0000 4 180 525 5325 3525 Output\001 36 | 4 1 0 50 0 0 12 0.0000 4 180 465 5325 3750 Image\001 37 | -6 38 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 5 39 | 0 0 1.00 60.00 120.00 40 | 2475 3450 2475 3675 2100 3675 2100 3150 2325 3150 41 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 42 | 0 0 1.00 60.00 120.00 43 | 2700 3825 2700 3450 44 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 45 | 1950 2475 3375 2475 3375 4875 1950 4875 1950 2475 46 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 47 | 0 0 1.00 60.00 120.00 48 | 3375 3600 3750 3600 49 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 50 | 0 0 1.00 60.00 120.00 51 | 1575 3600 1950 3600 52 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 53 | 0 0 1.00 60.00 120.00 54 | 4500 3600 4875 3600 55 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ImageOverlapIterator.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 5 1 0 1 0 7 50 0 -1 0.000 0 1 1 0 1390.297 3998.943 2778 1308 2126 1062 1004 996 11 | 0 0 1.00 45.00 90.00 12 | 5 1 0 1 0 7 50 0 -1 0.000 0 1 1 0 1055.079 5521.765 2338 1640 1683 1482 723 1447 13 | 0 0 1.00 45.00 90.00 14 | 6 2400 1275 2850 1725 15 | 1 4 0 1 0 0 50 0 20 0.000 1 0.0000 2463 1389 15 15 2448 1389 2478 1389 16 | 2 3 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 17 | 2419 1342 2419 1662 2819 1662 2820 1342 2419 1342 18 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 10 19 | 2457 1388 2774 1388 2774 1444 2462 1445 2462 1502 2776 1502 20 | 2776 1562 2463 1562 2463 1617 2778 1617 21 | -6 22 | 6 525 975 1125 1500 23 | 1 4 0 1 0 0 50 0 20 0.000 1 0.3491 646 1166 15 15 631 1171 661 1162 24 | 2 3 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 25 | 588 1137 698 1439 1072 1301 966 1000 588 1137 26 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 10 27 | 640 1168 938 1059 957 1112 665 1219 685 1273 979 1165 28 | 999 1222 706 1330 724 1380 1020 1273 29 | -6 30 | 2 3 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5 31 | 286 796 286 1678 1444 1678 1444 796 286 796 32 | 2 3 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 5 33 | 355 692 656 1521 1745 1125 1442 296 355 692 34 | 2 3 0 1 0 7 61 0 17 0.000 0 0 -1 0 0 5 35 | 426 819 676 1495 1424 1208 1424 819 426 819 36 | 2 3 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5 37 | 2364 825 2364 1707 3522 1707 3522 825 2364 825 38 | 4 1 0 50 0 0 12 0.0000 4 180 930 2970 1890 Fixed Image\001 39 | 4 0 0 50 0 0 12 0.0000 4 180 1170 1665 675 Transform T(x)\001 40 | 4 1 0 50 0 0 12 0.0000 4 180 1080 900 1890 Moving Image\001 41 | 4 0 0 50 0 0 12 0.0000 4 135 405 2880 1575 Walk\001 42 | 4 0 0 50 0 0 12 0.0000 4 135 570 2880 1395 Iterator\001 43 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ImageOverlapedRegions.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 5 1 0 1 0 7 50 0 -1 0.000 0 1 1 0 1610.570 2678.144 2819 1338 2130 950 1020 973 11 | 0 0 1.00 45.00 90.00 12 | 5 1 0 1 0 7 50 0 -1 0.000 0 1 1 0 1303.375 3596.054 2434 1627 1899 1405 738 1397 13 | 0 0 1.00 45.00 90.00 14 | 2 3 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 15 | 286 796 286 1678 1444 1678 1444 796 286 796 16 | 2 3 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 17 | 2364 825 2364 1707 3522 1707 3522 825 2364 825 18 | 2 3 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 5 19 | 355 692 656 1521 1745 1125 1442 296 355 692 20 | 2 3 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 21 | 2451 1349 2451 1630 2822 1630 2822 1349 2451 1349 22 | 2 3 0 1 0 7 30 0 -1 0.000 0 0 -1 0 0 5 23 | 634 1111 729 1377 1078 1250 982 984 634 1111 24 | 2 3 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 25 | 753 937 753 1218 1124 1218 1124 937 753 937 26 | 2 3 0 1 11 11 50 0 20 0.000 0 0 -1 0 0 5 27 | 766 1077 766 1203 1045 1203 975 1002 766 1077 28 | 4 0 0 50 0 0 12 0.0000 4 180 645 497 1872 Image A\001 29 | 4 0 0 50 0 0 12 0.0000 4 180 630 2649 1886 Image B\001 30 | 4 0 0 50 0 0 12 0.0000 4 135 780 1762 746 Transform\001 31 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ImageRegistrationConcept.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 0 32 #494549 11 | 0 33 #8e8e8e 12 | 0 34 #494549 13 | 0 35 #8e8e8e 14 | 0 36 #494549 15 | 0 37 #8e8e8e 16 | 0 38 #494549 17 | 0 39 #8e8e8e 18 | 0 40 #494549 19 | 0 41 #8e8e8e 20 | 0 42 #494549 21 | 0 43 #8e8e8e 22 | 0 44 #494549 23 | 0 45 #8e8e8e 24 | 0 46 #494549 25 | 0 47 #8e8e8e 26 | 0 48 #494549 27 | 0 49 #8e8e8e 28 | 0 50 #cfcfcf 29 | 0 51 #cfcfcf 30 | 0 52 #cfcfcf 31 | 0 53 #cfcfcf 32 | 0 54 #cfcfcf 33 | 0 55 #cfcfcf 34 | 0 56 #cfcfcf 35 | 0 57 #cfcfcf 36 | 0 58 #cfcfcf 37 | 0 59 #cfcfcf 38 | 0 60 #cfcfcf 39 | 0 61 #cfcfcf 40 | 0 62 #cfcfcf 41 | 0 63 #cfcfcf 42 | 0 64 #cfcfcf 43 | 0 65 #cfcfcf 44 | 0 66 #cfcfcf 45 | 0 67 #cfcfcf 46 | 0 68 #cfcfcf 47 | 0 69 #cfcfcf 48 | 0 70 #cfcfcf 49 | 0 71 #cfcfcf 50 | 0 72 #cfcfcf 51 | 0 73 #cfcfcf 52 | 0 74 #414141 53 | 0 75 #868286 54 | 0 76 #bec3be 55 | 0 77 #868286 56 | 0 78 #bec3be 57 | 0 79 #dfe3df 58 | 0 80 #8e8e8e 59 | 0 81 #8e8e8e 60 | 0 82 #414141 61 | 0 83 #868286 62 | 0 84 #bec3be 63 | 0 85 #dfe3df 64 | 0 86 #c7b696 65 | 0 87 #effbff 66 | 0 88 #dfcba6 67 | 0 89 #aeaaae 68 | 0 90 #595559 69 | 0 91 #8e8e8e 70 | 0 92 #414141 71 | 0 93 #868286 72 | 0 94 #bec3be 73 | 0 95 #dfe3df 74 | 0 96 #414141 75 | 0 97 #868286 76 | 0 98 #bec3be 77 | 0 99 #dfe3df 78 | 0 100 #868286 79 | 0 101 #bec3be 80 | 0 102 #dfe3df 81 | 0 103 #414141 82 | 0 104 #868286 83 | 0 105 #bec3be 84 | 0 106 #414141 85 | 0 107 #bec3be 86 | 0 108 #dfe3df 87 | 0 109 #414141 88 | 0 110 #868286 89 | 0 111 #bec3be 90 | 0 112 #8e8e8e 91 | 0 113 #414141 92 | 0 114 #868286 93 | 0 115 #bec3be 94 | 0 116 #dfe3df 95 | 0 117 #414141 96 | 0 118 #868286 97 | 0 119 #bec3be 98 | 0 120 #dfe3df 99 | 0 121 #414141 100 | 0 122 #868286 101 | 0 123 #bec3be 102 | 0 124 #dfe3df 103 | 5 1 0 1 0 7 50 0 -1 0.000 0 0 1 0 1917.499 5224.285 1144 1480 1939 1401 2795 1503 104 | 1 1 1.00 45.00 90.00 105 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1135 1482 21 21 1135 1482 1156 1482 106 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 2799 1502 21 21 2799 1502 2820 1502 107 | 2 3 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5 108 | 599 1240 599 1960 1679 1960 1679 1241 599 1240 109 | 2 3 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5 110 | 2172 1244 2172 1964 3252 1964 3252 1244 2172 1244 111 | 3 5 0 1 0 7 50 0 -1 0.000 0 0 0 9 112 | 1118 1416 1027 1630 834 1387 793 1769 1253 1925 1122 1646 113 | 1418 1778 1475 1551 1220 1617 114 | 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 115 | 1.000 116 | 3 5 0 1 0 7 50 0 -1 0.000 0 0 0 9 117 | 2759 1448 2787 1678 2499 1564 2654 1916 3131 1821 2877 1645 118 | 3199 1610 3135 1386 2948 1571 119 | 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 120 | 1.000 121 | 4 0 0 50 0 0 12 0.0000 4 135 90 1040 1420 p\001 122 | 4 0 0 50 0 0 12 0.0000 4 135 90 2815 1419 q\001 123 | 4 1 0 50 0 0 12 0.0000 4 135 105 1939 1359 T\001 124 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/LevelSetZeroSet.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 5 1 0 1 0 7 50 0 -1 0.000 0 1 1 0 5411.005 3141.595 5025 2243 4598 2598 4436 3218 11 | 0 0 1.00 60.00 120.00 12 | 3 5 0 1 0 7 54 0 -1 0.000 0 0 0 9 13 | 2275 2490 1942 4983 3533 5771 4603 4378 5831 6622 7870 4914 14 | 6883 2583 4799 3667 4033 2167 15 | 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 16 | 1.000 17 | 3 5 0 1 0 7 55 0 -1 0.000 0 0 0 9 18 | 2028 2313 1636 5157 3559 6135 4565 4680 5879 7067 8191 4933 19 | 6876 2242 4887 3578 4051 1742 20 | 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 21 | 1.000 22 | 3 5 0 1 0 7 51 0 -1 0.000 0 0 0 9 23 | 3071 3073 2882 4599 3623 4553 4760 3865 5779 5255 6830 4527 24 | 6129 3638 4641 4372 3792 3281 25 | 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 26 | 1.000 27 | 3 5 0 1 0 7 52 0 -1 0.000 0 0 0 9 28 | 2804 2794 2551 4779 3610 4975 4701 3930 5908 5768 7194 4547 29 | 6428 3326 4675 4196 3915 2871 30 | 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 31 | 1.000 32 | 3 5 0 3 0 7 53 0 -1 0.000 0 0 0 9 33 | 2512 2599 2250 4875 3525 5400 4656 4167 5925 6225 7526 4661 34 | 6600 2925 4747 3979 4038 2501 35 | 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 36 | 1.000 37 | 4 0 0 50 0 0 12 0.0000 4 180 1380 5108 2292 Zero Set f(x,y)=0\001 38 | 4 1 0 50 0 0 12 0.0000 4 180 1425 3560 6177 Exterior f(x,y) < 0\001 39 | 4 1 0 50 0 0 12 0.0000 4 135 555 3550 3848 Interior\001 40 | 4 1 0 50 0 0 12 0.0000 4 180 720 3574 4081 f(x,y) > 0\001 41 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ModelToImageRegistrationComponentsDiagram.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 5 1 0 1 0 7 50 0 -1 0.000 0 0 1 0 4312.500 2542.500 4500 2655 4095 2565 4500 2430 11 | 1 1 1.00 45.00 90.00 12 | 6 4575 2325 5550 2700 13 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 14 | 5490 2700 5490 2385 4590 2385 4590 2700 5490 2700 15 | 4 1 0 50 0 0 12 0.0000 4 180 750 5040 2610 Optimizer\001 16 | -6 17 | 6 3900 3000 4875 3375 18 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 19 | 4815 3330 4815 3015 3915 3015 3915 3330 4815 3330 20 | 4 1 0 50 0 0 12 0.0000 4 135 780 4365 3240 Transform\001 21 | -6 22 | 6 2775 2550 3900 2925 23 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 24 | 3870 2925 3870 2610 2835 2610 2835 2925 3870 2925 25 | 4 1 0 50 0 0 12 0.0000 4 180 885 3375 2835 Interpolator\001 26 | -6 27 | 6 3000 1950 3750 2325 28 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 29 | 3735 2295 3735 1980 3015 1980 3015 2295 3735 2295 30 | 4 1 0 50 0 0 12 0.0000 4 135 510 3375 2205 Metric\001 31 | -6 32 | 6 675 2970 2295 3330 33 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 8 0 0 5 34 | 2284 3290 2284 3013 675 3013 675 3290 2284 3290 35 | 4 1 0 50 0 0 12 0.0000 4 180 1080 1479 3211 Moving Image\001 36 | -6 37 | 6 675 1980 2250 2295 38 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 9 0 0 5 39 | 2250 2295 2250 1980 675 1980 675 2295 2250 2295 40 | 4 1 0 50 0 0 12 0.0000 4 180 1035 1495 2205 SpatialObject\001 41 | -6 42 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 5040 2925 30 30 5040 2925 5070 2925 43 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 3 44 | 1 1 1.00 45.00 90.00 45 | 3735 2115 5040 2115 5040 2385 46 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 3 47 | 1 1 1.00 45.00 90.00 48 | 5040 2700 5040 3195 4815 3195 49 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 3 50 | 1 1 1.00 45.00 90.00 51 | 2295 3195 3015 3195 3105 2925 52 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 53 | 1 1 1.00 45.00 90.00 54 | 2250 2115 3015 2115 55 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 3 56 | 1 1 1.00 45.00 90.00 57 | 3915 3195 3645 3195 3555 2925 58 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 59 | 1 1 1.00 45.00 90.00 60 | 3375 2610 3375 2295 61 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 5 62 | 0 0 1.00 60.00 120.00 63 | 5040 2925 5760 2925 5760 1620 1485 1620 1485 1980 64 | 4 1 0 50 0 0 12 0.0000 4 135 975 4500 2070 fitness value\001 65 | 4 1 0 50 0 0 12 0.0000 4 180 465 3600 3375 points\001 66 | 4 1 0 50 0 0 12 0.0000 4 180 450 3645 2520 pixels\001 67 | 4 1 0 50 0 0 12 0.0000 4 180 450 2610 3375 pixels\001 68 | 4 1 0 50 0 0 12 0.0000 4 135 870 5490 3105 Parameters\001 69 | 4 1 0 50 0 0 12 0.0000 4 180 465 2610 2025 points\001 70 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ModelToImageRegistrationConcept.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 1 1 0 5 4 7 50 0 -1 0.000 1 0.0000 7125 4650 1200 1500 7125 4650 8325 4650 11 | 1 1 0 5 4 7 50 0 -1 0.000 1 5.7596 3825 4125 750 1275 3825 4125 4575 4125 12 | 2 5 0 1 0 -1 60 0 -1 0.000 0 0 -1 0 0 5 13 | 0 BrainT1Slice.jpg 14 | 2025 2850 5025 2850 5025 6525 2025 6525 2025 2850 15 | 2 5 0 1 0 -1 60 0 -1 0.000 0 0 -1 0 0 5 16 | 0 BrainT1Slice.jpg 17 | 5625 2850 8625 2850 8625 6525 5625 6525 5625 2850 18 | 2 1 0 3 6 7 50 0 -1 0.000 0 0 -1 0 0 2 19 | 3825 4125 4500 3075 20 | 2 1 0 3 6 7 50 0 -1 0.000 0 0 -1 0 0 2 21 | 3825 4125 4425 4575 22 | 2 1 0 3 6 7 50 0 -1 0.000 0 0 -1 0 0 2 23 | 7125 4650 7125 3150 24 | 2 1 0 3 6 7 50 0 -1 0.000 0 0 -1 0 0 2 25 | 7125 4650 8325 4650 26 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 1 3 27 | 0 0 2.00 60.00 120.00 28 | 0 0 2.00 60.00 120.00 29 | 5475 2700 5475 6675 8775 6675 30 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 1 3 31 | 0 0 2.00 60.00 120.00 32 | 0 0 2.00 60.00 120.00 33 | 1875 2700 1875 6675 5100 6675 34 | 4 1 0 50 0 0 12 0.0000 4 180 2835 3525 6975 Model and Image Before Registration\001 35 | 4 1 0 50 0 0 12 0.0000 4 180 2730 7125 6975 Model and Image After Registration\001 36 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ParzenWindowing1.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 3 11 | 0 0 1.00 60.00 120.00 12 | 0 0 1.00 60.00 120.00 13 | 4294 4893 6841 4893 7233 4893 14 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 15 | 4588 4398 4588 4893 16 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 17 | 4818 4398 4818 4893 18 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 19 | 5121 4400 5121 4895 20 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 21 | 5362 4400 5362 4895 22 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 23 | 5430 4398 5430 4893 24 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 25 | 5494 4398 5494 4893 26 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 27 | 5554 4400 5554 4895 28 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 29 | 5632 4398 5632 4893 30 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 31 | 5684 4400 5684 4895 32 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 33 | 5713 4398 5713 4893 34 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 35 | 5746 4398 5746 4893 36 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 37 | 5772 4398 5772 4893 38 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 39 | 5797 4398 5797 4893 40 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 41 | 5919 4398 5919 4893 42 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 43 | 5976 4398 5976 4893 44 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 45 | 6055 4400 6055 4895 46 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 47 | 6139 4398 6139 4893 48 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 49 | 6253 4402 6253 4897 50 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 51 | 6407 4402 6407 4897 52 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 53 | 6578 4400 6578 4895 54 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 55 | 6729 4398 6729 4893 56 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 2 57 | 0 0 1.00 15.00 30.00 58 | 0 0 1.00 15.00 30.00 59 | 6621 4215 6841 4215 60 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 61 | 5588 4398 5588 4893 62 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 63 | 5609 4397 5609 4892 64 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 65 | 5658 4398 5658 4893 66 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 67 | 5852 4399 5852 4894 68 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 69 | 5874 4399 5874 4894 70 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 71 | 5824 4398 5824 4893 72 | 3 4 0 1 0 7 50 0 -1 0.000 0 0 0 5 73 | 6311 4879 6574 4733 6732 4332 6882 4745 7106 4870 74 | 0.000 -0.590 -0.450 -0.527 0.000 75 | 4 1 0 50 0 0 12 0.0000 4 180 450 6708 4141 sigma\001 76 | 4 0 0 50 0 0 12 0.0000 4 180 825 4323 5066 gray levels\001 77 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/PointSetWithVectors.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1950 1800 75 75 1950 1800 2025 1800 11 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 2820 1199 75 75 2820 1199 2895 1199 12 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 3931 1095 75 75 3931 1095 4006 1095 13 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 4889 1463 75 75 4889 1463 4964 1463 14 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 5514 2157 75 75 5514 2157 5589 2157 15 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 5820 3088 75 75 5820 3088 5895 3088 16 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 5653 4164 75 75 5653 4164 5728 4164 17 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 4979 5053 75 75 4979 5053 5054 5053 18 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 4021 5491 75 75 4021 5491 4096 5491 19 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 2813 5373 75 75 2813 5373 2888 5373 20 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1931 4768 75 75 1931 4768 2006 4768 21 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1438 3831 75 75 1438 3831 1513 3831 22 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1431 2755 75 75 1431 2755 1506 2755 23 | 1 3 1 1 0 7 50 0 -1 4.000 1 0.0000 3600 3300 2230 2230 3600 3300 5830 3300 24 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 25 | 0 0 1.00 60.00 120.00 26 | 3938 1088 4681 1220 27 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 28 | 0 0 1.00 60.00 120.00 29 | 4904 1460 5481 1946 30 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 31 | 0 0 1.00 60.00 120.00 32 | 5511 2166 5917 2824 33 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 34 | 0 0 1.00 60.00 120.00 35 | 5822 3092 5861 3893 36 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 37 | 0 0 1.00 60.00 120.00 38 | 5656 4160 5361 4900 39 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 40 | 0 0 1.00 60.00 120.00 41 | 4979 5046 4368 5505 42 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 43 | 0 0 1.00 60.00 120.00 44 | 4037 5491 3326 5748 45 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 46 | 0 0 1.00 60.00 120.00 47 | 2816 5371 2074 5239 48 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 49 | 0 0 1.00 60.00 120.00 50 | 1930 4775 1351 4289 51 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 52 | 0 0 1.00 60.00 120.00 53 | 2825 1194 3535 935 54 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 55 | 0 0 1.00 60.00 120.00 56 | 1954 1779 2440 1201 57 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 58 | 0 0 1.00 60.00 120.00 59 | 1424 2750 1556 2005 60 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 61 | 0 0 1.00 60.00 120.00 62 | 1421 3821 1208 3102 63 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/RegistrationComponentsDiagram.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 5 1 0 1 0 7 50 0 -1 0.000 0 0 1 0 4312.500 2542.500 4500 2655 4095 2565 4500 2430 11 | 1 1 1.00 45.00 90.00 12 | 6 4590 2385 5490 2700 13 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 14 | 5490 2700 5490 2385 4590 2385 4590 2700 5490 2700 15 | 4 1 0 50 0 0 10 0.0000 4 135 645 5040 2610 Optimizer\001 16 | -6 17 | 6 3915 3015 4815 3330 18 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 19 | 4815 3330 4815 3015 3915 3015 3915 3330 4815 3330 20 | 4 1 0 50 0 0 10 0.0000 4 105 660 4365 3240 Transform\001 21 | -6 22 | 6 2835 2610 3870 2925 23 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 24 | 3870 2925 3870 2610 2835 2610 2835 2925 3870 2925 25 | 4 1 0 50 0 0 10 0.0000 4 135 780 3375 2835 Interpolator\001 26 | -6 27 | 6 3015 1980 3735 2295 28 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 29 | 3735 2295 3735 1980 3015 1980 3015 2295 3735 2295 30 | 4 1 0 50 0 0 10 0.0000 4 105 435 3375 2205 Metric\001 31 | -6 32 | 6 1125 3015 2295 3330 33 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 34 | 2295 3330 2295 3015 1125 3015 1125 3330 2295 3330 35 | 4 1 0 50 0 0 10 0.0000 4 135 900 1710 3240 Moving Image\001 36 | -6 37 | 6 1125 1980 2250 2295 38 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 39 | 2250 2295 2250 1980 1125 1980 1125 2295 2250 2295 40 | 4 1 0 50 0 0 10 0.0000 4 135 765 1710 2205 Fixed Image\001 41 | -6 42 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 3 43 | 1 1 1.00 45.00 90.00 44 | 3735 2115 5040 2115 5040 2385 45 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 3 46 | 1 1 1.00 45.00 90.00 47 | 5040 2700 5040 3195 4815 3195 48 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 3 49 | 1 1 1.00 45.00 90.00 50 | 2295 3195 3015 3195 3105 2925 51 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 52 | 1 1 1.00 45.00 90.00 53 | 2250 2115 3015 2115 54 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 3 55 | 1 1 1.00 45.00 90.00 56 | 3915 3195 3645 3195 3555 2925 57 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 58 | 1 1 1.00 45.00 90.00 59 | 3375 2610 3375 2295 60 | 4 1 0 50 0 0 10 0.0000 4 105 780 4500 2070 fitness value\001 61 | 4 1 0 50 0 0 10 0.0000 4 135 390 3600 3375 points\001 62 | 4 1 0 50 0 0 10 0.0000 4 135 390 3645 2520 pixels\001 63 | 4 1 0 50 0 0 10 0.0000 4 135 390 2610 2025 pixels\001 64 | 4 1 0 50 0 0 10 0.0000 4 135 390 2610 3375 pixels\001 65 | 4 1 0 50 0 0 10 0.0000 4 105 660 5490 2970 Transform\001 66 | 4 1 0 50 0 0 10 0.0000 4 120 675 5490 3105 parameters\001 67 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/SampleInheritanceTree.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Metric 5 | A4 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 3510 540 5580 945 11 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 12 | 5580 945 5580 540 3510 540 3510 945 5580 945 13 | 4 0 0 50 -1 0 12 0.0000 4 180 555 4275 810 Sample\001 14 | -6 15 | 6 2475 2205 4545 2610 16 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 17 | 4545 2610 4545 2205 2475 2205 2475 2610 4545 2610 18 | 4 0 0 50 -1 0 12 0.0000 4 180 1575 2790 2475 ImageToListSampleAdaptor\001 19 | -6 20 | 6 1080 3060 3375 3465 21 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 22 | 3375 3465 3375 3060 1080 3060 1080 3465 3375 3465 23 | 4 0 0 50 -1 0 12 0.0000 4 180 2055 1215 3330 ScalarImageToListSampleAdaptor\001 24 | -6 25 | 6 3780 3060 6525 3465 26 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 27 | 6525 3465 6525 3060 3780 3060 3780 3465 6525 3465 28 | 4 0 0 50 -1 0 12 0.0000 4 180 2520 3915 3330 JointDomainImageToListSampleAdaptor\001 29 | -6 30 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 31 | 6795 2610 6795 2205 4725 2205 4725 2610 6795 2610 32 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 33 | 4545 1755 4545 1350 2475 1350 2475 1755 4545 1755 34 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 35 | 6795 1755 6795 1350 4725 1350 4725 1755 6795 1755 36 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 37 | 9045 1755 9045 1350 6975 1350 6975 1755 9045 1755 38 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 39 | 2295 2610 2295 2205 225 2205 225 2610 2295 2610 40 | 2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 41 | 2295 1755 2295 1350 225 1350 225 1755 2295 1755 42 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 43 | 1 1 1.00 60.00 120.00 44 | 1260 1350 4005 945 45 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 46 | 1 1 1.00 60.00 120.00 47 | 3510 1350 4410 945 48 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 49 | 1 1 1.00 60.00 120.00 50 | 5670 1350 4815 945 51 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 52 | 1 1 1.00 60.00 120.00 53 | 7965 1350 5400 945 54 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 55 | 1 1 1.00 60.00 120.00 56 | 1170 2205 1170 1755 57 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 58 | 1 1 1.00 60.00 120.00 59 | 3510 2205 1395 1755 60 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 61 | 1 1 1.00 60.00 120.00 62 | 5760 2205 1980 1755 63 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 64 | 1 1 1.00 60.00 120.00 65 | 2115 3060 3465 2610 66 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 67 | 1 1 1.00 60.00 120.00 68 | 5220 3060 3735 2610 69 | 4 0 0 50 -1 0 12 0.0000 4 180 1245 585 1620 ListSampleBase\001 70 | 4 0 0 50 -1 0 12 0.0000 4 180 795 3195 1620 Histogram\001 71 | 4 0 0 50 -1 0 12 0.0000 4 180 825 5355 1620 Subsample\001 72 | 4 0 0 50 -1 0 12 0.0000 4 180 1500 7290 1620 MembershipSample\001 73 | 4 0 0 50 -1 0 12 0.0000 4 180 1755 4905 2475 PointSetToListSampleAdaptor\001 74 | 4 0 0 50 -1 0 12 0.0000 4 180 855 900 2475 ListSample\001 75 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/SpatialObjectExampleTransforms.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 750 1725 900 5475 11 | 4 0 0 50 0 0 12 0.0000 4 135 90 780 5467 1\001 12 | 4 0 0 50 0 0 12 0.0000 4 135 90 780 4867 2\001 13 | 4 0 0 50 0 0 12 0.0000 4 135 90 780 4267 3\001 14 | 4 0 0 50 0 0 12 0.0000 4 135 90 780 3667 4\001 15 | 4 0 0 50 0 0 12 0.0000 4 135 90 780 3067 5\001 16 | 4 0 0 50 0 0 12 0.0000 4 135 90 780 2467 6\001 17 | 4 0 0 50 0 0 12 0.0000 4 135 90 780 1867 7\001 18 | -6 19 | 6 1725 6225 6075 6450 20 | 4 0 0 50 0 0 12 0.0000 4 135 90 1755 6405 1\001 21 | 4 0 0 50 0 0 12 0.0000 4 135 90 2355 6405 2\001 22 | 4 0 0 50 0 0 12 0.0000 4 135 90 3555 6405 4\001 23 | 4 0 0 50 0 0 12 0.0000 4 135 90 4155 6405 5\001 24 | 4 0 0 50 0 0 12 0.0000 4 135 90 4755 6405 6\001 25 | 4 0 0 50 0 0 12 0.0000 4 135 90 5355 6405 7\001 26 | 4 0 0 50 0 0 12 0.0000 4 135 90 2955 6405 3\001 27 | 4 0 0 50 0 0 12 0.0000 4 135 90 5955 6405 8\001 28 | -6 29 | 1 3 0 2 0 7 50 0 6 0.000 1 0.0000 5325 2625 586 586 5325 2625 5911 2625 30 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 31 | 1800 5850 1800 6150 32 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 33 | 2400 5850 2400 6150 34 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 35 | 3000 5850 3000 6150 36 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 37 | 3600 5850 3600 6150 38 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 39 | 4200 5850 4200 6150 40 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 41 | 4800 5850 4800 6150 42 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 43 | 5400 5850 5400 6150 44 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 45 | 1 1 1.00 90.00 150.00 46 | 1200 6000 6750 6000 47 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 48 | 1050 5400 1350 5400 49 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 50 | 1050 4800 1350 4800 51 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 52 | 1050 4200 1350 4200 53 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 54 | 1050 3600 1350 3600 55 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 56 | 1050 3000 1350 3000 57 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 58 | 1050 2400 1350 2400 59 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 60 | 1050 1800 1350 1800 61 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 62 | 1 1 1.00 90.00 150.00 63 | 1200 6000 1200 1350 64 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 65 | 6000 5850 6000 6150 66 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 67 | 0 0 1.00 60.00 120.00 68 | 3000 4200 3000 3375 69 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 70 | 0 0 1.00 60.00 120.00 71 | 3000 4200 3900 4200 72 | 2 2 0 2 0 7 52 0 10 0.000 0 0 -1 0 0 5 73 | 2550 3750 3450 3750 3450 4725 2550 4725 2550 3750 74 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 75 | 0 0 1.00 60.00 120.00 76 | 5325 2625 5325 1800 77 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 78 | 0 0 1.00 60.00 120.00 79 | 5325 2625 6225 2625 80 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 81 | 3000 4200 5325 2625 82 | 4 1 0 50 0 0 12 0.0000 4 180 645 3000 5025 Object 1\001 83 | 4 1 0 50 0 0 12 0.0000 4 180 645 5325 3525 Object 2\001 84 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ThresholdSegmentationLevelSetImageFilterFigure1.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 0 32 #b5aead 11 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2 12 | 1 1 1.00 60.00 120.00 13 | 1 1 1.00 60.00 120.00 14 | 3000 1800 3000 7500 15 | 2 1 0 3 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 16 | 1 1 3.00 90.00 135.00 17 | 6600 2100 3600 7200 18 | 2 1 0 3 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 19 | 1 1 3.00 90.00 135.00 20 | 6600 2100 9600 7200 21 | 2 2 0 0 -1 32 52 -1 30 0.000 0 0 -1 0 0 5 22 | 5025 7200 8175 7200 8175 2100 5025 2100 5025 7200 23 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 24 | 3300 1500 3000 1500 25 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 26 | 10050 1500 10350 1500 27 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 28 | 8250 1425 8250 1575 29 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 30 | 8100 1425 8100 1575 31 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 32 | 7125 1500 8100 1500 33 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 34 | 8250 1500 8925 1500 35 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 36 | 5100 1425 5100 1575 37 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 38 | 6075 1500 5100 1500 39 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 40 | 4500 1500 4950 1500 41 | 2 1 0 1 0 32 50 -1 30 0.000 0 0 -1 0 0 2 42 | 4950 1425 4950 1575 43 | 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2 44 | 1 1 1.00 60.00 120.00 45 | 1 1 1.00 60.00 120.00 46 | 2775 4800 10575 4800 47 | 4 1 0 50 -1 2 20 0.0000 4 255 1035 6600 1800 Expands\001 48 | 4 1 0 50 -1 2 20 0.0000 4 195 765 6600 1500 Model\001 49 | 4 1 0 50 -1 2 20 0.0000 4 195 765 3900 1500 Model\001 50 | 4 1 0 50 -1 2 20 0.0000 4 195 1200 3900 1800 Contracts\001 51 | 4 1 0 50 -1 2 20 0.0000 4 195 1200 9450 1800 Contracts\001 52 | 4 1 0 50 -1 2 20 0.0000 4 195 765 9450 1500 Model\001 53 | 4 1 0 50 -1 2 20 0.0000 4 195 210 8175 7500 U\001 54 | 4 1 0 50 -1 2 20 0.0000 4 195 195 5025 7500 L\001 55 | 4 0 0 50 -1 2 20 0.0000 4 255 450 9675 4650 g(x)\001 56 | 4 0 0 50 -1 2 20 0.0000 4 195 180 2400 2550 P\001 57 | 4 0 0 50 -1 2 20 0.0000 4 195 480 2175 4950 P=0\001 58 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ThresholdTransferFunctionAbove.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 1800 1575 2475 2025 11 | 4 0 0 50 0 0 12 0.0000 4 180 525 1800 1725 Output\001 12 | 4 0 0 50 0 0 12 0.0000 4 180 675 1800 1950 Intensity\001 13 | -6 14 | 6 4725 3825 5400 4275 15 | 4 0 0 50 0 0 12 0.0000 4 180 390 4725 3975 Input\001 16 | 4 0 0 50 0 0 12 0.0000 4 180 675 4725 4200 Intensity\001 17 | -6 18 | 6 2550 3750 3450 4125 19 | 4 0 0 50 0 0 12 0.0000 4 180 855 2550 3900 Unchanged\001 20 | 4 0 0 50 0 0 12 0.0000 4 135 810 2550 4125 Intensities\001 21 | -6 22 | 6 3300 4500 4050 4875 23 | 4 1 0 50 0 0 12 0.0000 4 135 750 3675 4650 Threshold\001 24 | 4 1 0 50 0 0 12 0.0000 4 135 495 3675 4875 Above\001 25 | -6 26 | 6 900 2325 1500 2700 27 | 4 0 0 50 0 0 12 0.0000 4 135 600 900 2475 Outside\001 28 | 4 0 0 50 0 0 12 0.0000 4 135 450 900 2700 Value\001 29 | -6 30 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1650 2400 50 50 1650 2400 1700 2400 31 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 3675 4350 50 50 3675 4350 3725 4350 32 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 33 | 0 0 1.00 60.00 120.00 34 | 1650 4350 1650 1350 35 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 36 | 0 0 1.00 60.00 120.00 37 | 1650 4350 5475 4350 38 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 39 | 3600 2400 1800 2400 40 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 41 | 3675 2400 4725 2400 42 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 43 | 1660 4362 3675 2775 44 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 45 | 3675 2400 3675 4275 46 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ThresholdTransferFunctionBelow.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 825 3750 1425 4125 11 | 4 0 0 50 0 0 12 0.0000 4 135 600 825 3900 Outside\001 12 | 4 0 0 50 0 0 12 0.0000 4 135 450 825 4125 Value\001 13 | -6 14 | 6 1800 1575 2475 2025 15 | 4 0 0 50 0 0 12 0.0000 4 180 525 1800 1725 Output\001 16 | 4 0 0 50 0 0 12 0.0000 4 180 675 1800 1950 Intensity\001 17 | -6 18 | 6 4725 4425 5400 4875 19 | 4 0 0 50 0 0 12 0.0000 4 180 390 4725 4575 Input\001 20 | 4 0 0 50 0 0 12 0.0000 4 180 675 4725 4800 Intensity\001 21 | -6 22 | 6 2550 4500 3300 4875 23 | 4 1 0 50 0 0 12 0.0000 4 135 750 2925 4650 Threshold\001 24 | 4 1 0 50 0 0 12 0.0000 4 135 480 2925 4875 Below\001 25 | -6 26 | 6 3975 2775 4875 3150 27 | 4 0 0 50 0 0 12 0.0000 4 180 855 3975 2925 Unchanged\001 28 | 4 0 0 50 0 0 12 0.0000 4 135 810 3975 3150 Intensities\001 29 | -6 30 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 2925 4350 50 50 2925 4350 2975 4350 31 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1650 3975 50 50 1650 3975 1700 3975 32 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 33 | 2925 3525 2925 4275 34 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 35 | 0 0 1.00 60.00 120.00 36 | 1650 4350 1650 1350 37 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 38 | 0 0 1.00 60.00 120.00 39 | 1650 4350 5475 4350 40 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 41 | 2250 3975 1800 3975 42 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 43 | 2925 3450 4950 1800 44 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 45 | 2250 3975 2925 3975 46 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/ThresholdTransferFunctionOutside.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 825 3750 1425 4125 11 | 4 0 0 50 0 0 12 0.0000 4 135 600 825 3900 Outside\001 12 | 4 0 0 50 0 0 12 0.0000 4 135 450 825 4125 Value\001 13 | -6 14 | 6 1800 1575 2475 2025 15 | 4 0 0 50 0 0 12 0.0000 4 180 525 1800 1725 Output\001 16 | 4 0 0 50 0 0 12 0.0000 4 180 675 1800 1950 Intensity\001 17 | -6 18 | 6 2550 4500 3300 4875 19 | 4 1 0 50 0 0 12 0.0000 4 135 480 2925 4650 Lower\001 20 | 4 1 0 50 0 0 12 0.0000 4 135 750 2925 4875 Threshold\001 21 | -6 22 | 6 3225 3375 4125 3750 23 | 4 0 0 50 0 0 12 0.0000 4 180 855 3225 3525 Unchanged\001 24 | 4 0 0 50 0 0 12 0.0000 4 135 810 3225 3750 Intensities\001 25 | -6 26 | 6 3975 4500 4725 4875 27 | 4 1 0 50 0 0 12 0.0000 4 180 465 4350 4650 Upper\001 28 | 4 1 0 50 0 0 12 0.0000 4 135 750 4350 4875 Threshold\001 29 | -6 30 | 6 5100 4425 5775 4875 31 | 4 0 0 50 0 0 12 0.0000 4 180 390 5100 4575 Input\001 32 | 4 0 0 50 0 0 12 0.0000 4 180 675 5100 4800 Intensity\001 33 | -6 34 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 2925 4350 50 50 2925 4350 2975 4350 35 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 1650 3975 50 50 1650 3975 1700 3975 36 | 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 4350 4350 50 50 4350 4350 4400 4350 37 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 38 | 2925 3525 2925 4275 39 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 40 | 0 0 1.00 60.00 120.00 41 | 1650 4350 1650 1350 42 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 43 | 0 0 1.00 60.00 120.00 44 | 1650 4350 5475 4350 45 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 46 | 4500 3975 1800 3975 47 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 48 | 2925 3450 4350 2250 49 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 50 | 4350 2250 4350 4275 51 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 52 | 4350 3975 5025 3975 53 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 54 | 2250 3975 2925 3975 55 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/VoronoiSegmentationClassDiagram1.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 4650 900 7425 1350 11 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 12 | 4650 900 7425 900 7425 1350 4650 1350 4650 900 13 | 4 1 0 50 0 12 12 0.0000 4 180 2415 6000 1200 itk::ImageToImageFilter\001 14 | -6 15 | 6 6225 2925 11175 3375 16 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 17 | 6225 2925 11175 2925 11175 3375 6225 3375 6225 2925 18 | 4 1 0 50 0 12 12 0.0000 4 180 3990 8700 3225 itk::VoronoiSegmentationRGBImageFilter\001 19 | -6 20 | 6 1425 2925 5925 3375 21 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 22 | 1425 2925 5925 2925 5925 3375 1425 3375 1425 2925 23 | 4 1 0 50 0 12 12 0.0000 4 180 3675 3675 3225 itk::VoronoiSegmentationImageFilter\001 24 | -6 25 | 6 3375 1875 8325 2325 26 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 27 | 3375 1875 8325 1875 8325 2325 3375 2325 3375 1875 28 | 4 1 0 50 0 12 12 0.0000 4 180 3990 5850 2175 itk::VoronoiSegmenationImageFilterBase\001 29 | -6 30 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 31 | 0 0 1.00 60.00 120.00 32 | 6000 1350 6000 1875 33 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 34 | 0 0 1.00 60.00 120.00 35 | 4425 2325 4425 2925 36 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 37 | 0 0 1.00 60.00 120.00 38 | 7200 2325 7200 2925 39 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/VoronoiSegmentationCollaborationDiagram1.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 825 5250 3600 5700 11 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 12 | 825 5250 3600 5250 3600 5700 825 5700 825 5250 13 | 4 1 0 50 0 12 12 0.0000 4 135 2100 2175 5550 itk::CellInterface<>\001 14 | -6 15 | 6 825 6300 3600 6750 16 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 17 | 825 6300 3600 6300 3600 6750 825 6750 825 6300 18 | 4 1 0 50 0 12 12 0.0000 4 180 1890 2175 6600 itk::PolygonCell<>\001 19 | -6 20 | 6 4575 5250 7350 5700 21 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 22 | 4575 5250 7350 5250 7350 5700 4575 5700 4575 5250 23 | 4 1 0 50 0 12 12 0.0000 4 135 1785 5925 5550 itk::MeshSource<>\001 24 | -6 25 | 6 4125 6300 7875 6750 26 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 27 | 4125 6300 7875 6300 7875 6750 4125 6750 4125 6300 28 | 4 1 0 50 0 12 12 0.0000 4 180 3150 6000 6600 itk::VoronoiDiagram2DGenerator\001 29 | -6 30 | 6 9150 5250 10875 5700 31 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 32 | 9150 5250 10875 5250 10875 5700 9150 5700 9150 5250 33 | 4 1 0 50 0 12 12 0.0000 4 135 1155 10050 5550 itk::Mesh<>\001 34 | -6 35 | 6 8625 6300 11625 6750 36 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 37 | 8625 6300 11625 6300 11625 6750 8625 6750 8625 6300 38 | 4 1 0 50 0 12 12 0.0000 4 180 2415 10125 6600 itk::VoronoiDiagram2D<>\001 39 | -6 40 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 41 | 0 0 1.00 60.00 120.00 42 | 2175 6300 2175 5700 43 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 44 | 0 0 1.00 60.00 120.00 45 | 6000 6300 6000 5700 46 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 47 | 0 0 1.00 60.00 120.00 48 | 10050 6300 10050 5700 49 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/VoronoiSegmentationCollaborationDiagram2.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 6 1500 3225 2550 4125 11 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 2025 3675 525 450 2025 3675 2550 4125 12 | 4 1 0 50 0 0 12 0.0000 0 180 390 2025 3600 Input\001 13 | 4 1 0 50 0 0 12 0.0000 0 180 750 2025 3825 itk::Image\001 14 | -6 15 | 6 8100 3225 9150 4125 16 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 8625 3675 525 450 8625 3675 9150 4125 17 | 4 1 0 50 0 0 12 0.0000 0 180 525 8625 3600 Output\001 18 | 4 1 0 50 0 0 12 0.0000 0 180 750 8625 3825 itk::Image\001 19 | -6 20 | 6 5400 2175 7200 2775 21 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 6300 2475 900 300 6300 2475 7200 2775 22 | 4 1 0 50 0 0 12 0.0000 0 135 1515 6300 2550 Estimated Variance\001 23 | -6 24 | 6 3450 2175 5250 2775 25 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 4350 2475 900 300 4350 2475 5250 2775 26 | 4 1 0 50 0 0 12 0.0000 0 135 1260 4350 2550 Estimated Mean\001 27 | -6 28 | 6 3450 4575 5250 5175 29 | 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 4350 4875 900 300 4350 4875 5250 5175 30 | 4 1 0 50 0 0 12 0.0000 0 180 1470 4350 4950 Prior (binary mask)\001 31 | -6 32 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 33 | 0 0 1.00 60.00 120.00 34 | 2550 3675 3375 3675 35 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 36 | 0 0 1.00 60.00 120.00 37 | 7275 3675 8100 3675 38 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 39 | 0 0 1.00 60.00 120.00 40 | 4350 2775 4350 3225 41 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 42 | 0 0 1.00 60.00 120.00 43 | 6300 2775 6300 3225 44 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 45 | 0 0 1.00 60.00 120.00 46 | 4350 4575 4350 4125 47 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 48 | 7275 4125 7275 3225 3375 3225 3375 4125 7275 4125 49 | 4 1 0 50 0 0 12 0.0000 0 180 2505 5325 3750 VoronoiSegmentationImageFilter\001 50 | -------------------------------------------------------------------------------- /XFigOriginals/SoftwareGuide/Art/WatershedCatchmentBasins.fig: -------------------------------------------------------------------------------- 1 | #FIG 3.2 2 | Landscape 3 | Center 4 | Inches 5 | Letter 6 | 100.00 7 | Single 8 | -2 9 | 1200 2 10 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 11 | 1 1 1.00 60.00 120.00 12 | 10384 3622 10119 4410 13 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 14 | 1 1 1.00 60.00 120.00 15 | 10674 3616 11008 4454 16 | 2 2 0 1 7 0 60 0 10 0.000 0 0 -1 0 0 5 17 | 8100 3452 9035 3452 9035 4875 8100 4875 8100 3452 18 | 2 2 0 1 7 0 60 0 6 0.000 0 0 -1 0 0 5 19 | 9098 3446 10500 3446 10500 4875 9098 4875 9098 3446 20 | 2 2 0 1 7 0 60 0 8 0.000 0 0 -1 0 0 5 21 | 10548 3452 11475 3452 11475 4875 10548 4875 10548 3452 22 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 23 | 1 1 1.00 60.00 120.00 24 | 8890 3597 8665 4497 25 | 2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2 26 | 1 1 1.00 60.00 120.00 27 | 9262 3597 9634 4423 28 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 2 29 | 0 0 1.00 60.00 120.00 30 | 0 0 1.00 60.00 120.00 31 | 11607 3816 11607 4679 32 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 33 | 10523 3803 11658 3803 34 | 2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2 35 | 9842 4717 11632 4717 36 | 3 4 0 2 0 7 50 0 -1 0.000 0 0 0 6 37 | 1050 4875 1800 4875 1800 3825 3525 3825 3450 4725 4275 4800 38 | 0.000 1.000 1.000 1.000 1.000 0.000 39 | 3 4 0 2 0 7 50 0 -1 0.000 0 0 0 8 40 | 4575 4875 5325 4875 5475 3525 5700 4875 6825 4800 6900 3450 41 | 7125 4800 7800 4800 42 | 0.000 1.000 1.000 1.000 1.000 1.000 1.000 0.000 43 | 3 4 0 2 0 7 50 0 -1 0.000 0 0 0 8 44 | 8167 4799 8917 4799 9067 3449 9292 4799 10417 4724 10492 3374 45 | 10717 4724 11474 4837 46 | 0.000 1.000 1.000 1.000 1.000 1.000 1.000 0.000 47 | 4 0 0 50 0 0 12 1.5708 4 180 1350 11904 4791 Watershed Depth\001 48 | 4 1 0 50 0 0 16 0.0000 0 225 3090 2700 5227 Intensity profile of input image\001 49 | 4 1 0 50 0 0 16 0.0000 0 225 3315 6225 5227 Intensity profile of filtered image\001 50 | 4 1 0 50 0 0 16 0.0000 0 225 2460 9750 5227 Watershed Segmentation\001 51 | --------------------------------------------------------------------------------