数(3)相关运算和卷积运算

article/2025/10/23 10:26:58

目录

相关运算

卷积运算

连续信号 

离散信号 

 卷积性质

 卷积定理


(参考其他多篇博客,学习自用,侵删)

相关运算

 相关运算是两个序列的相似性比较的一种数学运算。

公式里面的序列,可能是实数,可能是复数(无线通信信号处理通常都是复数域进行)。

  • 只有实数参与运算,说明此处只关心幅度相似性。
  • 而复数参与运算,说明除了幅度,信号相位也是携带信息的,必须一起考虑。复数运算时,对应的乘积是共轭乘积才能得到相关的结果。 

 

 

两个相关函数都是对相关性,即相似性的度量。如果进行归一化,会看的更清楚。

  • 自相关就是函数和函数本身的相关性,当函数中有周期性分量的时候,自相关函数的极大值能够很好的体现周期性。当自相关运算扫描到完全重合时,相似程度达到最大产生一个峰值。 
  • 互相关就是两个函数之间的相似性,当两个函数都具有相同周期分量的时候,它的极大值同样能体现这种周期性的分量。

      相关运算从线性空间的角度看其实是内积运算,而两个向量的内积在线性空间中表示一个向量向另一个向量的投影,表示两个向量的相似程度,所以相关运算就体现了这种相似程度。

         

互相关函数和卷积运算类似,也是两个序列滑动相乘,但是区别在于:互相关的两个序列都不翻转,直接滑动相乘,求和;卷积的其中一个序列需要先翻转,然后滑动相乘,求和。所以,f(t)和g(t) 做相关等于 f*(-t) 与 g(t) 做卷积。

卷积与相关关系:两图形互相关运算等效于两图像之一先折叠后,与另一图形进行卷积运算。

卷积运算

下面可以进入核心内容——卷积了!
如果你每天都到地下去打台球,那么老板每天都要扇你一巴掌,不过当老板打你一巴掌后,你5分钟就消肿了,所以时间长了,你甚至就适应这种生活了……如果有一天,老板忍无可忍,以0.5秒的间隔开始不间断的扇你的过程,这样问题就来了,第一次扇你鼓起来的包还没消肿,第二个巴掌就来了,你脸上的包就可能鼓起来两倍高,老板不断扇你,脉冲不断作用在你脸上,效果不断叠加了,这样这些效果就可以求和了,结果就是你脸上的包的高度随时间变化的一个函数了(注意理解);如果老板再狠一点,频率越来越高,以至于你都辨别不清时间间隔了,那么,求和就变成积分了。可以这样理解,在这个过程中的某一固定的时刻,你的脸上的包的鼓起程度和什么有关呢?和之前每次打你都有关!但是各次的贡献是不一样的,越早打的巴掌,贡献越小,所以这就是说,某一时刻的输出是之前很多次输入乘以各自的衰减系数之后的叠加而形成某一点的输出,然后再把不同时刻的输出点放在一起,形成一个函数,这就是卷积,卷积之后的函数就是你脸上的包的大小随时间变化的函数。本来你的包几分钟就可以消肿,可是如果连续打,几个小时也消不了肿了,这难道不是一种平滑过程么?反映到剑桥大学的公式上,f(a)就是第a个巴掌,g(x-a)就是第a个巴掌在x时刻的作用程度,乘起来再叠加就ok。

卷积的含义:狭义的物理概念是激励信号(如f(t))通过特性为g(t)(系统冲激响应)响应的结果。广义而言,是两个函数波形相互影响过程的总和,其一折叠后,两者从首尾相接相互扫描(且相乘)过程的连续和。

卷积步骤:开始卷积前,先将变量t变\tau,且决定其中一波形折叠后并移位t,移至固定波形左侧,首位相接,然后开始卷积------随参变量t增加,二图像逐渐重叠(相乘积分)直至扫描结束。

连续信号 

(f* g)(t )\ {\stackrel {\mathrm {def} }{=}}\int _{-\infty }^{\infty }f(\tau)\ g(t-\tau )dt=\int_{-\infty}^{\infty}f(t-\tau)g(\tau)d\tau

 

离散信号 

离散信号f(n),g(n)的定义如下:

N-----为信号f(n)的长度

s(n)----为卷积结果序列,长度为len(f(n))+len(g(n))-1

例:

f(n) = [1 2 3]; g(n) = [2 3 1];

