校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識(shí)庫(kù) > OpenCV半小時(shí)掌握基本操作之傅里葉變換

OpenCV半小時(shí)掌握基本操作之傅里葉變換

熱門標(biāo)簽:企業(yè)微信地圖標(biāo)注 地圖標(biāo)注多個(gè) 鶴壁手機(jī)自動(dòng)外呼系統(tǒng)違法嗎 高德地圖標(biāo)注收入咋樣 沈陽防封電銷電話卡 B52系統(tǒng)電梯外呼顯示E7 萊蕪電信外呼系統(tǒng) 銀川電話機(jī)器人電話 怎么辦理400客服電話

概述

OpenCV 是一個(gè)跨平臺(tái)的計(jì)算機(jī)視覺庫(kù), 支持多語言, 功能強(qiáng)大. 今天小白就帶大家一起攜手走進(jìn) OpenCV 的世界. 

高頻 vs 低頻

高頻 vs 低頻:

  • 高頻: 變換劇烈的灰度分量, 例如邊界
  • 低頻: 變換緩慢的灰度分量, 例如一片大海

濾波:

  • 低通濾波器: 只保留低頻, 會(huì)使得圖像模糊
  • 高通濾波器: 只保留高頻, 會(huì)使得圖像細(xì)節(jié)增強(qiáng)

傅里葉變換

傅里葉變化 (Fourier Transform) 是一種分析信號(hào)的方法. 傅里葉變化可分析信號(hào)的成分, 也可以用這些成分合成信號(hào).

效果:

傅里葉變換:

傅里葉逆變換:

在 OpenCV 中實(shí)現(xiàn)傅里葉變換的函數(shù)是cv2.dft()cv2.idft()(傅里葉逆變化)

代碼詳解

輸入轉(zhuǎn)換

傅里葉變換支持的輸入格式是np.float32, 所以我們需要先把圖像轉(zhuǎn)換到要求的格式.

代碼實(shí)現(xiàn):

import numpy as np
import cv2

# 讀取圖片, 并轉(zhuǎn)換成灰度圖
img = cv2.imread("Mona_Lisa.jpg", cv2.IMREAD_GRAYSCALE)
print(img.dtype)  # unit8數(shù)據(jù)類型

# 轉(zhuǎn)換成np.float32
img_float32 = np.float32(img)
print(img_float32.dtype)  # float32數(shù)據(jù)類型

輸出結(jié)果:

uint8
float32

傅里葉變換

格式:

cv2.dft(src, dst=None, flags=None, nonzeroRows=None)

參數(shù):

  • src: 輸入圖像
  • dst: 輸出圖像, 默認(rèn)為 None
  • flags: 轉(zhuǎn)換標(biāo)志 (5 種)
  • nonezeroRows: 要處理的 dst 行數(shù), 默認(rèn)為 None

返回值:

  • 實(shí)部和虛部 (雙通道)
  • 實(shí)部: 代表所有的偶函數(shù) (余弦函數(shù)) 的部分
  • 虛部: 代表所有的奇函數(shù) (正弦函數(shù)) 的部分

代碼實(shí)現(xiàn):

# 傅里葉變換
dft = cv2.dft(img_float32, flags=cv2.DFT_COMPLEX_OUTPUT)

# 中心轉(zhuǎn)換, 將低頻挪到中心
dft_shift = np.fft.fftshift(dft)

獲取幅度譜

幅度譜 (Magnitude Spectrum), 即從構(gòu)成波形的頻率側(cè)面看過去, 每一個(gè)頻率分量都會(huì)在側(cè)面的投影, 如圖:

