image_otsu {image.Otsu} | R Documentation |
Image segmentation using Otsu
Description
An implementation of the Otsu's image segmentation algorithm explained at https://doi.org/10.5201/ipol.2016.158.
Usage
image_otsu(x, threshold = 0)
Arguments
x |
an object of class magick-image or a greyscale matrix of image pixel values in the 0-255 range |
threshold |
integer value in range of 0-255. To override the threshold. Defaults to 0 indicating not to override the threshold. |
Value
In case x
is a matrix, a list with elements x (containing the thresholded image) and threshold is returned
In case x
is a magick-image
, the thresholded magick-image
is returned alongside
which also now has an attribute called threshold with the exact Otsu threshold value
Examples
library(magick)
path <- system.file(package="image.Otsu", "extdata", "coins.jpeg")
x <- image_read(path)
x
img <- image_otsu(x)
img
attr(img, "threshold")
img <- image_otsu(x, threshold = 180)
img
img <- image_data(x, channels = "gray")
img <- as.integer(img, transpose = TRUE)
img <- img[, , 1]
img <- image_otsu(img)
str(img)
[Package image.Otsu version 0.1 Index]