s(0) = f(0)g(0-0) + f(1)g(0-1)+f(2)g(0-2)

= 1*2 + 2*0 + 3*0 =2

s(1) = f(0)g(1-0) + f(1)g(1-1) + f(2)g(1-2)

   = 1*3 + 2*2 + 3*0 = 7

s(2) = f(0)g(2-0) + f(1)g(2-1) + f(2)g(2-2)

=1*1 + 2*3 + 3*2=13

s(3) = f(0)g(3-0) + f(1)g(3-1) + f(2)g(3-2)

=1*0 + 2*1 + 3*3=11

s(4) = f(0)g(4-0) + f(1)g(4-1) + f(2)g(4-2)

=1*0 + 2*0 + 3*1=3

最终结果为:

     s(n) = [2 7 13 11 3]

上述计算图示如下:

在数学里我们知道f(-x)的图像是f(x)对y轴的反转

     g(-m)就是把g(m)的序列反转,g(n-m)的意义是把g(-m)平移的n点:

如上图g(m)在信号处理中通常叫做滤波器或掩码,卷积相当于掩码g(m)反转后在信号f(n)上平移求和。Matlab计算卷积的函数为conv,

>> A = [1 2 3];

B = [2,3,1];

convD = conv(A,B)

convD =

     2     7    13    11     3

相应的二维卷积定义如下:

 卷积性质

 

 

 

 卷积定理

 卷积定理是傅立叶变换满足的一个重要性质。卷积定理指出,函数卷积的傅立叶变换是函数傅立叶变换的乘积。具体分为时域卷积定理和频域卷积定理

  • 时域卷积定理即时域内的卷积对应频域内的乘积;
  • 频域卷积定理即频域内的卷积对应时域内的乘积。


http://chatgpt.dhexx.cn/article/47j8VLnI.shtml

相关文章

各种卷积方式的最全讲解

文章目录 一:卷积的定义二:标准卷积1.1D卷积Ⅰ:一维Full卷积Ⅱ:一维Same卷积Ⅲ:一维Valid卷积Ⅳ:三种一维卷积的相互关系 2.2D卷积3.3D卷积 三:转置卷积四:Separable卷积五&#xff…

深度学习(一):卷积运算

一、卷积核与池化: 1.1 卷积核(Convolutional): 将输入图像中一个小区域中像素加权平均后成为输出图像中的每个对应像素,其中权值由一个函数定义,这个函数称为卷积核(滤波器)。 一般可以看作对某个局部的…

深度学习-图解卷积运算

卷积神经网络(Convolutional Neural Network,CNN)针对全连接网络 的局限做出了修正,加入了卷积层(Convolution层)和池化层(Pooling 知 层)。 CNN被广泛应用于图像识别、语音识别等各…

【svg文字路径动画,让文字沿着路径动起来】

最近项目里面用到了这个文字路径动画,不得不说确实挺好玩的,如果有需要的小伙伴可以参考! 代码片段 由于公司之前项目里也用到过,但是我是第一次写,所以第一时间还是先看看前辈是怎么处理的,借鉴一下长长…

Qml路径动画-PathAnimation

Qml中的PathAnimation可以让目标沿着一个指定路径运行。 PathAnimation的属性 anchorPoint:使用"x,y"来指定运动的锚定点。orientation:指定控制目标对象沿着路径运动的旋转策略。path属性的类型为Path,选择你要构造的路径。 sta…

dotween路径移动_Unity---DOTween插件学习(3)---获取数据、协程、路径动画

[Toc] 本文及系列参考于Andy老师的DOTween系列 欢迎大家关注**Andy老师** 10、获取数据 类方法 返回所有暂停的动画,没有则返回null var list DOTween.PausedTweens(); 返回所有真正播放的动画,没有则返回null var list DOTween.PlayingTweens(); 获取…

houdini:固定朝向的路径动画

涉及节点:follow path 一、模型准备 路径、朝向的物体,以及运动的物体,一共三个 二、follow path 节点 原来xxxx是一个属性,现在好像必须在创建路径动画的时候就选择xxx了 下面请紧跟我的步骤 steep1:点击follow p…

Dotween运动曲线与路径动画

Dotween运动曲线与路径动画 Dotween--运动曲线内置的运动曲线AnimationCurve Dotween--路径动画一:设置一个数组存放位置坐标二:直接写出自己想要到的坐标 Dotween–运动曲线 想要理解Dotwenn的运动曲线,最重要的一步就是要理解坐标的的含义,这里看图讲…

