WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Fisheye Effect

 

stwe3926
Forum-Anfänger

Forum-Anfänger


Beiträge: 14
Anmeldedatum: 17.12.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.01.2015, 21:19     Titel: Fisheye Effect
  Antworten mit Zitat      
Hallo zusammen. Ich bin absoluter Neuling in MatLab und wir müssen in der UNI ein Programm erstellen das hoch komplex ist. Es geht dabei um die Verzerrung von Bildern. Ich will ein Bild ähnlich eines Fisheye effects verzerren und habe dafür folgende Funktion im Netz gefunden. Leider weiß ich nichts damit anzufangen. Kann mir einer sagen was die einzelnen Zeilen bewirken damit ich eine Vorstellung bekomme was das Programm macht.

Code:
function U = fisheye_inverse(X,T)

  imageSize = T.tdata(1:2);
  exponent = T.tdata(3);
  origin = (imageSize+1)./2;
  scale = imageSize./2;

  x = (X(:,1)-origin(1))/scale(1);
  y = (X(:,2)-origin(2))/scale(2);
  R = sqrt(x.^2+y.^2);
  theta = atan2(y,x);

  cornerScale = min(abs(1./sin(theta)),abs(1./cos(theta)));
  cornerScale(R < 1) = 1;
  R = cornerScale.*R.^exponent;

  x = scale(1).*R.*cos(theta)+origin(1);
  y = scale(2).*R.*sin(theta)+origin(2);
  U = [x y];

end
 

Die Seite wo ich das Ganze her habe wäre folgende. http://stackoverflow.com/questions/.....?answertab=active#tab-top

Grüße,
Stefan
Private Nachricht senden Benutzer-Profile anzeigen


AndyAndyAndy
Forum-Anfänger

Forum-Anfänger


Beiträge: 44
Anmeldedatum: 22.12.14
Wohnort: Nähe Offenburg
Version: GNU Octave 4.1.0+
     Beitrag Verfasst am: 07.01.2015, 21:29     Titel:
  Antworten mit Zitat      
Da es Hausaufgaben sind, möchte ich das nicht erklären. Beim selber rausfinden lernt man viel besser.

Ich empfehle zu Einstieg diese beiden Seiten: http://wiki.panotools.org/Lens_correction_model und http://wiki.panotools.org/Fisheye_Projection

Darin werden auch verschiedene Fisheye models mit Formel gezeigt. Dein Code macht dann einfach noch das mappen der Pixel Radius (R) <-> Winkel mit der ein Lichtstrahl ins Objektiv fällt (Theta).

btw, das ist alles nicht wirklich "hoch komplex" sondern einfache Grundlagen. Viel Erfolg
Private Nachricht senden Benutzer-Profile anzeigen
 
stwe3926
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 14
Anmeldedatum: 17.12.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.01.2015, 10:18     Titel:
  Antworten mit Zitat      
Vielen Dank für die Antwort und die Links. Ich versuche mich rein zu finden aber leicht ist das nicht gerade.

Gruß,stefan
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.