有人用过Matlab fixed point toolbox吗

有人用过Matlab fixed point toolbox吗,第1张

如果是系统自带的,你可以直接用,如果是外部的或者是自编的你需要先把文件夹拷贝到tools文件夹下,再设置路径。

Matlab常用工具箱介绍(英汉对照)

Matlab Main Toolbox——matlab主工具箱

Control System Toolbox——控制系统工具箱

Communication Toolbox——通讯工具箱

Financial Toolbox——财政金融工具箱

System Identification Toolbox——系统辨识工具箱

Fuzzy Logic Toolbox——模糊逻辑工具箱

Higher-Order Spectral Analysis Toolbox——高阶谱分析工具箱

Image Processing Toolbox——图象处理工具箱

LMI Control Toolbox——线性矩阵不等式工具箱

Model predictive Control Toolbox——模型预测控制工具箱

μ-Analysis and Synthesis Toolbox——μ分析工具箱

Neural Network Toolbox——神经网络工具箱

Optimization Toolbox——优化工具箱

Partial Differential Toolbox——偏微分方程工具箱

Robust Control Toolbox——鲁棒控制工具箱

Signal Processing Toolbox——信号处理工具箱

Spline Toolbox——样条工具箱

Statistics Toolbox——统计工具箱

Symbolic Math Toolbox——符号数学工具箱

Simulink Toolbox——动态仿真工具箱

System Identification Toolbox——系统辨识工具箱

Wavele Toolbox——小波工具箱

例如:控制系统工具箱包含如下功能:

连续系统设计和离散系统设计

状态空间和传递函数以及模型转换

时域响应(脉冲响应、阶跃响应、斜坡响应)

频域响应(Bode图、Nyquist图)

根轨迹、极点配置

较为常见的matlab控制箱有:

控制类:

控制系统工具箱(control systems toolbox)

系统识别工具箱(system identification toolbox)

鲁棒控制工具箱(robust control toolbox)

神经网络工具箱(neural network toolbox)

频域系统识别工具箱(frequency domain system identification toolbox)

模型预测控制工具箱(model predictive control toolbox)

多变量频率设计工具箱(multivariable frequency design toolbox)

信号处理类:

信号处理工具箱(signal processing toolbox)

滤波器设计工具箱(filter design toolbox)

通信工具箱(communication toolbox)

小波分析工具箱(wavelet toolbox)

高阶谱分析工具箱(higher order spectral analysis toolbox)

其它工具箱:

统计工具箱(statistics toolbox)

数学符号工具箱(symbolic math toolbox)

定点工具箱(fixed-point toolbox)

射频工具箱(RF toolbox)

1990年,MathWorks软件公司为Matlab提供了新的控制系统模型化图形输入与仿真工具,并命名为Simulab,使得仿真软件进入了模型化图形组态阶段,1992年正式命名为Simulink,即simu(仿真)和link(连接)。matlab70里的simulink为60版本,matlab65里的simulink为50版本。

MATLAB的SIMULINK子库是一个建模、分析各种物理和数学系统的软件,它用框图表示系统的各个环节,用带方向的连线表示各环节的输入输出关系。

启动SIMULINK十分容易,只需在MATLAB的命令窗口键入“SIMULINK”命令,此时出现一个SIMULINK窗口,包含七个模型库,分别是信号源库、输出库、离散系统库、线性系统库、非线性系统库及扩展系统库。

1信号源库

包括阶跃信号、正弦波、白噪声、时钟、常值、文件、信号发生器等各种信号源,其中信号发生器可产生正弦波、方波、锯齿波、随机信号等波形。

2输出库

包括示波器仿真窗口、MATLAB工作区、文件等形式的输出。

3离散系统库

包括五种标准模式:延迟,零-极点,滤波器,离散传递函数,离散状态空间。

4线性系统库

提供七种标准模式:加法器、比例环节、积分环节、微分环节、传递函数、零-极点、状态空间。

5非线性系统库

提供十三种常用标准模式:绝对值、乘法、函数、回环特性、死区特性、斜率、继电器特性、饱和特性、开关特性等。

6系统连接库包括输入、输出、多路转换等模块,用于连接其他模块。

