python用opencv 图像傅里叶变换


Posted in Python onJanuary 04, 2021

傅里叶变换
dft = cv.dft(np.float32(img),flags = cv.DFT_COMPLEX_OUTPUT)
傅里叶逆变换
img_back = cv.idft(f_ishift)

实验:将图像转换到频率域,低通滤波,将频率域转回到时域,显示图像

import numpy as np
import cv2 as cv
from matplotlib import pyplot as plt

img = cv.imread('d:/paojie_g.jpg',0)
rows, cols = img.shape
crow, ccol = rows//2 , cols//2

dft = cv.dft(np.float32(img),flags = cv.DFT_COMPLEX_OUTPUT)
dft_shift = np.fft.fftshift(dft)

# create a mask first, center square is 1, remaining all zeros
mask = np.zeros((rows,cols,2),np.uint8)
mask[crow-30:crow+31, ccol-30:ccol+31, :] = 1

# apply mask and inverse DFT
fshift = dft_shift*mask
f_ishift = np.fft.ifftshift(fshift)
img_back = cv.idft(f_ishift)
img_back = cv.magnitude(img_back[:,:,0],img_back[:,:,1])

plt.subplot(121),plt.imshow(img, cmap = 'gray')
plt.title('Input Image'), plt.xticks([]), plt.yticks([])
plt.subplot(122),plt.imshow(img_back, cmap = 'gray')
plt.title('Low Pass Filter'), plt.xticks([]), plt.yticks([])
plt.show()

python用opencv 图像傅里叶变换

Python 相关文章推荐
python实现360的字符显示界面
Feb 21 Python
使用Python脚本在Linux下实现部分Bash Shell的教程
Apr 17 Python
初步讲解Python中的元组概念
May 21 Python
Python的Flask框架应用程序实现使用QQ账号登录的方法
Jun 07 Python
深入学习Python中的装饰器使用
Jun 20 Python
python实现折半查找和归并排序算法
Apr 14 Python
Python 绘图库 Matplotlib 入门教程
Apr 19 Python
Python中的元组介绍
Jan 28 Python
python实现视频分帧效果
May 31 Python
详解Django-channels 实现WebSocket实例
Aug 22 Python
python实现贪吃蛇游戏源码
Mar 21 Python
更新升级python和pip版本后不生效的问题解决
Apr 17 Python
python基于opencv 实现图像时钟
Jan 04 #Python
python基于opencv实现人脸识别
Jan 04 #Python
利用python绘制正态分布曲线
Jan 04 #Python
Python 打印自己设计的字体的实例讲解
Jan 04 #Python
Python关于拓扑排序知识点讲解
Jan 04 #Python
Python经典五人分鱼实例讲解
Jan 04 #Python
Python约瑟夫生者死者小游戏实例讲解
Jan 04 #Python
You might like
关于PHP结束标签的使用细节探讨及联想
2013/03/04 PHP
php操作mysql数据库的基本类代码
2014/02/25 PHP
PHP四大安全策略
2014/03/12 PHP
微信支付的开发流程详解
2016/09/13 PHP
详解PHP中mb_strpos的使用
2018/02/04 PHP
laravel unique验证、确认密码confirmed验证以及密码修改验证的方法
2019/10/16 PHP
用一段js程序来实现动画功能
2007/03/06 Javascript
jquery异步调用页面后台方法‏(asp.net)
2011/03/01 Javascript
JavaScript中的几个关键概念的理解-原型链的构建
2011/05/12 Javascript
jQuery插件slides实现无缝轮播图特效
2015/04/17 Javascript
删除javascript所创建子节点的方法
2015/05/21 Javascript
简单实现限制uploadify上传个数
2015/11/16 Javascript
bootstrap datetimepicker日期插件超详细使用方法介绍
2017/02/23 Javascript
AngularJS集合数据遍历显示的实例
2017/12/27 Javascript
vue实现验证码按钮倒计时功能
2018/04/10 Javascript
[03:20]2015国际邀请赛全明星表演赛
2015/08/08 DOTA
Python 数据处理库 pandas 入门教程基本操作
2018/04/19 Python
Django框架使用富文本编辑器Uedit的方法分析
2018/07/31 Python
利用Python实现Shp格式向GeoJSON的转换方法
2019/07/09 Python
解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available
2019/07/31 Python
我看到了用指针调用函数的不同语法形式
2014/07/16 面试题
Oracle中delete,truncate和drop的区别
2016/05/05 面试题
成人高等教育毕业生自我鉴定
2013/10/22 职场文书
生产副总岗位职责
2013/11/28 职场文书
市场开发与营销专业求职信
2013/12/31 职场文书
人事专员岗位职责范本
2014/03/04 职场文书
信访稳定工作汇报
2014/10/27 职场文书
2014年企业党建工作总结
2014/12/18 职场文书
党风廉正建设个人工作总结
2015/03/06 职场文书
导游词之西湖雷峰塔
2019/09/18 职场文书
学会用Python实现滑雪小游戏,再也不用去北海道啦
2021/05/20 Python
html5 录制mp3音频支持采样率和比特率设置
2021/07/15 Javascript
恶魔之树最顶端的三颗果实 震震果实上榜,第一可以制造岩浆
2022/03/18 日漫
MySQL数据库事务的四大特性
2022/04/20 MySQL
Spring Boot 使用 Spring-Retry 进行重试框架
2022/04/24 Java/Android
python中pycryto实现数据加密
2022/04/29 Python