48 lines
1.3 KiB
C++
48 lines
1.3 KiB
C++
#ifndef _OTB_TRISKELE_OPTION_HPP
|
|
#define _OTB_TRISKELE_OPTION_HPP
|
|
|
|
#include <iostream>
|
|
#include <vector>
|
|
#include <boost/thread.hpp>
|
|
|
|
#include "triskeleBase.hpp"
|
|
#include "ArrayTree/GraphWalker.hpp"
|
|
#include "IImage.hpp"
|
|
#include "Appli/Selected.hpp"
|
|
|
|
namespace otb {
|
|
namespace triskele {
|
|
using namespace ::triskele;
|
|
using namespace otb::triskele::arrayTree;
|
|
|
|
// ========================================
|
|
enum FeatureType { AP, MEAN, SD, AREA, MOI };
|
|
|
|
class Option {
|
|
public:
|
|
bool debugFlag;
|
|
IImage inputImage;
|
|
IImage outputImage;
|
|
Point topLeft = NullPoint;
|
|
Size size = NullSize;
|
|
Selected selectedBand;
|
|
size_t countingSortCeil = 2;
|
|
vector<DimImg> areaThresholds;
|
|
vector<double> levelThresholds, sdThresholds, moiThresholds;
|
|
unsigned int coreCount = boost::thread::hardware_concurrency ();
|
|
bool maxTreeFlag = false, minTreeFlag = false, tosTreeFlag = false, alphaTreeFlag = false;
|
|
bool border = false, oneBand = false;
|
|
Connectivity connectivity = Connectivity::C4;
|
|
FeatureType featureType = FeatureType::AP;
|
|
Option ();
|
|
Option (int argc, char** argv);
|
|
|
|
void usage (string msg = "", bool hidden = false);
|
|
void parse (int argc, char** argv);
|
|
};
|
|
|
|
}//namespace triskele
|
|
}//namespace otb
|
|
|
|
#endif //_OTB_TRISKELE_OPTION_HPP
|