|
Download README.md from FlanChanXwO/phpwind-captcha-ocr: direct link, hf CLI and curl.
- Browser
- Download file 4.66 kB
-
https://huggingface.co/FlanChanXwO/phpwind-captcha-ocr/resolve/main/README.md
- Command line
-
hf download hf://FlanChanXwO/phpwind-captcha-ocr/README.md
-
curl -L -o README.md https://huggingface.co/FlanChanXwO/phpwind-captcha-ocr/resolve/main/README.md
4.66 kB
| language: | |
| - en | |
| license: agpl-3.0 | |
| library_name: onnxruntime | |
| tags: | |
| - captcha | |
| - ocr | |
| - cnn | |
| - onnx | |
| - phpwind | |
| pipeline_tag: image-to-text | |
| model_type: phpwind-captcha-ocr | |
| metrics: | |
| - name: validation accuracy | |
| type: accuracy | |
| value: 0.8861 | |
| # PHPWind Captcha OCR | |
| [](https://huggingface.co/FlanChanXwO/phpwind-captcha-ocr) | |
| [](https://onnx.ai/) | |
| [](https://github.com/alibaba/phpwind) | |
| [](LICENSE) | |
| An ONNX OCR model trained on four-digit numeric captcha images from one legacy | |
| PHPWind deployment. It runs entirely on the local machine: no external API or | |
| GPU is required. | |
| **PHPWind reference implementation**: [alibaba/phpwind](https://github.com/alibaba/phpwind) | |
| contains the `PwVerifyCode` and `PwGDCode` classes targeted by this model. | |
| **中文文档**: [README_zh.md](README_zh.md) | |
|  | |
| > **Answer for the captcha shown above:** `9125` | |
| ## Scope and responsible use | |
| This model is intended for PHPWind site operators, developers, and researchers | |
| working with PHPWind deployments they own or are explicitly authorized to test. | |
| Use it for local integration tests, accessibility research, or evaluation of | |
| your own captcha implementation. Do not use it to automate account logins or | |
| bypass access controls. | |
| Different PHPWind versions and custom themes can generate visually different | |
| captchas. Validate on representative, authorized samples before deployment. | |
| ## Version support | |
| This checkpoint was trained only on four-digit captcha images from a target | |
| deployment whose footer displayed `v0.7β`. This is an observed deployment | |
| label, **not** a claim about an official PHPWind release version. | |
| | Deployment or version label | Status | Evidence | Notes | | |
| |---|---|---|---| | |
| | Target deployment — footer label `v0.7β` | Training scope | 997 manually labelled images; 88.61% held-out validation accuracy | The only visual configuration represented in the training and reference evaluation data. | | |
| | Other PHPWind releases, forks, themes, or captcha generators | Unverified | No version-specific evaluation | Validate with authorized representative samples; fine-tune if the visual distribution differs. | | |
| ## Quick start | |
| Install the runtime: | |
| ```bash | |
| pip install onnxruntime pillow numpy | |
| ``` | |
| Run local inference on a captcha image you are authorized to process: | |
| ```python | |
| import numpy as np | |
| import onnxruntime as ort | |
| from PIL import Image | |
| session = ort.InferenceSession("model.onnx", providers=["CPUExecutionProvider"]) | |
| def predict_captcha(path: str) -> str: | |
| image = Image.open(path).convert("RGB").resize((160, 64), Image.BILINEAR) | |
| inputs = np.asarray(image, dtype=np.float32).transpose(2, 0, 1)[None] / 255.0 | |
| logits = session.run(None, {"input": inputs})[0] | |
| return "".join(str(int(logits[0, position].argmax())) for position in range(4)) | |
| print(predict_captcha("captcha.png")) | |
| ``` | |
| ## Model interface | |
| | Item | Value | | |
| |---|---| | |
| | Input | `input`: `[batch, 3, 64, 160]`, `float32`, RGB values in `[0, 1]` | | |
| | Output | `logits`: `[batch, 4, 10]`; argmax per position gives one digit | | |
| | Preprocessing | RGB → resize to `160 × 64` (bilinear) → divide by `255` | | |
| | Format | ONNX, opset 18 | | |
| | Runtime | CPU supported; no GPU requirement | | |
| ## Evaluation | |
| The published checkpoint reached **88.61% validation accuracy** on a held-out | |
| split of 997 manually labelled images from the target `v0.7β` footer-label | |
| deployment. This is a model-card reference metric, not a guarantee for another | |
| PHPWind version, theme, or deployment. See [the evaluation | |
| protocol](docs/en/EVALUATION.md) for the scope and reproducibility requirements. | |
| ## Documentation | |
| - [Inference guide](docs/en/INFERENCE.md) — Python and Go integration details | |
| - [Training and fine-tuning](docs/en/TRAINING.md) — data preparation and model training | |
| - [Evaluation](docs/en/EVALUATION.md) — offline validation protocol | |
| - [Documentation index](docs/en/README.md) | |
| ## Training data and license | |
| The checkpoint was trained from scratch with a position-preserving CNN on 997 | |
| manually labelled images. For adaptation, use only captcha images from PHPWind | |
| deployments you operate or are authorized to evaluate. | |
| This project is licensed under [GNU AGPL-3.0](LICENSE). Modified or networked | |
| derivative works must meet the license's corresponding-source requirements. | |