当前位置: 首页 > news >正文

自动驾驶技术与传感器数据处理

目录

自动驾驶总体架构

感知系统 

决策系统 

定位系统 

​计算平台​

仿真平台​

自动驾驶公开数据集

激光点云

点云表征方式

1) 原始点云

2) 三维点云体素化

3)深度图

4)鸟瞰图

点云检测障碍物的步骤

PCL点云库 

车载毫米波雷达

车载相机

设备标定


自动驾驶总体架构

感知系统 

 

决策系统 

 

定位系统 

计算平台

仿真平台

 

自动驾驶公开数据集

激光点云

点云表征方式

1) 原始点云

三维点云最直接的矩阵表示法是将集合中的每个三维点列为矩阵中的一行
 
基于原始点元的表示法的优点是:
(1)简单且通用
(2)保留了原始三维点集中的所有信息;但缺点是它不利于探索三维点的任何几何特性

2) 三维点云体素化

简单的离散化方法是将三维空间从三个维度中的每一个划分为等距的非重叠体素; 分别沿X、Y、Z轴绘制一个范围为H、W、D的三维空间。每个体素的大小分别为h、w、d。第(i,j,k)个体素表示三维体素空间。

基于三维体素化的表示法的优点是:
(1)生成的体素与自然的层次结构相关联,所有体素具有统一的空间大小;
(2)可以使用现成的工具

缺点
(1)没有考虑有序三维点云的特定属性;
(2)通常导致一个非常稀疏的表示,其中大多数体素是空的
(3)涉及到分辨率和内存之间的权衡问题。该表示方法可用于自动驾驶感知模块,以及三维点云的存储
 

3)深度图

将实时激光的三维点云近似地组织成二维距离图像深度图像中的每个像素对应于三维空间中的一个点。像素值是从激光雷达到截锥体内最近的三维点的范围。具体地说我们用方位角α和俯仰角β的分辨率沿方位角α ε [0,2m)和俯仰角β ε (-π/2,π/2]划分三维空间。基于距离图像的表示法优点在于:
(1)能够自然地模拟了激光雷达捕捉三维点云的方式在王维空间中反射二维表面
(2)大多数相关的截面空间都有一个或多个三维点从而产生紧凑的距离视图图像

缺点:
很难对无组织的点云进行建模

4)鸟瞰图

基于鸟瞰图(BEV)的表示方法是一种通过忽略高度的方式来实现三维体素化的特例。它将3D体素投影到BEV图像;分别沿X、Y轴绘制一个范围为H、W的三维空间。每个像素的大小分别为h、w。BEV图像中的第(i,j)个像素表示空间V,使用二维矩阵表示三维点云。短阵记录了二维空间中的占有率。其优点是:
(1)易于应用基于2D视觉的技术;
(2)易于与来自HDmap的信息进行融合
(3)易于用于决策模块用于预测和运动规划。
(4)无论距离如何,物体对象总是相同的大小,这是一个很强的先验知识、使学习问题更容易

缺点:
(1)设计分辨率和内存之间的严重权衡,导致获取小对象详细信息的过度量化问题;
(2)不考虑有序三维点云的特定属性,并且无法解释遮挡现象
(3)导致稀疏性问题,因为大多数像素是空的。

点云检测障碍物的步骤


 

PCL点云库 

1.什么是PCL?

PCL全称为Point Cloud Library,是一个用于三维点云处理的开源库。它包含了从传感器或三维数据文件中检索三维点云的各种处理。如果说OpenCV是2D信息获取与处理的结晶,那么PCL就在3D信息获取与处理上具有同等地位,且PCL是BSD授权方式,可以免费进行商业和学术应用,可在Windows、Linux、Mac OS X等操作系统中运行。

2.PCL的发展史        

PCL起初由ROS(Robot Operating System)下来自斯坦福大学的Radu博士等人维护和开发的开源项目,主要应用于机器人研究应用领域,随着算法模块的积累,与2011年独立出来,与全球3D信息获取、处理的同行一起组件了强大的开发维护团队,以多所知名大学、研究所和相关软硬件公司为主。PCL继续加入的算法等详情可见PCL官方网站。      

