Wie mache ich mein Panorama interaktiv?

Dieses Panorama ist interaktiv, dieses nicht.

Wie mache ich mein Panorama interaktiv? Ich denke, es ist entweder ein EXIF-Flag oder ein bestimmtes Format. Idealerweise suche ich nach etwas Kostenlosem, das unter Linux funktioniert. Hugin scheint dafür keine Einstellung zu haben.


Ich habe folgenden Befehl probiert :

exiftool \
-ProjectionType=equirectangular \
-FullPanoWidthPixels'<$ImageWidth' \
-FullPanoHeightPixels'<$ImageHeight' \
-UsePanoramaViewer=True \
-out test1.jpg \
original.jpg

Und das Ergebnis verifiziert:

$ exiftool test1.jpg | grep -e Pano -e Projection
Full Pano Height Pixels         : 1061
Full Pano Width Pixels          : 22902
Projection Type                 : equirectangular
Use Panorama Viewer             : True

Leider zeigt Flickr Test 1 immer noch als normales Bild an.


OK, ich komme irgendwo hin. Ich habe auch versucht, die Größe auf 2: 1 zu ändern, indem ich Folgendes verwendete:

convert -resize 2:1 test1.jpg test2.jpg

Test 2 wird zwar als Panorama angezeigt, sieht aber völlig verkorkst aus, wahrscheinlich weil das Originalbild keinen vertikalen Bereich von 180° hat.


Ich habe dann versucht, die Pixeleinstellungen für „Volles Pano“ zu optimieren, aber Test 3 sieht nicht anders aus. Wie Sie in Test 4 sehen können, scheinen diese Einstellungen tatsächlich nichts zu ändern.


Auf Flickr gepostet.

Antworten (3)

Sie können nicht einfach mit den Metadaten herumspielen; Sie müssen das Bild tatsächlich neu zuordnen.

Der interaktive Panorama-Viewer von Flickr kann nur mit gleichrechteckigen 360x180-Panoramen verwendet werden. Und um es auf Flickr interaktiv zu machen, muss nur das Tag „equirectangular“ hinzugefügt werden (im Gegensatz zu Facebook, wo Sie die Metadaten festlegen müssen). Das Bild muss jedoch eine tatsächliche gleichwinklige Projektion sein , die die gesamte sphärische Ansicht abdeckt. Daher ist es möglicherweise am besten, die fehlenden Boden-/Deckenbereiche mit Schwarz auszufüllen, um ein 2:1-Rechteck zu erhalten. Sie könnten versuchen, Hugin zu verwenden und Ihr Panorama als Panorama (zylindrisch) "Linsentyp" zu laden und dann auf ein gleichwinkliges 2:1 neu zuzuordnen, mit ähnlichen Schritten wie in diesem Q&A .

Der interaktive Viewer von Flickr erkennt keine zylindrischen 360º-Panoramen und macht sie nicht interaktiv. Die einzige Möglichkeit, die ich kenne, um ein auf Flickr gespeichertes zylindrisches 360º interaktiv anzuzeigen, besteht darin, einen Viewer zu verwenden, der die API von Flickr verwendet, wie z. B. Aldos fieldofview.com. Um es zu verwenden, erstellen Sie eine URL im folgenden Format:

http://fieldofview.com/flickr/?page=photos/user_ID/photo_ID/&tags=TAGS

Dabei ist user_ID Ihre Flickr-Benutzer-ID, photo_ID die ID des Fotos und TAGS alle anderen getaggten Fotos, die Sie in den Viewer werfen möchten.

Also zum Beispiel:

https://fieldofview.com/flickr/?page=photos/l0b0/44945085211/&tags=360

bietet Ihnen eine interaktive Ansicht des Panoramas mit einer verknüpften Galerie von allem, was im Flickr-Stream des Benutzers mit „360“ gekennzeichnet ist. Es wird jedoch davon ausgegangen, dass alle Panoramen eine 360º-Abdeckung haben, sodass die linken und rechten Kanten im Viewer umwickelt und zusammengefügt werden.

Siehe auch: Umhüllen von Fotos in eine gleichwinklige Projektion in Hugin .

Das erste Bild wird in einer speziellen Equirectangular- Gruppe gepostet, die solche Bilder enthält. Im Diskussionsteil dieser Gruppe wurde dies zum Beispiel hier und hier diskutiert.

Unterm Strich benötigt der Flickr-Viewer (und wahrscheinlich auch die meisten anderen Viewer) solche Exif-Daten:

FullPanoHeightPixels = 6000
FullPanoWidthPixels = 3000
ProjectionType=equirectangular
UsePanoramaViewer=True
Leider scheint das nicht zu funktionieren - siehe mein Update.

