Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -32,11 +32,9 @@ st.markdown("""
|
|
32 |
|
33 |
# Pastikan library sudah terpasang sebelum melanjutkan
|
34 |
if cek_library():
|
35 |
-
# upload gambar
|
36 |
uploaded_file = st.file_uploader("Upload gambar mineral", type=['jpg', 'jpeg', 'png'])
|
37 |
|
38 |
if uploaded_file:
|
39 |
-
# Simpan sementara
|
40 |
temp_dir = tempfile.mkdtemp()
|
41 |
temp_file = os.path.join(temp_dir, "gambar.jpg")
|
42 |
image = Image.open(uploaded_file)
|
@@ -54,15 +52,13 @@ if cek_library():
|
|
54 |
if st.button("Deteksi Gambar"):
|
55 |
with st.spinner("Sedang diproses"):
|
56 |
try:
|
57 |
-
model = YOLO('
|
58 |
hasil = model(temp_file)
|
59 |
|
60 |
-
# Ambil Hasil Prediksi
|
61 |
nama_objek = hasil[0].names
|
62 |
nilai_prediksi = hasil[0].probs.data.numpy().tolist()
|
63 |
objek_terdeteksi = nama_objek[np.argmax(nilai_prediksi)]
|
64 |
|
65 |
-
# buat grafik pakai Matplotlib
|
66 |
fig, ax = plt.subplots()
|
67 |
ax.bar(list(nama_objek.values()), nilai_prediksi)
|
68 |
ax.set_title('Tingkat Keyakinan Prediksi')
|
@@ -70,7 +66,6 @@ if cek_library():
|
|
70 |
ax.set_ylabel('Keyakinan')
|
71 |
plt.xticks(rotation=45)
|
72 |
|
73 |
-
# Tampilkan hasil
|
74 |
st.success(f"Mineral terdeteksi: {objek_terdeteksi}")
|
75 |
st.pyplot(fig)
|
76 |
|
@@ -78,7 +73,6 @@ if cek_library():
|
|
78 |
st.error("Gambar tidak dapat terdeteksi")
|
79 |
st.error(f"Error: {e}")
|
80 |
|
81 |
-
# Hapus file sementara
|
82 |
shutil.rmtree(temp_dir, ignore_errors=True)
|
83 |
|
84 |
st.markdown(
|
|
|
32 |
|
33 |
# Pastikan library sudah terpasang sebelum melanjutkan
|
34 |
if cek_library():
|
|
|
35 |
uploaded_file = st.file_uploader("Upload gambar mineral", type=['jpg', 'jpeg', 'png'])
|
36 |
|
37 |
if uploaded_file:
|
|
|
38 |
temp_dir = tempfile.mkdtemp()
|
39 |
temp_file = os.path.join(temp_dir, "gambar.jpg")
|
40 |
image = Image.open(uploaded_file)
|
|
|
52 |
if st.button("Deteksi Gambar"):
|
53 |
with st.spinner("Sedang diproses"):
|
54 |
try:
|
55 |
+
model = YOLO('bestt.pt') # nama model kamu
|
56 |
hasil = model(temp_file)
|
57 |
|
|
|
58 |
nama_objek = hasil[0].names
|
59 |
nilai_prediksi = hasil[0].probs.data.numpy().tolist()
|
60 |
objek_terdeteksi = nama_objek[np.argmax(nilai_prediksi)]
|
61 |
|
|
|
62 |
fig, ax = plt.subplots()
|
63 |
ax.bar(list(nama_objek.values()), nilai_prediksi)
|
64 |
ax.set_title('Tingkat Keyakinan Prediksi')
|
|
|
66 |
ax.set_ylabel('Keyakinan')
|
67 |
plt.xticks(rotation=45)
|
68 |
|
|
|
69 |
st.success(f"Mineral terdeteksi: {objek_terdeteksi}")
|
70 |
st.pyplot(fig)
|
71 |
|
|
|
73 |
st.error("Gambar tidak dapat terdeteksi")
|
74 |
st.error(f"Error: {e}")
|
75 |
|
|
|
76 |
shutil.rmtree(temp_dir, ignore_errors=True)
|
77 |
|
78 |
st.markdown(
|