Boxer CLI参数速查表:从阈值到精度,所有命令行选项一次讲透

【免费下载链接】boxer

Code for the Boxer research paper

项目地址:https://gitcode.com/gh_mirrors/boxer13/boxer
点击查看免费下载

Boxer 是一个将开放世界 2D 检测框"抬升"(lifting)为 3D 方向包围盒(OBB)的开源项目,已发表于 ECCV 2026。本文一次性讲透 Boxer 主入口 run_boxer.py 与三个可视化脚本的全部 CLI 参数:如何调整 2D/3D 置信度阈值、强制推理精度、切换摄像头流,以及在线跟踪与离线融合怎么选,可直接当速查手册用。

1️⃣ 快速上手:3 条命令跑通

git clone https://gitcode.com/gh_mirrors/boxer13/boxer cd boxer bash scripts/download_ckpts.sh # 下载 BoxerNet / DINOv3 / OWLv2 模型到 ckpts/ bash scripts/download_aria_data.sh # 下载 3 个 Project Aria 示例序列 python run_boxer.py --input nym10_gen1 --max_n=90 --track

--input的值会自动识别数据集类型:scene0084_02→ ScanNet,ca1m-val-42898570→ CA-1M,SUNRGBD→ Omni3D,其余按 Project Aria 序列处理(先查sample_data/,再查~/boxy_data/)。

2️⃣ run_boxer.py 完整参数表

所有定义集中在 run_boxer.py 的argparse块中。按用途分组如下:

📥 输入与数据流

参数默认值说明
--input~/boxy_data/anytable11输入序列路径(Aria / ScanNet / CA-1M / Omni3D)
--camerargbAria 摄像头流,可选rgb、slaml、slamr
--pinhole关把鱼眼图像校正为针孔相机模型
--gt2d关不跑 2D 检测器,改用数据集自带 GT 框(适合 CA-1M / Omni3D)
--no_sdp关关闭半稠密点云(SDP)输入,可对比有无深度时的效果

🎯 检测与阈值(最常用)

参数默认值说明
--detectorowl2D 检测器,目前仅支持 OWLv2(owl/owl_wrapper.py)
--labelslvisplus逗号分隔的文本提示词,或内置类别表名
--thresh2d0.252D 检测置信度阈值,调低召回更多框
--thresh3d0.53D 框置信度阈值,调低保留更多低分 3D 框
--detector_hw9602D 检测器输入边长,调小更快、调大更准

--labels的用法很灵活:

# 使用内置类别表 lvisplus(读取 owl/lvisplus_classes.csv) python run_boxer.py --input hohen_gen1 --labels=lvisplus # 自定义文本提示 python run_boxer.py --input hohen_gen1 --labels=chair,table,lamp # 只写 --labels 不带值 = 空提示词列表 python run_boxer.py --input hohen_gen1 --labels

内置类别表由 utils/taxonomy.py 的load_text_labels加载,规则是:若owl/<名称>_classes.csv存在则读取整表,否则按你输入的字符串原样使用。

🔄 跟踪与融合(后处理二选一)

参数说明
--track开启在线 3D 跟踪,边走边估计稳定的 3D 框,输出*_tracked.csv
--fuse跑完后执行离线 3D 融合(Hungarian 匹配,见 utils/fuse_3d_boxes.py),合并多帧重复框

⚠️ 两个参数互斥,同时传入会直接报错--fuse and --track are mutually exclusive。另外对 Omni3D(单张图片数据集)两者都会自动禁用并打印警告。

💾 输出、缓存与帧控制

参数默认值说明
--output_diroutput/结果输出根目录,实际写入output/<序列名>/
--write_nameboxer输出文件前缀,如boxer_3dbbs.csv
--skip_viz关关闭无头可视化,只写 CSV,跑得更快
--no_csv关不写任何 CSV 结果
--cache2d关跳过 OWL,直接从owl_2dbbs.csv读 2D 框
--cache3d关跳过检测 + BoxerNet,只重跑后处理(会自动隐含--cache2d)
--skip_n/--start_n/--max_n1/1/99999每 N 帧取一帧 / 从第 N 帧开始 / 最多跑 N 帧

