zoukankan      html  css  js  c++  java
  • 卷积、卷积矩阵(Convolution matrix)与核(Kernel)

    • 在图像处理领域,Kernel = convolution matrix = mask,它们一般都为一个较小的矩阵;
    • 用于:Sharpen,Blur, Edge enhance,Edge detect,Emboss(使凸出;在……上作浮雕图案;装饰)

    1. 卷积操作与卷积矩阵的等价性

    • (1)创建一维信号

      N = 100;
      s = zeros(N, 1);
      k = [20, 45, 70];
      a = [2, -1, 1];
      s(k) = a;
    • (2)创建卷积核

      L = 4;
      h = ones(L, 1)/L;
    • (3)使用 matlab 创建 convolution matrix

      首先考虑,卷积矩阵的 size,卷积操作conv(h, s) 返回的响应其长度为 L+N-1, 因此:

      M = N+L-1;
      H = sparse(M, N);
      e = ones(N, 1)
      for i = 0:L-1,
          H = H + spdiags(e*h(i+1), -i, M, N);
      end
    • (4)验证二者操作的等价性:

      err = H*s - conv(h, s);
      max_err = max(abs(err));

    2. spy:可视化稀疏矩阵的形式

    而不是简单地将稀疏矩阵以一个矩阵的形式显示,显然是因为其规模十分之大,且较为稀疏,不易直观观察。

    Kernel (image processing)
    8.2. Convolution Matrix

  • 相关阅读:
    windows cmd 编码
    ARM伪指令
    System.load 和 System.loadLibrary
    用GDB调试程序
    ARM指令集
    ARM寻址方式
    abortion
    Oxford City Jealous Lover
    everyday words
    【转】高效率的C++函数返回值
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9422731.html
Copyright © 2011-2022 走看看