[Prescan]Prescan中Sensor学习

article/2025/8/27 16:05:06

文章目录

  • 1. Idealized Sensor
    • 1.1 GPS接收器
    • 1.2 AIR Sensor 执行器信息传感器
    • 1.3 Beacon/OBU
  • 2. Detailed Sensor
    • 2.1 Camera Sensor
    • 2.2 Fish eye Camera
    • 2.3 Lidar
    • 2.4 Radar Sensor
    • 2.4 Ultrasonic Sensor
  • 3. Ground Truth Sensor
    • 3.1 Lane Marker Sensor
    • 3.2 Analytical Lane Marker Sensor
    • 3.3 Depth Camera
    • 3.4 Bounding Rectangle Sensor
    • 3.5 Object Camera Sensor
    • 3.6 Image Segmentation Sensor
    • 3.7 Point Cloud Sensor
  • 4 Tripod
  • 5 Physics Based
    • 5.1 Physics Based Camera Sensor
    • 5.2 V2X Transceiver

该笔记参考链接:

  • https://blog.csdn.net/zhanshen112/article/details/88565400

Prescan中目前提供的传感器一共有三种类型:

  • Idealized Sensor 理想传感器:包括了理论研究需要的传感器,适用于自动驾驶算法开发前期逻辑的验证。
  • Detailed Sensor详细传感器:真实存在的传感器,对应的是有相应的传感器模型,考虑了在实际使用过程中的传感器信息的损失等(例如:雷达就考虑了路径发散衰减、大气衰减和目标反射衰减,相机则考虑相机畸变等),适用于自动驾驶算法的鲁棒性验证
  • Ground-Truth Sensor真值传感器:提供的是真值(主要是视觉传感器),适用于算法的早期开发阶段

1. Idealized Sensor

理想传感器主要包括:

  1. SELF snesor/GPS receiver 自车/GPS接收器
  2. AIR sensor( radar/lidar/ultrasonic ) 执行器信息接收器 (挖坑)
  3. Antenna&DSRC transmitter/receiver 天线和DSRC的发送器/接收器(挖坑)
  4. Beacon/OBU 信标(信号塔)/车载单元

1.1 GPS接收器

作用:输出本车精确的GPS位置信息
在这里插入图片描述
PreScan中是否可以模拟GPS信号不好的这种状态?

1.2 AIR Sensor 执行器信息传感器

作用:输出目标物的检测信息
对于每个检测到的物体,都有如下参数:
Range[m] 从传感器坐标系到检测到目标物体的距离
Azimuth[deg] 方位角
Elevation[deg] 高程角
ID[n] 检测到目标的ID
Velocity[m/s] 目标物纵向速度
Heading[deg] 目标物的航向角(N-0 deg, E – 90 deg)

在这里插入图片描述
3种不同的可能检测方法:

Bounding Box;检测边界
Center of Bounding Box; 检测中心
Cebter of Gravity;检测质心

注意:AIR传感的局限:该传感不考虑重叠、遮挡和目标的实际形状,检测点可能落在检测范围之外。具体应用时应该根据具体情况判断。
在这里插入图片描述

1.3 Beacon/OBU

作用:当车载装置在beacon检测范围之内,可实现V2I通信;双向通信(Beacon依附于infrastructure上,OBU依附于车辆上)
根据传感原理,分为以下两种:

  • RF射频:OBU应位于Beacon的光束中
  • IR红外:OBU应位于Beacon的光束中,需要考虑遮挡
RFIR
fastslower
no obstructed view (no occluded objects)obstructed view (occluded objects)

RF OBU体现为一个点,IR OBU体现为一个矩形box(尺寸可以编辑,默认0.1m)
输出参数:

  • Position & orientation 位置&方位角
  • Field of view 视野角度
  • Range 距离(Only Beacon,默认RF 50m IR 20m)
  • Cone angle (Only Beacon,默认45°)
  • Maximum number of detectable OBUs (Only Beacon,默认 5)
  • Maximum number of detectable beacons (Only OBU,默认 2)

2. Detailed Sensor

Detailed Sensor主要包括:

  1. Camera Sensor
  2. Fisheye Camera Sensor
  3. TIS:Technology Independent Sensor
  4. Lidar Sensor
  5. Radar Sensor
  6. Ultrasonic Sensor

