
Matlab
鹊踏枝-码农
专业码农20年-河畔青芜堤上柳,为问新愁,何事年年有?独立小桥风满袖,平林新月人归后。
展开
-
Matlab画图设置指数坐标
这个分两种情况:第一种,纵轴已经显示为指数刻度,只是想改变这个指数,如由10^3改为10^6,可如下设置:参考:How do I change the yaxis exponent when using a double y-axis plot?第二种,纵轴并没有显示为指数刻度,需要把它显示为指数刻度,如下设置:参考:Formatting y axis to exponential format如上可以看出,两种情况有些许差别。原创 2022-06-02 15:30:51 · 8447 阅读 · 0 评论 -
关于Matlab中画图任意调整Markers距离的问题
在写论文时,曲线图有需添加Markers以使曲线更具有区分度,主要考虑到文章在打印出来时,单纯靠颜色无法区分,这就是为曲线添加Markers的意义。可是,在利用Matlab的plot等函数在为曲线添加Markers时导致Markers之间的距离过近,导致Markers太过密集,曲线图之间的Gap也显得拥挤。如下图所示:x = linspace(0,10,25);y = x.^2;p = ...原创 2019-04-29 15:29:25 · 12473 阅读 · 0 评论 -
Matlab输出写入文本文件及csv文件
下面的一个示例是关于统计每个文件夹下的文件数目,具体代码如下:clearclcfolder_path = 'E:\ori\ImageNet_data';all_folder = dir(folder_path);fid = fopen('number_of_ImageNet.txt','a+');for i=1:length(all_folder)-2 folder_nam原创 2018-04-30 11:54:15 · 27098 阅读 · 0 评论 -
关于Matlab的内置函数cat理解
现设im1与im2的size均为32x32x100的数据。那么,A=[im1 im2] 与 B=[im1;im2]的size是多少呢?答案:size(A)=32x64x100; size(B)=64x32x100。这个看上去不太好理解,如果把 A=[im1 im2]=cat(2,im1,im2)更容易理解一些。同理,B=[im1;im2]=cat(1,im1,im2)。同理可知,C原创 2018-03-11 20:47:06 · 1162 阅读 · 0 评论 -
triplet loss原理推导及其代码实现
关于triplet loss原理及推导,参考来源:triplet loss 原理以及梯度推导【前言】 最近,learning to rank 的思想逐渐被应用到很多领域,比如google用来做人脸识别(faceNet),微软Jingdong Wang 用来做 person-reid 等等。learning to rank中其中重要的一个步骤就是找到一个好的similarity fu原创 2018-01-30 16:14:45 · 6395 阅读 · 0 评论 -
MatConvNet之softmaxloss原理及其代码实现--新版
在卷积神经网络ConvNets中,前向传播到最后一层计算网络预测标签(predicted label)与真实标签(Ground Truth)之间的误差,需要定义一个损失函数,如Log loss,Softmax log loss,Multiclass hinge loss,Multiclass structured hinge loss等,本文要讲的就是Softmax log loss损失函数在Co原创 2018-01-21 20:30:42 · 2967 阅读 · 4 评论 -
MatConvNet之softmaxloss原理及其代码实现
在卷积神经网络ConvNets中,前向传播到最后一层计算网络预测标签(predicted label)与真实标签(Ground Truth)之间的误差,需要定义一个损失函数,如Log loss,Softmax log loss,Multiclass hinge loss,Multiclass structured hinge loss等,本文要讲的就是Softmax log loss损失函数在Co原创 2018-01-21 19:54:02 · 1078 阅读 · 0 评论 -
关于Matlab下爬取网络图片问题
因项目需要,需要爬取一些网上的图片,于是在Matlab下试了一下urlread、urlwrite和websave等,均没能成功爬取一张图片。当然,有些错误为一些网站拒绝被爬取,但是用Python轻松爬取,不知是否因为Matlab在这方面还不太成熟还是为何,有知道原因望不吝告知。代码如下:clcclears=urlread('http://blog.youkuaiyun.com/u011501388/a原创 2017-10-26 19:14:01 · 5085 阅读 · 3 评论 -
关于Matlab下的cell元胞与struct结构体
结构体数据类型可以把不同数据类型的变量放到同一个变量名下,通过不同“域”的概念对结构体中的不同数据进行赋值‘操作。结构体中的数据存储在相应的“域”中。结构体的创建主要通过命令行直接赋值法和函数法。1. 命令行直接赋值法>>s.str='ABC';>>s.num='[1:7];>>s.mat=magic(3);2 函数法s=struct('str','ABC','num'原创 2017-10-26 11:11:17 · 16626 阅读 · 0 评论 -
Matlab下调用Python接口
MATLAB 到 C 语言程序的转换可以由两种途径完成,其一是 MATLAB 自己提供的 C 语言翻译程序 mcc, 另一种是原第 3 方公司 MathTools 开发的 MATCOM。后者出现较早,功能远比 MATLAB 自己的翻译程序强大,可以直接将Matlab脚本转换为C/C++代码,MathWorks感受到了威胁,找人家谈判,花巨资收购了MathTools 公司,并已将其开发技术融于MAT原创 2017-11-11 11:25:59 · 21900 阅读 · 0 评论 -
在Matlab下利用VS调试C/C++代码
在Matlab下有时需要调试C/C++代码,如在Matlab下经常调用的支持向量机(SVM)库libsvm就是用C语言编写的,如果想在Matlab下调试C代码,查看中间输出,可以利用VS。这主要涉及C/C++与Matlab的混合编程问题,有兴趣的可以自己找一下相关的资料看一下,这里只介绍Matlab下利用VS进行C/C++代码调试的步骤及其一些注意事项。第一步:在已经打开的Matlab下要运行原创 2017-11-08 21:47:33 · 5000 阅读 · 1 评论 -
Matlab调试小技巧之Function Call Stack
在Matlab进入调试时,通常由一个函数或脚本step in另一个函数或脚本时,则当前的函数或脚本运行时的变量在调进另一个函数或脚本时,均被压栈保存,有时需要查看被进入函数或脚本的同时查看已被跳出函数或脚本被压栈的变量,通常情况下需要返回才能看到原来被压栈的变量,不太方便。还好,在Matlab的调试状态下,Matlab提供了一个小工具,即Function Call Stack,如下图所示:原创 2017-10-30 20:40:57 · 2823 阅读 · 0 评论 -
关于Matlab元胞结构体的赋值问题
此文仅将在Matlab调试过程中发现的一个易忽略的问题作一个记录。编程如下读取结构体target中的数据,target结构体如下所示:代码如下: tr_ind=find(img.images.set==1); te_ind=find(img.images.set==3); train.feature=target.feature{tr_ind}; train.mask原创 2017-10-27 21:41:36 · 2066 阅读 · 0 评论 -
Set breakpoints for debugging—>Matlab调试命令
dbstopSet breakpoints for debuggingcollapse all in pageSyntaxdbstop in filedbstop in file at locationdbstop in file if expressiondbstop in file at location if expression原创 2017-10-20 08:46:51 · 643 阅读 · 0 评论 -
MATLAB之Matlab MEX找不到编译器的问题
本文在安装MATLAB 2015b及Matlab 2016b时,在mex -setup时找不到本人机器上已经安装的VS2013,而且多次卸载重装卸载重装都无济于事,最后得益于这篇文章提供的线索,才终得解决,机是Microsoft Windows SDK 7.1安装的问题,要么这个SDK没安装,要么这个SDK安装的不全,WIN7系统在其后有更新,windows update更新代码为KB2519原创 2017-09-05 14:40:35 · 11119 阅读 · 1 评论 -
mex -setup 提示找不到SDK或编译器
首先说一下本人用的Matlab版本是MatlabR2015b,不知为何在使用mex -setup时出现找不到SDK或编译器的错误。网上有相关的解决方法,但经本人证实,全部无效或具体方法没说清楚不知道如何操作。有说Matlab2015b不支持VS2013版本,经证实不是此原因,也不是Matlab和VS安装先后的问题。具体mex -setup为什么会出现找不到SDK或编译器,具体原因尚不清楚,也许是汉原创 2017-08-16 13:01:53 · 2568 阅读 · 2 评论