MATLAB中xcorr函数用法

目录

语法

说明

示例

两个向量的互相关

向量的自相关

归一化的互相关


        xcorr函数的功能是返回互相关关系。

语法

r = xcorr(x,y)
r = xcorr(x)
r = xcorr(___,maxlag)
r = xcorr(___,scaleopt)
[r,lags] = xcorr(___)

说明

        r = xcorr(x,y) 返回两个离散时间序列的互相关。互相关测量向量 x 和移位(滞后)副本向量 y 的之间的相似性,形式为滞后的函数。如果 x 和 y 的长度不同,函数会在较短向量的末尾添加零,使其长度与另一个向量相同。

        r = xcorr(x) 返回 x 的自相关序列。如果 x 是矩阵,则 r 也是矩阵,其中包含 x 的所有列组合的自相关和互相关序列。

        r = xcorr(___,maxlag) 将上述任一语法中的滞后范围限制为从 -maxlag 到 maxlag。

        r = xcorr(___,scaleopt) 还为互相关或自相关指定归一化选项。除 'none'(默认值)以外的任何选项都要求 x 和 y 具有相同的长度。

        [r,lags] = xcorr(___) 还返回用于计算相关性的滞后。

示例

两个向量的互相关

        创建向量 x 和向量 y,后者是 x 右移 5 个元素的结果。计算并绘制 x 和 y 的估计互相关。在 x 和 y 的元素完全匹配的滞后值 (-5) 处,出现最大峰值。

n = 0:15;
x = 0.84.^n;
y = circshift(x,5);
[c,lags] = xcorr(x,y);
stem(lags,c)

如图所示:

Figure contains an axes object. The axes object contains an object of type stem.

向量的自相关

        计算并绘制向量 x 的估计自相关。在零滞后时(此时 x 与自身完全匹配),出现最大峰值。

n = 0:15;
x = 0.84.^n;
[c,lags] = xcorr(x);
stem(lags,c)

如图所示:

Figure contains an axes object. The axes object contains an object of type stem.

归一化的互相关

        使用单位峰值计算并绘制向量 x 和 y 的归一化互相关,并指定最大滞后为 10。

n = 0:15;
x = 0.84.^n;
y = circshift(x,5);
[c,lags] = xcorr(x,y,10,'normalized');
stem(lags,c)

如图所示:

Figure contains an axes object. The axes object contains an object of type stem.

参数说明

x — 输入数组

        输入数组,指定为向量、矩阵或多维数组。如果 x 是多维数组,则 xcorr 对所有维度按列操作,并将每个自相关和互相关作为矩阵的列返回。

y — 输入数组

        输入数组,指定为向量。

maxlag — 最大滞后

        ​最大滞后,指定为整数标量。如果指定 maxlag,则返回的互相关序列范围是从 -maxlag 到 maxlag。如果没有指定 maxlag,则滞后范围等于 2N–1,其中 N 是 x 和 y 中较长一方的长度。

scaleopt — 归一化选项

归一化选项,指定为下列各项之一。

  • ​'none' - 原始、未缩放的互相关。当 x 和 y 长度不同时,'none' 是唯一有效的选项。

  • 'biased' - 互相关的有偏估计:

  • 'unbiased' - 互相关的无偏估计:

  • 'normalized' 或 'coeff' - 对序列进行归一化,使零滞后时的自相关等于 1:

r — 互相关或自相关

        互相关或自相关,以向量或矩阵形式返回。

        如果 x 是 M × N 矩阵,则 xcorr(x) 返回 (2M – 1) × N2 矩阵,其中包含 x 各列的自相关和互相关。如果指定 maxlag,则 r 的大小为 (2 × maxlag + 1) × N2。

​例如,如果 S 有三列,S=(x1x2x3),则 R = xcorr(S) 的结果的形式为

lags — 滞后索引

滞后索引,以向量形式返回。

互相关和自相关

        xcorr 的结果可以解释为两个随机序列之间的相关性估计,也可以解释为两个确定性信号之间的确定相关性。

