Class PixelProcessor<S,T,U>

java.lang.Object
qupath.lib.experimental.pixels.PixelProcessor<S,T,U>
Type Parameters:
S - The type of image to process
T - The type of mask to use; often the same as S
U - The type of output to generate

public class PixelProcessor<S,T,U> extends Object
A class for tiled image processing.

The aim of this class is to make it easy to write pixel-based processing algorithms using a variety of different image representations, and also to run these in parallel.

There are four main components:

The idea is that the Processor is the only component that needs to be written for a specific task... and it is usually the fun bit to work on.

The other components are often very tedious to write and hard to get working correctly; also, there is much overlap in the functionality required for different tasks. For these reasons, we provide several default implementations here, written to support different image representations.

Since:
v0.5.0
  • Method Details

    • processObjects

      public void processObjects(qupath.lib.images.ImageData<BufferedImage> imageData, Collection<? extends qupath.lib.objects.PathObject> pathObjects)
      Process objects using the default TaskRunner.
      Parameters:
      imageData -
      pathObjects -
    • processObjects

      public void processObjects(qupath.lib.plugins.TaskRunner runner, qupath.lib.images.ImageData<BufferedImage> imageData, Collection<? extends qupath.lib.objects.PathObject> pathObjects)
      Process objects using the specified TaskRunner.
      Parameters:
      runner -
      imageData -
      pathObjects -
    • builder

      public static <S, T, U> PixelProcessor.Builder<S,T,U> builder()
      Create a new builder to construct a PixelProcessor.
      Type Parameters:
      S - the image type
      T - the mask type
      U - the output type
      Returns: