Class CocoDetection

java.lang.Object
ai.djl.training.dataset.RandomAccessDataset
All Implemented Interfaces:
ai.djl.training.dataset.Dataset

public class CocoDetection extends ObjectDetectionDataset
Coco image detection dataset from http://cocodataset.org/#home.

Coco is a large-scale object detection, segmentation, and captioning dataset although only object detection is implemented at thsi time. It contains 1.5 million object instances and is one of the standard benchmark object detection datasets.

To use this dataset, you have to manually add com.twelvemonkeys.imageio:imageio-jpeg:3.11.0 as a dependency in your project.

Each image might have different Shapes.

  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    A builder to construct a CocoDetection.

    Nested classes/interfaces inherited from class ai.djl.basicdataset.cv.ImageDataset

    ImageDataset.BaseBuilder<T extends ImageDataset.BaseBuilder<T>>

    Nested classes/interfaces inherited from interface ai.djl.training.dataset.Dataset

    ai.djl.training.dataset.Dataset.Usage
  • Field Summary

    Fields inherited from class ai.djl.basicdataset.cv.ImageDataset

    flag

    Fields inherited from class ai.djl.training.dataset.RandomAccessDataset

    dataBatchifier, device, labelBatchifier, limit, pipeline, prefetchNumber, sampler, targetPipeline
  • Method Summary

    Modifier and Type
    Method
    Description
    protected long
    Creates a builder to build a CocoDetection.
    Returns the classes that detected objects in the dataset can be classified into.
    protected ai.djl.modality.cv.Image
    getImage(long index)
    Returns the image at the given index in the dataset.
    Returns the height of the images in the dataset.
    Returns the width of the images in the dataset.
    ai.djl.util.PairList<Long,ai.djl.modality.cv.output.Rectangle>
    getObjects(long index)
    Returns the list of objects in the image at the given index.
    void
    prepare(ai.djl.util.Progress progress)

    Methods inherited from class ai.djl.basicdataset.cv.ObjectDetectionDataset

    get

    Methods inherited from class ai.djl.basicdataset.cv.ImageDataset

    getImageChannels, getRecordImage

    Methods inherited from class ai.djl.training.dataset.RandomAccessDataset

    getData, getData, getData, getData, newSubDataset, newSubDataset, randomSplit, size, subDataset, subDataset, subDataset, subDataset, toArray

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface ai.djl.training.dataset.Dataset

    matchingTranslatorOptions, prepare
  • Method Details

    • builder

      public static CocoDetection.Builder builder()
      Creates a builder to build a CocoDetection.
      Returns:
      a new builder
    • getObjects

      public ai.djl.util.PairList<Long,ai.djl.modality.cv.output.Rectangle> getObjects(long index)
      Returns the list of objects in the image at the given index.
      Specified by:
      getObjects in class ObjectDetectionDataset
      Parameters:
      index - the index (if the dataset is a list of data items)
      Returns:
      the list of objects in the image. The long is the class number of the index into the list of classes of the desired class name. The rectangle is the location of the object inside the image.
    • getClasses

      public List<String> getClasses()
      Returns the classes that detected objects in the dataset can be classified into.
      Specified by:
      getClasses in class ObjectDetectionDataset
      Returns:
      the classes that detected objects in the dataset can be classified into.
    • prepare

      public void prepare(ai.djl.util.Progress progress) throws IOException
      Throws:
      IOException
    • availableSize

      protected long availableSize()
      Specified by:
      availableSize in class ai.djl.training.dataset.RandomAccessDataset
    • getImage

      protected ai.djl.modality.cv.Image getImage(long index) throws IOException
      Description copied from class: ImageDataset
      Returns the image at the given index in the dataset.
      Specified by:
      getImage in class ImageDataset
      Parameters:
      index - the index (if the dataset is a list of data items)
      Returns:
      the image
      Throws:
      IOException - if the image could not be loaded
    • getImageWidth

      public Optional<Integer> getImageWidth()
      Returns the width of the images in the dataset.
      Specified by:
      getImageWidth in class ImageDataset
      Returns:
      the width of the images in the dataset
    • getImageHeight

      public Optional<Integer> getImageHeight()
      Returns the height of the images in the dataset.
      Specified by:
      getImageHeight in class ImageDataset
      Returns:
      the height of the images in the dataset