@ALDAOperator(genericExecutionMode=ALL, level=APPLICATION) public class HSIToRGBPixelConverter extends MTBOperator
In comparison to the HSV color space here in the HSI space hue, saturation
and intensity are not completely decoupled, i.e. changes in one of the
components may also influence others.
This operator expects all three value H, S and I to be normalized to a
range of [0,1]. The returned values for R, G and B are also each normalized
to a range of [0,1]. The implementation is based on
Gonzalez/Woods, "Digital Image Processing", pp. 235, Addison-Wesley, 1992
Note that if I = 0 the RGB color black is returned, and if I = 1 white. If S = 0 an RGB gray value corresponding to the given intensity is returned. And if the calculation results in RGB values larger than 1, i.e. in values out of range, the values are clipped to a maximum of 1.0.
Modifier and Type | Field and Description |
---|---|
protected double[] |
hsiInput
Input HSI values.
|
protected double[] |
rgbOutput
Output RGB values.
|
Constructor and Description |
---|
HSIToRGBPixelConverter()
Default constructor.
|
HSIToRGBPixelConverter(double[] hsi)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
double[] |
getResultRGB()
Returns the result RGB color.
|
protected void |
operate()
This method does the actual work.
|
void |
setHSIInput(double[] hsiVal)
Specify HSI value to be converted.
|
void |
validateCustom() |
readResolve
addOperatorExecutionProgressEventListener, addParameter, addParameter, addParameterUnconditioned, fieldContained, fireOperatorExecutionProgressEvent, getALDPortHashAccessKey, getConstructionMode, getDocumentation, getHidingMode, getInactiveParameterNames, getInInoutNames, getInInoutNames, getInNames, getInOutNames, getMissingRequiredInputs, getName, getNumParameters, getOutInoutNames, getOutNames, getParameter, getParameterDescriptor, getParameterDescriptorUnconditioned, getParameterNames, getParameterUnconditioned, getSupplementalNames, getVerbose, getVersion, handleOperatorExecutionProgressEvent, hasInOutParameters, hasParameter, isAnnotatedParameter, isConfigured, print, print, print, printInterface, printInterface, readHistory, reinitializeParameterDescriptors, removeOperatorExecutionProgressEventListener, removeParameter, runOp, runOp, runOp, setConstructionMode, setConstructionMode, setConstructionMode, setHidingMode, setName, setParameter, setParameterUnconditioned, setVerbose, toStringVerbose, unconfiguredItems, validate, validateGeneric, writeHistory, writeHistory, writeHistory
@Parameter(label="HSI Input", required=true, dataIOOrder=-1, direction=IN, description="HSI input values.") protected double[] hsiInput
@Parameter(label="RGB Output", dataIOOrder=-1, direction=OUT, description="RGB output values.") protected double[] rgbOutput
public HSIToRGBPixelConverter() throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
- Thrown in case of failure.public HSIToRGBPixelConverter(double[] hsi) throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
hsi
- HSI value to convert.de.unihalle.informatik.Alida.exceptions.ALDOperatorException
- Thrown in case of failure.public void validateCustom() throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
validateCustom
in class de.unihalle.informatik.Alida.operator.ALDOperator
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
public void setHSIInput(double[] hsiVal)
hsiVal
- HSI value.public double[] getResultRGB()
protected void operate()
operate
in class de.unihalle.informatik.Alida.operator.ALDOperator
Copyright © 2010–2020 Martin Luther University Halle-Wittenberg, Institute of Computer Science, Pattern Recognition and Bioinformatics. All rights reserved.