MediaPipeTasksVision Framework Reference

Classes

The following classes are available globally.

  • Holds the base options that is used for creation of any type of task. It has fields with important information acceleration configuration, TFLite model source etc.

    Declaration

    Objective-C

    
    @interface MPPBaseOptions : NSObject <NSCopying>
  • Category is a util class that contains a label, its display name, a float value as score, and the index of the label in the corresponding label file. Typically it’s used as the result of classification tasks.

    Declaration

    Objective-C

    
    @interface MPPCategory : NSObject
  • Represents the list of classification for a given classifier head. Typically used as a result for classification tasks.

    Declaration

    Objective-C

    
    @interface MPPClassifications : NSObject
  • Represents the classification results of a model. Typically used as a result for classification tasks.

    Declaration

    Objective-C

    
    @interface MPPClassificationResult : NSObject
  • Classifier options shared across MediaPipe iOS classification tasks.

    Declaration

    Objective-C

    
    @interface MPPClassifierOptions : NSObject <NSCopying>
  • The value class representing a landmark connection.

    Declaration

    Objective-C

    
    @interface MPPConnection : NSObject
  • Normalized keypoint represents a point in 2D space with x, y coordinates. x and y are normalized to [0.0, 1.0] by the image width and height respectively.

    Declaration

    Objective-C

    
    @interface MPPNormalizedKeypoint : NSObject
  • Represents one detected object in the results of ObjectDetector.

    Declaration

    Objective-C

    
    @interface MPPDetection : NSObject
  • @brief Class that performs face detection on images.

    The API expects a TFLite model with mandatory TFLite Model Metadata.

    The API supports models with one image input tensor and one or more output tensors. To be more specific, here are the requirements:

    Input tensor (kTfLiteUInt8/kTfLiteFloat32)

    • image input of size [batch x height x width x channels].
    • batch inference is not supported (batch is required to be 1).
    • only RGB inputs are supported (channels is required to be 3).
    • if type is kTfLiteFloat32, NormalizationOptions are required to be attached to the metadata for input normalization.

    Output tensors must be the 4 outputs of a DetectionPostProcess op, i.e:(kTfLiteFloat32) (kTfLiteUInt8/kTfLiteFloat32)

    • locations tensor of size [num_results x 4], the inner array representing bounding boxes in the form [top, left, right, bottom].
    • BoundingBoxProperties are required to be attached to the metadata and must specify type=BOUNDARIES and coordinate_type=RATIO. (kTfLiteFloat32)
    • classes tensor of size [num_results], each value representing the integer index of a class.
    • scores tensor of size [num_results], each value representing the score of the detected face.
    • optional score calibration can be attached using ScoreCalibrationOptions and an AssociatedFile with type TENSOR_AXIS_SCORE_CALIBRATION. See metadata_schema.fbs [1] for more details. (kTfLiteFloat32)
    • integer num_results as a tensor of size [1]

    Declaration

    Objective-C

    
    @interface MPPFaceDetector : NSObject
  • Options for setting up a FaceDetector.

    Declaration

    Objective-C

    
    @interface MPPFaceDetectorOptions : MPPTaskOptions <NSCopying>
  • Represents the detection results generated by FaceDetector.

    Declaration

    Objective-C

    
    @interface MPPFaceDetectorResult : MPPTaskResult
  • @brief Class that performs face landmark detection on images.

    The API expects a TFLite model with mandatory TFLite Model Metadata.

    Declaration

    Objective-C

    
    @interface MPPFaceLandmarker : NSObject
  • Options for setting up a FaceLandmarker.

    Declaration

    Objective-C

    
    @interface MPPFaceLandmarkerOptions : MPPTaskOptions <NSCopying>
  • A matrix that can be used for tansformations.

    Declaration

    Objective-C

    
    @interface MPPTransformMatrix : NSObject
  • Represents the detection results generated by FaceLandmarker.

    Declaration

    Objective-C

    
    @interface MPPFaceLandmarkerResult : MPPTaskResult
  • @brief Performs gesture recognition on images.

    This API expects a pre-trained TFLite hand gesture recognizer model or a custom one created using MediaPipe Solutions Model Maker. See https://developers.google.com/mediapipe/solutions/model_maker.

    Declaration

    Objective-C

    
    @interface MPPGestureRecognizer : NSObject
  • Options for setting up a GestureRecognizer.

    Declaration

    Objective-C

    
    @interface MPPGestureRecognizerOptions : MPPTaskOptions <NSCopying>
  • Represents the gesture recognition results generated by GestureRecognizer.

    Declaration

    Objective-C

    
    @interface MPPGestureRecognizerResult : MPPTaskResult
  • @brief Performs hand landmarks detection on images.

    This API expects a pre-trained hand landmarks model asset bundle.

    Declaration

    Objective-C

    
    @interface MPPHandLandmarker : NSObject
  • Options for setting up a HandLandmarker.

    Declaration

    Objective-C

    
    @interface MPPHandLandmarkerOptions : MPPTaskOptions <NSCopying>
  • Represents the hand landmarker results generated by HandLandmarker.

    Declaration

    Objective-C

    
    @interface MPPHandLandmarkerResult : MPPTaskResult
  • An image used in on-device machine learning using MediaPipe Task library.

    Declaration

    Objective-C

    
    @interface MPPImage : NSObject
  • @brief Performs classification on images.

    The API expects a TFLite model with optional, but strongly recommended, TFLite Model Metadata..

    The API supports models with one image input tensor and one or more output tensors. To be more specific, here are the requirements.

    Input tensor (kTfLiteUInt8/kTfLiteFloat32)

    • image input of size [batch x height x width x channels].
    • batch inference is not supported (batch is required to be 1).
    • only RGB inputs are supported (channels is required to be 3).
    • if type is kTfLiteFloat32, NormalizationOptions are required to be attached to the metadata for input normalization.

    At least one output tensor with: (kTfLiteUInt8/kTfLiteFloat32)

    • Nclasses and either 2 or 4 dimensions, i.e. [1 x N] or [1 x 1 x 1 x N]
    • optional (but recommended) label map(s) as AssociatedFiles with type TENSOR_AXIS_LABELS, containing one label per line. The first such AssociatedFile (if any) is used to fill the class_name field of the results. The display_name field is filled from the AssociatedFile (if any) whose locale matches the display_names_locale field of the ImageClassifierOptions used at creation time (“en” by default, i.e. English). If none of these are available, only the index field of the results will be filled.
    • optional score calibration can be attached using ScoreCalibrationOptions and an AssociatedFile with type TENSOR_AXIS_SCORE_CALIBRATION. See metadata_schema.fbs [1] for more details.

    Declaration

    Objective-C

    
    @interface MPPImageClassifier : NSObject
  • Options for setting up a ImageClassifier.

    Declaration

    Objective-C

    
    @interface MPPImageClassifierOptions : MPPTaskOptions <NSCopying>
  • Represents the classification results generated by ImageClassifier. *

    Declaration

    Objective-C

    
    @interface MPPImageClassifierResult : MPPTaskResult
  • Landmark represents a point in 3D space with x, y, z coordinates. The landmark coordinates are in meters. z represents the landmark depth, and the smaller the value the closer the world landmark is to the camera.

    Declaration

    Objective-C

    
    @interface MPPLandmark : NSObject
  • Normalized Landmark represents a point in 3D space with x, y, z coordinates. x and y are normalized to [0.0, 1.0] by the image width and height respectively. z represents the landmark depth, and the smaller the value the closer the landmark is to the camera. The magnitude of z uses roughly the same scale as x.

    Declaration

    Objective-C

    
    @interface MPPNormalizedLandmark : NSObject
  • @brief Class that performs object detection on images.

    The API expects a TFLite model with mandatory TFLite Model Metadata.

    The API supports models with one image input tensor and one or more output tensors. To be more specific, here are the requirements:

    Input tensor (kTfLiteUInt8/kTfLiteFloat32)

    • image input of size [batch x height x width x channels].
    • batch inference is not supported (batch is required to be 1).
    • only RGB inputs are supported (channels is required to be 3).
    • if type is kTfLiteFloat32, NormalizationOptions are required to be attached to the metadata for input normalization.

    Output tensors must be the 4 outputs of a DetectionPostProcess op, i.e:(kTfLiteFloat32) (kTfLiteUInt8/kTfLiteFloat32)

    • locations tensor of size [num_results x 4], the inner array representing bounding boxes in the form [top, left, right, bottom].
    • BoundingBoxProperties are required to be attached to the metadata and must specify type=BOUNDARIES and coordinate_type=RATIO. (kTfLiteFloat32)
    • classes tensor of size [num_results], each value representing the integer index of a class.
    • optional (but recommended) label map(s) can be attached as AssociatedFiles with type TENSOR_VALUE_LABELS, containing one label per line. The first such AssociatedFile (if any) is used to fill the class_name field of the results. The display_name field is filled from the AssociatedFile (if any) whose locale matches the display_names_locale field of the ObjectDetectorOptions used at creation time (“en” by default, i.e. English). If none of these are available, only the index field of the results will be filled. (kTfLiteFloat32)
    • scores tensor of size [num_results], each value representing the score of the detected object.
    • optional score calibration can be attached using ScoreCalibrationOptions and an AssociatedFile with type TENSOR_AXIS_SCORE_CALIBRATION. See metadata_schema.fbs [1] for more details. (kTfLiteFloat32)
    • integer num_results as a tensor of size [1]

    Declaration

    Objective-C

    
    @interface MPPObjectDetector : NSObject
  • Options for setting up a ObjectDetector.

    Declaration

    Objective-C

    
    @interface MPPObjectDetectorOptions : MPPTaskOptions <NSCopying>
  • Represents the detection results generated by ObjectDetector.

    Declaration

    Objective-C

    
    @interface MPPObjectDetectorResult : MPPTaskResult
  • MediaPipe Tasks options base class. Any MediaPipe task-specific options class should extend this class.

    Declaration

    Objective-C

    
    @interface MPPTaskOptions : NSObject <NSCopying>
  • MediaPipe Tasks result base class. Any MediaPipe task result class should extend this class.

    Declaration

    Objective-C

    
    @interface MPPTaskResult : NSObject <NSCopying>