#|export classes = [ 'chim cú', 'chim sẻ', 'chim tu hú', 'chim quạ', 'chim sơn ca', 'chim chích chòe than', 'chim chích chòe lửa', 'chim cà cưỡng', 'chim sáo', 'chim vẹt', 'chim bồ chao', 'chim chào mào', 'chim cu gáy', 'chim yến', 'chim sáo đá', 'chim vàng anh', 'chim én', 'chim cò', 'chim bồ câu', 'chim oanh', 'chim vành khuyên', 'chim chích', 'chim diều hâu', 'chim sẻ đất', 'chim cú mèo' ] dir_name = 'chim_vietnam' from fastai.vision.all import * import gradio as gr # v1 # learn = load_learner(dir_name+'_model.pkl') # v2 learn = load_learner('chim_vietnam_v2_25c_restnet50_25ep_ac70_model.pkl') categories = learn.dls.vocab def classify_image(img): pred,pred_idx,probs = learn.predict(img) return dict(zip(categories, map(float, probs))) label = gr.Label() examples = [o + ' 1.jpeg' for o in classes] #shuffle examples import random random.shuffle(examples) # Define a function to resize the image def process_image(image): image = Image.fromarray(image) image = image.resize((192, 192)) return image # Create the interface interface = gr.Interface( fn=classify_image, inputs=gr.Image(), outputs=label, examples=examples ) interface.launch(share=True)