TLDR: Flickr unterstützt möglicherweise keine teilweise gleichrechteckigen Bilder, aber Google Fotos tut es.


Wenn das Bild ein vollständiges äquirektanguläres 2:1-Bild war:

exiftool \
-xmp:ProjectionType=equirectangular \
-xmp:CroppedAreaLeftPixels=0 \
-xmp:CroppedAreaTopPixels=0 \
-xmp:CroppedAreaImageWidthPixels"<ImageWidth" \
-xmp:CroppedAreaImageHeightPixels"<ImageHeight" \
-xmp:FullPanoWidthPixels"<ImageWidth" \
-xmp:FullPanoHeightPixels"<ImageHeight" \
-xmp:UsePanoramaViewer=true \
-out test1.jpg \
in.jpg

Das von Ihnen verlinkte Bild ist jedoch nicht 2: 1, nicht einmal annähernd.

Width: 22902
Height: 1061

Nehmen wir an, es kann als beschnittenes 2:1 behandelt werden. Wenn es nicht beschnitten wäre, wäre die Höhe die Hälfte der Breite:

22902/2 = 11451

... Also machen wir uns FullPanoHeightPixelsan 11451.

Als nächstes müssen wir berechnen CroppedAreaTopPixels. Wieder teilen wir die Breite durch 2, um die "volle Höhe" zu erhalten, dann subtrahieren wir die tatsächliche Höhe, um herauszufinden, wie viel "fehlt". Als nächstes teilen wir dies durch 2, um den fehlenden Betrag "oben" zu finden:

((22902/2)-1061)/2 = 5195

... Also machen wir uns CroppedAreaTopPixelsan 5195. Beachten Sie, dass davon ausgegangen wird, dass das Panorama mehr oder weniger mit dem "wahren Horizont" übereinstimmt. Wenn Sie mehr Himmel als Boden erfasst haben, möchten Sie hier eine kleinere Zahl verwenden, die ohne weitere Informationen durch Versuch und Irrtum herausgefunden werden müsste.

Das Einsetzen dieser beiden Zahlen in den obigen Basisbefehl ergibt:

exiftool \
-xmp:ProjectionType=equirectangular \
-xmp:CroppedAreaLeftPixels=0 \
-xmp:CroppedAreaTopPixels=5195 \
-xmp:CroppedAreaImageWidthPixels"<ImageWidth" \
-xmp:CroppedAreaImageHeightPixels"<ImageHeight" \
-xmp:FullPanoWidthPixels"<ImageWidth" \
-xmp:FullPanoHeightPixels=11451 \
-xmp:UsePanoramaViewer=true \
-out test2.jpg \
in.jpg

In Google Fotos getestet, sieht gut aus, keine erkennbaren Probleme.

Getestet in Flickr: nicht gut, verwendet keinen Panorama-Viewer.

Ich habe dann eines meiner eigenen äquirektangulären 2:1-Bilder hochgeladen und es auf Flickr hochgeladen, und der Panorama-Viewer wurde verwendet, aber oh, Flickr macht einen schlechten Job, den untersten Teil des Bildes zusammenzufügen (Nadir, direkt nach unten schauen) [ ref ], Google Fotos sieht viel besser aus.

Als nächstes habe ich mein 4096x2048-Bild mit ImageMagick zugeschnitten :

convert in2.jpg -shave 0x512 test4.jpg

... was zu einem 4096 x 1024 Bild führt, bei dem 512 Pixel oben und unten fehlen.

Als nächstes habe ich die EXIF-Daten wie folgt aktualisiert:

exiftool \
-xmp:CroppedAreaTopPixels=512 \
-xmp:CroppedAreaImageHeightPixels"<ImageHeight" \
-ExifImageHeight"<ImageHeight" \
-out test5.jpg \
test4.jpg

Schließlich habe ich es auf die beiden Dienste hochgeladen, auf denen ich getestet habe:

Google Fotos: sieht toll aus, genau wie das Original, aber mit einem fehlenden Kreis oben und unten auf der Kugel (ein Kugelsegment , dem zwei Kugelkappen fehlen ).

Flickr: Panorama Viewer wird nicht angezeigt.

... Was mich zu der Annahme veranlasst, dass Flickr möglicherweise keine teilweise gleichrechteckigen Bilder unterstützt.

Vielleicht möchten Sie anmerken, dass das Panorama des OP zwar eine zylindrische Projektion ist, die nicht equirectangular ist , GPano zu diesem Zeitpunkt jedoch nur equirectangular unterstützt .