ImageBoundingBoxes

ImageBoundingBoxes[image]

gives an association of lists of bounding boxes for each identified category of objects in image.

ImageBoundingBoxes[image,category]

gives a list of bounding boxes for subimages identified as an instance of the specified category.

Details and Options

  • ImageBoundingBoxes attempts to find instances of an object category present in an image and returns a list of bounding boxes per category given as Rectangle objects.
  • Coordinates are assumed to be in the standard image coordinate system.
  • Possible forms for category include:
  • "concept"named concept, as used in "Concept" entities
    "word"English word, as used in WordData
    wordspecword sense specification, as used in WordData
    Entity[]any appropriate entity
    category1|category2|any of the categoryi
  • The following options can be given:
  • AcceptanceThresholdAutomaticidentification acceptance threshold
    MaxFeaturesAutomaticmaximum number of subimages to return
    MaxOverlapFractionAutomaticmaximum bounding box overlap
    TargetDevice"CPU"the target device on which to compute
  • ImageBoundingBoxes uses machine learning. Its methods, training sets and biases included therein may change and yield varied results in different versions of the Wolfram Language.
  • ImageBoundingBoxes may download resources that will be stored in your local object store at $LocalBase, and can be listed using LocalObjects[] and removed using ResourceRemove.

Examples

open allclose all

Basic Examples  (1)

Find the bounding boxes around identified birds in an image:

Highlight the identified bounding boxes:

Scope  (2)

Find a list of bounding boxes for each identified category of objects in an image:

Find a list of bounding boxes for the specified object category:

Options  (4)

AcceptanceThreshold  (1)

Objects with low probability are not returned:

Allowing a lower probability may result in more objects being recognized:

MaxFeatures  (1)

By default, all the detected objects are returned:

Specify a maximum number of results:

MaxOverlapFraction  (1)

The detected bounding boxes may overlap each other:

Find only non-intersecting objects:

TargetDevice  (1)

By default, the function is evaluated on CPU:

Use the TargetDevice option to specify a different device:

Properties & Relations  (1)

ImageBoundingBoxes is equivalent to ImageCases[image, All -> "BoundingBox"]:

Interactive Examples  (1)

Dynamically locate an object in an image:

Introduced in 2019
 (12.0)