【发布时间】:2020-07-20 19:43:49
【问题描述】:
我正在尝试提取具有“未知”形状的蒙版。我会更好地解释我自己:
我的原始数据由一个带有 NaN 的矩阵组成,它或多或少围绕着真实数据。我使用了sobel算子来检测边缘:
#data is a matrix with Nan
mask = np.isnan(data)
data[mask] = 0
data[~mask] = 1
out = sobel(data) #sobel is a function that returns the gradient
图中报告了sobel运算的输出。由于原始数据在真实数据中也有 NaN,所以 sobel 算子检测内部边缘。 我想尝试一种仅检测外边缘的方法(看起来像菱形的图形)。考虑到不仅这种形状可以变化(可以是正方形或矩形),而且位置也可以变化(即可以偏心,或者相对于图像尺寸非常小)。我将获得的结果应该是所有外部像素设置为 True(或 False),而所有内部像素设置为 False(或 True)的蒙版。
谢谢!
【问题讨论】:
标签: python-3.x image-processing masking edge-detection