Biomedical Image Analysis Library
The Biomedical Image Analysis Library is a poweful tool for developers, physicians, researchers, engineers, and so on.
|
Functions | |
template<class D > | |
Image< D > | AdaptiveAnisotropicDiffusion (Image< D > img, const DiffusionFunction *diff_func, float init_kappa, float radius=1.0) |
Computes and returns a filtered image by anisotropic diffusion. More... | |
template<class D > | |
Image< D > | AnisotropicDiffusion (Image< D > img, const DiffusionFunction *diff_func, float kappa, size_t iterations, float radius=1.0) |
Computes and returns a filtered image by anisotropic diffusion. More... | |
template<class D > | |
void | AnisotropicDiffusionThread (Image< D > &img, Image< D > &res, double integration_constant, const DiffusionFunction *diff_func, float kappa, Adjacency &adj, size_t thread, size_t total_threads) |
Threads implementation for anisotropic diffusion filter. More... | |
template<class D > | |
double | Flow (const Image< D > &img, const DiffusionFunction *diff_func, float kappa, const size_t pxl, const Adjacency &adj) |
The flow is computed based the diffusion function. More... | |
template<class D > | |
Image< D > | Gaussian (const Image< D > &img, float radius=2.0, float std_dev=2.0) |
Returns the median filtered image with the given radius. More... | |
template<class D > | |
Image< D > | Mean (const Image< D > &img, float radius) |
Returns the mean filtered image with the given radius. More... | |
template<class D > | |
Image< D > | Mean (const Image< D > &img, const Image< D > &msk, float radius) |
Returns the mean filtered image with the given radius restricted to non-zero mask pixels. More... | |
template<class D > | |
Image< D > | Median (const Image< D > &img, float radius) |
Returns the median filtered image with the given radius. More... | |
template<class D > | |
void | MedianThreads (const Image< D > &img, const Adjacency &adj, Image< D > &res, size_t thread, size_t total_threads) |
Multi-thread implementation of the median filtered image with the given radius. More... | |
template<class D > | |
float | EdgeRegionKappa (const Image< D > &source, const Image< D > &mask, const DiffusionFunction *diff_func, float radius) |
Finds the best edge kappa to filter source image. More... | |
template<class D > | |
float | FlatRegionKappa (const Image< D > &source, const Image< D > &mask, const DiffusionFunction *diff_func, float radius, float kappa) |
Finds the best flat kappa to filter source image. More... | |
template<class D > | |
Image< D > | OptimalAnisotropicDiffusion (Image< D > img, const DiffusionFunction *diff_func, float radius, float conservativeness) |
Threads implementation for anisotropic diffusion filter. More... | |
template<class D > | |
Image< D > | OptimalAnisotropicDiffusion (Image< D > img, const DiffusionFunction *diff_func, float radius, float conservativeness, const Image< D > &canny, const Image< D > &backg) |
Threads implementation for anisotropic diffusion filter. More... | |
Image< D > Bial::Filtering::AdaptiveAnisotropicDiffusion | ( | Image< D > | img, |
const DiffusionFunction * | diff_func, | ||
float | init_kappa, | ||
float | radius = 1.0 |
||
) |
Computes and returns a filtered image by anisotropic diffusion.
img | Input image. |
diff_function | diffusion function. |
init_kappa | initial kappa constant to control the gradient range to be filtered. |
radius | radius of the adjacency relation. |
Image< D > Bial::Filtering::AnisotropicDiffusion | ( | Image< D > | img, |
const DiffusionFunction * | diff_func, | ||
float | kappa, | ||
size_t | iterations, | ||
float | radius = 1.0 |
||
) |
Computes and returns a filtered image by anisotropic diffusion.
img | Input image. |
diff_function | diffusion function. |
kappa | constant to control the gradient range to be filtered. |
iterations | the number of iterations. |
radius | radius of the adjacency relation. |
void Bial::Filtering::AnisotropicDiffusionThread | ( | Image< D > & | img, |
Image< D > & | res, | ||
double | integration_constant, | ||
const DiffusionFunction * | diff_func, | ||
float | kappa, | ||
Adjacency & | adj, | ||
size_t | thread, | ||
size_t | total_threads | ||
) |
Threads implementation for anisotropic diffusion filter.
img | Input image. |
res | Output image. |
integration_constant | Constant of integration based on adjacency size. |
diff_function | diffusion function. |
kappa | constant to control the gradient range to be filtered. |
adj | An adjacency relation. |
thread | Thread number. |
total_threads | Number of threads. |
float Bial::Filtering::EdgeRegionKappa | ( | const Image< D > & | source, |
const Image< D > & | mask, | ||
const DiffusionFunction * | diff_func, | ||
float | radius | ||
) |
Finds the best edge kappa to filter source image.
source | Input image. |
mask | Input mask with edge region. |
diff_function | diffusion function. |
radius | Adjacency radius for diff_function. |
float Bial::Filtering::FlatRegionKappa | ( | const Image< D > & | source, |
const Image< D > & | mask, | ||
const DiffusionFunction * | diff_func, | ||
float | radius, | ||
float | kappa | ||
) |
Finds the best flat kappa to filter source image.
source | Input image. |
mask | Input mask with edge region. |
diff_function | diffusion function. |
radius | Adjacency radius for diff_function. |
kappa | Best edge kappa used for initialization. |
double Bial::Filtering::Flow | ( | const Image< D > & | img, |
const DiffusionFunction * | diff_func, | ||
float | kappa, | ||
const size_t | pxl, | ||
const Adjacency & | adj | ||
) |
The flow is computed based the diffusion function.
img | Input image. |
diff_function | diffusion function. |
kappa | constant to control the gradient range to be filtered. |
pxl | reference pixel. |
adj | adjacency relation. |
Image< D > Bial::Filtering::Gaussian | ( | const Image< D > & | img, |
float | radius = 2.0 , |
||
float | std_dev = 2.0 |
||
) |
Returns the median filtered image with the given radius.
img | Input image. |
neighborhood_radius | radius of the neighborhood. |
Returns the mean filtered image with the given radius.
img | Input image. |
neighborhood_radius | radius of the neighborhood. |
Image< D > Bial::Filtering::Mean | ( | const Image< D > & | img, |
const Image< D > & | msk, | ||
float | radius | ||
) |
Returns the mean filtered image with the given radius restricted to non-zero mask pixels.
img | Input image. |
msk | Restrictive mask. |
neighborhood_radius | radius of the neighborhood. |
Returns the median filtered image with the given radius.
img | Input image. |
neighborhood_radius | radius of the neighborhood. |
void Bial::Filtering::MedianThreads | ( | const Image< D > & | img, |
const Adjacency & | adj, | ||
Image< D > & | res, | ||
size_t | thread, | ||
size_t | total_threads | ||
) |
Multi-thread implementation of the median filtered image with the given radius.
img | Input image. |
adj | Adjacency relation. |
res | Resulting image. |
thread | number of the thread. |
total_threads | total number of threads. |
Image< D > Bial::Filtering::OptimalAnisotropicDiffusion | ( | Image< D > | img, |
const DiffusionFunction * | diff_func, | ||
float | radius, | ||
float | conservativeness | ||
) |
Threads implementation for anisotropic diffusion filter.
img | Input image. |
diff_function | diffusion function. |
radius | radius of the adjacency relation. |
conservativeness | Conservativeness function. Expected values: 0.0 to 1.0. Lower values keep weak edges and higher values remove stronger noise incidence. |
Image< D > Bial::Filtering::OptimalAnisotropicDiffusion | ( | Image< D > | img, |
const DiffusionFunction * | diff_func, | ||
float | radius, | ||
float | conservativeness, | ||
const Image< D > & | canny, | ||
const Image< D > & | backg | ||
) |
Threads implementation for anisotropic diffusion filter.
img | Input image. |
diff_function | diffusion function. |
radius | radius of the adjacency relation. |
conservativeness | Conservativeness function. Expected values: 0.0 to 1.0. Lower values keep weak edges and higher values remove stronger noise incidence. |
canny | Canny edges segmentation. |
backg | Image background segmentation. |