自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 资源 (2)
  • 收藏
  • 关注

原创 小白学AI系列(二) -- Python模块和函数

原文地址:小白学AI系列(二) – Python模块和函数今天的内容是带大家学习解释性语言–Python。小编有学过一段时间的C++和Matlab。相对于二者而言,Python是作为学习机器学习的首推编程语言。可解释性、面向对象,这些都让Python更加容易上手。现在主流的深度学习框架,如tensorfow、pytorch都是基于Python语言的,并且其提供了各类用于机器学习和数据分析的包,...

2020-01-03 23:31:16 308

原创 小白学AI系列(一)-- AI简史

经过一段时间的酝酿,小白学AI系列也正是开始了!小编将从三个阶段和大家一起入门人工智能,掌握常用机器学习算法和数据分析技巧。小编专业为数据融合方向,也曾接触过机器学习,但由于人工智能本身就很庞大,小编也只是略懂一二,写过BP神经网络,看过MIT用强化学习进行无人机的控制,但都是浅尝辄止。小白学AI系列是一个入门机器学习系列,小编将和大家一起学习机器学习常用算法,由理论到实践,由浅入深,其中也会穿插...

2019-12-24 12:09:06 588

原创 个人公众号开通啦!!!!

已经开通了个人微信公众号:编程时光机。以后会在公众号里和大家分享知识和生吞活,欢迎大家关注!!

2019-12-10 23:00:59 313

原创 ViusalGDB的安装配置和使用

文章目录VisualGDB插件的作用VisualGDB的安装VisualGDB的使用VisualGDB插件的作用简单的来说,VisualGDB就是让我们在VS上构建和调试Linux应用程序。如果说我们的Linux是服务器,那么我们在Windows下进行的程序开发就可以同步到服务器上并且经过了GDB调试,在Linux下生成可直接执行的程序。其架构如下:当使用VS构建Linux项目时,Visu...

2019-04-21 22:34:43 1151

原创 Python怎么调用matlab的

文章目录环境的安装安装合适的python环境安装用于 Python 的 MATLAB 引擎 API环境的安装安装合适的python环境研究这个也是在知乎上突然看到的,以前python写的多,现在由于工作需要,写matlab和用Windows系统比较多,就在Win10上折腾一下。首先是环境的配置。我安装的是MATLAB R2018b,版本比较新了。Python装的是python3.6.7,这里...

2019-04-19 22:56:51 2812 1

原创 职业课有感

目录关于目标职场的关键第一个五年今天是进所培训的第二天,讲课的是王俊华老师,他给我们分享了一些关于初入职场的经验与感想,其中有些甚是有道理,因此记录下来作为分享。关于目标对于目标这个问题,之前也看过一些b站的视频,大致的意思就是长期的目标会使人感到疲倦和无法坚持,反而短期的目标让人更容易前进和实现。其实这话真的没毛病,大多数的长期目标都会流产,这点我是亲身体会过的。如果真的有一个想要长期的目...

2019-04-16 22:26:30 316

原创 傅立叶变换小结

文章目录傅立叶何许人也傅立叶分析是什么傅立叶变换有什么用傅立叶变换和拉普拉斯变换傅立叶变换的类型和快速傅立叶变换参考文献由于学习雷达信号处理需要,自己把傅立叶变换好好看了一遍,本科的时候也学到过一点,但也早就还给老师了,毕竟不是学信号的,也只学过一些,就把最近学到的一点总结一下.傅立叶何许人也傅立叶是一位法国数学家和物理学家的名字,英语原名是Jean Baptiste Joseph Four...

2018-12-18 11:38:13 666

原创 第一章-----雷达定义和术语(三)