3.PCL的结构和内容        

对于3D点云处理来说,PCL完全是一个模块化的现代C++模板库,它基于一下第三方库:Boost、Eigen、FLANN、VTK、CUDA、OpenNI、QHull,实现点云相关的获取、滤波、分割、配准、检索、特征提取、识别、追踪、曲面重建、可视化等。

车载毫米波雷达

利用毫米波雷达可以实现自适应巡航控制(Adaptive Cruise Control),前向防撞报警(Forward Collision Warning),盲点检测(Blind Spot Detection),辅助停车(Parking aid),辅助变道(Lane change assistant),自主巡航控制(ACC)等高级驾驶辅助系统(ADAS)功能。其中24GHz 雷达系统主要实现近距离探测(SRR),而77GHz 系统主要实现远距离的探测(LRR) 

车载相机

摄像头参数

  • 像素

是由一个数字序列表示图像中的一个最小单位。

  • 分辨率

分辨率是用于度量位图图像内数据量多少的一个参数,表示成dpi(DostPerInch,每英寸点或像素数)。它是衡量摄像头的一个重要指标之一,通常来说摄像头的分辨率越高,拍摄出来的图像品质越好

  • 色域

色域是对一种颜色进行编码的方法,也指一个技术系统能够产生的颜色的总和。最常用的图像格式是RGB24和I420, RGB24代表红、绿、蓝三个通道的颜色,图像每个像素用8bit(比特位)表示,RGB24一帧的大小size=width*height*3byte(字节);I420是YUV格式之一,YUV模型是根据一个亮度(Y分量)和两个色度(UV分量)来定义颜色空间。其数据量是size= width*height*1.5Byte(字节)

  • 自动白平衡调节        

定义要求在不同色温环境下,照白色的物体,屏幕中的图像应也是白色的。色温表示光谱成分,光的颜色。色温低表示长波光成分多。当色温改变时,光源中三基色(红、绿、蓝)的比例发生变化,需要调节三基色的比例达到彩色的平衡。 彩色深度 反映对色彩的识别能力和成像的色彩表现能力。常用色彩位数(bit)表示。彩色深度越高,获得的影像色彩就越艳丽动人。

  • 信噪比或图像噪音
  • 视场角
  • 帧率

传统算法中,通过图像特征描述子SIFT、SURF等进行特征点提取和匹配,可用特征很多,包括角点、边缘点等

即输入摄像头的数据,以每帧信息为基础进行检测、分类、分割等计算,最后利用多帧信息进行目标跟踪,输出相关结果;

1)预处理包括成帧、颜色调整、白平衡、对比度均衡、图像扭正等工作;

2)特征提取在预处理的基础上提取出图像中的特征点;

3)目标识别是基于特征数据的输出,对图像中的物体进行识别分类 —— 人 ,车 、交通标志等,运用到机器学习、神经网络等算法。

设备标定

标定,通常指的是校准过程,是一种测量精确度提高的方法。在技术和科学领域,标定涉及将一个设备或仪器的测量与一个已知的参考标准进行比较,并据此进行调整。这个过程确保测量设备在操作中可以达到预定的准确性和一致性。

传感器标定

相机标定

毫米波雷达标定

激光雷达标定

相关文章:

自动驾驶技术与传感器数据处理

目录 自动驾驶总体架构 感知系统 决策系统 定位系统 ​计算平台​ 仿真平台​ 自动驾驶公开数据集 激光点云 点云表征方式 1) 原始点云 2) 三维点云体素化 3)深度图 4)鸟瞰图 点云检测障碍物的步骤 PCL点云库 车载毫米波雷达 车载相机 设备标定 自动驾驶…...

高效测评系统方案助力沃尔玛、亚马逊卖家提升产品销量

