#include <brip_vil1_float_ops.h>
Public Member Functions | |
~brip_vil1_float_ops () | |
Static Public Member Functions | |
static vil1_memory_image_of < float > | convolve (vil1_memory_image_of< float > const &input, vbl_array_2d< float > const &kernel) |
convolves with the specified kernel. | |
static vil1_memory_image_of < float > | gaussian (vil1_memory_image_of< float > const &input, float sigma) |
convolves with a Gaussian kernel. | |
static void | non_maximum_suppression (vil1_memory_image_of< float > const &input, const int n, const float thresh, vcl_vector< float > &x_pos, vcl_vector< float > &y_pos, vcl_vector< float > &value) |
non-maximum suppression on a NxN neighborhood, with sub-pixel location. | |
static vil1_memory_image_of < float > | half_resolution (vil1_memory_image_of< float > const &input, float filter_coef=0.359375) |
downsamples the input using the Bert-Adelson algorithm. | |
static vil1_memory_image_of < vil1_rgb< unsigned char > > | half_resolution (vil1_memory_image_of< vil1_rgb< unsigned char > > const &input, float filter_coef=0.359375) |
downsamples the color input image using the Bert-Adelson algorithm. | |
static vil1_memory_image_of < float > | difference (vil1_memory_image_of< float > const &image_1, vil1_memory_image_of< float > const &image_2) |
subtracts image_1 from image_2. | |
static vil1_memory_image_of < float > | abs_clip_to_level (vil1_memory_image_of< float > const &image, const float thresh, const float level=0.0) |
sets absolute values greater than thresh to specified level. | |
static void | gradient_3x3 (vil1_memory_image_of< float > const &input, vil1_memory_image_of< float > &grad_x, vil1_memory_image_of< float > &grad_y) |
The gradient using a 3x3 kernel. | |
static void | hessian_3x3 (vil1_memory_image_of< float > const &input, vil1_memory_image_of< float > &Ixx, vil1_memory_image_of< float > &Ixy, vil1_memory_image_of< float > &Iyy) |
static vil1_memory_image_of < float > | beaudet (vil1_memory_image_of< float > const &Ixx, vil1_memory_image_of< float > const &Ixy, vil1_memory_image_of< float > const &Iyy) |
static void | grad_matrix_NxN (vil1_memory_image_of< float > const &input, const int n, vil1_memory_image_of< float > &IxIx, vil1_memory_image_of< float > &IxIy, vil1_memory_image_of< float > &IyIy) |
IxIx.transpose gradient matrix elements (N = 2n+1). | |
static vil1_memory_image_of < float > | harris (vil1_memory_image_of< float > const &IxIx, vil1_memory_image_of< float > const &IxIy, vil1_memory_image_of< float > const &IyIy, double scale=0.04) |
Computes the Harris corner measure. | |
static vil1_memory_image_of < float > | sqrt_grad_singular_values (vil1_memory_image_of< float > &input, int n) |
computes the conditioning of the 2n+1 x 2n+1 gradient neighborhood. | |
static void | Lucas_KanadeMotion (vil1_memory_image_of< float > ¤t_frame, vil1_memory_image_of< float > &previous_frame, int n, double thresh, vil1_memory_image_of< float > &vx, vil1_memory_image_of< float > &vy) |
computes Lucas-Kanade optical flow on a 2n+1 neighborhood. | |
static void | fill_x_border (vil1_memory_image_of< float > &image, int w, float value) |
fills a border of width w on left and right of image with value. | |
static void | fill_y_border (vil1_memory_image_of< float > &image, int h, float value) |
fills a border of width h on top and bottom of image with value. | |
static vil1_memory_image_of < unsigned char > | convert_to_byte (vil1_memory_image_of< float > const &image) |
converts a float image to a byte value range. | |
static vil1_memory_image_of < unsigned char > | convert_to_byte (vil1_memory_image_of< float > const &image, const float min_val, const float max_val) |
converts a float image to a byte value range within a specified range. | |
static vil1_memory_image_of < unsigned short > | convert_to_short (vil1_memory_image_of< float > const &image, const float min_val, const float max_val) |
converts a float image to an unsigned short image within a range. | |
static vil1_memory_image_of < vil1_rgb< unsigned char > > | convert_to_rgb (vil1_memory_image_of< float > const &image) |
converts a float image to a color rgb image with all equal planes. | |
static vil1_memory_image_of < vil1_rgb< unsigned char > > | convert_to_rgb (vil1_memory_image_of< float > const &image, const float min_val, const float max_val) |
converts a float image with specified range to a color rgb image with all equal planes. | |
static vil1_memory_image_of < float > | convert_to_float (vil1_image const &image) |
converts a vil1_image to a float image. | |
static vil1_memory_image_of < float > | convert_to_float (vil1_memory_image_of< unsigned char > const &image) |
converts a byte image to a float image. | |
static vil1_memory_image_of < float > | convert_to_float (vil1_memory_image_of< vil1_rgb< unsigned char > > const &image) |
converts an RGB image to a float image. | |
static void | convert_to_IHS (vil1_memory_image_of< vil1_rgb< unsigned char > >const &image, vil1_memory_image_of< float > &I, vil1_memory_image_of< float > &H, vil1_memory_image_of< float > &S) |
convert a color image to float IHS images. | |
static void | display_IHS_as_RGB (vil1_memory_image_of< float > const &I, vil1_memory_image_of< float > const &H, vil1_memory_image_of< float > const &S, vil1_memory_image_of< vil1_rgb< unsigned char > > &image) |
display IHS images as RGB (not conversion from IHS to RGB). | |
static vil1_memory_image_of < unsigned char > | convert_to_grey (vil1_image const &img) |
converts a generic image to greyscale (RGB<unsigned char>). | |
static vil1_memory_image_of < float > | convert_to_float (vnl_matrix< float > const &matrix) |
converts a vnl_matrix<float> to a float image. | |
static vbl_array_2d< float > | load_kernel (vcl_string const &file) |
loads a 2n+1 x 2n+1 convolution kernel (see .cxx for file format). | |
static void | basis_images (vcl_vector< vil1_memory_image_of< float > > const &input_images, vcl_vector< vil1_memory_image_of< float > > &basis) |
compute basis images for a set of input images. | |
static bool | fourier_transform (vil1_memory_image_of< float > const &input, vil1_memory_image_of< float > &mag, vil1_memory_image_of< float > &phase) |
compute the Fourier transform using the vnl FFT algorithm. | |
static bool | inverse_fourier_transform (vil1_memory_image_of< float > const &mag, vil1_memory_image_of< float > const &phase, vil1_memory_image_of< float > &output) |
compute the inverse Fourier transform using the vnl FFT algorithm. | |
static void | resize (vil1_memory_image_of< float > const &input, const int width, const int height, vil1_memory_image_of< float > &output) |
resize to specified dimensions, fill with zeros if output is larger. | |
static bool | resize_to_power_of_two (vil1_memory_image_of< float > const &input, vil1_memory_image_of< float > &output) |
resize to closest power of two larger dimensions than the input. | |
static bool | spatial_frequency_filter (vil1_memory_image_of< float > const &input, const float dir_fx, const float dir_fy, const float f0, const float radius, const bool output_fourier_mag, vil1_memory_image_of< float > &output) |
filter the input image with a Gaussian blocking filter. | |
static float | bilinear_interpolation (vil1_memory_image_of< float > const &input, const double x, const double y) |
2x2 bilinear interpolation of image at specified location. | |
static bool | homography (vil1_memory_image_of< float > const &input, vgl_h_matrix_2d< double >const &H, vil1_memory_image_of< float > &output, bool output_size_fixed=false, float output_fill_value=0.0) |
map the input to the output by a homography. | |
static vil1_memory_image_of < float > | rotate (vil1_memory_image_of< float > const &input, const double theta_deg) |
rotate the input image counter-clockwise about the image origin. | |
static bool | chip (vil1_memory_image_of< float > const &input, vsol_box_2d_sptr const &roi, vil1_memory_image_of< float > &chip) |
static bool | chip (vil1_image const &input, brip_roi_sptr const &roi, vil1_image &chip) |
Chipping for a general image type. | |
static vil1_image | insert_chip_in_image (vil1_image const &image, vil1_image const &chip, brip_roi_sptr const &roi) |
assumes that the chip and image have the same pixel types. Only works for. | |
static float | cross_correlate (vil1_memory_image_of< float > const &image1, vil1_memory_image_of< float > const &image2, const float x, const float y, const int radius=5, const float intensity_thresh=25.0) |
cross-correlate two images at a given sub-pixel location. | |
static bool | cross_correlate (vil1_memory_image_of< float > const &image1, vil1_memory_image_of< float > const &image2, vil1_memory_image_of< float > &out, const int radius=5, const float intensity_thresh=25.0) |
Cross-correlate two images using faster running sums. | |
Private Member Functions | |
brip_vil1_float_ops () | |
Default constructor is private. | |
Static Private Member Functions | |
static bool | local_maximum (vbl_array_2d< float > const &nighborhood, int n, float &value) |
find if the center pixel of a neighborhood is the maximum value. | |
static void | interpolate_center (vbl_array_2d< float > const &neighborhood, float &dx, float &dy) |
find the sub-pixel offset to the maximum using a 3x3 quad interpolation. | |
static void | half_resolution_1d (const float *input, int n, const float k0, const float k1, const float k2, float *output) |
sub-sample a 1-d array using the Bert-Adelson algorithm. | |
static bool | fft_1d (int dir, int m, double *x, double *y) |
One-dimensional fft. | |
static bool | fft_2d (vnl_matrix< vcl_complex< double > > &c, int nx, int ny, int dir) |
Two-dimensional fft. | |
static void | ftt_fourier_2d_reorder (vnl_matrix< vcl_complex< double > > const &F1, vnl_matrix< vcl_complex< double > > &F2) |
Transform the fft coefficients from/to fft/frequency order(self inverse). | |
static float | gaussian_blocking_filter (const float dir_fx, const float dir_fy, const float f0, const float radius, const float fx, const float fy) |
Blocking filter function. |
Definition at line 34 of file brip_vil1_float_ops.h.
brip_vil1_float_ops::~brip_vil1_float_ops | ( | ) | [inline] |
Definition at line 37 of file brip_vil1_float_ops.h.
brip_vil1_float_ops::brip_vil1_float_ops | ( | ) | [inline, private] |
Default constructor is private.
Definition at line 305 of file brip_vil1_float_ops.h.
vil1_memory_image_of< float > brip_vil1_float_ops::abs_clip_to_level | ( | vil1_memory_image_of< float > const & | image, |
const float | thresh, | ||
const float | level = 0.0 |
||
) | [static] |
sets absolute values greater than thresh to specified level.
Definition at line 359 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::basis_images | ( | vcl_vector< vil1_memory_image_of< float > > const & | input_images, |
vcl_vector< vil1_memory_image_of< float > > & | basis | ||
) | [static] |
compute basis images for a set of input images.
Definition at line 1107 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::beaudet | ( | vil1_memory_image_of< float > const & | Ixx, |
vil1_memory_image_of< float > const & | Ixy, | ||
vil1_memory_image_of< float > const & | Iyy | ||
) | [static] |
Definition at line 455 of file brip_vil1_float_ops.cxx.
float brip_vil1_float_ops::bilinear_interpolation | ( | vil1_memory_image_of< float > const & | input, |
const double | x, | ||
const double | y | ||
) | [static] |
2x2 bilinear interpolation of image at specified location.
Bi-linear interpolation on the neighborhood below.
xr yr 0 x x x
Definition at line 1542 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::chip | ( | vil1_memory_image_of< float > const & | input, |
vsol_box_2d_sptr const & | roi, | ||
vil1_memory_image_of< float > & | chip | ||
) | [static] |
Definition at line 1735 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::chip | ( | vil1_image const & | input, |
brip_roi_sptr const & | roi, | ||
vil1_image & | chip | ||
) | [static] |
Chipping for a general image type.
Definition at line 1764 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< unsigned char > brip_vil1_float_ops::convert_to_byte | ( | vil1_memory_image_of< float > const & | image | ) | [static] |
converts a float image to a byte value range.
Definition at line 701 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< unsigned char > brip_vil1_float_ops::convert_to_byte | ( | vil1_memory_image_of< float > const & | image, |
const float | min_val, | ||
const float | max_val | ||
) | [static] |
converts a float image to a byte value range within a specified range.
Definition at line 729 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::convert_to_float | ( | vil1_image const & | image | ) | [static] |
converts a vil1_image to a float image.
Definition at line 998 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::convert_to_float | ( | vil1_memory_image_of< unsigned char > const & | image | ) | [static] |
converts a byte image to a float image.
Definition at line 806 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::convert_to_float | ( | vil1_memory_image_of< vil1_rgb< unsigned char > > const & | image | ) | [static] |
converts an RGB image to a float image.
Definition at line 818 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::convert_to_float | ( | vnl_matrix< float > const & | matrix | ) | [static] |
converts a vnl_matrix<float> to a float image.
Definition at line 830 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< unsigned char > brip_vil1_float_ops::convert_to_grey | ( | vil1_image const & | img | ) | [static] |
converts a generic image to greyscale (RGB<unsigned char>).
Definition at line 1028 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::convert_to_IHS | ( | vil1_memory_image_of< vil1_rgb< unsigned char > >const & | image, |
vil1_memory_image_of< float > & | I, | ||
vil1_memory_image_of< float > & | H, | ||
vil1_memory_image_of< float > & | S | ||
) | [static] |
convert a color image to float IHS images.
Definition at line 901 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< vil1_rgb< unsigned char > > brip_vil1_float_ops::convert_to_rgb | ( | vil1_memory_image_of< float > const & | image | ) | [static] |
converts a float image to a color rgb image with all equal planes.
Definition at line 780 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< vil1_rgb< unsigned char > > brip_vil1_float_ops::convert_to_rgb | ( | vil1_memory_image_of< float > const & | image, |
const float | min_val, | ||
const float | max_val | ||
) | [static] |
converts a float image with specified range to a color rgb image with all equal planes.
Definition at line 792 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< unsigned short > brip_vil1_float_ops::convert_to_short | ( | vil1_memory_image_of< float > const & | image, |
const float | min_val, | ||
const float | max_val | ||
) | [static] |
converts a float image to an unsigned short image within a range.
Definition at line 754 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::convolve | ( | vil1_memory_image_of< float > const & | input, |
vbl_array_2d< float > const & | kernel | ||
) | [static] |
convolves with the specified kernel.
Convolve with a kernel.
It's assumed that the kernel is square with odd dimensions
Definition at line 25 of file brip_vil1_float_ops.cxx.
float brip_vil1_float_ops::cross_correlate | ( | vil1_memory_image_of< float > const & | image1, |
vil1_memory_image_of< float > const & | image2, | ||
const float | x, | ||
const float | y, | ||
const int | radius = 5 , |
||
const float | intensity_thresh = 25.0 |
||
) | [static] |
cross-correlate two images at a given sub-pixel location.
perform normalized cross-correlation at a sub-pixel location.
thus all the pixel values are interpolated.
compute correlation.
Definition at line 1890 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::cross_correlate | ( | vil1_memory_image_of< float > const & | image1, |
vil1_memory_image_of< float > const & | image2, | ||
vil1_memory_image_of< float > & | out, | ||
const int | radius = 5 , |
||
const float | intensity_thresh = 25.0 |
||
) | [static] |
Cross-correlate two images using faster running sums.
Definition at line 2061 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::difference | ( | vil1_memory_image_of< float > const & | image_1, |
vil1_memory_image_of< float > const & | image_2 | ||
) | [static] |
subtracts image_1 from image_2.
Definition at line 339 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::display_IHS_as_RGB | ( | vil1_memory_image_of< float > const & | I, |
vil1_memory_image_of< float > const & | H, | ||
vil1_memory_image_of< float > const & | S, | ||
vil1_memory_image_of< vil1_rgb< unsigned char > > & | image | ||
) | [static] |
display IHS images as RGB (not conversion from IHS to RGB).
map so that intensity is proportional to saturation and hue is color.
Definition at line 959 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::fft_1d | ( | int | dir, |
int | m, | ||
double * | x, | ||
double * | y | ||
) | [static, private] |
One-dimensional fft.
1d fourier transform.
This computes an in-place complex-to-complex FFT x and y are the real and imaginary arrays of 2^m points. dir = 1 gives forward transform dir = -1 gives reverse transform
Formula: forward N-1 --- 1 \ - j k 2 pi n / N X(n) = --- > x(k) e = forward transform N / n=0..N-1 --- k=0
Formula: reverse N-1 --- \ j k 2 pi n / N X(n) = > x(k) e = forward transform / n=0..N-1 --- k=0
Definition at line 1192 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::fft_2d | ( | vnl_matrix< vcl_complex< double > > & | c, |
int | nx, | ||
int | ny, | ||
int | dir | ||
) | [static, private] |
Two-dimensional fft.
Definition at line 1269 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::fill_x_border | ( | vil1_memory_image_of< float > & | image, |
int | w, | ||
float | value | ||
) | [static] |
fills a border of width w on left and right of image with value.
Definition at line 664 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::fill_y_border | ( | vil1_memory_image_of< float > & | image, |
int | h, | ||
float | value | ||
) | [static] |
fills a border of width h on top and bottom of image with value.
Definition at line 682 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::fourier_transform | ( | vil1_memory_image_of< float > const & | input, |
vil1_memory_image_of< float > & | mag, | ||
vil1_memory_image_of< float > & | phase | ||
) | [static] |
compute the Fourier transform using the vnl FFT algorithm.
Compute the fourier transform.
If the image dimensions are not a power of 2 then the operation fails.
Definition at line 1346 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::ftt_fourier_2d_reorder | ( | vnl_matrix< vcl_complex< double > > const & | F1, |
vnl_matrix< vcl_complex< double > > & | F2 | ||
) | [static, private] |
Transform the fft coefficients from/to fft/frequency order(self inverse).
reorder the transform values to sequential frequencies as in conventional Fourier transforms.
The transformation is its self-inverse.
Definition at line 1320 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::gaussian | ( | vil1_memory_image_of< float > const & | input, |
float | sigma | ||
) | [static] |
convolves with a Gaussian kernel.
Definition at line 200 of file brip_vil1_float_ops.cxx.
float brip_vil1_float_ops::gaussian_blocking_filter | ( | const float | dir_fx, |
const float | dir_fy, | ||
const float | f0, | ||
const float | radius, | ||
const float | fx, | ||
const float | fy | ||
) | [static, private] |
Blocking filter function.
block a periodic signal by suppressing two Gaussian lobes in the frequency domain.
The lobes are on the line defined by dir_fx and dir_fy through the dc origin, assumed (0, 0). The center frequency, f0, is the distance along the line to the center of each blocking lobe (+- f0). radius is the standard deviation of each lobe. Later we can define a "filter" class.
Definition at line 1467 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::grad_matrix_NxN | ( | vil1_memory_image_of< float > const & | input, |
const int | n, | ||
vil1_memory_image_of< float > & | IxIx, | ||
vil1_memory_image_of< float > & | IxIy, | ||
vil1_memory_image_of< float > & | IyIy | ||
) | [static] |
IxIx.transpose gradient matrix elements (N = 2n+1).
Definition at line 495 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::gradient_3x3 | ( | vil1_memory_image_of< float > const & | input, |
vil1_memory_image_of< float > & | grad_x, | ||
vil1_memory_image_of< float > & | grad_y | ||
) | [static] |
The gradient using a 3x3 kernel.
Definition at line 385 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::half_resolution | ( | vil1_memory_image_of< float > const & | input, |
float | filter_coef = 0.359375 |
||
) | [static] |
downsamples the input using the Bert-Adelson algorithm.
Downsamples the image by 2 using the Burt-Adelson reduction algorithm.
Convolution with a 5-point kernel [(0.5-ka)/2, 0.25, ka, 0.25, (0.5-ka)/2] ka = 0.6 maximum decorrelation, wavelet for image compression. ka = 0.5 linear interpolation, ka = 0.4 Gaussian filter ka = 0.359375 min aliasing, wider than Gaussian The image sizes are related by: output_dimension = (input_dimension +1)/2.
Definition at line 91 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< vil1_rgb< unsigned char > > brip_vil1_float_ops::half_resolution | ( | vil1_memory_image_of< vil1_rgb< unsigned char > > const & | input, |
float | filter_coef = 0.359375 |
||
) | [static] |
downsamples the color input image using the Bert-Adelson algorithm.
Definition at line 153 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::half_resolution_1d | ( | const float * | input, |
int | n, | ||
const float | k0, | ||
const float | k1, | ||
const float | k2, | ||
float * | output | ||
) | [static, private] |
sub-sample a 1-d array using the Bert-Adelson algorithm.
Downsamples the 1-d array by 2 using the Burt-Adelson reduction algorithm.
Definition at line 61 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::harris | ( | vil1_memory_image_of< float > const & | IxIx, |
vil1_memory_image_of< float > const & | IxIy, | ||
vil1_memory_image_of< float > const & | IyIy, | ||
double | scale = 0.04 |
||
) | [static] |
Computes the Harris corner measure.
Definition at line 535 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::hessian_3x3 | ( | vil1_memory_image_of< float > const & | input, |
vil1_memory_image_of< float > & | Ixx, | ||
vil1_memory_image_of< float > & | Ixy, | ||
vil1_memory_image_of< float > & | Iyy | ||
) | [static] |
Definition at line 420 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::homography | ( | vil1_memory_image_of< float > const & | input, |
vgl_h_matrix_2d< double >const & | H, | ||
vil1_memory_image_of< float > & | output, | ||
bool | output_size_fixed = false , |
||
float | output_fill_value = 0.0 |
||
) | [static] |
map the input to the output by a homography.
Transform the input to the output by a homography.
if the output size is fixed then only the corresponding region of input image space is transformed.
Definition at line 1565 of file brip_vil1_float_ops.cxx.
vil1_image brip_vil1_float_ops::insert_chip_in_image | ( | vil1_image const & | image, |
vil1_image const & | chip, | ||
brip_roi_sptr const & | roi | ||
) | [static] |
assumes that the chip and image have the same pixel types. Only works for.
color at present.
Definition at line 1835 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::interpolate_center | ( | vbl_array_2d< float > const & | neighborhood, |
float & | dx, | ||
float & | dy | ||
) | [static, private] |
find the sub-pixel offset to the maximum using a 3x3 quad interpolation.
Definition at line 232 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::inverse_fourier_transform | ( | vil1_memory_image_of< float > const & | mag, |
vil1_memory_image_of< float > const & | phase, | ||
vil1_memory_image_of< float > & | output | ||
) | [static] |
compute the inverse Fourier transform using the vnl FFT algorithm.
Definition at line 1390 of file brip_vil1_float_ops.cxx.
vbl_array_2d< float > brip_vil1_float_ops::load_kernel | ( | vcl_string const & | file | ) | [static] |
loads a 2n+1 x 2n+1 convolution kernel (see .cxx for file format).
Definition at line 1066 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::local_maximum | ( | vbl_array_2d< float > const & | nighborhood, |
int | n, | ||
float & | value | ||
) | [static, private] |
find if the center pixel of a neighborhood is the maximum value.
Definition at line 210 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::Lucas_KanadeMotion | ( | vil1_memory_image_of< float > & | current_frame, |
vil1_memory_image_of< float > & | previous_frame, | ||
int | n, | ||
double | thresh, | ||
vil1_memory_image_of< float > & | vx, | ||
vil1_memory_image_of< float > & | vy | ||
) | [static] |
computes Lucas-Kanade optical flow on a 2n+1 neighborhood.
Definition at line 610 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::non_maximum_suppression | ( | vil1_memory_image_of< float > const & | input, |
const int | n, | ||
const float | thresh, | ||
vcl_vector< float > & | x_pos, | ||
vcl_vector< float > & | y_pos, | ||
vcl_vector< float > & | value | ||
) | [static] |
non-maximum suppression on a NxN neighborhood, with sub-pixel location.
Definition at line 297 of file brip_vil1_float_ops.cxx.
void brip_vil1_float_ops::resize | ( | vil1_memory_image_of< float > const & | input, |
const int | width, | ||
const int | height, | ||
vil1_memory_image_of< float > & | output | ||
) | [static] |
resize to specified dimensions, fill with zeros if output is larger.
Definition at line 1416 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::resize_to_power_of_two | ( | vil1_memory_image_of< float > const & | input, |
vil1_memory_image_of< float > & | output | ||
) | [static] |
resize to closest power of two larger dimensions than the input.
resize the input to the closest power of two image dimensions.
Definition at line 1432 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::rotate | ( | vil1_memory_image_of< float > const & | input, |
const double | theta_deg | ||
) | [static] |
rotate the input image counter-clockwise about the image origin.
demonstrates the use of image homography
Definition at line 1705 of file brip_vil1_float_ops.cxx.
bool brip_vil1_float_ops::spatial_frequency_filter | ( | vil1_memory_image_of< float > const & | input, |
const float | dir_fx, | ||
const float | dir_fy, | ||
const float | f0, | ||
const float | radius, | ||
const bool | output_fourier_mag, | ||
vil1_memory_image_of< float > & | output | ||
) | [static] |
filter the input image with a Gaussian blocking filter.
Definition at line 1496 of file brip_vil1_float_ops.cxx.
vil1_memory_image_of< float > brip_vil1_float_ops::sqrt_grad_singular_values | ( | vil1_memory_image_of< float > & | input, |
int | n | ||
) | [static] |
computes the conditioning of the 2n+1 x 2n+1 gradient neighborhood.
Definition at line 569 of file brip_vil1_float_ops.cxx.