分割图
1. 功能概述
1.1 支持的功能操作
- 传感器输出
- 实时生成分割图像,用于环境语义理解和目标分类。分割图通过不同颜色或标签表示各类物体,常见类别包括地面、建筑物、植被、道路、车辆等。
- 应用场景
- 无人机导航与避障:基于分割信息识别可通行区域。
- 智能监控:通过语义分割实现特定目标区域的识别与标注。
- 环境建模与场景理解:生成高精度的三维语义地图。
1.2 使用示例
配置文件添加传感器 以下是配置文件 Config.json
的示例代码,用于添加 分割图传感器:
"VisionSensors":[
{
"SeqID":0, //自动确认序号
"TypeID":4,//分割图
"TargetCopter":1,
"TargetMountType":0,
"DataWidth":640,
"DataHeight":480,
"DataCheckFreq":30,
"EularOrQuat":0,
"SendProtocol":[0,0,0,0,0,0,0,0], //使用共享内存机制,并自动确定IP和端口号
"CameraFOV":90,
"SensorPosXYZ":[0.3,0,0],
"SensorAngQuat":[0,0,0,0],
"SensorAngEular":[0,0,0],
"otherParams":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
}
]
}
Python 调用传感器接口 取图显示相关代码:
vis = VisionCaptureApi.VisionCaptureApi() # 创建一个视觉传感器实例
vis.jsonLoad() # 加载Config.json中的传感器配置文件
isSuss = vis.sendReqToUE4() # 向RflySim3D发送取图请求
vis.startImgCap() # 开启取图
vis.hasData[i] # 图片i数据是否更新
vis.Img[i] # 图片i数据(像素矩阵)
cv2.imshow('Img'+str(i),vis.Img[i]) # 显示图片i图像
ue.sendUE4Cmd('t.MaxFPS 30',0) # 发送指令,设置UE4最大刷新频率30Hz,同时也是取图频率
实时更新相机参数(位置、焦距、角度、装载飞机和形式):
vs = vis.VisSensor[0] #获取第0号相机基本参数
# 修改其中的可变部分,只修改需要改变的部分即可
vs.TargetCopter=1 #修改视角绑定的飞机ID
vs.TargetMountType=0 # 修改视角绑定类型,固连飞机还是地面
vs.CameraFOV=90 # 修改视角的视场角(焦距),可以模拟对焦相机
vs.SensorPosXYZ=[0.3,-0.15,0] # 修改相机的位置,可以调整相机初始位置
vs.SensorAngEular=[0,0,0] # 修改相机的姿态,可以模拟云台转动
vis.sendUpdateUEImage(vs) # 发送更新数据
例程链接
1.3 现实中的热力传感器
- 硬件示例
- Intel RealSense 系列深度相机
- ZED Stereo Camera
2. 传感器配置
2.1 传感器安装
参数名称 | 取值范围 | 含义 |
TargetMountType | 0: 固定载具几何中心;1: 固定底部;2: 固定地面 | 决定传感器的安装方式及相对位置。 |
TargetCopter | Copter ID (默认 1) | 所属载具编号,默认支持 Copter 1。 |
SensorPosXYZ | [x, y, z] (单位:米) | 相对于载具中心的安装位置。 |
EulerOrQuat | 0: 欧拉角;1: 四元数 | 选择安装姿态的表示方式。 |
SensorAngEular | [roll, pitch, yaw] (弧度) | 安装姿态,欧拉角方式表示。 |
SensorAngQuat | [q0, q1, q2, q3] | 安装姿态,四元数方式表示。 |
2.2 网络通信配置
参数名称 | 取值范围 | 含义 |
SendProtocol | [mode, IP, port, …] | 配置数据传输协议,支持共享内存和 UDP。 |
SendProtocol[0] | 0: 共享内存;1: UDP 压缩传输 | 选择传输方式。 |
SendProtocol[5] | 端口号 | 数据传输的目标端口号。 |
2.3 传感器技术规格
技术参数 | 配置值 | 说明 |
SeqID | 0 | 唯一传感器序号。 |
TypeID | 4 | 传感器类型,语义分割图传感器。 |
DataHeight | 480 | 图像垂直分辨率,支持 720, 1080 等常见分辨率。 |
DataWidth | 640 | 图像水平分辨率,支持 1280, 1920 等常见分辨率。 |
DataCheckFreq | 30 Hz | 数据刷新频率,默认 30Hz,最大支持取决于RflySim3D刷新率。 |
CameraFOV | 90° | 图像视场角,单位:度。 |
otherParams | N/A | 此传感器无额外参数。 |