Package gov.nih.mipav.model.algorithms
Class AlgorithmNonMaxSuppts
- java.lang.Object
-
- java.lang.Thread
-
- gov.nih.mipav.model.algorithms.AlgorithmBase
-
- gov.nih.mipav.model.algorithms.AlgorithmNonMaxSuppts
-
- All Implemented Interfaces:
java.awt.event.ActionListener
,java.awt.event.WindowListener
,java.lang.Runnable
,java.util.EventListener
public class AlgorithmNonMaxSuppts extends AlgorithmBase
-
-
Field Summary
Fields Modifier and Type Field Description private int
radius
private boolean
subpixel
private double
threshold
private VOIVector
VOIs
Non-maximal suppression for features/corners Non maxima suppression and thresholding for points generated by a feature or corner detector.private double[]
xsubp
private double[]
ysubp
-
Fields inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
destFlag, destImage, image25D, mask, maxProgressValue, minProgressValue, multiThreadingEnabled, nthreads, progress, progressModulus, progressStep, runningInSeparateThread, separable, srcImage, threadStopped
-
-
Constructor Summary
Constructors Constructor Description AlgorithmNonMaxSuppts(ModelImage destImg, ModelImage srcImg, VOIVector VOIs, int radius, double threshold)
AlgorithmNonMaxSuppts(ModelImage destImg, ModelImage srcImg, VOIVector VOIs, int radius, double threshold, double[] xsubp, double[] ysubp)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
finalize()
finalize -void
runAlgorithm()
Starts the program.-
Methods inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
actionPerformed, addListener, addProgressChangeListener, calculateImageSize, calculatePrincipleAxis, computeElapsedTime, computeElapsedTime, convertIntoFloat, delinkProgressToAlgorithm, delinkProgressToAlgorithmMulti, displayError, errorCleanUp, 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, windowOpened
-
Methods 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, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
-
-
-
-
Field Detail
-
VOIs
private VOIVector VOIs
Non-maximal suppression for features/corners Non maxima suppression and thresholding for points generated by a feature or corner detector. Note: An issue with integer valued images is that if there are multiple pixels all with the same value within distance 2*radius of each other then they will all be marked as local maxima. Copyright (c) 2003-2013 Peter Kovesi Centre for Exploration Targeting The University of Western Australia peter.kovesi at uwa edu au Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. The Software is provided "as is", without warranty of any kind. September 2003 Original version August 2005 Subpixel localization and Octave compatibility January 2010 Fix for completely horizontal and vertical lines (by Thomas Stehle, RWTH Aachen University) January 2011 Warning given if no maxima found
-
radius
private int radius
-
threshold
private double threshold
-
xsubp
private double[] xsubp
-
ysubp
private double[] ysubp
-
subpixel
private boolean subpixel
-
-
Constructor Detail
-
AlgorithmNonMaxSuppts
public AlgorithmNonMaxSuppts(ModelImage destImg, ModelImage srcImg, VOIVector VOIs, int radius, double threshold)
- Parameters:
destImg
- Optional image. If this is supplied, the thresholded corners are overlayed on this image. This can be useful for parameter tuningsrcImg
- Corner strength imageVOIs
-radius
- Radius of the region considered in non-maximal suppression. Typical values to use might be 1-3 pixels.threshold
-hcd
- byte buffer containing corner points
-
AlgorithmNonMaxSuppts
public AlgorithmNonMaxSuppts(ModelImage destImg, ModelImage srcImg, VOIVector VOIs, int radius, double threshold, double[] xsubp, double[] ysubp)
- Parameters:
destImg
- Optional image. If this is supplied, the thresholded corners are overlayed on this image. This can be useful for parameter tuningsrcImg
- Corner strength imageVOIs
-radius
- Radius of the region considered in non-maximal suppression. Typical values to use might be 1-3 pixels.threshold
-xsubp
- Sub-pixel localization of feature points is attempted and returned as as additional set of floating point coordinates. Note that you may still want to use the integer valued coordinates to specify centers of correlation windows for feature matching.ysubp
-
-
-
Method Detail
-
finalize
public void finalize()
finalize -- Overrides:
finalize
in classAlgorithmBase
-
runAlgorithm
public void runAlgorithm()
Starts the program.- Specified by:
runAlgorithm
in classAlgorithmBase
-
-