Zeitraffer mit Zoom-in/ Zoom-out

DRI/HDR-Bilder, Zeitraffer, Bilder mit extremer Tiefenschärfe, Stereobilder

Zeitraffer mit Zoom-in/ Zoom-out

Beitragvon Pixelworker » 17.01.2013, 21:45

Hallo alle zusammen,

ich bin hier neu und möchte mich ein wenig mit Zeitrafferaufnahmen beschäftigen. Ein paar Versuche habe ich schon vor einiger Zeit mit CHDK gemacht. Nach einer längeren Pause steige ich nun wieder ein. Vorweg: ich hatte mit Scripten (wenn sie nicht fix und fertig irgendwo zu haben sind) bisher nix am Hut. Momentan beschäftigt mich die Frage, ob es denn möglich ist, während einer Zeitrafferaufnahme etwas mit dem Zoom zu spielen. Aus dem Handbuch, welches ich mir natürlich gezogen habe, wurde ich bisher nicht wirklich schlau, was die Befehle und Funktionen betrifft, aber Übung macht ja bekanntlich den Meister und so möchte ich hier mal über meine "Erfolge" berichten.
Im Handbuch las ich, dass es einen Befehl gibt, den Zoom-Schritt zu ermitteln. Je nach Kameratyp sind da verschiedene Werte angegeben. Interessant, dachte ich mir. Man kann damit sicher per Script so eine Art Zoom-Fahrt steuern. Aber wo hört mein Zoom auf? Dass es notgedrungen bei 0 anfangen muss, war ja klar. Also hab ich mich mit diesem Befehl etwas näher beschäftigt und nach etlichen Versuchen herausbekommen, wie das geht. *freu*
Mit meinem ersten kleinen funktionsfähigen Script konnte ich den größten Wert an Zoom-Schritten ermitteln. Die Chefprogrammierer unter euch mögen jetzt vlt. schmunzeln, aber für mich ist das alles Neuland. Also habe ich dieses kleine Script geschrieben und in die Kamera geladen:

@param a
a=get_zoom()
print a
end

Anschließend habe ich CHDK über die Print-Taste kurz deaktiviert und den Zoom voll ausgefahren. Danach CHDK wieder aktiviert und das Script ausgeführt. Dabei wurde auf dem Display dann der Wert "125" ausgegeben. Feine Geschichte, dachte ich mir, das ist ein Wert, mit dem man was anfangen kann. Im nächsten Schritt habe ich versucht, über ein Script im Wechsel die Kamera auszulösen und den Zoom anschließend um einen Schritt einzufahren. Das hat schon seine Zeit gedauert, bis ich dahinter gestiegen bin, wie das funktioniert. Aber letztendlich hat es dann doch geklappt. Zunächst bin ich über den Befehl "shoot" gestolpert, später habe ich den dann durch "shoot_full_only" ersetzt. Mich störte, dass die Kamera vor jeder Auslösung neu fokussierte und dank CHDK gibts sogar eine MF-Lösung. Mit diesem Script habe ich dann ein Zeitraffer + Zoomfahrt realisiert:

@param a Zoomwert
@param b Uebergabewert
@default a 125
set_zoom(a)
while a>0
shoot_full_only
b=a-1
set_zoom(b)
a=b
wend

Blende und Belichtungszeit habe ich manuell vorgewählt und den Fokus manuell auf unendlich.
Das ganze hat schon ne Weile gedauert, aber es funktioniert. Da es nun schon ein wenig dunkel ist und meine Aufnahmen nicht sooooo doll sind, werde ich morgen bei Tageslicht mal neue machen und ein entsprechendes Ergebnis verlinken.
Fazit der Geschichte? Ich finde die Möglichkeiten, die sich hier eröffnen, einfach fantastisch. Wie geht es weiter? Ich möchte iwann mal dahin kommen, ein Script zu schreiben, bei welchem ich ein paar Werte (Bildanzahl, Intervall, Zeitdauer usw.) eingeben kann und dazu noch Werte für die Zoom-Schrittweite bzw. nach wievielen Auslösungen muss bei entsprechender Zeitdauer des Ereignisses ein Zoom-Schritt nach vorn oder hinten (zoom in/ zoom out) gemacht werden. Ich hoffe, dass ich das iwann hinbekomme. Natürlich wäre es einfacher, hier mal nachzufragen, ob iwer bereits eine Lösung dafür hat. Aber der einfache Weg ist für mich nicht der bessere, weil ich will ja auch was dazu lernen. ;-)
So, das für´s Erste mal eben. Fortsetzung folgt.

