Zum Hauptinhalt springen

CoreML-Vision-Inferenzmodul erstellen (coreml.new_vision_request)

Deklaration

vision_request, err = coreml.new_vision_request(compiled_model_path)

oder

vision_request, err = coreml.new_vision_request({
compiled_model_path = compiled_model_path,
uses_cpu_only = nur_CPU_verwenden,
compute_units = compute_units,
image_crop_and_scale_option = crop_and_scale_option,
})

Parameter

  • compiled_model_path
    Zeichenkette. Derzeit werden Modelle für Bildklassifikation und Objekterkennung unterstützt.

  • uses_cpu_only
    Boolean, optional. Gibt an, ob standardmäßig nur die CPU (CPUOnly) verwendet wird; Standardwert ist false.

  • compute_units Zeichenkette, optional, wirksam ab iOS 12+. Unterstützte Werte:

    • "all"
    • "cpu_only" oder "cpu"
    • "cpu_and_gpu" oder "gpu"
    • "cpu_and_neural_engine", "ane" oder "neural_engine" (iOS 16+)
  • image_crop_and_scale_option
    Ganzzahl, optional. Zuschneide- und Skalierungsmodus für die Vision-Inferenz.

Rückgabewerte

  • vision_request
    Vision-Inferenz-Request; bei einem Fehler nil.

  • err
    Zeichenkette; bei Erfolg nil, bei einem Fehler die Fehlermeldung.

Hinweise

  • Ab Softwareversion 1.3.8 verfügbar
  • Systeme vor iOS 13 werden nicht unterstützt.
  • Diese Funktion lädt ein kompiliertes .mlmodelc-Modell und gibt einen Kontext für die Bildinferenz zurück.
  • Sie ist für CoreML-Vision-Modelle gedacht, die ein Bild als Eingabe verwenden.
  • Wenn die Modelleingabe selbst ein allgemeines image- oder MLMultiArray-Feature ist, kann auch coreml.new_model_request verwendet werden.
  • Neben :predict() / :run() unterstützt dieses Objekt auch Abfragemethoden wie :results(), :is_done(), :compute_units(), :image_crop_and_scale_option() und :class_labels().

Beispiel

Siehe Bildinferenz mit dem CoreML-Vision-Inferenzmodul.