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)。

  • 相关阅读:
    第七、八章学习笔记
    sort
    团队作业
    Linux C语言编程
    myod
    第十章学习笔记
    团队作业二—《需求分析》
    学习笔记4
    学习笔记1
    学习笔记2
  • 原文地址:https://www.cnblogs.com/sleepy/p/2099307.html
Copyright © 2011-2022 走看看