通過```cv2.magnitude``我們可以極端二維矢量的幅值.

格式:

cv2.magnitude(x, y, magnitude=None)

參數(shù):

  • x: 實(shí)部
  • y: 虛部

代碼實(shí)現(xiàn):

# 獲取幅度譜, 映射到灰度空間 [0, 255]
magnitude_spectrum = 20 * np.log(cv2.magnitude(dft_shift[:, :, 0], dft_shift[:, :, 1]))

# 幅度譜展示
combine = np.hstack((img, magnitude_spectrum.astype(np.uint8)))
cv2.imshow("combine", combine)
cv2.waitKey(0)
cv2.destroyAllWindows()

輸出結(jié)果:

傅里葉逆變換

格式:

cv2.idft(src, dst=None, flags=None, nonzeroRows=None)

參數(shù):

  • src: 輸入圖像
  • dst: 輸出圖像, 默認(rèn)為 None
  • flags: 轉(zhuǎn)換標(biāo)志 (5 種)
  • nonezeroRows: 要處理的 dst 行數(shù), 默認(rèn)為 None

返回值:

  • 實(shí)部和虛部 (雙通道)
  • 實(shí)部: 代表所有的偶函數(shù) (余弦函數(shù)) 的部分
  • 虛部: 代表所有的奇函數(shù) (正弦函數(shù)) 的部分

代碼實(shí)現(xiàn):

# 獲取中心位置
rows, cols = img.shape
crow, ccol = int(rows / 2), int(cols / 2)

# 低通濾波
mask = np.zeros((rows, cols, 2), np.uint8)
mask[crow - 30:crow + 30, ccol - 30:ccol + 30] = 1

# 傅里葉逆變換
fshidt = dft_shift * mask
f_ishift = np.fft.ifftshift(fshidt)
img_back = cv2.idft(f_ishift)

獲取低頻

import numpy as np
import cv2

# 讀取圖片, 并轉(zhuǎn)換成灰度圖
img = cv2.imread("Mona_Lisa.jpg", cv2.IMREAD_GRAYSCALE)
print(img.dtype)  # unit8數(shù)據(jù)類型

# 轉(zhuǎn)換成np.float32
img_float32 = np.float32(img)
print(img_float32.dtype)  # float32數(shù)據(jù)類型

# 傅里葉變換
dft = cv2.dft(img_float32, flags=cv2.DFT_COMPLEX_OUTPUT)

# 中心轉(zhuǎn)換, 將低頻挪到中心
dft_shift = np.fft.fftshift(dft)

# 獲取幅度譜
magnitude_spectrum = 20 * np.log(cv2.magnitude(dft_shift[:, :, 0], dft_shift[:, :, 1]))

# 幅度譜展示
combine = np.hstack((img, magnitude_spectrum.astype(np.uint8)))
cv2.imshow("combine", combine)
cv2.waitKey(0)
cv2.destroyAllWindows()

# 獲取中心位置
rows, cols = img.shape
crow, ccol = int(rows / 2), int(cols / 2)

# 低通濾波
mask = np.zeros((rows, cols, 2), np.uint8)
mask[crow - 30:crow + 30, ccol - 30:ccol + 30] = 1
fshidt = dft_shift * mask
f_ishift = np.fft.ifftshift(fshidt)

# 傅里葉逆變換, 獲取低頻圖像
img_back = cv2.idft(f_ishift)
img_back = cv2.magnitude(img_back[:, :, 0], img_back[:, :, 1])

# 結(jié)果展示
img_back = 255 * cv2.normalize(img_back, None, norm_type=cv2.NORM_MINMAX, dtype=cv2.CV_32F)  # 標(biāo)準(zhǔn)化
result = np.hstack((img, img_back.astype(np.uint8)))
cv2.imshow("result", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

輸出結(jié)果:

獲取高頻

import numpy as np
import cv2

# 讀取圖片, 并轉(zhuǎn)換成灰度圖
img = cv2.imread("Mona_Lisa.jpg", cv2.IMREAD_GRAYSCALE)
print(img.dtype)  # unit8數(shù)據(jù)類型

# 轉(zhuǎn)換成np.float32
img_float32 = np.float32(img)
print(img_float32.dtype)  # float32數(shù)據(jù)類型

# 傅里葉變換
dft = cv2.dft(img_float32, flags=cv2.DFT_COMPLEX_OUTPUT)

# 中心轉(zhuǎn)換, 將低頻挪到中心
dft_shift = np.fft.fftshift(dft)

# 獲取幅度譜
magnitude_spectrum = 20 * np.log(cv2.magnitude(dft_shift[:, :, 0], dft_shift[:, :, 1]))

# 幅度譜展示
combine = np.hstack((img, magnitude_spectrum.astype(np.uint8)))
cv2.imshow("combine", combine)
cv2.waitKey(0)
cv2.destroyAllWindows()

# 獲取中心位置
rows, cols = img.shape
crow, ccol = int(rows / 2), int(cols / 2)

# 高通濾波
mask = np.ones((rows, cols, 2), np.uint8)
mask[crow - 30:crow + 30, ccol - 30:ccol + 30] = 0
fshidt = dft_shift * mask
f_ishift = np.fft.ifftshift(fshidt)

# 傅里葉逆變換, 獲取高頻圖像
img_back = cv2.idft(f_ishift)
img_back = cv2.magnitude(img_back[:, :, 0], img_back[:, :, 1])

# 結(jié)果展示
img_back = 255 * cv2.normalize(img_back, None, norm_type=cv2.NORM_MINMAX, dtype=cv2.CV_32F)  # 標(biāo)準(zhǔn)化
result = np.hstack((img, img_back.astype(np.uint8)))
cv2.imshow("result", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

輸出結(jié)果:

到此這篇關(guān)于OpenCV半小時(shí)掌握基本操作之傅里葉變換的文章就介紹到這了,更多相關(guān)OpenCV傅里葉變換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • OpenCV半小時(shí)掌握基本操作之圖像裁剪融合
  • OpenCV半小時(shí)掌握基本操作之圖像處理
  • opencv-python基本圖像處理詳解
  • OpenCV圖像處理基本操作詳解
  • Opencv圖像處理之詳解掩膜mask
  • 基于python的opencv圖像處理實(shí)現(xiàn)對(duì)斑馬線的檢測(cè)示例
  • Python+OpenCV圖像處理——圖像二值化的實(shí)現(xiàn)
  • OpenCV半小時(shí)掌握基本操作之分水嶺算法
  • OpenCV半小時(shí)掌握基本操作之圖像輪廓
  • OpenCV半小時(shí)掌握基本操作之直方圖
  • OpenCV半小時(shí)掌握基本操作之模板匹配
  • OpenCV半小時(shí)掌握基本操作之圓圈檢測(cè)
  • OpenCV半小時(shí)掌握基本操作之對(duì)象測(cè)量
  • OpenCV半小時(shí)掌握基本操作之圖像基礎(chǔ)操作

標(biāo)簽:安慶 葫蘆島 呼倫貝爾 湘西 銀川 呼倫貝爾 烏魯木齊 三亞

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《OpenCV半小時(shí)掌握基本操作之傅里葉變換》,本文關(guān)鍵詞  OpenCV,半小時(shí),掌握,基本操作,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《OpenCV半小時(shí)掌握基本操作之傅里葉變換》相關(guān)的同類信息!
  • 本頁收集關(guān)于OpenCV半小時(shí)掌握基本操作之傅里葉變換的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    麻豆国产欧美日韩综合精品二区| 中文字幕一区在线观看| 4438x亚洲最大成人网| 亚洲国产精品精华液ab| 精品一区二区在线看| 欧美猛男gaygay网站| 亚洲欧美一区二区久久| 91色在线porny| 悠悠色在线精品| 成人高清在线视频| 亚洲欧美福利一区二区| jlzzjlzz国产精品久久| 国产精品入口麻豆原神| 成人午夜免费av| 亚洲精品一线二线三线无人区| 看片的网站亚洲| 久久精品人人做| 播五月开心婷婷综合| 亚洲图片欧美激情| 欧美日本一区二区| 国产一区二区美女| 中文字幕一区二区不卡| 色欧美日韩亚洲| 亚洲一区二区中文在线| 91精品福利在线一区二区三区| 亚洲电影一区二区| 丁香网亚洲国际| 一区二区三区在线看| 欧美精品乱码久久久久久| 麻豆视频一区二区| 精品日韩在线一区| 成人一区二区三区| 亚洲综合成人在线| 久久色视频免费观看| 91蜜桃网址入口| 免费成人小视频| 自拍偷拍亚洲激情| 欧美videossexotv100| 99久久精品费精品国产一区二区| 午夜电影网亚洲视频| 久久久久亚洲蜜桃| 欧美蜜桃一区二区三区| 成人av在线播放网址| 日韩va亚洲va欧美va久久| 久久久久国产精品厨房| 欧美性极品少妇| 国产69精品久久777的优势| 一区二区激情视频| 日本一区二区免费在线观看视频| 欧美在线你懂的| 国产91精品一区二区麻豆网站| 亚洲成人一区在线| 国产精品国产三级国产aⅴ原创| 欧美日韩一区精品| 91丨porny丨国产入口| 青青草成人在线观看| 亚洲精品第1页| 国产欧美精品一区| 久久婷婷国产综合国色天香| 欧美日韩一区二区在线观看| 色先锋aa成人| 99re6这里只有精品视频在线观看| 捆绑调教一区二区三区| 亚洲成人免费视| 亚洲综合网站在线观看| 亚洲色图色小说| 国产午夜精品美女毛片视频| 日韩亚洲国产中文字幕欧美| 日韩一级完整毛片| 国产亚洲精品bt天堂精选| 欧美激情自拍偷拍| 亚洲最大成人综合| 免费高清在线一区| 国产成人精品一区二| 在线精品视频免费观看| 7777女厕盗摄久久久| 久久久噜噜噜久噜久久综合| 亚洲手机成人高清视频| 蜜桃视频在线观看一区| 成人一区在线看| 91精品国产免费| 国产精品视频看| 日韩中文字幕一区二区三区| 精品系列免费在线观看| 91精品1区2区| 国产亚洲成av人在线观看导航| 一区二区在线看| 国产精品1区2区3区在线观看| 色欧美88888久久久久久影院| 日韩三级精品电影久久久| 国产精品电影院| 免费成人av在线播放| 色综合久久综合中文综合网| 日韩欧美亚洲一区二区| 亚洲资源中文字幕| 国产精品自拍毛片| 欧美日韩一级片网站| 国产精品萝li| 激情六月婷婷综合| 欧美图区在线视频| 中文字幕一区二区三中文字幕| 人人爽香蕉精品| 91九色最新地址| 中文字幕综合网| 国产成人啪午夜精品网站男同| 欧美丰满一区二区免费视频| 中文字幕一区二区日韩精品绯色| 国产自产v一区二区三区c| 欧美浪妇xxxx高跟鞋交| 亚洲黄一区二区三区| 北岛玲一区二区三区四区| 久久久久久影视| 国产麻豆成人精品| 日韩久久久精品| 婷婷综合另类小说色区| 色偷偷88欧美精品久久久| 国产精品私人影院| 国产一区二区在线看| 精品国精品国产尤物美女| 亚洲大尺度视频在线观看| 91精品福利在线| 亚洲综合男人的天堂| 成人国产视频在线观看| 国产精品青草综合久久久久99| 国产在线一区二区| 精品88久久久久88久久久| 黄色精品一二区| 欧美大片一区二区三区| 免费视频最近日韩| 久久午夜免费电影| 成人美女在线视频| 国产女人水真多18毛片18精品视频| 久久97超碰色| 国产三级一区二区三区| 成人精品免费视频| 一区二区中文视频| 欧美亚洲日本一区| 亚洲成人动漫精品| 欧美一区欧美二区| 国内一区二区在线| 国产日产欧美一区二区视频| 成人性生交大片免费| 亚洲欧美日韩国产另类专区| 色综合天天综合网天天狠天天| 亚洲激情在线播放| 欧美一区二区视频在线观看2020 | 在线欧美日韩国产| 亚洲制服丝袜av| 欧美巨大另类极品videosbest| 日本欧美肥老太交大片| 久久九九国产精品| caoporen国产精品视频| 亚洲黄一区二区三区| 欧美挠脚心视频网站| 国产乱理伦片在线观看夜一区| 国产日韩视频一区二区三区| 色偷偷久久一区二区三区| 麻豆久久一区二区| 国产三级欧美三级| 欧洲精品视频在线观看| 久99久精品视频免费观看| 中文字幕亚洲一区二区av在线 | 亚洲sss视频在线视频| 欧美日韩国产乱码电影| 国产乱子伦视频一区二区三区| 最近中文字幕一区二区三区| 欧美日韩国产小视频| 国产综合色视频| 香蕉久久夜色精品国产使用方法| 26uuu精品一区二区| 在线一区二区视频| 国产成人在线看| 日韩国产在线观看一区| 国产精品入口麻豆九色| 26uuu久久天堂性欧美| 欧美中文字幕一区二区三区| 国产福利一区二区三区| 日韩和欧美一区二区| 亚洲免费观看视频| 国产日韩欧美高清| 欧美成人vps| 欧美性淫爽ww久久久久无| 高清不卡一区二区| 日韩精品一二三| 一区二区三区不卡视频| 国产香蕉久久精品综合网| 欧美一区二区三区四区高清| 色哟哟国产精品免费观看| 懂色av中文一区二区三区 | 一本大道久久精品懂色aⅴ| 国产一区二区三区四区五区美女 | 欧美网站大全在线观看| 99久久婷婷国产综合精品| 久久99精品久久久久久国产越南| 亚洲成人先锋电影| 亚洲一区二区三区四区五区中文| 国产精品系列在线| 国产精品亲子伦对白| 久久久国际精品| 久久九九影视网|