
MATLAB
文章平均质量分 82
荪荪
这个作者很懒,什么都没留下…
展开
-
Maltlab中函数 line()以及text()
,比较常见的几种形式line(X,Y)line(X,Y,Z)line(X,Y,Z,'PropertyName',PropertyValue,...)line('PropertyName',PropertyValue,...) low-level-PN/PV pairs onlyh = line(...)具体用法:line([起点横坐标,终点横坐标原创 2018-02-06 14:56:57 · 2836 阅读 · 0 评论 -
Matlab:用内建函数代替for循环
在使用matlab进行矩阵计算的时候,经常会遇到要使用for循环的情况。但其实很多操作可以用内部的一些函数代替。 bsxfun, arrayfun, cellfun, spfun, structfunbsxfun:1C = bsxfun(fun,A,B)bsxfun可以对矩阵A和矩阵B进行对应元素的fun函数操作。转载 2017-07-11 09:27:52 · 3163 阅读 · 0 评论 -
Matlab 中 arrayfun用法
http://blog.sina.com.cn/s/blog_7cf4f4460101bnhh.html利用arrayfun函数可以避免无谓的循环,从而大大提高代码的简介性。1、A=ARRAYFUN(FUN, B)FUN是函数句柄,对B中的每一个元素调用FUN函数(计算顺序随意),结果存放于A中,size(A)==size(B)FUN函数可接受numeric,转载 2017-07-11 08:59:08 · 7959 阅读 · 0 评论 -
Matlab图像处理中uint8和double的问题
为了节省存储空间,matlab为图像提供了特殊的数据类型uint8(8位无符号整数),以此方式存储的图像称作8位图像。imread把灰度图像存入一个8位矩阵,当为RGB图像时,就存入8位RGB矩阵中。因此,matlab读入图像的数据是uint8,而matlab中数值一般采用double型(64位)存储和运算。所以要先将图像转为double格式的才能运算,I2=im2double(I原创 2017-06-07 14:51:21 · 16511 阅读 · 3 评论 -
【MATLAB】fileparts函数
函数功能:在FreeMat、Matlab中,该函数用于将一个文件的完整路径中各部分提取出来。语法格式:[pathstr, name, ext, versn] = fileparts(filename)其中filename是要解析的文件的完整路径,例如:E:\games\IGI\bin\IGI.exe。fileparts将这个文件名(包含完整路径信息)各部分分别提取到四个变量中。原创 2017-04-17 18:31:39 · 15418 阅读 · 0 评论 -
采集负样本的代码
inputpath = uigetdir('e:\','请选择要处理的图片文件夹!');dir_struct = dir(inputpath);[names,index] = sortrows({dir_struct.name}');outputpath='E:\FaceTrain\negpic';len = length(names);for i=1:len [path0,name,ext] =原创 2016-09-01 13:46:04 · 1558 阅读 · 0 评论 -
Matlab实现批量处理图像的两种方法
基本上有两个方法:一个是将你的图像统一进行一次重命名如:1.jpg,2.jpg等,然后利用for循环依次进行处理即可,如下面的语句:假设你的图像共有20副:str='D:\做差\好的图像\'; %我的图像放在D盘,做差文件夹下,好的图像文件夹下for i=1:20 I=imread([str,num2str(i),'.bmp']); %依次读取每一幅图像%在此处进行你的图像处转载 2016-08-31 17:43:36 · 4705 阅读 · 2 评论 -
Matlab批量预处理图片(1)
本Matlab批量预处理图片程序包括:1、批量对图片重命名;2、将多个文件夹下面的图片,拷贝到一个文件夹下;3、给定图片及其中人脸位置,框出人脸[plain] view plain copy%功能描述:批量对图片重命名 %路径格式为,E:\image\(maindir路径下要是子文件夹,不可直接是图片)转载 2016-08-29 00:13:17 · 2404 阅读 · 0 评论 -
Matlab批量读取元胞数组中数据保存到txt文件中(WIDER FACE数据集中,读取人脸标注矩形框信息)
http://blog.youkuaiyun.com/xzzppp/article/details/51888603WIDER FACE:http://mmlab.ie.cuhk.edu.hk/projects/WIDERFace/1、文件说明:"wider_face_split.zip" 文件包含三个子文件:wider_face_train.mat, wider_转载 2016-08-26 18:30:20 · 2194 阅读 · 0 评论 -
matlab中关于pushbotton的左键双击响应问题
如注释所示,我想在按钮上实现四种点击响应,在运行的时候,其它的都行,就是无法实现“左键双击变蓝色”的效果,程序也没有任何报错信息,求大侠指点下到底是烦什么?怎么修改?如果有更好的办法的话我会提高悬赏的!a=uicontrol(gcf,'style','push','BackgroundColor',[0,0.7,0],...'ButtonDownFcn',['if strcmp(get(gcf原创 2016-07-06 22:53:29 · 3402 阅读 · 0 评论 -
Matlab中hold on与hold off的用法
hold on是当前轴及图像保持而不被刷新,准备接受此后将绘制hold off使当前轴及图像不再具备被刷新的性质hold on 和hold off,是相对使用的前者的意思是,你在当前图的轴(坐标系)中画了一幅图,再画另一幅图时,原来的图还在,与新图共存,都看得到后者表达的是,你在当前图的轴(坐标系)中画了一幅图,此时,状态是hold off,则再画另一幅图时,原来的图就看不原创 2016-07-05 13:56:17 · 209646 阅读 · 5 评论 -
Matlab中num2str函数的用法
函数功能: 把数值转换成字符串, 转换后可以使用fprintf或disp函数进行输出。在matlab命令窗口中键入doc num2str或help num2str即可获得该函数的帮助信息。 语法格式: str = num2str(A) 把数组A中的数转换成字符串表示形式。 str = num2str(A, precision) 把数组A转换成字符串形式表示,p原创 2016-07-06 07:42:41 · 138946 阅读 · 0 评论 -
Matlab中nargin,nargout,varargout以及varargin的用法 -
在写《用Matlab演示Parzen窗法》的时候,我还不知道怎样在m中设计可变参数函数。后来阅读一些m自带函数源码时发现了它的秘密,只要将最后一个参数设置为varargin,就可以实现。例如,写了一个函数:function test(varargin)那么在这个函数里,varargin就是一个cell数组,它包含了用户输入的参数。下面是一个例子:function t原创 2016-07-05 22:21:58 · 14041 阅读 · 3 评论 -
Matlab中numel的用法
数组中的元素个数或下标数组表达式语法:n = numel(A)n = numel(A, index1, index2, ... indexn)描述:n = numel(A) 返回的元素数,n,在阵列A。n =numel(A, index1, index2, ... indexn)返回在A(index1, index2, ..., indexn)下标元素的数目原创 2016-07-05 22:49:04 · 10758 阅读 · 0 评论 -
Matlab中guidata()的用法以及如何帮助参数在GUI间传递
handles 在gui中就是一个储存各种句柄和数据结构体.guidata()函数是用来储存和取出这个结构体的函数, 将handles结构体存入figure的特定储存空间中或从中取出, 因此有两种用法:1. guidata(hObject, handles); %%储存handles2. handles = guidata(hObject); %%取出handleshObj原创 2016-07-05 16:25:29 · 37282 阅读 · 1 评论 -
Matlab的GUI中figure的WindowButtonDownFcn与axes的ButtonDownFcn
我的程序任务很简单,就是当在一幅图像上单击的时候,实时显示当前鼠标单击点的坐标,并将当前单击点以红十字叉表示,同是再以此单击点为中心,构建一个绿色的矩形框,在功能上我都已经实现了,但现在却发现了一个问题,就是我发现figure的WindowButtonDownFcn与axes的ButtonDownFcn行为迥异,当我重载figure的WindowButtonDownFcn,可以正确的实现我的功能,原创 2016-07-05 14:46:10 · 9755 阅读 · 2 评论 -
Matlab 中 set(h, 'ButtonDownFcn',@buttonDownCallback)
请问在matlab中,set(h,'ButtonDownFcn',@buttonDownCallback)是什么意思?@buttonDownCallback是什么?下面是源代码。这个代码主要的功能是得到坐标的值。function mytestfunction()f=figure;set(f,'WindowButtonDownFcn',@mytestcallback)function myt原创 2016-07-05 14:16:03 · 9298 阅读 · 1 评论 -
Matlab中save函数的使用
http://blog.sina.com.cn/s/blog_59fac9970100cl0w.htmlsave filename options 保存当前工作空间的所有变量到filename制定的文件中,此文件后缀名通常为mat。如果不指定filename变量,则会默认保存到matlab.mat这个文件中。 具有一下options: -append 在已经存在转载 2017-07-11 09:32:35 · 13275 阅读 · 0 评论 -
MATLAB中常见目录操作
rootDir= fileparts(mfilename('fullpath'));addpath(genpath(rootDir));cd(rootDir);函数参数说明mfilenamemfilename('fullpath')生成当前文件所在的完整目录,包括文件名fileparts[pathstr,name,ext]=原创 2017-07-11 10:07:33 · 3318 阅读 · 0 评论 -
Caffe Matlab feature extraction 特征提取
http://blog.youkuaiyun.com/xgz0124/article/details/50261403Caffe 作为一款比较流行的DCNN特征提取框架已获得广泛应用。在CVPR/ICCV/ECCV关于DCNN的文章中屡屡出镜。Caffe的安装步骤比较繁琐,但是网上相关的配置文章也有很多,本文就不再啰嗦。其中基于Python的Caffe特征抽取可参考http://nbviewe转载 2017-07-11 10:23:56 · 1479 阅读 · 0 评论 -
Matlab中@文件夹/+文件夹,类的点滴知识点
matlab中带“+”和“@”字符命名的文件夹是matlab中的一种文件包, 比如:+folder/Tata.m ,matlab就知道这是一个Tata类文件夹;如果你按照普通的命名方式,比如:someOtherFolder/Tata.m ,或者someOtherFolder/@Tata/Tata.m ,这样matlab只能知道这是一个Tata.m文件。 如果你要用classdef转载 2017-12-19 10:40:21 · 3154 阅读 · 0 评论 -
Matconvnet中imagenet的getImageStart.m代码中求协方差的代码及均值(1,3)
分享一段代码,个人觉得比较好:z = reshape(shiftdim(data,2),3,[]) ;rgbm1{end+1} = mean(z,2) ;rgbm2{end+1} = z*z'/size(z,2) ;avg{end+1} = mean(data, 4) ;averageImage = gather(mean(cat(4,avg{:}),4)) ;rgbm1 = ga原创 2017-08-04 10:27:59 · 675 阅读 · 0 评论 -
Matlab中bsxfun(fun, A, B)函数
bsxfun是一个matlab自版本R2007a来就提供的一个函数,作用是”applies an element-by-element binary operation to arrays a and b, with singleton expansion enabled.”函数功能:两个数组间元素逐个计算的二值操作使用方法:C=bsxfun(fun,A,B)两个数组A合B间元原创 2017-06-07 14:48:36 · 4296 阅读 · 0 评论 -
matlab学习中遇到的问题整理
编程基础实在是很差,将最近在看matlab程序遇到的问题查资料,并整理如下:一.Matlab输出输出参数varargout与nargout,varargin与nargin的区别(来自百度文库)1、varargout与nargout区别 varargout简介: varargout可以看做“Variable length output argument list”的缩写。在matl转载 2017-08-03 14:06:47 · 6937 阅读 · 0 评论 -
Matlab中cell2mat,num2cell函数
Matlab函数cell2mat简介把一个由多个矩阵构成的元胞数组转换成一个矩阵。意即把元胞数组中的多个矩阵合并成一个矩阵。需要注意的是并非任何情况下都能得到正确的结果。 要得到正确的结果, 一个基本要求是, 在元胞数组中,处于同行的矩阵要有相等的行数, 处于同列的矩阵要有相等的列数。比如:myCell= {A, B; C, D}这里我们构造了一个2行2列的元胞数组, 其中原创 2017-08-10 14:05:00 · 33441 阅读 · 2 评论 -
MATLAB中一些isscalar,isnumeric,isnan,iscell,isfield函数
函数名称: isscalar(A)函数功能: 判断A是否是标量,即一行一列的矩阵;函数名称: isnumeric(a)函数功能: 判断输入参数是否是数字类型(包括浮点型和整型)语法格式:tf = isnumeric(A)返回1(true)如果A是数字类型的, 返回0(false)如果A不是数字类型的.类型的。相关函数:isa、islogical函数名称: isn原创 2017-07-27 15:12:44 · 6342 阅读 · 0 评论 -
Matlab中prod函数
B = prod(A)将A矩阵不同维的元素的乘积返回到矩阵B。 Matlab中文论坛如果A是向量,prod(A)返回A向量的乘积。如果A是矩阵,prod(A)将A看作列向量,返回每一列元素的乘积并组成一个行向量B。如果A是多维数组,prod(A)沿着第一个非单例作为向量,返回一个行向量数组。 《Simulink与信号处理》B = prod(A,dim)沿着指定的di转载 2017-08-10 13:19:52 · 8502 阅读 · 0 评论 -
Matlab编程的GPU加速
如果当前matlab支持GPU,可直接在命令行输入 gpuDevice 查看GPU信息, methods('gpuArray')可查询支持GPU操作的函数,这里的GPU目前必须是N卡即nvidia的GPU ,需要提前安装GPU 驱动。1.使用GPU 运算的数据必须为GPU数据类型(除非GPU函数另有说明)2.标量,常数一般没有转移的必要3.只要GPU支持的函数使用GPU数据计算后的结果原创 2017-08-03 11:07:49 · 7696 阅读 · 1 评论 -
Matlab中随机函数:rand函数,randn函数,randi函数
1,rand 生成均匀分布的伪随机数。分布在(0~1)之间 主要语法:rand(m,n)生成m行n列的均匀分布的伪随机数 rand(m,n,'double')生成指定精度的均匀分布的伪随机数,参数还可以 是'single' rand(RandStream,m原创 2017-08-10 09:59:50 · 8290 阅读 · 0 评论 -
matlab中repmat函数, ndims 函数 与 expand 函数 reshape函数,shiftdim函数和permute函数的用法
B = repmat(A,m,n)B = repmat(A,[m n])B = repmat(A,[m n p...])这是一个处理大矩阵且内容有重复时使用,其功能是以A的内容堆叠在(MxN)的矩阵B中,B矩阵的大小由MxN及A矩阵的内容决定,如果A是一个3x4x5的矩阵,有B = repmat(A,2,3)则最后的矩阵是6x12x5例如:>>B=repmat( [1 2;3原创 2017-07-31 13:45:58 · 4997 阅读 · 0 评论 -
Matlab中sum函数,max函数以及any函数
matlab中的 MAX函数的几种形式 (1)max(a) (2)max(a,b) (3)max(a,[],dim) (4)[C,I]=max(a) (5)[C,I]=max(a,[],dim) max函数的结果 (1)max(a) 如果 a 是一个矩阵,比如 a=[1,2,3;4,5,6],max(a)的意思就是找出矩阵每列的最大值, 本例中:ma原创 2017-08-08 19:46:43 · 4785 阅读 · 0 评论 -
基于DAGNN的MNIST NET
DAGNN 是Directed acyclic graph neural network 缩写,也就有向图非循环神经网络。我使用的是由MatConvNet 提供的DAGNN API。选择这套API作为工具的原因有三点,第一:这是matlab的API,相对其他语言我对Matlab比较熟悉;第二:有向图非循环的网络可以实现RPN,Network in Network 等较为复杂的功能,可以随意的引出各转载 2017-08-08 10:37:31 · 1909 阅读 · 1 评论 -
Matlab中的类Classdef
http://blog.youkuaiyun.com/beechina/article/details/50933860Matlab也可以写面向对象的代码,首先表现在可以定义类,以及可以继承,使用类(class)有很多好处,其中一个重要的好处便是解决变量名冲突和让函数、对象的结构清晰。class的static function可以在不定义类的实例直接调用类的成员函数,比如定义[html转载 2017-08-08 10:27:22 · 6251 阅读 · 0 评论 -
matlab
matlab中rng('default')就是matlab启动时,会用一个默认的随机数生成器产生很多0到1之间的伪随机数,就是全局随机流,在matlab启动期间,任何分布的随机数组都是该全局随机流中的数据,当然也可使用其他随机数生成器。原创 2017-07-12 20:34:01 · 2036 阅读 · 0 评论 -
Matlab中删除cell数组中的空元素
现有一个1*20196的cell数组a,想删除其中的空元素(其实我也不知道那个究竟是不是空元素,它显示的是“ [] ”),求问该怎么写。我写的代码如下:for i=1:length(a) k=isequal(a(i),{[]}); if(k==1) a(i)=[]; endend解决方案:原创 2016-07-04 16:28:36 · 24953 阅读 · 1 评论 -
Matlab中读取和写入文件
http://blog.youkuaiyun.com/yelbosh/article/details/8549121在MATLAB中,来读取和写入文本文件是很简单的事。下面,就来简单介绍下。一、读取文本文件思路:1、用fopen来打开一个文件句柄2、用fgetl来获得文件中的一行,如果文件已经结束,fgetl会返回-13、用fclose来关闭文件句柄转载 2016-07-14 20:32:42 · 2186 阅读 · 1 评论 -
Matlab的GUI参数传递方式总结
其实Matlab提供了很多种直接或间接方法实现多fig中的数据共享,只是大家没有注意罢了:1、全局变量2、作为函数的参数传递3、利用控件的userdata数据4、为handles结构体添加新字段5、setappdata函数为句柄添加数据6、跨空间计算evalin和赋值assignin7、将数据保存到文件,需要时读取8、带参数调用GUI的M文件9、嵌套函数(不转载 2016-07-03 11:03:03 · 37422 阅读 · 6 评论 -
Matlab资料收纳
MATLAB学习经验语法小结_百度文库 http://wenku.baidu.com/link?url=Z1ySmiVAmeGdekYL7blaQDp3rihAYs4mwcp3s5_aYZ38SIT4c3vAqY61oNFzyjBE-X9nk8oXk0eRbKaJWCcAezTs3NAe8FQ4asFMX8Dxhkm原创 2016-07-02 20:45:08 · 714 阅读 · 0 评论 -
Matlab strsplit函数语法
一句话说明: Split string at specified delimiterstrsplitSplit string at specified delimiterSyntaxC = strsplit(str) exampleC = strsplit(str,delimiter) exampleC = strsplit(str,de转载 2016-07-11 18:26:45 · 21774 阅读 · 2 评论 -
Matlab对文件目录路径的操作
1、filesep用于返回当前平台的目录分隔符,Windows是反斜杠(\),Linux是斜杠(/)。2、fullfile用于将若干字符串连接成一个完整的路径。例如:>> f=fullfile('D:','Matlab','example.txt')f=D:\Matlab\example.txt(在Windows中,“D:\”表示D盘,“D:”表示目录)3、filepa转载 2016-07-11 17:40:10 · 4617 阅读 · 0 评论