2.1 Camera Sensor

作用:发送图像信息(pixels)到Simulink,便于用户自定义相应的算法(例如:车道线识别、目标分类检测、融合算法等)

可配置项:

  • Position & Orientation 位置和方位
  • Mono Vision /Stereo Vision 单目/双目
  • Field of View 视野范围
  • Resolution 分辨率
  • Frame-rate 帧频率
  • Color/monochrome 彩色/黑白
  • Misalignment (position / orientation)
  • Drift (偏移)
    Simulink中摄像头输出:
    在这里插入图片描述

2.2 Fish eye Camera

作用:发送图像信息(pixels)到Simulink,便于用户自定义相应的算法(例如:泊车辅助时障碍物识别等)

可配置项:
在这里插入图片描述

2.3 Lidar

激光雷达可用于多种目标,包括非金属物体、岩石、雨水等。
PreScan基于两种工作原理给出了对应的Lidar模型:

  • pulse time-of-flight ranging
  • beam modulation telemetry
    这两种模型中,laser scanner都包含了发射器和接收器。
    在这里插入图片描述
    为了计算距离,被测信号的功率必须足够大。
    可配置项:
  • 波长
  • 发散角(对激光雷达而言,一般是0.01-0.08度)
  • 最大目标输出数量(最大为5),针对最大目标输出数量,下面的图给出了更为具体的解释(下图max object to detect设置为3)
    在这里插入图片描述

输出到Simulink中的数据
在这里插入图片描述

Signal nameDescription
ActiveBeamID[-]ID of the beam in the current simulation time step. Value is 0 when there’s no detection.
Range[m]Range at which the target object has been detected.
DopplerVelocity [m/s]Velocity of target point, relative to the sensor, along the beam.
DopplerVelocityX/Y/Z [ms-1]Velocity of target point, relative to the sensor, along the beam, decomposed into X,Y,Z of the sensor’s coordinate system.
Theta[deg]Azimuth angle in the sensor coordinate system at which the target is detected.
Phi[deg]Elevation angle in the sensor coordinate system at which the target is detected.
TargetID[-]Numerical ID of the detected target.
TargetTypeID[-]The Type ID of the detected object.
EnergyLoss[dB]Ratio received power / transmitted power.
Alpha[deg]Azimuthal incidence angle of Lidar on the target object.
Beta[deg]Elevation incidence angle of Lidar on the target object.

2.3 附 - Lidar Equation

<这部分先挖坑>
对于采用脉冲time of flight这种测量方法,假设 t r t_r tr为发射端发生信号到接收端收到信号的时间, c c c为光速,在PreScan中为常数,则Range R R R t r t_r tr之间的关系可以表达如下:
2 R = t r c 2R = t_r c 2R=trc

对于采用光束调制测量方法,激光由相对低频正弦波调制,因此采用的是相位进行间接测量。假设 f m o d f_{mod} fmod是调制频率, ϕ r \phi_r ϕr为发射波和接收波之间的相位差,则 t r t_r tr可以表示为:

2.4 Radar Sensor

Radar Sensor是一个更加详细的TIS传感器版本,与TIS传感器有所区别的是:

  • 增加项:
    1. 支持对Antenna Gain Maps的使用
    2. 将大气衰减建模为频率和降雨的函数
    3. 可由外部提供扫描模式(即Simulink提供)
    4. 改进的Radar模型
  • 删减项:
    1. 运用在Lidar上的pencil beam功能被移除了
    2. 分层阵列扫描功能被移除了(可以用多个Radar Sensor实现)

《未完》
输出到Simulink中的数据

Signal nameDescription
ActiveBeamID[-]ID of the beam in the current simulation time step. Value is 0 when there’s no detection.
Range[m]Range at which the target object has been detected.
DopplerVelocity [ms-1]Velocity of target point, relative to the sensor, along the line-of-sight between sensor and target point.
DopplerVelocityX/Y/Z[ms-1]Velocity of target point, relative to the sensor, along the line-of-sight between sensor and target point, decomposed into X,Y,Z of the sensor’s coordinate system.
Theta[deg]Azimuth angle in the sensor coordinate system at which the target is detected.
Phi[deg]Elevation angle in the sensor coordinate system at which the target is detected.
TargetID[-]Numerical ID of the detected target.
TargetTypeID[-]The Type ID of the detected object.
EnergyLoss[dB]Ratio received power / transmitted power.
Alpha[deg]Azimuthal incidence angle of the Radar beam on the target object.
Beta[deg]Elevation incidence angle of the Radar beam on the target object.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

