自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 自动驾驶系列(4)ALOAM源码解析-laserOdometry.cpp

首先,它初始化了一些必要的变量和对象,然后进入一个循环,针对边缘点和平面点分别进行配准。同时在每个循环中,它首先找到当前点在上一帧激光雷达数据中的 nearest neighbor,然后根据扫描ID的差异来搜索更近或更远的点。具体来说,它通过订阅激光雷达的不同类型点云话题,获取尖锐角点、不尖锐角点、平坦平面和不平坦平面等信息。然后,对这些点云数据进行处理和关联,利用 Ceres 库进行优化求解,估计机器人的位姿变换。最后,将位姿信息发布到 ROS 话题中,供其他节点使用。再转换到结束点,迭代优化。

2024-05-13 19:10:55 339

原创 自动驾驶系列(3)ALOAM源码解析-scanRegistration.cpp

接收两个pcl::PointCloud类型的参数:cloud_in(输入点云)和cloud_out(输出点云)。原理:是遍历输入点云中的每个点,检查其三维空间坐标(x、y和z)是否满足条件。如果满足条件,将该点复制到输出点云中,否则跳过该点。最后,调整输出点云的大小以匹配有效点的数量。订阅LiDAR点云数据,并对其进行处理,最后将处理后的点云数据发布出去。功能:初始化ROS节点,订阅激光点云数据,发布处理后的点云数据。1.定义了一些变量和结构体,如点云类型、点云尺寸等。7.将处理后的点云数据发布出去。

2024-04-21 21:21:51 747 1

原创 自动驾驶系列(2)精度评估EVO使用

将机器人的位姿数据(全局坐标系)写入一个文件中。实现原理是将机器人当前的位姿数据(odomAftMapped.pose.pose)命令语法:命令 格式 参考轨迹 估计轨迹 [可选项](1)bag话题查询。

2024-04-11 20:16:19 349 1

原创 自动驾驶系统(1)A-Loam安装和编译

LOAM为清华自动化本科毕业的Zhang Ji博士在CMU读博期间,于2014年在RSS期刊发表的关于三维激光传感器的SLAM算法。

2024-04-07 20:39:01 926

原创 第一天

一、选项数据data、computed、method如何使用data:一个函数,定义了很多变量(数据),这些变量服务于整个组件,如定义msg:'helloworld’和a:1;computed :一个对象,包含各种函数(用来操作变量)methods:一个对象,包含各种函数(与事件相关)<template> <div> <div>选项数据...

2020-01-02 17:14:51 82

原创 OkHttp网络操作框架

1.OkHttp概述1.1什么是OkHttp?OkHttp是一个网络客户端,客户端向服务器发出一条HTTP请求,服务器收到请求后返回数据给客户端,客户端对数据进行解析和处理。1.2OkHttp的用法(1)创建一个OkHttpClient对象OkHttpClient client=new OkHttpClient();(2)创建一个Request对象,代表要发送一条HTTP请求(再调用...

2019-07-22 16:37:50 191

原创 ListView的使用(一)

1.adapter的创建及原理适配器是AdapterView视图与数据之间的桥梁,用来处理数据并将数据绑定到AdapterView上2.ListView实现步骤(1)在布局文件中添加ListView <ListView android:id="@+id/app_list_view" android:layout_width="match_pare...

2019-07-16 18:00:23 155

原创 AsyncTask异步任务

1.问题(1)什么是AsyncTask?一个Android 已封装好的轻量级异步类,属于抽象类,即使用时需 实现子类。(2)AsyncTask如何使用?2.异步任务常用方法3.异步下载的实现...

2019-07-15 09:22:15 132

原创 Handler通信

1.问题(1)Handler是什么?有什么作用(2)Handler/Looper/MessageQueue/Message分别是干嘛的(3)Handler的工作原理,如何实现2.Handler的实现和优化3.Handler实践3.1(1)主线程点击按键、发起下载、开启子线程做下载、下载过程中通知主线程。主线程更新进度条下载方法解:(1)获取要下载文件的输入流(2)获取文件总长度...

2019-07-10 12:10:50 589

原创 android网络操作

1.网络操作基础知识(1)HTTP:超文本传送协议(客户端每次请求都需要服务器回送响应,并在请求结束后主动释放连接)HTTPS:HTTP的安全版,在HTTP下加入了SSL层。(2)网络操作需要的类:URL类是用来管理网址的,HttpURLConnection用来管理网络连接,InetAddress用来操作IP地址(3)JSON:一种文本形式的数据交换格式,它比XML更轻量、比二进制容易阅读...

2019-07-09 15:14:55 177

原创 android学习笔记

第一行代码第二天(UI、碎片、广播)1.属性(1)gravity和layout_gravity的区别其实从名字就可以看出,android:gravity用于指定文字在控件中的对齐方式,而android:layout_gravity用于指定控件在布局中的对齐方式。(2)2.布局2.1引入布局可以避免代码的大量重复,通过引入自定义的布局2.2ListView数组中的数据是无法直接传递...

2019-07-06 13:49:41 108

原创 android学习笔记

第一行代码第一天ACTIVITY(1)1.外层目录下的build.gradle文件jcenter:一个代码托管仓库,我们后面要用到的许多开源项目都托管在上面,声明它后就可以引用它上面的开源项目classpath:一个插件,表示构建的是Android项目2.app目录下的build.gradleapply:声明是库模块还是应用程序模块(库模块无法直接运行,只能作为代码库依赖其他APP模块...

2019-07-04 16:58:11 165

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除