python - OpenCV 按位非运算符返回黑色像素的 nan
问题描述
我正在尝试将 OpenCVnot
位运算符应用于二进制图像。我生成了一个二维黑色图像,如下所示
black = np.zeros((400, 400))
:但是当应用cv2.bitwise_not
到它时,所有的零都被替换为nan
. 有人可以解释这种行为并告诉我如何解决吗?
我还使用以下代码生成了一个白色图像,但bitwise_not
将像素替换为值 -4:
white = np.zeros((400, 400))
white[:, :] = 255
虽然我期待它用 0 代替 255。
谢谢您的帮助。
解决方案
正如 Matteo 在评论中指出的那样,问题来自生成图像时使用的数据类型。您必须指定dtype=np.uint8
.
推荐阅读
- python - 从全局字典中提取数据帧(长脚本)
- sql - PostgreSQL:如何创建一个前缀序列作为唯一标识符?
- three.js - 将网格和对象边界框与辅助轴对齐
- python - 绘图时如何停止matplotlib中的y标签重叠?
- sdk - 如何使用空手道框架自动测试 razorpay sdk 调用?
- wordpress - 跨渠道的不同 Facebook 像素 - 附属公司
- amazon-web-services - 管理服务器(来自公共云)访问位于私有网络中的服务器提供的 REST API 的最佳方式是什么?
- python - 禁止导入笔记本的任何输出
- laravel-7 - 多列的验证规则
- javascript - 单击时 scoll 转到顶部