车载雷达的分类及基本属性

类型工作形式频率覆盖距离水平视角应用场景
SRR短距雷达脉冲24GHz30m±65°~±80°BSD、PA、LCA、FCW、RCW
MRR中距离雷达连续波/脉冲24GHz / 76-77GHz70m±40°~±50°LCA
LRR长距离雷达连续波/脉冲76-77GHz200m±4°~±8°ACC

2.4 Ultrasonic Sensor

反射强度取决于透射波的强度、辐射模式、到物体的距离、介质的透射率和目标物体的特性。

输出到Simulink中的数据
在这里插入图片描述

signal namedescription
ObjectDetection[-]Indicates if an object is detected. (1 if an object is detected, 0 otherwise)
Range[m]Range at which the target object has been detected.
DopplerVelocity [ms-1]Velocity of target point, relative to the sensor, along the line-of-sight between sensor and target point.
DopplerVelocityX/Y/Z[ms-1]Velocity of target point, relative to the sensor, along the line-of-sight between sensor and target point, decomposed into X,Y,Z of the sensor’s coordinate system.
Theta[deg]Azimuth angle in the sensor coordinate system at which the target is detected.
Phi[deg]Elevation angle in the sensor coordinate system at which the target is detected.
TargetID[-]Numerical ID of the detected target.
TargetTypeID[-]The Type ID of the detected object.
EnergyLoss[dB]Ratio received power / transmitted power, same as ΔSPL.
Alpha[deg]Azimuthal incidence angle of sound wave on the target object.
Beta[deg]Elevation incidence angle of sound wave on the target object.

3. Ground Truth Sensor

3.1 Lane Marker Sensor

lane marker传感器提供道路上存在的车道线信息。
输出到Simulink的数据
在这里插入图片描述
输出结果以Bus形式给出,主要包括了5个信号:

  • sliceCout [int] 前视距离数量
  • ScanAtSensor [sub-bus:LaneMarkerSliceData]
  • ScanAtDistance1(,2,3)

3.2 Analytical Lane Marker Sensor

分析车道标志传感器是车道传感器的一种新的实现方法,提供道路上车道线的信息。
车道线信息以多项式的形式给出,需要注意一下,因为是用多项式进行车道线的拟合,所以这个传感器输出的在一定程度上不算是真值,是对真值的逼近。

该传感器仅考虑传感器视野范围内的车道线,同一条车道线在视野范围内穿过了,会视为不同的车道线。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在Simulink中可视化车道线,可以借助Prescan提供的’ALMS XY Polynomial Plot’实现,该模块利用open('PreScanUsefulBlocks')查找。
在这里插入图片描述

3.3 Depth Camera

Depth摄像机包含的是深度值,用来校准和验证双目相机的深度计算。
输出到Simulink的数据
在这里插入图片描述
深度的分辨率是非线性的,如下:
d = z 2 z n e a r 2 24 − z d = \frac{z^2}{z_{near}2^{24} - z} d=znear224zz2

3.4 Bounding Rectangle Sensor

bounding rectangle传感器提供传感器可检测目标的包围矩形信息,并为相机的bounding rectangle算法做参考。例如行人识别算法,实现照明条件不良情况下的行人检测,输出按距离排序。

输出到Simulink的数据
在这里插入图片描述
在这里插入图片描述
在Simulink中可视化bounding box,可以借助Prescan提供的’BRS data on Camera image’实现,该模块利用open('PreScanUsefulBlocks')查找。

3.5 Object Camera Sensor

该传感器对包含摄像机单元和图像处理单元的系统进行建模。此外,它还提供了有关目标的距离和多普勒速度信息。
OCS传感器检测所有标记为sensor detectable的目标物。

输出到Simulink的数据
在这里插入图片描述

