2017-10-19 3 views
0

Ich arbeite gerade an der Aufnahme eines Bildes mit AVFoundation. Da ich das aufgenommene Bild in einem Vision Framework-Workflow verwenden möchte, brauche ich seine Ausrichtung, wenn ich es in ein UIImage-Format umwandle. Wie kann ich das erreichen? Aus der Dokumentation habe ich festgestellt, dass AVCapturePhoto ein .metadata-Wörterbuch hat, um auf diese Informationen zuzugreifen, aber wenn ich den entsprechenden Schlüssel verwende, bekomme ich als Ergebnis null.Wie kann ich einen Metadatenwert von AVCapturePhoto erhalten?

Hier ist meine Delegatmethode für die Ergreifung Routine:

func photoOutput(_ output: AVCapturePhotoOutput, didFinishProcessingPhoto photo: AVCapturePhoto, error: Error?) { 
    // capture image finished 
    print("Image captured.") 
    print(photo) 
    print(photo.metadata["kCGImagePropertyOrientation"]) // CGImageProperties for metadata keys for value retrieval. 

fand ich den Schlüssel unter „CGImageProperties> Einzelbildeigenschaften“. Der Druck (Foto) zeigt mir ein Bild gefangen genommen hat tatsächlich wurde, Rückkehr:

AVCapturePhoto: 0x1c1013940 pts: 98386,095931 1/1 Einstellungen: uid: 3 Foto: {4032x3024 SIS: ON}

Bitte antworten Sie in Swift. :)

Danke!

Antwort

1

Ich denke, was Sie suchen ist:

photo.metadata["Orientation"] 

oder

photo.metadata[String(kCGImagePropertyOrientation)] 

Ich hoffe, es wird Ihnen helfen.

Am besten! Ania

+0

In der Tat, das hat den Trick gemacht. Danke, Ania. –

Verwandte Themen