![]() |
|
Spreeads values using inverse linear distance transform. More...
#include <DistanceTransformFillOp.h>


Public Member Functions | |
| DistanceTransformFillLinearOp (dist_t horz=12.3, dist_t vert=DistanceModel::nan_f, DistanceModel::topol_t topology=DistanceModel::KNIGHT) | |
Public Member Functions inherited from DistanceTransformFillOp< DistanceModelLinear > | |
| virtual int | srcAlpha () const |
| Tell if alpha channel(s) is required in input. | |
| virtual void | getDstConf (const ImageConf &srcConf, ImageConf &dstConf) const |
| Ensures dst the same geometry and type with src. | |
| virtual void | makeCompatible (const ImageConf &src, Image &dst) const |
| Like ImageOp::makeCompatible(), but clears the alpha channel. | |
| void | traverseChannels (const ImageTray< const Channel > &src, ImageTray< Channel > &dst) const |
| virtual void | traverseChannel (const Channel &src, const Channel &srcAlpha, Channel &dst, Channel &dstAlpha) const |
| Apply to single channel with alpha. | |
Public Member Functions inherited from DistanceTransformOp< T > | |
| void | setRadius (dist_t width, dist_t height=DistanceModel::nan_f, dist_t width2=DistanceModel::nan_f, dist_t height2=DistanceModel::nan_f) |
| virtual void | traverseChannel (const Channel &src, Channel &dst) const |
| Apply to single channel. | |
| virtual const DistanceModel & | getDistanceModel () const |
| virtual DistanceModel & | getDistanceModel () |
Public Member Functions inherited from ImageOp | |
| virtual void | process (const ImageFrame &src, Image &dst) const |
| Main interface. Typically splits processing to each channel. | |
| virtual void | process (Image &dst) const override final |
| Run this modifier for an image. | |
| virtual void | process (const ImageFrame &src, const ImageFrame &srcWeight, Image &dst, Image &dstWeight) const |
| virtual void | process (const ImageTray< const Channel > &src, ImageTray< Image > &dst, bool checkOverlap=true) const |
| Run the operator on a series of images. Geometry and type may be changed. UNDER CONSTR. | |
| virtual void | makeCompatible2 (const ImageFrame &src1, const ImageFrame &src2, Image &dst) const |
| Modifies the geometry and type of dst to fit the computation result. | |
| virtual void | help (std::ostream &ostr=std::cout) const |
| Prints name, description and parameters using BeanLike::toOStr(). Virtual, so derived classes may extend output. | |
Public Member Functions inherited from ImageMod | |
| virtual void | traverseChannels (ImageTray< Channel > &dst) const |
| Run this modifier for a set of channels. | |
| virtual void | traverseChannel (Channel &dst) const |
| Run this modifier for an image frame. | |
| virtual void | traverseChannel (Channel &dst, Channel &dstAlpha) const |
| Run this modifier for an image frame. | |
| virtual void | traverseChannels (ImageFrame &dst) const |
| Converts dst to ImageTray<Channel> and calls traverseFrame(ImageTray<Channel> &) . | |
Public Member Functions inherited from BeanLike | |
| BeanLike (const BeanLike &b) | |
| BeanLike (const std::string &name, const std::string &description="") | |
| 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 map_t & | getParameters () const |
| map_t & | 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". | |
| 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) |
| virtual std::ostream & | toStream (std::ostream &ostr, bool compact=true) const |
Additional Inherited Members | |
Public Types inherited from DistanceTransformFillOp< DistanceModelLinear > | |
| typedef float | dist_t |
Public Types inherited from DistanceTransformOp< T > | |
| typedef float | dist_t |
Public Types inherited from BeanLike | |
| typedef ReferenceMap | map_t |
Public Attributes inherited from ImageMod | |
| bool | physicalScale |
Protected Member Functions inherited from DistanceTransformFillOp< DistanceModelLinear > | |
| DistanceTransformFillOp (const std::string &name, const std::string &description, dist_t horz=14.0, dist_t vert=DistanceModel::nan_f, DistanceModel::topol_t topology=DistanceModel::KNIGHT) | |
| void | traverseDownRight (const ImageTray< const Channel > &src, ImageTray< Channel > &dst) const |
| Step 1/2: forward traversal. | |
| void | traverseUpLeft (ImageTray< Channel > &src, ImageTray< Channel > &dst) const |
| Step 1/2: backward traversal. | |
Protected Member Functions inherited from DistanceTransformOp< T > | |
| DistanceTransformOp (const std::string &name, const std::string &description, float width, float height, DistanceModel::topol_t topology=DistanceModel::KNIGHT) | |
| DistanceTransformOp (const DistanceTransformOp &op) | |
| Range< int > | getHorzRange (const CoordinateHandler2D &coordinateHandler) const |
| Range< int > | getVertRange (const CoordinateHandler2D &coordinateHandler) const |
| virtual void | initializeParameters (const ImageFrame &src, const ImageFrame &dst) const |
| Sets internal parameters. | |
| void | traverseDownRight (const Channel &src, Channel &dst) const |
| void | traverseUpLeft (const Channel &src, Channel &dst) const |
Protected Member Functions inherited from ImageOp | |
| ImageOp (const std::string &name=__FUNCTION__, const std::string &description="") | |
| ImageOp (const ImageOp &op) | |
| virtual bool | processOverlappingWithTemp (const ImageFrame &src, Image &dst) const |
| virtual bool | processOverlappingWithTemp (const ImageTray< const Channel > &src, ImageTray< Image > &dst) const |
| bool | traverseOverlappingWithTemp (const Channel &src, Channel &dst) const |
| bool | traverseOverlappingWithTemp (const Channel &src, const Channel &srcWeight, Channel &dst, Channel &dstWeight) const |
| void | traverseChannelsEqually (const ImageTray< const Channel > &src, ImageTray< Channel > &dst) const |
| Calls processWithTemp() if the frames overlap. | |
| void | traverseChannelsRepeated (const ImageTray< const Channel > &src, ImageTray< Channel > &dst) const |
| Recycle channels until all dst channels completed. | |
| void | traverseChannelsSeparately (const ImageTray< const Channel > &src, ImageTray< Channel > &dst) const |
| Process each (src,dst) channel pair independently. Raise error if their counts differ. | |
| void | traverseAsChannelTrays (const ImageFrame &src, ImageFrame &dst) const |
| Redirect to processing as trays. This is the opposite of processChannels...() functions. | |
| void | traverseAsChannelTrays (const ImageFrame &src, const ImageFrame &srcWeight, ImageFrame &dst, ImageFrame &dstWeight) const |
| Redirect to processing as trays. This is the opposite of processChannels...() functions. | |
| virtual void | initializeParameters (const ImageFrame &src, const ImageFrame &src2, const ImageFrame &dst) const |
| Set applicable internal parameters before calling traverse(). | |
Protected Member Functions inherited from ImageMod | |
| ImageMod (const std::string &name=__FUNCTION__, const std::string &description="") | |
| ImageMod (const ImageMod &op) | |
| virtual void | processChannelsSeparately (ImageTray< Channel > &dst) const |
| Run this modifier by calling traverseChannel(Channel &) for each image. | |
| virtual void | initialize (Image &dst) const |
| Modifies the geometry and the type of dst such that traverseChannel(Channel &) can be called. | |
| virtual void | initializeAlpha (const Image &srcAlpha, Image &dstAlpha) const |
| Modifies the geometry and the type of dst such that traverseChannel(Channel &) can be called. | |
Protected Member Functions inherited from BeanLike | |
| virtual void | storeLastArguments (const std::string &p) |
| Called after setParameters() | |
| virtual void | updateBean () const |
| Called after setParameters() | |
Static Protected Member Functions inherited from ImageOp | |
| static void | adaptCoordinateHandler (const Channel &src, CoordinateHandler2D &handler) |
Protected Attributes inherited from DistanceTransformFillOp< DistanceModelLinear > | |
| drain::Range< double > | alphaThreshold |
Protected Attributes inherited from DistanceTransformOp< T > | |
| T | distanceModel |
Protected Attributes inherited from BeanLike | |
| const std::string | name |
| const std::string | description |
| map_t | parameters |
Spreeads values using inverse linear distance transform.
Examples on three distinct pixels (red, green, and blue):
The radii do not have to be symmetric:
Examples on a graphical image:
1.9.8