SignalDescription
Object ID [-]Numerical ID of the detected object.
ObjectTypeID [-] The Type ID of the detected object.
Left [-]Horizontal screen coordinate of the left side of the bounding box
Right [-]Horizontal screen of the right side of the bounding box
Bottom [-]Vertical screen coordinate of the bottom side of the bounding box
Top [-]Vertical screen coordinate of the top side of the bounding box
Range [m]Range at which the target object has been detected. The distance to the nearest point is returned.
RangeX [m]X component of the Range, in sensor coordinates.
RangeY [m]Y component of the Range, in sensor coordinates.
RangeZ [m]Z component of the Range, in sensor coordinates.
DopplerVelocity [m/s]Velocity of target point, relative to the sensor, along the line-of-sight between sensor and target point.
DopplerVelocityX/Y/Z[m/s]Velocity of target point, relative to the sensor, along the line-of-sight between sensor and target point, decomposed into X,Y,Z of the sensor’s coordinate system.
Theta [deg]Azimuth angle in the sensor’s coordinate system at which the target is detected.
Phi [deg]Elevation angle in the sensor’s coordinate system at which the target is detected.

3.6 Image Segmentation Sensor

ISS传感器输出到Simulink的数据
在这里插入图片描述
在这里插入图片描述

3.7 Point Cloud Sensor

点云传感器用于构建周边环境的点云,用于算法的开发、激光雷达的尺寸验证以及HIL测试。
基本参数:

ParameterDescriptionDefautMin.Max.
FoV in Azimuth[deg]The horizontal field of view of the sensor in degrees.600.1120
FoV in Elevation[deg]For each azimuth direction, the same vertical field of view in degrees.300.160
#horizontal samplesThe number of equi-angular-distant samples in the azimuth direction.32013840
#vertical samplesThe number of equi-angular-distant samples in the elevation direction.16012160

传感器输出到Simulink的数据
在这里插入图片描述
PCS mux for World Position
在这里插入图片描述
PCS mux for World Position and Intensity
在这里插入图片描述
PCS mux for Range.
在这里插入图片描述
PCS mux for Range and Intensity.

Data Model API通过matlab脚本提供了对传感器参数的便捷式访问。


