本文整理汇总了C++中typenamefiltertype::Pointer::ClearSeeds方法的典型用法代码示例。如果您正苦于以下问题:C++ Pointer::ClearSeeds方法的具体用法?C++ Pointer::ClearSeeds怎么用?C++ Pointer::ClearSeeds使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类typenamefiltertype::Pointer
的用法示例。
在下文中一共展示了Pointer::ClearSeeds方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: confidenceConnectedImageFilterITK
void ConfidenceConnectedImageFilterITK::confidenceConnectedImageFilterITK() {
replaceValue_.setVolume(inport1_.getData());
if (!enableProcessing_.get()) {
outport1_.setData(inport1_.getData(), false);
return;
}
typedef itk::Image<T, 3> InputImageType1;
typedef itk::Image<T, 3> OutputImageType1;
typename InputImageType1::Pointer p1 = voreenToITK<T>(inport1_.getData());
//Filter define
typedef itk::ConfidenceConnectedImageFilter<InputImageType1, OutputImageType1> FilterType;
typename FilterType::Pointer filter = FilterType::New();
filter->SetInput(p1);
if (seedPointPort_.hasChanged()) {
const PointListGeometry<tgt::vec3>* pointList = dynamic_cast< const PointListGeometry<tgt::vec3>* >(seedPointPort_.getData());
if (pointList) {
seedPoints = pointList->getData();
}
}
filter->ClearSeeds();
typename InputImageType1::IndexType seed;
for (size_t i = 0; i < seedPoints.size(); i++) {
seed[0] = seedPoints[i].x;
seed[1] = seedPoints[i].y;
seed[2] = seedPoints[i].z;
filter->AddSeed(seed);
}
filter->SetNumberOfIterations(numberOfIterations_.get());
filter->SetReplaceValue(replaceValue_.getValue<T>());
filter->SetMultiplier(multiplier_.get());
filter->SetInitialNeighborhoodRadius(initialNeighborhoodRadius_.get());
observe(filter.GetPointer());
try
{
filter->Update();
}
catch (itk::ExceptionObject &e)
{
LERROR(e);
}
Volume* outputVolume1 = 0;
outputVolume1 = ITKToVoreenCopy<T>(filter->GetOutput());
if (outputVolume1) {
transferRWM(inport1_.getData(), outputVolume1);
transferTransformation(inport1_.getData(), outputVolume1);
outport1_.setData(outputVolume1);
} else
outport1_.setData(0);
}