数字图像处理的python实践(13)——频域高通高斯滤波和拉普拉斯滤波

本文介绍了如何使用Python进行图像锐化,通过实现高通高斯滤波和拉普拉斯滤波来增强图像边缘。高通滤波器在频域中衰减低频成分,使图像边缘更加清晰。拉普拉斯滤波器的推导从一维傅里叶变换开始,其频域表达式用于构建滤波器。代码示例展示了滤波效果,其中σ值的大小影响边缘提取的精度和连续性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     图像的锐化可以通过衰减图像频谱中的低频成分来实现,这建立起了空间域图像锐化和频率域高通滤波之间的对应关系。我们想要实现和上一章中高斯低通滤波相反的效果,即高斯高通滤波,实现的方法和上一章的代码基本一致,就是滤波函数有所不同,形式为

H(u,v)=1-e^{-[(u-\frac{M}{2})^{2}+(v-\frac{N}{2})^{2}]/2\sigma ^{2}}

       实现的代码如下,图像还是那熟悉的动漫女头,处理后边缘显得很清晰很突出,而除了边缘外其他的区域的颜色都是浅色。当sigma的数值越大,边缘提取得越精确,但是有可能出现不完整的边缘信息,即边缘不连续,所以也不适合取值过大。

import cv2
import numpy as np

def GaussianHighFrequencyFilter(src, dst, sigma = 1):

	im = cv2.imread(src, 0)
	imarr = np.array(im)

	height, width = imarr.shape

	fft = np.fft.fft2(imarr)
	fft = np.fft.fftshift(fft)

	for i in range(height):
		for j in range(height):
			fft[i, j] *= (1 - np.exp(-((i - (height - 1)/2)**2 + (j - (width - 1)/2)**2)/2/sigma**2))

	ff
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值