P.S. ein paar Zeitrafferversuche von mir findet ihr hier: http://www.youtube.com/user/Wetterfoto/ ... rid&view=0
Pixelworker
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 4
Registriert: 17.01.2013, 20:58
Kamera(s): SX200IS

Re: Zeitraffer mit Zoom-in/ Zoom-out

Beitragvon msl » 17.01.2013, 22:27

Hallo und herzlich willkommen hier im Forum.

Schön, das du den Mut gefunden hast, deine ersten Versuche, ein Skript zu schreiben, hier zu dokumentieren. Bei der Masse der Befehle hast du sicherlich den Befehl get_zoom_steps übersehen. Dieser ermittelt die Anzahl der möglichen Zoomschritte, die mit einer Kamera möglich. Du hast aber eine alternative Lösung gefunden.

Man könnte dein Skript etwas variieren:
Syntax: [ Download ] [ Verstecken ]
Benutze uBasic Syntax Highlighting
@title Zoom Timelapse
@param a Zoomwert Start
@default a 0
@param b Zoom-Schrittweite
@default b 1
z =get_zoom_steps - 1
set_zoom a
rem warten bis Zoom fertig ist
sleep(2000)
for i = a to z b
shoot_full_only
rem sleep(1000)
rem print i
set_zoom(i)
next i
Erstellt in 0.007 Sekunden, mit GeSHi 1.0.8.9


Mit b kannst du Schrittweite und Richtung bestimmen. Bei -1 würde die Schleife rückwärts zählen. Ich habe das Skript jetzt nur so dahin geschrieben. Es ist also ungetestet. Bei Problemen ist es oft hilfreich, Wartezeiten mit sleep einzubauen und per print Zwischenergebnisse anzeigen zu lassen. Viel Spaß beim Experimentieren.

Gruß msl
Benutzeravatar
msl
Super-Mod
Super-Mod
 
Beiträge: 4567
Bilder: 271
Registriert: 22.02.2008, 11:47
Wohnort: Leipzig
Kamera(s): A720 1.00c
SX220 1.01a

Re: Zeitraffer mit Zoom-in/ Zoom-out

Beitragvon Pixelworker » 18.01.2013, 15:23

Danke, msl, für den Tipp. Ich bin hier voll am rödeln und hab ne Menge Spass dabei. Mal sehen, was am Ende dabei herauskommt. Hier mal der versprochene Link zu einem Video, welches ich mit meinem Script aufgenommen habe:

http://www.youtube.com/watch?v=JYVos66_WUA

Das Video läuft nicht gerade sauber durch aber es ist ein erster Versuch. Man merkt, insbesondere ganz am Anfang, dass ein kleiner "Sprung" in der Bildfolge zu sehen ist. Das mag an der Optik liegen, denn das Objektiv hat doch ein wenig viel Spiel.
Dennoch viel Vergnügen beim Ansehen ;-)
Pixelworker
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 4
Registriert: 17.01.2013, 20:58
Kamera(s): SX200IS

Re: Zeitraffer mit Zoom-in/ Zoom-out

Beitragvon Pixelworker » 21.01.2013, 23:01