%% Sample code for configuring the PCS via the Data Model API
%% Part 1
% Get the model
models = prescan.experiment.readDataModels();
% Find camera sensor CameraSensor_1
sensorData = prescan.sensors.findByName(models, 'PointCloudSensor_1');% Exit the script when the sensor is not found
if isempty(sensorData)
display('Sensor with the specified name is not found.');
return;
end%% Part 2
% Create copies of point cloud sensor structures
sensor = models.(sensorData{1}.modelName).sensor{sensorData{1}.indices(1)};
pointCloudSensor = sensor.pointCloudSensor;
sensorBase = sensor.sensorBase;
% Update settings
pointCloudSensor.sensorOutputMode = 'worldPosition'; % Can also be 'range'.
pointCloudSensor.outputIntensity = false;
pointCloudSensor.nearClippingDistance = 0.1; % [m]
pointCloudSensor.farClippingDistance = 150; % [m]
pointCloudSensor.extrapolateRange = true;
pointCloudSensor.sampleAccuracy.x = 0.05; % [deg]
pointCloudSensor.sampleAccuracy.y = 0.05; % [deg]
pointCloudSensor.integerOutput = false; % Do not use sensorOutputMode =
%'worldPosition' with integerOutput = true.
% Doing so will result in undefined
behaviour.
%sensorBase.name = 'PointCloudSensor_1';
sensorBase.fovAzimuth = 60 * pi/180; % [rad]
sensorBase.fovElevation = 30 * pi/180; % [rad]
sensor.resolution.x = 320; % [#samples]
sensor.resolution.y = 160; % [#samples]
sensor.frameRate = int32(20); % [Hz]% Configure sensor's pose, defaults depend on the actor it is placed on.
% sensorBase.relativePose.position.x = 1.56; % [m]
% sensorBase.relativePose.position.y = 0; % [m]
% sensorBase.relativePose.position.z = 1.22; % [m]
% sensorBase.relativePose.orientation.roll = 0; % [rad]
% sensorBase.relativePose.orientation.pitch = 0; % [rad]
% sensorBase.relativePose.orientation.yaw = 0; % [rad]
% Copy updated structures back into the model.
sensor.pointCloudSensor = pointCloudSensor;
sensor.sensorBase = sensorBase;
models.cameramodel.sensor{1} = sensor;%% Part 3
% Run the experiment for 10 seconds
simOut = prescan.experiment.runWithDataModels(models, 'StopTime', '10.0');

4 Tripod

目的:用来进行传感器标定,Tripod对传感器是不可见的。

5 Physics Based

5.1 Physics Based Camera Sensor

5.2 V2X Transceiver

以上两个目前没有用到,先挖坑吧


http://chatgpt.dhexx.cn/article/LRe6traX.shtml

相关文章

PreScan 学习问题总结

prescan_01 安装 PreScan 选择Matlab 版本时&#xff0c;提示版本不匹配 忽略即可&#xff0c; 安装matlab需要对应的语言编译软件和对应版本&#xff0c; 查询路径如下&#xff1a; https://ww2.mathworks.cn/support/requirements/previous-releases.html prescan 和 mat…

Prescan8.5安装详细教程

Prescan8.5软件安装详细教程 Win10 64位 PreScan是西门子公司旗下汽车驾驶仿真软件产品&#xff0c;Prescan是以物理模型为基础&#xff0c;开发ADAS和智能汽车系统的仿真平台。支持摄像头、雷达、激光雷达、GPS&#xff0c;以及V2V/V2I车车通讯等多种应用功能的开发应用。 Pr…

Prescan入门教程之避坑笔记:初学者初用

建立项目文件 打开prescan软件后界面如下&#xff1a; 点击其工作界面的左上角file&#xff0c;一般来初用需新建自己的项目文件夹即点击new experiment&#xff0c;可以自定义文件位置&#xff0c;也可以使用软件默认位置&#xff1b;当然&#xff0c;如果你已经是老司机&am…

PreScan自带泊车模型

prescan有自带的泊车例子 停车辅助系统的功能目标是帮助驾驶员找到空停车位&#xff0c;并通过全自动应用程序&#xff08;转向和油门/制动器&#xff09;帮助驾驶员驶入停车位。这些系统设计用于提高停车操作期间的安全性和驾驶员舒适度。为本演示设计的算法首先收集有关车…

PreScan第一课:软件简介和基础

为了自己和他人学习的需要&#xff0c;建了一个PreScan的QQ群&#xff1a;613469333&#xff08;已满&#xff09;/ 778225322&#xff08;可加&#xff09;&#xff0c;加群前请私聊群主&#xff08;QQ&#xff1a;2059799865&#xff09;加入。群管理需要花费时间和精力&…

Prescan学习笔记

一、 prescan新建场景&#xff08;Experiment&#xff0c;快捷键CtrlN&#xff09; 可设定保存路径&#xff0c;给仿真预设特定的计算频率&#xff0c;作者名称以及简单的场景模型描述 二、场景建模工作 鼠标滚轮可实现画布的缩放&#xff0c;摁住滚轮可实现平移画布 搭建场…

Prescan-行人识别

前面提到了摄像头实现的PCW-行人碰撞预警&#xff08;Pedestrian Collision Warning&#xff09;功能&#xff0c;在此用Prescan做个简单的示例&#xff0c;步骤如下&#xff1a; 1、场景创建 要求场景至少具有一辆车&#xff0c;一条道路&#xff0c;一个行人&#xff0c;然…

Prescan(二):从0到1使用prescan搭建仿真物理环境模型

1. 一句话概括prescan&#xff1f; PreScan 是以物理模型为基础&#xff0c;支持多种传感器&#xff0c;基于simulink开发的 ADAS 和自动驾驶仿真软件。 2. prescan怎么下载&#xff1f; 可以向官方申请lisence使用试用版&#xff0c;需要公司账号申请&#xff1b;其他渠道&…

Prescan-功能预览

鉴于这两年无人驾驶炒的火热&#xff0c;想学习点基础知识&#xff0c;以免被淘汰。然而囊中羞涩&#xff0c;Jetson TX2、Lidar。。。只可远观&#xff0c;由于本人从事过汽车结构设计及3D设计和仿真软件技术支持&#xff0c;同时会点C/C#/Python&#xff0c;考虑工作贴合度&a…

【暂时完结】Prescan学习笔记

因个人学习暂不会用到Prescan&#xff0c;关于Prescan的学习笔记暂时停止更新&#xff0c;有兴趣的同学可参见下面网址。 以下资料是对B站上学习视频的整理&#xff0c;主要来源&#xff1a;https://space.bilibili.com/268138391/&#xff0c;大家一起学习哦 Prescan学习记录…

PreScan笔记(1)——入坑之简单介绍和Demo

文章目录 PreScan 小白入坑1. PreScan简单介绍2. First Demo简单介绍实验的基本四步具体流程与MATLAB连接过程中的问题 参考 PreScan 小白入坑 本人最近才接触PreScan&#xff0c;最近也略微熟悉了GUI和相关步骤。先给自己定个目标&#xff0c;之后每学一点就写一点。 PreSca…

matlab、carsim、prescan联合仿真从零开始详细步骤

matlab、carsim、prescan联合仿真详细步骤 在matlab、carsim、prescan联合仿真中&#xff0c;prescan提供测试场景和传感器模型&#xff0c;但prescan也提供车辆动力学2D和3D模型&#xff0c;因此在验证自动驾驶算法功能逻辑时&#xff0c;或者对车辆动力学模型要求没有那么高…

Prescan(一):无人驾驶仿真软件简介

Prescan介绍&#xff1a; Prescan原作为ADAS测试仿真专用软件&#xff0c;近几年来由于无人驾驶技术的兴起&#xff0c;越来越多的无人驾驶团队迫切的需要一款软件来实现对无人驾驶车辆进行软件在环&#xff0c;硬件在环的检测。Prescan在其做智能辅助驾驶仿真的基础上&#x…

Prescan基础知识总结

文章目录 1. Prescan 基本介绍2. 场景搭建2.1 静态部分环境和天气基础设施之路段、路面、路标和交通信号基础设施之静态物体 2.2 动态部分路线行人和车辆 2.3 监测部分——传感器和可视化传感器3D VisViewer 2.4 整体——地图导入 3. 测试部分3.1 Parse和Build3.2 MATLAB配置3.…

Prescan基础知识

文章目录 前言一、PreScan干什么的&#xff1f;二、学习PreScan基本操作总结 前言 因为毕设是自动场景下的多目标检测跟踪与轨迹预测研究&#xff0c;所以需要学习到自动驾驶仿真软件PreScan&#xff0c;这周的主要工作是对PreScan进行一定的了解&#xff1a;首先是了解PreScan…

PreScan快速入门到精通第二讲PreScan功能介绍

智驾社 小明师兄 PreScan产品功能包含如下: 1. Pre-processor or GUI: 预处理器或GUI 2. Engineering Workspace or Compilation Sheet:工程工作区或编译表 3. Main modules:主要模块 4. Process Manager:进程管理 5. Miscellaneous:其它项 1.1 预处理器或GUI GUI的关键…

【prescan入门】prescan入门教程(场景搭建、参数设置、连接MATLAB实现仿真)

环境 windows10PreScan8.5.0MATLAB2019bvs2019社区版 场景搭建 双击打开【PreScan GUI 8.5.0】【File】->【New Experiment】新建实验 搭建环境&#xff08;草地、水泥地、砖地等&#xff09; 这里我选择草地场景&#xff0c;将【Grass】拖入网格区域 选择基础设施&…

数据库与缓存一致性解决方案

数据库与缓存一致性解决方案 文章目录 数据库与缓存一致性解决方案前言几种方案的分析方案的实现 前言 项目中如果用到了缓存&#xff0c;就会涉及到数据库与缓存的双写&#xff0c;由于这两个操作不是原子性的&#xff0c;在并发的场景下&#xff0c;容易产生数据库与缓存不一…

数据库实时同步技术解决方案_两个数据库同步_数据库双向同步方案

SyncNavigator v8.6.2 SyncNavigator是一款功能强大的数据库同步软件,适用于SQL SERVER, MySQL,具有自动/定时同步数据、无人值守、故障自动恢复、同构/异构数据库同步、断点续传和增量同步等功能,支持Windows xp以上所有操作系统,适用于大容量数据库快速同步。 安装包下…