allgebrist / coma-projekt

Programierprojekt - Computerorientierte Mathematik II

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Projekt - Computerorientierte Mathematik II

In diesem Projekt stellen wir einen julia-nativen Ray-Tracer vor, welcher mithilfe des in Projekt.pdf eingeführten vereinfachten Kameramodells implementiert wurde. Dabei wird eine Textur in Form eines PNG-Bildes auf eine Kugel im Raum projiziert und von dieser Kugel mit Textur „ein Foto geschossen“, welches wiederum als PNG ausgegeben wird. Das Einlesen wird hier mittels Python durchgeführt, während die Bildverarbeitung in Julia stattfindet.

Um die Funktionen in der Datei main.py nutzen zu können, kann dieser Ordner heruntergeladen und das Skript im Terminal mittels python -i main.py ausgeführt werden. Die hierfür notwendigen Imports sind cv2, numpy, julia und julia.api.


Beispielaufrufe:

Snapshots der Texturen Images/grid.png und Images/sun.png mit Shading und einfachem Hintergrund:

  take_snapshot((0, 500, 0), 200, 50, "Images/grid.png", 1)
  shade_sphere()
  
  take_snapshot((0, 500, 0), 200, 50, "Images/sun.png", 1)
  shade_sphere()
Texture: Images/grid.png Texture: Images/sun.png

Entwickelt von:

  • Jonas Lorenz
  • Aleksandra Soloveva
  • Allan Zea

Institut für Mathematik, TU Berlin, Straße des 17. Juni 136, 10623 Berlin

About

Programierprojekt - Computerorientierte Mathematik II


Languages

Language:Julia 62.0%Language:Python 38.0%