Das geht nicht unbedingt, wie das Bretzelbacken, aber immerhin: so langsam steige ich dahinter, wie CHDK funktioniert. Habe es heute fertig gebracht, ein Zeitrafferscript zu schreiben, wobei die erforderlichen Werte per Tasten eingegeben werden können. Das Script funktioniert sogar und zu Beginn erfolgt auch noch eine kleine Prüfung über den verfügbaren Speicherplatz. Das ist sicher kein großer Schritt für die Menschheit, aber ein riesen großer für mich. Und: es macht einen heiden Spass zu sehen, wie die Kamera das macht, was ich will. Ok, ok, manchmal tut sie das auch nicht, aber dann weiß ich halt, dass es nicht an der Technik liegt, sondern an meinem Geschreibsel *gg*. Morgen werde ich mich noch etwas mit einigen Einstellungen beschäftigen. Neben der Speicherplatzprüfung möchte ich noch die Auflösung vorgeben und die eine oder andere Einstellung dazu. Sofern alles funktioniert, werde ich mein kleines Script mal zum Besten geben. Eines wird das Script jedoch nicht enthalten: das Zoomen während der Aufnahmen. Darüber muss ich mir noch ein paar mehr Gedanken machen und werde das Script Stück für Stück entsprechend anpassen. Aber alles zu seiner Zeit.
Zum Ablauf schonmal soviel:
- Festlegen der Parameter für Ereignisdauer, Framerate und Filmdauer (@param a, b, c, usw.)
- Vorgabe von einzelnen Werten (@default a.....; Ereignisdauer mit 3600 sec., Framerate mit 25 fps)
- Berechnung der erforderlichen Bildzahl und des Intervals (Bildzahl=Filmdauer*Framerate; Interval=Ereignisdauer/Bildzahl)
- Prüfung, ob genügend Speicherplatz auf der Karte (if...then...else; wenn nein, dann Meldung und Scriptende, wenn ja, dann losknipsen)
Einbauen möchte ich noch die Entfernungseinstellung je nach Brennweite auf die hyperfokale Distanz, das Abschalten des Autofokus und die Vorwahl der Bildauflösung. Letzteres deshalb, weil die Einzelbilder auf 1280x720 oder 1920x1080 skaliert werden sollen und deshalb nicht mit voller Auflösung geknipst werden muss. So, dann mal frisch an´s Werk und bis später... ;-)
Pixelworker
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 4
Registriert: 17.01.2013, 20:58
Kamera(s): SX200IS

Re: Zeitraffer mit Zoom-in/ Zoom-out

Beitragvon Pixelworker » 22.01.2013, 13:39

Jaaaa, dann möchte ich mal hier meine Version 1 vorstellen. Bisher funktioniert alles recht gut, aber es gibt auch noch einiges dran zu feilen.

Syntax: [ Download ] [ Verstecken ]
Benutze uBasic Syntax Highlighting
rem Zeitrafferberechnung
rem Autor: Pixelworker
@title Zeitraffer
@param a Ereignisdauer in sec
@default a 600
@param b Bildrate fps
@default b 25
@param c Filmlaenge in sec
@default c 4
    d=c*b
    e=a/d
rem Ausgabe Bilder und Interval
    print "Anzahl der Bilder", d
    print "Interval", e, " Sekunden"
    wait_click
rem Aufloesung festlegen
    set_resolution (8)
rem Genug Speicherplatz vorhanden?
    f=get_jpg_count
    if f < d then goto "Meldung" else goto "Interval"
:Meldung
    cls
    print "°°°°°°°°°°°°°°°°"
    print "Zu wenig Speicher!"
    print "......................."
    end
:Interval
    f=get_hyp_dist
    set_aflock(1)
    set_focus(f)
    for n=1 to d
    print "Bild ", n, " von ", d
    shoot_full_only
    sleep e*1000
    cls
    next n
    playsound(0)
    cls
    print "°°°°°°°°°°°°°°°°°°"
    print "Aufnahmen beendet!"
    print "........................."
    end
Erstellt in 0.009 Sekunden, mit GeSHi 1.0.8.9


Einzubauen wäre noch eine Sperre für das Interval. Die SX200IS schafft laut Bedienungsheftle bestenfalls 2,4 Bilder/ Sekunde. Sofern man Werte einstellt, bei denen ein Interval kleiner 3 rauskommt sollte dann ein anderes Skript genommen werden, z.B. das Turbo-IV-Skript. Was auch noch verbesserungswürdig sein dürfte: das Interval ist sehr ungenau... Aber alles mit der Ruhe und dann mit Ruck. ;-)
Zuletzt geändert von msl am 22.01.2013, 16:17, insgesamt 1-mal geändert.
Grund: edit by mod: Skript in Syntax-BBCode eingefasst, bitte auf Lesbarkeit der Beiträge achten!
Pixelworker
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 4
Registriert: 17.01.2013, 20:58
Kamera(s): SX200IS


Zurück zu kreative Arbeit mit dem CHDK

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 8 Gäste

cron