128 template <
typename InType,
typename OutType>
132 const InType& in_max,
133 const OutType& out_min,
134 const OutType& out_max):
143 return OutType((a * val + b) / d);
163 template <
typename InType,
typename Real>
167 const InType& in_max):
174 return Real(val -
in_min_) / d;
191 template <
typename InType,
typename OutType>
195 const InType& in_max):
218 template <
typename InType,
typename OutType>
222 const InType& in_max,
223 const OutType& out_max):
230 return OutType(
out_max_ * (
double(val) - in_min_) / d);
248 template <
typename InType,
typename Real,
typename RealOut>
252 const Real& in_sigma):
276 template <
typename InType,
typename Real>
280 const Real& in_sigma):
303 template <
typename InType,
typename Real,
typename OutType>
307 const Real& in_sigma,
353 template<
typename InputIterator,
354 typename OutputIterator,
355 typename UnaryOperation>
359 OutputIterator result,
360 UnaryOperation dynamic_fun)
362 std::transform(first,last,result,dynamic_fun);
401 template<
typename InputIterator,
402 typename OutputIterator,
403 typename MaskIterator,
404 typename UnaryOperation>
408 MaskIterator mask_first,
409 OutputIterator result,
410 UnaryOperation dynamic_fun,
411 typename std::iterator_traits<MaskIterator>::value_type value=
typename std::iterator_traits<MaskIterator>::value_type(1))
460 template<
typename InputIterator,
461 typename OutputIterator,
462 typename UnaryOperation,
typename Predicate>
466 OutputIterator result,
468 UnaryOperation dynamic_fun)
492 template<
typename InputIterator,
493 typename OutputIterator>
497 OutputIterator result,
501 typedef typename std::iterator_traits<InputIterator>::value_type in_type;
502 typedef typename std::iterator_traits<OutputIterator>::value_type out_type;
510 (*std::min_element(first,last),
511 *std::max_element(first,last)));
515 double mean = slip::mean<double>(first,last);
516 double sigma = slip::std_dev<double>(first,last,
mean);
528 (*std::min_element(first,last),
529 *std::max_element(first,last)));
Real operator()(const InType &val)
OutType operator()(const InType &val)
range_fun_sigmoide(const Real &in_mean, const Real &in_sigma)
range_fun_inter01(const InType &in_min, const InType &in_max)
void change_dynamic(InputIterator first, InputIterator last, OutputIterator result, UnaryOperation dynamic_fun)
Changes the dynamic of a container.
Functor object uses to change the range of container into [0,b].
_OutputIterator transform_if(_InputIterator first, _InputIterator last, _OutputIterator result, _UnaryOperation unary_op, _Predicate pred)
Perform an operation on a sequence according to a Predicate.
RealOut operator()(const InType &val)
range_fun_inter0b(const InType &in_min, const InType &in_max, const OutType &out_max)
HyperVolume< T > exp(const HyperVolume< T > &M)
Functor object uses to change the range of container applying sigmoide distribution between [0...
void change_dynamic_01(InputIterator first, InputIterator last, OutputIterator result, slip::NORMALIZATION_FUNCTION fun)
Changes the dynamic of a container.
OutType operator()(const InType &val)
OutType operator()(const InType &val)
range_fun_interab(const InType &in_min, const InType &in_max, const OutType &out_min, const OutType &out_max)
void change_dynamic_if(InputIterator first, InputIterator last, OutputIterator result, Predicate pred, UnaryOperation dynamic_fun)
Changes the dynamic of a container according to a predicate.
Provides some statistics algorithms.
range_fun_sigmoideb(const Real &in_mean, const Real &in_sigma, const OutType &b)
Functor object uses to change the range of container into [0,255].
_OutputIterator transform_mask_un(_InputIterator first, _InputIterator last, _MaskIterator mask_first, _OutputIterator result, _UnaryOperation unary_op, typename std::iterator_traits< _MaskIterator >::value_type value=typename std::iterator_traits< _MaskIterator >::value_type(1))
Perform an operation on a sequence according to a mask sequence.
Value_T mean(InputIterator first, InputIterator last)
Computes the mean value of a range .
Provides some extension to STL algorithms.
range_fun_inter0255(const InType &in_min, const InType &in_max)
Functor object uses to change the range of container according to an affine transformation.
Functor object uses to change the range of container into [0,1].
void change_dynamic_mask(InputIterator first, InputIterator last, MaskIterator mask_first, OutputIterator result, UnaryOperation dynamic_fun, typename std::iterator_traits< MaskIterator >::value_type value=typename std::iterator_traits< MaskIterator >::value_type(1))
Changes the dynamic of a container according to a mask sequence.
NORMALIZATION_FUNCTION
Choose between different border treatment modes for convolution algorithms.
range_fun_normal(const Real &in_mean, const Real &in_sigma)
Functor object uses to change the range of container applying normal distribution.
Functor object uses to change the range of container applying sigmoide distribution.
Real operator()(const InType &val)
OutType operator()(const InType &val)