开始使用免费开始使用

检测边缘(1)

滤波器也可以用作"检测器"。如果图像中的某一部分符合加权模式,返回值会非常高(或非常低)。

对于边缘检测,这种模式是沿某个平面上的强度变化。一个用于检测水平边缘的滤波器可能如下所示:

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

在本练习中,请创建一个用于检测"垂直"边缘的检测器,并查看它在手部 X 光片(im)上的表现。

本练习是课程的一部分

Python 中的生物医学图像分析

查看课程

练习说明

  • 创建一个 3x3 的滤波权重数组,用于检测从左到右的强度变化。仅使用数值 10-1
  • im 与该边缘检测器进行卷积。
  • 使用 seismic 颜色映射绘制水平边缘。设置 vmin=-150vmax=150 来调整颜色映射的范围。
  • 添加 colorbar 并渲染结果。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# 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()
编辑并运行代码