![]() |
|
Gamma correction. Intensity is mapped as f' = f^(gamma) More...
#include <GammaOp.h>
Public Member Functions | |
GammaFunctor (double gamma=1.0) | |
GammaFunctor (const GammaFunctor &ftor) | |
double | operator() (double s) const |
![]() | |
UnaryFunctor (const std::string &name, const std::string &description="", double scale=1.0, double bias=0.0) | |
![]() | |
void | setScale (double scale, double bias=0.0) |
virtual void | updateBean () const override |
Called after setParameters() | |
![]() | |
virtual const std::string & | getName () const |
Return the name of an instance. | |
virtual const std::string & | getDescription () const |
Return a brief description. | |
bool | hasParameters () const |
template<class F > | |
F | getParameter (const std::string &p) const |
Gets a single parameter. | |
const ReferenceMap & | getParameters () const |
ReferenceMap & | getParameters () |
template<class F > | |
void | setParametersFromEntries (const F &args) |
void | setParameters (std::initializer_list< Variable::init_pair_t > args) |
Grants access to (if above hidden) | |
virtual void | setParameters (const std::string &p, char assignmentSymbol='=', char separatorSymbol=0) |
Sets comma-separated parameters in a predetermined order "a,b,c" or by specifing them "b=2". More... | |
template<class T > | |
void | setParameters (const std::map< std::string, T > &args) |
Set parameters. | |
template<class T > | |
void | setParameters (const SmartMap< T > &args) |
Set parameters. | |
void | setParameter (const std::string &p, const Castable &value) |
Sets a single parameter. | |
template<class T > | |
void | setParameter (const std::string &p, const VariableT< T > &value) |
template<class F > | |
void | setParameter (const std::string &p, const F &value) |
Sets a single parameter. More... | |
template<class F > | |
void | setParameter (const std::string &p, std::initializer_list< F > value) |
Sets a single parameter. | |
BeanLike & | operator= (const BeanLike &b) |
virtual std::ostream & | toStream (std::ostream &ostr, bool compact=true) const |
BeanLike (const BeanLike &b) | |
BeanLike (const std::string &name, const std::string &description="") | |
Public Attributes | |
double | gamma |
Additional Inherited Members | |
![]() | |
Functor (const std::string &name, const std::string &description="", double scale=1.0, double bias=0.0) | |
Functor (const Functor &fct) | |
virtual void | updateScale () const |
![]() | |
virtual void | storeLastArguments (const std::string &p) |
Called after setParameters() | |
![]() | |
double | scale |
Relative scale, typically 1. Optional. | |
double | bias |
"Relative" bias, typically 0. Optional. | |
double | scaleFinal |
Scaling factor after encodings of src and dst images are known. | |
double | biasFinal |
Scaling factor after encodings of src and dst images are known. | |
![]() | |
const std::string | name |
const std::string | description |
ReferenceMap | parameters |
Gamma correction. Intensity is mapped as f' = f^(gamma)
Adjusts the brightness such that intensities remain monotonously inside the original scale. Unlike in direct linear scaling neither underflow nor overflow occurs and visual details remain detectable down to applied bit resolution.
Prior to calling this function it should be ensured that the source image has normalized scale (eg. with –physicalRange,
-R
).
NOTE. Design for parameters may vary in future, since multichannel image could be handled by giving a value for each: 1.2,1.4,0.7 for example.