Update app.py
Browse files
app.py
CHANGED
@@ -63,31 +63,12 @@ def prepare_image(img):
|
|
63 |
return pred_texts, preds
|
64 |
|
65 |
def decode_batch_predictions(pred):
|
66 |
-
#
|
67 |
-
|
68 |
-
|
69 |
pred_texts = []
|
70 |
-
|
71 |
-
|
72 |
-
# Ambil hasil prediksi untuk sampel i
|
73 |
-
pred_single = pred[i]
|
74 |
-
|
75 |
-
# Ambil argmax untuk setiap langkah (timesteps) untuk mendapatkan indeks karakter
|
76 |
-
pred_indices = np.argmax(pred_single, axis=-1)
|
77 |
-
|
78 |
-
# Ambil hasil prediksi dengan membatasi pada 5 karakter (untuk CAPTCHA dengan panjang 5 karakter)
|
79 |
-
pred_indices = pred_indices[:5] # Pastikan kita hanya mengambil 5 karakter pertama
|
80 |
-
|
81 |
-
# Gabungkan prediksi menjadi string, menghindari padding (-1) dan pastikan panjangnya 5
|
82 |
-
pred_text = ''.join([characters[int(c)] for c in pred_indices if c != -1])
|
83 |
-
|
84 |
-
# Pastikan panjang teks hasil prediksi adalah 5 karakter
|
85 |
-
while len(pred_text) < 5:
|
86 |
-
pred_text += " " # Bisa sesuaikan dengan apa yang ingin dilakukan jika panjangnya kurang dari 5
|
87 |
-
|
88 |
-
# Append prediksi teks untuk batch
|
89 |
pred_texts.append(pred_text)
|
90 |
-
|
91 |
return pred_texts
|
92 |
|
93 |
def run():
|
|
|
63 |
return pred_texts, preds
|
64 |
|
65 |
def decode_batch_predictions(pred):
|
66 |
+
# This function should convert the predictions (logits) to text
|
67 |
+
# Modify this function based on your specific character map
|
|
|
68 |
pred_texts = []
|
69 |
+
for i in range(pred.shape[0]):
|
70 |
+
pred_text = ''.join([characters[int(c)] for c in pred[i] if c != -1]) # Map to characters
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
pred_texts.append(pred_text)
|
|
|
72 |
return pred_texts
|
73 |
|
74 |
def run():
|