<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Shi_Technology的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Shi_Technology</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Shi_Technology]]></copyright><item><title><![CDATA[Protobuf3学习(一)------Protobuf编码理解]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/120512868</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/120512868</guid><author>Shi_Technology</author><pubDate>Tue, 28 Sep 2021 20:47:01 +0800</pubDate><description><![CDATA[前言
最近在用protobuf的时候感觉有些场景没有必要使用，为了分析一下protobuf的效率和应用的必要性，因此大致了解了一下其编码方式，一是用于分析，二是做一个开发备忘。
编码结构
Protobuf3的编码结构大致可以用一个公式表示：
field=Tag(Varient)+[Length(Varient)]+Value
field = Tag(Varient) + [Length(Varient)] + Value
field=Tag(Varient)+[Length(Varient)]+Value
]]></description><category></category></item><item><title><![CDATA[Fprime学习（一）-----安装fprime]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/115840906</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/115840906</guid><author>Shi_Technology</author><pubDate>Sun, 18 Apr 2021 22:51:27 +0800</pubDate><description><![CDATA[前言
其实应该有个序章对fprime这个玩意进行介绍，但是我现在还不知道fprime到底怎么部署，能干啥，所以先从安装和tutorials开始写，记录下一些坑
安装过程
官方教程
官方教程是使用python的venv进行虚拟环境管理的，具体按照官方教程操作应该就可以了（虽然我没有试过），官方安装教程在docs/install.md下。我自己安装的环境比较特殊，因此记录下几个坑。
安装的依赖如下：
- Linux or Mac OS X operating system (or Windows Subsyst]]></description><category></category></item><item><title><![CDATA[Pytorch版本过高产生的RuntimeError: Legacy autograd function with non-static forward method is deprecated.]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/112471951</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/112471951</guid><author>Shi_Technology</author><pubDate>Mon, 11 Jan 2021 15:57:58 +0800</pubDate><description><![CDATA[前言
在尝试用ECO Lite做视频分类的时候，使用了作者的Pytorch实现，然而Pytorch实现是基于Pytorch0.4的，我自己的Pytorch版本是1.4,所以在跑模型的时候出现了一些问题，这里记录一下。
问题

第一个问题就是前向传播的静态方法，报错如下：


RuntimeError: Legacy autograd function with non-static forward method is deprecated. Please use new-style autograd fun]]></description><category></category></item><item><title><![CDATA[卡尔曼滤波的概率解释]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/111566205</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/111566205</guid><author>Shi_Technology</author><pubDate>Tue, 22 Dec 2020 20:44:41 +0800</pubDate><description><![CDATA[前言
由于概率论要求有个结课论文，加上之前学习了下简单的Kalman滤波，发现还有很多有意思的内容不太理解，于是水了这么篇文章。
Kalman滤波
卡尔曼滤波算法需要满足两个前提，另外还有一个隐含的前提：
系统为有限维的线性系统，如果系统非线性，可以用扩展卡尔曼滤波算法(EKF)进行最优估计。
噪声服从高斯分布，即高斯白噪声。
系统在k时刻的状态只与k-1时刻状态和当前输入有关(马尔可夫性)。
卡尔曼滤波算法的过程如下，首先定义FkF_kFk​为状态转移矩阵，体现k-1时刻对k时刻的影响；GkG_kGk​为]]></description><category></category></item><item><title><![CDATA[Paddle模型搭建-从keras转换为Paddle]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/108337403</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/108337403</guid><author>Shi_Technology</author><pubDate>Tue, 22 Dec 2020 20:25:56 +0800</pubDate><description><![CDATA[瞎扯淡的部分
keras其实是高度封装的一个神经网络模块，优点就是可以很方便的进行开发，缺点就是很多情况下只能用现成的Layer去构建模型，比如我需要用神经网络去进行控制，那么在控制量和输出量两层中间，使用keras是很难实现误差的反向传播（Back Propagation）的。
由于作业要求，开始使用Paddle进行神经网络搭建，从一头雾水到现在还是一头雾水，总得写点东西（其实是作业要求） 去记录一下，万一以后开发会用到呢（狗头）。
Keras模型文件
版权声明：这部分代码并非本人所写，而是培训营中的作业]]></description><category></category></item><item><title><![CDATA[利用matplotlib和PyQt5绘制姿态球]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/108012936</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/108012936</guid><author>Shi_Technology</author><pubDate>Fri, 14 Aug 2020 23:43:19 +0800</pubDate><description><![CDATA[前言
这个博文可以说是承接前几篇的MPU6050数据读取、姿态解算，这里主要是实现姿态的可视化（也是课程作业要求，爬了）。
鉴于博主喜欢摸鱼的特点，这个实现也是ddl前几天完成的，由于网上没找到具体实现，只好用极坐标这个沙雕方法硬算出来。
将matplotlib嵌入PyQt5
matplotlib提供了在Qt中进行显示的一个backend（应该是？)，这个方法基本上是网上统一这么实现（狗头）。
将matplotlib嵌入PyQt5一般是将其下面的matplotlib.backends.backend_qt5]]></description><category></category></item><item><title><![CDATA[MPU6050卡尔曼滤波解算姿态角]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/107884095</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/107884095</guid><author>Shi_Technology</author><pubDate>Sun, 09 Aug 2020 10:14:48 +0800</pubDate><description><![CDATA[前言
自己在课上吹的牛，课程作业再麻烦也得干。模了好几天鱼，终于在DDL前一天弄完了惯导模块的简单demo，卡尔曼滤波算是我弄的最久的了（大概2-3天），虽然没有彻底弄懂原理（概率论没学，隐马尔可夫链啥的更是不会），好歹就着教程推导给实现了。
实现的效果不咋的，还是存在明显的跳动，估计是MPU6050陀螺仪的事，方差大、数值基本是不准的，爬了。
理论推导
假定条件
使用陀螺仪和加速度计实现卡尔曼滤波有几个基本假设，我码字的时候忘了几个，先列出来，以后想起来再填。

线性系统。对于稳态卡尔曼滤波，应该是线性时]]></description><category></category></item><item><title><![CDATA[使用PySerial库实现简单的串口程序]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/107811932</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/107811932</guid><author>Shi_Technology</author><pubDate>Wed, 05 Aug 2020 23:33:31 +0800</pubDate><description><![CDATA[前言
这块属于随便扯扯，算是个开发备忘的说明吧。
最近有个课程作业，需要实现惯性导航，那么就先使用PySerial库实现加速度计的数值读取，后续再使用PyQt+多进程+matplotlib实现加速度、角速度曲线的实时绘制，这里主要是实现命令行中串口数据的读写、显示。
下位机传输信息
为了简单，用的Stm32 f103刷arduino的BL，使用Arduino进行开发
总体接线情况是MPU6050的IIC接PB6\PB7，关于Stm32的引脚映射如图。
顺便吐槽一下，Stm32使用ardunio开发使用IIC]]></description><category></category></item><item><title><![CDATA[使用Keras和MINIST数据集实现简单的stacking]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/106780323</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/106780323</guid><author>Shi_Technology</author><pubDate>Tue, 16 Jun 2020 10:38:49 +0800</pubDate><description><![CDATA[前言
最近做的项目要结题了，发现中期之后啥都没干，赶紧从0开始学习模型融合和RNN的一些基本知识，先套个模型出来再说。
这里主要是在实验的传感器还没到之前搭的一个学习用的demo，走一遍训练的流程。
大致的模型框架是两个基分类器分别使用全连接神经网络和LSTM/GRU网络，然后将预测结果做concate后，送入个简单的softmax回归输出。由于实在是没法使用在线的MINIST，所以用了coursera ML课程中的的手写数据集。对，就是Ng的那个.mat文件，原始数据维度是5000x400。

整个的de]]></description><category></category></item><item><title><![CDATA[MATLAB Robotics System Toolbox学习(2)----导入urdf文件与机器人逆动力学]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/106328546</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/106328546</guid><author>Shi_Technology</author><pubDate>Wed, 27 May 2020 09:28:40 +0800</pubDate><description><![CDATA[这个算是个开发备忘吧，搞不好以后又忘了呢（笑）。
创建并导入urdf文件
利用solidworks导出urdf文件
其实可以不使用solidworks导出urdf文件，没记错的话，ROS也有Inventor也有导出urdf的插件。如果使用Fusion360的朋友也可以使用GitHub上的一个项目，虽然这个插件有一定的限制，但是也可以导出urdf文件。但是solidworks中装配体的操作是明显好于Fusion360，除了大和难以白嫖正版，solidworks还是挺推荐的。
具体的内容可以参照ROS 用Sol]]></description><category></category></item><item><title><![CDATA[MATLAB Robotics System Toolbox 学习（1）-创建一个机器人]]></title><link>https://blog.youkuaiyun.com/Shi_Technology/article/details/104950285</link><guid>https://blog.youkuaiyun.com/Shi_Technology/article/details/104950285</guid><author>Shi_Technology</author><pubDate>Wed, 18 Mar 2020 19:59:09 +0800</pubDate><description><![CDATA[这里写自定义目录标题前记创建一个机器人并显示刚体树类功能快捷键合理的创建标题，有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图表FLowchart流程图导出与导入导出导入
前记
一开始打算使...]]></description><category></category></item></channel></rss>