卷积操作是对图像处理时,经常用到的一种操作。它具有增强原信号特征,并且能降低噪音的作用。那么具体是如何计算的呢?
待处理图像数据(5x5): 卷积核:
A = [[17, 24, 1, 8, 15], H = [[8, 1, 6], [23, 5, 7, 14, 16], [3, 5, 7], [4, 6, 13, 20, 22], [4, 9, 2]] [10, 12, 19, 21, 3], [11, 18, 25, 2, 9]]
计算步骤:
将算子围绕中心旋转180度
H = [[2, 9, 4], [7, 5, 3], [6, 1, 8]]
- 滑动算子,使其中心位于输入图像g的(i,j)像素上
(图片版权属于vdumoulin@github)
利用公式求和,得到输出图像的(i,j)像素值
(2,4)元素值 = (1x2 + 8x9 + 15x4) + (7x7 + 14x5 + 16x3) + (13x6 + 20x1 + 22x8) = 575
- 重复2),3),直到求出输出图像的所有像素值
程序代码(python):
# -*- coding: utf-8 -*- # @Time : 2018/1/26 # @Author : guangling_lin # @Email : guangling_lin@aliyun.com # @File : convolve.py import numpy as np import scipy.signal A = np.array([[17, 24, 1, 8, 15], [23, 5, 7, 14, 16], [4, 6, 13, 20, 22], [10, 12, 19, 21, 3], [11, 18, 25, 2, 9]]) H = np.array([[8, 1, 6], [3, 5, 7], [4, 9, 2]]) print(scipy.signal.convolve(A, H))
测试结果:
[[136 209 134 209 134 63 90] [235 220 441 346 276 231 201] [169 431 595 410 575 471 274] [184 371 440 555 620 551 204] [134 301 585 600 765 421 119] [ 73 247 446 536 451 128 69] [ 44 171 284 269 104 85 18]]
每一个成功的背后都有无数个无人知晓的黑夜。
因为
夜晚,是超越对手的最佳时机。
===================== 码农1024 =====================#蔺光岭#
还不快抢沙发