Entwickler-Ecke
Multimedia / Grafik - Bilder / Grafiken zusammenfuegen
rstaeker - Mo 09.06.03 16:10
Titel: Bilder / Grafiken zusammenfuegen
Hallo,
mal eine kleine "ernsthafte" Frage zum Nachdenken.
Hat jemand eine Idee, wie ich verschiedene Bilder zu einem Bild zusammenfuegen kann?
Es gibt breits einige Programme, die so etwas fuer Panoramabilder koennen.
Ich brauche aber jetzt fuer die Schule einen Ansatz, wie man so etwas fuer Landkartenteile machen kann. Das Programm soll also mehrere Kartenteile zu einer grossen Karte zusammenfuegen und dabei besonders auf die Uebereinstimmung von Strassen achten.
Ich dachte da so an scanline und einen anschliessenden Vergleich der berechneten daten.
Ich bin mir bewusst, dass das mit einem hohen Speicher und Rechenaufwand verbunden ist, habe aber bisher keinen anderen Ansatz.
Vielleicht koennen ja in diesem Forum ein paar Leute Vorschlaege / Ansaetze machen.
mimi - Mo 09.06.03 17:06
du hast also ein puzell und willst es wieder zusammen setzten richtig ?
wenn jedes bild mit einer nummer makiert ist wüsste ich eine lösung:)
Elayla - Mo 09.06.03 17:12
Ich glaub er meints bissl anders, nimm die nen Atlas da hat man ja auch Karten über mehrere Seiten, aber oftmals siehts so aus:
oooooooo ppppoooo
oooopppp oooppppp
pppppooo oooooooo
oooooooo oooooooo
Das "p" ist ne Straße und "o" irgendwas anderes, jetzt soll der Computer die Karte so zusammensetzen das die Straße passt, also so:
oooooooo .............
oooopppp ppppoooo
pppppooo oooppppp
oooooooo oooooooo
............. oooooooo
"." is jetzt mal gar nix, is nur Platzfüller ^^
Aber das stell ich mir seeehr kompliziert vor :wink:
mimi - Mo 09.06.03 17:16
gut, dann verstehe ich die frage irgenwie falsch :(
umpani - Di 10.06.03 10:10
Nun ich kann mir folgenden Ansatz vorstelle du vergleichst die pixelwert (rgb) der letzten Zeile des ersten Bildes und der ersten Zeile des letzten Bildes.
und zwar so oft, wie das bild breit ist (in Pixeln).
Bei jedem Durchgang verschiebst du das zweite Bild immer weiter nach rechts:
Durchgang 1:
11111111111
11111111111
22222222222
22222222222
durchgang2:
11111111111
11111111111
22222222222
22222222222
Durchgang3:
11111111111
11111111111
33333333333
33333333333
usw.
Bei jedem durchgang spicherst dur die summer der Farbdifferenzen der gegenüberliegenden Pixel der beiden Bilder (natürlich nur, wenn wirklich pixel gegenüberliegen. Bei durchgang 3 sin an den ersten Biden stellen bei Pixel 1 und zwei keine gegenüberliegenden Pixel).
Wenn du alle stellungen :wink: verglichen und die Farbdifferenzen gespeichert hast, dann sortiertst du alle gespeicherten Werte der Größe nach.
Der Wert mit der kleinsten differenzt ist die Zusammenstellung die am besten passt.
Ach ja, du musst die Werte natürlich auf einen Pixel herunterrechnen, denn wenn man 20 Pixel vergleicht, kommt natürlich eine größere Differenzsummer heraus, als wenn man 6 Pixel vergleicht.
umpani - Di 10.06.03 10:11
:x
Das schxxxxxxxxx Forumprogreamm hat meine Leerzeichen ignoriert:
(X ist leerzeichen)
Durchgang 1:
11111111111
11111111111
22222222222
22222222222
durchgang2:
11111111111
11111111111
x22222222222
x22222222222
Durchgang3:
11111111111
11111111111
xx22222222222
xx22222222222
rstaeker - Di 10.06.03 10:33
Titel: Danke fuer die Anregungen
@Elayla
Genau richtig verstanden :)
Das Beispiel mit den Atlaskarten trifft es genau.
Genau auf diesem Problem darauf baut die Aufgabe auf.
@umpani
Danke fuer die Bestaetigung meines Denkansatzes.
Damit kann ich ja schon mal arbeiten. Ich denke, dass Deine Erklaerung ganz gut zu verstehen ist.
Ich denke zwar kaum, dass das Programm komplett entstehen wird, aber geht ja fuer die Berufsschule um das Prinzip. Daher wird sich auch der Programmieraufwand in Grenzen halten.
:!: Es sei denn, jemand haette Interesse, daraus ein Projekt zu machen.
Aber sicher kein OpenSource, den dafuer wird der Aufwand dann zu gross :wink:
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!