---
title: VNInstanceMaskObservation
framework: vision
role: symbol
role_heading: Class
path: vision/vninstancemaskobservation
---

# VNInstanceMaskObservation

An observation that contains an instance mask that labels instances in the mask.

## Declaration

```swift
class VNInstanceMaskObservation
```

## Topics

### Accessing Instances

- [allInstances](vision/vninstancemaskobservation/allinstances.md)
- [instanceMask](vision/vninstancemaskobservation/instancemask.md)

### Creating a Mask

- [generateMask(forInstances:)](vision/vninstancemaskobservation/generatemask(forinstances:).md)
- [generateMaskedImage(ofInstances:from:croppedToInstancesExtent:)](vision/vninstancemaskobservation/generatemaskedimage(ofinstances:from:croppedtoinstancesextent:).md)
- [generateScaledMaskForImage(forInstances:from:)](vision/vninstancemaskobservation/generatescaledmaskforimage(forinstances:from:).md)

## Relationships

### Inherits From

- [VNObservation](vision/vnobservation.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)
- [VNRequestRevisionProviding](vision/vnrequestrevisionproviding.md)

## See Also

### Image background removal

- [Applying visual effects to foreground subjects](vision/applying-visual-effects-to-foreground-subjects.md)
- [VNGenerateForegroundInstanceMaskRequest](vision/vngenerateforegroundinstancemaskrequest.md)
- [VNGenerateForegroundInstanceMaskRequestRevision1](vision/vngenerateforegroundinstancemaskrequestrevision1.md)
