OpenDroneMap (ODM) 完整参数参考手册
本文档整理了 ODM 所有的命令行参数、选项及其说明,来源于官方文档。可用于快速查阅和项目配置。
官网地址
https://docs.opendronemap.org/arguments/
核心处理流程控制
| 参数 | 类型/值 | 说明 | 默认值 |
|---|
--end-with | dataset, split, merge, opensfm, openmvs, odm_filterpoints, odm_meshing, mvs_texturing, odm_georeferencing, odm_dem, odm_orthophoto, odm_report, odm_postprocess | 在处理到指定阶段后停止。 | odm_postprocess |
--rerun | 同上 --end-with 的可选值 | 仅重新运行指定阶段并停止。 | 空 |
--rerun-from | 同上 --end-with 的可选值 | 从指定阶段开始重新处理。 | 空 |
--rerun-all | 标志 | 永久删除所有先前结果并重新运行整个处理流程。 | False |
--project-path | <路径> | 项目文件夹的路径。项目文件夹应包含每个数据集子文件夹,每个子文件夹需有 images 目录。 | - |
--name | <数据集名称> | 数据集的名称(即项目文件夹内的子文件夹名)。 | code |
输入与地理定位
| 参数 | 类型/值 | 说明 | 默认值 |
|---|
--gcp | <路径> | 地面控制点文件路径。格式需为:EPSG:<code> 或 <+proj定义> 后跟坐标和图像信息。 | None |
--geo | <路径> | 图像地理定位文件路径。包含相机中心坐标。格式需为:EPSG:<code> 或 <+proj定义> 后跟图像名、坐标、角度和精度。 | None |
--force-gps | 标志 | 即使存在 GCP,也强制使用图像 GPS EXIF 数据进行重建。 | False |
--use-exif | 标志 | 如果有 GCP 文件,使用 EXIF 信息而非 GCP 进行地理参考。 | False |
--camera-lens | auto, perspective, brown, fisheye, fisheye_opencv, spherical, equirectangular, dual | 手动设置相机投影类型,帮助改善几何畸变校正。 | auto |
--cameras | <JSON> | 使用从其他数据集计算的相机参数,而非重新计算。可指定 JSON 文件路径或 JSON 字符串。 | 空 |
--gps-accuracy | <正浮点数> | 为所有图像设置 GPS 精度(米)值。 | 3 |
--gps-z-offset | <浮点数> | 为 GPS 垂直轴(Z)设置偏移量(米),添加到 EXIF 海拔值中。不影响 GCP。 | 0 |
特征提取与匹配
| 参数 | 类型/值 | 说明 | 默认值 |
|---|
--feature-quality | ultra, high, medium, low, lowest | 设置特征提取质量。质量越高,特征越好,但内存和时间消耗更大。 | high |
--feature-type | akaze, dspsift, hahog, orb, sift | 选择关键点提取和描述符计算算法。 | dspsift |
--min-num-features | <整数> | 每张图像提取的最小特征数。 | 10000 |
--matcher-type | bow, bruteforce, flann | 匹配算法。FLANN 较慢但更稳定;BOW 更快;BRUTEFORCE 很慢但鲁棒。 | flann |
--matcher-neighbors | <正整数> | 基于 GPS 数据,仅与最近的 N 张图像进行匹配。设为 0 则使用三角测量法匹配。 | 0 |
--matcher-order | <正整数> | 基于文件名顺序,仅与最近的 N 张图像匹配。适用于视频提取的顺序图像。设为 0 禁用。 | 0 |
--rolling-shutter | 标志 | 开启卷帘快门校正。 | False |
--rolling-shutter-readout | <正整数> | 覆盖相机传感器的卷帘快门读取时间(毫秒)。设为 0 使用数据库值。 | 0 |
重建与三维模型
| 参数 | 类型/值 | 说明 | 默认值 |
|---|
--sfm-algorithm | incremental, triangulation, planar | 选择运动恢复结构算法。 | incremental |
--sfm-no-partial | 标志 | 不尝试合并部分重建(当图像重叠不足或孤立时)。 | False |
--mesh-octree-depth | <整数: 1-14> | 网格重建的八叉树深度。增大可获得更多顶点。推荐 8-12。 | 11 |
--mesh-size | <正整数> | 输出网格的最大顶点数。 | 200000 |
--pc-quality | ultra, high, medium, low, lowest | 设置点云质量。每提升一级,处理时间约增加 4 倍。 | medium |
--pc-filter | <正浮点数> | 移除偏离局部平均值 N 个标准差以上的点来过滤点云。设为 0 禁用。 | 5 |
--pc-sample | <正浮点数> | 在半径 N(米)内只保留一个点来过滤点云。设为 0 禁用采样。 | 0 |
--pc-skip-geometric | 标志 | 禁用几何估计。几何估计可提高精度,但在大数据集上可能不可用。 | False |
--skip-3dmodel | 标志 | 跳过完整 3D 模型生成。只需 2D 结果时可节省时间。 | False |
--use-3dmesh | 标志 | 使用完整的 3D 网格而非 2.5D 网格计算正射影像。 | False |
--use-fixed-camera-params | 标志 | 在光束法平差中关闭相机参数优化。 | False |
--use-hybrid-bundle-adjustment | 标志 | 每添加一张图像运行局部平差,每 100 张运行全局平差。加速大型数据集重建。 | False |
点云、DEM 与正射影像
| 参数 | 类型/值 | 说明 | 默认值 |
|---|
| DEM 相关 | | | |
--dsm | 标志 | 生成 DSM(数字表面模型)。配合 --dem* 参数微调。 | False |
--dtm | 标志 | 生成 DTM(数字地形模型)。配合 --dem* 和 --smrf* 参数微调。 | False |
--dem-resolution | <浮点数> | DSM/DTM 分辨率(厘米/像素)。值受 GSD 估计限制。 | 5 |
--dem-decimation | <正整数> | 生成 DEM 前对点云进行抽稀。1 为无抽稀。 | 1 |
--dem-gapfill-steps | <正整数> | 填充空洞的步骤数。设为 0 禁用填充。 | 3 |
--dem-euclidean-map | 标志 | 为每个 DEM 计算欧几里得栅格图,报告每个像元到 NODATA 的距离。 | False |
| 正射影像相关 | | | |
--orthophoto-resolution | <浮点数 > 0> | 正射影像分辨率(厘米/像素)。值受 GSD 估计限制。 | 5 |
--orthophoto-compression | JPEG, LZW, PACKBITS, DEFLATE, LZMA, NONE | 设置正射影像的压缩方式。 | DEFLATE |
--orthophoto-cutline | 标志 | 生成正射影像裁剪区域的边界多边形,用于无缝镶嵌。 | False |
--orthophoto-kmz | 标志 | 生成 Google Earth (KMZ) 格式的正射影像。 | False |
--orthophoto-png | 标志 | 生成 PNG 格式的正射影像。 | False |
--orthophoto-no-tiled | 标志 | 生成条带式 GeoTIFF(非切片)。 | False |
--fast-orthophoto | 标志 | 跳过密集重建和 3D 模型,直接从稀疏重建生成正射影像。 | False |
--skip-orthophoto | 标志 | 跳过正射影像生成。 | False |
| 点云导出 | | | |
--pc-las | 标志 | 导出 LAS 格式的点云。 | False |
--pc-copc | 标志 | 以云优化点云 (COPC) 格式保存点云。 | False |
--pc-csv | 标志 | 导出 CSV 格式的点云。 | False |
--pc-ept | 标志 | 以 Entwine Point Tile (EPT) 格式导出点云。 | False |
--pc-classify | 标志 | 对点云进行分类。可通过 --dem-* 参数调整行为。 | False |
--pc-rectify | 标志 | 对点云进行地面校正,重新分类错误的地面点并填充空洞。 | False |
输出与优化
| 参数 | 类型/值 | 说明 | 默认值 |
|---|
--cog | 标志 | 创建云优化 GeoTIFF (COG) 而非普通 GeoTIFF。 | False |
--tiles | 标志 | 生成适用于 Leaflet/OpenLayers 的静态切片(正射影像和 DEM)。 | False |
--3d-tiles | 标志 | 生成 OGC 3D Tiles 输出。 | False |
--gltf | 标志 | 生成单文件二进制 glTF (GLB) 纹理模型。 | False |
--build-overviews | 标志 | 为正射影像构建概览图,以便 QGIS 等程序更快显示。 | False |
--copy-to | <路径> | 处理完成后将输出结果复制到该文件夹。 | - |
--optimize-disk-space | 标志 | 删除重中间文件以优化磁盘空间。会影响从中间阶段重启的能力。 | False |
--max-concurrency | <正整数> | 各种处理中使用的最大进程数。 | 4 |
--ignore-gsd | 标志 | (不推荐) 忽略地面采样距离估计。 | False |
--skip-report | 标志 | 跳过 PDF 报告生成。 | False |
--version | - | 显示版本号并退出。 | - |
--help | - | 显示帮助信息并退出。 | - |
高级/实验性功能
| 参数 | 类型/值 | 说明 | 默认值 |
|---|
| 边界与裁剪 | | | |
--boundary | <GeoJSON> | GeoJSON 多边形,限制重建区域。 | 空 |
--auto-boundary | 标志 | 根据相机位置自动设置边界,排除远处背景伪影。 | False |
--auto-boundary-distance | <正浮点数> | 与 --auto-boundary 同用,指定相机位置到边界外缘的距离。 | 0 |
--crop | <正浮点数> | 自动裁剪图像输出,在数据集边界周围创建平滑缓冲区,缩减 N 米。 | 3 |
| 分割与合并 | | | |
--split | <正整数> | 分割大型数据集时,每个子模型平均包含的图像数。 | 999999 |
--split-overlap | <正整数> | 子模型之间的重叠区域半径(米)。 | 150 |
--split-image-groups | <路径> | 控制图像如何分割到组的文件路径。 | None |
--merge | all, pointcloud, orthophoto, dem | 在分割数据集合并步骤中,选择要合并的内容。 | all |
--merge-skip-blending | 标志 | 正射影像合并时,跳过昂贵的融合操作。 | False |
--sm-cluster | <URL> | ClusterODM 实例的 URL,用于在多节点上并行分发分割-合并工作流。 | None |
--sm-no-align | 标志 | 在分割-合并中跳过子模型对齐。GPS 足够好时使用。 | False |
| 蒙版与剔除 | | | |
--bg-removal | 标志 | (实验性) 使用 AI 自动计算图像蒙版以移除背景。 | False |
--sky-removal | 标志 | (实验性) 使用 AI 自动计算图像蒙版以移除天空。 | False |
| 对齐 | | | |
--align | <路径> | 指向 GeoTIFF DEM 或 LAS/LAZ 点云,重建输出将自动对齐到该文件。 | None |
| 其他 | | | |
--smrf-scalar, --smrf-slope, --smrf-threshold, --smrf-window | <正浮点数> | 简单形态学滤波(用于 DTM)的参数:高程标量、坡度、高程阈值、窗口半径。 | 1.25, 0.15, 0.5, 18.0 |
--radiometric-calibration | none, camera, camera+sun | 对多光谱/热像仪图像进行辐射校正。 | none |
--primary-band | <字符串> | 处理多光谱数据集时,指定用于重建的主波段名称。 | auto |
--skip-band-alignment | 标志 | 多光谱数据集图像已对齐时,跳过自动对齐。 | False |
--video-limit | <正整数> | 从视频文件中提取处理的最大帧数。设为 0 不限。 | 500 |
--video-resolution | <正整数> | 提取视频帧的最大输出分辨率(像素)。 | 4000 |
--texturing-keep-unseen-faces | 标志 | 在网格中保留任何相机都未看到的表面。 | False |
--texturing-single-material | 标志 | 生成 OBJ 时使用单一材质和单一纹理文件。 | False |
--texturing-skip-global-seam-leveling | 标志 | 跳过所有图像的颜色归一化(处理辐射数据时有用)。 | False |
--no-gpu | 标志 | 即使可用,也不使用 GPU 加速。 | False |