bilateralfilterinstant
Class Filter

java.lang.Object
  extended by bilateralfilterinstant.Filter

public class Filter
extends java.lang.Object

This class contains the processing of the Bilateral Filter.

Author:
sage

Field Summary
static int ITERATION_NONE
           
static int ITERATION_OVERALL
           
static int ITERATION_RANGE
           
static int ITERATION_SPACE
           
static int SELECTION_ALL
           
static int SELECTION_BEST
           
static int SELECTION_BYTOLERANCE
           
static int SELECTION_BYTRUNCATION
           
 
Constructor Summary
Filter(float sigmaR, float sigmaX, float sigmaY, float sigmaZ)
          Constructor.
 
Method Summary
 float[] approximate(Data data, float[] gaussian, float[] approx)
          Return 3 indicators of the quality of the approximation of the gaussian function discretized over number of bins elements.
 int[] computeOrder(Data data)
          Determines the order of the filter.
 float[] execute(additionaluserinterface.WalkBar walk, Data data, int channel)
          Processes the image (in).
 void selectChannels(int methodSelectionChannels, double valueSelectionChannels)
          Specifies the select of the channels.
 void setIterativeScheme(int nbIteration, int modeIteration)
          Specifies the iterative scheme.
 void setLog(boolean log)
          Specifies the log status.
 void setMultithread(boolean multithread)
          Specifies the multithread status.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ITERATION_NONE

public static int ITERATION_NONE

ITERATION_RANGE

public static int ITERATION_RANGE

ITERATION_SPACE

public static int ITERATION_SPACE

ITERATION_OVERALL

public static int ITERATION_OVERALL

SELECTION_BEST

public static int SELECTION_BEST

SELECTION_ALL

public static int SELECTION_ALL

SELECTION_BYTRUNCATION

public static int SELECTION_BYTRUNCATION

SELECTION_BYTOLERANCE

public static int SELECTION_BYTOLERANCE
Constructor Detail

Filter

public Filter(float sigmaR,
              float sigmaX,
              float sigmaY,
              float sigmaZ)
Constructor.

Method Detail

setLog

public void setLog(boolean log)
Specifies the log status.


setMultithread

public void setMultithread(boolean multithread)
Specifies the multithread status.


setIterativeScheme

public void setIterativeScheme(int nbIteration,
                               int modeIteration)
Specifies the iterative scheme.


selectChannels

public void selectChannels(int methodSelectionChannels,
                           double valueSelectionChannels)
Specifies the select of the channels.


computeOrder

public int[] computeOrder(Data data)
Determines the order of the filter. The order is function of the input dynamic range (T) and the size of the filter in the range domain (sigmaR). To avoid too many channels only a subset of the channels can be optionally applied. This selection of the channel is based on the user choice: 1) Best: only the channels corresponding to a weight which is 0.001 larger than the larger one is take in account 2) All: all channels 3) By truncate: 4) By tolerance:


execute

public float[] execute(additionaluserinterface.WalkBar walk,
                       Data data,
                       int channel)
Processes the image (in).


approximate

public float[] approximate(Data data,
                           float[] gaussian,
                           float[] approx)
Return 3 indicators of the quality of the approximation of the gaussian function discretized over number of bins elements. 1. RMSE (0 is perfect) 2. Undershoot: most negative value (0 is perfect) 3. Lost of gain: 1 - approx(0) (0 is perfect)