matlab
咆哮的狼
IT公司的算法工程从业人员
展开
-
matlab如何将矩阵数据转换成txt文件保存
具体的命令是:用save *.txt -ascii xx为变量*.txt为文件名,该文件存储于当前工作目录下,再打开就可以 打开后,数据有可能是以指数形式保存的.看下面这个例子:a =[17 24 1 8 15;23 5 7 14 16 ;4 6 13 20 22 ;10 12 19 21 3 ;11 18 25 2 9 ];save afile.txt -转载 2013-02-27 16:04:11 · 42876 阅读 · 3 评论 -
【MATLAB与C的混合编程】之【MATLAB调用C程序】
在MATLAB中配置C编译器,命令mex -setup1)提示Would you like mex to locate installed compilers [y]/n?选n2)提示Compiler:选8 (注:Microsoft Visual C++ 2008 SP1)3)提示Use C:\Program Files\Microsoft Visual Stu转载 2013-04-10 23:02:05 · 715 阅读 · 0 评论 -
Matlab 实现输入输出参数可变的情况
这里重点需要用的是 varargin 和varargout,以及统计输入参数个数的函数nargin,统计输出参数个数的nargout以上三个参数很重要,那么就开始直接上代码吧:function varargout = Multiply(varargin)if nargin == 2 a1 = varargin{1}; a2 = varargi原创 2013-03-23 17:13:27 · 7359 阅读 · 1 评论 -
How to get rid of the white margin in MATLAB's saveas or print outputs
website http://tipstrickshowtos.blogspot.com/2010/08/how-to-get-rid-of-white-margin-in.htmlWhen you want to include your plots/figures in your LaTeX document, you preferably want them in vector g转载 2013-04-07 23:57:41 · 1273 阅读 · 0 评论 -
MATLAB 抽取子图的直线数据
部分参考了这个网址,这个网址还不错http://www.chinavib.com/thread-101930-1-1.html直接上代码吧clc;clear allx1=1:2;x2 =2:3;x3=3:4;x4=4:5;y1=x1.^2;y2=x2.^2;y3 =x3.^2;y4=x4.^2;subplot(4,1,1)plot(x原创 2013-04-07 21:36:10 · 1886 阅读 · 0 评论 -
matlab 在ubuntu下跑程序老内存泄露
郁闷,弄了2个小时还是不是很清楚为什么我的这个程序就memory lost了。我就用了2个函数,在matlab中函数用完之后里面的局部变量肯定是释放了的,那我的程序为什么会内存泄露了? 完全不解,难度是matlab本身出bug呢?matlab在ubuntu下先使用物理内存4g,如果物理内存使用了3.5以上的话,就开始使用swap内存4g了,如果这2个加起来8g都使用完了的话原创 2013-03-24 15:10:56 · 2497 阅读 · 0 评论 -
matlab text 显示图像中或者画图中点的坐标 imshow显示图像,要用axis on显示坐标
x=1+4*rand(1,5);y=2+2*rand(1,5);plot(x,y,'o-')for i=1:length(x)text(x(i),y(i),['(',num2str(x(i)),',',num2str(y(i)),')']) % this is important%在(x,y)的每一点处添加文字,文字内容为(x,y)%其中每一点的x,转载 2013-04-02 20:56:18 · 8572 阅读 · 0 评论 -
matlab 求商,余数的方法
fix(a/b) 求商rem(a,b) 求余数还可以 mod(a,b) 两者的区别是余数的符号,rem与a相同,而mod与b相同原创 2013-04-02 22:34:00 · 51704 阅读 · 1 评论 -
怎么测试matlab的close命令是否清除内存
for i=1:inf java.lang.Runtime.getRuntime.gc fprintf('%3.0f: %1.0f Byte free\n',i,java.lang.Runtime.getRuntime.freeMemory); figure; if mod(i,5)==0 close all endend原创 2013-03-13 14:12:57 · 1520 阅读 · 0 评论 -
Matlab中的一些小技巧 (比较有用sg)
http://stackoverflow.com/questions/6201272/how-to-avoid-matlab-crash-when-opening-too-many-figures (这个网址提出了关于figure 太多图片matlab出现crash的问题 sg)1、. Ctrl+C 中断正在执行的操作如果程序不小心进入死循环,或者计算时间太长,可以在命转载 2013-03-13 11:08:17 · 3486 阅读 · 0 评论 -
intensity profile
http://matlab.izmiran.ru/help/toolbox/images/enhance4.html (可以看看这个网址)搞了半个小时,刚开始都没看懂,原来是在图像上定义一条线段或者几条线段,然后对这条线段所经过的像素,分别画出它们的rgb值,最后就形成intensity的曲线图来了,这个一般用来对某类的图像做个constraints.原创 2013-03-08 15:07:07 · 1459 阅读 · 0 评论 -
高斯噪声和高斯白噪声相关介绍
高斯噪声是一种随机噪声,在任选瞬时中任取n个,其值按n个变数的高斯概率定律分布。注:1,高斯噪声完全由其时变平均值和两瞬时的协方差函数来确定,若噪声为平稳的,则平均值与时间无关,而协方差函数则变成仅和所考虑的两瞬时之差有关的相关函数,它在意义上等效于功率谱密度。 2,高斯噪声可以是大量独立的脉冲所产生的,从而在任何有限时间间隔内,这些脉冲中的每一个脉冲值与所有脉冲值转载 2013-03-07 14:23:52 · 16288 阅读 · 0 评论 -
matlab 产生高斯噪声和高斯白噪声方法
如何用matlab 产生 均值为0,方差为5的高斯噪声2011-07-15 19:36y=randn(1,2500); y=y/std(y); y=y-mean(y); a=0; b=sqrt(5); y=a+b*y; 就得到了 N ( 0, 5 ) 的高斯分布序列。R = normrnd(MU,SIGMA,m,n)其中MU为转载 2013-03-07 14:08:46 · 48324 阅读 · 1 评论 -
如何保存Matlab绘制出来的图像
1、我们使用Matlab绘制出数据的各种图形需要保存的时候,不少同学是直接用屏幕截图的办法来做的,但这样出来的图并不清晰,不便于后续应用和处理,并且往往不符合发表论文的要求,很多论文是要求用 .eps 格式的图片的。实际上,我们可以有下面两种更好的处理方法:(1)在论文里插入图片在Matlab的Figure窗口,点击菜单栏的Edit,选择Copy Figure,然后转到你的文档界面转载 2013-02-04 19:25:46 · 11659 阅读 · 0 评论 -
在Visual C++中调用Matlab的其他方法
在VC中调用MATLAB的,总结有以下几种方法:1、是调用Matlab引擎;2、是调用Matlab中M函数转化成的dll文件;3、调用Matlab中M函数转化成c语言的函数。1. 利用Matlab引擎Matlab引擎(Matlab engine)提供了一组 Matlab API 函数,用户不必关心这个Matlab引擎是如何实现的,只需要调用这些函数即可。正是通过这些 API转载 2013-04-10 23:06:39 · 1397 阅读 · 1 评论 -
【MATLAB与C的混合编程】之【C程序调用Matlab计算引擎】(1)
本程序特色:VS2008的C++程序中调用Matlab进行画图'先贴本人调试通过的代码:#pragma comment(lib, "libmx.lib")//#pragma comment(lib, "libmat.lib")//注销了也没关系#pragma comment(lib, "libeng.lib")#include #include "engine.h"转载 2013-04-10 23:00:10 · 1741 阅读 · 0 评论 -
opencv图像修复算法cvInpaint(Telea的FMM算法)
最近项目中要用到修复技术,看opencv里有两种算法,我先尝试了一下Telea在2004年提出的基于快速行进的修复算法(后面简称FMM算法)。找到作者的原文看了一下,对算法有了一定了解,记录一下。论文题目:An Image Inpainting Technique Based on the Fast Marching Method (2004)作者主页:http://www.cs.ru转载 2013-05-15 23:41:33 · 11047 阅读 · 4 评论 -
自然图像抠图/视频抠像技术发展情况梳理
转载地址为:http://blog.csdn.net/anshan1984/article/details/8581225这个家伙总结得很不错,辛苦了自然图像抠图/视频抠像技术发展情况梳理(image matting, alpha matting, video matting)--计算机视觉专题1分类: 计算机视觉 2013-02-15 03:30 638人阅读 评论(转载 2013-05-15 11:17:45 · 3822 阅读 · 0 评论 -
matlab 使用interp2进行2维数组的插值
今天有个小需求需要要进行插值,网上的资料都不是特别好,经过自己摸索,最终搞定。 以后要熟悉meshgrid和linspace的用途,我觉得还蛮重要的直接上matlab code吧,经过调试没问题,这个相当于是一个小笔记吧clcclose allclear allmatrix = rand(10,12);[rows,cols] = size(matrix);原创 2013-05-14 13:15:46 · 8121 阅读 · 1 评论 -
windows or ubuntu登录服务器传送文件和run code
在windows下用winscp吧,这个软件很稳定,也支持很多连接协议采用putty登录远程服务器run code在ubuntu下可以考虑使用xmanager。 这样的话也可以传送文件,可能比较占内存采用ssh -l username 172.18.31.41 然后再输入password就可以了原创 2013-05-02 16:31:43 · 840 阅读 · 0 评论 -
opencv 矩阵相乘, matlab矩阵相乘,以及自己写的矩阵相乘的时间比较
直接上代码吧matlabclcclose allclear alltic; c = rand(7500,7500)*rand(7500,1);toc;Elapsed time is 2.576807 seconds. opencv code#include #include #include #include using na原创 2013-04-01 16:10:34 · 3428 阅读 · 1 评论 -
Matlab 并行编程的一些test
Mathwoks在Matlab R2007a版本的Parallel Computing Toolbox(并行计算工具箱)中加入了并行循环parfor-loops,对于每一步可以独立于其他步的循环,计算效率可以有较大幅度的提高。以前简单的for循环for-loop是顺序的(sequentially)执行每一步循环体(statement),parfor-loop是通过将各个循环体分配到不同的节点上进行原创 2013-04-28 23:44:49 · 2900 阅读 · 0 评论 -
Morphological Filtering Dilate, erode, reconstruct, and perform other morphological operations
http://www.mathworks.com/help/images/ref/bwmorph.htmlbwhitmissBinary hit-miss operationbwmorphMorphological operations on binary imagesbwulterodeUltimate erosio转载 2013-04-17 10:13:19 · 1464 阅读 · 0 评论 -
mwArray和mxArray有什么区别?
zz 1声明:mxArray:mxArray *a;mwArraymwArray a;销毁mxArraymxDestroyArray a;mwArraymwArray类的析构函数自动销毁对象变量传递mxArraymemcpy(dest_ptr,source_ptr,MAX_SIZE);m转载 2013-04-25 16:38:10 · 1101 阅读 · 0 评论 -
matlab 调用c++ bug mwsize
mwsize 是4个字节的,以后千万不要再用这种类型的文件了,直接用int和double型吧。用这个mwsize老是溢出,以至于明明是0-1之间的一个数,偏偏用小于-100判断居然还能进入判断循环体。 明显是overflow的缘故,当时都没有完全想清楚。郁闷啊。害我调试了好几个小时,真想骂人了,郁闷啊,所幸最后找出来这个bug了。原创 2013-04-25 00:57:23 · 1960 阅读 · 0 评论 -
vs2008中调用matlab,采用dll的形式
本文参考了 http://blog.csdn.net/infocarrier/article/details/5854522matlab中选择c++编译器 mex -setupmatlab函数 function [result] =matrix_multiply(A,B)result = A*B;end采用这个编译mcc -C -W cpplib:lib_matrix原创 2013-04-14 18:31:52 · 791 阅读 · 0 评论 -
VS2008 C++ 调用MATLAB 2009b 生成的DLL
这个代码和流程我测试过,可以运行 sg 实验环境:window XPMATLAB 2009b(安装路径:E:/Program Files/MATLAB/R2009a)VS2008 中文版(安装路径:E:/Program Files/Microsoft Visual Studio 9.0)1.Matlab 生成DLL1.1编译器的安装在matlab中先安装编译器,我在转载 2013-04-14 01:05:32 · 1010 阅读 · 0 评论 -
How to call Matlab function in C++
About MeGuestBookHow to call Matlab function in C++04 十一月 2012 by luyi0619In order to make more people get benefits, I decide to write this tutorial in English. This tuto转载 2013-04-12 22:13:16 · 1186 阅读 · 0 评论 -
matlab中的contour画曲面的等高线图 和pie 饼状图 surf画三维图
命令1contour功能 曲面的等高线图用法 contour(z) 把矩阵z中的值作为一个二维函数的值,等高曲线是一个平面的曲线,平面的高度v是Matlab自动取的;contour(x,y,z) (x,y)是平面z=0上点的坐标矩阵,z为相应点的高度值矩阵。效果同上;contour(z,n) 画出n条等高线;contour(x,y,z,n) 画出n条等高线;转载 2013-04-12 13:38:10 · 10034 阅读 · 0 评论 -
matlab 指定的行列交换
直接上code吧>> a = rand(3,3)a = 0.7577 0.6555 0.0318 0.7431 0.1712 0.2769 0.3922 0.7060 0.0462>> a(:,[1,3])=a(:,[3,1])a = 0.0318 0.6555 0.7577 0.原创 2013-01-31 18:51:18 · 9920 阅读 · 1 评论 -
matlab code 对齐 以及 vs 2008 等的代码编辑与对齐
这部分是转载其实在MATLAB中对齐代码时很简单的事。这里分享这一个简单实用的技巧。希望对大家有一点帮助。方法: (1)智能缩进。这个相当好用,推荐。 选中要整理的代码,按下 CTRL+I;或者是选中要整理的代码后,点击菜单栏text下的smart indent(2)手动缩进。 选中要缩进的代码,按TAB键(或者CTRL+[ )可向后缩原创 2013-01-31 10:19:28 · 4455 阅读 · 0 评论 -
BASIC IMAGE PROCESSING TUTORIAL
BASIC IMAGE PROCESSING TUTORIALThis tutorial is intended for a basic understanding of some topics on image processing. They are developed using the MATLAB package and it only contains the commands t转载 2012-11-20 21:06:48 · 642 阅读 · 0 评论 -
How to change the font size in legend of matlab
hLeg = legend('one','two','three','MarkerSize',28); % resize_legend(hLeg, 1); % this a matlab file it can change the size of legend box set(hLeg,'FontSize',14);原创 2012-12-02 21:59:18 · 1170 阅读 · 0 评论 -
how to invisible the plot image in matlab
you can do like thisset(0, 'DefaultFigureVisible', 'off');set(0, 'DefaultAxesVisible', 'off'); % any image can not be visible in matlab% do like plot and other operatorset(0, 'DefaultFigur原创 2012-11-30 14:29:48 · 739 阅读 · 0 评论 -
matlab 画图的一些小功能
edge函数用来检测边缘scatter与colorbar 结合起来用colorbar 画颜色图quiver画小箭头用的还有一篇比较好的文章: subspace learning from image gradient orientation原创 2012-11-14 19:55:11 · 978 阅读 · 0 评论 -
matlab save and load and 字符串保留空格
matlab中的save与load函数用save函数,可以将工作空间的变量保存成txt文件或mat文件等.比如: save peng.mat p j 就是将工作空间中的p和j变量保存在peng.mat中.用load函数,可以将数据读入到matlab的工作空间中.比如:load peng.mat就是将peng.mat中转载 2012-11-14 09:58:02 · 3413 阅读 · 0 评论 -
matlab 中字符串作为函数参数传递的方法总结
第一种方法是从网上看到的,先整理如下:函数的输入变量可以是字符串及其它类型,函数中也是不需要定义的,如function out = mfun(a,b)其中a,b可以为任何类型,只要在函数中有判断的语句就行了,比如b参数可以输入的字符串包括'method1','method2'那么,判断if strcmp(b,'method1') 执行某个操作else 执行其他原创 2012-11-14 15:53:14 · 20545 阅读 · 0 评论 -
matlab [] 和kernel归一化
imshow(,[]) 中的[ ]的功能是这样的。将最小值看成0,最大值看成255 ,具体计算公式为 255*(x-min)/(max-min).因此我们一般通过这个来看下图像matlab fspecial生成的blur得归一化下,kernel/sum(kernel(:)); 归一化之后才正确原创 2012-11-12 22:35:00 · 1500 阅读 · 0 评论 -
matlab save
今天要用到matlab save的命令发现如下情况:如果保存变量为.mat文件,则操作为:变量为kernek(一个矩阵)save 的第一种方法save data kernel 这样保存。save的第二种保存方法save('data.mat','kernel')注意上面2者之间的区别,这个搞得实在是有点恶心。还有这个a = load('data.ma原创 2012-11-12 22:15:58 · 2884 阅读 · 0 评论 -
Matlab中图片保存的5种方法
matlab的绘图和可视化能力是不用多说的,可以说在业内是家喻户晓的。Matlab提供了丰富的绘图函数,比如ez**系类的简易绘图函数,surf、mesh系类的数值绘图函数等几十个。另外其他专业工具箱也提供了专业绘图函数,这些值得大家深入学习好久。今天我只是讨论下如何保存这些由Matlab绘制出来的图像呢?当然借助第三方截图软件,就算了!1、使用imwrite 函数转载 2012-10-25 17:02:54 · 40618 阅读 · 0 评论