Bildstabilisator ansprechen

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

Bildstabilisator ansprechen

Beitragvon Nasus » 12.06.2011, 11:18

Hallo zusammen

Demnächst gibs für einige DSLR eine Astro-Nachführung mit GPS: http://www.pentax.jp/japan/products/o-g ... racer.html

Im Prinzip brauchts dafür dieses Gedöhns gar nicht - die Kamera muss nur wissen, in welche Richtung und mit welcher Geschwindigkeit sie den Sensor verschieben muss. Diese Werte ließen sich recht einfach mit ner excel-Tabelle ausrechnen; eigentlich könnts sogar die Kamera selbst berechnen, wenn sie weis:
- wo sie ist
- wohin sie ausgerichtet ist
- welche Brennweite verwendet wird
Wo man ist weis man für gewöhnlich, wohin man die Kamera zeigen lässt weis man auch oder schaut kurz in einer Sternkarte nach. Die verwendete Brennweite ließe sich auch abfragen - der Einfachheit halber kann man die Excel-Tabelle ja vorerst nur für die maximale und die minimale Brennweite erstellen.

Da der Canon-Stabi vergleichsweise simpel ist - er kann nur verschieben, nicht aber rotieren - sind die Belichtungszeiten durch die Feldrotation begrenzt. Macht aber nix - ein paar Minuten kann man je nach Brennweite trotzdem nachführen was oft ausreicht.

Problem:
Wie kann man den Stabi direkt ansprechen?
Canon Powershot A590is // Pentax k100ds
Nasus
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 31
Registriert: 21.04.2009, 20:01

Re: Bildstabilisator ansprechen

Beitragvon msl » 13.06.2011, 19:52

Nasus hat geschrieben:... in welche Richtung und mit welcher Geschwindigkeit sie den Sensor verschieben muss.
Das IS-System der kompakten Canons verschiebt nicht den Sensor sondern die Optik.

Nasus hat geschrieben:Wie kann man den Stabi direkt ansprechen?
Im Augenblick garnicht. Es sei denn, es beschäftigt sich jemand mit dem Teil der Firmware. Gegenwärtig kann nur der eingestellte Modus ausgelesen werden. Die Werte dazu sind in Propset-Variablen gespeichert.

Gruß msl
■ "Hey you, don't tell me there's no hope at all. Together we stand, divided we fall."CHDK inside FAQCHDK-Neuigkeiten auf Twitter
Benutzeravatar
msl
Super-Mod
Super-Mod
 
Beiträge: 4514
Bilder: 271
Registriert: 22.02.2008, 11:47
Wohnort: Leipzig
Kamera(s): A720 1.00c
SX220 1.01a

Re: Bildstabilisator ansprechen

Beitragvon reyalp » 13.06.2011, 21:50

I'm not sure if I understood (google translate ;)), but dataghost played with moving sensor with IS stuff, and also reading sensors: http://chdk.setepontos.com/index.php?topic=1365.0
reyalp
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 19
Registriert: 25.12.2010, 01:18
Kamera(s): a540 d10

Re: Bildstabilisator ansprechen

Beitragvon Nasus » 14.06.2011, 12:41

Hallo zusammen

Dank reyalp konnte ich hier etwas finden: http://tools.assembla.com/svn/chdk/bran ... re/dgmod.c


extern void _SetISPitchPWM(short *pitch); // Return type unsure, assumed void
extern void _SetISYawPWM(short *yaw); // idem

Somit gibt es eine Möglichkeit, den Stabilisator anzusprechen; jetzt gehts "nur" noch darum, diese Funktionen zu verstehen und passende Parameter zu finden.
Canon Powershot A590is // Pentax k100ds
Nasus
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 31
Registriert: 21.04.2009, 20:01

Re: Bildstabilisator ansprechen

Beitragvon reyalp » 14.06.2011, 17:54

