一个用于自动驾驶场景数据标注和审核的可视化工具,支持场景感知、决策分析和标注管理。
- 场景可视化:查看场景图片和 JSON 数据
- 数据标注:修改并保存标注数据
- 审核管理:标记场景通过/未通过
- 差异对比:对比原始数据与标注数据
- 汇总导出:生成数据集汇总并导出 Excel
- Python: 3.10+
- Node.js: 16+
- 包管理器: npm 或 yarn
git clone <repository-url>
cd vqa-tool-v1.8# 创建虚拟环境(推荐使用 conda)
conda create -n vqa-env python=3.10
conda activate vqa-env
# 进入后端目录
cd backend
# 安装 Python 依赖
pip install -r requirements.txt# 进入前端目录
cd ../vqa-frontend
# 安装 Node.js 依赖
npm install编辑 backend/config.json,设置数据目录路径:
{
"data_root": "../data"
}📁
data_root支持相对路径(相对于backend目录)或绝对路径
启动后端(终端 1):
cd backend
python run.py启动前端(终端 2):
cd vqa-frontend
npm run dev打开浏览器访问:http://localhost:5174
将数据放置在配置的 data_root 目录下:
data/
├── dataset_1/ # 数据集目录
│ ├── anno_all_xxx.json # 场景 JSON 文件
│ ├── image_xxx.jpg # 场景图片文件
│ └── annotations/ # 标注结果(自动生成)
│ ├── anno_all_xxx.json # 已标注的数据
│ └── _review_status.json # 审核状态
├── dataset_2/
│ └── ...
命名规则:
- JSON 和图片文件名中需包含相同的数字 ID(时间戳)
- 例如:
anno_all_REQ-1766132304865.json和image_REQ-1766132304865.jpg
| 配置项 | 环境变量 | 说明 |
|---|---|---|
| 数据目录 | DATA_ROOT |
数据根目录路径 |
| 端口 | PORT |
后端服务端口,默认 5001 |
| Debug 模式 | FLASK_DEBUG |
设为 1 开启调试模式 |
| CORS 源 | CORS_ORIGINS |
允许的跨域源,多个用逗号分隔 |
示例:
export DATA_ROOT=/path/to/data
export PORT=5001
export FLASK_DEBUG=0
python run.py创建 .env 文件(可选):
# 指定后端 API 地址(默认自动检测)
VITE_API_BASE=http://127.0.0.1:5001- 检查后端是否正常启动
- 确认
config.json中的数据目录路径正确 - 查看浏览器控制台是否有错误
本工具已优化支持大数据集:
- 超时时间:2 分钟
- 支持分页加载
- 60 秒缓存
如仍超时,可调整 vqa-frontend/src/api/http.js 中的 timeout 值。
# 后端使用 Gunicorn
pip install gunicorn
gunicorn -w 4 -b 0.0.0.0:5001 "app.app:create_app()"
# 前端构建静态文件
cd vqa-frontend
npm run build
# 使用 Nginx 托管 dist/ 目录MIT License