灰度分割蒙版的最佳插值
Best Interpolation for grayscale segmentation mask
假设我需要调整只包含两种颜色的灰度分割掩码:255 和 0。在我的例子中,调整大小本身可以用于缩小和放大掩码。
例如,cv2.INRER_AREA
插值有时可以将白色区域附近的254,253
颜色的像素着色,并在黑色区域附近放置2,3,4...
颜色。
应该使用哪种插值来获得结果蒙版,但保留我需要的颜色?
或者最好用 1 标记所有白色像素,即使用 binary/bolean 掩码?
如果您只有两个值,请注意使用 bool
数据类型,因为并非所有图像处理操作都受支持。
既简单又快速的方法是使用中值过滤器过滤图像以填补空白。 (这确实有点懒,但过去对我产生了很好的效果)。
如果你想在你的 uint8
范围内进行插值,也许之后的阈值可以解决你的问题。
编辑:
这是中值滤波器产生的结果:
我肯定会建议 cv2.INTER_BITS。
你可以尝试用新的mask(upsampled->downsampled to original shape)计算DICE系数,看看你的插值方法有多好。
假设我需要调整只包含两种颜色的灰度分割掩码:255 和 0。在我的例子中,调整大小本身可以用于缩小和放大掩码。
例如,cv2.INRER_AREA
插值有时可以将白色区域附近的254,253
颜色的像素着色,并在黑色区域附近放置2,3,4...
颜色。
应该使用哪种插值来获得结果蒙版,但保留我需要的颜色?
或者最好用 1 标记所有白色像素,即使用 binary/bolean 掩码?
如果您只有两个值,请注意使用 bool
数据类型,因为并非所有图像处理操作都受支持。
既简单又快速的方法是使用中值过滤器过滤图像以填补空白。 (这确实有点懒,但过去对我产生了很好的效果)。
如果你想在你的 uint8
范围内进行插值,也许之后的阈值可以解决你的问题。
编辑: 这是中值滤波器产生的结果:
我肯定会建议 cv2.INTER_BITS。
你可以尝试用新的mask(upsampled->downsampled to original shape)计算DICE系数,看看你的插值方法有多好。