binary_fill_holes()函数填补空洞

攻城狮要飞翔 2019-06-20 10:30:05
在进行图像分割的过程中产生好多不必要的空洞点,想把这些空洞点填充成底色,为此使用binary_fill_holes()函数进行操作,但是经过填充之后整张图片都变成了底色,请教大佬这是什么问题,下面的我的代码
img = cv2.imread(os.path.join(path, img))
img = ndimage.binary_fill_holes(np.asarray(img)).astype(int)
cv2.imwrite('/home/fill/' + '%s.png' % dn, img)
原始图片是灰度图

得到的结果图是:

我理想的结果是把其中的空洞填充好就行,请教大佬该如何解决?
...全文
783 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hehehe47 2020-02-26
  • 打赏
  • 举报
回复
遇到了同样的问题,主要是输出时int和float对rgb的表示范围问题,可以参考下面的帖子 https://stackoverflow.com/questions/42044259/getting-black-plots-with-plt-imshow-after-multiplying-image-array-by-a-scalar/42045225#42045225 不过我得case范围对了效果也不太好,原因还不清楚,解决方法是将灰度图转成TRUE/FALSE 的2d的ndarray,填充然后输出

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