template<typename TFixedImage, typename TMovingImage>
class itk::KappaStatisticImageToImageMetric< TFixedImage, TMovingImage >
Computes similarity between two binary objects to be registered.
This Class is templated over the type of the fixed and moving images to be compared. The metric here is designed for matching pixels in two images with the same exact value. Only one value can be considered (the default is 255) and can be specified with the SetForegroundValue method. In the computation of the metric, only foreground pixels are considered. The metric value is given by 2*|A&B|/(|A|+|B|), where A is the foreground region in the moving image, B is the foreground region in the fixed image, & is intersection, and |.| indicates the area of the enclosed set. The metric is described in "Morphometric Analysis of White Matter Lesions in MR
Images: Method and Validation", A. P. Zijdenbos, B. M. Dawant, R. A. Margolin, A. C. Palmer.
This metric is especially useful when considering the similarity between binary images. Given the nature of binary images, a nearest neighbor interpolator is the preferred interpolator.
Metric values range from 0.0 (no foreground alignment) to 1.0 (perfect foreground alignment). When dealing with optimizers that can only minimize a metric, use the ComplementOn() method.
Definition at line 54 of file itkKappaStatisticImageToImageMetric.h.
|
| void | ComputeGradient () override |
| |
| virtual::itk::LightObject::Pointer | CreateAnother () const |
| |
| void | GetDerivative (const TransformParametersType &, DerivativeType &derivative) const override |
| |
| virtual const char * | GetNameOfClass () const |
| |
| MeasureType | GetValue (const TransformParametersType ¶meters) const override |
| |
| void | GetValueAndDerivative (const TransformParametersType ¶meters, MeasureType &Value, DerivativeType &Derivative) const override |
| |
|
| virtual void | SetForegroundValue (RealType _arg) |
| |
| virtual RealType | GetForegroundValue () const |
| |
|
| virtual void | SetComplement (bool _arg) |
| |
| virtual void | ComplementOn () |
| |
| virtual void | ComplementOff () |
| |
| virtual bool | GetComplement () const |
| |
| virtual const FixedImageRegionType & | GetFixedImageRegion () const |
| |
| virtual const FixedImagePixelType & | GetFixedImageSamplesIntensityThreshold () const |
| |
| virtual const GradientImageType * | GetGradientImage () const |
| |
| virtual const InterpolatorType * | GetInterpolator () const |
| |
| virtual GradientImageType * | GetModifiableGradientImage () |
| |
| virtual InterpolatorType * | GetModifiableInterpolator () |
| |
| virtual TransformType * | GetModifiableTransform () |
| |
| SizeValueType | GetNumberOfMovingImageSamples () |
| |
| unsigned int | GetNumberOfParameters () const override |
| |
| virtual const SizeValueType & | GetNumberOfPixelsCounted () const |
| |
| SizeValueType | GetNumberOfSpatialSamples () |
| |
| virtual const TransformType * | GetTransform () const |
| |
| virtual const bool & | GetUseAllPixels () const |
| |
| virtual const bool & | GetUseFixedImageIndexes () const |
| |
| virtual const bool & | GetUseFixedImageSamplesIntensityThreshold () const |
| |
| virtual const bool & | GetUseSequentialSampling () const |
| |
| virtual void | Initialize () |
| |
| | itkVirtualSetObjectMacro (Transform, TransformType) |
| |
| virtual void | MultiThreadingInitialize () |
| |
| void | SetFixedImageIndexes (const FixedImageIndexContainer &indexes) |
| |
| virtual void | SetFixedImageRegion (const FixedImageRegionType reg) |
| |
| void | SetFixedImageSamplesIntensityThreshold (const FixedImagePixelType &thresh) |
| |
| virtual void | SetInterpolator (InterpolatorType *_arg) |
| |
| void | SetNumberOfSpatialSamples (SizeValueType num) |
| |
| void | SetTransformParameters (const ParametersType ¶meters) const |
| |
| void | SetUseAllPixels (bool useAllPixels) |
| |
| void | SetUseFixedImageIndexes (bool useIndexes) |
| |
| void | SetUseFixedImageSamplesIntensityThreshold (bool useThresh) |
| |
| void | SetUseSequentialSampling (bool useSequential) |
| |
| void | UseAllPixelsOff () |
| |
| void | UseAllPixelsOn () |
| |
| virtual void | SetFixedImage (const FixedImageType *_arg) |
| |
| virtual const FixedImageType * | GetFixedImage () const |
| |
| virtual void | SetMovingImage (const MovingImageType *_arg) |
| |
| virtual const MovingImageType * | GetMovingImage () const |
| |
| virtual void | SetMovingImageMask (const MovingImageMaskType *_arg) |
| |
| virtual const MovingImageMaskType * | GetMovingImageMask () const |
| |
| virtual void | SetFixedImageMask (const FixedImageMaskType *_arg) |
| |
| virtual const FixedImageMaskType * | GetFixedImageMask () const |
| |
| void | SetNumberOfWorkUnits (ThreadIdType numberOfWorkUnits) |
| |
| virtual const ThreadIdType & | GetNumberOfWorkUnits () const |
| |
| virtual void | SetComputeGradient (bool _arg) |
| |
| virtual const bool & | GetComputeGradient () const |
| |
| virtual void | ComputeGradientOn () |
| |
| virtual void | ComputeGradientOff () |
| |
| virtual void | SetNumberOfFixedImageSamples (SizeValueType numSamples) |
| |
| virtual const SizeValueType & | GetNumberOfFixedImageSamples () const |
| |
| void | ReinitializeSeed () |
| |
| void | ReinitializeSeed (int seed) |
| |
| virtual void | SetUseCachingOfBSplineWeights (bool _arg) |
| |
| virtual const bool & | GetUseCachingOfBSplineWeights () const |
| |
| virtual void | UseCachingOfBSplineWeightsOn () |
| |
| virtual void | UseCachingOfBSplineWeightsOff () |
| |
| virtual MultiThreaderBase * | GetModifiableThreader () |
| |
| virtual const MultiThreaderBase * | GetThreader () const |
| |
| const TransformPointer * | GetThreaderTransform () |
| |
| virtual void | GetDerivative (const ParametersType ¶meters, DerivativeType &derivative) const =0 |
| |
| virtual MeasureType | GetValue (const ParametersType ¶meters) const =0 |
| |
| virtual void | GetValueAndDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
| |
| unsigned long | AddObserver (const EventObject &event, Command *cmd) const |
| |
| unsigned long | AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const |
| |
| LightObject::Pointer | CreateAnother () const override |
| |
| virtual void | DebugOff () const |
| |
| virtual void | DebugOn () const |
| |
| Command * | GetCommand (unsigned long tag) |
| |
| bool | GetDebug () const |
| |
| MetaDataDictionary & | GetMetaDataDictionary () |
| |
| const MetaDataDictionary & | GetMetaDataDictionary () const |
| |
| virtual ModifiedTimeType | GetMTime () const |
| |
| virtual const TimeStamp & | GetTimeStamp () const |
| |
| bool | HasObserver (const EventObject &event) const |
| |
| void | InvokeEvent (const EventObject &) |
| |
| void | InvokeEvent (const EventObject &) const |
| |
| virtual void | Modified () const |
| |
| void | Register () const override |
| |
| void | RemoveAllObservers () |
| |
| void | RemoveObserver (unsigned long tag) const |
| |
| void | SetDebug (bool debugFlag) const |
| |
| void | SetReferenceCount (int) override |
| |
| void | UnRegister () const noexcept override |
| |
| void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
| |
| void | SetMetaDataDictionary (MetaDataDictionary &&rrhs) |
| |
| virtual void | SetObjectName (std::string _arg) |
| |
| virtual const std::string & | GetObjectName () const |
| |
| Pointer | Clone () const |
| |
| virtual void | Delete () |
| |
| virtual int | GetReferenceCount () const |
| |
| void | Print (std::ostream &os, Indent indent=0) const |
| |
|
| | KappaStatisticImageToImageMetric () |
| |
| void | PrintSelf (std::ostream &os, Indent indent) const override |
| |
| | ~KappaStatisticImageToImageMetric () override=default |
| |
| virtual void | ComputeImageDerivatives (const MovingImagePointType &mappedPoint, ImageDerivativesType &gradient, ThreadIdType threadId) const |
| |
| void | GetValueAndDerivativeMultiThreadedInitiate () const |
| |
| void | GetValueAndDerivativeMultiThreadedPostProcessInitiate () const |
| |
| virtual void | GetValueAndDerivativeThread (ThreadIdType threadId) const |
| |
| virtual void | GetValueAndDerivativeThreadPostProcess (ThreadIdType threadId, bool withinSampleThread) const |
| |
| virtual void | GetValueAndDerivativeThreadPreProcess (ThreadIdType threadId, bool withinSampleThread) const |
| |
| virtual bool | GetValueAndDerivativeThreadProcessSample (ThreadIdType threadId, SizeValueType fixedImageSample, const MovingImagePointType &mappedPoint, double movingImageValue, const ImageDerivativesType &movingImageGradientValue) const |
| |
| void | GetValueMultiThreadedInitiate () const |
| |
| void | GetValueMultiThreadedPostProcessInitiate () const |
| |
| virtual void | GetValueThread (ThreadIdType threadId) const |
| |
| | ImageToImageMetric () |
| |
| virtual void | PreComputeTransformValues () |
| |
| virtual void | SampleFixedImageIndexes (FixedImageSampleContainer &samples) const |
| |
| virtual void | SampleFixedImageRegion (FixedImageSampleContainer &samples) const |
| |
| virtual void | SampleFullFixedImageRegion (FixedImageSampleContainer &samples) const |
| |
| virtual void | SynchronizeTransforms () const |
| |
| virtual void | TransformPoint (unsigned int sampleNumber, MovingImagePointType &mappedPoint, bool &sampleOk, double &movingImageValue, ThreadIdType threadId) const |
| |
| virtual void | TransformPointWithDerivatives (unsigned int sampleNumber, MovingImagePointType &mappedPoint, bool &sampleOk, double &movingImageValue, ImageDerivativesType &movingImageGradient, ThreadIdType threadId) const |
| |
| | ~ImageToImageMetric () override=default |
| |
| virtual void | GetValueThreadPreProcess (ThreadIdType threadId, bool withinSampleThread) const |
| |
| virtual bool | GetValueThreadProcessSample (ThreadIdType threadId, SizeValueType fixedImageSample, const MovingImagePointType &mappedPoint, double movingImageValue) const |
| |
| virtual void | GetValueThreadPostProcess (ThreadIdType threadId, bool withinSampleThread) const |
| |
| | SingleValuedCostFunction ()=default |
| |
| | ~SingleValuedCostFunction () override |
| |
| | CostFunctionTemplate ()=default |
| |
| | CostFunctionTemplate ()=default |
| |
| | ~CostFunctionTemplate () override=default |
| |
| | ~CostFunctionTemplate () override=default |
| |
| | Object () |
| |
| bool | PrintObservers (std::ostream &os, Indent indent) const |
| |
| void | PrintSelf (std::ostream &os, Indent indent) const override |
| |
| virtual void | SetTimeStamp (const TimeStamp &timeStamp) |
| |
| | ~Object () override |
| |
| virtual LightObject::Pointer | InternalClone () const |
| |
| | LightObject () |
| |
| virtual void | PrintHeader (std::ostream &os, Indent indent) const |
| |
| virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
| |
| virtual | ~LightObject () |
| |