|
using | InputToOutputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::OutputImageDimension, Self::InputImageDimension > |
|
using | OutputToInputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::InputImageDimension, Self::OutputImageDimension > |
|
using | CompareLinesCallback = std::function< void(const LineEncodingConstIterator ¤tRun, const LineEncodingConstIterator &neighborRun, OffsetValueType oStart, OffsetValueType oLast)> |
|
using | ConsecutiveVectorType = std::vector< OutputPixelType > |
|
using | InternalLabelType = SizeValueType |
|
using | LineEncodingConstIterator = typename LineEncodingType::const_iterator |
|
using | LineEncodingIterator = typename LineEncodingType::iterator |
|
using | LineEncodingType = std::vector< RunLength > |
|
using | LineMapType = std::vector< LineEncodingType > |
|
using | OffsetVectorConstIterator = typename OffsetVectorType::const_iterator |
|
using | OffsetVectorType = std::vector< OffsetValueType > |
|
using | OutSizeType = typename TOutputImage::RegionType::SizeType |
|
using | UnionFindType = std::vector< InternalLabelType > |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | EnclosingFilter = ImageToImageFilter< TInputImage, TOutputImage > |
|
using | IndexType = typename TInputImage::IndexType |
|
using | InputImageConstPointer = typename InputImageType::ConstPointer |
|
using | InputImagePointer = typename InputImageType::Pointer |
|
using | InputImageType = TInputImage |
|
using | InputPixelType = typename TInputImage::PixelType |
|
using | OffsetType = typename TInputImage::OffsetType |
|
using | OutputImagePixelType = typename TOutputImage::PixelType |
|
using | OutputImagePointer = typename OutputImageType::Pointer |
|
using | OutputImageType = TOutputImage |
|
using | OutputIndexType = typename TOutputImage::IndexType |
|
using | OutputOffsetType = typename TOutputImage::OffsetType |
|
using | OutputPixelType = typename TOutputImage::PixelType |
|
using | OutputRegionType = typename TOutputImage::RegionType |
|
using | OutputSizeType = typename TOutputImage::SizeType |
|
using | Pointer = SmartPointer< Self > |
|
using | RegionType = OutputRegionType |
|
using | Self = ScanlineFilterCommon |
|
using | SizeType = typename TInputImage::SizeType |
|
| ImageToImageFilter () |
|
| ~ImageToImageFilter () override=default |
|
void | VerifyInputInformation () ITKv5_CONST override |
|
virtual void | CallCopyOutputRegionToInputRegion (InputImageRegionType &destRegion, const OutputImageRegionType &srcRegion) |
|
virtual void | CallCopyInputRegionToOutputRegion (OutputImageRegionType &destRegion, const InputImageRegionType &srcRegion) |
|
void | PushBackInput (const DataObject *input) override |
|
void | PushFrontInput (const DataObject *input) override |
|
| ImageSource () |
|
| ~ImageSource () override=default |
|
void | ClassicMultiThread (ThreadFunctionType callbackFunction) |
|
virtual void | ThreadedGenerateData (const OutputImageRegionType ®ion, ThreadIdType threadId) |
|
virtual void | DynamicThreadedGenerateData (const OutputImageRegionType &outputRegionForThread) |
|
virtual void | AllocateOutputs () |
|
virtual void | BeforeThreadedGenerateData () |
|
virtual void | AfterThreadedGenerateData () |
|
virtual const ImageRegionSplitterBase * | GetImageRegionSplitter () const |
|
virtual unsigned int | SplitRequestedRegion (unsigned int i, unsigned int pieces, OutputImageRegionType &splitRegion) |
|
virtual bool | GetDynamicMultiThreading () const |
|
virtual void | SetDynamicMultiThreading (bool _arg) |
|
virtual void | DynamicMultiThreadingOn () |
|
virtual void | DynamicMultiThreadingOff () |
|
| ProcessObject () |
|
| ~ProcessObject () override |
|
DataObject * | GetInput (const DataObjectIdentifierType &key) |
|
const DataObject * | GetInput (const DataObjectIdentifierType &key) const |
|
DataObject * | GetInput (DataObjectPointerArraySizeType idx) |
|
const DataObject * | GetInput (DataObjectPointerArraySizeType idx) const |
|
virtual void | SetInput (const DataObjectIdentifierType &key, DataObject *input) |
|
virtual void | SetNthInput (DataObjectPointerArraySizeType idx, DataObject *input) |
|
virtual void | AddInput (DataObject *input) |
|
virtual void | RemoveInput (const DataObjectIdentifierType &key) |
|
virtual void | RemoveInput (DataObjectPointerArraySizeType) |
|
DataObject * | GetPrimaryInput () |
|
const DataObject * | GetPrimaryInput () const |
|
virtual void | SetPrimaryInputName (const DataObjectIdentifierType &key) |
|
virtual const char * | GetPrimaryInputName () const |
|
virtual void | SetPrimaryInput (DataObject *object) |
|
void | SetNumberOfIndexedInputs (DataObjectPointerArraySizeType num) |
|
virtual void | SetNumberOfRequiredInputs (DataObjectPointerArraySizeType) |
|
virtual const DataObjectPointerArraySizeType & | GetNumberOfRequiredInputs () const |
|
bool | RemoveRequiredInputName (const DataObjectIdentifierType &) |
|
bool | IsRequiredInputName (const DataObjectIdentifierType &) const |
|
void | SetRequiredInputNames (const NameArray &) |
|
bool | AddRequiredInputName (const DataObjectIdentifierType &) |
|
bool | AddRequiredInputName (const DataObjectIdentifierType &, DataObjectPointerArraySizeType idx) |
|
void | AddOptionalInputName (const DataObjectIdentifierType &) |
|
void | AddOptionalInputName (const DataObjectIdentifierType &, DataObjectPointerArraySizeType idx) |
|
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 i) |
|
const DataObject * | GetOutput (DataObjectPointerArraySizeType i) const |
|
virtual void | SetOutput (const DataObjectIdentifierType &name, DataObject *output) |
|
virtual void | RemoveOutput (const DataObjectIdentifierType &key) |
|
DataObject * | GetPrimaryOutput () |
|
const DataObject * | GetPrimaryOutput () const |
|
virtual void | SetPrimaryOutput (DataObject *object) |
|
virtual void | SetNthOutput (DataObjectPointerArraySizeType idx, DataObject *output) |
|
virtual void | AddOutput (DataObject *output) |
|
virtual void | RemoveOutput (DataObjectPointerArraySizeType idx) |
|
virtual void | SetNumberOfRequiredOutputs (DataObjectPointerArraySizeType _arg) |
|
virtual const DataObjectPointerArraySizeType & | GetNumberOfRequiredOutputs () const |
|
void | SetNumberOfIndexedOutputs (DataObjectPointerArraySizeType num) |
|
DataObjectIdentifierType | MakeNameFromInputIndex (DataObjectPointerArraySizeType idx) const |
|
DataObjectIdentifierType | MakeNameFromOutputIndex (DataObjectPointerArraySizeType idx) const |
|
DataObjectPointerArraySizeType | MakeIndexFromInputName (const DataObjectIdentifierType &name) const |
|
DataObjectPointerArraySizeType | MakeIndexFromOutputName (const DataObjectIdentifierType &name) const |
|
bool | IsIndexedInputName (const DataObjectIdentifierType &) const |
|
bool | IsIndexedOutputName (const DataObjectIdentifierType &) const |
|
virtual void | VerifyPreconditions () ITKv5_CONST |
|
virtual void | GenerateOutputRequestedRegion (DataObject *output) |
|
virtual void | GenerateOutputInformation () |
|
virtual void | PropagateResetPipeline () |
|
virtual void | ReleaseInputs () |
|
virtual void | CacheInputReleaseDataFlags () |
|
virtual void | RestoreInputReleaseDataFlags () |
|
virtual bool | GetThreaderUpdateProgress () const |
|
virtual void | ThreaderUpdateProgressOn () |
|
virtual void | ThreaderUpdateProgressOff () |
|
virtual void | SetThreaderUpdateProgress (bool arg) |
|
| Object () |
|
| ~Object () override |
|
bool | PrintObservers (std::ostream &os, Indent indent) const |
|
virtual void | SetTimeStamp (const TimeStamp &timeStamp) |
|
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 () |
|
bool | CheckNeighbors (const OutputIndexType &A, const OutputIndexType &B) const |
|
void | CompareLines (const LineEncodingType ¤t, const LineEncodingType &Neighbour, bool sameLineOffset, bool labelCompare, OutputPixelType background, CompareLinesCallback callback) |
|
void | ComputeEquivalence (const SizeValueType workUnitResultsIndex, bool strictlyLess) |
|
SizeValueType | CreateConsecutive (OutputPixelType backgroundValue) |
|
WorkUnitData | CreateWorkUnitData (const RegionType &outputRegionForThread) |
|
SizeValueType | IndexToLinearIndex (const IndexType &index) const |
|
void | InitUnion (InternalLabelType numberOfLabels) |
|
void | LinkLabels (const InternalLabelType label1, const InternalLabelType label2) |
|
InternalLabelType | LookupSet (const InternalLabelType label) |
|
void | SetupLineOffsets (bool wholeNeighborhood) |
|
void | Register () const |
|
| ScanlineFilterCommon (EnclosingFilter *enclosingFilter) |
|
void | UnRegister () const noexcept |
|
| ~ScanlineFilterCommon ()=default |
|
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
|
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ThreaderCallback (void *arg) |
|
static constexpr float | progressFixedToFloat (uint32_t fixed) |
|
static uint32_t | progressFloatToFixed (float f) |
|
static Pointer | New () |
|
bool | m_DynamicMultiThreading |
|
bool | m_Updating |
|
TimeStamp | m_OutputInformationMTime |
|
std::atomic< int > | m_ReferenceCount |
|
ConsecutiveVectorType | m_Consecutive |
|
WeakPointer< EnclosingFilter > | m_EnclosingFilter |
|
bool | m_FullyConnected |
|
LineMapType | m_LineMap |
|
OffsetVectorType | m_LineOffsets |
|
std::mutex | m_Mutex |
|
std::atomic< SizeValueType > | m_NumberOfLabels |
|
UnionFindType | m_UnionFind |
|
std::deque< WorkUnitData > | m_WorkUnitResults |
|
static constexpr unsigned int | ImageDimension = TOutputImage::ImageDimension |
|
static constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
|
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
|
template<typename TInputImage, typename TOutputImage = LabelMap<LabelObject<SizeValueType, TInputImage::ImageDimension>>>
class itk::BinaryImageToLabelMapFilter< TInputImage, TOutputImage >
Label the connected components in a binary image and produce a collection of label objects.
BinaryImageToLabelMapFilter labels the objects in a binary image. Each distinct object is assigned a unique label. The final object labels start with 1 and are consecutive. Objects that are reached earlier by a raster order scan have a lower label.
The GetOutput() function of this class returns an itk::LabelMap.
This implementation was taken from the Insight Journal paper: https://www.insight-journal.org/browse/publication/176
- Author
- Gaetan Lehmann. Biologie du Developpement et de la Reproduction, INRA de Jouy-en-Josas, France.
- See also
- ConnectedComponentImageFilter, LabelImageToLabelMapFilter, LabelMap, LabelObject
- ITK Sphinx Examples:
-
- Examples
- SphinxExamples/src/Filtering/ImageFusion/ColorBoundariesOfRegions/Code.cxx, SphinxExamples/src/Filtering/ImageFusion/ColorLabeledRegions/Code.cxx, SphinxExamples/src/Filtering/ImageFusion/OverlayLabelMapOnImage/Code.cxx, SphinxExamples/src/Filtering/ImageStatistics/StatisticalPropertiesOfRegions/Code.cxx, SphinxExamples/src/Filtering/LabelMap/ConvertLabelMapToImage/Code.cxx, SphinxExamples/src/Filtering/LabelMap/KeepRegionsAboveLevel/Code.cxx, SphinxExamples/src/Filtering/LabelMap/LabelBinaryRegionsInImage/Code.cxx, and SphinxExamples/src/Filtering/LabelMap/RemoveLabelsFromLabelMap/Code.cxx.
Definition at line 55 of file itkBinaryImageToLabelMapFilter.h.