OWLViT2 / README.md
Nnow2024's picture
Update README.md
069bc9f verified
---
base_model:
- google/owlv2-base-patch16-finetuned
pipeline_tag: zero-shot-object-detection
tags:
- owlv2
---
# OWLv2 on AXERA NPU
本仓库基于 [google/owlv2-base-patch16-finetuned](https://huggingface.co/google/owlv2-base-patch16-finetuned),面向 AXERA NPU 平台完成模型移植、量化部署与精度验证。
项目重点包括:
- OWLv2 模型适配与部署落地
- 面向 AXERA 工具链的量化流程
- 板端推理联调
- 与原始框架结果的精度对齐与验证
详细使用方式请参考 [HOW_TO_USE.md](./HOW_TO_USE.md)。
## 1. 原始模型仓库简介
[OWLv2](https://huggingface.co/google/owlv2-base-patch16-finetuned) 是 Google 提出的开放词汇目标检测模型。与传统只能识别固定类别的检测器不同,OWLv2 可以结合文本提示词完成零样本目标检测,适合需要灵活扩展类别的场景。
`google/owlv2-base-patch16-finetuned` 是 Hugging Face 上发布的基础版本之一,通常用于:
- 文本条件目标检测
- 开放词汇/零样本检测
- 模型部署与效果验证
原始模型通常以“图像 + 文本查询”作为输入,输出候选框、类别匹配结果和对应置信度。
## 2. 本仓库说明
本仓库不是对 OWLv2 进行重新训练,而是围绕 AXERA NPU 平台打通从原始模型到端侧部署的完整链路,主要包含:
- 模型准备与格式转换
- 量化与编译
- 板端推理验证
- 精度对比与结果分析
如果需要查看完整操作步骤、环境依赖、命令示例和验证流程,请直接阅读 [HOW_TO_USE.md](./HOW_TO_USE.md)。
## 3. 仓库结构
以下为本仓库核心内容示意,具体请以实际文件为准:
```text
.
├── README.md # 项目简介、目录说明与演示
├── HOW_TO_USE.md # 环境准备、模型转换、量化、部署与验证说明
└── ... # 其余与 AXERA NPU 适配、量化和精度验证相关的脚本/资源
```
如果仓库中包含导出脚本、量化配置、测试样例或结果文件,通常可按以下职责理解:
- `export / convert`:原始模型导出与前后处理适配
- `quantize / build`:量化、编译与部署产物生成
- `demo / samples`:推理示例与可视化结果
- `eval / test`:精度验证与结果对比
## 4. 使用流程概览
完整步骤请参考 [HOW_TO_USE.md](./HOW_TO_USE.md)。一般流程如下:
1. 准备 Python、Transformers 与 AXERA 相关环境
2. 获取或导出 OWLv2 模型
3. 按 AXERA 工具链要求完成量化与编译
4. 在 AXERA NPU 平台运行推理
5. 对比原始框架与 NPU 输出,完成精度验证
## 5. 演示内容
> 以下内容用于 README 展示,命令、日志与指标请以 `HOW_TO_USE.md` 和仓库实际结果为准。
### 5.1 文本提示词检测示意
输入图像中希望检测的目标类别:
```text
["person", "car", "bus"]
```
示例输出:
```text
[INFO] Detected: person | score=0.92 | bbox=[56, 43, 188, 420]
[INFO] Detected: car | score=0.88 | bbox=[210, 260, 472, 418]
[INFO] Detected: bus | score=0.81 | bbox=[489, 120, 910, 430]
```
### 5.2 AXERA NPU 部署流程示意
```text
PyTorch / Transformers
├── 模型导出
├── 量化校准
├── AXERA 编译部署
└── 板端推理与精度验证
```
### 5.3 精度验证示意
| 验证项 | 说明 |
|---|---|
| 框位置对齐 | 对比原始框架与 NPU 输出框坐标是否一致或接近 |
| 置信度对齐 | 关注量化前后 score 排序与数值偏移 |
| 类别匹配 | 检查文本提示词对应的检测类别是否正确 |
| 量化损失 | 评估 INT8 部署后精度下降是否在可接受范围内 |
### 5.4 性能统计
| 模型版本 | 平台 | 推理时间 (ms) |
|---|---|---|
| OWLv2 image 4cls | 650N | 205.8 |
| OWLv2 text 4cls | 650N | 2.16 |
| OWLv2 post 4cls | 650N | 34.38 |
## 6. 说明
- 本仓库聚焦于 `google/owlv2-base-patch16-finetuned` 在 AXERA NPU 平台上的移植与验证。
- 详细环境、命令、量化参数和板端操作步骤请查看 [HOW_TO_USE.md](./HOW_TO_USE.md)。
- 若需补充真实演示图、日志和精度表,可直接在本 README 的演示章节中追加。
## 7. 参考链接
- Hugging Face 模型页:<https://huggingface.co/google/owlv2-base-patch16-finetuned>
- 使用说明:[`HOW_TO_USE.md`](./HOW_TO_USE.md)