python - 克服python中的opencv CV_IO_MAX_IMAGE_PIXELS限制
问题描述
我正在尝试使用 opencv 打开一个 4864 x 382565 的图像大小,它大于 CV_IO_MAX_IMAGE_PIXELS 限制,即 2^30 像素。
img = cv2.cvtColor(cv2.imread(路径),cv2.COLOR_BGR2GRAY)
您可以set CV_IO_MAX_IMAGE_PIXELS=18500000000
在运行 python 脚本之前从 shell 调用以绕过此检查,但我想知道是否有更好的解决方案?
谢谢
解决方案
我想我找到了解决方案
os.environ["OPENCV_IO_MAX_IMAGE_PIXELS"] = pow(2,40).__str__()
import cv2 # import after setting OPENCV_IO_MAX_IMAGE_PIXELS
这会将限制更改为 2^40
只要记住在设置环境变量之后导入opencv ,否则它不会工作
推荐阅读
- java - 如何从泛型类访问类的方法?
- python - 使用firebase ID将json文件导入firebase
- javascript - 使用 JavaScript 显示的未定义元素
- android - 在 Google Android Mobile Vision API 中启用 Flash
- arrays - 在 Mongo 后端使用 findOne() 检索后,在对象数组上运行 forEach()
- ios - Safari 网络检查器无法在 iOS12 和 mac OS Mojave 中使用 cordova
- c# - web api - 从存储库层返回复杂的域对象
- c# - IInputStream.ReadAsync() 和 DataReader.LoadAsync() 仅适用于固定长度读取 (UWP C#)
- mysql - MYSQL 存储过程 - 在 MYSQL 中编写此存储过程的正确方法是什么 - 我收到 1064 错误
- laravel - Laravel 无法访问子域中间件中的用户