Spaces:
Runtime error
Runtime error
File size: 1,379 Bytes
2bd9468 9902a40 87c119f 2bd9468 9902a40 891d8e1 2bd9468 87c119f 9902a40 87c119f 891d8e1 2bd9468 87c119f 2bd9468 13ed850 891d8e1 87c119f 2bd9468 3382a71 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
import gradio as gr
from transformers import pipeline
from PIL import Image
from pydub import AudioSegment
from pydub.playback import play
import io
# ์ด๋ฏธ์ง ์ธ์ ํ์ดํ๋ผ์ธ ๋ก๋
model = pipeline("image-classification", model="google/vit-base-patch16-224")
# ์นดํ
๊ณ ๋ฆฌ์ ๋ฐ๋ฅธ ์ฌ์ด๋ ํ์ผ ๊ฒฝ๋ก๋ฅผ ์ ์
sound_files = {
"dog": "dog_bark.mp3",
"cat": "cat_meow.mp3",
# ... ๊ฐ ์นดํ
๊ณ ๋ฆฌ์ ๋ํ ์ฌ์ด๋ ํ์ผ ๊ฒฝ๋ก ์ถ๊ฐ
}
def classify_image(uploaded_image):
predictions = model(uploaded_image)
# ๊ฐ์ฅ ํ๋ฅ ์ด ๋์ ์์ธก ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ์ด
top_prediction = predictions[0]['label']
# ์์ธก ๊ฒฐ๊ณผ์ ํด๋นํ๋ ์ฌ์ด๋ ํ์ผ์ ์ฌ์
if top_prediction in sound_files:
sound_path = sound_files[top_prediction]
sound = AudioSegment.from_file(sound_path)
play(sound)
return {prediction['label']: prediction['score'] for prediction in predictions}
# Gradio ์ธํฐํ์ด์ค ์์ฑ
iface = gr.Interface(fn=classify_image,
inputs=gr.Image(type="pil"),
outputs=gr.Label(num_top_classes=3),
title="์ด๋ฏธ์ง ๋ถ๋ฅ ๋ฐ ์ฌ์ด๋ ์ฌ์",
description="์ด๋ฏธ์ง๋ฅผ ์
๋ก๋ํ๋ฉด, ์ฌ๋ฌผ์ ์ธ์ํ๊ณ ํด๋นํ๋ ์ํฅ์ ์ฌ์ํฉ๋๋ค.")
# ์ธํฐํ์ด์ค ์คํ
iface.launch()
|