最近在把matlab的代码转化到VS2010上. matlab中采用im2double将读入的图像转换为double型,在OpenCV中就需要对图像进行深度的转换. 读入一幅灰度图像,深度为1(8U),在与其他矩阵M做运算事要保证深度是一致的,所以需要转换,如转换到深度为8(64F),需要用到OpenCV中的函数cvConvert. 代码如下: IplImage* src = cvLoadImage("./Image/2/多波段.bmp",CV_LOAD_IMAGE_GRAYSCALE…
mcc 的作用是将 .m文件编译为 c/c++动态链接库文件,使你可以在 c/c++程序中使用 matlab的一些函数功能.mcc 也可以将.m文件编译为exe可执行文件. mex 的作用是将 c/cpp文件编译为 .m  文件可以调用的库文件,在Windows操作系统里通常是以mexw32或mexw64为扩展名,让你可以使用 c/c++来扩展 matlab,即在matlab中调用C/C++编写函数的功能,达到增加新的功能或者加速原有程序的功能 mbuild 的作用是将 matlab视为一个 c…
Matlab中有15种基本数据类型,主要是整型.浮点.逻辑.字符.日期和时间.结构数组.单元格数组以及函数句柄等.         1.整型:(int8:uint8:int16:uint16:int32:uint32:int64:uint64)通过intmax(class)和intmin(class) 函数返回该类整型的最大值和最小值,例如intmax('int8')=127:         2.浮点:(single:double) 浮点数:REALMAX('double')和REALMAX(…
matlab中处理图像像素点数据: img1=double(imread('lenna.bmp')); matlab中imshow图片,要先转换成uint8: subplot(1,2,1),imshow(uint8(img1)),title('original');subplot(1,2,2),imshow(uint8(img2)),title('after'); matlab图像处理关于unit8的问题_百度知道 https://zhidao.baidu.com/question/545122…
奇异值分解的理论参见下面的链接 http://www.cnblogs.com/pinard/p/6251584.html https://blog.csdn.net/shenziheng1/article/details/52916278 https://blog.csdn.net/billbliss/article/details/78579308 https://blog.csdn.net/zhongkejingwang/article/details/43053513 https://bl…
1.函数句柄的创建 函数句柄(function handle)是MATLAB中的一类特殊的数据结构,它的地位类似于其它计算机语言里的函数对象(Javascript,Python),函数指针(C++),或者函数引用(Perl).作用是将一个函数封装成一个变量,使其能够像其它变量一样在程序的不同部分传递. MATLAB中的函数句柄在调用时和普通函数没有任何区别,下面展示几种创建函数句柄的方式,最后通过函数句柄调用sin(pi). + y.^;  % 函数句柄的调用fun1(pi); 2.将函数句柄作…
工作需要在MATLAB中绘制质点轨迹并保存成GIF以便展示. 绘制质点轨迹动图可用comet和comet3命令,使用例子如下: t = 0:.01:2*pi;x = cos(2*t).*(cos(t).^2);y = sin(2*t).*(sin(t).^2);z = t;comet(x,y,0.1); %绘制二维%comet3(x,y,z,0.1); %绘制三维 这有一个问题在于comet或comet3无法控制绘制的动画的速度,为了实现这一点,一个可行的方法是重写comet和comet3,在每…
eps(a)是|a|与大于|a|的最小的浮点数之间的距离,距离越小表示精度越高.默认a=1: 这里直接在matlab中输入:eps == eps(1)(true). 我们知道浮点数其实是离散的,有限的,而且间隔是不均匀的.我们可以说一个数旁边的数是什么, 而它们之间的距离就反应了其精度.越靠近0,数和数之间就越密集,精度就越高. 下面引用百度知道中 greatdju 的详细回答: 首先,eps不是matlab所能表示的最小的正数.可以试试eps和eps/2,如果eps真的是最小的正数, 那么ep…
图像的矩阵表示 类和图像类型 虽然使用的是整数坐标, 但 MATLAB 中的像素值(亮度)并未限制为整数. 表 1-1 列出了 MATLAB 和图像处理工具箱为描述像素值而支持的各种类. 表中的前 8 项是数值型的数据类,第 9 项称为字符类, 最后一项称为逻辑类. uint8 和 logical 类广泛用于图像处理, 当以 TIFF 或 JPEG 图像文件格式读取图像时,会用到这两个类. 这两个类用1个字节表示每个像素.某些科研数据源, 比如医学成像, 要求提供超出 uint8 的动态范围:针…
http://blog.sina.com.cn/s/blog_707b64550100z1nz.html matlab中patch函数的用法——emily (2011-11-18 17:20:33)   patch 创建补片图形对象 句法: patch(X,Y,C) patch(X,Y,Z,C) patch(FV) patch(...'PropertyName',propertyvalue...) patch('PropertyName',propertyvalue,...) handle =…
转自:http://www.cnblogs.com/rong86/p/3558344.html matlab中函数imresize简介: 函数功能:该函数用于对图像做缩放处理. 调用格式: B = imresize(A, m) 返回的图像B的长宽是图像A的长宽的m倍,即缩放图像. m大于1, 则放大图像: m小于1, 缩小图像. B = imresize(A, [numrows numcols]) numrows和numcols分别指定目标图像的高度和宽度. 显而易见,由于这种格式允许图像缩放后…
MATLAB中FFT的使用方法 说明:以下资源来源于<数字信号处理的MATLAB实现>万永革主编 一.调用方法X=FFT(x):X=FFT(x,N):x=IFFT(X);x=IFFT(X,N) 用MATLAB进行谱分析时注意: (1)函数FFT返回值的数据结构具有对称性. 例:N=8;n=0:N-1;xn=[4 3 2 6 7 8 9 0];Xk=fft(xn) →Xk = 39.0000           -10.7782 + 6.2929i        0 - 5.0000i   4.…
问题来源:在阅读莱昂斯的<数字信号处理>第三章离散傅里叶变换时,试图验证实数偶对称信号的傅里叶变换实部为偶对称的且虚部为零.验证失败.验证信号为矩形信号,结果显示虚部是不为零且最大幅值等于信号幅值. 错误原因:MATLAB中的fft函数默认其 N 点输入信号的时间序号为从 0 到 N-1 ,默认其输出信号的频率序号为从 0 到 N-1 .而当试图输入一个时间序号为从 -N/2 到 N/2-1 ( N 为偶数时)或从 -(N-1)/2 到 (N-1)/2 ( N 为奇数)的信号时,输出将会产生相…
(转于它处,仅供参考) 1.. Ctrl+C 中断正在执行的操作 如果程序不小心进入死循环,或者计算时间太长,可以在命令窗口中使用Ctrl+c来中断.MATLAB这时可能正疲于应付,响应会有些滞后. 2. figure命令新建一个绘图窗口 figure 可以打开一个空的绘图窗口,接下的绘图命令可以将图画在它里面,而不会覆盖以前的绘图窗口.当有多个figure窗口时,在命令窗口中执行如Plot等命令将覆盖当前figure窗口中的对象.所谓的当前figure窗口,也就是最后一次查看的窗口(可以用命令…
在Matlab绘图过程中,尤其是需要将多个图绘制在相同的坐标轴中时,通常需要将不同的曲线设置成为不同的颜色.此外,为了直观,还需要给这张图标增添标题和图例.这篇文章展示了在Matlab的绘图窗口(figure)中设置曲线颜色.添加图例(legend)和标题(title)的方法.         在Matlab中,给曲线设定颜色可以采用plot函数实现.如下所示的语句中: plot(x, y, 'r'); 是以 x 变量为横坐标,y 变量为纵坐标绘制红色曲线.其中,颜色控制由 ‘r’实现.在Mat…
MATLAB取整函数 1)fix(x) : 截尾取整. >> fix( [3.12 -3.12]) ans = 3    -3(2)floor(x):不超过x 的最大整数.(高斯取整) >> floor( [3.12 -3.12]) ans = 3    -4 (3)ceil(x) : 大于x 的最小整数 >> ceil( [3.12 -3.12]) ans = 4    -3 (4)四舍五入取整 >> round(3.12 -3.12) ans = 0 &…
Matlab自定义函数的六种方法 n1.函数文件+调用函数(命令)文件:需单独定义一个自定义函数的M文件: n2.函数文件+子函数:定义一个具有多个自定义函数的M文件: n3.Inline:无需M文件,直接定义: n4.匿名函数: n5.Syms+subs:无需M文件,直接定义: n6.字符串+subs:无需M文件,直接定义. ------------ 1.函数文件+调用函数文件:定义多个M文件 % 调用函数文件:myfile.m clear clc for t=1:10 y=mylfg(t);…
%Matlab提供了计算线性卷积和两个多项式相乘的函数conv,语法格式w=conv(u,v),其中u和v分别是有限长度序列向量,w是u和v的卷积结果序列向量. %如果向量u和v的长度分别为N和M,则向量w的长度为N+M-1.如果向量u和v是两个多项式的系数,则w就是这两个多项式乘积的系数. x=ones(1,4);                                        %x(n)=R4(n) h=ones(1,4);                           …
格式:n=norm(A,p)功能:norm函数可计算几种不同类型的矩阵范数,根据p的不同可得到不同的范数 以下是Matlab中help norm 的解释 NORM   Matrix or vector norm.    For matrices...      NORM(X) is the largest singular value of X, max(svd(X)).      NORM(X,2) is the same as NORM(X).      NORM(X,1) is the 1…
MATLAB中白噪声的WGN和AWGN函数的使用如下: MATLAB中产生高斯白噪声非常方便,可以直接应用两个函数,一个是WGN,另一个是AWGN.WGN用于产生高斯白噪声,AWGN则用于在某一 信号中加入高斯白噪声. 1. WGN:产生高斯白噪声y = wgn(m,n,p) 产生一个m行n列的高斯白噪声的矩阵,p以dBW为单位指定输出噪声的强度.y = wgn(m,n,p,imp) 以欧姆(Ohm)为单位指定负载阻抗.y = wgn(m,n,p,imp,state) 重置RANDN的状态. 在…
转载自 http://blog.163.com/to_be_myself/blog/static/176060227201101762159227/ Matlab中用于计算自相关函数的指令是xcorr.比如矩阵A=[1 2 3]; xcorr(A)=3.0000 8.0000 14.0000 8.0000 3.0000 自相关函数是信号间隔的函数,间隔有正负间隔,所以n个长度的信号,有2n-1个自相关函数值,分别描述的是不同信号间隔的相似程度. 比如,上面的矩阵,最后得到5个结果,其中第三个是自…
使用axes函数在matlab绘图中实现图中图的绘制 有时为了对细节进行详细说明,需要在一个较大坐标轴上绘制一个小图来对局部进行放大以阐述结果. 这可以通过调用axes函数实现. 下面通过绘制 y=1/(t-3) 的曲线举例说明该函数的使用方法. 程序如下: clc;clear;close all;                                                                                                    …
y         黄色           ·             点线      m         粉红           ○             圈线      c         亮蓝           ×             ×线      r         大红           +             +字线       g         绿色           -             实线      b         蓝色           …
图像卷积.相关以及在MATLAB中的操作 2016年7月11日 20:34:35, By ChrisZZ 区分卷积和相关 图像处理中常常需要用一个滤波器做空间滤波操作.空间滤波操作有时候也被叫做卷积滤波,或者干脆叫卷积(离散的卷积,不是微积分里连续的卷积):滤波器也有很多名字:卷积模版.卷积核.掩模.窗口等. 空间滤波可以分为线性滤波和非线性滤波.非线性滤波常见的有中值滤波.最大值滤波等,相当于自定义一个函数,在数学上由于不满足线性变换因此叫做非线性滤波.这里不细研究它. 线性滤波则通常是:将模…
matlab 中txt文件(含字符及数值)处理 (2008-08-02 09:45:12) 转载▼ 标签: 杂谈 分类: matlab及C学习 Matlab文件操作及读txt文件ZZ 2008-07-11 16:43 matlab文件操作文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件.MATLAB提供了一系列低层输入输出函数,专门用于文件操作.1.文件的打开与关闭1)打开文件在读写文件之前,必须先用fopen函数打开或创建文件,并指定对该文件进行的操作方式.fopen…
假如我们编写了一个积分通用程序,想使它更具有通用性,那么可以把被积函数也作为一个参数.在c/c++中,可以使用函数指针来实现上边的功能,在matlab中如何实现呢?使用函数句柄--这时类似于函数指针的一项功能.假如我们现在已经编写了一个辛普森方法积分的函数如下,我们要把函数作为参数传给它(当然啦,matlab早已经提供给我们非常牛x的积分函数了,这里只是个例子而已): function g=myintegrate(f,N,a,b) %integration using simpson metho…
matlab中各种高斯相关函数 matlab, 高斯函数, 高斯分布 最常见的是产生服从一维标准正态分布的随机数 n=100;  x=randn(1,n)  实现服从任意一维高斯分布的随机数 u=10;  sigma=4;  x=sigma*randn(1,n)+u  产生服从多元高斯分布的随机变量函数mvnrnd,[multivarite normal random] n=100; %产生随机数的个数  mu=[1 -1];  Sigma=[.9,.4;.4,.3];  r=mvnrnd(mu…
MATLAB中提供的线型属性有: 线型 说明 标记符 说明 颜色 说明 - 实线(默认) + 加号符 r 红色 -- 双划线 o 空心圆 g 绿色 : 虚线 * 星号 b 蓝色 :. 点划线 . 实心圆 c 青绿色 x 叉号符 m 洋红色 s 正方形 y 黄色 d 菱形 k 黑色 ^ 上三角形 w 白色 v 下三角形 > 右三角形 < 左三角形 p 五角星 h 六边形…
matlab中函数imresize简介: 函数功能:该函数用于对图像做缩放处理. 调用格式: B = imresize(A, m) 返回的图像B的长宽是图像A的长宽的m倍,即缩放图像. m大于1, 则放大图像: m小于1, 缩小图像. B = imresize(A, [numrows numcols]) numrows和numcols分别指定目标图像的高度和宽度. 显而易见,由于这种格式允许图像缩放后长宽比例和源图像长宽比例相同,因此所产生的图像有可能发生畸变. [...] = imresize…
将matlab中数据输出保存为txt或dat格式 总结网上各大论坛,主要有三种方法. 第一种方法:save(最简单基本的) 具体的命令是:用save *.txt -ascii x x为变量 *.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 -ascii a…