7系统扩展库

考虑到系统的复杂性,SIMULINK另提供十二种类型的扩展系统库,每一种又有多种模型供选择。

使用时只要从各子库中取出模型,定义好模型参数,将各模型连接起来,然后设置系统参数,如仿真时间、仿真步长、计算方法等。SIMULINK提供了Euler、RungeKutta、Gear、Adams及专用于线性系统的LinSim算法,用户根据仿真要求选择适当的算法。

当然,不同版本的Matlab/Simulink内容有所不同。

另外,Simulink还提供了诸如航空航天、CDMA、DSP、机械、电力系统等专业模块库,给快速建模提供了很大的便利。

% List initial wavelets families

wavemngr('read')

ans =

===================================

Haar haar

Daubechies db

Symlets sym

Coiflets coif

BiorSplines bior

ReverseBior rbio

Meyer meyr

DMeyer dmey

Gaussian gaus

Mexican_hat mexh

Morlet morl

Complex Gaussian cgau

Shannon shan

Frequency B-Spline fbsp

Complex Morlet cmor

Allnodes 计算树结点

appcoef 提取一维小波变换低频系数

appcoef2 提取二维小波分解低频系数

bestlevt 计算完整最佳小波包树

besttree 计算最佳(优)树

biorfill 双正交样条小波滤波器组

biorwavf 双正交样条小波滤波器

centfrq 求小波中心频率

cgauwavf Complex Gaussian小波

cmorwavf coiflets小波滤波器

cwt 一维连续小波变换

dbaux Daubechies小波滤波器计算

dbwavf Daubechies小波滤波器 dbwavf(W) W='dbN' N=1,2,3,,50

ddencmp 获取默认值阈值(软或硬)熵标准

depo2ind 将深度-位置结点形式转化成索引结点形式

detcoef 提取一维小波变换高频系数

detcoef2 提取二维小波分解高频系数

disp 显示文本或矩阵

drawtree 画小波包分解树(GUI)

dtree 构造DTREE类

dwt 单尺度一维离散小波变换

dwt2 单尺度二维离散小波变换

dwtmode 离散小波变换拓展模式

dyaddown 二元取样

dyadup 二元插值

entrupd 更新小波包的熵值

fbspwavf B样条小波

gauswavf Gaussian小波

get 获取对象属性值

idwt 单尺度一维离散小波逆变换

idwt2 单尺度二维离散小波逆变换

ind2depo 将索引结点形式转化成深度—位置结点形式

intwave 积分小波数

isnode 判断结点是否存在

函数指 含义

istnode 判断结点是否是终结点并返回排列值

iswt 一维逆SWT(Stationary Wavelet Transform)变换

iswt2 二维逆SWT变换

leaves

mexihat 墨西哥帽小波

meyer Meyer小波

meyeraux Meyer小波辅助函数

morlet Morlet小波

nodease 计算上溯结点

nodedesc 计算下溯结点(子结点)

nodejoin 重组结点

nodepar 寻找父结点

nodesplt 分割(分解)结点

noleaves

ntnode

ntree

orthfill 正交小波滤波器组

plot 绘制向量或矩阵的图形

qmf 镜像二次滤波器

rbiowavf

read 读取二进制数据

readtree 读取小波包分解树

scal2frq

set

shanwavf

swt 一维SWT(Stationary Wavelet Transform)变换

swt2 二维SWT变换

symaux

symwavf Symlets小波滤波器

thselect 信号消噪的阈值选择

thodes

treedpth 求树的深度

treeord 求树结构的叉数

函数指令 含义

upcoef 一维小波分解系数的直接重构

upcoef2 二维小波分解系数的直接重构

upwlev 单尺度一维小波分解的重构

upwlev2 单尺度二维小波分解的重构

wavedec 单尺度一维小波分解

wavedec2 多尺度二维小波分解

wavedemo 小波工具箱函数demo

wavefun 小波函数和尺度函数

wavefun2 二维小波函数和尺度函数

wavemenu 小波工具箱函数menu图形界面调用函数

wavemngr 小波管理函数

waverec 多尺度一维小波重构

waverec2 多尺度二维小波重构