两个联合平稳随机过程(xn 和 yn 的真正互相关序列由下式给出

        其中 −∞ < n < ∞,星号表示复共轭,E 是期望值运算符。xcorr 只能估计序列,因为实际上,在无限长随机过程的一个实现中只有有限的部分可用。

        默认情况下,xcorr 计算未经归一化的原始相关性:

输出向量 c 包含的元素由下式给出:

        一般情况下,相关性函数需要归一化来生成准确的估计。可以通过使用输入参数 scaleopt 来控制相关性的归一化。

参考

        [1] Buck, John R., Michael M. Daniel, and Andrew C. Singer. Computer Explorations in Signals and Systems Using MATLAB®. 2nd Edition. Upper Saddle River, NJ: Prentice Hall, 2002.

        [2] Stoica, Petre, and Randolph Moses. Spectral Analysis of Signals. Upper Saddle River, NJ: Prentice Hall, 2005.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/317067.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

内网离线搭建之----nginx配置ssl高可用

一、证书生成 1.生成服务端私钥 openssl genrsa -des3 -out server.key 2048 2.去除server.key密码 ps&#xff1a;否则每次用到都需要输入密码 openssl rsa -in server.key -out server.key 3.生成证书的签名 ps&#xff1a;使用机构颁发证书的到这一步就可以了&#xff…

2024年美赛数学建模ABCDEF题思路选题分析

文章目录 1 赛题思路2 美赛比赛日期和时间3 赛题类型4 美赛常见数模问题5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 美赛比赛日期和时间 比赛开始时间&#xff1a;北京时间2024年2月2日&#xff08;周五&#xff…

【Dubbo】RPC框架dubbo入门

目录 Dubbo 架构概述Dubbo是什么Dubbo能做什么Dubbo 核心概念和架构Dubbo 数据面服务开发框架通信协议 Dubbo 服务治理服务治理抽象Dubbo Admin服务网格 Dubbo入门开发实战实战案例介绍基于Spring Boot Starter开发安装Zookeeper父工程dubbo-demo接口服务模块service-api接口提…

vue登录 滑动验证,记住密码及AES加密解密

相关依赖 npm install js-cookie //js-cookie npm install crypto-js //AES加密解密 npm install -S vue-puzzle-vcode //滑动验证 <template><div class"login"><div class"login-box"><!-- 标题 --><div class"img…

Windows2012MySQL的安装与配置【详细教程】

目录 一.mysql5.7安装与配置 二.安装MySQL8.0 三.向日葵远程操作工具 3.1.介绍 3.2.常见的使用场景 3.3.使用方法 好啦今天就到这里了&#xff01;&#xff01;&#xff01;希望能帮到你哦&#xff01;&#xff01;&#xff01; 一.mysql5.7安装与配置 首先把你的虚拟机打…

DevOps系列 之 Python与Java互相调用的案例

Python和Java是两种非常流行的编程语言。Python是一种解释型语言&#xff0c;而Java则是一种编译型语言。两者都有广泛的应用&#xff0c;尤其是在测试领域。在本文中&#xff0c;我们将讨论如何使用Python测试Java源代码&#xff0c;Java如何调用Python脚本。 单元测试 单元…

C++八股学习心得.2

1.C常量 常量是固定值&#xff0c;在程序执行期间不会改变。这些固定的值&#xff0c;又叫做字面量。 常量可以是任何的基本数据类型&#xff0c;可分为整型数字、浮点数字、字符、字符串和布尔值。 常量就像是常规的变量&#xff0c;只不过常量的值在定义后不能进行修改。 …

vue保姆级教程----深入了解Vuex的工作原理

&#x1f4e2; 鸿蒙专栏&#xff1a;想学鸿蒙的&#xff0c;冲 &#x1f4e2; C语言专栏&#xff1a;想学C语言的&#xff0c;冲 &#x1f4e2; VUE专栏&#xff1a;想学VUE的&#xff0c;冲这里 &#x1f4e2; CSS专栏&#xff1a;想学CSS的&#xff0c;冲这里 &#x1f4…

基于双闭环PI和SVPWM的PMSM控制器simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 双闭环PI控制器设计 4.2 SVPWM技术 4.3 控制系统实现 5.完整工程文件 1.课题概述 基于双闭环PI和SVPWM的PMSM控制器simulink建模与仿真。系统包括逆变桥、PMSM、park变换、clark变换、SVPWM、PI控…

点云体素化

文章目录 环境&#xff1a;1.1 体素化介绍&#xff1a;2.1 python代码3.1 可视化 环境&#xff1a; Open3D 1.1 体素化介绍&#xff1a; 用一个个小体素去占据点云 2.1 python代码 conda activete deeplabv3plus(环境名称–安装好open3D的) python demo.py import open3d a…

AILDL详解

AIDL&#xff08;Android接口描述语言&#xff09;是一个IDL&#xff08;Interactive Data Language/交互式数据语言&#xff09;语言&#xff0c;它可以生成一段代码&#xff0c;可以是一个在Android设备上运行的两个进程使用内部通信进程进行交互。 如果你想在一个安卓程序/…

【vue/uniapp】pdf.js 在一些型号的手机上不显示

引入&#xff1a; uniapp 项目通过 pdf.js 来在线浏览 pdf 链接&#xff0c;在微信小程序中都显示正常&#xff0c;但是通过 app 跳转小程序&#xff0c;在苹果、小米显示正常&#xff0c;但是华为和 oppo 就不显示&#xff0c;可以通过降 pdf.js 的版本来解决这个问题。 解决&…