30 namespace SOMProjector_impl {
32 template <
typename T, std::
size_t ND,
typename DistFunc,
typename InputIter,
typename AdderFunc,
typename BmuFunc>
34 BmuFunc bmu_func,
const T& init_cell) {
37 auto size = som.getSize();
41 for (
auto& cell : result) {
46 for (
auto it = begin; it != end; ++it) {
53 std::tie(x, y, dist) = bmu_func(input);
56 adder_func(result(x, y), input);
64 template <
typename T, std::
size_t ND,
typename DistFunc,
typename InputIter,
typename WeightFunc,
typename AdderFunc>
66 WeightFunc weight_func, AdderFunc adder_func,
const T& init_cell) {
69 return som.findBMU(input, weight_func);
75 template <
typename T,
std::size_t ND,
typename DistFunc,
typename InputIter,
typename WeightFunc,
typename UncertaintyFunc,
78 WeightFunc weight_func, UncertaintyFunc uncertainty_func, AdderFunc adder_func,
82 return som.findBMU(input, weight_func, uncertainty_func);
Representation of a multi-dimensional grid which contains axis information.
static ProjectGrid< T > project(const SOM< ND, DistFunc > &som, InputIter begin, InputIter end, WeightFunc weight_func, AdderFunc adder_func, const T &init_cell=T{})
SOMProjector::ProjectGrid< T > project_impl(const SOM< ND, DistFunc > &som, InputIter begin, InputIter end, AdderFunc adder_func, BmuFunc bmu_func, const T &init_cell)