|
l_ok | pixQuadtreeMean (PIX *pixs, l_int32 nlevels, PIX *pix_ma, FPIXA **pfpixa) |
|
l_ok | pixQuadtreeVariance (PIX *pixs, l_int32 nlevels, PIX *pix_ma, DPIX *dpix_msa, FPIXA **pfpixa_v, FPIXA **pfpixa_rv) |
|
l_ok | pixMeanInRectangle (PIX *pixs, BOX *box, PIX *pixma, l_float32 *pval) |
|
l_ok | pixVarianceInRectangle (PIX *pixs, BOX *box, PIX *pix_ma, DPIX *dpix_msa, l_float32 *pvar, l_float32 *prvar) |
|
BOXAA * | boxaaQuadtreeRegions (l_int32 w, l_int32 h, l_int32 nlevels) |
|
l_ok | quadtreeGetParent (FPIXA *fpixa, l_int32 level, l_int32 x, l_int32 y, l_float32 *pval) |
|
l_ok | quadtreeGetChildren (FPIXA *fpixa, l_int32 level, l_int32 x, l_int32 y, l_float32 *pval00, l_float32 *pval10, l_float32 *pval01, l_float32 *pval11) |
|
l_int32 | quadtreeMaxLevels (l_int32 w, l_int32 h) |
|
PIX * | fpixaDisplayQuadtree (FPIXA *fpixa, l_int32 factor, l_int32 fontsize) |
|
Top level quadtree linear statistics
l_int32 pixQuadtreeMean()
l_int32 pixQuadtreeVariance()
Statistics in an arbitrary rectangle
l_int32 pixMeanInRectangle()
l_int32 pixVarianceInRectangle()
Quadtree regions
BOXAA *boxaaQuadtreeRegions()
Quadtree access
l_int32 quadtreeGetParent()
l_int32 quadtreeGetChildren()
l_int32 quadtreeMaxLevels()
Display quadtree
PIX *fpixaDisplayQuadtree()
There are many other statistical quantities that can be computed
in a quadtree, such as rank values, and these can be added as
the need arises.
Similar results that can approximate a single level of the quadtree
can be generated by pixGetAverageTiled(). There we specify the
tile size over which the mean, mean square, and root variance
are generated; the results are saved in a (reduced size) pix.
Because the tile dimensions are integers, it is usually not possible
to obtain tilings that are a power of 2, as required for quadtrees.
Definition in file quadtree.c.
BOXAA* boxaaQuadtreeRegions |
( |
l_int32 |
w, |
|
|
l_int32 |
h, |
|
|
l_int32 |
nlevels |
|
) |
| |
boxaaQuadtreeRegions()
- Parameters
-
[in] | w,h | size of pix that is being quadtree-ized |
[in] | nlevels | number of levels in quadtree |
- Returns
- baa for quadtree regions at each level, or NULL on error
Notes:
(1) The returned boxaa has nlevels of boxa, each containing
the set of rectangles at that level. The rectangle at
level 0 is the entire region; at level 1 the region is
divided into 4 rectangles, and at level n there are n^4
rectangles.
(2) At each level, the rectangles in the boxa are in "raster"
order, with LR (fast scan) and TB (slow scan).
Definition at line 453 of file quadtree.c.
References boxaaAddBoxa(), boxaaCreate(), boxaAddBox(), boxaCreate(), boxCreate(), L_INSERT, and lept_stderr().
PIX* fpixaDisplayQuadtree |
( |
FPIXA * |
fpixa, |
|
|
l_int32 |
factor, |
|
|
l_int32 |
fontsize |
|
) |
| |
fpixaDisplayQuadtree()
- Parameters
-
[in] | fpixa | mean, variance or root variance |
[in] | factor | replication factor at lowest level |
[in] | fontsize | 4, ... 20 |
- Returns
- pixd 8 bpp, mosaic of quadtree images, or NULL on error
Notes:
(1) The mean and root variance fall naturally in the 8 bpp range,
but the variance is typically outside the range. This
function displays 8 bpp pix clipped to 255, so the image
pixels will mostly be 255 (white).
Definition at line 658 of file quadtree.c.
References bmfCreate(), fpixaGetCount(), fpixaGetFPix(), fpixConvertToPix(), fpixDestroy(), L_ADD_BELOW, L_CLIP_TO_ZERO, L_CLONE, L_INSERT, pixaAddPix(), pixaCreate(), pixAddSingleTextblock(), pixConvertTo32(), pixDestroy(), and pixExpandReplicate().
l_ok quadtreeGetChildren |
( |
FPIXA * |
fpixa, |
|
|
l_int32 |
level, |
|
|
l_int32 |
x, |
|
|
l_int32 |
y, |
|
|
l_float32 * |
pval00, |
|
|
l_float32 * |
pval10, |
|
|
l_float32 * |
pval01, |
|
|
l_float32 * |
pval11 |
|
) |
| |
quadtreeGetChildren()
- Parameters
-
[in] | fpixa | mean, variance or root variance |
[in] | level,x,y | of current pixel |
[out] | pval00,pval01,pval10,pval11 | four child pixel values |
- Returns
- 0 if OK, 1 on error
Notes:
(1) Check return value for error. On error, all return vals are 0.0.
(2) The returned child pixels are located at:
level + 1
(2x, 2y), (2x+1, 2y), (2x, 2y+1), (2x+1, 2y+1)
Definition at line 577 of file quadtree.c.
References fpixaGetCount(), and fpixaGetPixel().