Convolution Operations
[Image Processing]
Detailed Description
- See im_process_loc.h
Functions | |
int | imProcessConvolve (const imImage *src_image, imImage *dst_image, const imImage *kernel) |
int | imProcessConvolveRep (const imImage *src_image, imImage *dst_image, const imImage *kernel, int count) |
int | imProcessCompassConvolve (const imImage *src_image, imImage *dst_image, imImage *kernel) |
void | imProcessRotateKernel (imImage *kernel) |
int | imProcessDiffOfGaussianConvolve (const imImage *src_image, imImage *dst_image, float stddev1, float stddev2) |
int | imProcessDiffOfGaussianConvolveRep (const imImage *src_image, imImage *dst_image, float stddev1, float stddev2) |
int | imProcessLapOfGaussianConvolve (const imImage *src_image, imImage *dst_image, float stddev) |
int | imProcessMeanConvolve (const imImage *src_image, imImage *dst_image, int kernel_size) |
int | imProcessGaussianConvolveRep (const imImage *src_image, imImage *dst_image, float stddev) |
int | imProcessGaussianConvolve (const imImage *src_image, imImage *dst_image, float stddev) |
int | imProcessSobelConvolve (const imImage *src_image, imImage *dst_image) |
void | imProcessZeroCrossing (const imImage *src_image, imImage *dst_image) |
void | imProcessCanny (const imImage *src_image, imImage *dst_image, float stddev) |
int | imGaussianStdDev2Repetitions (float stddev) |
int | imGaussianStdDev2KernelSize (float stddev) |
Function Documentation
|
Base Convolution with a kernel.
im.ProcessConvolve(src_image: imImage, dst_image: imImage, kernel: imImage) -> counter: boolean [in Lua 5] im.ProcessConvolveNew(image: imImage, kernel: imImage) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Repeats the convolution a number of times.
im.ProcessConvolveRep(src_image: imImage, dst_image: imImage, kernel: imImage, count: number) -> counter: boolean [in Lua 5] im.ProcessConvolveRepNew(image: imImage, kernel: imImage, count: number) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Convolve with a kernel rotating it 8 times and getting the absolute maximum value.
im.ProcessCompassConvolve(src_image: imImage, dst_image: imImage, kernel: imImage) -> counter: boolean [in Lua 5] im.ProcessCompassConvolveNew(image: imImage, kernel: imImage) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Utility function to rotate a kernel one time.
im.ProcessRotateKernel(kernel: imImage) [in Lua 5] |
|
Difference(Gaussian1, Gaussian2).
im.ProcessDiffOfGaussianConvolve(src_image: imImage, dst_image: imImage, stddev1: number, stddev2: number) -> counter: boolean [in Lua 5] im.ProcessDiffOfGaussianConvolveNew(image: imImage, stddev1: number, stddev2: number) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Difference(Gaussian1, Gaussian2) using gaussian repetitions.
im.ProcessDiffOfGaussianConvolveRep(src_image: imImage, dst_image: imImage, stddev1: number, stddev2: number) -> counter: boolean [in Lua 5] im.ProcessDiffOfGaussianConvolveRepNew(image: imImage, stddev1: number, stddev2: number) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Convolution with a laplacian of a gaussian kernel.
im.ProcessLapOfGaussianConvolve(src_image: imImage, dst_image: imImage, stddev: number) -> counter: boolean [in Lua 5] im.ProcessLapOfGaussianConvolveNew(image: imImage, stddev: number) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Convolution with a kernel full of "1"s inside a circle.
im.ProcessMeanConvolve(src_image: imImage, dst_image: imImage, kernel_size: number) -> counter: boolean [in Lua 5] im.ProcessMeanConvolveNew(image: imImage, kernel_size: number) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Convolution with a gaussian kernel. The gaussian in obtained by repetition of a base 3x3 IM_INT kernel.
im.ProcessGaussianConvolveRep(src_image: imImage, dst_image: imImage, stddev: number) -> counter: boolean [in Lua 5] im.ProcessGaussianConvolveRepNew(image: imImage, stddev: number) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Convolution with a float gaussian kernel.
im.ProcessGaussianConvolve(src_image: imImage, dst_image: imImage, stddev: number) -> counter: boolean [in Lua 5] im.ProcessGaussianConvolveNew(image: imImage, stddev: number) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Magnitude of the sobel convolution.
im.ProcessSobelConvolve(src_image: imImage, dst_image: imImage) -> counter: boolean [in Lua 5] im.ProcessSobelConvolveNew(image: imImage) -> counter: boolean, new_image: imImage [in Lua 5] |
|
Finds the zero crossings of IM_INT and IM_FLOAT images. Crossings are marked with non zero values indicating the intensity of the edge. It is usually used after a second derivative, laplace.
im.ProcessZeroCrossing(src_image: imImage, dst_image: imImage) [in Lua 5] im.ProcessZeroCrossingNew(image: imImage) -> new_image: imImage [in Lua 5] |
|
First part of the Canny edge detector. Includes the gaussian filtering and the nonmax suppression. J. R. Parker "Algoritms for Image Processing and Computer Vision" WILEY
im.ProcessCanny(src_image: imImage, dst_image: imImage, stddev: number) [in Lua 5] im.ProcessCannyNew(image: imImage, stddev: number) -> new_image: imImage [in Lua 5] |
|
Calculates the number of 3x3 gaussian repetitions given the standard deviation.
im.GaussianStdDev2Repetitions(stddev: number) -> count: number [in Lua 5] |
|
Calculates the kernel size given the standard deviation.
im.GaussianStdDev2KernelSize(stddev: number) -> kernel_size: number [in Lua 5] |