   /// TensorFlow Lite `Interpreter` object for performing inference on a given model.
   private var interpreter: Interpreter
 
+  /// Dedicated DispatchQueue for TF Lite operations.
+  private let tfLiteQueue: DispatchQueue
+
   /// TF Lite Model's input and output shapes.
   private let batchSize: Int
   private let inputImageWidth: Int

    self.inputImageHeight = inputShape.dimensions[2]
    self.inputPixelSize = inputShape.dimensions[3]

    // Read output shape from model
    self.outputImageWidth = outputShape.dimensions[1]
    self.outputImageHeight = outputShape.dimensions[2]
    self.outputClassCount = outputShape.dimensions[3]

    // Store label list
    self.labelList = labelList
  }

  // MARK: - Image Segmentation

  func runSegmentation(
    _ image: UIImage, completion: @escaping ((Result<SegmentationResult>) -> Void)
  ) {
    tfLiteQueue.async {
      let outputTensor: Tensor
      var startTime: Date = Date()
      var preprocessingTime: TimeInterval = 0
