Erstellung und Präsentation von Panoramen: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Zeile 17: | Zeile 17: | ||
= 3. Präsentation des Panoramas = | = 3. Präsentation des Panoramas = | ||
* [https://github.com/mpetroff/pannellum Pannellum] - Für 360° Panoramas unter 8.200 Pixel Breite, Technologie: Javascript + WebGL --> [http://kaefert.is-a-geek.org/pannellum/?panorama=Koelbl15_Panorama360.jpg&autoload=yes | * [https://github.com/mpetroff/pannellum Pannellum] - Für 360° Panoramas unter 8.200 Pixel Breite, Technologie: Javascript + WebGL --> Beispiel: [http://kaefert.is-a-geek.org/pannellum/?panorama=Koelbl15_Panorama360.jpg&autoload=yes] | ||
* [http://openpano.org/saladoplayer-1-3-5/ SaladoPlayer 1.3.5] Für 360° Panoramas bis zu 70.000 Pixel Breite, Technologie: Flash --> [http://kaefert.is-a-geek.org/SaladoPlayer-1.3.5/ | * [http://openpano.org/saladoplayer-1-3-5/ SaladoPlayer 1.3.5] Für 360° Panoramas bis zu 70.000 Pixel Breite, Technologie: Flash --> Beispiel: [http://kaefert.is-a-geek.org/SaladoPlayer-1.3.5/] | ||
** Um ein Equirectlinear Panorama (=Output von Hugin) mit SaladoPlayer präsentieren zu können, muss es mit dem [https://github.com/mstandio/SaladoConverter SaladoConverter] in ein Deep Zoom cubic panorama umgewandelt werden. | ** Um ein Equirectlinear Panorama (=Output von Hugin) mit SaladoPlayer präsentieren zu können, muss es mit dem [https://github.com/mstandio/SaladoConverter SaladoConverter] in ein Deep Zoom cubic panorama umgewandelt werden. | ||
** Um vom [https://github.com/mstandio/SaladoConverter SaladoConverter] akzeptiert zu werden, muss das Panorama genau halb so viele Pixel in der Höhe haben, wie in der Breite. In den meisten Fällen hat man keine komplette Kugel, sondern oben und unten fehlt ein Stück. Es ist wesentlich weniger Rechenaufwand diese schwarzen Streifen oben & unten nachträglich mit Gimp hinzuzufügen, also Hugin anzuweisen ein volles 360° * 180° Panorama auszugeben. | ** Um vom [https://github.com/mstandio/SaladoConverter SaladoConverter] akzeptiert zu werden, muss das Panorama genau halb so viele Pixel in der Höhe haben, wie in der Breite. In den meisten Fällen hat man keine komplette Kugel, sondern oben und unten fehlt ein Stück. Es ist wesentlich weniger Rechenaufwand diese schwarzen Streifen oben & unten nachträglich mit Gimp hinzuzufügen, also Hugin anzuweisen ein volles 360° * 180° Panorama auszugeben. | ||
* [http://www.dimin.net/software/panojs/ PanoJS3] für die "flache" Darstellung von Bildern, die zu groß sind, um sie direkt als JPG in einer vernünftigen Größe von wenigen MB in einem Stück vom Browser darstellen zu lassen. Siehe auch [https://github.com/dimin/panojs/ das panojs github repository]. Technologie: Nur Javascript | * [http://www.dimin.net/software/panojs/ PanoJS3] für die "flache" Darstellung von Bildern, die zu groß sind, um sie direkt als JPG in einer vernünftigen Größe von wenigen MB in einem Stück vom Browser darstellen zu lassen. Siehe auch [https://github.com/dimin/panojs/ das panojs github repository]. Technologie: Nur Javascript. --> Beispiel: [http://kaefert.is-a-geek.org/panojs3/] | ||
** Zum zerstückeln des Bildes in Tiles entweder das Inkludierte Python-Script verwenden, oder der Weg den ich gewählt habe: [http://biodev.ece.ucsb.edu/projects/bioimage/downloader/download/category/4 bioImageConvert] | ** Zum zerstückeln des Bildes in Tiles entweder das Inkludierte Python-Script verwenden, oder der Weg den ich gewählt habe: [http://biodev.ece.ucsb.edu/projects/bioimage/downloader/download/category/4 bioImageConvert] | ||
** imgcnv -i MY_INPUT_IMAGE.tif -o MY_OUT_FOLDER/MY_OUT_BASE_NAME.jpg -t jpeg -tile 512 | ** imgcnv -i MY_INPUT_IMAGE.tif -o MY_OUT_FOLDER/MY_OUT_BASE_NAME.jpg -t jpeg -tile 512 |
Version vom 28. Oktober 2013, 13:35 Uhr
Folgendes ist eine Niederschrift meiner Erfahrungen, und kann keine absoluten Wahrheiten anbieten.
1. Aufnahme der Einzelbilder
Um das Zusammenfügen des Panoramas möglichst einfach zu machen, und dabei möglichst wenige sichtbare Verschiebungen zu produzieren folgende Tipps:
- Bilder mit zwischen 20% und 30% Überschneidung aufnehmen.
- Position möglichst Konstant halten (Am besten ein Stativ verwenden)
- Den Drehpunkt möglichst Nahe am Knotenpunkt (Am Besten einen "Nodalpunktadapter" / Panorama-Stativ-Kopf, sind leider recht teuer (im 3-Stelligen €-Bereich, z.B.), kann man aber mit sowas [1] auch um einen 2-Stelligen €-Betrag selber basteln)).
2. Zusammensetzen des Panoramas
Ich habe die besten Ergebnisse mit Hugin erreicht.
- Falls Wolken auf den Bildern zu sehen sind, umbedingt das Feature "Celeste" vor der Erkennung der Kontrollpunkte aktivieren. (Datei -> Einstellungen -> Kontrollpunkt-Detektor -> Cpfind+Celeste -> Als Standard verwenden)
- Um Panoramas die Breiter als ca 70.000 Pixel sind, muss man aufgrund eines Bugs das ganze Toolset selbst komplieren - Mit hugin 2013.0 und enblend 4.2 lassen sich Panoramas erstellen, die bis zu 2^31 Pixel haben. Mein größtes damit erstelltes Panorama hat 253.352 x 8.476 Pixel - siehe [2]
3. Präsentation des Panoramas
- Pannellum - Für 360° Panoramas unter 8.200 Pixel Breite, Technologie: Javascript + WebGL --> Beispiel: [3]
- SaladoPlayer 1.3.5 Für 360° Panoramas bis zu 70.000 Pixel Breite, Technologie: Flash --> Beispiel: [4]
- Um ein Equirectlinear Panorama (=Output von Hugin) mit SaladoPlayer präsentieren zu können, muss es mit dem SaladoConverter in ein Deep Zoom cubic panorama umgewandelt werden.
- Um vom SaladoConverter akzeptiert zu werden, muss das Panorama genau halb so viele Pixel in der Höhe haben, wie in der Breite. In den meisten Fällen hat man keine komplette Kugel, sondern oben und unten fehlt ein Stück. Es ist wesentlich weniger Rechenaufwand diese schwarzen Streifen oben & unten nachträglich mit Gimp hinzuzufügen, also Hugin anzuweisen ein volles 360° * 180° Panorama auszugeben.
- PanoJS3 für die "flache" Darstellung von Bildern, die zu groß sind, um sie direkt als JPG in einer vernünftigen Größe von wenigen MB in einem Stück vom Browser darstellen zu lassen. Siehe auch das panojs github repository. Technologie: Nur Javascript. --> Beispiel: [5]
- Zum zerstückeln des Bildes in Tiles entweder das Inkludierte Python-Script verwenden, oder der Weg den ich gewählt habe: bioImageConvert
- imgcnv -i MY_INPUT_IMAGE.tif -o MY_OUT_FOLDER/MY_OUT_BASE_NAME.jpg -t jpeg -tile 512