Arbeitsmittel / Means for work > Programme / Software
Symmetriebilder in CombineZM
aca:
Hallo,
mal ein Erklärungsversuch für die Spiegelbilder.
Warnung: komplett abgedreht, beim Lesen wird die Milch sauer. ;D
Wie unterscheidet man mit einem mathematischen Verfahren
scharf und unscharf in einem Foto?
Eine Möglichkeit ist, die Raumfrequenz (ich übersetze einfach mal "spatial frequency")
an allen Stellen eines Bildes zu bestimmen.
Was heisst "Raumfrequenz"? So wie beim Schall die Frequenz bedeutet,
wie schnell sich der Luftdruck pro Zeit ändert, so kann man auch angeben,
wie oft sich pro Strecke die Helligkeitswerte ändern.
also:
niedrige raumfrequenz (zahlen=helligkeit): 0 0 1 2 3 4 5 5 4 3 2 1 1 0 0 0 1 2 3 3 2 2...
hohe raumfrequenz: 0 2 0 3 5 0 2 0 4 2 3 1 5 0 1 2 0...
Sowas kann man auch überlagern:
0 0 1 1 2 2 2 3 3 3 4 4 4 5 5 5 4
+
2 0 3 1 4 2 3 4 2 6 2 4 1 0 5 0 2
=
2 0 4 2 6 4 5 7 5 9 6 8 5 5 10 5 6
Dann sind sowohl hoch- als auch niederfrequente Anteile in dem Bild,
es ist ein "Zickzack" (hochfrequent), steigt aber tendentiell langsam an (niederfrequent).
Wenn man die Anteile an verschiendenen Frequenzen an jedem Ort im Bild bestimmen will,
verwendet man ein sehr elegantes und einfaches Verfahren, die "Fast Fourier Transformation",
kurz FFT, das sich auf einem Computer sehr schnell anwenden lässt.
(Werde ich jetzt nicht erklären, wäre wahrscheinlich nicht ganz exakt richtig,
für die mathematisch bewanderten nur soviel: man korreliert die Ortsfunktion mit
Cosinus-Funktionen verschiedener Wellenlänge.)
Dabei muss man sich allerdings überlegen, wie man mit den Kanten eines Bildes umgehen soll.
Erstens sind diese hochfrequent (da ändert sich was schlagartig),
und zweitens schränken sie den Bereich, der sich analysieren lässt,
v.a. für niedrige Frequenzen stark ein, weil man die Ortsfrequenz nur
"im Block" bestimmen kann, und zwar muss der Block
umso grösser sein, je niedriger die untersuchte Frequenz ist.
Also bedient man sich eines Tricks:
man spiegelt die Bildanteile nach aussen, und zwar so weit, wie der
grösste Analyse-Block breit ist.
Dann sind die Raumfrequenzen aussen und innen identisch und
man kann die scharfen und unscharfen Bereiche am Bildrand auch bestimmen.
Dass diese Spiegelbild an den Kanten mal breiter und mal schmaler ausfallen,
liegt wohl an der relativen Position der Einzelbilder und daran wie sehr sich die
Objekte auf den Bildern in ihrer Grösse unterscheiden (man muss deshalb ja vor dem Überlagern skalieren).
CombineZ macht wahrscheinlich eine FFT oder etwas ähnliches bei jedem einzelnen Bild
und bestimmt, wo hochfrequente Anteile sind. Die Positionen merkt es sich bei den
diversen Bildern und überlagert dann die scharfen Stellen zu einem gemeinsamen Bild.
So in etwa ... ;D
Gruss
Amir
berthold:
Hallo Amir,
ja, das hätte ich auch gedacht, CZM macht schon FFT. Aber: Joy schreibt:
--- Zitat ---ne bei mir kommen diese Streifen auch schon beim Laden des Bildes
--- Ende Zitat ---
und beim LADEN in CombineZM läuft ganz sicher noch keine FFT. Und nochmal, ich kann das Problem überhaupt nicht feststellen, es scheint also nur in bestimmten Situationen vorzukommen - von denen ich bislang verschont geblieben bin.
Gruß
Berthold
aca:
Hallo,
Bei mir gibt es die Spiegelbilder beim Laden eines Einzelbildes auch.
Aber man sieht es bei grossen Bildern oft kaum,
ich musste bei einem ganz genau hinsehen.
Ich habe mal ein kleines Bild (960x540) geladen und einfach abgespeichert,
dann dieses wieder geladen und gespeichert etc.etc.
Das kommt dabei raus, der letzte Wert gibt das Seitenverhältnis an:
Orig. 960x540 1.7777777
1. Kopie1000x560 1.7857
2. Kopie1008x576 1.75
3. Kopie1024x588 1.741
4. Kopie1080x600 1.8
5. Kopie1120x640 1.75
6. Kopie1152x648 1.7777777
7. Kopie1176x672 1.75
8. Kopie1200x720 1.666667
9. Kopie1280x768 1.666667
10. Kopie1296x784 1.653
11. Kopie1344x800 1.68
12. Kopie1440x840 1.714
Alles ist mindestens durch 8 teilbar.
Trotz des Sprungs bei 1200x720 (ich denke das ist entweder ein Bug
oder eine gewichtete Entscheidung für einen runden Wert)
denke ich, dass dahinter steckt, dass man das Bild auf eine Grösse erweitert,
die mindestens durch 8 teilbar ist und dass dabei dennoch das Seitenverhältnis gleich
gehalten werden soll, damit der Skalier-Algorithmus zum Übereinanderstapeln
der Einzelbilder es später "leichter" hat.
Man könnte den Quellcode studieren, ist ja GPL-Code,
aber mir reicht die Erklärung (selbst wenn ich jetzt daneben liege ;D )
Gruss
Amir
berthold:
Hallo,
jetzt muss ich meine Aussage berichtigen: Bei mir tritt das auch auf. :o Mir ist das bisher deswegen nicht aufgefallen, weil ich den Rand grundsätzlich wegschneide (der ist durch den Versatz bzw. den Skalierungsfaktor sowieso unbrauchbar). Ich wollte es nicht glauben, habe es mit CZ5 und CZM probiert: gleicher Effekt! Das Bild wird dabei ALLSEITIG (mittig) erweitert, also oben, unten, links und rechts, jeweils durch Spiegelung. Und das ist nicht mal gering, nicht nur auf eine durch 8 teilbare Pixelzahl. Bei mir wird aus 4500x3000 durch allseitigen Rand 4608x3072 Pixel.
Gruß
Berthold
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln