Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   Related Pages  

AbsCImageFilter Class Reference

#include <AbsCImageFilter.hpp>

Inheritance diagram for AbsCImageFilter:

Inheritance graph
[legend]
Collaboration diagram for AbsCImageFilter:

Collaboration graph
[legend]
List of all members.

Detailed Description

Abstract Complex Image Filter.

Author:
Bernard De Cuyper
Version:
0.05
Date:
10/10/2003
 
Purpose:        Define the concept of image operations on real data.
                        It has design feature near the Java style (BufferedImageOp
                        but it is designed to do floating point computations.
                        We provide integer based equivalents too.
                

@ Copyrights: Bernard De Cuyper & Eddy Fraiha 2003, Eggs & Pictures. MIT/Open BSD copyright model.


Public Methods

 AbsCImageFilter ()
virtual ~AbsCImageFilter ()
virtual AbsLimiter * getLimiter ()
virtual void setLimiter (AbsLimiter *alimiter)
virtual int getMaskValue ()
virtual void setMaskValue (int value)
virtual void setMask (int n, int *xp, int *yp)
virtual void setI0 (CImage *Istart)
virtual void prepare (CImage *src)
 used to globally maintain subimages avoiding cons

virtual void clear ()
 used to globally destroy subimages avoiding decons

virtual CImage * filter (CImage *src, CImage *dest=0)=0
 Local full image filtering.

virtual CImage * selectedFilter (AnImage *mask, CImage *src, CImage *dest=0)
 Local filtering in a mask area.

virtual CImage * mfilter (int n, CImage *src, CImage *dest=0)
 iterative filter form

virtual CImage * mSelectedFilter (int n, AnImage *mask, CImage *src, CImage *dest=0)
 iterative selective filter form

virtual void report (FILE *file)

Protected Methods

virtual void loadMask (AnImage &mask)
 loading a mask

virtual void unloadMask ()
 remove a mask


Protected Attributes

int maskValue
int nMask
int * xm
int * ym
AbsLimiter * limiter


Member Function Documentation

virtual CImage* AbsCImageFilter::filter (  CImage *    src,
CImage *    dest = 0
)  [pure virtual]
 

Local full image filtering.

Parameters:
src  is CImage* is CImage source channel
dest  is CImage* is CImage result/placeholder
Returns :
CImage* as result,

Implemented in CGilboaLinearDiffOp, CGradientOp, CShockFilter, CSimpleAosOp, and CThomasHeatOp.

void AbsCImageFilter::loadMask (  AnImage &    mask )  [protected, virtual]
 

loading a mask

Parameters:
mask  is an AnImage& mostly a ByteImage with ids [1..255]

virtual CImage* AbsCImageFilter::selectedFilter (  AnImage *    mask,
CImage *    src,
CImage *    dest = 0
)  [inline, virtual]
 

Local filtering in a mask area.

Parameters:
mask  is AnImage* is a ByteImage
src  is CImage* is CImage source channel
dest  is CImage* is CImage result/placeholder
Returns :
CImage* as result,

Reimplemented in CGilboaLinearDiffOp, CGradientOp, CShockFilter, CSimpleAosOp, and CThomasHeatOp.


The documentation for this class was generated from the following files:
SourceForge.net Logo
Restoreinpaint sourceforge project `C++/Java Image Processing, Restoration, Inpainting Project'.

Bernard De Cuyper: Open Project Leader: Concept, design and development.
Bernard De Cuyper & Eddy Fraiha 2002, 2003. Bernard De Cuyper 2004. Open and free, for friendly usage only.
Modifications on Belgium ground of this piece of artistic work, by governement institutions or companies, must be notified to Bernard De Cuyper.
bern_bdc@hotmail.com