- 博客(52)
- 收藏
- 关注
原创 matlab多元线性回归
1.https://www.cnblogs.com/Mayfly-nymph/p/10539106.html ,作者:Hk_mayfly。2. https://zhuanlan.zhihu.com/p/45149297 ,一个大学生的日常笔记,回归分析。技巧:通过增加X1^2,X2^2,或者X1*X2等构造的特征项,可以提高回归模型的拟合准确度;输入测试X_test(若有多个X_test,可用循环或矩阵实现);R=stats(1)=0.82,越接近1则代表拟合得越好;XX1_bu:是补全后的数据特征;
2024-01-10 11:51:06
1795
原创 RANSAC算法详解
虽然理论上两个未知数的方程只需要两组值即可确认,但由于系统误差的原因,任意取两点算出的a与b的值都不尽相同。RANSAC被用于拟合这个模型的参数(矩阵各行列的值),由此便可识别出不同照片中的同一物体。给定两个点p1与p2的坐标,确定这两点所构成的直线,要求对于输入的任意点p3,都可以判断它是否在该直线上。RANSAC算法的输入是一组观测数据(往往含有较大的噪声或无效点),一个用于解释观测数据的参数化模型以及一些可信的参数。经过我的实验,对于包含80%误差的数据集,RANSAC的效果远优于直接的最小二乘法。
2024-01-08 17:51:08
794
转载 HOG特征人体检测
由于人体姿势和外表的多变,在图像中检测人体是一项具有挑战性的工作,要在不同的光照和背景下都能清晰的识别出人体,首先需要的是一个强壮的特征集。考虑到对光照和阴影的不变性,对所得到的直方图进行对比度归一化,即将几个细胞单元组合成一个更大的块(blocks),并归一化块内的所有细胞单元。这篇文章中,对于梯度介绍的比较清楚。它的方向是最大方向导数的方向,它的模为方向导数的最大值。利用HOG特征的方法基本观点是:局部目标的外表和形状可以被局部梯度或边缘方向的分布很好的描述,即便我们不知道对应的梯度和边缘的位置。
2024-01-08 12:02:42
215
转载 遗传算法解决非线性规划问题
以上两种解法不过是解法二将函数集中在一起写了而已。虽然解法二结果浮动较大,但是明显解法二的结果最优,其多次求解的值集中在e-21数量级。,为什么解法一的结果就始终集中在 -8.8818e-16?
2024-01-08 10:38:46
326
转载 图像处理-线性滤波- 图像微分(1、2阶导数和拉普拉斯算子)
更复杂些的滤波算子一般是先利用高斯滤波来平滑,然后计算其1阶和2阶微分。由于它们滤除高频和低频,因此称为带通滤波器(band-pass filters)。在介绍具体的带通滤波器前,先介绍必备的图像微分知识。
2024-01-05 12:43:50
70
转载 c++算法之迷宫问题 和 DFS
其实就是电脑爬墙走。例如:现在在[x,y]点,我要判断[x+1,y],[x-1,y],[x,y+1],[x,y-1]点,是不是有障碍物或走过的路一样。在看到nx和ny,就会发现:这不就是[x+1,y],[x-1,y],[x,y+1],[x,y-1]的坐标吗?在c++里,我们一般用二维数组来存储,例如n*n大小的地图就是m[n][n],地图中存在空地或障碍物,就可以使用 0表示空地,1表示障碍物。如果细来讲,我们可以把迷宫化为一个平面矩阵,通过行、列来确定位置,对应位置不同的内容表示不同的地图信息。
2024-01-04 10:59:10
739
转载 matlab神经网络工具箱
【validation check=6:若连续六次训练,训练误差没有变小,则假定继续训练下去效果不会变好,停止训练。从图中可以得到:在epochs=5时,验证集valiadation和测试集test达到最小均方误差。可以得到:原目标值和预测值的相关度;用系数R表示,若R越接近1,则表示线性化程度越高,结果越好。横坐标:训练结束时的epochs数【神经网络一次前向传播+一次反向传播=一个epoch】可以得到:神经网络的输出值与样本原目标值的误差;纵坐标:神经网络输出预测值;横坐标:误差区间的中位数;
2024-01-04 10:53:18
598
转载 Matlab-simulink仿真FM(PM)调制
已知锁相环电路具备频率解调的功能,主要是先将调制信号进行下变频,将频率调制信号分解成低频(存储有基带信号信息)和高频信号,再使用低通滤波过滤高频信号得到含有基带信号的低频信号,再作为VCO的输入进行锁相,输出与基带信号相位一致的信号,即基带信号(此基带信号与原始基带信号具有同样的信息,但却不是原始基带信号,而是锁住基带信号相位“复制”来的)。②、将基带信号(PM)或积分后的基带信号(FM),直接放入(控制)调制信号的瞬时相位偏移;使用的是DSP模块下的Sine Wave,参数设置幅度为1,频率为10。
2024-01-03 12:15:07
2099
转载 matlab创建HDF5文件
创建一个HDF5数据集,该数据集的名称为“数据集名称”,其区段由文件名在文件中指定。如果DATASETNAME是完整路径名,则创建所有中间组(如果它们还不存在)。如果文件名不存在,就创建它。大小元素应该是Inf,以便指定无限的范围。我电脑上有两个matlab,64位的R2016a版本的不能用,后来用的32 位R2012a可以成功使用。2、h5read, h5write, h5info, h5disp.命令直接help查看就可以了。二、matlab帮助查看。
2024-01-02 10:38:20
254
转载 fdatool的滤波器设计
定点就是位数固定,浮点通常表示为:2.2e8,即xyz的形式,x:常数,y:基底,z:指数。浮点转换为定点在MATLAB中称为量化,使用quantizer和quantize两个函数完成,通常为了便于表示,也会使用num2bin,num2int,num2hex等指令。有符号数,先放大100倍,整数最大为41:2^6 > 41,最小需要6位整数,又希望扩大100倍后的数据,小数点后精确到0.01(即原数据精度:1e-4),2^-7 < 0.01,即需要7位小数。
2024-01-01 18:22:18
538
转载 直方图均衡化与直方图规定化的MATLAB实现
原来直方图中间的峰顶部分对比度得到增强,而两侧的谷底部分对比度降低,输出图像的直方图是一个较平的分段直方图:如果输出数据分段值较小,会产生粗略的分类的视觉效果。从MATLAB2007a开始,提供了一个新的函数adapthisteq,该函数限定对比度适应性直方图均衡化,它先对图像的局部块进行直方图均衡化,然后利用双线性插值方法把各个小块拼接起来,以消除局部造成的边界。由于都是作直方图均衡化处理,所以处理后的原图像的灰度概率密度函数Ps(S)及理想图像的灰度概率密度函数Pv(V)是相等的。
2024-01-01 11:21:42
58
转载 使用Simulink进行无刷直流电机控制仿真
在Matlab界面中new->model之后,找到Simulink Library Browser,这里面有系统自带的很多模块,接下来我们就需要找到自己所需要的模块了,了解无刷直流电机的工作原理以后,接下来就是找到直流电源、三相逆变桥、无刷直流电机模型。一切准备就绪,下面来看仿真结果,A相电流,霍尔信号以及转子机械角度如下图。如上图,这是换相逻辑的模型,其中我采用的是下桥臂恒通,上桥臂PWM调制的方式导通Mosfet,目前占空比的给定方式采用的是常数,后续可以根据转速环进行PI给定。模型搭建完成后如下图。
2023-12-30 13:57:21
1550
1
转载 结合OPENSIFT源码详解SIFT算法
SIFT算法(Scale-Invariant feature transform,尺度不变特征变换)通过在图像中提取独特性不变特征,可以实现物体或场景在不同视角下的可靠匹配。其提取的特征对于图像缩放、旋转和一定范围内的三维仿射变换、噪声叠加、光照变化均具有不变性。由于特征的高度独特性,场景中的每一个特征都有很大的可能在由多幅图像提取的特征数据库中得到正确的匹配结果。因此使用这些特征可以用于物体识别。
2023-12-30 13:43:34
134
转载 异步复位同步释放
在实际的工程中选择复位策略之前必须考虑许多设计方面的问题,如使用同步复位或者异步复位或者异步复位同步释放(Asynchronous Reset Synchronous Release或者Synchronized Asynchronous Reset),以及是否每一个触发器都需要进行复位。复位的基本目的是使器件进入到可以稳定工作的确定状态,这避免了器件在上电后进入到随机状态导致跑飞了。在实际设计过程中,设计者必须选择最适合于设计本身的复位方式。
2023-12-30 12:13:04
31
原创 matlab中如何将视频保存成图像
程序运行结束后,会在xxx文件夹中生成fnum/step张图片,每一张图片对应视频中相应的一帧。利用MATLAB将视频的每一帧保存成一幅图像,并自动命名。本文方法简单,容易学习。接下来,我们要写一个循环来将视频的每一帧保存成.png格式的图片。[2] matlab帮助文档。
2023-12-29 17:54:06
1570
原创 MATLAB曲线拟合
在MATLAB的NAG Foundation Toolbox中也有一些曲面拟合函数,如e02daf,e02cf,e02def可分别求出矩形网格点数据、散点数据的最小平方误差双三次样条曲面拟合,e02def等可求出曲面拟合的函数值。其中n表示多项式的最高阶数,xdata,ydata 为要拟合的数据,它是用数组的方式输入。其中Fun表示函数Fun (p, xdata)的M-文件,p0表示函数的初值。,并且已知数据点(xi, yi), i = 1,2,…, 则输出p = [p1, p2, p3, p4]。
2023-12-29 10:46:20
800
原创 在matlab中对hsv进行均匀量化和非均匀量化
首先,进行非均匀量化,H,S,V三通道分别量化为16,4,4级,返回一个向量。接着,进行均匀量化,H,S,V三通道分别量化为16,4,4级,返回一个向量。
2023-12-28 12:38:40
800
转载 MATLAB实现OTSU
最大类间方差是由日本学者大津(Nobuyuki Otsu)于1979年提出,是一种自适应的阈值确定方法。算法假设图像像素能够根据阈值,被分成背景[background]和目标[objects]两部分。然后,计算该最佳阈值来区分这两类像素,使得两类像素区分度最大。公式: 记 M = 256 单通道灰度分级 Sum = 像素总数。可以看到自己编写的与matlab自带效果相同。
2023-12-28 11:05:16
529
转载 MATLAB画图之多子图画法(subplot和自己确定大小位置两种方法)
其中,'position',[0.6 0.1 0.3 0.3]的含义可以参考我之前的博客文章,有详细说明;如果要自定义整个figure的大小,设置gcf,我之前的博客文章也有详细说明。使用subplot的这种方法,如果想要自定义子图的大小和位置该怎么设置?解决问题:在一个图中画多个子图,又能自己确定子图的大小和位置。第二种方法:直接使用axes函数。第一种方法:使用subplot。
2023-12-27 15:04:21
2671
原创 Matlab文件夹、文件、读取操作(汇总)
position是以相对于文件开头的字节数来表示的。Textread既能处理有固定格式的文件,也可以处理无格式的文件,还可以对文件中每行数据按列逐个读取。MATLAB自带的MAT文件为二进制文件,但为了便于和外部程序进行交换以及方便查看文件中的数据,也常常采用文本数据格式(数据采用ASCII码格式,可以表示字母和数字字符)与外界进行数据交换。一个是返回一个文件标识(file Identifier),它会作为参数被传入其他对文件进 行读写操作的命令,通常是一个非负的整数,可用此标识来对此文件进行各种处理。
2023-12-27 12:52:06
1658
1
转载 图像的几何运算
图像的几何运算是指引起图像几何形状发生改变的变换。与点运算不同的是,几何运算可以看成是像素在图像内的移动过程,该移动过程可以改变图像中物体对象之间的空间关系。
2023-12-27 09:42:10
19
原创 matlab列优先与高维矩阵重构
先到 http://caffe.berkeleyvision.org/ 下载 训练好的model bvlc_reference_caffenet.caffemodel;由于matlab在列化a(:)以及reshape(a)等操作中是列优先的,所以要重构出新的高维度矩阵,通常要把reshape和permute结合起来使用。更多caffe使用也请参看上面的网址。
2023-12-26 21:00:38
758
原创 C++调用Matlab的.m文件
Matlab是一个强大的数学计算/仿真工 具,其内置了很多实用的现成的函数,而且我们经常也自己定义很多m函数。但在很多情况下,我们不得不使用VC编程。那么,如何在VC中利用matlab的 资源呢?在这里我简要的以一个简单的例子来说明一下如果在VC中调用matlab中定义的.m文件。繁多的理论就不说了,简明扼要的说一个实例。相信大家看过之后 都会马上学会的其中灰色底显示的部分是需要我们手工输入的部分。
2023-12-21 17:31:58
988
1
原创 Matlab 之 数据元素访问
从中我们可以发现,array-index与struct field访问的方式速度差不多,可以达到约每秒4亿次,但cell-index的访问方式则明显变慢,速度为约每秒760万次,大约慢了50倍。Matlab的含义是矩阵实验室,其特征之一就是数据的向量化操作,借此提升软件运行效率。那么,必然会涉及数据元素的访问。因此,如若可能,在实验中,我们还是应该尽量采用向量化,或者结构体来定义数据结构,从而加快运行速度。不同的访问方式,效率差别很大,我们以单个元素或者域的访问为例,探讨不同的数据结构的访问时间。
2023-12-21 13:46:34
414
1
原创 SPM FDR校正
自己对topological FDR原理的理解(因为内部原理很复杂,不是特别懂,只写出简单理解,留着以后补充):topological FDR是基于高斯随机场理论,认为voxel之间不是独立的,超过T threshold的voxel 构成了一个个cluster,然后对这些cluster进行FDR校验,这样独立单元(原来是voxel总个数,而现在就是cluster的个数)就大大减小了。这样得到的激活图就是cluster-wise FDR校验的结果,也就是topological FDR校验的结果。
2023-12-19 19:44:47
1164
2
原创 matlab命令
trisurf 不规则格点表面图 triu 上三角阵 try-catch 控制流中的Try-catch结构 type 显示M文件。whatsnew 显示Matlab中 Readme文件的内容。mfunlis 能被mfun计算的MAPLE经典函数列表。notebook 启动Matlab和Word的集成环境。simset 对SIMULINK模型的仿真参数进行设置。optimset 创建或改写优化泛函指令的选项参数值。simget 获取SIMULINK模型设置的仿真参数。
2023-12-18 14:37:00
828
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人