Somit gibt es eine Möglichkeit, den Stabilisator anzusprechen; jetzt gehts "nur" noch darum, diese Funktionen zu verstehen und passende Parameter zu finden.

http://chdk.wikia.com/wiki/Loading_dump_to_IDA
http://chdk.wikia.com/wiki/GPL_Tools

In modern chdk, you can experiment with many of these functions from lua using call_event_proc. There are many IS related event procs. http://chdk.wikia.com/wiki/Event_Procedure
http://chdk.wikia.com/wiki/Lua/Lua_Refe ... tion_Calls
reyalp
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 19
Registriert: 25.12.2010, 01:18
Kamera(s): a540 d10

Re: Bildstabilisator ansprechen

Beitragvon CHDKLover » 14.06.2011, 18:18

Hallo Nasus,
zunächst musst du die beiden Funktionspointer für deine Kamera und Kameraversion finden. Dabei könnten dir die Funktionspointer für die S5IS 101b von Dataghost eine große Hilfe sein.
Danach kannst du die Funktionen mit sinnvollen Parametern testen.

Bei einem schnellen Blick habe ich folgende Adressen ausfindig gemacht (keine Gewähr):
a590 100c:
SetISPitchPWM: 0xFFE44F7C
SetISYawPWM: 0xFFE44F90

a590 100e:
SetISPitchPWM: 0xFFE44F80
SetISYawPWM: 0xFFE44F94

a590 101b:
SetISPitchPWM: 0xFFE44F7C
SetISYawPWM: 0xFFE44F90

CHDKLover
A610 100e CHDK-DE: aktuelle Version
Benutzeravatar
CHDKLover
Super-Mod
Super-Mod
 
Beiträge: 878
Bilder: 8
Registriert: 12.09.2007, 18:25
Wohnort: Dresden
Kamera(s): a610 100e

Re: Bildstabilisator ansprechen

Beitragvon Nasus » 14.06.2011, 23:21

Ok,

für ein skript-kiddy wie mich ist das ein wenig zu hoch :? Allein schon diese Zeiger zu verstehn und damit rumzuschießen muss ich mir erst noch erarbeiten...
Ich werd daher folgendes machen:
1. In den nächsten einzwei Wochen eine Art Programmablaufplan erstellen
2. Parallel das Astronomische drumherum errechnen, d.h. was die Kamera überhaupt umsetzen soll
3. Mich deutlich tiefer einarbeiten, als es bis jetzt nötig war - sonst hatte ich schon die grundlegenden skripte und gut dokumentierte Befehle sowie deutlich einfachere harwarefernere Aufgaben.

Mit 1+2 wäre dann schonmal gesichert, dass man das irgendwie umsetzen kann, auch wenn man von Astronomie nix versteht. 3. wird eben etwas länger dauern - aber der Ehrgeiz wäre zumindest da. Und der Wunsch, statt 10Kg Montierung + Kamera nur meine kleine Powershot und ein Tischstativ mitnehmen zu müssen.
Ein paar zusätzliche Gimmicks möcht ich auch noch einbringen - z.B. ists vorteilhaft wenn man stackt und drizzelt. Drizzeln allein wäre schon interessant, da man deutlich höhere Auflösungen errreicht (auch am Tag) und fürs Stacken hab ich mir was überlegt, wie man für weitere Aufnahmen die Ausrichtung der Kamera erleichtern kann. Aber dazu später mehr.

Grüße
Nasus

