理想高通滤波实现Python opencv示例

作者:qq_34725005 时间:2022-09-29 03:58:07 

理想高通滤波实现 python opencv


import numpy as np
import cv2
from matplotlib import pyplot as plt
plt.rcParams[‘font.sans-serif']=[‘SimHei']
plt.rcParams[‘axes.unicode_minus'] = False
I = cv2.imread(‘capture3.png')
cv2.imshow(‘original',I)
(r,g,b) = cv2.split(I)
I = cv2.merge([b,g,r])
J = np.double(cv2.cvtColor(I,cv2.COLOR_RGB2GRAY))
D1 = 30
D2 = 60
D3 = 160
Fuv = np.fft.fftshift(np.fft.fft2(J))
print(‘Fuv',Fuv)
print(I.shape)
m,n = I.shape[0],I.shape[1]
xo = np.floor(m/2)
yo = np.floor(n/2)
h1 = np.zeros((m,n))
h2 = np.zeros((m,n))
h3 = np.zeros((m,n))
for i in range(m):
for j in range(n):
D = np.sqrt((i-xo)**2+(j-yo)**2)
if D>=D1:
h1[i,j]=1
else:
h1[i,j]=0
if D>=D2:
h2[i,j]=1
else:
h2[i,j]=0
if D>=D3:
h3[i,j]=1
else:
h3[i,j]=0
Guv1 = h1*Fuv
Guv2 = h2*Fuv
Guv3 = h3*Fuv
g1 = np.fft.ifftshift(Guv1)
g1 = np.uint8(np.real(np.fft.ifft2(g1)))
print(‘g1',g1)
g2 = np.fft.ifftshift(Guv2)
g2 = np.uint8(np.real(np.fft.ifft2(g2)))
print(‘g2',g2)
g3 = np.fft.ifftshift(Guv3)
g3 = np.uint8(np.real(np.fft.ifft2(g3)))
print(‘g3',g3)
plt.subplot(2,2,1),plt.imshow(I),plt.title(‘原图像')
plt.subplot(2,2,2),plt.imshow(g1),plt.title(‘D0=30')
plt.subplot(2,2,3),plt.imshow(g2),plt.title(‘D0=60')
plt.subplot(2,2,4),plt.imshow(g3),plt.title(‘D0=160')
plt.show()

效果:

理想高通滤波实现Python opencv示例

来源:https://blog.csdn.net/qq_34725005/article/details/82695309

标签:python,opencv
0
投稿

猜你喜欢

  • JavaScript登录验证码的实现

    2023-08-23 21:03:12
  • sql server 锁表语句分享

    2012-02-12 15:49:20
  • python打开url并按指定块读取网页内容的方法

    2023-07-07 11:00:36
  • python将unicode和str互相转化的实现

    2023-07-17 21:36:34
  • 实现一个获取元素样式的函数getStyle

    2009-02-10 10:37:00
  • asp如何验证信用卡是否可用?

    2010-06-10 18:39:00
  • 背景图片千万不要gzip压缩,尤其是PNG

    2009-06-19 12:42:00
  • IE7的web标准之道 Ⅱ

    2008-08-13 12:50:00
  • python中csv文件创建、读取及修改等操作实例

    2023-07-31 23:22:25
  • asp定时生成静态HTML的代码

    2010-07-02 12:29:00
  • python Event事件、进程池与线程池、协程解析

    2023-09-06 00:39:19
  • 了解WEB页面工具语言XML(四)应用分类

    2008-09-05 17:18:00
  • python实现根据窗口标题调用窗口的方法

    2022-06-12 04:24:40
  • python解释模型库Shap实现机器学习模型输出可视化

    2022-04-27 08:00:10
  • 使用wxpy实现自动发送微信消息功能

    2022-04-01 21:16:06
  • JS不同加载方式下的window.onload

    2009-05-21 18:09:00
  • PHP html_entity_decode()函数讲解

    2023-06-01 00:59:43
  • PHP simplexml_load_file()函数讲解

    2023-06-03 23:16:56
  • IE7新支持的CSS属性和属性选择符

    2008-03-16 14:26:00
  • asp 网站静态化函数代码html

    2011-03-16 11:21:00
  • asp之家 网络编程 m.aspxhome.com