HDR-Intervall-Fotografie

CHDK-Skripte, CHDK-Entwicklung, PC-Zusatzprogramme, Informationen für Tüftler

Beitragvon Michael » 23.08.2008, 14:25

Hallo msl,

die kleine "shoot-Schleife" für Endos-Reihenaufnahme mit Neubelichtung läuft schon länger mit CHDK perfekt auf der 960IS, aber halt nicht so geschickt bedienbar, wie die Kamerahersteller üblicherweise Reihenaufnahmenauslösung vorsehen.

Bei den Firmenlösungen drückt man auf den Auslöser, und so lange der gedrückt ist wird geschossen (im Reihenaufnahmemodus).

Beim selbst gebauten "Skript-Verfahren" muss man zum Starten von Reihenaufnahmen den Auslöseknopf "klicken" (also drücken und loslassen) und zum Beenden wiederum drücken und loslassen.

Arbeitet man ferngesteuert (und das ist meine Anwendung), so weiß man nach ein paar mal Drücken und Loslassen nicht mehr, ob sich die Reihenaufnahmen gerade aus- oder eingeschaltet haben, und das ist das Problem.

Soweit ich es getestet habe, gibt es im CHDK keine Möglichkeit, mit einem gedrückten (pressed) Auslöseknopf im Skript etwas anzufangen. Hält man den Auslöseknopf beim Start gedrückt, läuft das Programm nicht an, hält man den Auslöseknopf während des Skriptlaufs gedrückt, schaltet sich das Skipt aus.
Übrigens läuft auch dein Intervall-Skript ohne weiteres in der 960IS, und, soweit ich sehe, nach analogen Grundsätzen.

Gibt es überhaupt eine Möglichkeit in ein laufendes UBASIC-Skript einzugreifen außer Ein-Ausschalten per Auslösetaste?


Noch eine letzte Frage: Im Normalmodus schaltet meine Kamera nach 3 Minuten Stillstand sich selbst aus. Jetzt, mit geladenem CHDK (Alt-Modus geklickt) macht sie das nicht mehr.
Gibt es wo eine Einstellung im CHDK, um das Selbst-Ausschalten wieder zu aktivieren (bei inaktivem Skript)?

Grüße
Michael
Ixus i, Finepix F31fd, Ixus 960IS, Ixus 980IS
Michael
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 23
Registriert: 09.08.2008, 14:11
Wohnort: Stromberg

Beitragvon msl » 23.08.2008, 15:10

Hallo,

bei Dir klingt das immer alles so kompliziert. Beschreibe doch einmal konkret, was Du machen willst. Es läßt sich so ziemlich alles per Skript bewältigen.

Wie schon beschrieben kannst Du den Auslöser im Skriptmodus nur zum Starten und Unterbrechen des Skriptes verwenden.

Bei den Firmenlösungen drückt man auf den Auslöser, und so lange der gedrückt ist wird geschossen (im Reihenaufnahmemodus).

Dann schalte diesen Modus auch bei Deiner Kamera, bevor Du ein Skript startest, ein. Dann kannst Du ihn während eines Skriptes mit dem Befehl press "shoot_full" starten und mit release "shoot_full" beenden. Das ganze mußt Du natürlich in press "shoot_half" und release "shoot_half" einbetten.

Arbeitet man ferngesteuert (und das ist meine Anwendung), so weiß man nach ein paar mal Drücken und Loslassen nicht mehr, ob sich die Reihenaufnahmen gerade aus- oder eingeschaltet haben, und das ist das Problem.

Hier kann man sich mit Hilfe von Print den Status anzeigen lassen.

Gibt es überhaupt eine Möglichkeit in ein laufendes UBASIC-Skript einzugreifen außer Ein-Ausschalten per Auslösetaste?

Es gibt den Befehl exit_alt (ab Version allbest) zum Verlassen des Alt-Modus (damit verläßt man auch den Skript-Modus) und shut_down (ab version juciphox) zum Ausschalten der Kamera.

Gibt es wo eine Einstellung im CHDK, um das Selbst-Ausschalten wieder zu aktivieren (bei inaktivem Skript)?

Im Menü "Verschiedene Einstellungen" findest Du den Menü-Punkt "LCD-Stromsparmodus". Die Bedeutung der Optionen kannst Du im dt. Handbuch nachlesen.

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

Beitragvon fe50 » 23.08.2008, 15:33

Michael,

