| --- |
| language: en |
| tags: |
| - pokemon |
| - card-grading |
| - image-classification |
| - onnx |
| metrics: |
| - accuracy |
| --- |
| |
| # Poke-Grader Defect Classifier |
|
|
| Fine-tune de `microsoft/swin-small-patch4-window7-224` para clasificar defectos en cartas Pokémon TCG. |
|
|
| ## Cabezas de clasificación |
|
|
| | Cabeza | Clases | |
| |---|---| |
| | `surface_scratch` | none / micro / light / medium / heavy | |
| | `corner_wear` | none / light / medium / heavy | |
| | `edge_whitening` | none / light / medium / heavy | |
|
|
| ## Métricas (mejor epoch: 28) |
|
|
| | Métrica | Valor | |
| |---|---| |
| | val_loss | 0.1163 | |
| | Exactitud surface | **93.3%** | |
| | Exactitud corners | **96.0%** | |
| | Exactitud edges | **99.8%** | |
| | **Exactitud media** | **96.4%** | |
| |
| Entrenado con **5000 cartas** (~mitad inglés, ~mitad japonés) durante **30 épocas** de fine-tuning. |
| |
| ## Uso (ONNX) |
| |
| ```python |
| import onnxruntime as ort |
| import numpy as np |
| |
| sess = ort.InferenceSession('card_defect_classifier.onnx') |
| # img: np.array float32, shape (1, 3, 224, 224), normalizado ImageNet |
| surface, corners, edges = sess.run(None, {'pixel_values': img}) |
| ``` |
| |
| Clases: `['none','micro','light','medium','heavy']` / `['none','light','medium','heavy']` / `['none','light','medium','heavy']` |
| |