多普勒频率在前面我们说过多普勒定律,其实在实际生活中我们也会发现,当火车离我们而去的时候,我们会感觉到声音越来越远,反之,就会觉得火车的声音开始急促起来,这就是多普勒效应.假设发射的脉冲宽度为τ\tauτ,飞机以速度v向雷达运动,假设从脉冲前沿碰到飞机前沿开始计时,经过Δt\Delta tΔt时间后,脉冲的后沿碰到飞机,这时脉冲的前沿离飞机的距离为τ′\tau^{'}τ′,...

2018-12-10 22:04:26 2050

原创 第一章-----雷达定义和术语(二)

脉冲和连续波(CW)雷达将波形类型作为雷达系统分类,可以分成两种雷达:脉冲和连续波(CW)雷达系统.连续波雷达是那些连续发射电磁能量的雷达.连续波形可以看成是cos2πf0tcos2\pi f_0 tcos2πf0​t形式的纯正弦波.来自静止目标和杂波的雷达回波频谱将集中在f0f_0f0​周围.一个移动目标回波的中心频率将移动fdf_dfd​,也即多普勒频率.因此通过测量频率差,CW雷达以非常精...

2018-12-06 12:08:32 10328 1

原创 第一章----雷达定义和术语(一)

什么是雷达雷达(Radar)是无线电探测和定位(Radio Detection and Ranging)的缩写.雷达系统使用调制的波形和定向天线向空间中的特定空域发射电磁波以搜索目标.搜索空域内的物体(目标)把入射能量的一部分(雷达返回或回波)向雷达方向反射.然后雷达接收机处理这些回波,从中提取距离,速度,角度位置和其他目标识别特征等目标信息.调制 就是对信号源的信息进行处理加到载波上,使其变...

2018-12-04 22:13:09 6481

原创 Linux pppoe上网慢,ifconfig出现avahi

之前不知道动了什么文件,系统上网开始非常的慢,后来ifconfig了一下,发现出现了eno1和eno1:avahi,觉得很奇怪,上网查了一下,这是dhcp方式又给了一个ip地址,具体可以看这个:eth0:avahi就打开了接口文件,执行命令sudo gedit /etc/network/interfaces出现文件如下:我就把从atuo dsl_provider全部删除了,然后重新执行...

2018-12-04 16:27:10 3110

原创 PX4下载指定版本代码和刷固件的三种方式

由于之前下载的是1.7版本的代码,现在v5版本的px4需要最新的代码固件,因此这里记录一下.查看自己代码版本查看自己仓库代码版本的命令如下:git describe --always --tags输出:v1.7.0-rc3-9-g0e1c7eb我之前是V1.7版本的代码,现在要去做实验,需要1.8版本的代码下载指定版本的代码及错误处理代码有哪些版本可以进官方的Github上看:P...

2018-11-10 12:05:01 15177

转载 强化学习资料

转载一下看到的博客,介绍了一些强化学习的环境搭建和paper资料:强化学习资料

2018-08-06 17:08:32 239

原创 BP算法和RBF算法的网络逼近

最近开始做自己的毕业设计,开始记录相关的智能控制学习心得和知识点.BP算法bp算法全称BackPropagation,也就是误差反向传播算法,它的基本思想是梯度下降法,采用梯度搜索技术,通过链式求导法则,最终使得网络输出和期望输出的误差方差最小.BP算法的图如下图所示: 三层网络:输入层,隐藏层和输出层.网络的前向传播和误差反向传播可参考这篇博客:大白话讲解BP算法.这里主要涉及...

2018-08-03 11:51:22 5765 1

原创 《机器学习实战》第七章----AdaBoost元算法

元算法元算法是对其他算法进行组合的一种方法,其背后的思路就是组合多个专家的经验来得到最终的结论,类似于我们的投票.而提升方法是其中最常用的方法,在分类问题中,它通过改变训练样本的权重,学习多个分类器,并将这些这些分类器进行线性组合.弱分类器和强分类器关于AdaBoost方法,相比于SVM的大量推导,它显得更为简单一点,具体的推导,这里有一些个人认为非常好理解的推导: AdaB...

2018-07-16 10:56:05 515

原创 《机器学习实战》第六章----支持向量机

支持向量机SVM(Support Vector Machine)实际上是应用于二分类的一个分类器,其基本模型定义为特征空间上的间隔最大的线性分类器,其学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。这里不对整个过程进行推导,因为看了很多博客,有几篇大佬的博客写的非常清晰,这里只贴出代码和自己写的代码注释.希尔伯特空间(Hilbert Space)支持向量机通俗导论(理解S...

2018-07-12 16:21:00 1006 1

原创 Python的nonzero函数

最近在看SVM程序时遇到了nonzero()函数,对其的返回值开始有误解,因此记录下来.np.nonzero函数是numpy中用于得到数组array中非零元素的位置(数组索引)的函数.np.nonzero()nonzero(a)返回数组a中非零元素的索引值数组。(1)只有a中非零元素才会有索引值,那些零值元素没有索引值; (2)返回的索引值数组是一个2维tuple数组,该tu...

2018-07-12 11:42:38 1935

原创 路口

说到路口,常常让人想到抉择这件事,从我们一出生开始实际上就是在不停的做选择.其实有时候很难说清选择的对和错,因为每一次的选择都有可能让你走向不同的人生.最近在学习SVM的时候心情很是烦躁,因为公式太难推,代码看得没头绪,有点想放弃.不过气馁也只是暂时的,当初决定要把这个学完,就不应该后退.我记得很多自己决定的事常常会半途而废,其实一直想改变自己的这一点,不要轻易决定,更不要轻易放弃.心血来...

2018-07-08 10:34:09 220 2

原创 《机器学习实战》第五章----Logistic回归

Logistic回归所谓回归,就是给一组数据,构建一个多项式对整个数据进行拟合.建立多项式f=θ0x0+θ1x1+⋯+θnxn=θTXf=θ0x0+θ1x1+⋯+θnxn=θTXf=\theta_0x_0+\theta_1x_1+\cdots+\theta_nx_n=\theta^TX.sigmod函数sigmod函数也是一种阶跃函数,为什么经常能看见这个函数在分类问题中经常见到,...

2018-07-03 20:53:26 531

原创 《机器学习实战》第四章----朴素贝叶斯

朴素贝叶斯贝叶斯分类算法是一类基于贝叶斯定理的分类算法.朴素贝叶斯是贝叶斯算法中最简单的一种,也是常见的机器学习方法之一,它是基于概率的分类算法.贝叶斯定理贝叶斯定理可用以下公式表达: P(A|B)=P(B|A)P(A)P(B)P(A|B)=P(B|A)P(A)P(B)P(A|B)=\frac{P(B|A)P(A)}{P(B)} 其中:P(A|B)P(A|B)P(A|B)...

2018-06-23 09:48:36 666

原创 《机器学习实战》第三章----决策树

什么是决策树决策树的概念很好理解,因为它更类似人的思维进行分类,可视化分类规则,如下图所示,就是一个简单的决策树: 我们根据礼物的不同的特征来进行划分,最终可预测出我们是否喜欢这个礼物.树模型的优点是显而易见的:计算复杂度不高,输出结果易于理解,对中间缺失值不敏感,可用于非线性的预测.当然,树模型由于过度依赖特征来进行划分,所以也很可能产生过度匹配的问题.决策树的ID3算法《...

2018-06-16 10:43:11 284

原创 《机器学习实战》-----第二章KNN

KNN算法是基本的机器学习方法,其原理很简单:如果一个实例在特征空间中的K个最相似(即特征空间中最近邻)的实例中的大多数属于某一个类别,则该实例也属于这个类别。 如下图所示: 有两种类型的样本数据,一类是蓝色的正方形,另一类是红色的三角形,中间绿色的圆形是待分类数据.如果K=3,那么离绿色点最近的有2个红色的三角形和1个蓝色的正方形,这三个点进行投票,于是绿色的待分类点就属于红色的三角形。而...

2018-06-09 17:19:07 248

原创 Quadcopter 3D Simulator For Reinforcement Learning

Quadcopter 3D Simulator For Reinforcement LearningThis is a project that implement Reinforcement Learning in quadcopter To Runmakepython3 Sim.pyContactEmail:[email protected]...

2018-06-05 10:23:58 598

原创 python的array和matrix有什么不同

其实python的array和matrix的最大区别在于其乘法的实现不同,这里之所以着重说一下,主要是因为在写一个基于强化学习的四旋翼模型时遇到这个问题(RL-DRONE).先说乘法的不同,看下面的一段代码就明白了:import numpy as npa = np.array([[1,2,3]])b = np.array([[1],[2],[3]])a_new = np.mat([[...

2018-05-28 09:59:04 1936

原创 二叉树及其遍历

最近看了一些二叉树的知识 ,搞得人头晕,先看两篇博客:二叉树基础知识 上一段python递归实现二叉树遍历的代码:# -*- coding: utf-8 -*-class node(object): def __init__(self, data=None, left=None, right=None): self.data = data ...

2018-05-19 16:25:27 150

原创 mc_att_control源码解析

fc

2018-05-19 15:57:19 1491 1

原创 四元数表示旋转的理解

哈密尔顿为了纪念四元数的发明者哈密尔顿,爱尔兰于1943年11月15日发行了下面这张邮票: 哈密尔顿简直是个天才,哈密尔顿从小到进入大学之前没有进过学校读书,他的教育是靠叔父传授以及自学。他找到了法国数学家克莱罗(Clairaut)写的《代数基础》一书,很快就学会了代数,然后看牛顿写的《数理原理》。在16岁时就读法国著名数学家和天文学家拉普拉斯(Laplace)五册的《天体力学》,他发现拉普...

2018-04-25 18:20:30 37781 12

原创 PX4源码解读之fw_pos_control_l1

固定翼的位置控制是一个很重要问题,它不同于旋翼的控制,需要对速度和高度进行解耦控制,并且其不能像旋翼那样进行悬停,其转弯的时候有一个转弯半径.本博客不会对源码进行详细的解读,主要是分享一些自己读源码时的资料,自己读的过程中也有注释,想要的同学私信我.话不多说,分享资料!位置控制中的两个算法在固定翼位置控制中,主要涉及到两个控制算法:L1控制和TECS(total energy cont...

2018-04-23 21:03:31 5072 11

原创 低通滤波器和高通滤波器的程序实现原理推导

傅立叶变换,拉普拉斯变换和Z变换对于信号分析而言,傅立叶变换是必不可少的,我们都知道傅立叶变换是把系统从时域变换到频域进行分析,那么拉普拉斯变换和Z变换是干什么的?简单的来说,由于傅里叶变换的收敛有一个狄利克雷条件,要求信号绝对可积/绝对可和。对于那些不符合狄利克雷条件的信号该怎么办呢,我们将频域的概念扩展到复频域.首先要说明的是傅立叶变换大致有两种,连续时间的傅立叶变换(CTFT)和离散的傅...

2018-04-20 15:33:05 40699 3

原创 mc_att_control基础知识:向量运算和罗德里格斯旋转

向量的叉乘和点乘在我们的mc_att_control中有我们的向量的点乘和叉乘,一般遇到的都是三维的运算(SO(3)SO(3)SO(3)李群). 向量点乘:假设向量a⃗ =[a1,a2,a3]a→=[a1,a2,a3]\vec{a}=[a_1,a_2,a_3]和b⃗ =[b1,b2,b3]b→=[b1,b2,b3]\vec{b}=[b_1,b_2,b_3],则有:a⃗&n...

2018-04-19 19:07:44 942

原创 常微分方程的数值求解

常微分方程首先理解一下什么是常微分方程,简单的说就是只有一个未知数的微分方程,具体定义如下: 凡含有参数,未知函数和未知函数导数 (或微分) 的方程,称为微分方程,有时简称为方程,未知函数是一元函数的微分方程称作常微分方程,未知函数是多元函数的微分方程称作偏微分方程。 一阶常微分方程的初值问题是: {y′=f(x,y),y(x0)=y0,{y′=f(x,y),y(x0)=y0,\beg...

2018-04-13 11:59:32 14346

原创 线性系统的状态空间分析和综合

系统数学描述的两种基本类型对于系统的描述可用如下方块图表示: 系统的数学描述一般有两种基本类型.一种是系统的外部描述,即输入-输出描述.这种描述将系统看成是一个黑箱子,只是反映输入输出的因果关系,而不去表征系统内部的结构和内部变量,对于一个线性定常系统,一般用一个n阶微分方程及对应的传递函数描述.系统的另外一种描述就是内部描述,即状态空间描述.这种描述是基于系统内部结构分析的一类数学模型...

2018-04-01 11:08:08 5932 1

原创 安装Mavlink generator出现UnicodeEncodeError错误

最近在看mavlink,在执行官网的操作时出现了问题,问题如下:Exception in Tkinter callbackTraceback (most recent call last): File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1540, in __call__ return self.func(*args) ...

2018-03-25 22:37:12 489

原创 px4源码解读之fw_att_control

程序和控制流程个人简单的总结了一下整个程序的流程如下: 整个的控制流程图可以在官网中找到: 源码解读在解读源码之前,需要提几个公式,第一个就是协调转弯中的偏航控制,也就是流程图中为什么输入是空速: ⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪p=ϕ˙−ψ˙sinθq=θ˙cosϕ+ψ˙cosθsinϕr=−θ˙sinϕ+ψ˙cosθcosϕψ˙=gVtanϕ(1-1)(1-2)(1-3)(...

2018-03-19 11:30:50 2046 5

原创 PID控制器及其C++实现

PID控制器原理PID控制器实际上是对偏差的控制,其原理图如下: 其数学的表达如下: u(x)=Kp(err(t)+1T.∫err(t)dt+TDderr(t)dt)u(x)=Kp(err(t)+1T.∫err(t)dt+TDderr(t)dt)u(x)=K_p(err(t)+\frac{1}{T}.\int{err(t)dt}+\frac{T_Dderr(t)}{dt}) 其中:u...

2018-03-12 11:34:33 17181 4

原创 Andrew Ng 机器学习——Logistic Regression及其python实现

Sigmoid函数首先介绍一下Sigmoid这个神奇的函数: g(x)=11+exp(−x)g(x) = \frac{1}{1+{exp(-x)}} 其图像如下: 由图像可知,Sigmoid函数的值域在[0,1]之间,这对我们要做的分类是极其好的,因为我们完全可以从概率的角度来进行分类,单属于一个类的概率大于0.5时,我们就可以判定目标属于这个类。 我们需要理解的是,Logisti

2018-01-08 16:51:14 461

原创 Andrew Ng机器学习——线性回归(Linear Regression)和批处理梯度下降(BGD)

线性回归和梯度下降算法关于线性回归和梯度下降算法,简单的说就是指这一类模型:输出是连续值,并且其假设函数是线性函数,所以其cost function很容易求偏导数。利用梯度下降的方法来求参数(局部最优解)。关于这一类算法的介绍推荐以下几个博客: 线性回归及梯度下降 BGD和SGD 本篇博客主要是分享一些可视化的python代码python实现首先是一个多特征的线性回归代码# encoding:

2017-12-26 20:19:58 439

原创 C++虚函数和多态继承

指针、引用和虚函数指针和引用是很好理解的,变量的引用相当于给变量取了个别名,在函数调用时,传引用是会将参数列表的值改变的。#include <iostream>using namespace std;int main(){ int m=6; int &p=m; int *q = &m; cout<<&p<<endl; cout<<q<<endl;

2017-12-05 19:54:55 397

原创 C++的函数指针和宏定义——define、typedefine

函数指针初步先引用一下《C++ Primer Plus 》中对函数指针的介绍:“与数据项类似,函数也有地址。函数的地址是存储其机器语言代码的内存的开始地址。”一般而言我们不关心函数代码的地址,而专注于函数的具体实现,但是在看px4原生固件启动代码文件中,我发现代码中会用函数指针来对定义的宏(nsh_main入口函数)格式进行限制,所以专门看了函数指针这一块。如果不是直接调用函数,而是通过使用函数指针

2017-10-17 16:57:27 4537

原创 PX4自主飞行相关问题

调试入坑赶在回去之前把10月1日新校区试飞相关问题记录一下。首先是调试相关问题。调试具体流程 在校准遥控器时经常出现校准一半就停止的问题,期初认为是固件问题,换了1.6.5,1.6.3,1.5.5三个固件依然不行,最后发现是由于在校准时必须先将roll改变再进行pitch回中,如果调试再遇到问题,将左右摇杆的校准顺序换一下就行了。一般校准完上电后,电机的电调会慢慢的响,这是正常的,因为电调的信

2017-10-03 10:53:37 2694 1

雷达数据处理及应用(何友)

经典的雷达数据处理及应用的电子版,非常适合做数据融合的小伙伴

2018-12-15

卡尔曼滤波

EKF的C++代码实现,基于AHB100传感器实现的多传感器融合

2018-09-06

空空如也

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

TA关注的人

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