Class AbstractTileableDetectionPlugin<T>
- Type Parameters:
T
-
- All Implemented Interfaces:
PathInteractivePlugin<T>
,PathPlugin<T>
- Direct Known Subclasses:
CellCountsCV
,DoGSuperpixelsPlugin
,SLICSuperpixelsPlugin
,WatershedCellDetection
,WatershedCellMembraneDetection
,WatershedNucleiCV
Particularly useful for tasks such as cell detection.
- Author:
- Pete Bankhead
-
Field Summary
Fields inherited from class qupath.lib.plugins.AbstractInteractivePlugin
params
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
addRunnableTasks
(ImageData<T> imageData, PathObject parentObject, List<Runnable> tasks) Intercepts the 'standard' addRunnableTasks to (if necessary) insert ParallelTileObjects along the way, thereby breaking an excessively-large parentObject into more manageable pieces.protected abstract ObjectDetector
<T> createDetector
(ImageData<T> imageData, ParameterList params) Create a new ObjectDetector, compatible with the specified ImageData and ParameterList.protected abstract double
getPreferredPixelSizeMicrons
(ImageData<T> imageData, ParameterList params) Get the preferred pixel size that would be used for the specified ImageData and ParameterList.protected abstract int
getTileOverlap
(ImageData<T> imageData, ParameterList params) Get an appropriate overlap, in pixels, if analysis of the specified ImageData will be tiled.Methods inherited from class qupath.lib.plugins.AbstractDetectionPlugin
getParentObjects, getSupportedParentObjectClasses
Methods inherited from class qupath.lib.plugins.AbstractInteractivePlugin
alwaysPromptForObjects, getDefaultParameterList, getLoggableParameters, getParameterList, parseArgument
Methods inherited from class qupath.lib.plugins.AbstractPlugin
addWorkflowStep, getTasks, postprocess, preprocess, rearrangeByStride, requestHierarchyUpdate, runPlugin
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface qupath.lib.plugins.PathPlugin
getDescription, getLastResultsDescription, getName, runPlugin
-
Constructor Details
-
AbstractTileableDetectionPlugin
public AbstractTileableDetectionPlugin()
-
-
Method Details
-
getPreferredPixelSizeMicrons
protected abstract double getPreferredPixelSizeMicrons(ImageData<T> imageData, ParameterList params) Get the preferred pixel size that would be used for the specified ImageData and ParameterList.This is useful in deciding whether to break large regions into smaller, parallelizable tiles.
- Parameters:
imageData
-params
-- Returns:
-
createDetector
Create a new ObjectDetector, compatible with the specified ImageData and ParameterList.- Parameters:
imageData
-params
-- Returns:
-
getTileOverlap
Get an appropriate overlap, in pixels, if analysis of the specified ImageData will be tiled.If the overlap is 0, then tile boundaries are likely to be visible in the results.
If the overlap is > 0, then the overlap should also be > the expected largest size of a detected object - otherwise objects may be lost of trimmed when overlaps are resolved. This is because (currently) the resolution of overlapping detections involves taking the largest one, rather than (for example) merging them.
(Merging may be permitted in later versions, but only where measurements are not made by the plugin - since merged objects may require different measurements, e.g. for area or mean than can be easily computed in a general way from the individual objects being merged).
- Parameters:
imageData
-params
-- Returns:
- The overlap size in pixels, or 0 if overlapped tiles are not supported.
-
addRunnableTasks
protected void addRunnableTasks(ImageData<T> imageData, PathObject parentObject, List<Runnable> tasks) Intercepts the 'standard' addRunnableTasks to (if necessary) insert ParallelTileObjects along the way, thereby breaking an excessively-large parentObject into more manageable pieces.TODO: Avoid hard-coding what is considered a 'manageable size' or a preferred size for parallel tiles.
- Specified by:
addRunnableTasks
in classAbstractPlugin<T>
- Parameters:
imageData
-parentObject
-tasks
-
-