From 28325c408e593e8ffe199d6c54cc8b3ffa7d7aef Mon Sep 17 00:00:00 2001 From: Max Sponsel Date: Sat, 15 Aug 2020 08:31:33 +0200 Subject: [PATCH] Algorithmusanpassung MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Nutzung der Built-in Funktion der Farbkonvertierung von OpenCV statt ständiger, doppelter Drehung im Algorithmus. Effizienter und schneller! --- Code/Dyschromasie.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Code/Dyschromasie.py b/Code/Dyschromasie.py index db923ac..0363b8e 100644 --- a/Code/Dyschromasie.py +++ b/Code/Dyschromasie.py @@ -7,7 +7,7 @@ from PIL import Image, ImageTk #Wichtig zum Anzeigen der Bilder im GUI # Einlesen des Bildes script_dir = sys.path[0] path = script_dir[:-4] + "Beispielbilder\grocery_store.jpg" -image = cv2.imread(path) # Einlesen des Bildes (noch hardcodiert, sollte dann in GUI gehen) +image = cv2.cvtColor(cv2.imread(path),cv2.COLOR_BGR2RGB) # Einlesen des Bildes (noch hardcodiert, sollte dann in GUI gehen) rows = image.shape[0] # Auslesen der Zeilenanzahl cols = image.shape[1] # Auslesen der Spaltenanzahl @@ -77,7 +77,7 @@ S_t = np.array([[1, 0, 0], #Simulationsmatrix fuer Tritanopi #Multiplikation der einzelnen Pixel for i in range(rows): for j in range(cols): - cb_image[i,j] = np.flipud(T_reversed.dot(S_p).dot(T).dot(np.flipud(cb_image[i,j]))) + cb_image[i,j] = T_reversed.dot(S_p).dot(T).dot(cb_image[i,j]) # Da OpenCV Pixelwerte in RGB speichert, aber BGR für den Algorithmus nötig ist, muss die Matrix mit flipud gedreht werden sim_image = np.copy(cb_image) @@ -90,5 +90,5 @@ for i in range(rows): sim_image[i, j, x] = reverseGammaCorrection(cb_image[i, j, x]) cv2.namedWindow("Display") # Displaywindow erstellen -cv2.imshow("Display", sim_image) # Bild zeigen +cv2.imshow("Display", cv2.cvtColor(sim_image,cv2.COLOR_RGB2BGR)) # Bild zeigen cv2.waitKey(0) # Fenster offen halten