<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[m0_49088083的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/m0_49088083</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; m0_49088083]]></copyright><item><title><![CDATA[项目实训（12）简单的页面跳转的实现]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124878287</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124878287</guid><author>m0_49088083</author><pubDate>Fri, 20 May 2022 10:21:43 +0800</pubDate><description><![CDATA[一、序言:
根据页面的逻辑，需要先连接到服务器才能正常工作，因此，需要设计一个两级页面的跳转，并实现对应的服务器地址传输。
二、实现思路：
两者都可以直接利用槽函数来实现，借助于qt的Qstring来直接传输地址。
三、页面跳转
因为并需要严格设计不跳转，所以只需要先设置第一个页面不显示即可，利用定义的信号 emit showmain（）来调用slot show（）
ui-&gt;show();
再主函数里连接起来即可
main.cpp
//这几个变量都需要声明。
connect（&amp;页面1，SIGN]]></description><category></category></item><item><title><![CDATA[项目实训（9）socket部分1]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124878263</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124878263</guid><author>m0_49088083</author><pubDate>Fri, 20 May 2022 10:21:06 +0800</pubDate><description><![CDATA[一、序言:
进一步的设计工作需要涉及到使用socket的工作;
项目分为服务端和用户端；
ps：因为队友（佬）已经承担的工作可以借用到自己的服务端上来，所以不需要自己再设计服务端了，但是学习还是有必要继续完成的。
二、socket简介：
1是什么：

是计算机之间进行通信的一种约定或一种方式。通过 socket 这种约定，一台计算机可以接收其他计算机的数据，也可以向其他计算机发送数据
Socket是应用层与TCP/IP协议族通信的中间软件抽象层，它是一组接口。即Socket提供了操作上述特殊文件的接口.使用]]></description><category></category></item><item><title><![CDATA[项目实训（11）指针，智能指针，pcl的智能指针]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124878244</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124878244</guid><author>m0_49088083</author><pubDate>Fri, 20 May 2022 10:20:18 +0800</pubDate><description><![CDATA[一、序言
在开发过程中，见识到了cpp的指针的杀伤性，吃了不少苦头。
想要从根本上解决这个问题，需要透彻地理解指针。
二、基本知识：

在计算机中，数据是存放在内存单元中的，一般把内存中的一个字节称为一个内存单元。为了更方便地访问这些内存单元，可预先给内存中的所有内存单元进行地址编号，根据地址编号，可准确找到其对应的内存单元。由于每一个地址编号均对应一个内存单元，因此可以形象地说一个地址编号就指向一个内存单元。C 语言中把地址形象地称作指针。

指针就是地址。而可以保存指针的变量被称为指针变量（*声明）。而]]></description><category></category></item><item><title><![CDATA[项目实训（7）qt与pcl2：ui显示pcl点云]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124436288</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124436288</guid><author>m0_49088083</author><pubDate>Tue, 26 Apr 2022 20:34:45 +0800</pubDate><description><![CDATA[一、序言：
在加载前端界面之前，可以先参考rivz本身加载pcl的方法。

 if (ros::isStarted())
    {
        ros::shutdown();
        ros::waitForShutdown();
    }
    wait();

-----------------------
bool QNode::init()
{
    ros::init(init_argc_, init_argv_, "qt_slam_ui_node");
    if (!r]]></description><category></category></item><item><title><![CDATA[项目实训（6）qt与pcl1]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124347370</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124347370</guid><author>m0_49088083</author><pubDate>Fri, 22 Apr 2022 15:41:02 +0800</pubDate><description><![CDATA[一、序言：
想要在qt中显示出来我们需要的图像还需要进一步的配置工作。
不过这部分工作基本上都已经配置完成了。我需要做的仅仅是在qt之中再添加一下pcl的头文件。
这个地方的配置也是在复杂，竟然配置了两天……
二、QT配置pcl
网上给出的参考代码；
根据这些参数可以获得读取到点云信息并进行可视化；

#include &lt;iostream&gt;
#include &lt;pcl/io/pcd_io.h&gt;
#include&lt;pcl/point_cloud.h&gt;
#include &l]]></description><category></category></item><item><title><![CDATA[项目实训（1）：准备工作]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124025783</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124025783</guid><author>m0_49088083</author><pubDate>Mon, 11 Apr 2022 21:42:46 +0800</pubDate><description><![CDATA[序言

我们项目的主要目的是将ros的通信机制移植出来。

为此，小组内的同学已经在寒假中提前设计好了工作原型，在项目正式开始之前，我需要先学习这里面的具体原理：mmap。

什么是mmap？

零拷贝


传统IO方式：

通过read()把数据从硬盘读取到内核缓冲区，再复制到用户缓冲区；然后再通过write()写入到socket缓冲区，最后写入网卡设备。


为了加速硬件设备在读/写内核空间中的

那么对于零拷贝而言，并非真的是完全没有数据拷贝的过程，只不过是减少用户态和内核态的切换次数以及CPU拷贝的]]></description><category></category></item><item><title><![CDATA[项目实训（2）rviz 移植计划]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124025795</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124025795</guid><author>m0_49088083</author><pubDate>Mon, 11 Apr 2022 21:42:14 +0800</pubDate><description><![CDATA[序言：
在介绍项目之前，先了解了有关rviz的基本知识；

ROS针对机器人系统的可视化需求，为用户提供了一款显示多种数据的三维可视化平台——rviz。
rviz是一款三维可视化工具，很好的兼容了各种基于ROS软件框架的机器人平台。在rviz中，可以使用XML对机器人、周围物体等任何实物进行尺寸、质量、位置、材质、关节等属性的描述，并且在界面中呈现出来。同时，rviz还可以通过图形化的方式，实时显示机器人传感器的信息、机器人的运动状态、周围环境的变化等。
总而言之，rviz帮助开发者实现所有可监测信息的图形]]></description><category></category></item><item><title><![CDATA[项目实训（4）：Linux系统的IO机制及小车移动机制的项目学习参考]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124026215</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124026215</guid><author>m0_49088083</author><pubDate>Mon, 11 Apr 2022 21:41:56 +0800</pubDate><description><![CDATA[序言：
首先，明确机制前要区分好基础概念：同步？异步？阻塞？非阻塞？用户？内核？等操作系统的基础概念。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hBC93fOZ-1649335704395)(https://upload-images.jianshu.io/upload_images/2062729-49ac9eb7d4d2d019.png?imageMogr2/auto-orient/strip|imageView2/2/w/786/format/webp)]

阻塞]]></description><category></category></item><item><title><![CDATA[项目实训（5）：qt学习计划2]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124110324</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124110324</guid><author>m0_49088083</author><pubDate>Mon, 11 Apr 2022 21:40:52 +0800</pubDate><description><![CDATA[序言：
继续学习qt，需要注意的是部分cpp的写法需要加强；
比如:

lamda表达式；在java和cpp当中存在一定的差异；而在cpp中写法明显更为复杂
具体的解释可以进一步参考最后的博客

这一部分的学习并不复杂，但是知识点较为繁多，需要的时候可以再查阅帮助文档学习；
lamda表达式和connect连接的结合；
可以进一步简化；
学习 5 页面
1 Q main Window
提供主窗口的类，里面有菜单栏工具栏，锚接部件和状态栏，以及一个中心部件；
是许多应用的基础；


QmenuBar：setM]]></description><category></category></item><item><title><![CDATA[项目实训（3）：Qt学习计划1]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/124110248</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/124110248</guid><author>m0_49088083</author><pubDate>Mon, 11 Apr 2022 21:39:45 +0800</pubDate><description><![CDATA[序言：
我的任务的主要是处理所涉及的rviz移植项目的前端界面，这部分需要使用qt来完成，但是我之前对于这部分的知识有所欠缺，所以需要从头开始学习准备。
在学习的过程中，我将所遇到的困难、学习到的技巧和重点知识以及解决的问题的记录在博客里。
0 准备阶段
配置环境：
qt的开发工具是qt creator，但是下载之后还不能正常运行，需要配置相关的开发环境。
在linux环境下配置要比在windows容易一点……
windows安装失败：缺少kit环境，解决方法：下载windows环境kit，Microsof]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM(17)：小结]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121893462</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121893462</guid><author>m0_49088083</author><pubDate>Tue, 28 Dec 2021 20:09:52 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年12月28日
经过这半个学期的学习，我对于SLAM经历了一个从一无所知到逐渐了解的充实的学习过程。
在学习的过程中，在收获关于SLAM、cpp的知识的同时，也得到了自主学习研究相关的经验和技巧。对于问题的解决能力得到了进一步的提升，对于陌生的代码阅读技能也有了一定的长进。
回顾这三个月的学习：我的学习内容可以大致概括如下：

开课到十月一日：对于ros系统的熟悉认识了解
十月份：开始对于LVI-SLAM的分析，主要是对于雷达部分的分析和总结
十一月份：对于视觉部分的分析，分析]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM(16):视觉部分visual estimator第九节 factor4]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121890596</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121890596</guid><author>m0_49088083</author><pubDate>Mon, 27 Dec 2021 19:19:24 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年12月26日星期日——2021年12月30日星期四
一、背景简介：
这一周继续分析factor文件夹。
这一周我分析的代码部分视觉的残差，特征点在相机的投影下产生的残差:projection_factor.cpp和projection_td_factor.cpp和pose_local_parameterization.cpp以及对应的头文件。
首先是原理分析：
回到我们之前分析过的边缘化的总框架图上去，可以看出，这部分的代码是同ceres息息相关的的，是利用ceres Sol]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM(15):视觉部分visual estimator 第九节 factor3]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121888071</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121888071</guid><author>m0_49088083</author><pubDate>Sun, 26 Dec 2021 09:33:36 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年12月19日星期日——2021年12月24日星期五
一、背景简介：
这一周我分析的代码是factor文件夹
运动模型的IMU计算中得到的残差：相关代码为imu_factor.h和integration_base.h
这部分涉及到的是IMU预积分的相关知识。
在分析雷达部分的时候，我已经初步接触了IMU预积分的知识，这里再来回顾一下：
IMU预积分回顾：

为了有个清晰的认识，首先说下预计分的作用。大家知道，用IMU的slam、vio算法有很多，有滤波器的比如MSCKF，有基于]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM(14):视觉部分visual estimator 第八节 fator2]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121855679</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121855679</guid><author>m0_49088083</author><pubDate>Sun, 19 Dec 2021 14:31:16 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年12月12日星期日——2021年12月16日星期四
一、背景简介：
这一周的工作承接上周的边缘化分析，结束这部分的代码的分析工作。
在查阅资料的过程中我发现了一份讲解，里面有一张这样的图片：
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ur7IuthK-1639117790438)
这张图不仅有助于我们对于边缘化的理解，更是有助于对于整个优化流程的理解。实在是太好了。
原文连接放在了文末，感谢大佬的指导。
可以看出来，我们这部分优化中，最重要]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM(13):视觉部分visual estimator第七节 factor1]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121844987</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121844987</guid><author>m0_49088083</author><pubDate>Sun, 12 Dec 2021 16:39:52 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年12月6日星期一——2021年12月9日星期四
一、背景简介:
上周实在是太忙了，本来还继续学习factor的代码，但是一个接一个的实验和课设打乱了
我的计划。还是按照节奏一点一点慢慢来吧。initial的小结也可以先放一放，等到不忙了再补上一篇。
这周的计划是分析factor，首先分析其基本原理，然后结合代码进行深入的实现分析。
factor如上周介绍所说是用来处理后端优化的部分。这部分的优化包含了三部分:

特征点深度
IMU误差
关键帧位姿

我们对于这个文件的分析也便]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM(12):视觉部分visual estimator第六节:initial5]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121733476</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121733476</guid><author>m0_49088083</author><pubDate>Sun, 05 Dec 2021 19:05:01 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年11月29日星期一——2021年12月2日星期四
附:12月1日typora更新了,新版本要收费,我回退到旧的0.9.8版本之后,发现旧的版本有个致命的bug,会丢失对代码的注释…本来已经读完了代码的,结果下午打开一看注释全没了。
幸好时间不算长,还能挽救。
一、背景简介:
这篇博客分为三部分,第一部分是对于上次的代码分析的补全,结束initial_sfm中最后一部分的问题。
第二部分是对于数学知识的补充,类似于上上一次对于代码的分析一样,这一次是对于数学部分的原理加深理解。]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM（11）：视觉部分visual_estimator第四节：initial 4]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121581965</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121581965</guid><author>m0_49088083</author><pubDate>Sat, 27 Nov 2021 19:25:15 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年11月22日星期一——2021年11月25日星期四
一、背景简介：
继续对于initial文件夹内的代码：initial_sfm进行分析。
这是initial中的最后一部分代码。
不过，在分析之前，首先要明确它的主要功能，以及在系统中的意义。
initial文件夹内存放的是用来初始化系统参数的函数，包括了估计旋转外参数、利用sfm求取特征点和位姿在参考坐标下的值，利用相机旋转约束来标定IMU角速度偏差、以及利用平移来估计重力和各个bk帧的尺度、优化标定重力，确定世界坐标系，确]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM（10）：视觉部分学习 第四节 代码补习]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121438678</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121438678</guid><author>m0_49088083</author><pubDate>Sat, 20 Nov 2021 14:03:51 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年11月17日星期三——2021年11月19日星期五
一、背景简介：
经过上一周对于代码的阅读，我发现自己在这几个开源库函数和cpp常用的代码技巧方面还存在着问题，对于前置的知识也不甚了解。因此我决定暂停一下阅读的进度，专门结合这些开源函数和代码技巧进行补习。也能趁机提升一下自己的cpp编程水平。
本着实用的原则，学习的范围先暂定在前面三次学习中的代码，库函数包括Eigen和open cv两块。学习的顺序由新到旧，逐步回顾。
二、代码分析及问题解答：
1、initial_ali]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM（9）：视觉部分visual estimator第三节initial 3]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121438662</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121438662</guid><author>m0_49088083</author><pubDate>Sat, 20 Nov 2021 14:02:56 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年11月14日星期日——2021年11月15日星期一
一、背景简介：
这一次继续分析initial文件夹下的内容，本次针对的是solve_5pts，包括了该文件的头文件和cpp文件。
这里的solve_5pts的意思是利用五点法求本质矩阵，代码则正是对于这一功能的实现。
在进行代码分析之前，有必要先学习了解一下五点法。

在slam 和sfm领域，恢复相机位姿和3D点的坐标是其重要的任务，描述一个场景的3D点在不同相机的图像坐标之间的关系被称为对极几何关系。对极几何关系描述的矩]]></description><category></category></item><item><title><![CDATA[ROS-3DSLAM（8）：视觉部分visual_estimator第二节：initial 2]]></title><link>https://blog.youkuaiyun.com/m0_49088083/article/details/121305384</link><guid>https://blog.youkuaiyun.com/m0_49088083/article/details/121305384</guid><author>m0_49088083</author><pubDate>Sat, 13 Nov 2021 15:39:31 +0800</pubDate><description><![CDATA[2021@SDUSC
2021年11月12日星期四——2021年11月13日星期六
一、背景简介：
结束了对于initial_alignment的初步阅读，下一步还要继续对于initial文件夹下的其他文件的分析，毕竟我们的最终目的还是对于函数esitimator中的的processImage()做分析。
这次的计划是针对Initial_ex_rotation和solve_5ph给出分析。
二、Initial_ex_rotation分析：

A、功能分析

函数的功能是求解从相机（Camera）坐标系到IM]]></description><category></category></item></channel></rss>