无论在哪个电商平台,测评确实是最有效的推广方式。测之前一定要选好产品,因为对于大部分卖家而言,不可能你店铺里所有的都是爆款,所以选择的是需要有潜力成为爆款的产品。测评是指通过搭建安全的环境模拟真实的买家购物行为&#…...

B/S模式的web通信(高并发服务器)

这里写目录标题 目标实现的目标 服务器代码(采用epoll实现服务器)整体框架main函数init_listen_fd函数(负责对lfd初始化的那一系列操作)epoll_run函数do_accept函数do_read函数内容补充:http中的getline函数 详解do_re…...

C语言每日一题—约瑟夫问题

13个人围成一圈,从第1个人开始顺序报号1、2、3,凡报到3的人退出圈子。找出最后留在圈子里的人原来的序号。要求用结构体编程实现。***输出提示:"\n出圈成员及顺序:" ***输出格式:"%3d" ***输出提示…...

语言:C#

一、VSCode生成exe 二、...

[力扣题解]45. 跳跃游戏 II

题目:45. 跳跃游戏 II 思路 贪心法; 只需记录2个变量,当前点能达到的最远距离,和上一步能到达的最远距离; (真有意思,代码随想录给出的是curDistance,nextDistance2个,…...

pywinauto操作windows应用(未完成)

pywinauto 脚本制作 一 、获取窗口句柄 首先获取句柄,其次扫描组件,然后对按钮和文本进行操作 安装依赖 pip install pywin32 -i https://pypi.doubanio.com/simple扫描全部的句柄 import win32gui# GetDesktopWindow 获得代表整个屏幕的一个窗口&a…...

(超详细讲解)实现将idea的java程序打包成exe (新版,可以在没有java的电脑下运行,即可以发给好朋友一起玩)

目录 实现打包到exe大概步骤 工具准备 1.将java程序文件打包成jar文件 2.准备好jre文件 3.使用exe4j软件打包好 4.最终打包 实现打包到exe大概步骤 1.打包需要满足的条件:将java文件转成jar文件的工具exe4j、 以及需要满足jdk1.8以上(因安装exe4…...

学习软考----数据库系统工程师29

数据操作 SELECT基本结构 简单查询 连接查询 子查询 聚集函数 分组查询 字符串操作 集合操作 外连接 INSERT INTO语句 DELETE语句 UPDATE语句...

STL中的优先级队列

目录 1.引言 2.简介 3.基本操作 4.实现原理 5.自定义优先级比较 6.相关题目 7.能特点 8.总结 1.引言 在C标准库中,优先级队列是一种非常有用的数据结构,它允许我们根据元素的优先级来对其进行排序和访问。这种数据结构在多种应用场景中都发挥着重…...

浅谈Acrel-2000ES储能能量管理系统的设计与应用-安科瑞 蒋静

0 前言 为进一步提升河南省分布式光伏发电发展水平,促进行业健康可持续发展,河南省发布关于促进分布式光伏发电健康可持续发展的通知。对于储能行业,可以用到安科瑞Acrel-2000ES储能能量管理系统。 储能柜EMS能量管理系统 1、产品名称 储…...

会员卡积分小程序系统源码商业运营版 行业一站式解决方案附带源代码以及搭建安装部署教程

系统概述 会员卡积分小程序系统源码商业运营版是一套完整的会员卡积分系统解决方案,包含前端小程序、后端管理系统以及数据库设计。该系统支持多种会员卡类型、积分规则设定、积分兑换、优惠券发放等功能,满足企业对于会员积分管理的各种需求。同时&…...

uniapp 百度地图 拖动获取经纬度级搜索连用

import loadBMap from /utils/loadBMap.js// 百度聚合具体代码 // 拖动 initMapc() {let that thisloadBMap(百度key).then(() > {map new BMap.Map(mapContainer)const centerPoint new BMap.Point(this.longitude, this.latitude)map.centerAndZoom(centerPoint, this.…...

Yarn的安装和使用详细教程(Mac/Window)

目录 Yarn是什么? Mac安装Yarn 使用Homebrew安装Yarn 使用npm安装Yarn Windows安装Yarn 使用npm安装Yarn Yarn使用 常用命令: 特殊命令: Yarn是什么? Yarn是一个流行的包管理工具,用于管理JavaScript项目的依…...

高考志愿系统-学生管理模块分析

1.获取学生信息: 接口:http://localhost:81/dev-api/college_entrance/student/list?pageNum1&pageSize10 请求方式get 默认传参pageNum和pageSize,表示当前页,每页展示数量 首先通过startPage()方法获取分页参数当前页&…...

【问题实操】银河高级服务器操作系统实例分享,开机之后反复重启

1.服务器环境以及配置 物理机/虚拟机/云/容器 物理机 外网/私有网络/无网络 私有网络 处理器: PHYTIUM FT2000PLUS 2200 MHz 内存: 128 GiB 整机类型/架构: HIKVISION DS-V BIOS版本: HK 601FBE02HK 网卡&#xff1…...

攻防世界-web-unseping

题目 知识点 PHP代码审计PHP序列化和反序列化PHP中魔术方法命令执行绕过方式 解读源码 <?php highlight_file(__FILE__);class ease{private $method;private $args;function __construct($method, $args) {$this->method $method;$this->args $args;}function …...

网络网络层之(4)IPv4协议

网络网络层之(1)IPv4协议 Author: Once Day Date: 2024年4月4日 一位热衷于Linux学习和开发的菜鸟&#xff0c;试图谱写一场冒险之旅&#xff0c;也许终点只是一场白日梦… 漫漫长路&#xff0c;有人对你微笑过嘛… 全系列文档可参考专栏&#xff1a;通信网络技术_Once-Day的…...

16-LINUX--线程安全

一。线程安全 线程安全即就是在多线程运行的时候&#xff0c;不论线程的调度顺序怎样&#xff0c;最终的结果都是 一样的、正确的。那么就说这些线程是安全的。 要保证线程安全需要做到&#xff1a; 1&#xff09; 对线程同步&#xff0c;保证同一时刻只有一个线程访问临界资…...

Flask SQLAlchemy 技术指南

文章目录 什么是 Flask SQLAlchemy&#xff1f;安装 Flask SQLAlchemy创建 Flask 应用和数据库模型添加和查询数据运行 Flask 应用总结**数据库迁移&#xff08;Database Migrations&#xff09;****复杂查询****关系模型****事务处理****性能优化****安全性****扩展功能** Fla…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中&#xff0c;我们可能会遇到一些流式数据处理的场景&#xff0c;比如接收来自上游接口的 Server-Sent Events&#xff08;SSE&#xff09; 或 流式 JSON 内容&#xff0c;并将其原样中转给前端页面或客户端。这种情况下&#xff0c;传统的 RestTemplate 缓存机制会…...

centos 7 部署awstats 网站访问检测

一、基础环境准备&#xff08;两种安装方式都要做&#xff09; bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats&#xff0…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

连锁超市冷库节能解决方案:如何实现超市降本增效

在连锁超市冷库运营中&#xff0c;高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术&#xff0c;实现年省电费15%-60%&#xff0c;且不改动原有装备、安装快捷、…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)

在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马&#xff08;服务器方面的&#xff09;的原理&#xff0c;连接&#xff0c;以及各种木马及连接工具的分享 文件木马&#xff1a;https://w…...

Pinocchio 库详解及其在足式机器人上的应用

Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库&#xff0c;专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性&#xff0c;并提供了一个通用的框架&…...

JS设计模式(4):观察者模式

JS设计模式(4):观察者模式 一、引入 在开发中&#xff0c;我们经常会遇到这样的场景&#xff1a;一个对象的状态变化需要自动通知其他对象&#xff0c;比如&#xff1a; 电商平台中&#xff0c;商品库存变化时需要通知所有订阅该商品的用户&#xff1b;新闻网站中&#xff0…...

代码随想录刷题day30

1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币&#xff0c;另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额&#xff0c;返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...