public interface TemplateMatchingIntensity<T extends boofcv.struct.image.ImageBase>
Moves an image template over the image and for each pixel computes a metric for how similar that region is to template. An intensity image is thus computed for the entire image. Better matches always have a more positive value. If a metric inheritally has a small value for better matches then its sign will be adjusted so that poor matches have a negative value.
A pixel in the intensity image is the result of evaluating the template with its center over that pixel. Given pixel (x,y) in the intensity image the template's top left corner (x',y') can be found at: x' = x - getOffsetX() and y' = y - getOffsetY().
IMAGE BORDER: If the image border is processed or not depends on the implementation. If the border is processed then partial templates are considered. If the border is not processed then the value of the intensity along the border is not defined and should not be processed.
| Modifier and Type | Method and Description |
|---|---|
int |
getBorderX0()
Thickness of border along the image left side (lower extent)
|
int |
getBorderX1()
Thickness of border along the image right side (upper extent)
|
int |
getBorderY0()
Thickness of border along the image top (lower extent)
|
int |
getBorderY1()
Thickness of border along the image bottom (upper extent)
|
boofcv.struct.image.GrayF32 |
getIntensity()
Contains results of template matching.
|
boolean |
isBorderProcessed()
Does this algorithm process the image's border.
|
void |
process(T template)
Matches the template to the image and computes an intensity image.
|
void |
process(T template,
T mask)
Matches the template with a mask to the image and computes an intensity image.
|
void |
setInputImage(T image)
Specifies the input image which the template is going ot be matched against
|
void setInputImage(T image)
image - Input image. Not modified.void process(T template)
setInputImage(ImageBase) firsttemplate - Template image. Must be equal to or smaller than the input image. Not modified.void process(T template, T mask)
setInputImage(ImageBase) firstmask - Mask that identifies how translucent pixels. 0 = 100% transparent and all values above
increase its importance. Typical values are 0 to 255 for integer images and 0.0 to 1.0 for
floating point.template - Template image. Must be equal to or smaller than the input image. Not modified.boofcv.struct.image.GrayF32 getIntensity()
NonMaxSuppression.
See comment about processing the image border.boolean isBorderProcessed()
int getBorderX0()
int getBorderX1()
int getBorderY0()
int getBorderY1()