Python opencv實現(xiàn)圖片的理想低通濾波
2023-04-25 21:24 作者:音視頻開發(fā)進階 | 我要投稿
import CV2 import numpy as np
img = CV2.imread('input.jpg') # 讀入圖片 h, w = img.shape[:2] # 獲取圖片高度和寬度
構建理想低通濾波器
d0 = 50 # 我們設置半徑為50 filt = np.zeros((h,w),np.float32) for i in range(h): for j in range(w): dist = np.sqrt((i-h//2)2 + (j-w//2)2) # 計算到中心點的距離 if dist <= d0: filt[i,j] = 1.0
轉換為頻域圖像
freq = np.fft.fft2(img)
對頻域圖像進行濾波
filtered_freq = freq * filt
將頻域圖像還原為時域圖像
filteredimg = np.fft.ifft2(filteredfreq) filteredimg = np.abs(filteredimg)
顯示結果
CV2.imshow('Input', img) CV2.imshow('Result', filtered_img.astype(np.uint8)) CV2.waitKey(0) CV2.destroyAllWindows()
相關學習資料推薦,點擊下方鏈接免費報名,先碼住不迷路~】
音視頻免費學習地址:FFmpeg/WebRTC/RTMP/NDK/Android音視頻流媒體高級開發(fā)
【免費分享】音視頻學習資料包、大廠面試題、技術視頻和學習路線圖,資料包括(C/C++,Linux,F(xiàn)Fmpeg webRTC rtmp hls rtsp ffplay srs 等等)有需要的可以點擊788280672加群免費領取~

標簽: