X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=itk%2FclitkVectorBSplineInterpolateImageFunctionWithLUT.h;h=5bcbd8aff4f961d60c65bfbc8aed0b46cb5e6327;hb=6986b996d66273ab7818c12f51cbf5ae049ac04e;hp=eb96f69d34ac119f4aa07bac2aadd5538c6c9bc7;hpb=0b7c9b1e1215634b02cbd38d4e4ba101d6111ba8;p=clitk.git diff --git a/itk/clitkVectorBSplineInterpolateImageFunctionWithLUT.h b/itk/clitkVectorBSplineInterpolateImageFunctionWithLUT.h index eb96f69..5bcbd8a 100644 --- a/itk/clitkVectorBSplineInterpolateImageFunctionWithLUT.h +++ b/itk/clitkVectorBSplineInterpolateImageFunctionWithLUT.h @@ -3,7 +3,7 @@ Authors belong to: - University of LYON http://www.universite-lyon.fr/ - - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - Léon Bérard cancer center http://www.centreleonberard.fr - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr This software is distributed WITHOUT ANY WARRANTY; without even @@ -14,7 +14,7 @@ - BSD See included LICENSE.txt file - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html -======================================================================-====*/ +===========================================================================**/ #ifndef __clitkVectorBSplineInterpolateImageFunctionWithLUT_h #define __clitkVectorBSplineInterpolateImageFunctionWithLUT_h /* ========================================================================= @@ -36,7 +36,6 @@ ========================================================================= */ #include "itkBSplineWeightsCalculator.h" -//#include "clitkTimer.h" #include "clitkVectorBSplineInterpolateImageFunction.h" namespace clitk { @@ -69,7 +68,7 @@ namespace clitk { itkNewMacro(Self); /** Setting LUT sampling (one parameters by dimension or a single - one for all dim); Default is 10 (for each dim) **/ + one for all dim); Default is 20 (for each dim) **/ void SetLUTSamplingFactor(const int& s); void SetLUTSamplingFactors(const SizeType& s); @@ -85,6 +84,15 @@ namespace clitk { //void SetOutputSpacing(const SpacingType & s); //void SetInputImageIsCoefficient(bool inputIsCoef) { mInputIsCoef = inputIsCoef; } + /** Evaluate the function at a ContinuousIndex position. + Overwritten for taking LUT into account (RP: multi-threading-compatible version, + the threadID is actually ignored) */ + virtual OutputType EvaluateAtContinuousIndex(const ContinuousIndexType & index, unsigned int /* threadID */ ) const + { + std::cout << "EvaluateAtContinuousIndex" << std::endl; + return this->EvaluateAtContinuousIndex( index ); + } + /** Evaluate the function at a ContinuousIndex position. Overwritten for taking LUT into account */ virtual OutputType EvaluateAtContinuousIndex(const ContinuousIndexType & index ) const; @@ -94,15 +102,6 @@ namespace clitk { various order, dimension, sampling ... **/ static void ComputeBlendingWeights(int dim, int order, int sampling, TCoefficientType * weights); - /** Timer giving computation time for coefficients computation **/ - // const clitk::Timer & GetCoefTimer() const { return mCoefficientTimer; } - - /** Get estimated error **/ - - double GetIntrinsicError() const { return *mIntrinsecError; } - long GetNumberOfError() const { return *mNumberOfError; } - double GetIntrinsicErrorMax() const { return *mIntrinsecErrorMax; } - protected: VectorBSplineInterpolateImageFunctionWithLUT(); ~VectorBSplineInterpolateImageFunctionWithLUT(){;} @@ -117,14 +116,6 @@ namespace clitk { /** Sampling factors for LUT weights **/ SizeType mSamplingFactors; bool mWeightsAreUpToDate; - //SpacingType mOutputSpacing; - - double * mIntrinsecError; - double * mIntrinsecErrorMax; - long * mNumberOfError; - - //JV add iscoeff, and splineorders - // bool mInputIsCoef; SizeType mSplineOrders; // Filter to compute weights @@ -135,15 +126,6 @@ namespace clitk { void UpdateWeightsProperties(); IndexType GetSampleIndexOfPixelPosition(const ContinuousIndexType & x, IndexType & EvaluateIndex) const; - // Timing options - // clitk::Timer mCoefficientTimer; - // clitk::Timer mLUTTimer; - bool mTimerEnabled; - - //JV threadsafety: everything on the stack - //std::vector mCorrectedSupportOffset; - //std::vector mCorrectedSupportIndex; - TCoefficientType * coef; }; // end class clitkVectorBSplineInterpolateImageFunctionWithLUT } // end namespace