python - 消除 OpenCV 图像大小限制

标签 python opencv

我正在加载一个非常大的图像(60,000 x 80,000 像素),并且超出了我可以加载的最大像素:

cv2.error: OpenCV(4.2.0) /Users/travis/build/skvark/opencv-python/opencv/modules/imgcodecs/src/loadsave.cpp:75: 
    error: (-215:Assertion failed) pixels <= CV_IO_MAX_IMAGE_PIXELS in function 'validateInputImageSize'

据我所知,这是指对 line 65 施加的限制

理想情况下,我会更改它以处理至少 5 GB 像素的图像

#define CV_IO_MAX_IMAGE_PIXELS (1<<33)

我已经看到了一些解决方法( OpenCV image size limit ),但这些似乎并没有解决任意定义的问题(我正在使用 700GB 内存的高性能服务器,因此计算不是问题)。

我的问题是我不知道该文件在哪里。该错误将我指向这个“travis”目录,该目录对我来说本地不存在,并且在我的本地环境中,c++ 文件不可用。

知道在哪里可以找到 C++ 库吗?

最佳答案

您必须修改 openCV 源文件,然后自行编译。

编辑:您还可以修改环境变量

export CV_IO_MAX_IMAGE_PIXELS=1099511627776

关于python - 消除 OpenCV 图像大小限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60963452/

相关文章:

Python Pandas GroupBy 最大日期

python - python 3中pickle和_pickle有什么区别?

java - Opencv - 构建 Opencv 失败 (MacOSX)

python - 将排名添加到 ID 的数据框中

python - 如何在没有 python 的情况下(交叉)编译 boost?

c++ - OpenCV - 缺少 DLL,但不是吗?

opencv - 生成 OpenCV 2.4.6(和一点)时,关于绝对和相对目标的大量 CMake 错误

python - 如何获得正确的alpha值来完美融合两幅图像?

python - 如何直接从 Python 显示图表

python-2.7 - 无法将图像转换为极坐标。 Python、OpenCV