---
title: MLObjectDetector
framework: createml
role: symbol
role_heading: Structure
path: createml/mlobjectdetector
---

# MLObjectDetector

A model you train to classify one or more objects within an image.

## Declaration

```swift
struct MLObjectDetector
```

## Mentioned in

Building an object detector data source

## Overview

Overview Use an MLObjectDetector task to train a machine learning model that can identify items, or objects, within an image. For example, you can train an object detector to recognize breakfast items on a table, such as bananas, croissants, and beverages. You create an object detector training it with a combination of images and annotations for each object within an image. Then save it as a Core ML model and use it in your app to recognize similar items.

## Topics

### Creating a data source

- [Building an object detector data source](createml/building-an-object-detector-data-source.md)

### Training an object detector asynchronously

- [train(trainingData:annotationType:parameters:sessionParameters:)](createml/mlobjectdetector/train(trainingdata:annotationtype:parameters:sessionparameters:).md)
- [makeTrainingSession(trainingData:annotationType:parameters:sessionParameters:)](createml/mlobjectdetector/maketrainingsession(trainingdata:annotationtype:parameters:sessionparameters:).md)
- [resume(_:)](createml/mlobjectdetector/resume(_:).md)
- [restoreTrainingSession(sessionParameters:)](createml/mlobjectdetector/restoretrainingsession(sessionparameters:).md)

### Creating an object detector from a checkpoint

- [init(checkpoint:)](createml/mlobjectdetector/init(checkpoint:).md)

### Training an object detector synchronously

- [init(trainingData:parameters:annotationType:)](createml/mlobjectdetector/init(trainingdata:parameters:annotationtype:).md)
- [init(trainingData:imageColumn:annotationColumn:annotationType:parameters:)](createml/mlobjectdetector/init(trainingdata:imagecolumn:annotationcolumn:annotationtype:parameters:).md)

### Evaluating an object detector

- [evaluation(on:)](createml/mlobjectdetector/evaluation(on:).md)
- [evaluation(on:imageColumn:annotationColumn:)](createml/mlobjectdetector/evaluation(on:imagecolumn:annotationcolumn:).md)
- [trainingMetrics](createml/mlobjectdetector/trainingmetrics.md)
- [validationMetrics](createml/mlobjectdetector/validationmetrics.md)

### Testing an object detector

- [prediction(from:)](createml/mlobjectdetector/prediction(from:).md)
- [predictions(from:)](createml/mlobjectdetector/predictions(from:).md)
- [MLObjectDetector.DetectedObjects](createml/mlobjectdetector/detectedobjects.md)
- [MLObjectDetector.ObjectAnnotation](createml/mlobjectdetector/objectannotation.md)

### Saving an object detector

- [write(to:metadata:)](createml/mlobjectdetector/write(to:metadata:).md)
- [write(toFile:metadata:)](createml/mlobjectdetector/write(tofile:metadata:).md)

### Inspecting an object detector model

- [model](createml/mlobjectdetector/model.md)
- [modelParameters](createml/mlobjectdetector/modelparameters-swift.property.md)

### Describing an object detector

- [description](createml/mlobjectdetector/description.md)
- [debugDescription](createml/mlobjectdetector/debugdescription.md)
- [playgroundDescription](createml/mlobjectdetector/playgrounddescription.md)

### Supporting types

- [MLObjectDetector.DataSource](createml/mlobjectdetector/datasource.md)
- [MLObjectDetector.AnnotationType](createml/mlobjectdetector/annotationtype.md)
- [MLObjectDetector.ModelParameters](createml/mlobjectdetector/modelparameters-swift.struct.md)

### Default Implementations

- [CustomDebugStringConvertible Implementations](createml/mlobjectdetector/customdebugstringconvertible-implementations.md)
- [CustomPlaygroundDisplayConvertible Implementations](createml/mlobjectdetector/customplaygrounddisplayconvertible-implementations.md)
- [CustomStringConvertible Implementations](createml/mlobjectdetector/customstringconvertible-implementations.md)

## Relationships

### Conforms To

- [Copyable](swift/copyable.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomPlaygroundDisplayConvertible](swift/customplaygrounddisplayconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Escapable](swift/escapable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Image models

- [Creating an Image Classifier Model](createml/creating-an-image-classifier-model.md)
- [MLImageClassifier](createml/mlimageclassifier.md)
- [MLHandPoseClassifier](createml/mlhandposeclassifier.md)
