42 Commits

Author SHA1 Message Date
Max Sponsel
d5252ea2be Weiter CodeCleanup 2020-09-12 11:52:40 +02:00
Max Sponsel
30d0e61ca7 Auslagern der Scrollbar-Funktion und Einfügen von Beispielbildern 2020-09-12 11:45:49 +02:00
Max Sponsel
f176685f0b Beispielbild aus Paper hinzugefügt 2020-09-11 17:35:34 +02:00
Max Sponsel
98e6b56bd3 CodeCleanup
Funktionen ausgelagert und drei Farbarten zu einer großen Klasse zusammengefasst
2020-09-10 14:44:29 +02:00
Max Sponsel
08881f47cf Vereinfachung des Codes mit cv2.cvtColor
Statt das Array doppelt mit der flipud Funktion zu spiegeln, wird es direkt im Einleseprozess von BGR(OpenCV) zu RGB(Pillow und Algorithmus) konvertiert.
2020-09-10 11:34:04 +02:00
Max Sponsel
e62ea2a23e Anpassung des Print Befehls
Ausgabe des Bildes erfolgt nun auch mit der Stärke der Farbblindheitssimulation (von 0 bis 100%)
2020-09-07 10:47:17 +02:00
3b5798b143 Verschiedene Testreihen zur Abschwächung sowie die Grundidee mit Formelanpassung 2020-09-04 10:01:05 +00:00
Max Sponsel
a1ebdb827c Abschwächung der Simulationsstärke
Durch Anpassungen in den Simulationsmatrizen ergeben sich Abschwächungsmuster. Somit können für verschiedene Probanden unterschiedliche Stärken der Sehschwäche simuliert werden.
2020-09-04 11:59:25 +02:00
Max Sponsel
9980f03bdd Dynamische vertikale und horizontale Scrollbar
Durch Hilfe von Stack Overflow wurde eine dynamische Scrollbar implementiert. Diese erscheint je nach Windowgröße dynamisch. 
(siehe hierzu: https://stackoverflow.com/questions/47008899/tkinter-dynamic-scrollbar-for-a-dynamic-gui-not-updating-with-gui)
2020-08-29 10:10:11 +02:00
Max Sponsel
62b16b4a96 Erste Tests mit Slider und Umwandlungsfunktion
Erste Funktionen in den Klassen implementiert; Erste Test gemacht. Ergebnisse noch nicht zufriedenstellend. Auch Implementierung einer Scrollbar nötig!!
2020-08-25 10:45:12 +02:00
Max Sponsel
bbc3aafeb3 Merge remote-tracking branch 'origin/master' 2020-08-25 09:40:33 +02:00
Max Sponsel
da88618ce6 Einfügen eines Sliders
Um den Grad der Faarbblindheit korrekt zu Simulieren, muss ein Widget eingebaut werden, welches den prozentualen Anteil der Differenz zwischen Simulation und echtem Wert vergleicht und mit dem ausgewählten Wert (z. B. 80%) neu gewichtet.
2020-08-25 09:40:27 +02:00
Max Sponsel
f1348cfef2 Einfügen eines Sliders
Um den Grad der Faarbblindheit korrekt zu Simulieren, muss ein Widget eingebaut werden, welches den prozentualen Anteil der Differenz zwischen Simulation und echtem Wert vergleicht und mit dem ausgewählten Wert (z. B. 80%) neu gewichtet.
2020-08-25 09:40:16 +02:00
Max Sponsel
d1cd073fde Merge remote-tracking branch 'origin/master' 2020-08-21 11:23:26 +02:00
3ee51d0be4 Applikation zur Simulation der verschiedenen Fehlsichtigkeiten
Nachdem nun die Theorie hinter der Simulation geklärt ist, wenden wir uns jetzt dem Applikationbau zu.
2020-08-21 09:23:03 +00:00
Max Sponsel
8c4760c75d Kommentar entfernt 2020-08-15 09:18:51 +02:00
Max Sponsel
28325c408e Algorithmusanpassung
Nutzung der Built-in Funktion der Farbkonvertierung von OpenCV statt ständiger, doppelter Drehung im Algorithmus. Effizienter und schneller!
2020-08-15 08:31:33 +02:00
Max Sponsel
dad7554c71 Pillow Import
Einbauen des Imports von Pillow für das Graphical Interface. Installation über: pip install pillow
2020-08-14 18:03:43 +02:00
Max Sponsel
74759f92b5 Kommentar zur Berechnung eingefügt 2020-07-11 09:42:55 +02:00
Max Sponsel
12dd773020 Korrektur des Algorithmus
Durch die NumPy Funktion numpy.flipud konnte das RGB Array umgedreht, der Algorithmus des Papers angewendet und schließlich eine Rücktransformation der RGB Werte stattfinden. Die erhaltenen Bilder entsprechen nun den Erwartungen.
2020-07-11 09:40:29 +02:00
Max Sponsel
871715bbad Merge remote-tracking branch 'origin/master' 2020-07-09 16:06:51 +02:00
Max Sponsel
1165dc1e21 Fehler im Algorithmus gefunden
Anders als im Paper werden die RGB Werte nicht in der Reihenfolge Rot Grün Blau (RGB), sondern in OpenCV als Blau grün rot (BGR) abgespeichert.
Also ist ein e Funktion zum "Umdrehen" der Matrix nötig!
2020-07-09 16:06:27 +02:00
Max Sponsel
e7eead37ee Fehler im Algorithmus gefunden
Anders als im Paper werden die RGB Werte nicht in der Reihenfolge Rot Grün Blau (RGB), sondern in OpenCV als Blau grün rot (BGR) abgespeichert.
Also ist ein e Funktion zum "Umdrehen" der Matrix nötig!
2020-07-09 16:06:12 +02:00
Max Sponsel
899580b119 Kleine Anpassungen an den Interpretierer 2020-07-04 10:54:05 +02:00
Max Sponsel
d7cb8c293e Anpassung der Bildveränderung
Trotz Anpassungen sind noch einige Verbesserungen nötig: Grauanteile, wo keine sein sollten treten auf. Die Berechnungsalgorithmen müssen überprüft werden.
2020-06-27 11:24:07 +02:00
4d54aa9d3c Bild, welches im technical Paper verwendet wurde
---
2020-06-27 08:57:56 +00:00
Max Sponsel
2a4e394165 Erste Logik zur Bildänderung
Matrixmultiplikation und Gamma-Rücktransformation angewendet
2020-06-27 10:54:20 +02:00
Max Sponsel
c3d4a04017 Simulationsmatrizen der einzelnen Fehlsichtigkeiten implementiert
Simulationsmatrizen fuer Protanopie, Deuteranopie und Tritanopie hinzugefügt.
2020-06-27 10:40:18 +02:00
Max Sponsel
7c4a08521f Multiplikation mit der Transformationsmatrix T
Implementiert über 2 for-Schleifen und der numpy.dot() Funktion
2020-06-26 12:59:09 +02:00
Max Sponsel
bb625895a0 Gammakorrektur für Bildarray
Kopie unseres Bildarrays wurde erstellt und auf floats gecastet. Bereinigte Werte können jetzt mit der Transformationsmatrix T multipliziert werden!!
2020-06-26 12:45:14 +02:00
Max Sponsel
4c80771315 Iteration durch das Bildarray
Anpassungen müssen noch gemacht werden!
2020-06-26 12:43:21 +02:00
Max Sponsel
24ab0a1f85 Einfügen der allgemeinen Tranformationsmatrix T und der Inversen T^-1
Zwar hatten wir bereits die M_HPE und M_sRGB eincodiert, jedoch lassen sich beide Matrizen mit Multiplikation bereits zusammenfassen, was den Code übersichtlicher macht. Zudem reicht nach Gammakorrektur nun eine Matrixmultiplikation für die komplette Konvertierung aus!
2020-06-26 11:01:46 +02:00
Max Sponsel
18623a2e01 Einfügen der Gammakorrekturen als Funktionen
Vor der eigentlichen Anwendung des Algorithmus müssen die Gammakorrekturwerte gefiltert und vor der Darstellung des bearbeiteten Bildes wieder hinzugefügt werden.
2020-06-26 09:58:43 +02:00
Max Sponsel
92a0f9e03c Transformationsmatrixen hinzufügen
Verschiedene Matrizen zur Bildänderung hinzugefügt
2020-06-22 12:22:51 +02:00
Max Sponsel
2653f8c7f6 Anpassung des Bildeinlesens
Bildverzeichnis jetzt dynamisch zugreifbar. Mergeproblem sollte gelöst sein.
2020-06-22 11:46:32 +02:00
Max Sponsel
85be54ab1f Imported Numpy 2020-06-17 15:59:55 +02:00
Max Sponsel
4ee972c1e5 Auslesen der Bilddimensionen 2020-06-17 10:47:09 +02:00
Max Sponsel
fd2c587bbc Erste Einleselogik Implementiert 2020-06-09 16:16:37 +02:00
ed56189238 Dateien hochladen nach „Beispielbilder“
Beispielbilder zum Testen des Codes und der Algorithmen
2020-06-09 14:03:42 +00:00
Max Sponsel
451ffb36cd Imports added 2020-06-09 15:56:34 +02:00
3d61fce4bc „Code/Dyschromasie.py“ hinzufügen
Ersterstellung des Python Skripts zur Simulation einer Farbfehlsichtigkeit mit Hilfe von OpenCV.
2020-06-09 12:35:49 +00:00
3f57e11e34 Initial commit 2020-05-18 09:51:23 +00:00