AE路径动画

动画效果预览 一、AI跑道汽车 注:绘制完成后,给需要作动效的部位进行单独新建图层并命名; ctrl c,ctrlf原位粘贴 二、导入AE 具体导入方法请查看此文: AE动画导入/导出_TING糖的博客-CSDN博客AE导入/导出方式http…

Cinemachine教程 | Unity中如何制作路径动画?

摘要:在Unity中制作路径动画是有挺多方式的,基于Cinemachine的Dolly Path是一个简单便捷的方法,咱们来快速的学习一下吧! 洪流学堂,让你快人几步。你好,我是跟着大智(VX: zhz11235)学Unity的萌新&#xff0…

Android实现 曲线路径动画

本文参考 https://www.jianshu.com/p/fea4d1f6512a 概述 近期碰到曲线动画的实现问题,写本文记录下。 动画类似“剑与远征”游戏的金币动画,动画路径如下图: 思路 通过贝塞尔曲线计算出x和y的位置(各个点的位置需要自己微调&am…

WPF实现路径动画

让目标沿着一条给定的路径移动&#xff0c;使用DoubleAnimationUsingPath类实现。实现如下。 点击鼠标移动 实现代码如下&#xff1a;界面XAML <Grid x:Name"LayoutRoot"> <Grid.Resources> <PathGeometry x:Key"movingPath…

Houdini:最小白的路径动画

涉及节点&#xff1a;curve、constraints、follow path 涉及知识&#xff1a;路径动画、约束 提一嘴maya的路径动画&#xff1a;在constrain-->motion paths -->attach motion path中 一、模型准备 一个模型和一个curve曲线&#xff0c;分别在两个geometry里面&#…

UE5蓝图时间轴摄影机路径动画

1. 新建蓝图类Actor 2. 蓝图里添加Spline和Camera组件&#xff0c;另外添加一个Scene场景组件&#xff0c;可以把Camera拖到Scene的子级&#xff0c;这样做可以让Camera在沿着路径运动的时候自由更改旋转方向 3. 打开关卡蓝图&#xff0c;首先按键获取MovingLine的Camera视角&a…

html5 路径运动,探秘神奇的运动路径动画 Motion Path

CSS 中有一个非常有意思的模块 -- CSS Motion Path Module Level 1,翻译过来也就是运动路径。本文将对 motion path 一探究竟,通过本文,你可以了解到:什么是 CSS motion path 使用 CSS motion path 制作简单路径动画 使用 CSS motion path 制作复杂路径动画 什么是 CSS Mot…

canvas绘制折线路径动画

最近有读者加我微信咨询这个问题&#xff1a; 其中的效果是一个折线路径动画效果&#xff0c;如下图所示&#xff1a; 要实现以上路径动画&#xff0c;一般可以使用svg的动画功能。或者使用canvas绘制&#xff0c;结合路径数学计算来实现。 如果用canvas来绘制&#xff0c…

路径动画

工作日记&#xff0c;最近做项目遇到一个有意思的动画效果&#xff0c;路径动画&#xff0c;做一个demo&#xff0c;方便以后查阅&#xff0c;也供初学者借鉴&#xff01; 效果如下图&#xff1a; 效果分两步&#xff1a; 第一步是把书翻开&#xff0c;是一个贞动画&#xf…

openlayers实现路径动画

实现效果如下 主要代码 import {Feature} from ol; import {LineString, Point} from ol/geom; import {Icon, Stroke, Fill, Style} from ol/style; import {getVectorContext} from ol/render;// 路径动画图层 let traceSource new VectorSource({}); let moveLayer new…

咸鱼Maya笔记—路径动画

咸鱼Maya笔记—路径动画 创建路径动画 动画的创建方式有很多种&#xff0c;路径动画是其中的一种&#xff0c;Key关键帧的方式并不适用于所有的情况&#xff0c;有些特定的情况下我们就需要用到路径动画&#xff0c;它的创建方法如下 创建路径动画 &#xff08;如果你的maya菜…

CSS 路径动画

前言 最近看css大佬chokcoco的文章&#xff0c;看到了这篇 探秘神奇的运动路径动画 Motion Path 关于css路径动画的文章。 之前没学过&#xff0c;这里按照大佬的文章进行简单的学习。 Motion Path CSS Motion Path 规范主要包含以下几个属性&#xff1a; offset-path&…