23 #ifndef IROCSFEATURES_HH 24 #define IROCSFEATURES_HH 59 std::string
const &normTypeString);
67 blitz::TinyVector<double,3>
const &featureElementSizeUm = 1.0,
87 std::string
const &groupName, std::string
const &featureName);
92 template<
typename DataT>
98 template<
typename DataT>
101 const int maxBand, std::string
const &cacheFileName);
105 template<
typename DataT>
108 std::string
const &cacheFileName);
110 template<
typename DataT>
113 std::string
const &cacheFileName);
120 std::vector< blitz::TinyVector<double,3> > &markers,
121 blitz::TinyVector<double,3>
const &upperBoundUm,
122 int nInRootSamples,
int nOutRootSamples);
131 std::vector<svt::BasicFV> &trainVectors,
132 std::string
const &modelFileName,
133 float cost,
float gamma);
136 std::vector<svt::BasicFV>& testVectors,
137 std::string
const &modelFileName);
140 std::vector<svt::BasicFV> &trainVectors,
141 std::string
const &modelFileName,
142 float cost,
float gamma);
145 std::vector<svt::BasicFV>& testVectors,
146 std::string
const &modelFileName);
148 static std::string
h5GroupName(
const std::string& rawGroup);
154 std::map<int,std::string> _houghDsNames;
157 std::map< atb::SDMagFeatureIndex, atb::Array<double,3> > _sdFeatures;
158 std::map< int, atb::Array<double,3> > _houghFeatures;
161 std::string _featureBaseGroup;
162 std::vector<std::string> _featureGroups;
163 std::vector<NormalizationType> _normalize;
164 std::vector< std::vector<std::string> > _featureNames;
165 std::vector< std::vector<double> > _means, _stddevs;
171 #include "iRoCSFeatures.icc" atb::Array< blitz::TinyVector< double, 3 >, 3 > & intrinsicCoordinates(atb::Array< DataT, 3 > const &data, atb::IRoCS const &rct, std::string const &cacheFileName)
Features(blitz::TinyVector< double, 3 > const &featureElementSizeUm=1.0, iRoCS::ProgressReporter *progress=NULL)
static std::string normalizationTypeToString(NormalizationType type)
Classes and functions for n-D separable convolution.
atb::Array< double, 3 > & houghFeature(atb::Array< DataT, 3 > const &data, const int state, std::string const &cacheFileName)
static NormalizationType stringToNormalizationType(std::string const &normTypeString)
The IRoCS class provides means to attach iRoCS to different kinds of processed root images...
void generateRandomSamples(std::vector< blitz::TinyVector< double, 3 > > &markers, blitz::TinyVector< double, 3 > const &upperBoundUm, int nInRootSamples, int nOutRootSamples)
void trainMultiClassSVM(std::vector< svt::BasicFV > &trainVectors, std::string const &modelFileName, float cost, float gamma)
void classifyMultiClassSVM(std::vector< svt::BasicFV > &testVectors, std::string const &modelFileName)
static const int NegativeRadius
void normalizeFeatures(std::vector< svt::BasicFV > &samples)
void classifyTwoClassSVM(std::vector< svt::BasicFV > &testVectors, std::string const &modelFileName)
blitz::TinyVector< double, 3 > const & elementSizeUm() const
The Implementation of the filter computing the Laplacian of the input data using Forward-backward-dif...
std::string houghFeatureName(const int state) const
Structures and functions for spherical tensor extraction and arithmetics.
atb::Array< double, 3 > & sdFeature(atb::Array< DataT, 3 > const &data, atb::SDMagFeatureIndex const &index, const int maxBand, std::string const &cacheFileName)
static const int PositiveMagnitude
atb::Array< double, 3 > & dataScaled(atb::Array< DataT, 3 > const &data, std::string const &cacheFileName)
static std::string h5GroupName(const std::string &rawGroup)
void saveNormalizationParameters(std::string const &modelFileName)
Data structure to index a feature structure consisting of multi-scale spherical derivative features...
The intrinsic root coordinate system.
void addFeatureToGroup(std::string const &groupName, std::string const &featureName)
Adds a new feature name to the specified group.
void loadNormalizationParameters(std::string const &modelFileName)
std::string sdFeatureName(atb::SDMagFeatureIndex const &index) const
static const int PositiveRadius
void setGroupNormalization(std::string const &groupName, NormalizationType normType)
void trainTwoClassSVM(std::vector< svt::BasicFV > &trainVectors, std::string const &modelFileName, float cost, float gamma)
void deleteFeature(atb::SDMagFeatureIndex const &index)
static const int NegativeMagnitude