Gibt es überhaupt eine Möglichkeit in ein laufendes UBASIC-Skript einzugreifen außer Ein-Ausschalten per Auslösetaste?

Zusätzlich zu dem von msl gesagten kann in einem Script beinahe beliebig 'eingegriffen' werden, z.B. können die meisten Kameratasten im Script abgefragt werden, natürlich kann dann entsprechend script-technisch reagiert werden -> schau' Dir doch einfach mal einige der Scripte hier im Forum an, z.B. von 'gehtnix', da kannst Du Dir Anregungen holen...

Im HB kannst Du auch nachlesen, z.B. HandbuchJuciphox#Kameraspezifische_Befehle, oder in der Übersicht der Skriptbefehle...machbar ist mit CHDK fast alles, man muss sich aber schon mit der Doku vetraut machen, andere Scripte analysieren & selbst ausprobieren - programmieren eben, was für den jeweiligen Fall gewünscht ist; das kommt nicht Ready-to-Use im Paket mit Schleifchen drumherum :?
◄"The grass was greener, The light was brighter"►  ◄fe50 home►  ◄TRAIL-Magazin►  ◄RTFM !►
Benutzeravatar
fe50
CHDK-Legende
CHDK-Legende
 
Beiträge: 1106
Registriert: 25.04.2008, 14:28
Wohnort: B'Württemberg
Kamera(s): Ixus50 101b, Ixus860 100c, SX10 101a

Beitragvon Michael » 23.08.2008, 20:19

Hallo msl und fe 50,

vielen Dank für die Hinweise.

Sie gehen allerdings meist an meinem Problem vorbei, ist meine Schuld, ich hab ja die Aufgabe nicht genannt.

Also, ich mache Luftbilder mit dem Modellflieger. Mit "Fernsteuerung" meine ich natürlich nicht einen USB-Anschluss, sondern eine Funkfernsteuerung über viele hundert m hinweg, welche ausschließlich den Auslöseknopf der Kamera betätigen kann.

Man muss immer wieder gezielt vom Boden aus die Reihenaufnahmetätigkeit ein- und ausschalten, sonst hat man zu viel oder zu viel Falsches aufgenommen und es "platzt" die Speicherkarte.

Damit sind die Probleme wohl klar: Ich habe keine Rückmeldung von der Kamera, kann also nicht am Display ablesen, was sie macht oder machen will, ich kann ihr nur per Auslöseknopf mitteilen, was ich will, und das ist eigentlich nur Ein- und Ausschalten des Skripts, was mir prinzipiell auch reicht, gerade wegen der tollen Möglichkeiten der CHDK-Skripte.

Das Problem ist nur, dass im CHDK das Ein- und Ausschalten des Skripts per Auslöseknopf nach dem mehrdeutigen Prinzip des (Wechsel)Schalters funktioniert (wie der Druckknopf eines Nachttischlämpchens), während vom Hersteller reaslisierte Auslösungen von Reihenaufnahmen nach der eindeutigen Nutzung des Auslöseknopfs als Tastererfolgen (wie die Betätigung einer Haustürglocke)

Letzteres wollte ich eigentlich auch (vom Sender aus) realisieren, aber es geht wohl nicht, wie schon im vorigen Beitrag von msl bestätigt.

Die Hinweise dazu, was man per Softwarebefehle und CHDK alles machen kann, sind natürlich gut, ich bedanke mich dafür, und werde sie sicher auch noch verwenden. Sie helfen allerdings nicht weiter, wenn das Skript ausgeschaltet ist, weil man nach 10-maligem, ferngesteuertem Betätigen und Unterbrechen der Aufnahmenserie per "Wechselschaltung" sich verzählt hat.

Meine Frage war eigentlich nur die, ob man das Problem (besser Problemchen) dadurch beheben kann, dass die Funktion des Einschaltknopes zum Betreiben eines Skriptes nach dem Tasterprinzip erfolgen kann, was msl glaubhaft verneint hat.

Mit dem vom Werk implementierten Tasterprinzip am Auslöseknopf mache ich ja seit bald 2 Jahren mit der Feinepix F31fd die Serien- Luftaufnahmen. Die IXUS 960IS macht noch etwas bessere Bilder, hat aber nicht die Einstellmöglichkeiten der F31.

Deshalb mein Gang zur CHDK-Gemeinde mit ihren tollen Erungenschaften, bei der ich mich einmal mehr für Geduld und Hilfe sehr bedanke!

