開始使用免費開始

邊緣偵測(1)

濾波器也能用作「偵測器」。如果影像中的某一部分符合加權樣式,回傳值就會非常高(或非常低)。

在邊緣偵測的情況下,該樣式是沿著某一平面強度改變。用來偵測水平邊緣的濾波器可能長這樣:

weights = [[+1, +1, +1],
           [ 0,  0,  0],
           [-1, -1, -1]]

在本練習中,請建立一個「垂直」邊緣偵測器,並看看它在手部 X 光影像(im)上的表現如何。

本練習屬於課程

Python 的生醫影像分析

檢視課程

練習說明

  • 建立一個 3x3 的濾波權重陣列,用來偵測從左到右的強度變化。僅使用數值 10-1
  • 以該邊緣偵測器對 im 進行卷積。
  • 使用 seismic 色彩對應繪製水平邊緣。將色彩對應範圍設定為 vmin=-150vmax=150
  • 加上色彩條並呈現結果。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Set weights to detect vertical edges
weights = [[____], [____], [____]]

# Convolve "im" with filter weights
edges = ____

# Draw the image in color
plt.imshow(____, ____, vmin=-150, vmax=150)
____
format_and_render_plot()
編輯並執行程式碼