UFM(UniFlowMatch)是 UniFlowMatch 团队开源的图像匹配/光流估计模型,
基于 DINOv2 编码器 + 光流/匹配头,输入图像对输出匹配结果。
本仓库为 华为昇腾 NPU(Ascend 910B 系列)推理适配版,支持 npu:0 一键推理。
| 项目 | 说明 |
|---|---|
| 模型 | infinity1096/UFM-Refine |
| 架构 | UniFlowMatchClassificationRefinement(DINOv2 + 光流/分类细化头) |
| 规模 | 428.3 M 参数(FP32) |
| 输入 | 图像对 (1, 3, 448, 448) × 2 |
| 输出 | flow / confidence / covisible mask |
| 任务 | 图像匹配 / 光流估计 |
| 原始仓库 | UniFlowMatch/UFM |
| License | Apache-2.0 |
| 项目 | 要求 |
|---|---|
| 硬件 | Ascend 910B 系列(≥1 卡,本仓库基于 910B4 验证) |
| CANN | ≥ 8.0 |
| Python | 3.10 – 3.11 |
| torch / torch_npu | 2.9.0 / 2.9.0.post2 |
| 依赖库 | uniflowmatch 源码 + UniCeption 子模块 + DINOv2 backbone |
注意:本仓库不包含模型权重文件(
model.safetensors约 1.8GB) 与 DINOv2 backbone(dinov2_vitl14_pretrain.pth 约 1.13GB)。
权重请从以下镜像获取:
curl -L -C - -A "Mozilla/5.0" -o model.safetensors \
"https://hf-mirror.com/infinity1096/UFM-Refine/resolve/main/model.safetensors"python3 inference.py --device npu [--model_path ./model_src]$ python3 inference.py --device npu
[info] device = npu:0
[info] model arch : UniFlowMatch (DINOv2 + 光流/匹配头)
参数: 428.3 M
[info] input : img1 (1, 3, 448, 448) + img2 (1, 3, 448, 448)
[info] inference done : 642.5 ms on npu
[info] 输出类型 : UFMOutputInterface
[info] 设备确认 : npu:0
[PASS] UFM-Refine NPU inference OK~/.cache/torch/hub/checkpoints/,uniflowmatch 会从 torch hub 缓存加载。local_files_only=True 完全离线。