Frage

Ist es möglich, in einer iPhone App, zu extrahieren Ortsinformationen (geocode, ich nehme an, es heißt) aus einem Foto mit der iPhone-Kamera aufgenommen?

Wenn es kein API-Aufruf ist, es zu tun, ist es eine bekannte Art und Weise das Bytes von Daten zu analysieren, um die Informationen zu extrahieren? Etwas, das ich auf meinem eigenen rollen kann?

War es hilfreich?

Lösung

Leider nein.

Das Problem ist also;

Eine JPEG-Datei besteht aus mehreren Teilen. Für diese Frage die, die wir interessiert sind, sind die Bilddaten und die EXIF-Daten. Die Bilddaten sind das Bild und die EXIF-Daten sind, wo Dinge wie Geocodierung, Verschlusszeit, Kameratyp und so weiter gespeichert werden.

A UIImage (und CGImage) nur Bilddaten enthalten, keine Tags.

Wenn die Bildauswahl ein Bild auswählt (entweder aus der Bibliothek oder die Kamera) es gibt eine UIImage, kein JPEG. Diese UIImage aus den JPEG-Bilddaten erstellt, aber die EXIF-Daten im JPEG wird verworfen.

Das bedeutet, diese Daten nicht in der UIImage überhaupt und somit nicht zugänglich ist.

Andere Tipps

Ich denke, die gewählte Antwort falsch ist, eigentlich. Nun, nicht falsch. Alles, was gesagt ist richtig, aber es ist eine Möglichkeit, um diese Einschränkung.

UIImagePickerController geht ein Wörterbuch zusammen mit dem UIImage er zurückkehrt. Einer der Schlüssel ist UIImagePickerControllerMediaURL, die „die Dateisystem-URL für den Film“ ist. Wie jedoch exif Bibliothek erwähnt von @Jasper und Sie könnten in der Lage sein Geotags ziehen Fotos.

Ich habe diese Methode nicht ausprobiert, aber als @tomtaylor erwähnt, dies möglich sein muss, irgendwie, wie es einige Anwendungen gibt, die es tun. (Zum Beispiel Lab ).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top