template<typename TInputImage, typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
class itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >
Computes the gradient of an image using directional derivatives.
Computes the gradient of an image using directional derivatives. The directional derivative at each pixel location is computed by convolution with a first-order derivative operator.
The second template parameter defines the value type used in the derivative operator (defaults to float). The third template parameter defines the value type used for output image (defaults to float). The output image is defined as a covariant vector image whose value type is specified as this third template parameter.
- See Also
- Image
-
Neighborhood
-
NeighborhoodOperator
-
NeighborhoodIterator
Definition at line 60 of file itkGradientImageFilter.h.
|
void | DynamicThreadedGenerateData (const OutputImageRegionType &outputRegionForThread) override |
|
| GradientImageFilter () |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
| ~GradientImageFilter () override |
|
virtual void | CallCopyInputRegionToOutputRegion (OutputImageRegionType &destRegion, const InputImageRegionType &srcRegion) |
|
virtual void | CallCopyOutputRegionToInputRegion (InputImageRegionType &destRegion, const OutputImageRegionType &srcRegion) |
|
void | GenerateInputRequestedRegion () override |
|
| ImageToImageFilter () |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
void | VerifyInputInformation () ITKv5_CONST override |
|
| ~ImageToImageFilter () override |
|
void | PushBackInput (const DataObject *input) override |
|
void | PushFrontInput (const DataObject *input) override |
|
virtual void | AfterThreadedGenerateData () |
|
virtual void | AllocateOutputs () |
|
virtual void | BeforeThreadedGenerateData () |
|
void | ClassicMultiThread (ThreadFunctionType callbackFunction) |
|
void | GenerateData () override |
|
virtual const
ImageRegionSplitterBase * | GetImageRegionSplitter () const |
|
| ImageSource () |
|
virtual unsigned int | SplitRequestedRegion (unsigned int i, unsigned int pieces, OutputImageRegionType &splitRegion) |
|
| ~ImageSource () override=default |
|
virtual void | ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId) |
|
virtual bool | GetDynamicMultiThreading () const |
|
virtual void | SetDynamicMultiThreading (bool _arg) |
|
virtual void | DynamicMultiThreadingOn () |
|
virtual void | DynamicMultiThreadingOff () |
|
virtual void | AddInput (DataObject *input) |
|
void | AddOptionalInputName (const DataObjectIdentifierType &) |
|
void | AddOptionalInputName (const DataObjectIdentifierType &, DataObjectPointerArraySizeType idx) |
|
virtual void | AddOutput (DataObject *output) |
|
bool | AddRequiredInputName (const DataObjectIdentifierType &) |
|
bool | AddRequiredInputName (const DataObjectIdentifierType &, DataObjectPointerArraySizeType idx) |
|
virtual void | CacheInputReleaseDataFlags () |
|
virtual void | GenerateOutputRequestedRegion (DataObject *output) |
|
DataObject * | GetInput (const DataObjectIdentifierType &key) |
|
const DataObject * | GetInput (const DataObjectIdentifierType &key) const |
|
virtual const
DataObjectPointerArraySizeType & | GetNumberOfRequiredInputs () const |
|
virtual const
DataObjectPointerArraySizeType & | GetNumberOfRequiredOutputs () const |
|
bool | IsIndexedInputName (const DataObjectIdentifierType &) const |
|
bool | IsIndexedOutputName (const DataObjectIdentifierType &) const |
|
bool | IsRequiredInputName (const DataObjectIdentifierType &) const |
|
DataObjectPointerArraySizeType | MakeIndexFromInputName (const DataObjectIdentifierType &name) const |
|
DataObjectPointerArraySizeType | MakeIndexFromOutputName (const DataObjectIdentifierType &name) const |
|
DataObjectIdentifierType | MakeNameFromInputIndex (DataObjectPointerArraySizeType idx) const |
|
DataObjectIdentifierType | MakeNameFromOutputIndex (DataObjectPointerArraySizeType idx) const |
|
| ProcessObject () |
|
virtual void | PropagateResetPipeline () |
|
virtual void | ReleaseInputs () |
|
virtual void | RemoveInput (const DataObjectIdentifierType &key) |
|
virtual void | RemoveInput (DataObjectPointerArraySizeType) |
|
virtual void | RemoveOutput (const DataObjectIdentifierType &key) |
|
virtual void | RemoveOutput (DataObjectPointerArraySizeType idx) |
|
bool | RemoveRequiredInputName (const DataObjectIdentifierType &) |
|
virtual void | RestoreInputReleaseDataFlags () |
|
virtual void | SetInput (const DataObjectIdentifierType &key, DataObject *input) |
|
virtual void | SetNthInput (DataObjectPointerArraySizeType num, DataObject *input) |
|
virtual void | SetNthOutput (DataObjectPointerArraySizeType num, DataObject *output) |
|
void | SetNumberOfIndexedInputs (DataObjectPointerArraySizeType num) |
|
void | SetNumberOfIndexedOutputs (DataObjectPointerArraySizeType num) |
|
virtual void | SetNumberOfRequiredInputs (DataObjectPointerArraySizeType) |
|
virtual void | SetNumberOfRequiredOutputs (DataObjectPointerArraySizeType _arg) |
|
virtual void | SetOutput (const DataObjectIdentifierType &key, DataObject *output) |
|
virtual void | SetPrimaryInput (DataObject *input) |
|
virtual void | SetPrimaryOutput (DataObject *output) |
|
void | SetRequiredInputNames (const NameArray &) |
|
virtual void | VerifyPreconditions () ITKv5_CONST |
|
| ~ProcessObject () override |
|
DataObject * | GetInput (DataObjectPointerArraySizeType idx) |
|
const DataObject * | GetInput (DataObjectPointerArraySizeType idx) const |
|
DataObject * | GetPrimaryInput () |
|
const DataObject * | GetPrimaryInput () const |
|
virtual void | SetPrimaryInputName (const DataObjectIdentifierType &key) |
|
virtual const char * | GetPrimaryInputName () const |
|
DataObject * | GetOutput (const DataObjectIdentifierType &key) |
|
const DataObject * | GetOutput (const DataObjectIdentifierType &key) const |
|
virtual void | SetPrimaryOutputName (const DataObjectIdentifierType &key) |
|
virtual const char * | GetPrimaryOutputName () const |
|
DataObject * | GetOutput (DataObjectPointerArraySizeType idx) |
|
const DataObject * | GetOutput (DataObjectPointerArraySizeType idx) const |
|
DataObject * | GetPrimaryOutput () |
|
const DataObject * | GetPrimaryOutput () const |
|
| Object () |
|
bool | PrintObservers (std::ostream &os, Indent indent) const |
|
virtual void | SetTimeStamp (const TimeStamp &time) |
|
| ~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 () |
|
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
virtual::itk::LightObject::Pointer itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::CreateAnother |
( |
| ) |
const |
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
void itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::GenerateInputRequestedRegion |
( |
| ) |
|
|
overridevirtual |
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
void itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::GenerateOutputInformation |
( |
| ) |
|
|
overrideprivatevirtual |
Generate the information describing the output data. The default implementation of this method will copy information from the input to the output. A filter may override this method if its output will have different information than its input. For instance, a filter that shrinks an image will need to provide an implementation for this method that changes the spacing of the pixels. Such filters should call their superclass' implementation of this method prior to changing the information values they need (i.e. GenerateOutputInformation() should call Superclass::GenerateOutputInformation() prior to changing the information.
Reimplemented from itk::ProcessObject.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
virtual const char* itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::GetNameOfClass |
( |
| ) |
const |
|
virtual |
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
virtual bool itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::GetUseImageDirection |
( |
| ) |
const |
|
virtual |
The UseImageDirection flag determines whether image derivatives are computed with respect to the image grid or with respect to the physical space. When this flag is ON the derivatives are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
Method for creation through the object factory.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
void itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::PrintSelf |
( |
std::ostream & |
os, |
|
|
Indent |
indent |
|
) |
| const |
|
overrideprotectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::ProcessObject.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
template<typename TValue >
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
virtual void itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::SetUseImageDirection |
( |
bool |
_arg | ) |
|
|
virtual |
The UseImageDirection flag determines whether image derivatives are computed with respect to the image grid or with respect to the physical space. When this flag is ON the derivatives are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
virtual void itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::SetUseImageSpacing |
( |
bool |
_arg | ) |
|
|
virtual |
Set/Get whether or not the filter will use the spacing of the input image in its calculations
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
void itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::SetUseImageSpacingOff |
( |
| ) |
|
|
inline |
Ignore the image spacing. Use this option if you want derivatives in isotropic pixel space. Default is UseImageSpacingOn.
Definition at line 112 of file itkGradientImageFilter.h.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
void itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::SetUseImageSpacingOn |
( |
| ) |
|
|
inline |
Use the image spacing information in calculations. Use this option if you want derivatives in physical space. Default is UseImageSpacingOn.
Definition at line 107 of file itkGradientImageFilter.h.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
virtual void itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::UseImageDirectionOff |
( |
| ) |
|
|
virtual |
The UseImageDirection flag determines whether image derivatives are computed with respect to the image grid or with respect to the physical space. When this flag is ON the derivatives are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
virtual void itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::UseImageDirectionOn |
( |
| ) |
|
|
virtual |
The UseImageDirection flag determines whether image derivatives are computed with respect to the image grid or with respect to the physical space. When this flag is ON the derivatives are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
template<typename TInputImage , typename TOperatorValueType = float, typename TOutputValueType = float, typename TOutputImageType = Image< CovariantVector< TOutputValueType, TInputImage::ImageDimension >, TInputImage::ImageDimension >>
constexpr unsigned int itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::InputImageDimension = TInputImage::ImageDimension |
|
static |