public class MeanIntensityLocalBinaryPatterns extends AbstractFeatureDescriptor
Constructs histogram of binary patterns based on comparing the mean intensity of the 8-neighborhood of each pixel Ni in the patch to the mean intensity of the 8-neighborhood around the pixel in the center NC. Each of the 8 mean intensities Ni is compared to the mean intensity NC in the center, if Ni is smaller than NC, Ni is assigned weight 0, else 1. The weights form a binary pattern by contactinating them in counter clockwise order, starting with the weight to the left of the pixel in the center.
Example:
Mean intensity patch:
| 2 | 25 | 32 | | 24 | 23 | 9 | | 19 | 99 | 13 |Weights:
| 0 | 1 | 1 | | 1 | | 0 | | 0 | 1 | 0 |Binary pattern:
0b10100110
All pixels part of the 2-pixel wide margin are not considered due to incomplete 8-neighborhoods of these pixels.
References:
MeanPatchIntensityDescriptor
Descriptor.Supports
Modifier and Type | Field and Description |
---|---|
protected int |
m_bins |
protected double |
m_histMax |
protected double |
m_histMin |
protected MeanPatchIntensityHistogram |
m_meanDescriptor |
pcs
DOES_ALL
Constructor and Description |
---|
MeanIntensityLocalBinaryPatterns() |
Modifier and Type | Method and Description |
---|---|
protected void |
createPatchDescriptor(ij.process.ImageProcessor ip) |
protected byte |
getBinaryPattern(int x,
int y) |
String |
getDescription()
Returns a short plain Text description about the Descriptor and the
semantics of the double array obtained from
FeatureDescriptor.getFeatures() . |
double |
getHistogramMax() |
double |
getHistogramMin() |
int |
getNumberOfBins() |
void |
run(ij.process.ImageProcessor ip)
Start processing of this algorithm on the given image processor.
|
void |
setHistogramRange(double min,
double max)
Set the minimum and maximum value that the histogram should consider.
|
void |
setNumberOfBins(int bins)
Set the number of bins of the histogram.
|
EnumSet<Descriptor.Supports> |
supports()
Determine the capabilities of this algorithm.
|
addData, addData, addData, addPropertyChangeListener, endProgress, firePropertyChange, getFeatures, getMask, inMask, setMask, setProperties, startProgress
protected int m_bins
protected double m_histMin
protected double m_histMax
protected MeanPatchIntensityHistogram m_meanDescriptor
public String getDescription()
FeatureDescriptor
FeatureDescriptor.getFeatures()
.
May return null if no description is implemented - even though this
should be avoided by any means.public EnumSet<Descriptor.Supports> supports()
Descriptor
supports
in interface Descriptor
supports
in class AbstractFeatureDescriptor
public void run(ij.process.ImageProcessor ip)
Descriptor
protected void createPatchDescriptor(ij.process.ImageProcessor ip)
protected byte getBinaryPattern(int x, int y)
public int getNumberOfBins()
public void setNumberOfBins(int bins)
bins
- IllegalArgumentException
- if bins <= 0
public double getHistogramMin()
public double getHistogramMax()
public void setHistogramRange(double min, double max)
IllegalArgumentException
- if min > max
Copyright © 2013. All Rights Reserved.