From: Enblend <enb...@li...> - 2011-05-03 18:30:03
|
changeset 41e15deb3d0b in /hgrepo/e/en/enblend/enblend details: http://enblend.hg.sourceforge.net/hgweb/enblend/enblend/hgrepo/e/en/enblend/enblend?cmd=changeset;node=41e15deb3d0b description: Optimizer configuration moved diffstat: src/mask.h | 21 +-------------------- src/postoptimizer.h | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 34 deletions(-) diffs (110 lines): diff -r b5345d1e298c -r 41e15deb3d0b src/mask.h --- a/src/mask.h Tue May 03 12:23:06 2011 +0200 +++ b/src/mask.h Tue May 03 12:23:06 2011 +0200 @@ -1126,15 +1126,6 @@ } } - // Areas other than intersection region have maximum cost. - combineThreeImagesMP(stride(mismatchImageStride, mismatchImageStride, uvBB.apply(srcImageRange(*whiteAlpha))), - stride(mismatchImageStride, mismatchImageStride, uvBB.apply(srcImage(*blackAlpha))), - srcIter(mismatchImage.upperLeft() + uvBBStrideOffset), - destIter(mismatchImage.upperLeft() + uvBBStrideOffset), - ifThenElse(Arg1() & Arg2(), - Arg3(), - Param(NumericTraits<MismatchImagePixelType>::max()))); - #ifndef SKIP_OPTIMIZER @@ -1154,17 +1145,7 @@ defaultOptimizerChain->addOptimizer("dijkstra"); // Fire optimizer chain (runs every optimizer on the list in sequence) - defaultOptimizerChain->runCurrentOptimizer(); - - combineThreeImagesMP(stride(mismatchImageStride, mismatchImageStride, uvBB.apply(srcImageRange(*whiteAlpha))), - stride(mismatchImageStride, mismatchImageStride, uvBB.apply(srcImage(*blackAlpha))), - srcIter(mismatchImage.upperLeft() + uvBBStrideOffset), - destIter(mismatchImage.upperLeft() + uvBBStrideOffset), - ifThenElse(!(Arg1() || Arg2()), - Param(NumericTraits<MismatchImagePixelType>::one()), - Arg3())); - - defaultOptimizerChain->runCurrentOptimizer(); + defaultOptimizerChain->runOptimizerChain(); delete params; delete defaultOptimizerChain; diff -r b5345d1e298c -r 41e15deb3d0b src/postoptimizer.h --- a/src/postoptimizer.h Tue May 03 12:23:06 2011 +0200 +++ b/src/postoptimizer.h Tue May 03 12:23:06 2011 +0200 @@ -62,7 +62,6 @@ uBB(aUBB), vBB(aVBB), parameters(*someParameters), whiteAlpha(aWhiteAlpha), blackAlpha(aBlackAlpha), uvBB(aUVBB) { - configureOptimizer(); } virtual void runOptimizer() {} @@ -107,10 +106,12 @@ mismatchImageSize, mismatchImageStride, uvBBStrideOffset, contours, uBB, vBB, parameters, whiteAlpha, blackAlpha, uvBB) { - configureOptimizer(); } virtual void runOptimizer() { + + configureOptimizer(); + int segmentNumber; for (ContourVector::iterator currentContour = (*this->contours).begin(); @@ -224,14 +225,12 @@ private: void configureOptimizer() { -#if 0 - Areas other than intersection region have maximum cost. - combineThreeImagesMP(stride(this->mismatchImageStride, this->mismatchImageStride, this->uvBB->apply(srcImageRange(*this->whiteAlpha))), - stride(this->mismatchImageStride, this->mismatchImageStride, this->uvBB->apply(srcImage(*this->blackAlpha))), + //Areas other than intersection region have maximum cost. + combineThreeImagesMP(stride(*this->mismatchImageStride, *this->mismatchImageStride, this->uvBB->apply(srcImageRange(*this->whiteAlpha))), + stride(*this->mismatchImageStride, *this->mismatchImageStride, this->uvBB->apply(srcImage(*this->blackAlpha))), srcIter((this->mismatchImage)->upperLeft() + *this->uvBBStrideOffset), destIter((this->mismatchImage)->upperLeft() + *this->uvBBStrideOffset), ifThenElse(Arg1() & Arg2(), Arg3(), Param(NumericTraits<MismatchImagePixelType>::max()))); -#endif } AnnealOptimizer(AnnealOptimizer* other); // NOT IMPLEMENTED AnnealOptimizer& operator=(const AnnealOptimizer &other); // NOT IMPLEMENTED @@ -257,6 +256,9 @@ uBB, vBB, parameters, whiteAlpha, blackAlpha, uvBB) {} virtual void runOptimizer() { + + configureOptimizer(); + Rect2D withinMismatchImage(*this->mismatchImageSize); int segmentNumber; @@ -367,13 +369,11 @@ private: void configureOptimizer() { -#if 0 - combineThreeImagesMP(stride(this->mismatchImageStride, this->mismatchImageStride, this->uvBB->apply(srcImageRange(*this->whiteAlpha))), - stride(this->mismatchImageStride, this->mismatchImageStride, this->uvBB->apply(srcImage(*this->blackAlpha))), - srcIter((this->mismatchImage)->upperLeft() + *this->uvBBStrideOffset), - destIter((this->mismatchImage)->upperLeft() + *this->uvBBStrideOffset), - ifThenElse(!(Arg1() || Arg2()), Param(NumericTraits<MismatchImagePixelType>::one()), Arg3())); -#endif + combineThreeImagesMP(stride(*this->mismatchImageStride, *this->mismatchImageStride, this->uvBB->apply(srcImageRange(*this->whiteAlpha))), + stride(*this->mismatchImageStride, *this->mismatchImageStride, this->uvBB->apply(srcImage(*this->blackAlpha))), + srcIter((this->mismatchImage)->upperLeft() + *this->uvBBStrideOffset), + destIter((this->mismatchImage)->upperLeft() + *this->uvBBStrideOffset), + ifThenElse(!(Arg1() || Arg2()), Param(NumericTraits<MismatchImagePixelType>::one()), Arg3())); } DijkstraOptimizer(DijkstraOptimizer* other); // NOT IMPLEMENTED DijkstraOptimizer& operator=(const DijkstraOptimizer &other); // NOT IMPLEMENTED |