人工智能计算机视觉深度学习自动驾驶【免费下载链接】mmdetection3dOpenMMLabs next-generation platform for general 3D object detection.项目地址https://gitcode.com/gh_mirrors/mm/mmdetection3d点击查看免费下载本篇指南围绕 MMDetection3D 官方 FAQ 文档展开聚焦两类高频问题一是 MMEngine、MMCV、MMDetection 与 MMDetection3D 的版本兼容矩阵及各类安装报错的解决方案二是点云标注工具的选择。文中结合当前仓库源码如 mmdet3d/init.py 中的版本断言、requirements/mminstall.txt 的依赖声明、tools/dataset_converters/nuscenes_converter.py 的第三方库依赖逐一印证每个报错背后的原理读完即可自主排查环境问题并完成点云数据标注方案选型。一、版本兼容性MMDetection3D 与三大 OpenMMLab 组件的版本矩阵MMDetection3D 1.x 系列建立在 MMEngine、MMCV 与 MMDetection 之上三者任一版本不匹配都会在import mmdet3d时直接抛出断言错误。官方 FAQ 给出的兼容版本矩阵如下MMDetection3D 版本MMEngine 版本MMCV 版本MMDetection 版本mainmmengine0.8.0, 1.0.0mmcv2.0.0rc4, 2.2.0mmdet3.0.0rc5, 3.4.0v1.4.0mmengine0.8.0, 1.0.0mmcv2.0.0rc4, 2.2.0mmdet3.0.0rc5, 3.4.0v1.3.0mmengine0.8.0, 1.0.0mmcv2.0.0rc4, 2.2.0mmdet3.0.0rc5, 3.3.0v1.2.0mmengine0.8.0, 1.0.0mmcv2.0.0rc4, 2.1.0mmdet3.0.0, 3.2.0v1.1.1mmengine0.7.1, 1.0.0mmcv2.0.0rc4, 2.1.0mmdet3.0.0, 3.1.0当前仓库的 mmdet3d/version.py 中__version__ 1.4.0对应上表中 v1.4.0 一行。需要说明的是该表格针对 1.x 系列如果你需要安装更早的 mmdet3d-v1.0.0rcx 系列应查阅其对应版本的兼容文档涉及 MMSegmentation 的版本组合按历史版本的说明选择 MMCV、MMDetection 与 MMSegmentation 的组合避免安装报错。1.1 版本断言在源码中的实现为什么版本不匹配会直接报错原因是 MMDetection3D 在包导入阶段就做了硬性检查。mmdet3d/init.py 中定义了三个版本区间mmcv_minimum_version 2.0.0rc4 mmcv_maximum_version 2.2.0 mmengine_minimum_version 0.8.0 mmengine_maximum_version 1.0.0 mmdet_minimum_version 3.0.0rc5 mmdet_maximum_version 3.4.0随后通过digit_version解析已安装的版本并执行断言任何一项不满足都会抛出形如AssertionError: MMCVxxx is used but incompatible. Please install mmcv2.0.0rc4, 2.2.0.的异常。这就是 FAQ 中提到的AssertionError: MMCVxxx is used but incompatible. Please install mmcvxxx, xxx.报错的确切来源。同理ConvWS is already registered in conv layer这类“重复注册”错误也往往是因为环境里同时存在多个版本的 MMDetection 或 MMCV 被重复导入所致本质仍是版本/环境不干净。而 requirements/mminstall.txt 记录了通过 MIM 安装时声明的最小依赖集合mmcv2.0.0rc4,2.2.0、mmdet3.0.0,3.3.0、mmengine0.7.1,1.0.0与断言区间保持一致只是该文件约束更宽松一些下限 mmengine 0.7.1实际以导入断言为准。1.2 正确的安装姿势在全新环境中推荐按 docs/en/get_started.md 的步骤依次安装pip install -U openmim mim install mmengine mim install mmcv2.0.0rc4 mim install mmdet3.0.0然后在仓库根目录以可编辑模式安装 MMDetection3D 本体pip install -v -e .注意 MMCV 2.x 已将mmcv-full并入mmcv若不需要 CUDA 算子可用mim install mmcv-lite2.0.0rc4安装精简版。依赖声明细节可查看 setup.py 中的extras_require与 requirements/runtime.txt。二、常见安装报错逐个排查2.1 open3d 导入报错GLIBC_2.27 not found在可视化相关流程如 mmdet3d/visualization/local_visualizer.py 中基于 open3d 构建点云可视窗口中import open3d可能抛出OSError: /lib/x86_64-linux-gnu/libm.so.6: version GLIBC_2.27 not found原因新版 open3d 依赖GLIBC_2.27而该符号仅在 Ubuntu 18.04 及之后系统的 glibc 中提供Ubuntu 16.04 无法满足。解决方案是降级安装pip install open3d0.9.0.0open3d属于运行时依赖之一见 requirements/runtime.txt如果你的部署环境不是老版 Ubuntu保持最新兼容版本即可。2.2 pycocotools 与 mmpycocotools 冲突现象安装 nuscenes-devkit用于处理 NuScenes 数据集tools/dataset_converters/nuscenes_converter.py 依赖它后import pycocotools报版本错误。原因是 nuscenes-devkit 会安装pycocotools而 MMDetection 旧版本依赖mmpycocotools两者互相覆盖产生冲突。官方给出的临时方案是统一安装mmpycocotoolspip uninstall pycocotools mmpycocotools pip install mmpycocotools需要注意MMDetection3D 自 0.13.0 起已全面迁移到pycocotools因此当前 1.x 仓库如 v1.4.0并不存在该历史包袱此条目主要面向老版本用户如果你在旧分支上工作按上述命令解决即可。2.3 pycocotools 二进制不兼容numpy.ndarray size changed导入 pycocotools 相关模块时可能出现ValueError: numpy.ndarray size changed, may indicate binary incompatibility. Expected 88 from C header, got 80 from PyObject这属于典型的 C 扩展二进制不兼容最新版 pycocotools 与 numpy 1.20.0 不兼容。两种解法降级 pycocotools 至 2.0.1pip install pycocotools2.0.1或从源码编译最新版 pycocotoolspip install -e githttps://github.com/cocodataset/cocoapi#eggpycocotoolssubdirectoryPythonAPI pip install -e githttps://github.com/ppwwyyxx/cocoapi#eggpycocotoolssubdirectoryPythonAPI两个 COCO API 源码仓库地址二选一后者为社区维护的 fork。2.4 CUDA 9.0 环境下的 numba 版本问题MMDetection3D 的若干数据增强与评估算子依赖 numba例如 mmdet3d/datasets/transforms/data_augment_utils.py 中的点云增广实现、mmdet3d/evaluation/functional/kitti_utils/eval.py 中的 KITTI 评估以及 mmdet3d/models/layers/box3d_nms.py 中的 3D NMS。在 CUDA 9.0 环境中高版本 numba 不被支持会报出 numba 相关错误此时应固定安装pip install numba0.53.0这一点与 requirements/runtime.txt 中的注释一致“you should install numba0.53.0 if your environment is cuda-9.0”。三、如何标注点云数据MMDetection3D 本身不提供点云标注功能官方 FAQ 推荐了两款开源标注工具供参考SUSTechPOINTS南科大开源的点云标注工具支持 3D 框标注适合自动驾驶场景点云数据的快速标注。LATTE同样面向点云/3D 标注的开源工具。此外官方在 LATTE 基础上做了改进使其更便于实际使用改进方案对应的论文为《LATTE: accelerating LiDAR point cloud annotation via sensor fusion》arXiv:2011.10174感兴趣的读者可以进一步查阅该论文了解改进思路。标注流程建议先用上述工具完成点云 3D 框标注并导出结果再通过 tools/dataset_converters 下的转换脚本如 KITTI、NuScenes 等格式的转换器将标注整理为 MMDetection3D 所需的infos信息文件最后借助 tools/create_data.py 生成训练所需的 pkl 索引与 GT 数据库。这样即可把第三方标注结果无缝接入训练与评估流程。四、遇到问题如何高效求助FAQ 鼓励用户与开发者共同维护这份问题列表。如果你遇到环境配置、模型训练等问题且 FAQ 未覆盖官方建议使用官方提供的 issue 模板error-report 模板提交问题在模板中填写完整的环境信息与复现步骤包括系统与 CUDA 版本、PyTorch / MMEngine / MMCV / MMDetection / MMDetection3D 的精确版本、完整报错堆栈、训练或推理使用的配置与数据信息。一个实用的自检手段是运行环境收集脚本输出完整的依赖版本清单python mmdet3d/utils/collect_env.py该脚本位于 mmdet3d/utils/collect_env.py会汇总 PyTorch、CUDA、MMCV、MMDetection、MMDetection3D含 git hash及 spconv2.0 可用性等关键信息。把这份输出连同报错一起贴进 issue维护者可以最快定位问题——这也是 FAQ 反复强调“填全模板信息”的原因。结语本文从 MMDetection3D 官方 FAQ 出发将安装环节的版本矩阵、三类典型导入错误、CUDA 9.0 下的 numba 兼容问题以及点云标注工具选型逐一展开并回溯到 mmdet3d/init.py、requirements/mminstall.txt、requirements/runtime.txt 等仓库源码确认了每个结论的依据。环境问题大多源自“版本不匹配”或“扩展二进制不兼容”两类根因对照兼容矩阵、清理干净环境后重装再配合collect_env.py自检绝大多数安装故障都可以在几分钟内解决。赞分享人工智能计算机视觉深度学习自动驾驶【免费下载链接】mmdetection3dOpenMMLabs next-generation platform for general 3D object detection.项目地址https://gitcode.com/gh_mirrors/mm/mmdetection3d点击查看免费下载相关推荐OverLoCK项目中mmcv与mmdet版本兼容性问题的深度解析与解决方案OverLoCK项目中mmcv与mmdet版本兼容性问题的深度解析与解决方案 问题背景 在基于OverLoCK项目进行目标检测任务开发时开发者可能会遇到一个典人工智能计算机视觉深度学习MMagic 常见问题FAQ深度解析注册表报错、数据集准备、版本兼容与配置继承实战指南MMagic 常见问题FAQ深度解析注册表报错、数据集准备、版本兼容与配置继承实战指南 MMagicOpenMMLab 多模态生成工具箱的 docs/媒体生成计算机视觉深度学习人工智能大模型Paramiko 常见问题FAQ实战解析版本选择、平台兼容与连接关闭陷阱Paramiko 常见问题FAQ实战解析版本选择、平台兼容与连接关闭陷阱 本文基于 Paramiko 官方 FAQ 文档 sites/www/faq.r后端网络通信密码学上一篇逆向readcomiconline混淆图片URLcomics-downloader的base64解码与反爬Referer处理揭秘下一篇拆解 IDM-Activation-Script-ZH 内嵌PowerShellIDM注册表键启发式识别与DNS版本检测技巧创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考