OMP: Error #15: Initializing libiomp5md.dll, but found libomp140.x86_64.dll already initialized.
OMP: Hint This means that multiple copies of the OpenMP runtime have been linked into the program. That is dangerous, since it can degrade performance or cause incorrect results. The best thing to do is to ensure that only a single OpenMP runtime is linked into the process, e.g. by avoiding static linking of the OpenMP runtime in any library. As an unsafe, unsupported, undocumented workaround you can set the environment variable KMP_DUPLICATE_LIB_OK=TRUE to allow the program to continue to execute, but that may cause crashes or silently produce incorrect results. For more information, please see http://www.intel.com/software/products/support/.
这个错误表明 程序中同时加载了多个 OpenMP 运行时库,例如 libiomp5md.dll 和 libomp140.x86_64.dll,它们可能来自不同的软件包(如 Intel MKL、PyTorch、OpenCV 等)。这可能会导致 性能下降、崩溃或错误计算。
解决:在代码里加上这两行代码(强制只使用一个 OpenMP 运行时)
import os
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"