wbmpen

wcodemat 对矩阵进行量化编码

wdcbm

wdcbm2

wden 用小波进行一维信号的消噪或压缩

wdencmp

wentropy 计算小波包的熵

wextend

wfilters 小波滤波器

wkeep 提取向量或矩阵中的一部分

wmaxlev 计算小波分解的最大尺度

wnoise 产生含噪声的测试函数数据

wnoisest 估计一维小波的系数的标准偏差

wp2wtree 从小波包树中提取小波树

spbmpen

wpcoef 计算小波包系数

wpcutree 剪切小波包分解树

wpdec 一维小波包的分解

wpdec2 二维小波包的分解

wpdencmp 用小波包进行信号的消噪或压缩

wpfun 小波包函数

wpjoin

wprcoef 小波包分解系数的重构

wprec 一维小波包分解的重构

wprec2 二维小波包分解的重构

wpsplt 分割(分解)小波包

wpthcoef 进行小波包分解系数的阈值处理

wptree

wpviewcf

wrcoef 对一维小波系数进行单支重构

wrcoef2 对二维小波系数进行单支重构

wrev 向量逆序

write 向缓冲区内存写进数据

wtbo

wthcoef 一维信号的小波系数阈值处理

wthcoef2 二维信号的小波系数阈值处理

wthresh 进行软阈值或硬阈值处理

wthrmngr 阈值设置管理

wtreemgr 管理树结构

wvarchg

clc;

clear all;

close all; % 清理工作空间

clear

[imA,map1] = imread('Atif');

M1 = double(imA) / 256;

[imB,map2] = imread('Btif');

M2 = double(imB) / 256;

zt= 4;

wtype = 'haar';

% M1 - input image A

% M2 - input image B

% wtype使用的小波类型

% Y - fused image

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%

%% 小波变换图像融合

%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%% 小波变换的绝对值大的小波系数,对应着显著的亮度变化,也就是图像中的显著特征。所以,选择绝对值大

%% 的小波系数作为我们需要的小波系数。注意,前面取的是绝对值大小,而不是实际数值大小

%%

%% 低频部分系数采用二者求平均的方法

%%

%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

[c0,s0] = wavedec2(M1, zt, wtype);%多尺度二维小波分解

[c1,s1] = wavedec2(M2, zt, wtype);%多尺度二维小波分解

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%% 后面就可以进行取大进行处理。然后进行重构,得到一个图像

%% 的小波系数,然后重构出总的图像效果。

%% 取绝对值大的小波系数,作为融合后的小波系数

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

KK = size(c1);

Coef_Fusion = zeros(1,KK(2));

Temp = zeros(1,2);

Coef_Fusion(1:s1(1,1)) = (c0(1:s1(1,1))+c1(1:s1(1,1)))/2; %低频系数的处理

%这儿,连高频系数一起处理了,但是后面处理高频系数的时候,会将结果覆盖,所以没有关系

%处理高频系数

MM1 = c0(s1(1,1)+1:KK(2));

MM2 = c1(s1(1,1)+1:KK(2));

mm = (abs(MM1)) > (abs(MM2));

Y = (mmMM1) + ((~mm)MM2);

Coef_Fusion(s1(1,1)+1:KK(2)) = Y;

%处理高频系数end

%重构

Y = waverec2(Coef_Fusion,s0,wtype);

%显示图像

subplot(2,2,1);imshow(M1);

colormap(gray);

title('input2');

axis square

subplot(2,2,2);imshow(M2);

colormap(gray);

title('input2');

axis square

subplot(223);imshow(Y,[]);

colormap(gray);

title('融合图像');

axis square;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Matlab中的归一化通常指将数字数据转换为0-1之间的尺度,以便于更好地比较和分析。将数据归一化到0-1范围的目的是为了确保不同变量的值落在同一尺度上,这有助于更好地理解变量之间的关系。使用这种方法,可以将任意数据集的值映射到0-1的范围内,从而更容易比较和分析。

