Update app.py
Browse files
app.py
CHANGED
|
@@ -205,18 +205,18 @@ def _align_features(model, features: np.ndarray) -> np.ndarray:
|
|
| 205 |
vec[:limit] = features[:limit]
|
| 206 |
return vec.reshape(1, -1)
|
| 207 |
|
| 208 |
-
|
| 209 |
def run_two_stage(features: np.ndarray, crop_rgb: np.ndarray) -> dict:
|
| 210 |
-
|
| 211 |
-
img_resized = cv2.resize(
|
| 212 |
-
img_array = np.expand_dims(img_resized, axis=0).astype("float32") / 255.0
|
|
|
|
| 213 |
|
| 214 |
-
prob
|
| 215 |
-
cls_idx
|
| 216 |
category = CLASSES[cls_idx]
|
| 217 |
cat_conf = prob if cls_idx == 1 else 1.0 - prob
|
| 218 |
|
| 219 |
-
# Stage 2: ุงุฎุชุงุฑ ุงูู
ูุฏูู ุงูุตุญ
|
| 220 |
model = mlp_letters if category == "letter" else mlp_numbers
|
| 221 |
feat_df = _align_features(model, features)
|
| 222 |
label = str(model.predict(feat_df)[0])
|
|
@@ -229,7 +229,6 @@ def run_two_stage(features: np.ndarray, crop_rgb: np.ndarray) -> dict:
|
|
| 229 |
"category_confidence": round(cat_conf, 4),
|
| 230 |
}
|
| 231 |
|
| 232 |
-
|
| 233 |
# โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
| 234 |
# Routes
|
| 235 |
# โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
|
|
| 205 |
vec[:limit] = features[:limit]
|
| 206 |
return vec.reshape(1, -1)
|
| 207 |
|
|
|
|
| 208 |
def run_two_stage(features: np.ndarray, crop_rgb: np.ndarray) -> dict:
|
| 209 |
+
img_gray = cv2.cvtColor(crop_rgb, cv2.COLOR_RGB2GRAY)
|
| 210 |
+
img_resized = cv2.resize(img_gray, (IMG_SIZE, IMG_SIZE))
|
| 211 |
+
img_array = np.expand_dims(img_resized, axis=(0, -1)).astype("float32") / 255.0
|
| 212 |
+
# shape: (1, 64, 64, 1) โ
|
| 213 |
|
| 214 |
+
prob = float(router_model_keras.predict(img_array, verbose=0)[0][0])
|
| 215 |
+
cls_idx = 1 if prob >= 0.5 else 0
|
| 216 |
category = CLASSES[cls_idx]
|
| 217 |
cat_conf = prob if cls_idx == 1 else 1.0 - prob
|
| 218 |
|
| 219 |
+
# Stage 2: ุงุฎุชุงุฑ ุงูู
ูุฏูู ุงูุตุญ
|
| 220 |
model = mlp_letters if category == "letter" else mlp_numbers
|
| 221 |
feat_df = _align_features(model, features)
|
| 222 |
label = str(model.predict(feat_df)[0])
|
|
|
|
| 229 |
"category_confidence": round(cat_conf, 4),
|
| 230 |
}
|
| 231 |
|
|
|
|
| 232 |
# โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
| 233 |
# Routes
|
| 234 |
# โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|