org.eclipse.january.dataset

## Class RGBDataset

- java.lang.Object
- - org.eclipse.january.dataset.LazyDatasetBase
  - - org.eclipse.january.dataset.AbstractDataset
    - - org.eclipse.january.dataset.AbstractCompoundDataset
      - - org.eclipse.january.dataset.CompoundShortDataset
        - - org.eclipse.january.dataset.RGBDataset

- All Implemented Interfaces:
    Serializable, Cloneable, CompoundDataset, Dataset, IDataset, ILazyDataset, IMetadataProvider, INameable

      public class RGBDataset
      extends CompoundShortDataset
      implements Cloneable

  Class to hold colour datasets as red, green, blue tuples of short integers
  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class org.eclipse.january.dataset.CompoundShortDataset

      `data`

    - ### Fields inherited from class org.eclipse.january.dataset.AbstractCompoundDataset

      `isize`

    - ### Fields inherited from class org.eclipse.january.dataset.AbstractDataset

      `base, BLOCK_CLOSE, BLOCK_OPEN, odata, offset, size, stride, stringFormat`

    - ### Fields inherited from class org.eclipse.january.dataset.LazyDatasetBase

      `catchExceptions, logger, metadata, name, shape`

    - ### Fields inherited from interface org.eclipse.january.dataset.Dataset

      `ARRAYFLOAT32, ARRAYFLOAT64, ARRAYINT16, ARRAYINT32, ARRAYINT64, ARRAYINT8, ARRAYMUL, BOOL, COMPLEX, COMPLEX128, COMPLEX64, DATE, FLOAT, FLOAT32, FLOAT64, INT, INT16, INT32, INT64, INT8, OBJECT, RGB, STRING`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RGBDataset()` Create a null dataset
    `RGBDataset(byte[] redData, byte[] greenData, byte[] blueData, int... shape)` Create a dataset using given data (red, green and blue parts are given separately)
    `RGBDataset(Dataset grey)` Create a dataset using given grey data
    `RGBDataset(Dataset red, Dataset green, Dataset blue)` Create a dataset using given colour data (colour components are given separately)
    `RGBDataset(int... shape)`
    `RGBDataset(int[] redData, int[] greenData, int[] blueData, int... shape)` Create a dataset using given data (red, green and blue parts are given separately)
    `RGBDataset(RGBDataset dataset)` Copy a dataset
    `RGBDataset(short[] data, int... shape)`
    `RGBDataset(short[] redData, short[] greenData, short[] blueData, int... shape)` Create a dataset using given data (red, green and blue parts are given separately)

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `RGBDataset` | `clone()` Clone dataset
    `Dataset` | `createBlueDataset(int dtype)` Extract blue colour channel
    `static RGBDataset` | `createFromCompoundDataset(CompoundDataset a)` Create a RGB dataset from a compound dataset (no normalisation performed)
    `static RGBDataset` | `createFromHSL(Dataset hue, Dataset saturation, Dataset lightness)` Create a RGB dataset from hue, saturation and lightness dataset
    `static RGBDataset` | `createFromHSV(Dataset hue, Dataset saturation, Dataset value)` Create a RGB dataset from hue, saturation and value dataset
    `static RGBDataset` | `createFromObject(Object obj)` Create a RGB dataset from an object which could be a Java list, array (of arrays...) or Number.
    `Dataset` | `createGreenDataset(int dtype)` Extract green colour channel
    `Dataset` | `createGreyDataset(double red, double green, double blue, int dtype)` Convert colour dataset to a grey-scale one using given RGB to luma mapping
    `Dataset` | `createGreyDataset(int dtype)` Convert colour dataset to a grey-scale one using the NTSC formula, aka ITU-R BT.601, for RGB to luma mapping
    `Dataset` | `createRedDataset(int dtype)` Extract red colour channel
    `short` | `getBlue()`
    `short` | `getBlue(int... pos)`
    `short` | `getBlue(int i)`
    `short` | `getBlue(int i, int j)`
    `short` | `getBlueAbs(int n)` Get a blue value from given absolute index as a short - note this index does not take in account the item size so be careful when using with multi-element items
    `ShortDataset` | `getBlueView()`
    `int` | `getDType()`
    `short` | `getGreen()`
    `short` | `getGreen(int... pos)`
    `short` | `getGreen(int i)`
    `short` | `getGreen(int i, int j)`
    `short` | `getGreenAbs(int n)` Get a green value from given absolute index as a short - note this index does not take in account the item size so be careful when using with multi-element items
    `ShortDataset` | `getGreenView()`
    `short` | `getRed()`
    `short` | `getRed(int... pos)`
    `short` | `getRed(int i)`
    `short` | `getRed(int i, int j)`
    `short` | `getRedAbs(int n)` Get a red value from given absolute index as a short - note this index does not take in account the item size so be careful when using with multi-element items
    `ShortDataset` | `getRedView()`
    `RGBDataset` | `getSlice(SliceIterator siter)` Get a slice of the dataset.
    `RGBDataset` | `getView(boolean deepCopyMetadata)`
    `Number` | `max(boolean... ignored)`
    `Number` | `min(boolean... ignored)`

    - ### Methods inherited from class org.eclipse.january.dataset.CompoundShortDataset

      `asNonCompoundDataset, containsInfs, containsInvalidNumbers, containsNans, copyElements, copyItemsFromAxes, createArray, createCompoundDatasetWithLastDimension, createFromObject, equals, fill, fillDataset, getAbs, getAbs, getBufferLength, getByteArray, getByteArray, getByteArray, getByteArray, getData, getDoubleArray, getDoubleArray, getDoubleArray, getDoubleArray, getDoubleArrayAbs, getElementBooleanAbs, getElementDoubleAbs, getElementLongAbs, getElements, getElementsView, getFirstValue, getFirstValue, getFirstValue, getFirstValue, getFloatArray, getFloatArray, getFloatArray, getFloatArray, getIntArray, getIntArray, getIntArray, getIntArray, getLongArray, getLongArray, getLongArray, getLongArray, getObject, getObject, getObject, getObject, getObjectAbs, getShortArray, getShortArray, getShortArray, getShortArray, getString, getString, getString, getString, getStringAbs, hashCode, iadd, idivide, ifloor, imultiply, ipower, iremainder, isubtract, residual, resize, set, set, set, set, setAbs, setAbs, setBy1DIndex, setByBoolean, setByIndexes, setData, setElements, setItem, setItem, setItem, setItem, setItemDirect, setItemsOnAxes, setObjectAbs, setSlice`

    - ### Methods inherited from class org.eclipse.january.dataset.AbstractCompoundDataset

      `argMax, argMin, cast, cast, flatten, get1DIndex, get1DIndex, get1DIndexFromShape, getBoolean, getBoolean, getBoolean, getBoolean, getBroadcastView, getBy1DIndex, getByBoolean, getByIndexes, getByte, getByte, getByte, getByte, getCompoundStats, getDouble, getDouble, getDouble, getDouble, getDoubleArray, getDoubleArray, getDoubleArray, getDoubleArray, getElementsPerItem, getError, getError, getError, getErrorArray, getErrorArray, getErrorArray, getErrors, getFloat, getFloat, getFloat, getFloat, getInt, getInt, getInt, getInt, getIterator, getIterator, getLong, getLong, getLong, getLong, getShort, getShort, getShort, getShort, getSlice, getSlice, getSlice, getSlice, getSlice, getSlice, getSliceIterator, getSliceView, getSliceView, getSliceView, getTransposedView, getUniqueItems, ifloorDivide, max, maxItem, maxPos, mean, mean, min, minItem, minPos, peakToPeak, product, reshape, rootMeanSquare, rootMeanSquare, setSlice, setSlice, sort, squeeze, squeeze, squeezeEnds, stdDeviation, stdDeviation, sum, sum, swapAxes, synchronizedCopy, transpose, variance, variance, variance`

    - ### Methods inherited from class org.eclipse.january.dataset.AbstractDataset

      `all, all, any, any, argMax, argMin, calcSteps, cast, checkAxis, checkAxis, checkCompatibility, copy, copy, copyToView, count, count, createStrides, createStrides, createStrides, createStrides, fillData, get1DIndex, get1DIndexFromShape, getBooleanIterator, getBooleanIterator, getBuffer, getElementClass, getError, getErrorBuffer, getFirst1DIndex, getIndices, getInternalSquaredError, getItemBytes, getIterator, getMaxLineLength, getMetadataMap, getName, getNbytes, getNDPosition, getOffset, getPositionIterator, getRank, getRealPart, getRealView, getShape, getShapeRef, getSize, getSliceIterator, getSliceIteratorFromAxes, getStats, getStrides, getStringStats, hasFloatingPointElements, isCompatibleWith, isComplex, overrideInternal, peakToPeak, product, residual, residual, setErrorBuffer, setMaxLineLength, setName, setShape, setSlice, setStringFormat, stdDeviation, stdDeviation, toString, toString, variance`

    - ### Methods inherited from class org.eclipse.january.dataset.LazyDatasetBase

      `addMetadata, checkPermutatedAxes, clearMetadata, copyMetadata, copyMetadata, createFromSerializable, dirtyMetadata, findMetadataTypeSubInterfaces, getErrorMetadata, getFirstMetadata, getMetadata, getMetadata, hasErrors, reshapeMetadata, restoreMetadata, setDirty, setErrors, setMetadata, sliceMetadata, transposeMetadata`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface org.eclipse.january.dataset.Dataset

      `all, all, any, any, argMax, argMin, cast, checkAxis, checkCompatibility, copy, copy, count, count, get1DIndex, getBooleanIterator, getBooleanIterator, getBuffer, getError, getErrorBuffer, getIndices, getIterator, getNbytes, getNDPosition, getOffset, getPositionIterator, getRealPart, getRealView, getShapeRef, getSliceIterator, getSliceIteratorFromAxes, getStrides, hasFloatingPointElements, isCompatibleWith, isComplex, overrideInternal, peakToPeak, product, residual, residual, setDirty, setErrorBuffer, setSlice, stdDeviation, stdDeviation, toString, variance`

    - ### Methods inherited from interface org.eclipse.january.dataset.IDataset

      `getItemBytes, getMetadata, setStringFormat`

    - ### Methods inherited from interface org.eclipse.january.dataset.ILazyDataset

      `addMetadata, clearMetadata, getElementClass, getRank, getShape, getSize, hasErrors, setErrors, setMetadata, setShape`

    - ### Methods inherited from interface org.eclipse.january.dataset.IMetadataProvider

      `getFirstMetadata, getMetadata`

    - ### Methods inherited from interface org.eclipse.january.INameable

      `getName, setName`

- - ### Constructor Detail

    - #### RGBDataset

          public RGBDataset()

      Create a null dataset

    - #### RGBDataset

          public RGBDataset(int... shape)

    - #### RGBDataset

          public RGBDataset(short[] data,
                    int... shape)

    - #### RGBDataset

          public RGBDataset(RGBDataset dataset)

      Copy a dataset
      Parameters:
        `dataset` -

    - #### RGBDataset

          public RGBDataset(int[] redData,
                    int[] greenData,
                    int[] blueData,
                    int... shape)

      Create a dataset using given data (red, green and blue parts are given separately)
      Parameters:
        `redData` -
        `greenData` -
        `blueData` -
        `shape` - (can be null to create 1D dataset)

    - #### RGBDataset

          public RGBDataset(short[] redData,
                    short[] greenData,
                    short[] blueData,
                    int... shape)

      Create a dataset using given data (red, green and blue parts are given separately)
      Parameters:
        `redData` -
        `greenData` -
        `blueData` -
        `shape` - (can be null to create 1D dataset)

    - #### RGBDataset

          public RGBDataset(byte[] redData,
                    byte[] greenData,
                    byte[] blueData,
                    int... shape)

      Create a dataset using given data (red, green and blue parts are given separately)
      Parameters:
        `redData` -
        `greenData` -
        `blueData` -
        `shape` - (can be null to create 1D dataset)

    - #### RGBDataset

          public RGBDataset(Dataset red,
                    Dataset green,
                    Dataset blue)

      Create a dataset using given colour data (colour components are given separately)
      Parameters:
        `red` -
        `green` -
        `blue` -

    - #### RGBDataset

          public RGBDataset(Dataset grey)

      Create a dataset using given grey data
      Parameters:
        `grey` -

  - ### Method Detail

    - #### getDType

          public int getDType()

      Specified by:
        `getDType` in interface `Dataset`
      Overrides:
        `getDType` in class `CompoundShortDataset`
      Returns:
        type of dataset item

    - #### clone

          public RGBDataset clone()

      Description copied from interface: `ILazyDataset`
      Clone dataset
      Specified by:
        `clone` in interface `CompoundDataset`
      Specified by:
        `clone` in interface `Dataset`
      Specified by:
        `clone` in interface `IDataset`
      Specified by:
        `clone` in interface `ILazyDataset`
      Overrides:
        `clone` in class `CompoundShortDataset`
      Returns:
        a (shallow) copy of dataset

    - #### createFromObject

          public static RGBDataset createFromObject(Object obj)

      Create a RGB dataset from an object which could be a Java list, array (of arrays...) or Number. Ragged sequences or arrays are padded with zeros. The item size is the last dimension of the corresponding elemental dataset
      Parameters:
        `obj` -
      Returns:
        dataset with contents given by input

    - #### createFromCompoundDataset

          public static RGBDataset createFromCompoundDataset(CompoundDataset a)

      Create a RGB dataset from a compound dataset (no normalisation performed)
      Parameters:
        `a` -
      Returns:
        RGB dataset (grey if input dataset has less than 3 elements per item)

    - #### createFromHSV

          public static RGBDataset createFromHSV(Dataset hue,
                                 Dataset saturation,
                                 Dataset value)

      Create a RGB dataset from hue, saturation and value dataset
      Parameters:
        `hue` - (in degrees from -360 to 360)
        `saturation` - (from 0 to 1), can be null to denote 1
        `value` - (from 0 to 1)
      Returns:
        RGB dataset

    - #### createFromHSL

          public static RGBDataset createFromHSL(Dataset hue,
                                 Dataset saturation,
                                 Dataset lightness)

      Create a RGB dataset from hue, saturation and lightness dataset
      Parameters:
        `hue` - (in degrees from -360 to 360)
        `saturation` - (from 0 to 1), can be null to denote 1
        `lightness` - (from 0 to 1)
      Returns:
        RGB dataset

    - #### getSlice

          public RGBDataset getSlice(SliceIterator siter)

      Description copied from class: `AbstractDataset`
      Get a slice of the dataset. The returned dataset is a copied selection of items
      Overrides:
        `getSlice` in class `CompoundShortDataset`
      Parameters:
        `siter` - Slice iterator
      Returns:
        The dataset of the sliced data

    - #### getView

          public RGBDataset getView(boolean deepCopyMetadata)

      Specified by:
        `getView` in interface `CompoundDataset`
      Specified by:
        `getView` in interface `Dataset`
      Overrides:
        `getView` in class `CompoundShortDataset`
      Parameters:
        `deepCopyMetadata` - if true then deep-copy metadata
      Returns:
        whole view of dataset (i.e. data buffer is shared)

    - #### getRed

          public short getRed()

      Returns:
        red value in the first position
      Since:
        2.0

    - #### getRed

          public short getRed(int i)

      Parameters:
        `i` -
      Returns:
        red value in given position

    - #### getRed

          public short getRed(int i,
                     int j)

      Parameters:
        `i` -
        `j` -
      Returns:
        red value in given position

    - #### getRed

          public short getRed(int... pos)

      Parameters:
        `pos` -
      Returns:
        red value in given position

    - #### getGreen

          public short getGreen()

      Returns:
        green value in the first position
      Since:
        2.0

    - #### getGreen

          public short getGreen(int i)

      Parameters:
        `i` -
      Returns:
        green value in given position

    - #### getGreen

          public short getGreen(int i,
                       int j)

      Parameters:
        `i` -
        `j` -
      Returns:
        green value in given position

    - #### getGreen

          public short getGreen(int... pos)

      Parameters:
        `pos` -
      Returns:
        green value in given position

    - #### getBlue

          public short getBlue()

      Returns:
        blue value in the first position
      Since:
        2.0

    - #### getBlue

          public short getBlue(int i)

      Parameters:
        `i` -
      Returns:
        blue value in given position

    - #### getBlue

          public short getBlue(int i,
                      int j)

      Parameters:
        `i` -
        `j` -
      Returns:
        blue value in given position

    - #### getBlue

          public short getBlue(int... pos)

      Parameters:
        `pos` -
      Returns:
        blue value in given position

    - #### getRedAbs

          public short getRedAbs(int n)

      Get a red value from given absolute index as a short - note this index does not take in account the item size so be careful when using with multi-element items
      Parameters:
        `n` -
      Returns:
        red value

    - #### getGreenAbs

          public short getGreenAbs(int n)

      Get a green value from given absolute index as a short - note this index does not take in account the item size so be careful when using with multi-element items
      Parameters:
        `n` -
      Returns:
        green value

    - #### getBlueAbs

          public short getBlueAbs(int n)

      Get a blue value from given absolute index as a short - note this index does not take in account the item size so be careful when using with multi-element items
      Parameters:
        `n` -
      Returns:
        blue value

    - #### createGreyDataset

          public Dataset createGreyDataset(int dtype)

      Convert colour dataset to a grey-scale one using the NTSC formula, aka ITU-R BT.601, for RGB to luma mapping
      Parameters:
        `dtype` -
      Returns:
        a grey-scale dataset of given type

    - #### createGreyDataset

          public Dataset createGreyDataset(double red,
                                  double green,
                                  double blue,
                                  int dtype)

      Convert colour dataset to a grey-scale one using given RGB to luma mapping
      Parameters:
        `red` - weight
        `green` - weight
        `blue` - weight
        `dtype` -
      Returns:
        a grey-scale dataset of given type

    - #### createRedDataset

          public Dataset createRedDataset(int dtype)

      Extract red colour channel
      Parameters:
        `dtype` -
      Returns:
        a dataset of given type

    - #### createGreenDataset

          public Dataset createGreenDataset(int dtype)

      Extract green colour channel
      Parameters:
        `dtype` -
      Returns:
        a dataset of given type

    - #### createBlueDataset

          public Dataset createBlueDataset(int dtype)

      Extract blue colour channel
      Parameters:
        `dtype` -
      Returns:
        a dataset of given type

    - #### getRedView

          public ShortDataset getRedView()

      Returns:
        red view

    - #### getGreenView

          public ShortDataset getGreenView()

      Returns:
        green view

    - #### getBlueView

          public ShortDataset getBlueView()

      Returns:
        blue view

    - #### max

          public Number max(boolean... ignored)

      Specified by:
        `max` in interface `IDataset`
      Overrides:
        `max` in class `AbstractCompoundDataset`
      Parameters:
        `ignored` - - Can be null, empty, or one or more booleans. By default, all booleans are false. If the first boolean is true, will ignore NaNs and ignore infinities. Use the second boolean to ignore infinities separately.
      Returns:
        Maximum value

    - #### min

          public Number min(boolean... ignored)

      Specified by:
        `min` in interface `IDataset`
      Overrides:
        `min` in class `AbstractCompoundDataset`
      Parameters:
        `ignored` - - see `IDataset.max(boolean...)`
      Returns:
        Minimum value

Copyright © 2017. All rights reserved.