Learn R Programming

DRIP (version 1.6)

stepEdgeLC2K: Edge detection, denoising and deblurring

Description

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

Usage

stepEdgeLC2K(image, bandwidth, thresh, plot)

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.

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.

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 deblurring local constant kernel (LC2K) 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, stepEdgeLLK, stepEdgeLL2K, diffLC2K

Examples

Run this code
# NOT RUN {
data(sar) # SAR image is bundled with the package and it is a 
          # standard test image in statistics literature.
edge = stepEdgeLC2K(image = sar, bandwidth = 4, thresh = 20)
# }

Run the code above in your browser using DataLab