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中列表的一些基本操作知识汇总
May 20 Python
通过Python爬虫代理IP快速增加博客阅读量
Dec 14 Python
Python上下文管理器和with块详解
Sep 09 Python
读取json格式为DataFrame(可转为.csv)的实例讲解
Jun 05 Python
python版opencv摄像头人脸实时检测方法
Aug 03 Python
Python3利用print输出带颜色的彩色字体示例代码
Apr 08 Python
Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法
Feb 27 Python
django 模型中的计算字段实例
May 19 Python
在pytorch中动态调整优化器的学习率方式
Jun 24 Python
python opencv实现简易画图板
Aug 27 Python
python中K-means算法基础知识点
Jan 25 Python
pycharm部署django项目到云服务器的详细流程
Jun 29 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代码
2008/04/09 PHP
phpstorm 正则匹配删除空行、注释行(替换注释行为空行)
2018/01/21 PHP
thinkPHP5框架auth权限控制类与用法示例
2018/06/12 PHP
iframe 父窗口和子窗口相互的调用方法集锦
2010/12/15 Javascript
js的表单操作 简单计算器
2011/12/29 Javascript
JavaScript中的noscript元素属性位置及作用介绍
2013/04/11 Javascript
js处理自己不能定义二维数组的方法详解
2014/03/03 Javascript
angularJS 入门基础
2015/02/09 Javascript
在for循环中length值是否需要缓存
2015/07/27 Javascript
使用js复制链接中的部分文字的方法
2015/07/30 Javascript
js创建jsonArray传输至后台及后台全面解析
2016/04/11 Javascript
AngularJS控制器之间的通信方式详解
2016/11/03 Javascript
bootstrap-datetimepicker实现只显示到日期的方法
2016/11/25 Javascript
BootStrap 图标icon符号图标glyphicons不正常显示的快速解决办法
2016/12/08 Javascript
微信小程序 缓存(本地缓存、异步缓存、同步缓存)详解
2017/01/17 Javascript
JavaScript实现一个带AI的井字棋游戏源码
2018/05/21 Javascript
用vue快速开发app的脚手架工具
2018/06/11 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
vue中activated的用法
2021/01/03 Vue.js
Python中read()、readline()和readlines()三者间的区别和用法
2017/07/30 Python
python与sqlite3实现解密chrome cookie实例代码
2018/01/20 Python
Python实现绘制双柱状图并显示数值功能示例
2018/06/23 Python
解决Python print 输出文本显示 gbk 编码错误问题
2018/07/13 Python
python实现动态数组的示例代码
2019/07/15 Python
python 处理微信对账单数据的实例代码
2019/07/19 Python
什么是Python中的匿名函数
2020/06/02 Python
如何实现一个python函数装饰器(Decorator)
2020/10/12 Python
用python批量移动文件
2021/01/14 Python
一款纯css3实现的漂亮的404页面的实例教程
2014/11/27 HTML / CSS
英国票务网站:Ticketmaster英国
2018/08/27 全球购物
奥地利购买珠宝和手表网站:ELLA JUWELEN
2019/09/03 全球购物
Bitiba意大利:在线宠物商店
2020/10/31 全球购物
教学改革实施方案
2014/03/31 职场文书
班主任对学生的评语
2014/04/26 职场文书
结对共建协议书
2014/08/20 职场文书
用python基于appium模块开发一个自动收取能量的小助手
2021/09/25 Python