AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Bei Bild Perspektive rausrechnen
Thema durchsuchen
Ansicht
Themen-Optionen

Bei Bild Perspektive rausrechnen

Offene Frage von "R2009"
Ein Thema von R2009 · begonnen am 25. Apr 2010 · letzter Beitrag vom 26. Apr 2010
Antwort Antwort
R2009

Registriert seit: 9. Mär 2009
Ort: Heidelberg
440 Beiträge
 
Delphi 2007 Professional
 
#1

Bei Bild Perspektive rausrechnen

  Alt 25. Apr 2010, 08:21
Hi,

ich möchte aus einem Bild, das schräg von einem Objekt aufgenommen wurde die Perspektive rausrechnen.
Hintergrund:
Wir versuchen, für den Modellbahnbereich, Häuser nachzubauen. Vorhanden sind, in beliebigem Winkel, aufgenommene
Fotos von dem Objekt.
Ich müsste das Foto so umrechnen, dass ich es frontal sehen kann.
Ich stelle mir vor, dass ich, auf dem Bild, ein Polygon (Viereck) einzeichne und anhand dieses Rahmens die Perspektive
korrigiere.
Es stehen jeweils 2 Fotos aus unterschiedlichen Richtungen zur Verfügung.

Hat jemand von euch sowas schon mal gemacht oder kann mir weiterhelfen?

Grüsse
Rainer
Rainer Unger
Mein Profil:
Studium Allgemeine Elektrotechnik TH Darmstadt
Entwicklung von Tools für die Rundsteuer und Zählertechnik.
uP's Atmel Prozessoren (ATmega16,32,88...) in C und Assembler.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.136 Beiträge
 
Delphi 12 Athens
 
#2

Re: Bei Bild Perspektive rausrechnen

  Alt 25. Apr 2010, 08:57
Hmmmm, gemacht hatte ich es noch nicht, aber vermutlich würde ich es so lösen.
  • Erstmal den Mittelpunkt dieses Vierecks berechnen.
  • Dann jeweils einen Verzerrungsfaktor zu den jeweiligen Eckpunkten dieses Vierecks errechnen.
  • Nun könnte man über diese Faktoren errechnen wo die Eckpunkte des Bildes nach der Entzerrung liegen.

    Das Ergäbe dann den neuen Mittelpunkt des Vierecks im entzerrten Bild und zugleich die Größe des neuen Bildes.
  • Und jetzt geht man nur noch alle Bildpunkte des neuen Bildes durch, errechnet die jeweiligen Punkte im Original und holt sich von dort den entsprechenden Farbwert (eventuell auch noch interpoleriert aus den naheliegenden Punkten)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Coder
Coder

Registriert seit: 27. Feb 2004
Ort: Bochum
203 Beiträge
 
Delphi 3 Professional
 
#3

Re: Bei Bild Perspektive rausrechnen

  Alt 25. Apr 2010, 08:58
Du müßtest doch den Polygonen nicht nur 2 Achsen sondern 3 Achsen (Tiefe) also die dritte Dimension zuweisen - die kann nämlich bei Neigung unterschiedlich gestaucht sein.

Das ginge nur mit einem weitern Fenster für die Tiefe.
Aber dann brauchste das auch nicht mehr berechnen zu lassen.

Das ist wie Berechnen der WAVE Datei aus ner mp3 oder nem BMP aus JPEG.



Oder wie meinste das?
ICQ: 204141443
Delphi 3 Professional, Intel 2x 2,4Ghz, 3 GB-Graka, Sound-onBrd, --
außerdem D2S, D3Pro, D4S, D5S, D6S, D7S + Indy, Lazarus, VB5Std, VC++5Pro, Tasm4+5 - was braucht man mehr?
-
  Mit Zitat antworten Zitat
R2009

Registriert seit: 9. Mär 2009
Ort: Heidelberg
440 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Bei Bild Perspektive rausrechnen

  Alt 25. Apr 2010, 10:46
Hi,
ich habe mir das so vorgestellt:

