27 #define BOOST_BIND_GLOBAL_PLACEHOLDERS
29 #if defined(__GNUC__) || defined(__clang__)
30 #pragma GCC diagnostic push
32 #if (defined (__GNUC__) && (__GNUC__ >= 9)) || (defined (__clang__) && (__clang_major__ >= 10))
33 #pragma GCC diagnostic ignored "-Wdeprecated-copy"
36 #pragma GCC diagnostic ignored "-Wshadow"
37 #pragma GCC diagnostic ignored "-Wunused-parameter"
38 #pragma GCC diagnostic ignored "-Woverloaded-virtual"
39 #pragma GCC diagnostic ignored "-Wsign-compare"
40 #pragma GCC diagnostic ignored "-Wunused-local-typedefs"
41 #if defined(__clang__)
42 #pragma clang diagnostic ignored "-Wheader-guard"
44 #if defined(__apple_build_version__)
46 #if __apple_build_version__ >= 9000000
47 #pragma clang diagnostic ignored "-Wexpansion-to-defined"
49 #elif __clang_major__ > 3
50 #pragma clang diagnostic ignored "-Wexpansion-to-defined"
54 #pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
57 #include "otb_shark.h"
58 #include <shark/Algorithms/Trainers/PCA.h>
59 #if defined(__GNUC__) || defined(__clang__)
60 #pragma GCC diagnostic pop
72 template <
class TInputValue>
98 itkTypeMacro(
PCAModel, DimensionalityReductionModel);
100 itkSetMacro(DoResizeFlag,
bool);
102 itkSetMacro(WriteEigenvectors,
bool);
103 itkGetMacro(WriteEigenvectors,
bool);
105 bool CanReadFile(
const std::string& filename)
override;
106 bool CanWriteFile(
const std::string& filename)
override;
108 void Save(
const std::string& filename,
const std::string& name =
"")
override;
109 void Load(
const std::string& filename,
const std::string& name =
"")
override;
111 void Train()
override;
132 #ifndef OTB_MANUAL_INSTANTIATION