Control算法相关
Control算法相关
- 添加新的control算法官方指导教程。
- 创建一个控制器;
- 在文件control_config中添加新控制器的配置信息;
- 注册新控制器。
- 如何添加新的CAN卡。
- Apollo中使用额默认CAN卡是ESD CAN-PCIe卡;
- 实现新CAN卡的CanClient类;
- 在CanClientFactory中注册新的CAN卡;
- 更新配置文件。
- 在预测模块中添加新评估器。
- 评估其通过应用预测训练的深度学习模型生成特征(来自障碍物和当前的原始)以获得,模型输出。
- 在proto中添加一个字段;
- 声明一个从Evaluator类继承的类NewEvaluator;
- 实现类NewEvaluator;
- 更新预测配置;
- 更新评估器管理;
- 在预测模块中添加一个预测器。
- 预测器是为每个障碍物生成预测轨迹。
- 定义一个继承基类Predictor的类;
- 实现新类NewPredictor;
- 在prediction_conf.proto中添加一个新的预测期类型;
- 更新prediction_conf;
- 更新预测器管理器(Predictor manager)。
- 如何添加外部依赖项。
- 用Bazel作为包/依赖性的管理系统。
- 在workspace中添加一个名为
foo的工作站规则; - 明确
foo的来源(通常是一个URL)和版本(通常是git的标签或commit的哈希码); - 为了建构, 在third_party目录下新建一个
foo.BUILD, 这个BUILD文件和和目标中的Bazel BUILD文件一样; - 在依赖于foo的目标中, 把
@foo://:<foo_target>加入到依赖项中。 - 用Bazel添加一个外部依赖项, 如果用Bazel把foo添加进工作站规则来构建目标。
- Apollo 3.0技术指南。
- 调试Dreamview启动问题。
- Apollo的入门编译教程。
- 怎么启动的程序?
- 所有编译完成的产出二进制文件放在bazel-bin这个文件下的, modules子目录中放的是所有模块的产出;
- 利用
bash scripts/bootstrap.sh脚本启动所有的程序。
- 解析bootstap.sh脚本:
- linux ulimit命令。
- 在start函数中会调用
bash scripts/roscore.sh start启动ros的消息管理器。 - 在start函数中会通过
supervisord -c /apollo/modules/tools/supervisord/release.conf启动release.conf文件中的所有进程。
- 所有的参数在.conf的文件中进行了重定向,重定向与
--flagfile=modules/common/data/global_flagfile.txt。- 设置车辆配置文件
--vehicle_config_path=/apollo/modules/common/data/mkz_config.pb.txt;- 有前后左右到中心点的距离;
- 车高、车宽、车长信息;
- 方向盘和速度相关的配置项。
- 配置日志输出文件
--log_dir=/apollo/data/log;- 这是一个文件夹;
- 是否使用导航模式
--use_navigation_mode=false; - 地图的位置
--map_dir=/apollo/modules/map/data/sunnyvale_big_loop。- 这个位置中什么东西也没有,所以dreamview中啥东西也没有。
- 设置车辆配置文件
- 怎么启动的程序?
- Apollo是一个编译脚本:
- 设置apollo的路径;
- 检查系统的机器架构;
- 检查系统配置项;
- 检查esd-CAN卡文件;
Apollo项目中工厂模式分析
- 工厂模式的详解。
- 工厂要生产产品,A工厂生产A产品, B工厂生产B产品。
- 也可以让一个抽象的工厂生产两个产品。
- 工厂模式下,抽象工厂内只有一种抽象类产品,即这类工厂只能生产一类产品。
- 抽象工厂模式下,抽象工厂内有多种抽象类产品,即这类工厂能生产多类产品。
- C++实现工厂模式。
- 在很多应用中,需要创建哪些具体的类对象,事先根本无法知晓,只有在程序实际运行的那一刻,才能从配置文件、注册表或数据库获取需要创建的类对象。
- 我们希望通过改变配置文件、注册表或数据库来动态地使用不同的算法类,以期获得最优的性能。
- Apollo项目使用的是抽象工厂模式,因为该项目使用模板定义工厂类,因此工厂模式经典定义中的抽象工厂类就不再需要了。
Control算法相关的更多相关文章
- logging日志模块,hashlib hash算法相关的库,
logging: 功能完善的日志模块 import logging #日志的级别 logging.debug("这是个调试信息")#级别10 #常规信息 logging.info( ...
- geatpy - 遗传和进化算法相关算子的库函数(python)
Geatpy The Genetic and Evolutionary Algorithm Toolbox for Python Introduction Website (including doc ...
- SIFT算法相关资料
SIFT算法相关资料 一.SIFT算法的教程.源码及应用软件1.ubc:DAVID LOWE---SIFT算法的创始人,两篇巨经典经典的文章http://www.cs.ubc.ca/~lowe/ 2. ...
- MS-queue算法相关
简介: 多核多线程已经成为当下一个时髦的话题,而无锁编程更是这个时髦话题中的热点话题.Linux 内核可能是当今最大最复杂的并行程序之一,为我们分析多核多线程提供了绝佳的范例.内核设计者已经将最新的无 ...
- [转]计算机视觉之跟踪算法——相关滤波器Correlation Filter
https://blog.csdn.net/victoriaw/article/details/62416759 ASEF相关滤波器: Average of Synthetic Exact Filte ...
- iOS面试的算法相关
转自:https://www.jianshu.com/p/c4820b159159 面试中遇到的这些算法,在平常工作中,基本不会用到. 不过现实的面试中经常喜欢问关于算法的问题 有些还要求写出代码.一 ...
- GNN 相关资料记录;GCN 与 graph embedding 相关调研;社区发现算法相关;异构信息网络相关;
最近做了一些和gnn相关的工作,经常听到GCN 和 embedding 相关技术,感觉很是困惑,所以写下此博客,对相关知识进行索引和记录: 参考链接: https://www.toutiao.com/ ...
- python 第二百零八天 ----算法相关
查找方法 : 顺序查找法 二分查找法 import time,random #时间计算 def cal_time(func): def wrapper(*args,**kwargs) ...
- 算法相关——Java排序算法之希尔排序(五)
个子块,即{3,5},{1,0},{5,2},{9,4},{6,12},将每个子块进行插入排序(即第i位与第i+5位进行比较交换),初步排序结果为{3,0,2,4,6,5,1,5,9,12}.希尔排序 ...
随机推荐
- Hadoop记录-HDFS balancer配置
HDFS balancer配置(可通过CM配置)dfs.datanode.balance.max.concurrent.moves 并行移动的block数量,默认5 dfs.datanode.bala ...
- Sqlserver中的视图
一.视图的基本知识 什么是视图:视图是从一个或多个表导出的虚拟的表,具有普通表的结构,物理上是不存在的.视图是动态的数据的集合,数据是随着基表的更新而更新. 视图的优点: ①在多表查询时,查询方便. ...
- WebAPI性能优化之压缩解压
有时候为了提升WebAPI的性能,减少响应时间,我们会使用压缩和解压,而现在大多数客户端浏览器都提供了内置的解压支持.在WebAPI请求的资源越大时,使用压缩对性能提升的效果越明显,而当请求的资源很小 ...
- [开源 .NET 跨平台 Crawler 数据采集 爬虫框架: DotnetSpider] 学习
http://www.cnblogs.com/jjg0519/p/6707513.html
- Part-Seven
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
- MapReduce实现词频统计
问题描述:现在有n个文本文件,使用MapReduce的方法实现词频统计. 附上统计词频的关键代码,首先是一个通用的MapReduce模块: class MapReduce: __doc__ = ''' ...
- SpringBoot系列: Json的序列化和反序列化
============================= 控制 json 序列化/反序列化=============================1. @JsonIgnoreProperties的 ...
- 开源框架.netCore DncZeus学习(五)下拉树的实现
千里之行,始于足下,先从一个小功能研究起,在菜单管理页面有一个下拉树,先研究下它怎么实现的 1.先找到menu.vue页面 惯性思维先搜索请选择三个字,原来是动态生成的 再向上找DropDown组件, ...
- None.js 第二步 REPL(交互式解析器)
简单的表达式 $ node 1 + 4 // 5 5 / 2 // 2.5 3 * 5 // 15 使用变量 $ node x = 5 // 5 var y = 10 // undefined con ...
- udp_connect函数
#include <netdb.h> #include <stdlib.h> #include <unistd.h> #include <string.h&g ...