日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【CV】一文讲懂图像处理中的低通、高通、带阻和带通滤波器

發布時間:2025/3/12 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【CV】一文讲懂图像处理中的低通、高通、带阻和带通滤波器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

空間域和頻域濾波器通常分為四種類型的濾波器——低通、高通、帶阻和帶通濾波器。在本文中,我們為每一種濾波器提供了注釋、代碼示例和圖像輸出。

濾波器類型

  • 低通濾波器:只允許通過低頻細節,衰減高頻細節。例如:平滑濾波器。

  • 高通濾波器:只允許通過高頻細節,衰減低頻細節。例如:銳化蒙版濾波器。

  • 帶阻濾波器:衰減一定頻率范圍內的信號。允許低于某個閾值或高于另一個閾值的頻率通過。

  • 帶通濾波器:只允許特定頻帶內的信號通過,允許高于低閾值和低于高個閾值的頻率通過。

我們可以將不同濾波器用如下的公式來表示

其中δ(x, y)是單位脈沖核

使用Zone板來展示不同濾波器的效果

Zone板是用于測試過濾器特性的一種測試板,有很多中版本。本文我們使用如下方程生成我們的要用的Zone板。

其中 x,y 是遞增步長0.0275,取值范圍在[-8.2, 8.2]的一組數,最終形成一個 597x597 的圖像,樣子如下所示

具體的代碼如下:

def zone(x, y):return 0.5 * (1 + math.cos(x * x + y * y))SIZE = 597 image = np.zeros((SIZE, SIZE))start = -8.2 end = 8.2 step = 0.0275def dist_center(y, x):global SIZEcenter = SIZE / 2return math.sqrt( (x - center)**2 + (y - center)**2)for y in range(0, SIZE):for x in range(0, SIZE):if dist_center(y, x) > 300:continuey_val = start + y * stepx_val = start + x * stepimage[y, x] = zone(x_val, y_val)

接下來我們將通過代碼展示如何使用各種濾波器,以及展示每個濾波器對Zone板的處理結果。

低通濾波器

kernel_size = 15lowpass_kernel_gaussian = gkern(kernel_size) lowpass_kernel_gaussian = lowpass_kernel_gaussian / lowpass_kernel_gaussian.sum()lowpass_kernel_box = np.ones((kernel_size, kernel_size)) lowpass_kernel_box = lowpass_kernel_box / (kernel_size * kernel_size)lowpass_image_gaussian = cv2.filter2D(image, -1, lowpass_kernel_gaussian) lowpass_image_box = cv2.filter2D(image, -1, lowpass_kernel_box)


高通濾波器

在空間域中,可以通過從圖像本身中減去低通濾波圖像來獲得高通濾波圖像(如非銳化掩模)

highpass_image_gaussian = image - lowpass_image_gaussian highpass_image_gaussian = np.absolute(highpass_image_gaussian)highpass_image_box = image - lowpass_image_box highpass_image_box = np.absolute(highpass_image_box)

帶阻濾波器

在空間域中,可以通過將低通濾波與高通濾波圖像(在不同閾值下)相加來獲得帶阻濾波圖像。

bandreject_image = lowpass_image_gaussian + highpass_image_box

帶通濾波器

在空間域中,可以通過從圖像本身中減去帶阻濾波圖像來獲得帶通濾波圖像。

bandpass_image = image - bandreject_image bandpass_image = np.absolute(bandpass_image)

最后,各位小伙伴可以比較一下不同濾波器對同一圖像的處理結果哦。仔細理解一下低通、高通、帶阻、帶通的含義。

往期精彩回顧適合初學者入門人工智能的路線及資料下載(圖文+視頻)機器學習入門系列下載中國大學慕課《機器學習》(黃海廣主講)機器學習及深度學習筆記等資料打印《統計學習方法》的代碼復現專輯 AI基礎下載機器學習交流qq群955171419,加入微信群請掃碼:

總結

以上是生活随笔為你收集整理的【CV】一文讲懂图像处理中的低通、高通、带阻和带通滤波器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。