![]() |
|
Gamma correction. Intensity is mapped as f' = f^(gamma) More...
#include <FunctorPack.h>


Public Member Functions | |
| GammaFunctor (double gamma=1.0) | |
| GammaFunctor (const GammaFunctor &ftor) | |
| double | operator() (double s) const |
Public Member Functions inherited from UnaryFunctor | |
| UnaryFunctor (const std::string &name, const std::string &description="", double scale=1.0, double bias=0.0) | |
Public Member Functions inherited from Functor | |
| void | setScale (double scale, double bias=0.0) |
| virtual void | updateBean () const override |
| Called after setParameters() | |
Public Member Functions inherited from BeanLike | |
| BeanLike (const BeanLike &b) | |
Copy constructor. Re-links parameters to the member variables of this (new) instance. | |
| BeanLike (const std::string &name, const std::string &description="") | |
| Constructor. | |
| 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 |
| Tells if any parameters have been linked (registered) for this bean. | |
| template<class F > | |
| F | getParameter (const std::string &p) const |
| Gets a single parameter. | |
| const map_t & | getParameters () const |
| Returns the parameter map (const access). | |
| map_t & | getParameters () |
| Returns the parameter map. | |
| template<class F > | |
| void | setParametersFromEntries (const F &args) |
| Sets several parameters at once from a sequence of key-value pairs. | |
| 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". | |
| 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. | |
| template<class F > | |
| void | setParameter (const std::string &p, std::initializer_list< F > value) |
| Sets a single parameter. | |
| BeanLike & | operator= (const BeanLike &b) |
| Assigns the parameter values of another bean (by key) to this one's own parameters. | |
| virtual std::ostream & | toStream (std::ostream &ostr, bool compact=true) const |
| Prints the name, description and current parameter values. | |
Public Attributes | |
| double | gamma = 1.0 |
Additional Inherited Members | |
Public Types inherited from BeanLike | |
| typedef ReferenceMap | map_t |
| Reference map type used to store this bean's parameters (name -> linked variable). | |
Protected Member Functions inherited from Functor | |
| 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 |
Protected Member Functions inherited from BeanLike | |
| virtual void | storeLastArguments (const std::string &p) |
| Called after setParameters() | |
Protected Attributes inherited from Functor | |
| 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. | |
Protected Attributes inherited from BeanLike | |
| const std::string | name |
| Name of this bean, typically also the name of the (derived) class. | |
| const std::string | description |
| Brief, human-readable description of this bean. | |
| map_t | parameters |
| Parameters (name -> linked variable), typically linked to member variables of the derived class. | |
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.
|
inlinevirtual |
Implements UnaryFunctor.
1.9.8