X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=segmentation%2FclitkStructuresExtractionFilter.txx;h=d78586169849f9288b087fab88e2bb3f07f6071e;hb=48727138e88f056b67312603560e600362346462;hp=3a3e0ab7c7758cbb26306b5330c028cfdf1b9e79;hpb=7bf9a4e01ea80f06257ece374f291abb513c09fc;p=clitk.git diff --git a/segmentation/clitkStructuresExtractionFilter.txx b/segmentation/clitkStructuresExtractionFilter.txx index 3a3e0ab..d785861 100644 --- a/segmentation/clitkStructuresExtractionFilter.txx +++ b/segmentation/clitkStructuresExtractionFilter.txx @@ -47,11 +47,12 @@ AddRelativePositionListFilename(std::string s) { template typename clitk::StructuresExtractionFilter::MaskImagePointer clitk::StructuresExtractionFilter:: -ApplyRelativePositionList(std::string name, MaskImageType * input) +ApplyRelativePositionList(std::string name, MaskImageType * input, bool overlap) { // Create all RelativePositionList for(unsigned int i=0; iSetDisplayUsedStructuresOnlyFlag(this->GetDisplayUsedStructuresOnlyFlag()); rpl->SetAFDB(GetAFDB()); rpl->Read(mListOfRelativePositionListFilename[i]); std::string s = rpl->GetInputName(); @@ -71,8 +72,14 @@ ApplyRelativePositionList(std::string name, MaskImageType * input) relpos->SetCurrentStepNumber(GetCurrentStepNumber()); relpos->SetWriteStepFlag(GetWriteStepFlag()); relpos->SetInput(input); + if (!this->GetDisplayUsedStructuresOnlyFlag() && overlap) { + std::string n = name.substr(8,3); + MaskImagePointer ref = this->GetAFDB()->template GetImage (n+"_Ref"); + relpos->SetReferenceImageForOverlapMeasure(ref); + } relpos->Update(); input = relpos->GetOutput(); + SetCurrentStepNumber(relpos->GetCurrentStepNumber()); } return input;