Python进阶——二维图像卷积运算

本文通过使用Python的NumPy和SciPy库,演示了如何进行二维图像的卷积运算。通过加载图像,定义Scharr算子,并应用信号处理库中的卷积函数,实现了图像边缘检测。同时展示了不同图像输入下的卷积效果。
部署运行你感兴趣的模型镜像

Python进阶——二维图像卷积运算

代码需求

实现二维图像的卷积运算

代码实现

import numpy as np
from scipy import signal
from scipy import misc
import matplotlib.pyplot as plt

face = misc.face(gray=True)   #face.dat
scharr = np.array([[ -3-3j, 0-10j,  +3 -3j],
                   [-10+0j, 0+ 0j, +10 +0j],
                   [ -3+3j, 0+10j,  +3 +3j]]) # Gx + j*Gy

grad = signal.convolve2d(face, scharr, boundary='symm', mode='same')
fig, (ax_orig, ax_mag) = plt.subplots(1, 2, figsize=(10, 6))
plt.rcParams['font.sans-serif']='SimHei'
ax_orig.imshow(face, cmap='gray')
ax_orig.set_title('first')
ax_orig.set_axis_off()

ax_mag.imshow(np.absolute(grad), cmap='gray')
ax_mag.set_title('second')
ax_mag.set_axis_off()

fig.show()

实现结果

在这里插入图片描述
当把face = misc.face(gray=True) 改成face = misc.ascent()
在这里插入图片描述
以照片形式 face=plt.imread(‘D:/caomei.jpg’) # np.ndarray BGR uint8
在这里插入图片描述

您可能感兴趣的与本文相关的镜像

Python3.10

Python3.10

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值