ITK
6.0.0
Insight Toolkit
|
#include <itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h>
Processes points for CorrelationImageToImageMetricv4 GetValueAndDerivative
.
Helper class for CorrelationImageToImageMetricv4 To
compute the average pixel intensities of the fixed image and the moving image on the sampled points or inside the virtual image region: \( \bar f (CorrelationImageToImageMetricv4::m_AverageFix ) \) \( \bar m (CorrelationImageToImageMetricv4::m_AverageMov ) \).
Definition at line 35 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
Classes | |
struct | CorrelationMetricValueDerivativePerThreadStruct |
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | FixedOutputPointType = typename FixedTransformType::OutputPointType |
using | FixedTransformType = typename ImageToImageMetricv4Type::FixedTransformType |
using | ImageToImageMetricv4Type = typename Superclass::ImageToImageMetricv4Type |
using | MovingOutputPointType = typename MovingTransformType::OutputPointType |
using | MovingTransformType = typename ImageToImageMetricv4Type::MovingTransformType |
using | Pointer = SmartPointer< Self > |
using | Self = CorrelationImageToImageMetricv4GetValueAndDerivativeThreader |
using | Superclass = ImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric > |
Public Member Functions | |
const char * | GetNameOfClass () const override |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
void | AfterThreadedExecution () override |
void | BeforeThreadedExecution () override |
CorrelationImageToImageMetricv4GetValueAndDerivativeThreader () | |
bool | ProcessPoint (const VirtualIndexType &virtualIndex, const VirtualPointType &virtualPoint, const FixedImagePointType &mappedFixedPoint, const FixedImagePixelType &fixedImageValue, const FixedImageGradientType &mappedFixedImageGradient, const MovingImagePointType &mappedMovingPoint, const MovingImagePixelType &movingImageValue, const MovingImageGradientType &movingImageGradient, MeasureType &metricValueReturn, DerivativeType &localDerivativeReturn, const ThreadIdType threadId) const override |
bool | ProcessVirtualPoint (const VirtualIndexType &virtualIndex, const VirtualPointType &virtualPoint, const ThreadIdType threadId) override |
~CorrelationImageToImageMetricv4GetValueAndDerivativeThreader () override=default | |
Private Member Functions | |
itkAlignedTypedef (ITK_CACHE_LINE_ALIGNMENT, PaddedCorrelationMetricValueDerivativePerThreadStruct, AlignedCorrelationMetricValueDerivativePerThreadStruct) | |
itkPadStruct (ITK_CACHE_LINE_ALIGNMENT, CorrelationMetricValueDerivativePerThreadStruct, PaddedCorrelationMetricValueDerivativePerThreadStruct) | |
Private Attributes | |
TCorrelationMetric * | m_CorrelationAssociate {} |
std::unique_ptr< AlignedCorrelationMetricValueDerivativePerThreadStruct[]> | m_CorrelationMetricValueDerivativePerThreadVariables |
using itk::CorrelationImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric, TCorrelationMetric >::ConstPointer = SmartPointer<const Self> |
Definition at line 45 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
using itk::CorrelationImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric, TCorrelationMetric >::FixedOutputPointType = typename FixedTransformType::OutputPointType |
Definition at line 68 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
using itk::CorrelationImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric, TCorrelationMetric >::FixedTransformType = typename ImageToImageMetricv4Type::FixedTransformType |
Definition at line 67 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
using itk::CorrelationImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric, TCorrelationMetric >::ImageToImageMetricv4Type = typename Superclass::ImageToImageMetricv4Type |
Definition at line 54 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
using itk::CorrelationImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric, TCorrelationMetric >::MovingOutputPointType = typename MovingTransformType::OutputPointType |
Definition at line 70 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
using itk::CorrelationImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric, TCorrelationMetric >::MovingTransformType = typename ImageToImageMetricv4Type::MovingTransformType |
Definition at line 69 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
using itk::CorrelationImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric, TCorrelationMetric >::Pointer = SmartPointer<Self> |
Definition at line 44 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
using itk::CorrelationImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric, TCorrelationMetric >::Self = CorrelationImageToImageMetricv4GetValueAndDerivativeThreader |
Standard class type aliases.
Definition at line 42 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
using itk::CorrelationImageToImageMetricv4GetValueAndDerivativeThreader< TDomainPartitioner, TImageToImageMetric, TCorrelationMetric >::Superclass = ImageToImageMetricv4GetValueAndDerivativeThreader<TDomainPartitioner, TImageToImageMetric> |
Definition at line 43 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
|
protected |
|
overrideprotecteddefault |
|
overrideprotected |
Overload: Collects the results from each thread and sums them. Results are stored in the enclosing class m_Value
and m_DerivativeResult
. Behavior depends on m_AverageValueAndDerivativeByNumberOfValuePoints, m_NumberOfValidPoints, to average the value sum, and to average derivative sums for global transforms only (i.e. transforms without local support).
|
overrideprotected |
Overload: Resize and initialize per thread objects: number of valid points moving transform jacobian cross-correlation specific variables
|
override |
|
private |
|
private |
|
static |
|
overrideprotected |
This function computes the local voxel-wise contribution of the metric to the global integral of the metric/derivative.
|
overrideprotected |
Overload to avoid execution of adding entries to m_MeasurePerThread StorePointDerivativeResult() after this function calls ProcessPoint(). Method called by the threaders to process the given virtual point. This in turn calls TransformAndEvaluateFixedPoint
, TransformAndEvaluateMovingPoint
, and ProcessPoint
.
|
private |
Internal pointer to the metric object in use by this threader. This will avoid costly dynamic casting in tight loops.
Definition at line 156 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.
|
private |
Definition at line 152 of file itkCorrelationImageToImageMetricv4GetValueAndDerivativeThreader.h.