ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itkScalarImageToTextureFeaturesFilter.h
Go to the documentation of this file.
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#ifndef itkScalarImageToTextureFeaturesFilter_h
19#define itkScalarImageToTextureFeaturesFilter_h
20
22
25
26namespace itk
27{
28namespace Statistics
29{
95
96template <typename TImageType,
97 typename THistogramFrequencyContainer = DenseFrequencyContainer2,
98 typename TMaskImageType = TImageType>
99class ITK_TEMPLATE_EXPORT ScalarImageToTextureFeaturesFilter : public ProcessObject
100{
101public:
107
109 itkOverrideGetNameOfClassMacro(ScalarImageToTextureFeaturesFilter);
110
112 itkNewMacro(Self);
113
114 using FrequencyContainerType = THistogramFrequencyContainer;
115 using ImageType = TImageType;
116 using ImagePointer = typename ImageType::Pointer;
117 using MaskImageType = TMaskImageType;
118 using MaskPointer = typename MaskImageType::Pointer;
119 using MaskPixelType = typename MaskImageType::PixelType;
120
121 using PixelType = typename ImageType::PixelType;
122 using OffsetType = typename ImageType::OffsetType;
126
129
132
133 // More work needs to be done to fix wrapping
134 // using TextureFeatureName = itk::Statistics::TextureFeatureEnum;
135 using TextureFeatureName = uint8_t;
137
142
145
148
151
154
158 void
160
161 const ImageType *
162 GetInput() const;
163
165 itkGetConstReferenceObjectMacro(FeatureMeans, FeatureValueVector);
166 itkGetConstReferenceObjectMacro(FeatureStandardDeviations, FeatureValueVector);
168
170 itkSetConstObjectMacro(RequestedFeatures, FeatureNameVector);
171 itkGetConstObjectMacro(RequestedFeatures, FeatureNameVector);
173
176 itkSetConstObjectMacro(Offsets, OffsetVector);
177 itkGetConstObjectMacro(Offsets, OffsetVector);
179
182 void
184
187 void
190
193 void
195
196 const MaskImageType *
198
201 void
203
204 itkGetConstMacro(FastCalculations, bool);
205 itkSetMacro(FastCalculations, bool);
206 itkBooleanMacro(FastCalculations);
207
208protected:
211 void
212 PrintSelf(std::ostream & os, Indent indent) const override;
213
214 void
216
217 void
219
221 void
222 GenerateData() override;
223
228
229private:
231
233
239};
240} // end of namespace Statistics
241} // end of namespace itk
242
243#ifndef ITK_MANUAL_INSTANTIATION
244# include "itkScalarImageToTextureFeaturesFilter.hxx"
245#endif
246
247#endif
Decorates any subclass of itkObject with a DataObject API.
SmartPointer< Self > Pointer
Control indentation during Print() invocation.
Definition itkIndent.h:50
virtual void SetInput(const DataObjectIdentifierType &key, DataObject *input)
Protected method for setting indexed and named inputs.
DataObjectPointerArray::size_type DataObjectPointerArraySizeType
virtual DataObjectPointer MakeOutput(DataObjectPointerArraySizeType idx)
Make a DataObject of the correct type to used as the specified output.
Implements transparent reference counting.
This class is a container for frequencies of bins in an histogram.
This class computes texture feature coefficients from a grey level co-occurrence matrix.
This class computes a co-occurrence matrix (histogram) from a given image and a mask image if provide...
void SetPixelValueMinMax(PixelType min, PixelType max)
HistogramToTextureFeaturesFilter< HistogramType > TextureFeaturesFilterType
const FeatureValueVectorDataObjectType * GetFeatureMeansOutput() const
ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
DataObjectPointer MakeOutput(DataObjectPointerArraySizeType) override
Make a DataObject of the correct type to used as the specified output.
void PrintSelf(std::ostream &os, Indent indent) const override
VectorContainer< unsigned char, TextureFeatureName > FeatureNameVector
const FeatureValueVectorDataObjectType * GetFeatureStandardDeviationsOutput() const
ScalarImageToCooccurrenceMatrixFilter< ImageType, FrequencyContainerType, MaskImageType > CooccurrenceMatrixFilterType
void SetInsidePixelValue(MaskPixelType insidePixelValue)
typename CooccurrenceMatrixFilterType::HistogramType HistogramType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
detail::VectorContainer< std::conditional_t< std::is_void_v< T2 >, SizeValueType, T1 >, std::conditional_t< std::is_void_v< T2 >, T1, T2 > > VectorContainer