⚡ 性能、精度与硬件

参数默认值说明
--ckptckpts/boxernet_hw960in2x6d768-c88128f8.ckptBoxerNet 权重路径
--force_precisionauto强制推理精度float32或bfloat16;CUDA 默认自动启用 bf16
--force_cpu关强制 CPU 推理(无 GPU / 调试时用)

设备选择逻辑:优先mps(Mac),其次cuda,否则回退cpu,加--force_cpu则跳过前两者。

3️⃣ 三个查看器脚本的参数

view_*.py系列共享一组公共参数,定义在 utils/viewer_3d.py 的add_common_args中:

参数说明
--input/--output_dir/--write_name同 run_boxer.py,用于定位已有的 CSV 结果
--skip_n/--start_n/--max_n对已加载 OBB 做子采样(--max_n 0表示全部加载)
--window_w/--window_h初始窗口尺寸(0 = 默认)
--init_color_mode/--init_rgb_text_scale/--init_image_panel_width初始视图配色、标签字号、图像面板宽度
--scannet_scene/--scannet_annotation_pathScanNet 场景目录与标注文件路径
--force_precision/--force_cpu/--ckpt与主入口一致

各脚本的特色参数:

  • view_prompt.py:交互式演示,在窗口内画 2D 框 + 输入文本提示 OWL 检测,是最直观的试玩入口;
  • view_fusion.py:查看离线融合后的 3D 框,建议先跑完 Demo #1 生成 CSV;
  • view_tracker.py:在线跟踪回放,支持--autoplay(自动播放)、--init_follow(跟随视角)、--init_follow_above(默认 6.0 米)、--record_fps(录屏帧率,0 = 自动)、--bb2d_csv(指定 2D 框 CSV 文件名)等。

python view_prompt.py --input nym10_gen1 # 交互式提示演示 python view_fusion.py --input nym10_gen1 # 查看融合结果 python view_tracker.py --input nym10_gen1 --autoplay # 跟踪回放

4️⃣ 结果文件在哪里

每次运行(未加--no_csv)会在output/<序列名>/下生成:

  • boxer_3dbbs.csv—— 逐帧 3D 包围盒
  • owl_2dbbs.csv—— 逐帧 2D 检测结果
  • boxer_3dbbs_tracked.csv—— 加了--track时的跟踪框
  • boxer_viz_final.mp4—— 可视化视频(未加--skip_viz时),逐帧图如:

5️⃣ 常见坑与 FAQ

  • --fuse和--track不能同时开,脚本会直接报错退出;
  • --cache3d会静默开启--cache2d(没有 2D 缓存就没法重跑后处理);
  • --thresh2d代码默认值是 0.25,如果 README 表格与代码不一致,以 run_boxer.py 源码为准;
  • --labels单独出现不带值表示空列表,常用于纯--gt2d调试流程;
  • MPS 不支持torch.autocast,所以 Mac 上--force_precision实际不会生效(代码中已做特判);
  • Omni3D 数据上--fuse/--track无效,因为它是单张图片而非视频序列;
  • 想复现更快实验?组合拳:--skip_viz --max_n 90 --cache2d可把重计算环节全部跳过。

更多细节可参考 README.md 中的 CLI Reference 表格与 Demo #1~#7 完整流程,测试用例见 tests/ 目录。

【免费下载链接】boxer

Code for the Boxer research paper

项目地址:https://gitcode.com/gh_mirrors/boxer13/boxer
点击查看免费下载
上一篇:Claw Compactor 如何自动识别 16 种编程语言?Cortex 内容路由原理图解
下一篇:Z.ai API平台调用GLM-5.3-Flash-BF16指南:三步配置1M上下文多模态大模型服务

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考