Instructions to use mlx-community/BOPBTL-scratch-detection-fp32-mlx with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use mlx-community/BOPBTL-scratch-detection-fp32-mlx with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] huggingface-cli download --local-dir BOPBTL-scratch-detection-fp32-mlx mlx-community/BOPBTL-scratch-detection-fp32-mlx
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Atomic Chat
metadata
license: mit
tags:
- mlx
- image-to-image
- scratch-detection
- photo-restoration
library_name: mlx
BOPBTL-scratch-detection-fp32-mlx
The scratch/defect detector from Microsoft's Bringing Old Photos Back to Life (microsoft/Bringing-Old-Photos-Back-to-Life), converted for MLX: grayscale photo in → per-pixel damage probability out.
UNet(in=1, out=1, depth=4, conv_num=2, wf=6, batch_norm, up_mode="upsample", antialiasing=True), 37,626,177 params, fp32 (150.6 MB — the released 1.90 GiB checkpoint minus its Adam state).- Keys are the original torch
state_dictnames (NCHW conv layout), including BatchNorm running stats and the BlurPoolfiltbuffers — consumers transpose per their framework's convention. - Reference behaviour: short-side-256 (/16-aligned) BICUBIC resize, grayscale, Normalize([.5],[.5]);
sigmoid(out) ≥ 0.4is upstream's mask threshold.
Swift consumer: xocialize/mlx-bopbtl-swift —
parity-locked at 119.8 dB worst vs fp32 PyTorch (and the reason its forward runs on the CPU
stream is documented there: a measured Metal fp32 conv2d divergence window, not a preference).
License
MIT — the upstream LICENSE file, all source headers, and README §License (which extends MIT to "the codes and the pretrained model" verbatim). The training dataset was never released; the model cannot be retrained or audited.