Learn R Programming

DRIP (version 1.9)

stepEdgeLLK: Edge detection, denoising and deblurring

Description

Detect step edges in an image using piecewise local linear kernel smoothing.

Usage

stepEdgeLLK(image, bandwidth, thresh, plot)

Value

Returns a matrix of zeros and ones of the same size as image. Value one represent edge pixels and value zero represent non-edge pixels.

Arguments

image

A square matrix object of size n by n, no missing value allowed.

bandwidth

A positive integer to specify the number of pixels used in the local smoothing.

thresh

Threshold value used in the edge detection criterion.

plot

If plot = TRUE, an image of detected edges is plotted.

Details

At each pixel, the gradient is estimated by a local linear kernel smoothing procedure. Next, the local neighborhood is divided into two halves along the direction perpendicular to (\(\widehat{f}'_{x}\), \(\widehat{f}'_{y}\)). Then the one- sided local linear kernel (LLK) estimates are obtained in the two half neighborhoods respectively. The pixel is flagged as a step edge pixel if \(|\widehat{f}_+ - \widehat{f}_-|>u\), where \(u\) is a threshold value.

References

Kang, Y., and Qiu, P., "Jump Detection in Blurred Regression Surfaces," Technometrics, 56, 2014, 539-550.

See Also

stepEdgeLCK, stepEdgeLC2K, stepEdgeLL2K, diffLLK

Examples

Run this code
data(sar) # SAR image is bundled with the package and it is a 
          # standard test image in statistics literature.
edge <- stepEdgeLLK(image = sar, bandwidth = 9, thresh = 17)

Run the code above in your browser using DataLab