import pandas as pd import matplotlib.pyplot as plt import numpy as np import cv2 #import keras import gradio as gr import keras from tensorflow.keras.models import load_model # Modellerin eklenmesi SHAPE = (224, 224, 3) predictor_disease_risk = load_model('predictor_Disease_Risk.h5') predictor_dr = load_model('predictor_DR.h5') predictor_dn = load_model('predictor_DN.h5') # Fonksiyonlar # Veri düzenleme, normalizasyon def cut_and_resize(image): LOW_TOL = 20 img_bw = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) img_bw[img_bw<=LOW_TOL] = 0 y_nonzero, x_nonzero = np.nonzero(img_bw) image = image[np.min(y_nonzero):np.max(y_nonzero), np.min(x_nonzero): np.max(x_nonzero), ] return cv2.resize(image, SHAPE[:2], interpolation = cv2.INTER_LINEAR) def simple_normalizer(X): return X / 255.0 # Tanı - Veri okuma ve Verilerin DL Modellerden geçirilmesi def predict (image_path): image = simple_normalizer(cut_and_resize(cv2.imread(image_path))) result = predictor_disease_risk.predict(np.array([image]))[0][0] dr = predictor_dr.predict(np.array([image]))[0][0] dn = predictor_dn.predict(np.array([image]))[0][0] if dr>0.05 and dn0.05 and dr