Grüße
Michael
Ixus i, Finepix F31fd, Ixus 960IS, Ixus 980IS
Michael
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 23
Registriert: 09.08.2008, 14:11
Wohnort: Stromberg

Beitragvon msl » 23.08.2008, 20:54

Jetzt wird dein Anliegen natürlich klar.

Es gibt für Deine Aufgabenstellung 2 Lösungsansätze:

1. Intervallaufnahmen inkl. LCD-Abschaltung wegen Stromsparen. Bei einer 4GB-Karte bekommst Du einiges an Bildmaterial unter. Es sollte doch reichen, aller ca. aller 5 Sekunden ein Bild zu machen. (Ich kenne natürlich Deine konkrete Aufgabenstellung nicht und weiß nicht, wie lange Dein Modellflugzeug in der Luft bleiben kann.) Aber zu diesem Thema gibt es genügend Skriptbeispiele. Notfalls kann auch ein spezielles auf Deinen Anwendungsfall bezogenes Skript entworfen werden.

2. Hardwarelösung, in dem Du in die USB-Fernsteuerung eine Funksteuerung integrierst. Hier im Forum gibt es schon einige Ansätze zur microcontrolergesteuerten Fernbedienung. Eine Funkverbindung zu Deinem Modell besteht ja. An dieser Stelle müßte man ansetzen. Dann könntest Du vom Boden aus gezielt auslösen. Schau Dich mal in der Technik-Ecke hier im Forum um.

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

Nachttischlampe oder Haustürglocke ?

Beitragvon gehtnix » 24.08.2008, 01:43

@michael,

da haben wir doch mal die Nachttischlampe scriptmäßig zur Haustürglocke nachgebildet :D - Soweit ich das richtig verstanden habe.

Serienmodus auf der Canon einschalten.

Im Script siehst Du 4x "is_key", alle 4 Tasten machen nur das Eine!
1x steht da "shoot_half", also das Servo darf den Auslöser nicht dürchdrücken! Sonst schaltet es aus.
Du kannst aber eben auch die andere Tasten nehmen.

Dann gäbe es doch auch die Möglichkeit mit dem Servo 2 Tasten anzusteuern? Da sind doch zwei Hebel, oder? Mit dem einen Einschalten, mit dem anderen Hebel wieder Aus, das was Du eigentlich willst!

Dann hast Du die Möglichkeit unter Parameter auszuwählen wie fotgrafiert wird.

Dauer: Deine Nachttischlampe, einmal Drücken, fängt an zu fotografieren, nochmal drücken, hört auf.
Da weiß man aber bald nicht mehr wo man steht.
Sleep: Einmal drücken, es werden x Sekunden lang Serienaufnahmen gemacht. Die Haustürglocke - einstellbar unter Parameter. Mit 2 Tasten/Servo könntest Du auch 2 Haustürglocken haben, z.B eine mit 3 Sekunden, die andere mit 10 Sekunden!

Eine weiter Möglichkeit wäre auch noch der Selbstauslöser mit 0 Sekunden Vorlauf und dann x Sekunden

LCD schaltet automatisch gleich zu Anfang ab.

Das läuft unter juciphox. Bei allbest mußt Du das "X=get_display_mode" in "get_prop 181 X" und "U=get_display_mode" in "get_prop 181 U" abändern.

Also frickel das jetzt mal in Deinen Flieger und dann ab in die Luft, gehtscho =D>

gruß gehtnix
Dateianhänge
Haustürglocke.bas
(790 Bytes) 352-mal heruntergeladen
Benutzeravatar
gehtnix
CHDK-Legende
CHDK-Legende
 
Beiträge: 2406
Bilder: 8
Registriert: 17.04.2008, 12:42
Wohnort: München
Kamera(s): A610 100e+f + IXUS990 IS

Beitragvon Michael » 28.08.2008, 08:14

Hallo gehtnix,

vielen Dank für das Skript.
Es ist eine kluge Idee und eine Problemlösung, den Set-Knopf und/oder den ihn umgebenden Ring, etwa am Blitz - oder Makro - Zeichen" zur interaktiven Programmsteuerung als "Taster" zu nutzen.
Die Frage ist, ob wir dann vielleicht Probleme mit unbeabsichtigten Blitz/ Makro- Umschaltungen bekommen können und ob die Mechanik auf Dauer mitmacht.

