- 博客(18)
- 收藏
- 关注
原创 Visual Studio Code 配置c++编译环境
原因平时写c++大部分时间是在windows环境下,然后用Visual Studio调试和编译代码。但是由于会用到多种操作系统,有时候需要远程调试代码。远程调试用Teamviewer或者Microsoft Remote Desktop的话,还是不太方便。再加上也想学习一下g++编译器。相较于msvc,g++跨平台的特性更加实用。配置安装g++编译器(windows:MinGW,linux:sudo安装,macOS: brew安装)。必装的项目有g++,gcc,gdb,vscode安装C++扩展(C
2021-07-06 12:07:27
490
原创 Visual Studio中Debug和Release的区别
问题1问题描述在搭建EMG信号处理系统时,我需要读取一个txt文件。在debug时能正常读取。在release版本下却不能获取其中的信息。后来发现问题在于我使用了assert语句。我的读取代码如下:void Config::gen_data_list(){ QFile f(select_dataset_path); assert(f.open(QIODevice::ReadOnly | QIODevice::Text)); while (!f.atEnd()) { QString l =
2021-07-06 12:02:54
1278
1
原创 发布带运行环境的Qt执行文件
在VS中生成release版本的exe文件后,文件会依赖于使用的lib以及dll文件等。这样换一个运行环境后,可能会无法运行当前的文件。例如基于Qt的exe文件,会依赖于Qt的lib和dll。Qt提供了此问题的解决办法。解决方法打开Qt提供的cmd窗口cd到release版本的exe所在的位置运行 windeployqt file_name.exe当前文件夹下的文件就是对应exe文件所需的运行环境上述操作生成的dll文件以及运行环境,能保证exe文件在没有安装qt环境的PC上运行。此方法只适用
2021-07-06 12:01:55
272
原创 Optimal Linear Estimation (OLE)
Optimal Linear Estimation背景最优线性估计算法是神经解码中一种比较常用的算法。在算法刚提出来的时候,其解码精度和解码速度都属于较高的水准,因此在脑机接口实验中应用广泛。随着神经网络的兴起以及传统机器学习算法的更新,BCI领域用来解码的算法也越来越多,例如KF,UKF,RNN,CNN等。OLE尽管计算精度不如目前的算法,但是计算量小,反馈迅速。因此目前在线的BCI实验OLE的应用仍然较多。算法推导OLE算法是PVA算法的改进,PVA算法在之前的Blog中有提到,是BCI中应用.
2021-05-29 13:34:33
911
原创 隐马尔可夫模型(Hidden Markov Model)
背景隐马尔可夫模型(Hidden Markov Model)是一种常用的统计模型。应用也比较广泛,在时序问题,以及语音识别等问题上有广泛的应用。下面简单介绍一下隐马尔可夫模型。隐马尔可夫模型是在马尔可夫过程的基础上,加入了隐含状态后的一种结构。这里首先介绍一下什么是马尔可夫过程(Markov Process)在一个随机过程中,有一个状态变量III,其下一时刻的状态之和之前的状态有关。例如布朗...
2020-04-20 00:13:13
1460
原创 最小二乘法---线性回归的求解方法
这几天看书的时候突然注意到了这个经典的优化方法,于是重新推导了一遍,为以后应用做参考。背景最小二乘法应该是我接触的最早的优化方法,也是求解线性回归的一种方法。线性回归的主要作用是用拟合的方式,求解两组变量之间的线性关系(当然也可以不是线性的,那就是另外的回归方法了)。也就是把一个系统的输出写成输入的线性组合的形式。而这组线性关系的参数求解方法,就是最小二乘法。我们从最简单的线性回归开始,即输...
2020-04-18 00:40:32
1758
原创 维纳滤波(Wiener Filter)
Wiener Filter因为最近看文章接触了维纳滤波,所以这里写一下Weiner Filter的一些简单理解和推导。基本定义维纳滤波是一种在含噪声的时序信号把信号提取出来的滤波器,其基本框图如下:简单的维纳滤波其实就是通过一个FIR滤波器,去除噪声的过程。在这里,hhh的作用也可以理解为: 通过训练集的数据对信号和噪声的建模,然后通过前几个点的信息,预测当前时刻的噪声信号所占的比例,然...
2020-04-17 01:07:01
16256
7
原创 梯度下降法(Gradient Descent)基础公式推导
这篇Blog的主要内容是关于梯度下降法的一些理解,以及相关的公式推导。梯度下降法很早之前就接触过,但是因为长时间不用,所以理解上也有了一些欠缺,今天看了一些参考文献,写一下自己的一些理解。便于以后帮助自己回忆。Artificial Neural Network关于人工神经网络,这是目前使用最广泛的一类算法了。神经网络和其他的算法相比较,计算更加直接。不需要去推导公式,去计算两者的关系,直接通过...
2020-04-15 00:21:39
2824
原创 无迹卡尔曼滤波 (Unscented Kalman Filter)
最近读了一篇文献,里面用到了无迹卡尔曼滤波(Unscented Kalman Filter)。这里写一下我对这种方法的理解。卡尔曼滤波的理解部分可以参考我之前的文章。我的一点点理解无迹卡尔曼滤波是对卡尔曼滤波的一种改进。这种改进主要是针对非线性的信号。因为在卡尔曼滤波中,预测模型以及测量空间对应的转换矩阵都是都是线性转换。但是在面对非线性信号时,会出现无法拟合的情况。所以就有了无迹卡尔曼滤波。...
2020-04-15 00:20:12
10367
3
原创 Population Vector Algorithm(PVA)
背景Population Vector Algorithm(PVA)是运动神经解码领域很常见的一种解码方法。主要是基于运动神经学领域的一个发现:神经元的发放率和当前的运动方向之间存在余弦调制的关系,即tuning curve[1]。基于这一简单的线性关系,于是有了PVA算法。算法推导:信号预处理 这里的算法推导主要针对神经元集群解码,因为PVA的主要应用还是在神经元解码中 首先,采集到的...
2020-04-15 00:13:28
1564
7
原创 卡尔曼滤波 (Kalman Filter) 公式推导
Kalman Filter本文简单介绍了卡尔曼滤波(Kalman Filter)的基本原理以及我对卡尔曼滤波的一些理解。首先谈一下我的一点点理解卡尔曼滤波是目前应用很广泛的一种滤波方法,最早由Kalman老先生在1960年提出,网上可以找到原文。这种方法最开始用在航天领域,作为轨道矫正的一种方法,有很好的效果。卡尔曼滤波的方法的核心思想,就是用另一个测量空间的观测值去纠正当前空间对被测量的...
2019-08-14 08:54:58
973
原创 win10需要system权限才能修改的解决办法
今天重装了系统,一时没想清楚直接用360粉碎了windows.old文件夹。导致C盘中出现了一个以数字命名的文件夹。当我尝试去删除的时候,发现文件夹需要各种权限才能删除,有管理员权限,有system权限,还有trustedinstaller权限。这里统一给出解决方案另外,重装系统后windows.old文件夹的删除方式应该是磁盘清理,而不是用其他的方式。首先打开文件夹属性,然后选择安全,然后选择编辑
2017-05-03 14:06:41
20948
1
原创 FPGA和CY7C68013A的连接以及控制程序(1)
毕业设计的题目是“基于USB2.0的FPGA和PC之间的通讯”。用的是Altera的FPGA,具体型号暂时不清楚,后续会更新。USB控制器用的是CY7C68013A。开发软件是Quartus II 9.0。连接上是将FPGA和CY7C68013A连接,然后CY7C68013A和PC端连接。我会开一个文件夹写关于这个题目的相关文章。这是第一篇。 总的来说,搭建这个系统,主要分成两个部分: 1. F
2017-02-27 15:59:51
7922
5
原创 Quartus ii 9.0软件的使用和win10不兼容解决方案
Quartus ii 9.0软件的使用和win10不兼容解决方案本文只介绍关于quartus软件的编译和仿真的内容,以Verilog代码为例,不进行电路图绘制。也提供一种win10下仿真不兼容的解决方案 首先打开quartus 然后新建工程文件:File->New Project Wizard 然后出现弹窗,点击下一步会进入工程文件夹路径选择界面,根据自己需要进行设置 然后弹窗
2017-02-23 11:06:03
18951
原创 非局部均值滤波算法
2016.09.09更新,修改了SSIM中值太大的问题首先谈一下什么是非局部均值滤波。在此之前,我们先来看一下均值滤波的原理。均值滤波均值滤波的计算非常简单,将图像像素点灰度记录在数组中,然后设置方框半径的值,然后将方框中的所有点的像素求和取平均,得到的结果就是均值滤波后对应像素点的灰度值。 优点: 计算很快而且简单 从算法可以看出,只是求了平均,并没有很复杂的计算 缺点: 得到的图像很模
2016-08-15 11:53:09
34567
40
原创 初学OpenGL
今天在公司开始了第一天的实习。首先就让学习ray casting算法。关于ray casting算法的心得我会在学习透彻之后再写一篇文章分析。今天首先做的事情就是配置了OpenGL然后学习了OpenGL配合VS的一些基本使用。先上代码吧// openGL_test_d.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include "GL/gl
2016-07-18 21:11:24
930
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人