w
gcw_uQ09W7jl/prithivMLmods-Watermark-Detection-SigLIP2-NPU
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

prithivMLmods/Watermark-Detection-SigLIP2 on Ascend NPU

1. 简介

本项目将 ModelScope 上的 prithivMLmods/Watermark-Detection-SigLIP2 水印检测模型适配到昇腾 NPU (Ascend910) 上运行。

  • 模型来源: ModelScope
  • 架构: SiglipForImageClassification
  • 任务: 单标签图像二分类(有水印 / 无水印)
  • 输入尺寸: 224 x 224 x 3
  • 权重格式: model.safetensors (~355MB)
  • 适配方式: ModelScope snapshot_download 本地下载 + local_files_only=True 加载

2. 验证环境

项目版本/型号
NPUAscend910
CANN8.5.1
torch2.x
torch_npu对应 CANN 8.5.1
transformers4.50.0

3. 推理运行

pip install -r requirements.txt
python inference.py

推理结果 (NPU):

Predicted label: No Watermark
Logits: [[0.6695, -0.2639]]
Probabilities:
  No Watermark: 0.7178
  Watermark: 0.2822

日志保存在 logs/inference.log。

4. 精度验证

对单张测试输入进行 CPU 与 NPU 一致性验证:

指标数值
max_abs_error0.000286
mean_abs_error0.000273
relative_error0.0585%
cosine_similarity1.000000
threshold1.0%
结果PASS

5. 性能参考

在 Ascend910 单卡 NPU 上的性能表现:

指标数值
avg_latency6.372 ms
min_latency6.149 ms
max_latency6.520 ms
p50_latency6.370 ms
p90_latency6.502 ms
p95_latency6.511 ms
throughput156.93 images/sec

测试配置:warmup 2 次,正式测试 10 次,输入尺寸 224x224。

6. 精度评测说明

本项目包含单输入 smoke consistency 验证,非官方完整验证集评测。详细指标见第 4 节。

7. 自验证截图

见 screenshots/self_verification.txt 与 screenshots/self_verification.png。

8. 日志文件

文件内容
logs/env_check.logNPU 环境检查结果
logs/inference.logNPU 推理输出
logs/accuracy.logCPU-NPU 精度一致性检查
logs/benchmark.logNPU 性能基准测试

9. 注意事项

  1. 权重通过 ModelScope snapshot_download 本地缓存加载,运行时需确保本地缓存存在或联网下载。
  2. 模型推理 dtype 为 float32。
  3. NPU 上运行时可能会出现 Device do not support double dtype now 的 warning,不影响结果正确性。
  4. 测试图片为随机下载/占位图,仅用于 smoke test。

10. 标签

#NPU #Ascend #Ascend910 #ModelScope #WatermarkDetection #SigLIP