Hi,
das interessiert mich jetzt schon sehr.
Habt da irgendwo eine Anleitung, wie man die Batches aufbauen muss?
Gruß
iceman
Bissel Geduld bitte.
Auch wenn's sehr gut funktioniert, ist das ziemlich mit der heissen Nadel gestrickt (hab's halt nur fuer mich gemacht). Ich bemuehe mich mal das verstaendlich zusammenzustellen.
Du kannst aber mal gucken, ob Du Binaries fuer Hugin 0.8XXX findest. Dort ist schon ein wirklich schoen gemachter Batcher (fuer's Stitchen) drin und man kann auch Projekttemplates verwenden.
Ich habe mal die neue Version 0.8 angeguckt und dabei festgestellt, dass es meine Automatisierungen der 0,7 fast obsolet macht :-)
Aber dazu spaeter mehr, erstmal ein paar generelle Betrachtungen:
Automatisierung von Hugin / Batching.
Dabei geht es NICHT um die automatische Erstellung eines Panoramas (Bilder
laden, Knopfdruck, fertig) sondern um die rationellere Abarbeitung
mehrerer Projekte bzw. Vermeidung von immer wiederkehrenden Klicks und
Zusammenlegung zeitintensiver Prozesse.
Eine typische Panoramaerstellung kann man in folgende Teilschritte
zerlegen:
#1 Projektumfang bestimmen (welche Bilder)
#2 Kontrollpunkte erstellen (normale)
#3 Kontrollpunkte erstellen (senkrechte/waagerechte)
#4 Objektivparameter einstellen
#5 Projektparameter einstellen
#6 Rendering und Stitching
#7 Retusche (Zenith/Nadir/Logo/Mirrorball)
#8 Konvertierung (Flash/MOV/Tiles/Stripes)
#9 Webdarstellung (Erzeugung der notwendigen Files fuer die
Webdarstellung)
Wichtig ist es die zeitintensiven Prozesse (#2 und #6) auszugliedern und
die immer gleichen Schritte (#4, #5, #zu automatisieren.
#1
Grundsaetzlich 2 Vorgehensweisen:
a) Einsammeln der Bilder in ein Projekt (z.B. Hugin oeffnen, Bilder
laden, Projekt speichern). Nachfolgende Aktionen (z.B.
Kontrollpunkterstellung mittels Autopano) holen sich dann die
Information, welche Bilder zu
bearbeiten sind aus dem (lesbaren) Projektfile (.pto). Koennte man mit
einem Windows-Batch erledigen, ggf. das lesen des Projektfiles durch
AWK/Perl/Aehnliches.
b) Benennung der Bilder im Stile von <Basisname>_<laufende
Bildnummer>.jpg/tif. Nachfolgende Aktionen (z.B. Kontrollpunkterstellung
mittels Autopano) finden dann zusammengehoerige Files anhand des
gleichen Basisnamens und
erstellen als Resultat ein Projektfile (.pto) inkl. der Kontrollpunkte.
Windows-Batchfile, ggf. DragAndDrop.
#2
Kann durch Tools erfolgen, die mittels Kommandozeile angesprochen werden
koennen (z.B. autopano, autopano-sift, etc.). Windows-Batch, ggf.
DragAndDrop.
#3 Hier sehe ich zunaechst keine moegliche Automation. Allerdings ist das
Setzen der Senkrechten auch nicht sehr zeitintensiv.
#4 Gibt's schon ewig - einmal gespeicherte Lenstemplates koennen geladen
werden. Dringend zu empfehlen, das stabilisiert die Optimierung ungemein!
#5 Neu in Hugin 0.8. Bereits gespeicherte Projekte koennen als Vorlage
benutzt werden, Schritt #4 wird damit ueberfluessig, weil in #5
enthalten.
#6 Nona (Stitcher von Hugin) als auch enblend lassen sich via
Kommandozeile ansprechen. Lediglich ein 'Sammler', der nona und
enblend fuer die zu verarbeitenden Projekte laufen laesst muesste
geschrieben werden.
Windows-Batch, ggf. mit DragAndDrop.
Neu in Hugin 0.8 ist der Hugin-Batcher (mit GUI), der genau das erledigt.
Hierzu muss man lediglich aus Hugin heraus das geoeffnete Projekt an den
Batcher schicken oder aus dem Batcher heraus das gespeicherte Projekt
auswaehlen. Verschiedene Batches koennen gespeichert werden.
#7 Echte Retusche laesst sich wohl nicht automatisieren. Das Erzeugen
eines Mirroballs oder das Einfuegen eines Logos hingegen kann man mit
Gimp-Scripting oder Image-Magick erledigen. Fuer den Start ist es auch
hilfreich
sich ein immer wieder verwendetes Bodenlogo in's equirectangulare Format
zu wandeln (und abzuspeichern), sodass man es in Gimp (oder PS) nur
in's Bild ziehen und ueberlagen muss.
#8 Pano2VR kann sowas prima mit Droplets, die KRPanotools lassen sich via
Kommandozeile ansprechen (Windows-Batch, ggf. DragAndDrop).
#9 Vielfaeltige Moeglichkeiten. Man kann die Galerie von Malum nutzen,
den Pano2VR HTML-Output, Krpano und ein xml als Parameter uebergeben,
...
Die Schritte #2 und #6 sind zeitintensiv. Wuenschenswerterweise sollten
diese gebatcht fuer z.B. 20 Panoramen hintereinander ablaufen, sodass
man waehrenddessen etwas Anderes tun kann.
Was ich derzeit mache (fuer Panos aus 4 Bildern a la Sigma 8mm an Crop):
Ich benutze noch Hugin 0.7beta 3.
Die Bilder werden entsprechend benannt (pano1_1.jpg, pano1_2.jpg,
pano1_3.jpg, pano1_4.jpg, pano2_1.jpg, .....).
Ich ziehe alle *_1.jpgs (also immer die ersten Bilder verschiedener
Panoramen) auf einen Windows-Batch. Draufhin erstellt autopano-sift fuer
jedes Projekt eine pto-Datei.
Darin enthalten sind Kontrollpunkte, aber keine Linsen- oder
Projektparameter.
Das dauert etwas, aber man kann solange was Anderes tun.
Nun dragge ich alle so erzeugten pto-Dateien auf einen Windows-Batch, der
mittels AWK alle typischen Projekt- und Linseneinstellungen in das
jeweilige Projekt schreibt. Das dauert kaum Sekunden.
Nun oeffne ich nacheinander jedes Hugin-Projekt und setzte - so moeglich
- fuer jedes Bild eine Senkrechte. Nun optimiere ich "Incremental",
loesche im Kontrollpoint Window (kann man nach Abstand sortieren) ein
paar falsche
Punkte und optimiere erneut. Nach 2-5 Iteration sind alle falschen Punkte
weg und ich optimiere noch einmal "everything". Nun speichere ich das
Projekt und schliesse es wieder. Das dauert pro Projekt ~ 3-5 Minuten.
Wenn ich alle Projekte so abgearbeitet habe, dragge ich alle Projekte
(.pto) auf einen weiteren Windows-Batch, der zunaechst nona und dann
enblend laufen laesst. Das dauert ueblicherweise sehr lange - overnight.
Als
Resultat erhalte ich die fertig gerenderten Panos + die gerenderten
Einzelbilder (falls retuschiert werden muss).
Ein im equirectangularen Format vorliegendes Logo baue ich haendisch mit
Gimp ein. Koennte man automatisieren, war's mir aber bislang nicht
wert, weil ich an dieser Stelle auch individuell schaerfen kann.
Speichern als JPG.
Nun ziehe ich alle fertigen JPGs auf ein Pano2VR-Droplet oder auf ein
weiteres Windows-Batchfile, welches mittels 7Zip eine DevalVR-exe baut.
Alles in allem reduziert sich damit die interaktive Arbeit pro Panorama
auf unter 5 Minuten (ohne individuelle Retusche, die durchaus Stunden
dauern koennte).
Bis auf den Schritt #2 kann man das mit der neuen Hugin 0.8rc4 auch schon
"out-of-the-box" machen. Darum empfehle ich, sich das erstmal mal
anzuschauen.
Ad Huikeshoven hat die letzte Beta fertig fuer Vista kompiliert (rennt
bei mir auf XP32): http://hugin.huikeshoven.org/
Fuer andere Betriebssysteme/Distributionen wuerde ich bei Yuval Levy
http://panospace.wordpress.com/downloads/ gucken.
Edit sagt, dass ihr die Foren-Software maechtig auf den S... geht *grumpfffff*
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »trozzreaxxion« (14. Juli 2009, 22:53)
Das hört sich ja sehr interessant an, muss ich mir mal in Ruhe anschauen - im Moment habe ich nur noch diverse Bilder zu bearbeiten und komme nicht recht dazu.
Ein Arbeitsschritt, der bei mir auch immer gleich ist: Optimieren und alle Kontrollpunkte mit Distanz > 100 löschen. Wieder optimieren und löschen, bis alle Kontrollpunkte eine Entfernung unter 100 haben, dann bleiben meist noch ein paar übrig, die ich lösche. Oder mit Glück sind alle verbliebenden korrekt. Durch diese Holzhammer-Methode lösche ich vielleicht auch mal richtige Punkte, aber das nehme ich in Kauf.
Und das Sammeln der Bilder würde ich am liebsten die Aufnahmezeit nutzen. Die einzelnen Bilder für ein Panorama sind bei mir immer in kurzem Abstand gemacht, bis zum nächsten Panorama ist dann der Abstand größer. Da könnte man den Durchschnittsabstand zwischen den Aufnahmen für die letzten Bilder berechnen und wenn der Abstand zum nächsten Bild dann größer wird, dann beginnt dort das nächste Panorama.
Ein Arbeitsschritt, der bei mir auch immer gleich ist: Optimieren und alle Kontrollpunkte mit Distanz > 100 löschen. Wieder optimieren und löschen, bis alle Kontrollpunkte eine Entfernung unter 100 haben, dann bleiben meist noch ein paar übrig, die ich lösche. Oder mit Glück sind alle verbliebenden korrekt. Durch diese Holzhammer-Methode lösche ich vielleicht auch mal richtige Punkte, aber das nehme ich in Kauf.
Das ist auch nicht schlimm, wenn Dir da ein paar Punkte flitzen gehen.
Es gibt auch Tools, die solche falschen Punkte automatisiert loeschen. Die machen nichts anderes (optimieren, loeschen, optimieren, loeschen, ...). In Hugin 0.8 ist celeste integriert - kannst du mal ausprobieren.
Mal kurz der Grund, warum es falsche Punkte gibt:
Tools wie autopano, etc. enthalten Plausibilitaetschecks und Filter, um solche falschen Punkte zu vermeiden. Das fuehrt insbesondere bei Fisheyebildern meist dazu, dass die uebriggebliebenen Punkte zwar (bis auf Ausnahmen) korrekt sind, allerdings befinden sich diese Punkte alle recht mittig. So ein Projekt kann ich sehr gut optimieren und trotzdem bleiben u.U. deutliche Ueberlappungsfehler an den Aussenbereichen. Schaltet man solche Checks ab bleiben auch Punkte erhalten, die weiter aussen liegen, aber leider auch falsche.
Durch die Methode "optimieren, loeschen, ..." findet man diese Blindgaenger recht schnell.
Ich habe - trotz der Tatsache, dass es in hugin 0.8 einiges schon drin ist - heute mal begonnen, ein Java-Programm zu schreiben, das meinen Vorstellungen entspricht. Und nach etwas Gebastel sortiert mir das Programm die Bilder automatisch in Ordner und ruft in jedem Ordner autopano-sift-c auf und erstellt mir eine Projektdatei.
Ich werde morgen dann mal die Objektivdaten eintragen und schauen, ob ich die Optimierung auch mit rein kriege
Ich bin jetzt soweit, dass auch die Panoramen erstellt werden und die Würfelflächen zur Nadirretusche. Sehr praktisch, ich hab eben in kurzer Zeit Kontrollpunkte für sechs Panoramen korrigiert (2-4 Minuten pro Panorama) und jetzt arbeitet der Rechner fleissig und baut mir die zusammen.
Ich muss das Programm noch etwas verbessern und dokumentieren, dann kann ich es für Interessierte auch bereitstellen.
© 2006-2025