Skip to content
Snippets Groups Projects
Commit 00160593 authored by Jordi Inglada's avatar Jordi Inglada
Browse files

STYLE: naming conventions

parent afc88b89
No related branches found
No related tags found
No related merge requests found
......@@ -40,7 +40,7 @@ using SampleVectorType = std::vector<SampleType>;
Estimate standard deviations of the components in one pass using
Welford's algorithm
*/
SampleType estimateStds(const SampleVectorType& samples)
SampleType EstimateStds(const SampleVectorType& samples)
{
const auto nbSamples = samples.size();
const auto nbComponents = samples[0].size();
......@@ -71,7 +71,7 @@ SampleType estimateStds(const SampleVectorType& samples)
* the input samples and add them to the new data set until nbSamples
* are added. The elements of newSamples are removed before proceeding.
*/
void replicateSamples(const SampleVectorType& inSamples,
void ReplicateSamples(const SampleVectorType& inSamples,
const size_t nbSamples,
SampleVectorType& newSamples)
{
......@@ -92,7 +92,7 @@ void replicateSamples(const SampleVectorType& inSamples,
* input variables divided by stdFactor (defaults to 10). The
* elements of newSamples are removed before proceeding.
*/
void jitterSamples(const SampleVectorType& inSamples,
void JitterSamples(const SampleVectorType& inSamples,
const size_t nbSamples,
SampleVectorType& newSamples,
float stdFactor=10,
......@@ -106,7 +106,7 @@ void jitterSamples(const SampleVectorType& inSamples,
std::srand(seed);
// We use one gaussian distribution per component since they may
// have different stds
auto stds = estimateStds(inSamples);
auto stds = EstimateStds(inSamples);
std::vector<std::normal_distribution<double>> gaussDis(nbComponents);
#pragma omp parallel for
for(size_t i=0; i<nbComponents; ++i)
......@@ -136,7 +136,7 @@ struct NeighborSorter
}
};
double computeSquareDistance(const SampleType& x, const SampleType& y)
double ComputeSquareDistance(const SampleType& x, const SampleType& y)
{
assert(x.size()==y.size());
double dist{0};
......@@ -151,7 +151,7 @@ using NNIndicesType = std::vector<NeighborType>;
using NNVectorType = std::vector<NNIndicesType>;
/** Returns the indices of the nearest neighbors for each input sample
*/
void findKNNIndices(const SampleVectorType& inSamples,
void FindKNNIndices(const SampleVectorType& inSamples,
const size_t nbNeighbors,
NNVectorType& nnVector)
{
......@@ -164,7 +164,7 @@ void findKNNIndices(const SampleVectorType& inSamples,
for(size_t neighborIdx=0; neighborIdx<nbSamples; ++neighborIdx)
{
if(sampleIdx!=neighborIdx)
nns.push_back({neighborIdx, computeSquareDistance(inSamples[sampleIdx],
nns.push_back({neighborIdx, ComputeSquareDistance(inSamples[sampleIdx],
inSamples[neighborIdx])});
}
std::partial_sort(nns.begin(), nns.begin()+nbNeighbors, nns.end(), NeighborSorter{});
......@@ -175,7 +175,7 @@ void findKNNIndices(const SampleVectorType& inSamples,
/** Generate the new sample in the line linking s1 and s2
*/
SampleType smoteCombine(const SampleType& s1, const SampleType& s2, double position)
SampleType SmoteCombine(const SampleType& s1, const SampleType& s2, double position)
{
auto result = s1;
for(size_t i=0; i<s1.size(); ++i)
......@@ -189,7 +189,7 @@ synthetic minority over-sampling technique, Journal of artificial
intelligence research, 16(), 321–357 (2002).
http://dx.doi.org/10.1613/jair.953
*/
void smote(const SampleVectorType& inSamples,
void Smote(const SampleVectorType& inSamples,
const size_t nbSamples,
SampleVectorType& newSamples,
const int nbNeighbors,
......@@ -197,7 +197,7 @@ void smote(const SampleVectorType& inSamples,
{
newSamples.resize(nbSamples);
NNVectorType nnVector;
findKNNIndices(inSamples, nbNeighbors, nnVector);
FindKNNIndices(inSamples, nbNeighbors, nnVector);
// The input samples are selected randomly with replacement
std::srand(seed);
#pragma omp parallel for
......@@ -207,7 +207,7 @@ void smote(const SampleVectorType& inSamples,
const auto sample = inSamples[sampleIdx];
const auto neighborIdx = nnVector[sampleIdx][std::rand()%nbNeighbors].index;
const auto neighbor = inSamples[neighborIdx];
newSamples[i] = smoteCombine(sample, neighbor, std::rand()/double{RAND_MAX});
newSamples[i] = SmoteCombine(sample, neighbor, std::rand()/double{RAND_MAX});
}
}
......
......@@ -124,24 +124,24 @@ protected:
using Superclass::MakeOutput;
SampleVectorType extractSamples(const ogr::DataSource::Pointer vectors,
SampleVectorType ExtractSamples(const ogr::DataSource::Pointer vectors,
size_t layerName,
const std::string& classField, const int label,
const std::vector<std::string>& excludedFields = {});
void sampleToOGRFeatures(const ogr::DataSource::Pointer& vectors,
void SampleToOGRFeatures(const ogr::DataSource::Pointer& vectors,
ogr::DataSource* output,
const SampleVectorType& samples,
const size_t layerName,
const std::string& classField, int label,
const std::vector<std::string>& excludedFields = {});
std::set<size_t> getExcludedFieldsIds(const std::vector<std::string>& excludedFields,
std::set<size_t> GetExcludedFieldsIds(const std::vector<std::string>& excludedFields,
const ogr::Layer& inputLayer);
bool isNumericField(const ogr::Feature& feature, const int idx);
bool IsNumericField(const ogr::Feature& feature, const int idx);
ogr::Feature selectTemplateFeature(const ogr::Layer& inputLayer,
const std::string& classField, int label);
ogr::Feature SelectTemplateFeature(const ogr::Layer& inputLayer,
const std::string& classField, int label);
private:
SampleAugmentationFilter(const Self &); //purposely not implemented
void operator =(const Self&); //purposely not implemented
......
......@@ -84,7 +84,7 @@ SampleAugmentationFilter
OGRDataSourcePointerType inputDS = dynamic_cast<OGRDataSourceType*>(this->itk::ProcessObject::GetInput(0));
auto outputDS = static_cast<ogr::DataSource *>(this->itk::ProcessObject::GetOutput(0));
auto inSamples = this->extractSamples(inputDS, m_Layer,
auto inSamples = this->ExtractSamples(inputDS, m_Layer,
m_ClassFieldName,
m_Label,
m_ExcludedFields);
......@@ -93,13 +93,13 @@ SampleAugmentationFilter
{
case Strategy::Replicate:
{
sampleAugmentation::replicateSamples(inSamples, m_NumberOfSamples,
sampleAugmentation::ReplicateSamples(inSamples, m_NumberOfSamples,
newSamples);
}
break;
case Strategy::Jitter:
{
sampleAugmentation::jitterSamples(inSamples, m_NumberOfSamples,
sampleAugmentation::JitterSamples(inSamples, m_NumberOfSamples,
newSamples,
m_StdFactor,
m_Seed);
......@@ -107,14 +107,14 @@ SampleAugmentationFilter
break;
case Strategy::Smote:
{
sampleAugmentation::smote(inSamples, m_NumberOfSamples,
sampleAugmentation::Smote(inSamples, m_NumberOfSamples,
newSamples,
m_SmoteNeighbors,
m_Seed);
}
break;
}
this->sampleToOGRFeatures(inputDS, outputDS, newSamples, m_Layer,
this->SampleToOGRFeatures(inputDS, outputDS, newSamples, m_Layer,
m_ClassFieldName,
m_Label,
m_ExcludedFields);
......@@ -128,7 +128,7 @@ SampleAugmentationFilter
*/
SampleAugmentationFilter::SampleVectorType
SampleAugmentationFilter
::extractSamples(const ogr::DataSource::Pointer vectors,
::ExtractSamples(const ogr::DataSource::Pointer vectors,
size_t layerName,
const std::string& classField, const int label,
const std::vector<std::string>& excludedFields)
......@@ -147,7 +147,7 @@ SampleAugmentationFilter
}
auto numberOfFields = (*featureIt).ogr().GetFieldCount();
auto excludedIds = this->getExcludedFieldsIds(excludedFields, layer);
auto excludedIds = this->GetExcludedFieldsIds(excludedFields, layer);
SampleVectorType samples;
int sampleCount{0};
while( featureIt!=layer.end() )
......@@ -160,7 +160,7 @@ SampleAugmentationFilter
for(auto idx=0; idx<numberOfFields; ++idx)
{
if(excludedIds.find(idx) == excludedIds.cend() &&
this->isNumericField((*featureIt), idx))
this->IsNumericField((*featureIt), idx))
mv.push_back((*featureIt).ogr().GetFieldAsDouble(idx));
}
samples.push_back(mv);
......@@ -178,7 +178,7 @@ SampleAugmentationFilter
void
SampleAugmentationFilter
::sampleToOGRFeatures(const ogr::DataSource::Pointer& vectors,
::SampleToOGRFeatures(const ogr::DataSource::Pointer& vectors,
ogr::DataSource* output,
const SampleAugmentationFilter::SampleVectorType& samples,
const size_t layerName,
......@@ -187,7 +187,7 @@ SampleAugmentationFilter
{
auto inputLayer = vectors->GetLayer(layerName);
auto excludedIds = this->getExcludedFieldsIds(excludedFields, inputLayer);
auto excludedIds = this->GetExcludedFieldsIds(excludedFields, inputLayer);
OGRSpatialReference * oSRS = nullptr;
if (inputLayer.GetSpatialRef())
......@@ -206,7 +206,7 @@ SampleAugmentationFilter
}
auto featureCount = outputLayer.GetFeatureCount(false);
auto templateFeature = this->selectTemplateFeature(inputLayer, classField, label);
auto templateFeature = this->SelectTemplateFeature(inputLayer, classField, label);
for(const auto& sample : samples)
{
ogr::Feature dstFeature(outputLayer.GetLayerDefn());
......@@ -216,7 +216,7 @@ SampleAugmentationFilter
for (int k=0 ; k < layerDefn.GetFieldCount() ; k++)
{
if(excludedIds.find(k) == excludedIds.cend() &&
this->isNumericField(dstFeature, k))
this->IsNumericField(dstFeature, k))
{
dstFeature.ogr().SetField(k, sample[sampleFieldCounter++]);
}
......@@ -227,7 +227,7 @@ SampleAugmentationFilter
std::set<size_t>
SampleAugmentationFilter
::getExcludedFieldsIds(const std::vector<std::string>& excludedFields,
::GetExcludedFieldsIds(const std::vector<std::string>& excludedFields,
const ogr::Layer& inputLayer)
{
auto feature = *(inputLayer).begin();
......@@ -245,7 +245,7 @@ SampleAugmentationFilter
bool
SampleAugmentationFilter
::isNumericField(const ogr::Feature& feature,
::IsNumericField(const ogr::Feature& feature,
const int idx)
{
OGRFieldType fieldType = feature.ogr().GetFieldDefnRef(idx)->GetType();
......@@ -256,7 +256,7 @@ SampleAugmentationFilter
ogr::Feature
SampleAugmentationFilter
::selectTemplateFeature(const ogr::Layer& inputLayer,
::SelectTemplateFeature(const ogr::Layer& inputLayer,
const std::string& classField, int label)
{
auto wh = std::find_if(inputLayer.begin(), inputLayer.end(),
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment