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


Posted in Python onJanuary 30, 2019

理想高通滤波实现 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示例

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
Python数据分析之真实IP请求Pandas详解
Nov 18 Python
使用pip发布Python程序的方法步骤
Oct 11 Python
使用11行Python代码盗取了室友的U盘内容
Oct 23 Python
python绘制中国大陆人口热力图
Nov 07 Python
对于Python深浅拷贝的理解
Jul 29 Python
Python利用WMI实现ping命令的例子
Aug 14 Python
已安装tensorflow-gpu,但keras无法使用GPU加速的解决
Feb 07 Python
python检查目录文件权限并修改目录文件权限的操作
Mar 11 Python
Python 自由定制表格的实现示例
Mar 20 Python
Python字典和列表性能之间的比较
Jun 07 Python
Python实现灰色关联分析与结果可视化的详细代码
Mar 25 Python
如何利用python实现列表嵌套字典取值
Jun 10 Python
对DataFrame数据中的重复行,利用groupby累加合并的方法详解
Jan 30 #Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
Jan 30 #Python
对dataframe数据之间求补集的实例详解
Jan 30 #Python
如何在Django中添加没有微秒的 DateTimeField 属性详解
Jan 30 #Python
Pandas统计重复的列里面的值方法
Jan 30 #Python
自学python的建议和周期预算
Jan 30 #Python
python DataFrame 取差集实例
Jan 30 #Python
You might like
社区(php&&mysql)一
2006/10/09 PHP
社区(php&&mysql)六
2006/10/09 PHP
smarty+adodb+部分自定义类的php开发模式
2006/12/31 PHP
php开发留言板的CRUD(增,删,改,查)操作
2012/04/19 PHP
PHP中使用crypt()实现用户身份验证的代码
2012/09/05 PHP
php页面消耗内存过大的处理办法
2013/03/18 PHP
解决PHP mysql_query执行超时(Fatal error: Maximum execution time …)
2013/07/03 PHP
php根据指定位置和长度获得子字符串的方法
2015/03/17 PHP
php页面,mysql数据库转utf-8乱码,utf-8编码问题总结
2015/08/27 PHP
YII Framework教程之异常处理详解
2016/03/14 PHP
jQuery AnythingSlider滑动效果插件
2010/02/07 Javascript
20款超赞的jQuery插件 Web开发人员必备
2011/02/26 Javascript
模仿百度三维地图的js数据分享
2011/05/12 Javascript
动态加载js、css等文件跨iframe实现
2014/02/24 Javascript
JavaScript异步加载浅析
2014/12/28 Javascript
jquery实现点击查看更多内容控制段落文字展开折叠效果
2015/08/06 Javascript
js实现砖头在页面拖拉效果
2020/11/20 Javascript
Node.JS利用PhantomJs抓取网页入门教程
2017/05/19 Javascript
详解webpack 多入口配置
2017/06/16 Javascript
JavaScript实现数值自动增加动画
2017/12/28 Javascript
JS实现显示当前日期的实例代码
2018/07/03 Javascript
深入浅析Node环境和浏览器的区别
2018/08/14 Javascript
JavaScript常用内置对象用法分析
2019/07/09 Javascript
Vue实现页面添加水印功能
2019/11/09 Javascript
封装 axios+promise通用请求函数操作
2020/08/11 Javascript
Python如何生成树形图案
2018/01/03 Python
python实现windows下文件备份脚本
2018/05/27 Python
浅谈对pytroch中torch.autograd.backward的思考
2019/12/27 Python
python代码实现猜拳小游戏
2020/11/30 Python
法学专业本科生自荐信范文
2013/12/17 职场文书
办理暂住证介绍信
2014/01/11 职场文书
上班玩手机检讨书
2014/02/17 职场文书
对外汉语专业大学生职业生涯规划范文
2014/09/13 职场文书
三傻大闹宝莱坞观后感
2015/06/03 职场文书
导游词之烟台威海蓬莱
2019/11/14 职场文书
磁贴还没死, 微软Win11可修改注册表找回Win10开始菜单
2021/11/21 数码科技