public interface ImagePyramid<T extends ImageBase>
Image pyramids represent an image at different resolution in a fine to coarse fashion. Lower layers in the pyramid are at a higher resolution than the upper layers. The resolution of a layer is specified by its scale. The scale number indicates how many pixels in the original input image correspond to a single pixel at the current layer. So a layer with a scale of 5 is 5 times lower resolution than the input layer.
The transform from a pixel coordinate in layer 'i' to the original image will vary depending on the pyramid is
constructed. In general it, can be described by the following equation: (x,y) = (offX_i,offY_i) + scale_i*(x_i,y_i),
where (x_i,y_i) is the pixel coordinate in layer 'i'. The offsets (offX_i,offY_i) vary depending on how
each layer in the pyramid samples the previous layers. This offset can be found by calling getSampleOffset(int).
| Modifier and Type | Method and Description |
|---|---|
int |
getHeight(int layer)
Returns the height of an image at ths specified layer.
|
java.lang.Class<T> |
getImageType()
The type of image.
|
int |
getInputHeight()
Height of input image.
|
int |
getInputWidth()
Width of input image.
|
T |
getLayer(int layerNum)
Returns a layer in the pyramid.
|
int |
getNumLayers()
Returns the number of layers in the pyramid.
|
double |
getSampleOffset(int layer)
Returns the sampling offset.
|
double |
getScale(int layer)
Returns the scale of the specified layer in the pyramid.
|
double |
getSigma(int layer)
Returns the scale-space scale for the specified layer.
|
int |
getWidth(int layer)
Returns the width of an image at ths specified layer.
|
void |
initialize(int width,
int height)
Declares internal data structures for an image with the specified dimensions
|
void |
process(T input)
Constructs the image pyramid given the input image.
|
void |
setTo(ImagePyramid<T> input)
Set's this pyramid to be the same as input.
|
void process(T input)
void initialize(int width,
int height)
width - image widthheight - image heightdouble getScale(int layer)
layer - Which layer is being inspected.T getLayer(int layerNum)
layerNum - which image is to be returned.int getNumLayers()
int getWidth(int layer)
layer - The layer being requested.int getHeight(int layer)
layer - The layer being requested.int getInputWidth()
int getInputHeight()
java.lang.Class<T> getImageType()
void setTo(ImagePyramid<T> input)
input - Input pyramid. Not modified.double getSampleOffset(int layer)
layer - Layer in the pyramiddouble getSigma(int layer)
layer - Layer in the pyramid