第3章 Python 數字圖像處理(DIP) - 灰度變換與空間濾波13 - 平滑低通濾波器 -盒式濾波器核

這里寫目錄標題

  • 平滑(低通)空間濾波器
      • 盒式濾波器核

平滑(低通)空間濾波器

平滑(也稱平均)空間濾波器用于降低灰度的急劇過渡

  • 在圖像重取樣之前平滑圖像以減少混淆
  • 用于減少圖像中無關細節
  • 平滑因灰度級數量不足導致的圖像中的偽輪廓
  • 平滑核與一幅圖像的卷積會模糊圖像

盒式濾波器核

盒式核是最簡單的可分離低通濾波器,其系數的值相同(通常為1)
m×nm\times{n}m×n的盒式濾波器為1的一個m×nm\times{n}m×n的陣列,其前面有一個歸一化的常數,通過是1除以系數值之和(通過是1/mn1/mn1/mn

def box_filter(image, kernel):""":param image: input image:param kernel: input kernel:return: image after convolution"""img_h = image.shape[0]img_w = image.shape[1]m = kernel.shape[0]n = kernel.shape[1]# paddingpadding_h = int((m -1)/2)padding_w = int((n -1)/2)image_pad = np.zeros((image.shape[0]+padding_h*2, image.shape[1]+padding_w*2), np.uint8)image_pad[padding_h:padding_h+img_h, padding_w:padding_w+img_w] = imageimage_convol = image.copy()for i in range(padding_h, img_h + padding_h):for j in range(padding_w, img_w + padding_w):temp = np.sum(image_pad[i-padding_h:i+padding_h+1, j-padding_w:j+padding_w+1] * kernel)image_convol[i - padding_h][j - padding_w] = temp # 1/(m * n) * tempreturn image_convol
# 盒式濾波器核
img = cv2.imread('DIP_Figures/DIP3E_Original_Images_CH03/Fig0333(a)(test_pattern_blurring_orig).tif', 0)kernel_size = [3, 11, 21]fig = plt.figure(figsize=(10, 10))
for i in range(len(kernel_size) + 1):ax = fig.add_subplot(2, 2, i+1)if i == 0:ax.imshow(img, cmap='gray', vmin=0, vmax=255), ax.set_xticks([]), ax.set_yticks([])ax.set_title('Original')else:kernel = np.ones([kernel_size[i-1], kernel_size[i-1]])kernel = kernel / kernel.sizeimg_dst = box_filter(img, kernel)ax.imshow(img_dst, cmap='gray', vmin=0, vmax=255), ax.set_xticks([]), ax.set_yticks([])ax.set_title(f'kernel size {kernel_size[i-1]}')
plt.tight_layout()
plt.show()

在這里插入圖片描述

# 盒式濾波器核 可分離核的效果
img = cv2.imread('DIP_Figures/DIP3E_Original_Images_CH03/Fig0333(a)(test_pattern_blurring_orig).tif', 0)kernel_size = [3, 11, 21]fig = plt.figure(figsize=(10, 10))
for i in range(len(kernel_size) + 1):ax = fig.add_subplot(2, 2, i+1)if i == 0:ax.imshow(img, cmap='gray', vmin=0, vmax=255), ax.set_xticks([]), ax.set_yticks([])ax.set_title('Original')else:kernel = np.ones([kernel_size[i-1], kernel_size[i-1]])kernel = kernel / kernel.sizeimg_dst = separate_kernel_conv2D(img, kernel)img_dst = normalize(img_dst) * 255ax.imshow(img_dst, cmap='gray', vmin=0, vmax=255), ax.set_xticks([]), ax.set_yticks([])ax.set_title(f'kernel size {kernel_size[i-1]}')
plt.tight_layout()
plt.show()

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/260781.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/260781.shtml
英文地址,請注明出處:http://en.pswp.cn/news/260781.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python中str用法_python數據類型之str用法

1、首字母大寫 語法:S.capitalize() ->str title "today is a good day"title_catitle.capitalize() print(title_ca) 結果:today is a good day 2、大寫轉小寫 1 語法:S.casefold() ->str2 3 title "TODAY is a GOOD …

WPF 窗體設置

WPF 當窗體最大化時控件位置的大小調整&#xff1a; View Code 1 <Window x:Class"WpfApplication1.MainWindow"2 xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"3 xmlns:x"http://schemas.microsoft.com/wi…

Git實踐

Git是什么自不必說。Git和gitlab安裝和實踐在后邊的倆篇中會寫。本篇僅重點寫Git自動部署。Git同樣有Hooks,可以用于各種需求。可以控制提交commit名稱&#xff0c;可以控制代碼規范&#xff0c;也當然包含以下要介紹的自動部署&#xff0c;也不僅包含這些。Git自動部署簡單的思…

第3章 Python 數字圖像處理(DIP) - 灰度變換與空間濾波14 - 平滑低通濾波器 -高斯濾波器核的生成方法

目錄平滑&#xff08;低通&#xff09;空間濾波器低通高斯濾波器核統計排序&#xff08;非線性&#xff09;濾波器平滑&#xff08;低通&#xff09;空間濾波器 平滑&#xff08;也稱平均&#xff09;空間濾波器用于降低灰度的急劇過渡 在圖像重取樣之前平滑圖像以減少混淆用…

易經0

--- 陽爻 - - 陰爻 從下往上 畫爻 (yao) 三畫卦 --> 2^38 (八卦) 那天有空用程序 解析一下 六畫卦 --> 2^664(卦) 卦形記憶歌&#xff1a;宋代朱熹的《周易本義》寫了《八卦取象歌》幫人記卦形&#xff1a; 乾三連&#xff0c;坤六斷&#xff1b;震仰盂&#xff0c;艮覆碗…

python3.7怎么安裝turtle_python怎么安裝turtle

turtle庫是Python語言中一個很流行的繪制圖像的函數庫&#xff0c;想象一個小烏龜&#xff0c;在一個橫軸為x、縱軸為y的坐標系原點&#xff0c;(0,0)位置開始&#xff0c;它根據一組函數指令的控制&#xff0c;在這個平面坐標系中移動&#xff0c;從而在它爬行的路徑上繪制了圖…

強制html元素不隨窗口縮小而換行

<style> div{ white-space:nowrap; } </style> 強制div內的元素不隨窗口縮小而換行 本文出自 “點滴積累” 博客&#xff0c;請務必保留此出處http://tianxingzhe.blog.51cto.com/3390077/1679366

靜態變量、方法

static 變量---所有對象共享一個變量&#xff08;全局變量區&#xff09;&#xff0c;無需構造---概念上和.net相同所有對象共享一個變量的實質&#xff1a;聲明時&#xff1a;堆區存放一個地址&#xff0c;地址指向全局變量區。然后當類對象聲明時&#xff0c;只是在堆區中為自…

python語言是機器語言_Python解釋器:源代碼--字節碼--機器語言

"一個用編譯性語言比如C或C寫的程序可以從源文件&#xff08;即C或C語言&#xff09;轉換到一個你的計算機使用的語言&#xff08;二進制代碼&#xff0c;即0和1&#xff09;。這個過程通過編譯器和不同的標記、選項完成。當你運行你的程序的時候&#xff0c;連接/轉載器軟…

第3章 Python 數字圖像處理(DIP) - 灰度變換與空間濾波15 - 銳化高通濾波器 -拉普拉斯核(二階導數)

目錄銳化&#xff08;高通&#xff09;空間濾波器基礎 - 一階導數和二階導數的銳化濾波器二階導數銳化圖像--拉普拉斯銳化&#xff08;高通&#xff09;空間濾波器 平滑通過稱為低通濾波類似于積分運算銳化通常稱為高通濾波微分運算高過&#xff08;負責細節的&#xff09;高頻…

Debian on VirtualBox下共享win7文件夾設置

借用&#xff1a;http://www.dbasoul.com/2010/695.html 1. 安裝增強功能包(Guest Additions) 參考文檔&#xff1a;Debian下安裝VirtualBox增強功能2. 設置共享文件夾 重啟完成后點擊”設備(Devices)” -> 共享文件夾(Shared Folders)菜單&#xff0c;添加一個共享文件夾&a…

第四周作業

1、復制/etc/skel目錄為/home/tuser1&#xff0c;要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。cp -r /etc/skel/ /home/tuser1/chmod -R go--- /home/tuser1/2、編輯/etc/group文件&#xff0c;添加組hadoop。vim /etc/group G, o, hadoop:x:501, esc, …

C# 導出 Excel 數字列出現‘0’的解決辦法

在DataGird的中某一列全是數字并且長度大于15的字符&#xff0c;在導出excel時數字列第15-18位全部為0。解決辦法&#xff1a;在需導出數字列前加入英文字符狀態的單引號&#xff08;‘ &#xff09;&#xff0c;如&#xff1a;<asp:TemplateField HeaderText"身份證號…

在python是什么意思_python 的 表示什么

python代碼里經常會需要用到各種各樣的運算符&#xff0c;這里我將要和大家介紹的是Python中的&&#xff0c;想知道他是什么意思嗎&#xff1f;那就和小編一起來了解一下吧。&是位運算符-與&#xff0c;類似的還有|&#xff08;或&#xff09;&#xff0c;!(非)。 整數…

Ubuntu 更改ROOT密碼的方法

真蛋疼啊&#xff0c;剛安裝了Ubuntu 需要安裝程序&#xff0c;提示輸入root密碼&#xff0c;我才想起來Ubuntu的root密碼是什么&#xff0c;我貌似沒設置啊。 上網搜索了下相關信息&#xff0c;才知道原來root默認是沒有密碼的。 需要使用以下命令 sudo passwd root 然后會要求…

DevExpress控件GridControl中的布局詳解 【轉】

DevExpress控件GridControl中的布局詳解 【轉】 2012-10-24 13:27:28| 分類&#xff1a; devexpress | 標簽&#xff1a;devexpress |舉報|字號 訂閱 http://www.cnblogs.com/martintuan/archive/2011/03/05/1971472.html 進行DevExpress控件GridControl的使用時&#xff…

第3章 Python 數字圖像處理(DIP) - 灰度變換與空間濾波16 - 銳化高通濾波器 - 鈍化掩蔽和高提升濾波

目錄銳化&#xff08;高通&#xff09;空間濾波器鈍化掩蔽和高提升濾波銳化&#xff08;高通&#xff09;空間濾波器 平滑通過稱為低通濾波類似于積分運算銳化通常稱為高通濾波微分運算高過&#xff08;負責細節的&#xff09;高頻&#xff0c;衰減或抑制低頻 鈍化掩蔽和高提…

python畫圓并填充圖形顏色_如何使用python設計語言graphics繪制圓形圖形

在python設計語言中&#xff0c;可以利用第三方包graphics繪制不同的圖形&#xff0c;有圓形、直線、矩形等。如果想要繪制一個圓形&#xff0c;可以設置圓形的半徑和坐標位置。下面利用一個實例說明繪制圓形&#xff0c;操作如下&#xff1a;工具/原料 python 截圖工具 方法/步…

設計模式學習-工廠方法模式

在上文(設計模式學習-簡單工廠模式)的模擬場景中&#xff0c;我們用簡單工廠模式實現了VISA和MASTERARD卡的刷卡處理&#xff0c;系統成功上線并運行良好&#xff0c;突然有一天老大跑來說&#xff0c;我們的系統需要升級&#xff0c;提供對一般銀聯卡的支持。怎么辦&#xff1…