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

FDistanceAosOp Class Reference

#include <FDistanceAosOp.hpp>

Inheritance diagram for FDistanceAosOp:

Inheritance graph
[legend]
Collaboration diagram for FDistanceAosOp:

Collaboration graph
[legend]
List of all members.

Detailed Description

Abstract Float simple AOS flow.

Author:
Bernard De Cuyper
Version:
0.055
Date:
14/09/2002
 
Purpose:        Fast Computation of Simple AOS recursive flow.
                        Use the Thomas LU model.
                        Semi-Implicit solver using AOS additive splitting

            (I - tau * A) * uNew=  uOld

                        Should be better than LOD: Rotation invariant.

                        LOD is sequential (handelling each direction x y z in sequence)

                        AOS is parallel (handelling each direction x y z at the same time)
                        AOS build an average operator

                        Both LOD and AOS are designed for large image restoration, O(N) in time ang space!!!

Papers:         "Recursivity and PDE's in image processing", 
                        L. Alvarez, R. Deriche and F Santana, Spain 1998.

                        "Efficient and Reliable Schemes for Nonlinear Diffusion Filtering", 
                        Joachim. Weickert & all, IEEE transactions on Image Processing, vol7, n3, March 1998.
                

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


Public Methods

 FDistanceAosOp (FImage *edgeDistance=0, int iterations=8, float t0=0.0, float tMax=20.0, float k=16.0, float asigma=5.0, bool iirFlag=false, bool nonLinearFlag=true)
virtual ~FDistanceAosOp ()
virtual void setEdgeDistance (FImage *distanceMap)
virtual FImagefilter (FImage *src, FImage *dest=0)
 Local full image filtering.

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

virtual void report (FILE *file)

Protected Methods

virtual float getTau (int x, int y)
virtual void init (FImage *im)
virtual void gradientRegularisation (FImage *im)
virtual float g (int i, int j)=0

Protected Attributes

int m
int w
int h
int iterMax
float tmin
float tmax
float K
float K2
FImagedistanceMapEdges
float sigma
bool iirUsed
bool nonLinear
AbsFImageFilterblurrer
AbsFImageFiltergradient
FImageIsigma
FImageIgradNorme
AbsFTriDiagonalLShThomasLS
AbsFTriDiagonalLSvThomasLS


Member Function Documentation

FImage * FDistanceAosOp::filter FImage   src,
FImage   dest = 0
[virtual]
 

Local full image filtering.

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

Implements AbsFImageFilter.

Reimplemented in FDistRegularized1AosOp.

FImage * FDistanceAosOp::selectedFilter AnImage   mask,
FImage   src,
FImage   dest = 0
[virtual]
 

Local filtering in a mask area.

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

Reimplemented from AbsFImageFilter.

Reimplemented in FDistRegularized1AosOp.


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