windows中如何正确构建opencv得到"opencv_createsamples.exe"
How to build opencv correctly in windows to get "opencv_createsamples.exe"
我想学习和使用使用 OpenCV 的 haarcascade 分类器来检测我选择的对象。我在互联网上搜索,发现 createsamples
实用程序有助于为正面和负面图像创建数据集。我知道如何在 python 中安装 OpenCV(pip install opencv-python
完美运行)但是因为我需要使用该实用程序,所以我需要为我的 windows 系统构建 OpenCV。
我尝试在 windows
中安装 OpenCV
尝试 1:使用 MinGW 和 cmake
使用 git 在 "C:\OpenCV"
从 https://github.com/opencv/opencv
克隆了最新的 OpenCV
已安装cmake
- 使用带有默认选项的 MinGW(64 位)构建系统在
"C:\OpenCV\build"
使用 cmake 创建了构建
- 运行
mingw32-make
- 运行
mingw32-make install
它在 "C:\OpenCV\build\install"
中创建了一个安装目录
但令我惊讶的是 opencv_createsamples.exe
不在那里
opencv_visualisation.exe
、opencv_annotation.exe
、opencv_version.exe
等
screenshot of install files generated
screenshot of build options selected in cmake by default
很明显 BUILD_opencv_apps
默认是 true
并且创建了除此之外的其他应用程序
仍在源文件夹中:createsamples.cpp
与 opencv_visualisation.cpp
和其他
一起出现在 "C:\OpenCV\apps\"
中
尝试 2:visual studio14_15 从官方网站构建
从 https://github.com/opencv/opencv/releases/download/4.0.1/opencv-4.0.1-vc14_vc15.exe from https://github.com/opencv/opencv/releases 网页下载了最新的 OpenCV 4.0.1
在 "C:\OpenCV401\"
处提取了 opencv 构建
仍然令我惊讶 "C:\OpenCV401\build\x64\vc14\bin"
没有 opencv_createsamples.exe
同样存在其他文件
screenshot of files present in build
尝试 3
- 这次我从这个 git 中心页面下载了 visual studio 10 build:https://github.com/abreheret/opencv3.2.0_build
- 这里
<OpenCV_DIR>/x64/vc10/bin/
所有令人惊叹的文件都存在
screenshot of files present in this build
那么,我的问题是:
- 为什么在我第一次尝试时没有使用 MinGW 和 cmake 从源构建该实用程序
- 为什么他们没有包含在官方构建中
- 如何使用 MinGW 和 cmake 构建以正确获取该实用程序(可能需要一些构建配置?)
Createsamples 在最新的 OpenCV(4.0 及更高版本)中被禁用:here。
我想学习和使用使用 OpenCV 的 haarcascade 分类器来检测我选择的对象。我在互联网上搜索,发现 createsamples
实用程序有助于为正面和负面图像创建数据集。我知道如何在 python 中安装 OpenCV(pip install opencv-python
完美运行)但是因为我需要使用该实用程序,所以我需要为我的 windows 系统构建 OpenCV。
我尝试在 windows
中安装 OpenCV尝试 1:使用 MinGW 和 cmake
使用 git 在
"C:\OpenCV"
从 https://github.com/opencv/opencv 克隆了最新的 OpenCV
已安装cmake
- 使用带有默认选项的 MinGW(64 位)构建系统在
"C:\OpenCV\build"
使用 cmake 创建了构建 - 运行
mingw32-make
- 运行
mingw32-make install
它在 "C:\OpenCV\build\install"
但令我惊讶的是 opencv_createsamples.exe
不在那里
opencv_visualisation.exe
、opencv_annotation.exe
、opencv_version.exe
等
screenshot of install files generated
screenshot of build options selected in cmake by default
很明显 BUILD_opencv_apps
默认是 true
并且创建了除此之外的其他应用程序
仍在源文件夹中:createsamples.cpp
与 opencv_visualisation.cpp
和其他
"C:\OpenCV\apps\"
中
尝试 2:visual studio14_15 从官方网站构建
从 https://github.com/opencv/opencv/releases/download/4.0.1/opencv-4.0.1-vc14_vc15.exe from https://github.com/opencv/opencv/releases 网页下载了最新的 OpenCV 4.0.1
在
"C:\OpenCV401\"
处提取了 opencv 构建
仍然令我惊讶 "C:\OpenCV401\build\x64\vc14\bin"
没有 opencv_createsamples.exe
同样存在其他文件
screenshot of files present in build
尝试 3
- 这次我从这个 git 中心页面下载了 visual studio 10 build:https://github.com/abreheret/opencv3.2.0_build
- 这里
<OpenCV_DIR>/x64/vc10/bin/
所有令人惊叹的文件都存在
screenshot of files present in this build
那么,我的问题是:
- 为什么在我第一次尝试时没有使用 MinGW 和 cmake 从源构建该实用程序
- 为什么他们没有包含在官方构建中
- 如何使用 MinGW 和 cmake 构建以正确获取该实用程序(可能需要一些构建配置?)
Createsamples 在最新的 OpenCV(4.0 及更高版本)中被禁用:here。