首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将图像从float32转换为uint8时屏蔽对象的显示

将图像从float32转换为uint8时屏蔽对象的显示
EN

Stack Overflow用户
提问于 2020-09-21 10:19:32
回答 1查看 152关注 0票数 1

Bellow是下面使用直方图反投影显示检测对象的掩码。

图像具有float32类型,该类型由算法的输出产生。我想用cv2.findContours函数来检测轮廓。

如您所知,此函数接受某种图像类型,即uint8,否则将引发ans错误。因此,我使用float32将图像类型转换为uint8。

当显示新转换的二进制图像(新uint8)时,它将显示一个黑色图像,这意味着检测到的对象不再是可见的(零掩码)

所以我的问题是:有人知道为什么会这样,我做错了什么?

事先谢谢哈立德

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-21 10:30:35

在转换为int之前,您不能缩放图像像素的值,这是您面临错误的原因。

这样做:

代码语言:javascript
复制
imageFloat *= 255
imageFloat.astype(np.uint8)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63990338

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档