Der reguläre Auslöseknopf steckt „gefühllose“ Servohebelkräfte für Zigtausend Aufnahmen weg. Ich spreche da aus eigener Erfahrung, habe die heute allgemein übliche Einfach-Methode des auf den Foto geklebten Servos, mit seinem Servohebel am Auslödseknopf, schon vor 9 Jahren entwickelt und setze sie seit 19.Juli 2000 auf verschiedenen Kompakt-Kameras und Modellen ein. (IXUS M-1, Canon Prima, Olympus myu 2, IXUS i, Finepix F31fd, und jetzt IXUS 969 IS.
Mittlerweile sind gut 50 000 Luftaufnahmen zusammengekommen, die Servo-Auslösung hat kaum einmal versagt., die Kameras hatten nie einen Defekt.

Beim Auslösen per „Set-Knopf“ müsste man sicher noch Erfahrung sammeln, und so will ich vorläufig beim erprobten Auslöseknopf bleiben.

Ich mache mit der Ixus 960IS schon seit 3 Monaten mit der „alten“ Auslösungsart gelungene Luftaufnahmen, alle mit der werksseitigen Serienschaltung. Die manuellen und feineren Einstellungsmöglichkeiten welche meine seit 2006 eingesetzte Finepix F31fd schon werkseitig hat, sind bei der 12 MP auflösenden Quasi-Automatk-Ixus 960IS aber leider nicht realisiert, können aber mit CHDK erreicht und übertroffen werden.

Das Auslöseverfahren ist dabei eine von mehreren Fragen, für die gethnix die bis jetzt interessanteste Lösungsperspektive angibt.

Ich will mich nun zunächst der Belichtungsbeeinflussung der 960IS per CHDK widmen und (m)einer Luftbildausstellung am 20./21.9.2008 in Gemünden/Hunsrück..

Grüße
Michael
Ixus i, Finepix F31fd, Ixus 960IS, Ixus 980IS
Michael
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 23
Registriert: 09.08.2008, 14:11
Wohnort: Stromberg

Beitragvon Pixel » 26.09.2008, 16:34

welchen parameter muss ich ändern damit die unterschiedlich belichteten bilder schneller hintereinander gemacht werden ?


im moment dauert es so knapp eine sekunde
Powershot A560
Pixel
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 9
Registriert: 25.09.2008, 16:07

Beitragvon msl » 26.09.2008, 18:15

Hallo Pixel,

da gibt es nichts einzustellen. Das ist von der Kamera abhängig. Deine Kamera schafft 1,7 Bilder pro Sekunde, wenn Deine SD-Karte schnell genug ist. In der Praxis wird es also pro Bild bei knapp einer Sekunde bleiben.

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

Wie und mit welchem Programm HDR videos machen ?

Beitragvon Janosch1976 » 14.04.2009, 17:18

Hallo

Bin ja noch Anfänger und wollte mal fragen wie ihr die HDR Videos macht.
Bearbeitet ihr jedes Bild einzeln ? ( ist ne Menge arbeit bei ca. 100-300 Bildern )
Und mit welchen Programm macht ihr dann ein Video aus den Bildern ?

Schonmal Danke für die Hilfe

Janosch
Janosch1976
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 3
Registriert: 22.10.2008, 02:32

Beitragvon msl » 15.04.2009, 12:51

Hallo Janosch,

ja, die HDR-Bilder werden einzeln erstellt und dann zu einem Video zusammengefügt.

Die meisten Programme zum Erstellen von HDR-Bildern haben einen Batch-Modus. Da kannst Du ein ganzes Paket mit den gleichen Einstellungen abarbeiten lassen.

Für die Videoerstellung gibt es hier im Forum eine Anleitung in Verbindung mit dem Programm VirtualDub. Es gibt hier im Forum genügend Material zum Thema Zeitraffer.

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

HDR-Script mit unbestimmter Anzahl an Bildern

Beitragvon Freeze! » 07.02.2010, 14:18

Hallo msl,

vielen Dank erstmal für das nette Script. Funktioniert soweit ziemlich gut!
Ich greife diesen "alten" Thread wieder auf, weil ich genau das im ersten Post erwähnte HDR-Script schon eine Weile in abgewandelter Form verwende.

Ich habe nur ein Problem welches sowohl bei meiner Ixus 860is als auch bei meiner Powershot sx200 auftritt.
Ich kann die Anzahl der Fotos einer Belichtungsreihe nicht sicher vorherbestimmen.
Wähle ich zB. 5 Fotos für eine Reihe bekomme ich meistens 6 manchmal auch 7 Fotos, so gut wie nie aber exakt 5. Irgendwas scheint mit der Schleife nicht zu klappen. Kann es sein, daß es kameraspezifische Unterschiede gibt?
Die Ixus 860is hat einen digic III und die SX200 einen digic IV Prozessor, was aber keinen Unterschied zu machen scheint.
Hier meine Variante, in die ich eine optionale Auslöse-Zeitverzögerung mit den Canon-typischen Selbstauslöser-Sounds sowie einen optionalen Fokus vor jedem Shoot eingefügt habe. Das Problem tritt bei mir übrigens nicht nur in dieser modifizierten Version auf, sondern auch in der aus Deinem Post.
Syntax: [ Download ] [ Verstecken ]
Benutze uBasic Syntax Highlighting
rem Originalidee von vine



rem Vorbereitung vor Skript-Start

rem Bracketing im fortlaufenden Modus aktivieren

rem Tv-Bracketing-Wert z.B 1Ev, Bracket-Typ +/-

rem Auslösemodus auf Reihenaufnahme einstellen

@title HDR-Intervall (Reihenaufn. einst!)

@param a Anzahl Fotos pro Intervall

@default a 3

@param b Intervall-Abstand Sek.

@default b 5

@param c Anzahl HDR-Serien

@default c 5

@param d Startverzögerung (in Sek.)

@default d 1

@param e Autofokus an/aus (0/1)

@default e 1



if a<2 then a=2

for i=1 to d

    if i<(d-1) then playsound 4; else playsound 3

    sleep 1000

next i

do

b=b-2

for i=1 to c

  get_jpg_count x

  y=x-a

if e=1 then press "shoot_half"

  sleep 2000

  press "shoot_full"

    do

      get_jpg_count z

    until z=y

  release "shoot_full"

if e=1 then release "shoot_half"

  print "HDR-Serie",i,"fertig"

  if i < c then sleep b*1000

next i

end
Erstellt in 0.010 Sekunden, mit GeSHi 1.0.8.9


Grüße,
Freeze.
IXUS 860 is, Powershot SX200 is, Powershot SX1 is
Freeze!
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 6
Registriert: 06.02.2010, 12:14

Beitragvon msl » 07.02.2010, 14:51

Hallo,

interessant, dass hier immer noch mit Uralt-Material gearbeitet wird. :D

Die Ursache für die ungenaue Bildanzahl liegt am Befehl get_jpg_count. Dieser Befehl ermittelt per Hochrechnung, wie viel Bilder noch möglich sind. Das Ergebnis kann schwanken. Deshalb kommt es zu Fehlberechnungen. Mit get_exp_count könnte man es genau berechnen.

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

Beitragvon Freeze! » 07.02.2010, 15:27

Hi,

danke für die Info!
Das mit dem uralt-Material kommt von der Macht der Gewohnheit. Habe hier ne Weile nicht mehr reingeschaut...
Ich bin wirklich überrascht was sich so alles tut. Muss mal ne Weile das Forum durchforsten um mich auf den aktuellen Stand der Dinge zu bringen :)

