无法找到 zlibwapi.dll。请确保它在您的库路径中

Ron*_*Ron 18 opencv gpu zlib

我正在开发一个对象检测项目,并希望使用我的 GPU 处理该项目。我已经完成了NVIDIA 设置教程,一切正常。我的对象检测代码最初适用于 CPU,但是当我添加这两行代码时:

net.setPreferableBackend(cv2.dnn.DNN_BACKEND_CUDA)
net.setPreferableTarget(cv2.dnn.DNN_TARGET_CUDA)
Run Code Online (Sandbox Code Playgroud)

显示的输出:

无法找到 zlibwapi.dll。请确保它在您的库路径中!

我已经从cuDNN 网站下载了 zlibwapi.dll zip 文件,解压缩并将整个文件夹添加到我的环境变量路径中。该文件夹名为“zlib123dllx64”,包含“dll_x64”文件夹和“static_x64”文件夹。“zlibwapi.dll”位于“dll_x64”文件夹内。我已在用户和系统路径变量中添加了“zlib123dllx64”文件夹,但它似乎没有解决任何问题。我怎样才能修复这个错误并使GPU与代码一起工作?

我的环境设置:

  • Windows 10
  • 视觉工作室社区 2019
  • OpenCV Python yolov3

use*_*675 29

我能够在 NVIDIA Nsight 目录中找到丢失的 zlib DLL 的副本:

C:\Program Files\NVIDIA Corporation\Nsight Systems 2022.4.2\host-windows-x64\zlib.dll

我将其复制并重命名为:

C:\Program Files\NVIDIA GPU 计算工具包\CUDA\v11.8\bin\zlibwapi.dll

因为它已经在我的 PATH 环境变量中了。这样做解决了我的错误。

我在其他答案中链接的 CUDNN 文档中看到了链接,但我对安全警告有点担心。


小智 23

Windows环境:

当我尝试运行 TensorRT 示例 int8_caffe_mnist 时,我遇到了“无法找到 zlibwapi.dll。请确保它位于您的库路径中”的问题。确认 TensorRT 正确安装。

按照以下说明进行操作:https ://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#prerequirements-windows

3.1.3下下载zlib并将路径添加到环境变量中。我做了以下事情:

  1. Windows 搜索编辑系统环境变量
  2. 添加库路径,环境变量 -> 路径 -> 编辑 -> C:path to\zlibwapi.dll

结论:按照将 zlibwapi.dll 添加到路径的说明对我来说不起作用。

对我有用的解决方案:

  1. 删除了环境变量下的库路径
  2. 将 zlibwapi.dll 复制到 C:\Windows\System32 和 C:\Windows\SysWOW64
  3. 删除/保留 zlib123dllx64 文件,我选择删除,因为它不需要库路径的位置


Ron*_*Ron 2

如果有人也遇到和我一样的问题,我设法解决了这个问题。您无需将整个“zlib123dllx64”文件夹调用到系统环境路径中,只需将“dllx64”文件夹内的“zlibwapi.dll”添加到项目文件夹中并将其包含在项目中即可。这解决了我的问题。干杯