10 std::cerr <<
" --error: minValues and maxValues don't have the same size" <<std::endl;
15 std::cerr <<
" --error: Initialization vector was empty" <<std::endl;
20 std::cerr <<
" --error: number of gaussian is null" <<std::endl;
35 double f = (
static_cast<double>(std::rand()) / static_cast<double>(RAND_MAX));
57 GaussianFunctionType::Pointer distribution = GaussianFunctionType::New();
60 GaussianFunctionType::CovarianceMatrixType cov;
70 distribution->SetMean( mean );
71 distribution->SetCovariance( cov );
78 double value = (
static_cast<double>(std::rand()) / static_cast<double>(RAND_MAX) );
79 return value*(max-min) + min;
std::vector< double > maxValues
max values
std::vector< double > minValues
min values
std::vector< double > m_Alphas
itk::SmartPointer< Self > Pointer
unsigned int m_NbGaussian
unsigned int m_DimensionGaussian
itk::Statistics::GaussianMembershipFunction< itk::VariableLengthVector< double > >::Pointer randomDistribution()
initilize a Gaussian distribution
double randUniform(double min, double max)
std::vector< GaussianFunctionType::Pointer > m_GaussianModel
void Update() ITK_OVERRIDE