1.) Ich setze über das Bild ein Viereck dessen Bild im berechneten Bild einem Rechteck entspricht.
Das könnte, im Original, z.B. ein Fenster eines Hauses sein.
2.) Aus diesem Viereck berechne ich dann die Verzerrungsfaktoren die zu einem Rechteck führen.

3.) Aus diesem Viereck berechne ich dann alle im Urbild (Original) vorhandenen Farbwerte um.

4.) Kenne ich ein einziges solches Viereck mit seinen Verzerrungen so kann ich daraus jeden Punkt berechnen.

4.) Dies gilt natürlich nur dann, wenn ich eine schräge Ebene abbilden will.

5.) Bei meinem Häuserproblem (Häuserfront) ist dies der Fall.

Grüsse
Rainer
Rainer Unger
Mein Profil:
Studium Allgemeine Elektrotechnik TH Darmstadt
Entwicklung von Tools für die Rundsteuer und Zählertechnik.
uP's Atmel Prozessoren (ATmega16,32,88...) in C und Assembler.
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#5

Re: Bei Bild Perspektive rausrechnen

  Alt 25. Apr 2010, 13:31
Hallo Rainer,

für die Bibliothek Graphics32 gibt es eine Demo-Anwendung namens "ProjectiveForward". Du findest sie auf dieser Seite.

Gruß Hawkeye
  Mit Zitat antworten Zitat
R2009

Registriert seit: 9. Mär 2009
Ort: Heidelberg
440 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Bei Bild Perspektive rausrechnen

  Alt 26. Apr 2010, 05:42
Hi Hawkeye,
hab mir das angesehen, sieht wirklich sehr gut aus.
Ich denke damit ist mir geholfen.

Danke und Grüsse
Rainer
Rainer Unger
Mein Profil:
Studium Allgemeine Elektrotechnik TH Darmstadt
Entwicklung von Tools für die Rundsteuer und Zählertechnik.
uP's Atmel Prozessoren (ATmega16,32,88...) in C und Assembler.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.136 Beiträge
 
Delphi 12 Athens
 
#7

Re: Bei Bild Perspektive rausrechnen

  Alt 26. Apr 2010, 10:23
Die Berechnung von aTopLeft, aTopRight, aBottomRight und aBottomLeft könnte man noch über einige Winkelfunktionen verbessern, aber sonst läuft's.
(Länge und Winkel der Linie ausrechnen, Linie verlängern und über Winkel neue Position bestimmen)

Und etwas Antialiasing kann auch nicht schaden.


PS: Statt dem 1.2 einfach mal was Anderes ins Edit eintragen, wie z.B. 1, 1.7 oder 2.
Angehängte Dateien
Dateityp: zip project6_153.zip (521,4 KB, 21x aufgerufen)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Reinhard Kern

Registriert seit: 22. Okt 2006
772 Beiträge
 
#8

Re: Bei Bild Perspektive rausrechnen

  Alt 26. Apr 2010, 11:28
Zitat von R2009:
ich möchte aus einem Bild, das schräg von einem Objekt aufgenommen wurde die Perspektive rausrechnen.
Hallo,

musst du das selbst programmieren? Ich habe sowas vor einiger Zeit gemacht für Industrieaufnahmen (elektronische Geräte), muss aber bei Häusern genauso gehen: Paint Shop Pro hat dafür eine Funktion - Viereck zeichnen (z.B. auf die Hauswand) und Umrechnen lassen zum Rechteck. Geht ganz zackig.

Gruss Reinhard
  Mit Zitat antworten Zitat
alf.stefan

Registriert seit: 11. Apr 2003
88 Beiträge
 
Delphi 7 Professional
 
#9

Re: Bei Bild Perspektive rausrechnen

  Alt 26. Apr 2010, 12:50
Wenn Es Dir um die Darstellung geht könntest Du das auch sehr elegant mit GLScene machen!

Bild in den Raum stellen und einfach das Bild drehen.
Oder das Bild auf ein sog. Frustum (sowas wie ein Pyramiden Stumpf) als Textur auf eine Seite zeichnen.
Bei der Frontalansicht entspricht der Winkel der Pyramide dem Aufnahmewinkel und somit auch der Pespektive.

Nur so als Anregung.

Gruß
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz