You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ROS Noetic包同目录文件间ImportError问题求助

问题:ROS Noetic中导入semantic_sensor模块时出现ImportError

环境与背景

  • 系统环境:Ubuntu 20.04 + ROS Noetic(Python 3.8)
  • 代码来源:语义映射脚本基于SSMI项目,脚本目录下包含两个核心文件:
    • semantic_sensor.py:接收相机RGB、深度、语义信息,通过PCL实现SemanticPCLGenerator类,同时定义了PointType类型
    • semantic_sensor_node.py:导入semantic_sensor中的类来生成语义地图
  • 硬件状态:搭载RealSense D435的Husky机器人,RGB、深度、语义话题数据正常,可在RVIZ中查看消息

问题现象

启动ROS包时触发以下错误:

process[semantic_cloud-1]: started with pid [51614]
process[semantic_octomap-2]: started with pid [51615]
[ INFO] [1701269714.376682262]: Semantic octomap generated!
Traceback (most recent call last):
  File "/home/s/test_f/devel/lib/semantic_octomap/semantic_sensor_node.py", line 15, in <module>
    exec(compile(fh.read(), python_script, 'exec'), context)
  File "/home/s/test_f/src/SSMI-Mapping/scripts/semantic_sensor_node.py", line 17, in <module>
    from semantic_sensor import PointType, SemanticPclGenerator
ImportError: cannot import name 'PointType' from 'semantic_sensor' (/home/s/test_f/devel/.private/semantic_octomap/lib/semantic_octomap/semantic_sensor.py)
[semantic_cloud-1] process has died [pid 51614, exit code 1, cmd /home/s/test_f/devel/lib/semantic_octomap/semantic_sensor_node.py __name:=semantic_cloud __log:=/home/s/.ros/log/ffe73552-8ec6-11ee-8488-cfc925150467/semantic_cloud-1.log].
log file: /home/s/.ros/log/ffe73552-8ec6-11ee-8488-cfc925150467/semantic_cloud-1*.log

已尝试的解决方法

  • 手动运行脚本未出现该导入错误(但未生成语义地图)
  • 在脚本目录添加__init__.py文件
  • 严格遵循ROS官方教程的包配置步骤

求助需求

需要解决启动ROS包时无法从semantic_sensor模块导入PointType的问题。

内容的提问来源于stack exchange,提问作者Alexander Topolnitskii

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 04:55:21