MORPH_CLOSE, by itself, based on what it is functionally supposed to do, has no reason to return a non-integer data type. It is a simple implementation of:
ERODE(DILATE(inputImageData))
where the following is stated about 'inputImageData': "If the parameter is not of byte type, a temporary byte copy is obtained. If neither of the keywords GRAY or VALUES is present, the image is treated as a binary image with all nonzero pixels considered as 1." Thus, DILATE and MORPH_CLOSE never store any original floating point values.
If it is not the output values that are bothering you, but just the datatype they are stored in, you can obviously use a simple conversion function, as in:
myClosing = FLOAT(MORPH_CLOSE(inputDataImage, REPLICATE(1,3,3)))
James Jones
|