public class BlockStatistics extends Object
integral images
. At this time, it is
implemented for single channel images at floating point accuracy only, RGB
is transferred into grey, integer accuracy into floating point accuracy
accordingly. That is, for processing multiple color channels, separate them
into individual ImageProcessors
first and execute the
calculation on each of them individually.Modifier and Type | Class and Description |
---|---|
protected class |
BlockStatistics.RowIntegrator |
Modifier and Type | Field and Description |
---|---|
protected ij.process.FloatProcessor |
fp |
protected DoubleIntegralImage |
sums |
protected DoubleIntegralImage |
sumsOfSquares |
Constructor and Description |
---|
BlockStatistics(ij.process.FloatProcessor fp) |
Modifier and Type | Method and Description |
---|---|
protected static void |
integrateColumns(int w1,
int w2,
int n1,
int n2,
double[] sum,
double[] sumOfSquares,
int w) |
protected void |
integrateRows(int w1,
int n,
int width,
double[] sum,
double[] sumOfSquares) |
protected void |
integrateRowsParallel(int w1,
int n,
int width,
int height,
double[] sum,
double[] sumOfSquares) |
void |
mean(int blockRadius) |
void |
mean(int blockRadiusX,
int blockRadiusY)
Set all pixels in
ip to their block mean for a block
with given radius. |
void |
sampleVariance(int blockRadius)
Set all pixels in
ip to their block sample variance for a block
with given radius. |
void |
sampleVariance(int blockRadiusX,
int blockRadiusY)
Set all pixels in
ip to their block sample variance for a block
with given radius. |
void |
std(int blockRadius)
Set all pixels in
ip to their block STD for a block with
given radius. |
void |
std(int blockRadiusX,
int blockRadiusY)
Set all pixels in
ip to their block STD for a block with
given radius. |
void |
variance(int blockRadius)
Set all pixels in
ip to their block variance for a block
with given radius. |
void |
variance(int blockRadiusX,
int blockRadiusY)
Set all pixels in
ip to their block variance for a block
with given radius. |
protected final DoubleIntegralImage sums
protected final DoubleIntegralImage sumsOfSquares
protected final ij.process.FloatProcessor fp
protected final void integrateRows(int w1, int n, int width, double[] sum, double[] sumOfSquares)
protected final void integrateRowsParallel(int w1, int n, int width, int height, double[] sum, double[] sumOfSquares)
protected static final void integrateColumns(int w1, int w2, int n1, int n2, double[] sum, double[] sumOfSquares, int w)
public final void mean(int blockRadiusX, int blockRadiusY)
ip
to their block mean for a block
with given radius.blockRadiusX
- blockRadiusY
- public final void mean(int blockRadius)
public final void variance(int blockRadiusX, int blockRadiusY)
ip
to their block variance for a block
with given radius.blockRadiusX
- blockRadiusY
- public final void variance(int blockRadius)
ip
to their block variance for a block
with given radius.blockRadius
- public final void std(int blockRadiusX, int blockRadiusY)
ip
to their block STD for a block with
given radius.blockRadiusX
- blockRadiusY
- public final void std(int blockRadius)
ip
to their block STD for a block with
given radius.blockRadius
- public final void sampleVariance(int blockRadiusX, int blockRadiusY)
ip
to their block sample variance for a block
with given radius.blockRadiusX
- blockRadiusY
- public final void sampleVariance(int blockRadius)
ip
to their block sample variance for a block
with given radius.blockRadius
- Copyright © 2015–2021 Fiji. All rights reserved.