解决ModuleNotFoundError: No module named ‘mmdet3d‘

目录结构以及代码报错概要如上图所示

具体代码报错为

imvoxelnet_master# python tools/create_data.py sunrgbd --root-path ./data/sunrgbd --out-dir ./data/sunrgbd --extra-tag sunrgbd

current_directory /root/imvoxelnet_master/tools/data_converter
Traceback (most recent call last):
  File "tools/create_data.py", line 6, in <module>
    from data_converter.create_gt_database import create_groundtruth_database
  File "/root/imvoxelnet_master/tools/data_converter/create_gt_database.py", line 17, in <module>
    from mmdet3d.core.bbox import box_np_ops as box_np_ops
ModuleNotFoundError: No module named 'mmdet3d'

其他没有解决的方法,跳过。

需要用到查询当前代码所在目录的执行代码:

import os

current_directory = os.path.dirname(os.path.realpath(__file__))
print("当前文件所在目录:", current_directory)

解决问题的思路:调用父级目录的同级目录

方法1:

import sys
import os

# 获取mmdet3d目录的绝对路径
mmdet3d_path = os.path.abspath('../mmdet3d')  # 如果mmdet3d与tools目录同级,可以使用'../mmdet3d',否则根据实际情况修改路径

# 添加mmdet3d目录到Python路径中
sys.path.append(mmdet3d_path)

没有解决。

方法2:在命令行中运行。

export PYTHONPATH=/path/to/mmdet3d:$PYTHONPATH

已解决,继续解决其他错误

太难了。。。。

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值