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

RSimplePentaAosOp Class Reference

#include <RSimplePentaAosOp.hpp>

Inheritance diagram for RSimplePentaAosOp:

Inheritance graph
[legend]
Collaboration diagram for RSimplePentaAosOp:

Collaboration graph
[legend]
List of all members.

Detailed Description

Abstract Float simple Penta AOS flow.

Author:
Bernard De Cuyper
Version:
0.055
Date:
10/11/2003
 
Purpose:        Fast Computation of Simple Penta 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.

                        "Noise Removal using Fourth-Order Partial Differential Equations 
                        with Applications to Medical Magnetic Resonance Images in Space and time.", 
                        Marius Lysaker & Arvid Lundervold , Report 2002, UCLA.

                

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


Public Methods

 RSimplePentaAosOp (int iterations=8, double t=0.5, double k=16.0, double asigma=5.0, bool iirFlag=false, bool nonLinearFlag=true)
virtual ~RSimplePentaAosOp ()
virtual RImagefilter (RImage *src, RImage *dest=0)
 Local full image filtering.

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

virtual void report (FILE *file)

Protected Methods

virtual void init (RImage *im)
virtual void gradient2Regularisation (RImage *im)
virtual double g (int i, int j)=0

Protected Attributes

int m
int w
int h
int iterMax
double tau
double K
double K2
double sigma
bool iirUsed
bool nonLinear
AbsRImageFilterblurrer
AbsRImageFiltergradient2
RImageIsigma
RImageIgrad2Norme
AbsPentaDiagonalLShThomasLS
AbsPentaDiagonalLSvThomasLS


Member Function Documentation

RImage * RSimplePentaAosOp::filter RImage   src,
RImage   dest = 0
[virtual]
 

Local full image filtering.

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

Implements AbsRImageFilter.

RImage * RSimplePentaAosOp::selectedFilter AnImage   mask,
RImage   src,
RImage   dest = 0
[virtual]
 

Local filtering in a mask area.

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

Reimplemented from AbsRImageFilter.


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