From 62b16b4a96b87ca8c0e3034860f61a315a95447f Mon Sep 17 00:00:00 2001 From: Max Sponsel Date: Tue, 25 Aug 2020 10:45:12 +0200 Subject: [PATCH] Erste Tests mit Slider und Umwandlungsfunktion MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Erste Funktionen in den Klassen implementiert; Erste Test gemacht. Ergebnisse noch nicht zufriedenstellend. Auch Implementierung einer Scrollbar nötig!! --- Code/Dyschromasie-Applikation.py | 35 ++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/Code/Dyschromasie-Applikation.py b/Code/Dyschromasie-Applikation.py index 8de308d..ce7c8cb 100644 --- a/Code/Dyschromasie-Applikation.py +++ b/Code/Dyschromasie-Applikation.py @@ -7,6 +7,7 @@ import numpy as np class Dyschromasie: + global simGrad cb_image = np.array([]).astype('float64') sim_image = np.array([]).astype('uint8') @@ -65,6 +66,16 @@ class Protanopie(Dyschromasie): for x in range(3): self.sim_image[i, j, x] = self.reverseGammaCorrection(self.cb_image[i, j, x]) + # Anpassung fuer den Slider + if(simGrad.get() != 0): + for i in range(rows): + for j in range(cols): + for x in range(3): + if self.sim_image[i, j, x] > img[i, j, x]: + self.sim_image[i, j, x] = img[i, j, x] + abs(self.sim_image[i, j, x] - img[i, j, x])* (simGrad.get()/100) + + elif self.sim_image[i, j, x] < img[i, j, x]: + self.sim_image[i, j, x] = self.sim_image[i, j, x] + abs(img[i, j, x] - self.sim_image[i, j, x])* (simGrad.get()/100) return self.sim_image @@ -95,6 +106,18 @@ class Deuteranopie(Dyschromasie): for j in range(self.cols): for x in range(3): self.sim_image[i, j, x] = self.reverseGammaCorrection(self.cb_image[i, j, x]) + + # Anpassung fuer den Slider + if (simGrad.get() != 0): + for i in range(rows): + for j in range(cols): + for x in range(3): + if self.sim_image[i, j, x] > img[i, j, x]: + self.sim_image[i, j, x] = img[i, j, x] + abs(self.sim_image[i, j, x] - img[i, j, x]) * (simGrad.get() / 100) + + elif self.sim_image[i, j, x] < img[i, j, x]: + self.sim_image[i, j, x] = self.sim_image[i, j, x] + abs(img[i, j, x] - self.sim_image[i, j, x]) * (simGrad.get() / 100) + return self.sim_image @@ -125,6 +148,18 @@ class Tritanopie(Dyschromasie): for j in range(self.cols): for x in range(3): self.sim_image[i, j, x] = self.reverseGammaCorrection(self.cb_image[i, j, x]) + + # Anpassung fuer den Slider + if (simGrad.get() != 0): + for i in range(rows): + for j in range(cols): + for x in range(3): + if self.sim_image[i, j, x] > img[i, j, x]: + self.sim_image[i, j, x] = img[i, j, x] + abs(self.sim_image[i, j, x] - img[i, j, x]) * (simGrad.get() / 100) + + elif self.sim_image[i, j, x] < img[i, j, x]: + self.sim_image[i, j, x] = self.sim_image[i, j, x] + abs(img[i, j, x] - self.sim_image[i, j, x]) * (simGrad.get() / 100) + return self.sim_image