Gruß,
Freeze.
IXUS 860 is, Powershot SX200 is, Powershot SX1 is
Freeze!
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 6
Registriert: 06.02.2010, 12:14

Beitragvon gehtnix » 07.02.2010, 15:45

Hi,

und wenn man oben mal nachliest :D ein Flieger der USB haben will .... und hier mit dem Fehler der fehlenden Wiederaktivierung vom Stromsparmodus hadert.
Faszinierend :D , er hätte heute seine helle Freude.

Zu diesen Zeilen:
Syntax: [ Download ] [ Verstecken ]
Benutze uBasic Syntax Highlighting
    do

      get_jpg_count z

    until z=y
Erstellt in 0.004 Sekunden, mit GeSHi 1.0.8.9
Ein Durchlauf dauert je 3*10ms. Wird der Bildzähler erst nach "get_jpg..." gesetzt, so wird mindestens ein Bild mehr gemacht. Steuern kann man das nicht.

gruß gehtnix
Benutzeravatar
gehtnix
CHDK-Legende
CHDK-Legende
 
Beiträge: 2406
Bilder: 8
Registriert: 17.04.2008, 12:42
Wohnort: München
Kamera(s): A610 100e+f + IXUS990 IS

VorherigeNächste

Zurück zu Code-Ecke

Wer ist online?

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