【发布时间】:2020-05-17 16:00:13
【问题描述】:
我有一组类似的图像,如下图。我想保留顶部红色“不规则”矩形内的图像部分(绿色箭头代表我要保留的空间;我想裁剪掉外面的任何东西。是否有 python opencv 代码可以做到这一点我?我一直在尝试使用 opencv 解决阈值问题,但它不适合我。
原图:
非常感谢
【问题讨论】:
-
你不是说在第一条红色摆动线之上吗?您能否提供更多关于感兴趣区域在您的其他图像中的位置的详细信息。如果它总是在顶部,你可以用白色填充它(并使其余部分变成黑色),做一些形态,然后用它作为一个带有 numpy 的蒙版来提取那个区域。
-
感谢您的回复。我可以看出我的话可能没有意义。我想“保持”顶部红色边界内的区域..这样就包括我放入所需输出的黑色区域。希望这是有道理的。
-
您可以填充图像的第一部分,然后提取 blob。此外,如果您的 blob 始终具有图像的最大区域,您还可以尝试对每个区域进行泛洪填充并寻找最大的 blob。
-
您没有回答是否要提取所有图像中的最顶部区域。
-
是的...所以基本上我只想保留最上面的红色边框下方、左侧红色边框右侧、右侧红色边框左侧和第一个上方的区域弯曲的红线。我想去掉下面的区域,包括中间弯曲的红线。