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

FSimpleAosOp Class Reference

#include <FSimpleAosOp.hpp>

Inheritance diagram for FSimpleAosOp:

Inheritance graph
[legend]
Collaboration diagram for FSimpleAosOp:

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

 FSimpleAosOp (int iterations=8, float t=0.5, float deltaGradient=16.0, float asigma=5.0, bool iirFlag=false, bool nonLinearFlag=true)
virtual ~FSimpleAosOp ()
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 void init (FImage *im)
virtual void gradientRegularisation (FImage *im)
virtual float g (int i, int j)=0
virtual float gHMin1 (int i, int j)
virtual float gHPlus1 (int i, int j)

Protected Attributes

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


Member Function Documentation

FImage * FSimpleAosOp::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 FAosPerona1Op, FRegularized1AosOp, and FRegularizedAosOp.

FImage * FSimpleAosOp::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 FRegularized1AosOp, and FRegularizedAosOp.


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