object_id() get the object identification in an image.
object_coord() get the object coordinates and (optionally) draw a
bounding rectangle around multiple objects in an image.
object_contour() returns the coordinates (x and y) for the contours
of each object in the image.
object_isolate() isolates an object from an image.
object_coord(
img,
id = NULL,
index = "NB",
watershed = TRUE,
invert = FALSE,
filter = FALSE,
fill_hull = FALSE,
threshold = "Otsu",
edge = 2,
extension = NULL,
tolerance = NULL,
object_size = "medium",
parallel = FALSE,
workers = NULL,
plot = TRUE
)object_contour(
img,
pattern = NULL,
dir_original = NULL,
center = FALSE,
index = "NB",
invert = FALSE,
filter = FALSE,
fill_hull = FALSE,
threshold = "Otsu",
watershed = TRUE,
extension = NULL,
tolerance = NULL,
object_size = "medium",
parallel = FALSE,
workers = NULL,
plot = TRUE,
verbose = TRUE
)
object_isolate(img, id = NULL, parallel = FALSE, workers = NULL, ...)
object_id(img, parallel = FALSE, workers = NULL, ...)
object_id() An image of class "Image" containing the object's
identification.
object_coord() A list with the coordinates for the bounding rectangles.
If id = "all" or a numeric vector, a list with a vector of coordinates is
returned.
object_isolate() An image of class "Image" containing the isolated
object.
An image of class Image or a list of Image objects.
For object_coord(), a vector (or scalar) of object id to compute the
bounding rectangle. Object ids can be obtained with object_id(). Set id = "all" to compute the coordinates for all objects in the image. If id = NULL (default) a bounding rectangle is drawn including all the objects.
For object_isolate(), a scalar that identifies the object to be extracted.
The index to produce a binary image used to compute bounding
rectangle coordinates. See image_binary() for more details.
If TRUE (default) performs watershed-based object
detection. This will detect objects even when they are touching one other.
If FALSE, all pixels for each connected set of foreground pixels are set
to a unique object. This is faster but is not able to segment touching
objects.
Inverts the binary image, if desired. Defaults to FALSE.
Performs median filtering in the binary image? See more at
image_filter(). Defaults to FALSE. Use a positive integer to define the
size of the median filtering. Larger values are effective at removing
noise, but adversely affect edges.
Fill holes in the objects? Defaults to FALSE.
By default (threshold = "Otsu"), a threshold value based
on Otsu's method is used to reduce the grayscale image to a binary image.
If a numeric value is informed, this value will be used as a threshold.
Inform any non-numeric value different than "Otsu" to iteratively chosen
the threshold based on a raster plot showing pixel intensity of the index.
The number of pixels in the edge of the bounding rectangle.
Defaults to 2.
Controls the watershed segmentation of
objects in the image. See analyze_objects() for more details.
Processes the images asynchronously (in parallel) in separate
R sessions running in the background on the same machine. It may speed up
the processing time when image is a list. The number of sections is set
up to 50% of available cores.
A positive numeric scalar or a function specifying the maximum number of parallel processes that can be active at the same time.
Shows the image with bounding rectangles? Defaults to
TRUE.
A pattern of file name used to identify images to be imported.
For example, if pattern = "im" all images in the current working directory
that the name matches the pattern (e.g., img1.-, image1.-, im2.-) will be
imported as a list. Providing any number as pattern (e.g., pattern = "1")
will select images that are named as 1.-, 2.-, and so on. An error will be
returned if the pattern matches any file that is not supported (e.g.,
img1.pdf).
The directory containing the original images. Defaults
to NULL, which means that the current working directory will be
considered.
If TRUE returns the object contours centered on the origin.
If TRUE (default) a summary is shown in the console.
For object_isolate(), further arguments passed on to object_coord().
For object_id(), further arguments passed on to analyze_objects().
# \donttest{
library(pliman)
img <- image_pliman("la_leaves.jpg")
# Get the object's (leaves) identification
object_id(img)
# Get the coordinates and draw a bounding rectangle around leaves 1 and 3
object_coord(img, id = c(1, 3))
# Isolate leaf 3
isolated <- object_isolate(img, id = 3)
plot(isolated)
# }
Run the code above in your browser using DataLab