Package gov.nih.mipav.model.algorithms
Class SlantTransform
java.lang.Object
java.lang.Thread
gov.nih.mipav.model.algorithms.AlgorithmBase
gov.nih.mipav.model.algorithms.SlantTransform
- All Implemented Interfaces:
ActionListener,WindowListener,Runnable,EventListener
One dimensional forward and inverse slant transforms are ported from FORATRAN programs in Appendix A
of AD-767 758 Technical Report Slant Transform Image Coding by Wen-Hsiung Cheng of the University of
Southern California, prepared for the Advanced Research Projects Agency, Air Force Eastern Test Range, May 1973.
- Author:
- ilb
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Thread
Thread.Builder, Thread.State, Thread.UncaughtExceptionHandler -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final intprivate final intprivate final intprivate final intprivate final intprivate final intprivate final intprivate intprivate doubleprivate doubleprivate ModelImageprivate intprivate static final intprivate static final intprivate ModelImageFields inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
destFlag, destImage, image25D, mask, maxProgressValue, minProgressValue, multiThreadingEnabled, nthreads, progress, progressModulus, progressStep, runningInSeparateThread, separable, srcImage, threadStoppedFields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY -
Constructor Summary
ConstructorsConstructorDescriptionSlantTransform(ModelImage transformImage, ModelImage inverseImage, ModelImage srcImg, int transform, int filterType, double filterVal1, double filterVal2) -
Method Summary
Modifier and TypeMethodDescriptionprivate voidfilter(double[] data, int filterType, double filterVal1, double filterVal2) voidforward1D(int N, double[][] C) double[]greater(double[] data, double value, double substitute) double[][]hard(double[][] data, double value, double substitute) double[]hard(double[] data, double value, double substitute) voidinverse1D(int N, double[][] C) double[]less(double[] data, double value, double substitute) double[]nn_garrote(double[] data, double value, double substitute) voidActually runs the algorithm.double[]soft(double[] data, double value, double substitute) double[]threshold_firm(double[] data, double value_low, double value_high) Methods inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
actionPerformed, addListener, addProgressChangeListener, calculateImageSize, calculatePrincipleAxis, computeElapsedTime, computeElapsedTime, convertIntoFloat, delinkProgressToAlgorithm, delinkProgressToAlgorithmMulti, displayError, errorCleanUp, finalize, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, generateProgressValues, getDestImage, getElapsedTime, getMask, getMaxProgressValue, getMinProgressValue, getNumberOfThreads, getProgress, getProgressChangeListener, getProgressChangeListeners, getProgressModulus, getProgressStep, getProgressValues, getSrcImage, isCompleted, isImage25D, isMultiThreadingEnabled, isRunningInSeparateThread, isThreadStopped, linkProgressToAlgorithm, linkProgressToAlgorithm, makeProgress, notifyListeners, removeListener, removeProgressChangeListener, run, setCompleted, setImage25D, setMask, setMaxProgressValue, setMinProgressValue, setMultiThreadingEnabled, setNumberOfThreads, setProgress, setProgressModulus, setProgressStep, setProgressValues, setProgressValues, setRunningInSeparateThread, setSrcImage, setStartTime, setThreadStopped, startMethod, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpenedMethods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, isVirtual, join, join, join, join, ofPlatform, ofVirtual, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, sleep, start, startVirtualThread, stop, suspend, threadId, toString, yield
-
Field Details
-
FILTER_NONE
private final int FILTER_NONE- See Also:
-
FILTER_SOFT
private final int FILTER_SOFT- See Also:
-
FILTER_NN_GARROTE
private final int FILTER_NN_GARROTE- See Also:
-
FILTER_HARD
private final int FILTER_HARD- See Also:
-
FILTER_GREATER
private final int FILTER_GREATER- See Also:
-
FILTER_LESS
private final int FILTER_LESS- See Also:
-
FILTER_THRESHOLD_FIRM
private final int FILTER_THRESHOLD_FIRM- See Also:
-
filterType
private int filterType -
filterVal1
private double filterVal1 -
filterVal2
private double filterVal2 -
TRANSFORM_COLUMNS
private static final int TRANSFORM_COLUMNS- See Also:
-
TRANSFORM_ROWS
private static final int TRANSFORM_ROWS- See Also:
-
transformImage
-
inverseImage
-
transform
private int transform
-
-
Constructor Details
-
SlantTransform
public SlantTransform() -
SlantTransform
public SlantTransform(ModelImage transformImage, ModelImage inverseImage, ModelImage srcImg, int transform, int filterType, double filterVal1, double filterVal2)
-
-
Method Details
-
forward1D
public void forward1D(int N, double[][] C) -
inverse1D
public void inverse1D(int N, double[][] C) -
runAlgorithm
public void runAlgorithm()Description copied from class:AlgorithmBaseActually runs the algorithm. Implemented by inheriting algorithms.- Specified by:
runAlgorithmin classAlgorithmBase
-
filter
private void filter(double[] data, int filterType, double filterVal1, double filterVal2) -
soft
public double[] soft(double[] data, double value, double substitute) -
nn_garrote
public double[] nn_garrote(double[] data, double value, double substitute) -
hard
public double[] hard(double[] data, double value, double substitute) -
hard
public double[][] hard(double[][] data, double value, double substitute) -
greater
public double[] greater(double[] data, double value, double substitute) -
less
public double[] less(double[] data, double value, double substitute) -
threshold_firm
public double[] threshold_firm(double[] data, double value_low, double value_high)
-