如何仅遮盖边界并忽略图像的内部部分(甜甜圈形状遮罩)

发布于 2025-01-12 04:55:04 字数 651 浏览 0 评论 0原文

我正在研究图像处理,其中我得到了图像的轮廓,但问题是当我继续可视化时,它也掩盖了内部区域......想到甜甜圈我只想要外部边界有一个掩模而不是内部部分...我在这里使用了measure.find_contours()函数。 有人可以帮我解决这个问题吗?

原始的png看起来像这样: im1 我想要蒙版的所需区域(只是边框宽度,没有其他内容) im2

contours = measure.find_contours(img.sum(-1), 0.5)
print(contours, 'contours')

fig, ax = plt.subplots()
ax.imshow(img, cmap=plt.cm.gray)

for contour in contours:
    ax.plot(contour[:, 1], contour[:, 0], linewidth=2)

ax.axis('image')
ax.set_xticks([])
ax.set_yticks([])
plt.show()

I'm working on image processing wherein I got the contours of my image but the problem is when I go on visualizing it masks the inside area as well...thinking of a donut I only want the outer boundaries to have a mask and not the inner part...I have made use of measure.find_contours() function here.
Can someone plz help me with this one?

The original png looks like this:
im1
The required area I want my mask on(just the border width and nothing else)
im2

contours = measure.find_contours(img.sum(-1), 0.5)
print(contours, 'contours')

fig, ax = plt.subplots()
ax.imshow(img, cmap=plt.cm.gray)

for contour in contours:
    ax.plot(contour[:, 1], contour[:, 0], linewidth=2)

ax.axis('image')
ax.set_xticks([])
ax.set_yticks([])
plt.show()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文