3

我正在使用 OpenCV 的 Python 绑定来调用函数matchTemplate。这是我需要的唯一功能。为了能够调用matchTemplate,我必须将 OpenCV 的 python 绑定cv2.pyd与我的 (Windows) 应用程序一起提供,该应用程序重达 9MB。

有没有什么方法可以构建(Python 绑定)OpenCV,只包含我需要的模块cv2.pydmatchTemplate似乎是imgproc模块的一部分,所以我认为我只需要 OpenCVcoreimgproc.

我已经尝试过使用 OpenCV 的 CMake 选项,并且我想我已经设法只构建了一些模块。但是,一旦我禁用单个模块,比如calib3d将 CMake 设置BUILD_OPENCV_calib3d为 false,我也会“丢失”Python 构建。换句话说,当我使用 CMake 生成 Visual Studio 解决方案文件以构建除calib3dwith python之外的所有模块时,Visual Studio 解决方案包含除 and 之外的所有calib3d 模块 python。我尝试通过从调用python中删除来修改模块的 CMakeLists 文件calib3docv_add_module

ocv_add_module(python BINDINGS opencv_core opencv_flann ...)

以及包含标题的设置

set(opencv_hdrs
    "${OPENCV_MODULE_opencv_core_LOCATION}/include/opencv2/core/core.hpp"
    ...

不幸的是,无济于事。有人知道怎么做这个吗?

我正在使用 Microsoft Visual Studio 2012 进行构建。

谢谢!

4

0 回答 0