zoukankan      html  css  js  c++  java
  • 线性卷积 matlab 实现

    x1 = [1,2,2,1];
    x2 = [1,-1,-1,1];
    x3 = conv(x1,x2)

    image

    x1 = [1,2,2,1];
    x2 = [1,-1,-1,1];
    %x3 = conv(x1,x2)     %MATLAB 自带的函数
    circonvt(x1,x2,9)        %前面一节刚写的函数

    image

    如果将X1 与X2 通过补零而成为N =(N1+N2-1)点序列,那么循环卷积就与线性卷积一样了。

    差别在于循环移位和线性移位。

    x1 = [1,2,2,1];
    x2 = [1,-1,-1,1];
    %x3 = conv(x1,x2)
    circonvt(x1,x2,7)

    image

    x1 = [1,2,2,1];
    x2 = [1,-1,-1,1];
    %x3 = conv(x1,x2)
    circonvt(x1,x2,5)

    image

    x1 = [1,2,2,1];
    x2 = [1,-1,-1,1];
    %x3 = conv(x1,x2)
    circonvt(x1,x2,6)

    image

    实现中的N过大时会占用较多存储空间 当N选取的值比要求值小时就会引入误差

    当选取N = max(N1,N2)做循环卷积时,前(M-1)个样本在误差中(即有别于线性卷积),这里M = min(N1,N2)。

  • 相关阅读:
    MySQL学习笔记:coalesce
    Oracle学习笔记:decode函数
    MySQL学习笔记:like和regexp的区别
    状态图
    构件图和部署图
    java基础知识(一)
    包图
    活动图
    协作图
    序列图
  • 原文地址:https://www.cnblogs.com/sleepy/p/2099307.html
Copyright © 2011-2022 走看看