(@reyalp - if google translate doesn't work, I could try to write in english)
Canon Powershot A590is // Pentax k100ds
Nasus
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 31
Registriert: 21.04.2009, 20:01

Re: Bildstabilisator ansprechen

Beitragvon Nasus » 15.06.2011, 10:27

So

Ich hab heut morgen kurz angefangen das Spreadsheet für Excel anzulegen - und gleich wieder aufgehört.
Mir ist nicht klar, wie Pentax das hinbekommen will, ohne den Sensor zu rotieren (was nur das Topmodell kann).
Alleine durch Verschieben von Linse oder Sensor lassen sich nur Aufnahmen in Äquatornähe und zudem mit hoher Brennweite machen - wenns mehr als ein paar Sekunden sein sollen. In Polnähe ist diese IS-Nachführung sogar kontraproduktiv!
Canon Powershot A590is // Pentax k100ds
Nasus
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 31
Registriert: 21.04.2009, 20:01

Re: Bildstabilisator ansprechen

Beitragvon CHDKLover » 15.06.2011, 15:28

Hallo Nasus,
ich wollte dich mit den Adressen nicht verwirren, sondern eher eine Starthilfe geben. Die Adressen sind notwendig um eine Funktion, die Canon schon ab Werk einkompiliert hat, anzusprechen. Eine Funktion steht bei einem Kameramodell+Firmwareversion immer an der gleichen Adresse im Rom (anders als heutige PC-Betriebssystemen mit Address Space Layout Randomization (ASLR)). Um eine solche Funktion aufzurufen benötigst du deren Adresse (Funktionspointer). Diese werden, wenn sie von Hand heraus gesucht wurden, in die Datei platform/<Kamera>/sub/<Firmwareversion>/stubs_entry_2.S eingetragen und mit einem für das CHDK relevanten <Funktionsnamen> verknüpft. Über _<Funktionsname>(<Parameterliste>) kann die Funktion im CHDK mit geeigneten Parametern verwendet werden.

Bei dem Problem mit der Astro-Nachführung kann ich dir leider wenig helfen.

CHDKLover
A610 100e CHDK-DE: aktuelle Version
Benutzeravatar
CHDKLover
Super-Mod
Super-Mod
 
Beiträge: 878
Bilder: 8
Registriert: 12.09.2007, 18:25
Wohnort: Dresden
Kamera(s): a610 100e

Re: Bildstabilisator ansprechen

Beitragvon Nasus » 16.06.2011, 11:01

Hi CHDKLover

Als "vorsätzliche Verwirrung" hab ich das gar nicht aufgefasst. Pointer sind für mich nur ein Konzept das ich erstmal verstehn musste. Erstmal eben etwas ungewohnt, aber die Möglichkeiten sehn sehr interessant aus.
Aber bis ich mal kapiert hab, wie man das Problem mit der Rotation überhaupt lösen kann wirds noch dauern. Die Alternative wäre, dass man das Programm dann nur verwenden kann, um Äquatornahe Aufnahmen zu machen. Andererseits wirds dadurch einfacher:
1. Könnte man einen Winkel vorgeben, den die Kamera einhalten muss, d.h. die Längsseite des Sensors muss parallel zum Äquator sein.
2. Muss der Sensor nur in einer Richtung bewegt werden.
---> Usereingaben wären dann gar nicht notwendig. Mal wählt nach dem Ausrichten einfach das Programm und lässt es laufen.
Canon Powershot A590is // Pentax k100ds
Nasus
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 31
Registriert: 21.04.2009, 20:01

Re: Bildstabilisator ansprechen

Beitragvon gehtnix » 16.06.2011, 13:12

Hi Nasus,

jetzt habe ich mal ein wenig zu dem Thema eingelesen. Nachführung (Astronomie)
"Zwei Sterne gehen im Osten z. B. nacheinander auf und stehen steil übereinander, an ihrem höchsten Punkt im Süden befinden sie sich jedoch bereits nebeneinander und beim Untergang im Westen ist der zuerst obere Stern nun unten"
Hast Du da mal ein Beispiel dazu? Das will mir so noch richtig in meine Birne.

Das mit der Bildfelddrehung, soweit ich sie verstanden habe, sieht man im letzten Beispiel unter dem Penatax-Link. Da werden dann die Bäume auch mit weggedreht.
Schon irre Konstruktionen Polhöhenwiege

Das habe ich noch gefunden, abenteuerliche Lösung
Die ultracoole Selfguiding D(S)LR EOS 40D

gruß gehtnix
Bild
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 + IXUS50 101b

Re: Bildstabilisator ansprechen

Beitragvon Nasus » 16.06.2011, 14:38

Hi

Diese 'selfguiding' DSLR ist zwar eine schicke Idee - aber das einzig neue daran ist, das alles in einem einzigen Gehäuse unterzubrinden - das Prosma mit der Webcam dran ist nichts anderes, als ein Off-axis guider (man nimmt am Rand des Strahlengangs etwas Licht, füttert damit eine Webcam, der angeschlossene Rechner analysiert die darin bewegenden Sterne und sendet Korrekturbefehle an die Montierung - die auch ohne die Korrekturbefehle 'richtig' Nachführt, aber eben nicht perfekt.)
Es dient also nur dazu, eine parallaktische astronomische Montierung mit Korrektursignaen zu versorgen.

Bildfelddrehung:
Im PEntaxlink fällt eigentlich nur auf, dass sich die Erde nicht mit den Sternen mitdreht - d.h. korrigiert man die Sternbewegung, werden Gebäude und andres am Boden verzogen. Das ist immer so, egal wie man nachführt.

Wie man das 'trocken erklären könnte? Hm, fällt mir auch nicht wirklich was zu ein - ich werd aber gern ein paar Links zur Himmelsmechanik zurechtsuchen, die das erklären können.
Vorerst wäre Cartes du Ciel interessant - eine freeware, die den Sternenhimmel simuliert, auch im Schnelldurchlauf. Da 'sieht' man dann, wie sich der Kram da oben bewegt und was passiert, wenn:
1. Die kamera still steht (Sterne huschen einfach durchs Bildfeld) --> wären Strichspuraufnahmen
2. Die Kamera Azimutal folgt (Sterne drehen sich langsam) - also sich um irgendeine senkrechte Achse dreht --> Bildfeldrotation; man bekommt auch Strichspuren, aber die werden bei gleicher Zeit nicht so lange
3. Die Kamera Parallaktisch folgt - also sich auch um den Polarstern dreht wie die andren Sterne --> Sterne bleiben punktförmig.

Ohne dass man auf eine parallaktische Montierung setzt (was dann eben als Bastelvariante eine Barndoor wäre oder eine etwas schwerere EQ1 für 50€) oder auf einen Bildfeldderotator (gibts auch zu kaufen - oder eben der Sensor alleine wird gedreht, wie eben bei der Pentax K5) hat man entweder den Fall 1 (nur Stativ --> Strichspuren) oder den Fall 2 (Azimutale Montierung oder eben der Bildstabilisator --> je näher am Himmelspol, desto stärker drehn sich die Sterne im Bild)


Ahhh, doch, ich hab ein Beispiel:
Man möchte einen rotierenden Kreisel fotografieren - von oben mit langer Belichtungszeit.
Hält man die Kamera ruhig, verschmiert der (wie die Strichspuren)
Zieht man geradlinig mit gibts folgende Probleme (das wäre eine Azimutale Nachführung oder verschiebung vom Stabi):
zieh ich einfach Mittig über den Kreisel, ist der noch verschwommener(Polregion, Weitwinkel)
zieh ich eher am Rand mit Tele über den Kreisel, ist die Bewegung fast Linear, da die Radien relativ groß sind und die Abbildung ist fast scharf (schon recht nah am Äquator, Tele)
Zieh ich aber von der Zeite mit der richtigen Geschwindigkeit mit, wird die Aufnahme vom Kreisel knackscharf (das wäre eine Äquatornahe Aufnahme)
Hat man direkt über der Achse des Kreisels eine Achse, um die die Kamera rotiert, kann sie belieblig lange belichten (das wäre dann eine Parallaktische Montierung - deren Achse seigt direkt auf die Achse des Himmels, der auch nix andres ist als ein sehr großer Kreisel
Canon Powershot A590is // Pentax k100ds
Nasus
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 31
Registriert: 21.04.2009, 20:01

Re: Bildstabilisator ansprechen

Beitragvon Nasus » 16.06.2011, 17:19

So,

hab mal ein Bildchen von dem Kreisel gemalt:
Das Ockerne ist der Kreisel - Himmel
der Schwarze Punkt in der Mitte ist die Kreiselachse - Himmelspol
Das schwarze Rechteck ich das Bild das die Kamera sieht; der blaue handgemalte Strich ist die Bildunterkante.
Der Blaue und der rote Punkt sollen zwei Sterne sein.
Die obere Reihe demonstriert, was bei einer azimutalen Nachführung passiert , die untere was bei einer Parallaktischen passiert.
kreiselg.jpg
Canon Powershot A590is // Pentax k100ds
Nasus
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 31
Registriert: 21.04.2009, 20:01

Re: Bildstabilisator ansprechen

Beitragvon CHDKLover » 16.06.2011, 17:56

Hallo Nasus,
ich habe versucht das Funktionsprinzip des Bildstabilisators von Canon herauszubekommen. Was wir wissen ist, dass der Bildstabilisator in der Optik verbaut ist. Folgendes Video zeigt den Bildstabilisator (IS) in Aktion:
www.youtube.com Video von : www.youtube.com

Alternativ eine Animation von Canon: http://www.canon.de/for_home/product_fi ... ilizer.asp

Aus der Pressemitteilung von 2009 über Hybrid-IS lässt sich meiner Meinung nach entnehmen, dass der "normale" IS gegen Kameraverdrehungen (Angle camera shake) wirkt.
Möglicherweise kann das "alte" IS auch Kameraverschiebungen (Shift camera shake) korrigieren, nur fehlt der Kamera der Beschleunigungssensor zur Berechnung der Korrektur. Aber sie soll ja nicht auf Einflüsse von außen reagieren, sondern nur einen vorberechneten (Standpunktabhänig) Bewegungsablauf ausführen.

CHDKLover
A610 100e CHDK-DE: aktuelle Version
Benutzeravatar
CHDKLover
Super-Mod
Super-Mod
 
Beiträge: 878
Bilder: 8
Registriert: 12.09.2007, 18:25
Wohnort: Dresden
Kamera(s): a610 100e

Re: Bildstabilisator ansprechen

Beitragvon Nasus » 16.06.2011, 18:57

Hi

Beim Linsenbasierenden IS ists grundsätzlich so, dass rotation um die optische Achse nicht kompensiert werden kann - der gewöhnliche Canon-IS packt ein verschieben der Kamera nach oben oder unten (wie in deinem Link dargestellt) und nach Rechts oder Links (dort nicht dargestellt). Der hybride IS packt zusätzlich noch ein Verkippen (ebenfalls dargestellt).
Ein Verdrehen um die optische Achse - eigentlich das typische Problem, wenn man etwas forsch auf den Auslöser drückt - kann grundsätzlich nur ein Stabi ausgleichen, der den Sensor bewegt. Und dieses Verdrehen um die Optische Achse (oder sonst eine Achse parallel zur optischen Achse) wäre das, was hier für die Astro-Nachführung wichtig wäre.

Dennoch:
Es ist in jedem Fall möglich, Äquatornahe Aufnahmen zu machen - wenn man den IS ansprechen kann.
Am WoE komm ich wohl dazu, das "Programm" zumindest 'auf gut Deutsch' hinzuschreiben bzw. eben einen Ablaufplan zu erstellen.
Canon Powershot A590is // Pentax k100ds
Nasus
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 31
Registriert: 21.04.2009, 20:01

Nächste

Zurück zu Code-Ecke

Wer ist online?

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

cron