首页 > 其他分享 >自定义卷积函数并计算窗函数的卷积

自定义卷积函数并计算窗函数的卷积

时间:2024-10-08 17:49:10浏览次数:11  
标签:end 函数 自定义 卷积 sum Nx figure Nw

一、自定义卷积

function y = Convu(x, W) 

Nx = length(x); 

Nw = length(W); 

y = zeros(1, Nx + Nw - 1); 

for n = 1:Nx + Nw - 1 

sum = 0; 

startIdx = max(1, n - Nw + 1); 

endIdx = min(n, Nx); 

for k = 1:Nw 

if startIdx + k - 1 <= endIdx 

sum = sum + x(startIdx + k - 1) * W(Nw - k + 1); 

end 

end 

y(n) = sum; 

end 

end

二、计算窗函数的卷积

N = 100; 
W = ones(1, N); 
figure
stem(W);
figure
Fs = 201; 
T = 1/Fs; 
L = 100; 
t = (0:L-1)*T; 
f = 2; 
A = 1; 
x = A*sin(2*pi*f*t ); 
stem(t,x);
y = Convu(x, W); 
t_conv = (0:length(y)-1) * T; 
figure; 
stem(t_conv, y, 'filled'); 
title('卷积'); 
grid on; 

标签:end,函数,自定义,卷积,sum,Nx,figure,Nw
From: https://blog.csdn.net/weixin_73825075/article/details/142765680

相关文章

  • Scala函数进阶
    (一)函数的字面量用语法1,语法为:(参数列表)=>{方法体}2,函数的字面量作用由于scala的函数字面量没有定义函数名,所以可以通过变量进行调用。另外,也可以通过参数的方式进行调用,关于这种方式的介绍将在scala的函数高阶中进一步说明,这里不在展开叙述。3,scala的函数字面简化第一......
  • C++——有一个Date类,私有成员:月、日、年,公有成员:函数,其作用输出月/日/年,一个构造函数
    没注释的源代码#include<iostream>usingnamespacestd;classDate{private:  intmonth;  intday;  intyear;public:  voiddisplay()  {    cout<<month<<"/"<<day<<"/"<<year<<endl;......
  • C++——有Date类,私有成员:月日年,公有成员:函数,其作用输出月日年。一个构造函数有三个参
    没注释的源代码#include<iostream>usingnamespacestd;classDate{private:  intmonth;  intday;  intyear;public:  voiddisplay()  {    cout<<month<<"/"<<day<<"/"<<year<<endl;......
  • 用函数创建DataFrame:使用字典推导式
    importpandasaspddefmake_df(cols,ind):"""一个简单的DataFrame"""#字典推导式,为每列生成数据data={c:[str(c)+str(i)foriinind]forcincols}#创建并返回DataFramereturnpd.DataFrame(data,ind)#DataFrame示例d......
  • zotero自定义界面
    简介本人zotero使用到的四个插件EtherealStyle(这是一个多彩的插件,用于增强Zotero的界面功能)GreenFrog(显示影响因子)JasminumTranslateforZotero插件下载来源:Zotero插件商店|Zotero中文社区(zotero-chinese.com)最终页面效果显示影响因子、期刊分区、CCF分区......
  • YOLO11改进|卷积篇|引入轻量级自适应提取卷积LAE
    目录一、【LAE】卷积1.1【LAE】卷积介绍1.2【LAE】核心代码二、添加【LAE】卷积机制2.1STEP12.2STEP22.3STEP32.4STEP4三、yaml文件与运行3.1yaml文件3.2运行成功截图一、【LAE】卷积1.1【LAE】卷积介绍下图是【LAE】卷积的结构图,让我们简单分析一下运行过程......
  • Qt实现自定义控件-按钮
    背景:想着自己实现一个好看一点的按钮,切换时加一点动画。也算巩固一下Qt的基本知识。基本环境: 主要用到的类有:QBrush:画刷,主要是画一些颜色啥的。QPainter:画笔,可以画形状。比如带弧形的矩形,圆形,写字等。QPropertyAnimation:动画相关。关键逻辑:重载paintEvent:实现渲染逻辑,......
  • std::bind--改变函数参数的局限
    std::bind是C++标准库中的一个工具,用于将函数对象与部分参数绑定在一起,生成一个新的可调用对象。这使得函数的参数可以被部分或全部提前指定,从而得到一个参数更少甚至无参数的函数对象。在某些情况下,它可以用来延迟执行函数、简化函数调用,或在需要无参函数对象的场景中使用(如线......
  • 讨论jiffies回转的time_after比较函数
    本文讨论jiffies回转的比较函数:#definetime_after(a,b)\((long)(b)-(long)(a)<0)写了个例子如下:#include<stdio.h>#include<stdint.h>#definetime_after(a,b)\((long)(b)-(long)(a)<0)intmain(){unsignedlongla......
  • Vue.js 自定义事件命名
    什么是Vue.js自定义事件命名?在Vue.js中,自定义事件是一种允许组件之间进行通信的重要机制。通过自定义事件,我们可以在父组件和子组件之间传递数据,实现组件的解耦和复用。Vue.js中的事件命名可以使用驼峰命名法或短横线命名法。但是,Vue.js官方强烈建议使用短横线命名法来定义自定义......