yagna08/Traffic-Sign-Detection
0
1import gradio as gr2import numpy as np3import pandas as pd4import tensorflow as tf5import cv26 7def grayScale(image):8 image = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)9 return image10 11def equalizer(image):12 image = cv2.equalizeHist(image)13 return image14 15def preprocessing(image):16 image = grayScale(image)17 image = equalizer(image)18 image = image/25519 return image20 21def classify_image(inp):22 print(inp.shape)23 inp = np.asarray(inp)24 print(inp.shape)25 inp = cv2.resize(inp, (64, 64))26 inp = preprocessing(inp)27 print(inp.shape)28 inp=inp.reshape(-1,inp.shape[0],inp.shape[1],1)29 30 model = tf.keras.models.load_model('final.h5')31 df = pd.read_csv('traffic_sign.csv')32 pred = model.predict(inp)33 print(pred[0])34 print(np.max(pred[0]))35 return df.loc[np.argmax(pred[0]),'Name']36 # return df.loc[pred,'Name']37 38gr.Interface(fn=classify_image,39 inputs=gr.Image(label='Upload a photo'),40 outputs=gr.Label(label='Predicted Traffic Sign'),41 examples=['giveway.png','dip.jpeg'],42 title='Traffic Sign Detection',43 theme='dark'44 ).launch(share=True)45 46 47 