import keras from keras.models import load_model import gradio as gr import cv2 my_model=load_model('Final_Chicken_disease_model.h5',compile=True) auth_model=load_model('auth_model.h5',compile=True) name_disease={0:'Coccidiosis',1:'Healthy',2:'New Castle Disease',3:'Salmonella'} result={0:'Critical',1:'No issue',2:'Critical',3:'Critical'} recommend={0:'Panadol',1:'You have no need Medicine',2:'Percetamol',3:'Ponston'} def predict(image): image_check=cv2.resize(image,(224,224)) indx=auth_model.predict(image_check.reshape(1,224,224,3)).argmax() if indx==0: image=cv2.resize(image,(224,224)) indx=my_model.predict(image.reshape(1,224,224,3)).argmax() name=name_disease.get(indx) status=result.get(indx) recom=recommend.get(indx) return name,status,recom else: name='Unkown Image' status='N/A' recom='N/A' return name,status,recom interface=gr.Interface(fn=predict,inputs=[gr.Image(label='upload Image')],outputs=[gr.components.Textbox(label="Disease Name"),gr.components.Textbox(label="result"),gr.components.Textbox(label='Medicine Recommend')], examples=[['disease.jpg'],['ncd.jpg']]) interface.launch(debug=True)