精华内容
下载资源
问答
  • SNV标准正交变换 原理 matlab代码说明

    千次阅读 2019-03-08 20:36:55
    SNV标准正交变换 matlab代码说明SNV 原理SNV matlab 代码(原作者:Andrea Candolfi) SNV 原理 SNV matlab 代码(原作者:Andrea Candolfi) %# INPUT: x: (m x n) matrix with m spectra and n variables ...

    SNV标准正交变换 matlab代码说明

    SNV 原理

    你好! 这是你第一次使用 **Markdown编辑器** 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识

    SNV matlab 代码(原作者:Andrea Candolfi)

    %#  INPUT:	x: (m x n) matrix with m spectra and n variables			 						
    %#  OUTPUT:	xsnv: (m x n) matrix containing snv transformed spectra							
    %#  AUTHOR: 	Andrea Candolfi				 		
    %#	    	    Copyright(c) 1997 for ChemoAC				
    %#          	FABI, Vrije Universiteit Brussel            		
    %#          	Laarbeeklaan 103 1090 Jette												
    %#  TEST:   	Roy de Maesschalck, Menghui Zhang (2002)							
    
    function [xsnv]=snv(x)	
    a=xlsread('E:\近红外光谱文件\骏枣光谱阵.xls');
    x=a';
    [m,n]=size(x);
    xsnv=(x-mean(x')'*ones(1,n))./(std(x')'*ones(1,n));
    

    从网上下了很多SNV的资料,发现万变不离其宗,变来变去,基本的代码行还是如上所示。

    展开全文
  • 代码matlab代码,是将适当方阵正交变换为hessenburg阵。
  • 今天学习了图像正交变换,实现了以下功能 离散傅里叶变换 离散余弦变换 小波变换 1. GUIDE布局 同Day 01 2. 自定义菜单设计 3. 实现代码 1)离散傅里叶变换 % 离散傅里叶变换 function DFT_Callback(hObject, ...

    前言

    今天学习了图像正交变换,实现了以下功能

    • 离散傅里叶变换
    • 离散余弦变换
    • 小波变换

    1. GUIDE布局

    同Day 01

    2. 自定义菜单设计

    3. 实现代码

    1)离散傅里叶变换

    % 离散傅里叶变换
    function DFT_Callback(hObject, eventdata, handles)
    global imageOriginal;
    global result;
    
    imageDFT = fftshift(fft2(imageOriginal)); %计算离散傅里叶变换,并将规格化频谱移位,低频移至频谱中心
    imageADFT = abs(imageDFT);      %计算傅里叶谱
    top = max(imageADFT(:));
    bottom = min(imageADFT(:));
    result = (imageADFT - bottom)/(top - bottom)*100;    %把离散傅里叶系数规格到[0,100]便于观察
    
    axes(handles.axes2);
    image(result), title('DFT图像频谱');
    axis off;
    

    2)离散余弦变换

    % 判断是彩色图像还是灰度图像
    if dimenson == 2
        DCT = dct2(imageOriginal);
        result = abs(DCT);
    %     top = max(ADCT(:));
    %     bottom = min(ADCT(:));
    %     result = (ADCT - bottom)/(top - bottom)*100;
    elseif dimenson == 3    %分色彩通道处理
        [N,M,C] = size(imageOriginal);
        DCTS = zeros(N,M,C);
        RGBOut = zeros(N,M,C);
        for i = 1:C
            channel = imageOriginal(:,:,i);
            DCT = dct2(channel);
            result = abs(DCT);
    %         top = max(ADCT(:));
    %         bottom = min(ADCT(:));
    %         result = (ADCT-bottom)/(top-bottom)*100;
        end
    end
    axes(handles.axes2);
    image(result), title('DCT图像频谱');
    axis off;
    

    3)小波变换

    % 一级小波分解
    function firstWaveletDec_Callback(hObject, eventdata, handles)
    global imageOriginal;
    global result;
    
    imageSize = size(imageOriginal);
    dimenson = numel(imageSize);
    
    % 判断是彩色图像还是灰度图像
    if dimenson == 3
        imageGray = rgb2gray(imageOriginal);
        [cal, chl, cvl, cdl] = dwt2(imageGray, 'db4');
        result = [wcodemat(cal,256), wcodemat(chl,256), wcodemat(cvl,256), wcodemat(cdl,256),];
    elseif dimenson == 2
        [cal, chl, cvl, cdl] = dwt2(imageOriginal, 'db4');
        result = [wcodemat(cal,256), wcodemat(chl,256), wcodemat(cvl,256), wcodemat(cdl,256),];
    end
    
    axes(handles.axes2);
    imshow(result/256), title('一级小波分解');
    axis off;
    
    % 一级小波重构
    function firstWaveletRecon_Callback(hObject, eventdata, handles)
    global imageOriginal;
    global result;
    
    imageSize = size(imageOriginal);
    dimenson = numel(imageSize);
    
    % 判断是彩色图像还是灰度图像
    if dimenson == 3
        imageGray = rgb2gray(imageOriginal);
        [cal, chl, cvl, cdl] = dwt2(imageGray, 'db4');
        DWTI = [wcodemat(cal,256), wcodemat(chl,256), wcodemat(cvl,256), wcodemat(cdl,256),];
        result = idwt2(cal, chl, cvl, cdl, 'db4');
    elseif dimenson == 2
        [cal, chl, cvl, cdl] = dwt2(imageOriginal, 'db4');
        DWTI = [wcodemat(cal,256), wcodemat(chl,256), wcodemat(cvl,256), wcodemat(cdl,256),];
        result = idwt2(cal, chl, cvl, cdl, 'db4');
    end
    
    axes(handles.axes2);
    imshow(result, []), title('一级小波重构');
    axis off;
    

    4. 效果

    • 彩色图像离散傅里叶变换

    • 灰度图像离散傅里叶变换

    • 彩色图像余弦变换

    • 灰度图像余弦变换

    • 一级小波分解图

    • 一级小波重构图

    展开全文
  • matlab实现的数字图像处理,包括图像增强,正交变换、哈夫曼编码
  • 这是沙威老师关于构造正交小波变换矩阵的matlab实现代码,供大家学习交流。
  • K-L变换matlab代码

    2017-11-23 19:28:45
    whu模式识别K-L变换matlab代码实现,以矢量信号X的协方差矩阵Ф的归一化正交特征矢量q所构成的正交矩阵Q,来对该矢量信号X做正交变换Y=QX,
  • 沃尔什-哈达玛变换(Walsh-Hadmard Transform,WHT),是一种典型的非正弦函数变换,采用正交直角函数作为基函数,具有与傅里叶函数类似的性质,图像数据越是均匀分布,经过沃尔什-哈达玛变换后的数据越是集中于矩阵...

    沃尔什-哈达玛变换(Walsh-Hadmard Transform,WHT),是一种典型的非正弦函数变换,采用正交直角函数作为基函数,具有与傅里叶函数类似的性质,图像数据越是均匀分布,经过沃尔什-哈达玛变换后的数据越是集中于矩阵的边角上,因此沃尔什变换具有能量集中的性质,可以用于压缩图像信息。

    Matlab中的Hadamard函数:

    格式:H=hadamard( n ) ,返回一个 n * n的hadamard矩阵。
















    下面对lena图像进行沃尔什-哈达玛变换与逆变换的Matlab实现:

    [plain] view plain copy
    1. clc;  
    2. clear all;  
    3. im_l=imread('C:\Users\DELL\Desktop\lena.jpg');  
    4. im_l1=im2double(im_l);  
    5. im_l2=rgb2gray(im_l1);  
    6.   
    7. %对图像进行哈达玛变换  
    8. H=hadamard(512);%产生512X512的Hadamard矩阵  
    9. haImg=H*im_l2*H;  
    10. haImg2=haImg/512;  
    11.   
    12. %对图像进行哈达玛逆变换  
    13. hhaImg=H'*haImg2*H';  
    14. hhaImg2=hhaImg/512;  
    15.   
    16. haImg1=im2uint8(haImg);  
    17. hhaImg1=im2uint8(hhaImg2);  
    18.   
    19. subplot(2,2,1);  
    20. imshow(im_l);  
    21. title('原图');  
    22.   
    23. subplot(2,2,2);  
    24. imshow(im_l2);  
    25. title('灰度图');  
    26.   
    27. subplot(2,2,3);  
    28. imshow(haImg2);  
    29. title('图像的二维离散Hadamard变换');  
    30.   
    31. subplot(2,2,4);  
    32. imshow(hhaImg1);  
    33. title('图像的二维离散Hadamard逆变换');  

    转自https://blog.csdn.net/geekmanong/article/details/50038611


    展开全文
  • 平面上线性变换与形变线性变换坐标的旋转变换正体字母变换为斜体字母刚体运动的矩阵齐次坐标系中的平移矩阵旋转实例基向量改变后坐标值的变化正交坐标系固定坐标系和载体坐标系以数据为基础建立坐标系三级目录 ...

    线性变换

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    代码是pla501

    在这里插入图片描述

    在这里插入图片描述

    坐标的旋转变换

    在这里插入图片描述

    正体字母变换为斜体字母

    在这里插入图片描述
    程序

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    刚体运动的矩阵

    在这里插入图片描述

    齐次坐标系中的平移矩阵

    在这里插入图片描述

    旋转

    在这里插入图片描述

    实例

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    基向量改变后坐标值的变化

    在这里插入图片描述

    在这里插入图片描述
    在笛卡尔坐标系里,P=inv(v) v是什么,v是基向量变换后的值,如果以变换后的坐标为准,求x在新坐标的值, P*x就可以了。

    u和v是方阵,是两组不同的基向量
    基向量是不共线
    在这里插入图片描述

    正交坐标系

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    固定坐标系和载体坐标系

    在这里插入图片描述

    以数据为基础建立坐标系

    很不错

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    斯密特正交系生成法,思路不错,但算法很麻烦,现在发展为“QR正交分解法”

    qr分解

    构建M,上面可以看到M的最后一列是[0;0]原点,把第一列作为基向量i,在旋转90度得到基向量j,在这个坐标上求出中间向量对应的位置。这样可以很方便看看这些点距离i方向或者j方向上的距离,它们是不是在一条直线上,误差是多少。

    在这里插入图片描述

    三级目录

    展开全文
  • 如果有任何问题、建议,或者更多资源、代码、视频,欢迎您访问专业的Matlab技术交流平台——Matlab技术论坛...R]=qrgv(A)% 基于Givens变换,将方阵A分解为A=QR,其中Q为正交矩阵,...
  • 小波变换对图像的分解与重构(含matlab代码

    万次阅读 多人点赞 2019-02-23 14:22:01
    01 小波变换原理 所谓的小波的小是针对傅里叶波而言,傅里叶波指的是在时域空间无穷震荡的正弦(或余弦波)。 相对而言,小波指的是一种能量在时域非常集中的波,它的能量有限,都集中在某一点附近,而且积分的值...
  • 文章目录一、MATLAB傅里叶变换仿真分析1.1 matlab代码1.2 结果1.3 结果分析二、《完全重建QMF滤波器组的设计》2.1 完全重建QMF滤波器组2.2 两通道正交镜像滤波器组理论2.3 完全重建QMFB遇到的问题和解决方法2.4 完全...
  • 压缩感知常见稀疏基matlab实现代码

    千次阅读 2020-02-22 15:24:00
    **dctmtx(N)**即何生成N×N的离散余弦正交变换矩阵。 离散傅里叶变换矩阵 matlab中同样有直接用的函数dftmtx。 **dftmtx(n)**即可生成离散傅里叶变换矩阵。 正交小波变换矩阵 function ww=DWT(N) [h,g]= wfilters('...
  • 内部附有arnoldi分解矩阵为正交阵和hessenberg变换对算法的matlab代码。详细内容可参考内部代码。此代码稍有不严谨的地方,进一步需要代码请联系我
  • OFDM系统MATLAB仿真代码

    热门讨论 2010-12-11 23:29:14
    OFDM系统MATLAB仿真代码 现代数字调制解调技术的一种高效调制技术OFDM正交频分复用,他是一种多载波传输技术,N个子载波把整个信道分割成N个子信道,N个子信道并行传输信息。 OFDM系统是一种特殊的多载波传输技术,...
  • 主成分分析(Principal Component Analysis,PCA), 是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。
  • 概述 PCA是一种统计过程,基于降维的设计思路,使用正交变换将一组可能相关的训练数据列集转换为一组线性不相关的数据列集(称为主成分)。一个PCA算法模型,可以将一个高维训练数据集转换到低维空间。 正交变换把...
  • 全书共分为三部分,第1部分着重介绍了小波理论基础,包括小波基础知识、连续小波变换、离散小波变换、多分辨率分析与正交小波变换、小波变换和多采样滤波器组、二维小波变换与图像处理及小波包的基本原理等;...
  • 全书共分为三部分,第1部分着重介绍了小波理论基础,包括小波基础知识、连续小波变换、离散小波变换、多分辨率分析与正交小波变换、小波变换和多采样滤波器组、二维小波变换与图像处理及小波包的基本原理等;...
  • 频域滤波matlab

    2013-11-12 21:10:43
    频域滤波matlab实现,数字图像处理 可直接运行,图像matlab代码实现,正交变换
  • PCA算法依赖于一个基本假设:一类图像具有某些相似的特征(如人脸),在整个图像空间中呈现出聚类性,因而形成一个子空间,即所谓特征子空间,PCA变换是最佳正交变换,利用变换基的线性组合可以描述、表达和逼近这一...
  • 以上这些功能的实现都是在MATLAB语言的基础上,编写M文件程序代码实现的。QPSK调制全称Quadrature Phase Shift Keying,http://blog.sina.com.cn/s/blog_a5b5b79e0101rwlf.html,意为正交相移键控,是一种数字调制...
  • MATLAB7.x数字信号处理 源代码

    热门讨论 2008-10-30 18:57:20
    ex6_40 用程序代码来实现Welch方法的功率谱估计 ex6_41 用Welch方法进行PSD估计,并比较当采用不同窗函数时的结果 ex6_42 用Yule-Walker AR法进行PSD估计 ex6_43 用Burg算法计算AR模型的参数 ex6_44 用Burg法PSD估计...
  • 这里主要包括基于Matlab小波工具箱实现的小波基选择、小波包分解、Mallat变换以及小波变换在边缘提取、图像去噪、数据压缩等中的应用,特别包含了二代提升小波的相关内容,理论与实际相结合。大家想要了解的二进小波...
  • 从信号时-频联合分析引入小波变换,将信号的多分辨率分析及Mallat算法作为全书的重点,并在此基础上,进一步阐述了双正交小波多分辨率分析、小波包多分辨率分析、提升小波应用,还讲述了小波分析在奇异性检测、去噪...
  • 数字图像处理原理与实践(MATLAB版)勘误表

    千次阅读 多人点赞 2016-02-17 15:22:50
    【内容简介】本书全面系统地介绍了数字图像处理技术的理论与方法,内容涉及几何变换、灰度变换、图像增强、图像分割、图像去噪、小波变换、形态学处理、多尺度融合、偏微分方程应用、正交变换与图像压缩、边缘及轮廓...
  • 图像压缩方法DCT图像压缩DCT原理介绍DCT和它解压时的反运算的具体算法详细实现代码结果展示行程编码压缩与解压读入图像图像转为矩阵行程编码...离散余弦变换(Discrete Cosine Transform) 是一种最主要的正交变换。它

空空如也

空空如也

1 2 3
收藏数 43
精华内容 17
关键字:

matlab正交变换代码

matlab 订阅