我需要将图像分割成区域。我正在使用 pil。我发现没有模块可以在 pil 中分割图像。我需要这个分段区域作为列表或字典。
实际上,我正在尝试以内容感知方式比较图像的相似性。为此,我需要分割图像。我尝试了 segwin 工具,但它正在绘制另一个图像(这不是必需的,也很耗时)
提前比
我需要将图像分割成区域。我正在使用 pil。我发现没有模块可以在 pil 中分割图像。我需要这个分段区域作为列表或字典。
实际上,我正在尝试以内容感知方式比较图像的相似性。为此,我需要分割图像。我尝试了 segwin 工具,但它正在绘制另一个图像(这不是必需的,也很耗时)
提前比
将图像分割成区域的最简单方法是创建另一个名为 labelmap 的图像。“区域 1”由标签图中的所有 1 值像素表示,依此类推。如果您需要“区域 3”的像素,您只需使用等于 3 的温度对标签图进行二值化,然后将结果与原始图像相乘。
像奥利弗一样,我建议WrapItk。
对于这个任务,我更喜欢 numpy 和 scipy。在图像处理方面,这两个拥有您所需要的一切。对于数组数学,我推荐 numexpr。看看http://docs.scipy.org/doc/scipy/reference/ndimage.html
看看PIL Handbook,你可以使用“crop”功能来获取图像的一个子区域。
您可能想尝试使用C++ 中的分段工具ITK的python 绑定。