使用MATLAB设计小波变换程序中的若干问题3[转贴]使用MATLAB设计小波变换程序中的若干问题仍需探讨的问题:为什么使用PNG存储经小波变换后的重构图像变大?我曾在清华大学的多媒体课程的教师答疑中写了“老师:尊重事实:DB9阈值10的PNG文件就是比原文件大”和“续一:尊重事实:DB9阈值10的PNG文件就是比原文件大”,在林老师的鼓励和指导下,我进行了继续试验、分析,与刘赵璧(Anna)同学进行了探讨,并得到了Lily(姓名还不知道)同学的帮助,同时同学们也做了各自不同的实验,现在的实验结果可以说基本上比较明确,那就是有些图像就是会变大,这与图像的种类、纹理等密切相关。林老师曾经鼓励我去研究一下PNG的压缩方法,无奈我资质不够,至今在这方面的进展不大。由于临近期末考试,作业也要抓紧,所以我暂且将没有搞明白的内容搁置,待寒假期间再进行,希望对这些问题有各种看法也有兴趣研究的同学对此发表意见。以下是我最近试验、分析和阅读到的一些相关信息。试验结果我首先根据老师第三章的Haar矩阵算法推演出DB9的系数矩阵,并实现了分解重构及阈值处理程序,对几种照片进行了比较,然后使用31节的simplecmp进行了相同照片的实验,结果相当一致。细小差别是因为我的程序对边界的扩展与MATLAB不一样,在设置阈值后引起了边界上小部分不一致造成的。表一:真彩色图像百合花的处理结果阈值PngHaar(Mat/Mine)0数Haat(Mat/Mine)PNGDb9(MAT/Mine)0数Db9(MAT/Mine)95973/95973095973/9597327524/2426895973/9597327/9574552/74292135838/136063101882/101992167412/1656621051976/51504163423/16374198411/98861199200/1957302032474/32346180167/18026792295/93660220629/217214从对比表中我们能够看到2个程序的结果相当一致,因此,我不再给出两种程序的对比,而是使用simplecmp直接处理的结果说明。将百合花图像使用[I,map]=rgb2ind(x,255);转换成为彩色图像处理,在将伪彩色图像转换为连续变换的灰度图像(如24常见问题中讨论的方法)进行处理:表二:百合花的伪彩色图像和处理后的灰度(gray)图像的处理结果阈值PngHaar(Index/Gray)0数Haar(Index/Gray)PNDb9(Index/Gray)0数Db9(Index/Gray)48535/43235048535/432356096/743048535/4323518/22553207/364509473/4362660362/499277009/528521058025/2360213362/5434464916/4781313202/658812060193/1434721948/6003966020/4601424468/73494其他伪彩色与进行加工的灰度图的结果与此完全一致,这也就说明了如果伪彩色文件的色板不是单调性递增就不适合小波分解。“ThecolorbartotherightoftheimageisnotsmoothanddoesnotmonotonicallyprogressfromdarktolightThistypeofindexedimageisnotsuitablefordirectwaveletdecompositionwiththetoolboxandneedstobepreprocessed”。我对Facets进行同样的实验,结果与此一致。这种处理的结果可以从图像象素值的连续性来理解。这是处理与不处理的图像的中间一行的数据图。另外,不连续的图像质量在压缩后会被极大地破坏图2伪彩色文件变化前后的第128行数据的连续性情况对比分析多种试验基本能够反映类似的结果,虽然IndexedColorimage有时令Haar小波的分解重构图像出现增大现象,单经过处理之后,这种现象就会消失。然而对于DB9可以看到无论真彩色还是处理后的灰度图像都在阈值510处超过原始图像的大小,能不能因此得出DB9不适合进行图像压缩的结论呢?有一些同学确实这样认为,但我认为这种观点因为忽略了如何利用小波进行压缩和还原的过程,这也正是第四章老师为我们讲述的那些编码算法而造成的。在推荐材料[1]中也有类似的说明。图3、JPEG2000的基本结构看一下上图就可以明白为什么PNG不能衡量小波压缩的效率问题。上图的图像原始数据首先经过正变换(ForwardTransform)就是小波变换的得到小波系数,变换的小波系数经过阈值处理后进行量化,编码后得到压缩的图像文件JPEG2000,如果你没有JPEG2000的显示程序,那么你就不能看到它。它的显示程序就是由解码器从压缩数据中解出编码,进行反量化,得到小波系数,再实施逆变换(InverseTransform)就是小波系数重构。最终得到图像的原始数据。因此衡量小波变换的效率是应该看你选择的小波能不能分解出适合“编码器”压缩的小波系数,这种编码器不是PNG的LZ77,因为LZ77压缩小波分解系数的效率不是最好的。这种高效编码器在第四章可以找到。那么我们存储PNG文件的目的是什么呢?我认为压缩与去噪(de-noising)是同一种方法的两种提法。他们都使用了设置阈值的方法。我们可以仔细分析经过重构的PNG的质量来体会这种消除噪音的效果,也可以评定小波压缩后的的视觉质量,同时PNG的文件大小也可以让我们从LZ77算法的本质来理解小波变换压缩后的重构图像的内容变化情况。比如,我们可以从表2中的灰度图像在haar变换取阈值20时出现块状象素,文件大小变为14347,而db9却为46014,超过原始的PNG大小,但并不出现块状而是具有波状的特征。这本身说明了采用Harr小波压缩或去噪后重构的图像中相同的‘串’增多,便于PNG方式压缩,而db9则在相同阈值的情况下不会象Haar那样制造‘马赛克’,说明了它的平滑性,这也能帮助我们理解小波的特性。当然,当阈值继续增加后,超过某一界限,即使DB9也仍然会使PNG文件大小减小。这本身也就是由双尺度(Dyadic)小波变换的两种滤波器决定的。低通滤波结果相当于平均值,高通滤波结果相当于差值,差值能够保证重构图像的细节部分丢失最小,如果差值部分被阈值略去的过多,细节就会越来越少,平均意义的值约来越多,直到多到某一个临界值时(该图像的阈值取到40),重构的图像也可能出现较多的相同数字串,这就会提高PNG的压缩结果。下图是我对Haar(蓝色)小波取阈值为20,db9(红色)小波阈值取40时第128行1:32列的数据曲线与原始数据(黑色)曲线的对比。可以看出也db9在阈值=40时出现了较多的平均值,但比haar在阈值=20时的曲线要少的多。图4、haar(蓝色)和db9(红色)压缩后重构图像的第128行,1:32列的数据曲线不过,MATLAB给我们提供了量化的方法来决定如何选取阈值。在HELPWaveletToolbox:AdvanceConcepts:ChoosingtheOptimalDecomposition中提到了几种利用“熵”的概念来衡量如何选取合适的分解级。感兴趣的同学还可以参看wentropy,wdcbm2,wpdec的帮助。文献[1]中也提到了衡量压缩质量的客观化方法MSE,PNSR并指出小波的重构滤波器的长度越长,形状越规则越能够提供良好的压缩性能。上面对PNG的讨论因为没有足够的算法分析和程序解读,同时也没有准确的试验数据,因此只能作为猜测。但衡量小波压缩效率的方法我坚持认为不能以PNG文件大小来解说,如果采用图像文件大小来衡量,应该以JPEG2000来衡量。

lingo的确可以解二次规划,如果想让某变量x只能取值0-1的话,用@BIN(x)即可

我写个最简单的例子

--------------------------------

min x1^2+3x2-x3+4x^2

st x1+x2-x3-x4>0

x1x2=-6

x1>3

x2∈R

x3>=0

x4∈{0,1}

-----------------------------------

lingo程序的写法(最简单的写法)

-----------------------------------

model:

min=x1^2+3x2-x3-4x4^2;

x1+x2-x3-x4>0;

x1x2=-6;

x1>3;

@FREE(x2);! 感叹号后面的是说明语句。lingo默认变量均为非负的。FREE表示该变量无约束范围。

@BIN(x4);!BIN表示该变量为0-1变量。

end

------------------------------------

运行后即可得到解答。

关于lingo更进一步的用法请参阅相关教程,这里从略。

以上就是关于有人用过Matlab fixed point toolbox吗全部的内容,包括:有人用过Matlab fixed point toolbox吗、matlab程序中小波基有哪些、怎么用matlab实现小波变换急!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10050189.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存