.cache
文件夹:https://download.csdn.net/download/yohnyang/87638940检查CUDA版本
所以不如提前下载好并重命名后放到指定位置:.\xxx\opencv-4.5.5\.cache
,下载方式此处着重参考:https://blog.csdn.net/fengxinzioo/article/details/104919888
在此给出简单操作方式:直接去github:https://github.com/opencv/opencv_3rdparty挨个找到分支并下载到对应文件夹,然后修改至对应0KB文件的名字后删除原有文件即可。
文件重命名及所放目录汇总:
ps:opencv版本不同可能对应名称也不同,修改时还需注意!
D:\OPENCV4.6.0\OPENCV\SOURCES\.CACHE
│ .gitignore
│
├─ade
│ b624b995ec9c439cbc2e9e6ee940d3a2-v0.1.1f.zip
│
├─data
│ 7505c44ca4eb54b4ab1e4777cb96ac05-face_landmark_model.dat
│
├─ffmpeg
│ 5f9e2b2e04c15f080f40e844de80c867-opencv_videoio_ffmpeg_64.dll
│ 5573e2262ad1298e603122b7759fc2f6-opencv_videoio_ffmpeg.dll
│ 8862c87496e2e8c375965e1277dee1c7-ffmpeg_version.cmake
│
├─ippicv
│ 879741a7946b814455eee6c6ffde2984-ippicv_2020_win_intel64_20191018_general.zip
│
|--wechat_qrcode
| 6fb4976b32695f9f5c6305c19f12537d-detect.prototxt
| 69db99927a70df953b471daaba03fbef-sr.prototxt
| 238e2b2d6f3c18d6c3a30de0c31e23cf-detect.caffemodel
| cbfcd60361a73beb8c583eea7e8e6664-sr.caffemodel
|
└─xfeatures2d
├─boostdesc
│ 0ae0675534aa318d9668f2a179c2a052-boostdesc_lbgm.i
│ 0ea90e7a8f3f7876d450e4149c97c74f-boostdesc_bgm.i
│ 202e1b3e9fec871b04da31f7f016679f-boostdesc_binboost_064.i
│ 232c966b13651bd0e46a1497b0852191-boostdesc_bgm_bi.i
│ 324426a24fa56ad9c5b8e3e0b3e5303e-boostdesc_bgm_hd.i
│ 98ea99d399965c03d555cef3ea502a0b-boostdesc_binboost_128.i
│ e6dcfa9f647779eb1ce446a8d759b6ea-boostdesc_binboost_256.i
│
└─vgg
151805e03568c9f490a5e3a872777b75-vgg_generated_120.i
7126a5d9a8884ebca5aea5d63d677225-vgg_generated_64.i
7cd47228edec52b6d82f46511af325c5-vgg_generated_80.i
e8d0dcd54d1bcfdc29203d011a797179-vgg_generated_48.i
.\xxx\opencv460\opencv-4.6.0\3rdparty\ffmpeg
下注释掉如下代码,再次configure。如果不报警告可不做处理。2、3
步合并
- 选择好源码路径+build路径,选择VS版本,第1次configure
- 勾选:BUILD_CUDA_STUBS、OPENCV_DNN_CUDA、WITH_CUDA、BUILD_opencv_world、OPENCV_ENABLE_NONFREE
去掉勾选:BUILD_PERF_TESTS、BUILD_TEST、BUILD_opencv_python_tests、包含python、js、java的设置
添加contriblu路径:对应OPENCV_EXTRA_NODULES_PATH:./xxx/contrib/modules
第2次figure
- 此时如果网络不好的话,会显示一些警告:比如iccpv\xfeayures2d等下载失败,去github下载第三方库,复制到对应文件夹并重命名,第3次configure
- CUDA_ARCH_BIN:选择适合自己的CUDA算力,勾选CUDA_FAST_MATH、ENABLE_FAST_MATH,第4次configure
- 去掉勾选:OPENCV_GENERATE_SETUPVARS,第5次configure
- 如果有问题,解决问题重复configure,如果没有,点击generate
再次点击 Configure
CUDA_ARCH_BIN表示的是支持的显卡算力版本,在搜索栏搜索CUDA_ARCH_BIN会看见支持所有算力版本,可以指定自己的版本,删除不需要的版本,加快编译
勾选:
修改完成后,再次点击 Configure
如果出现以下警告:
CMake Warning at cmake/OpenCVGenSetupVars.cmake:54 (message):
CONFIGURATION IS NOT SUPPORTED: validate setupvars script in install
directory
Call Stack (most recent call first):
CMakeLists.txt:1084 (include)
解决方法: 在搜索框中输入OPENCV_GENERATE_SETUPVARS,去除勾选
General configuration for OpenCV 4.6.0 =====================================
Version control: unknown
Extra modules:
Location (extra): C:/Users/lenovo/Desktop/opencv4.6/opencv_contrib-4.6.0/modules
Version control (extra): unknown
Platform:
Timestamp: 2023-03-31T04:51:37Z
Host: Windows 10.0.19045 AMD64
CMake: 3.26.0-rc5
CMake generator: Visual Studio 16 2019
CMake build tool: D:/program/VS2019/MSBuild/Current/Bin/MSBuild.exe
MSVC: 1929
Configuration: Debug Release
CPU/HW features:
Baseline: SSE SSE2 SSE3
requested: SSE3
Dispatched code generation: SSE4_1 SSE4_2 FP16 AVX AVX2 AVX512_SKX
requested: SSE4_1 SSE4_2 AVX FP16 AVX2 AVX512_SKX
SSE4_1 (16 files): + SSSE3 SSE4_1
SSE4_2 (1 files): + SSSE3 SSE4_1 POPCNT SSE4_2
FP16 (0 files): + SSSE3 SSE4_1 POPCNT SSE4_2 FP16 AVX
AVX (4 files): + SSSE3 SSE4_1 POPCNT SSE4_2 AVX
AVX2 (31 files): + SSSE3 SSE4_1 POPCNT SSE4_2 FP16 FMA3 AVX AVX2
AVX512_SKX (5 files): + SSSE3 SSE4_1 POPCNT SSE4_2 FP16 FMA3 AVX AVX2 AVX_512F AVX512_COMMON AVX512_SKX
C/C++:
Built as dynamic libs?: YES
C++ standard: 11
C++ Compiler: D:/program/VS2019/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe (ver 19.29.30148.0)
C++ flags (Release): /DWIN32 /D_WINDOWS /W4 /GR /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /fp:fast /EHa /wd4127 /wd4251 /wd4324 /wd4275 /wd4512 /wd4589 /MP /MD /O2 /Ob2 /DNDEBUG
C++ flags (Debug): /DWIN32 /D_WINDOWS /W4 /GR /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /fp:fast /EHa /wd4127 /wd4251 /wd4324 /wd4275 /wd4512 /wd4589 /MP /MDd /Zi /Ob0 /Od /RTC1
C Compiler: D:/program/VS2019/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe
C flags (Release): /DWIN32 /D_WINDOWS /W3 /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /fp:fast /MP /MD /O2 /Ob2 /DNDEBUG
C flags (Debug): /DWIN32 /D_WINDOWS /W3 /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /fp:fast /MP /MDd /Zi /Ob0 /Od /RTC1
Linker flags (Release): /machine:x64 /INCREMENTAL:NO
Linker flags (Debug): /machine:x64 /debug /INCREMENTAL
ccache: NO
Precompiled headers: NO
Extra dependencies: cudart_static.lib nppc.lib nppial.lib nppicc.lib nppidei.lib nppif.lib nppig.lib nppim.lib nppist.lib nppisu.lib nppitc.lib npps.lib cublas.lib cudnn.lib cufft.lib -LIBPATH:C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.7/lib/x64
3rdparty dependencies:
OpenCV modules:
To be built: aruco barcode bgsegm bioinspired calib3d ccalib core cudaarithm cudabgsegm cudacodec cudafeatures2d cudafilters cudaimgproc cudalegacy cudaobjdetect cudaoptflow cudastereo cudawarping cudev datasets dnn dnn_objdetect dnn_superres dpm face features2d flann fuzzy gapi hdf hfs highgui img_hash imgcodecs imgproc intensity_transform line_descriptor mcc ml objdetect optflow phase_unwrapping photo plot quality rapid reg rgbd saliency shape stereo stitching structured_light superres surface_matching text tracking ts video videoio videostab wechat_qrcode world xfeatures2d ximgproc xobjdetect xphoto
Disabled: python3 python_bindings_generator python_tests
Disabled by dependency: -
Unavailable: alphamat cvv freetype java julia matlab ovis python2 python2 sfm viz
Applications: apps
Documentation: NO
Non-free algorithms: YES
Windows RT support: NO
GUI:
Win32 UI: YES
VTK support: NO
Media I/O:
ZLib: build (ver 1.2.12)
JPEG: build-libjpeg-turbo (ver 2.1.2-62)
WEBP: build (ver encoder: 0x020f)
PNG: build (ver 1.6.37)
TIFF: build (ver 42 - 4.2.0)
JPEG 2000: build (ver 2.4.0)
OpenEXR: build (ver 2.3.0)
HDR: YES
SUNRASTER: YES
PXM: YES
PFM: YES
Video I/O:
DC1394: NO
FFMPEG: YES (prebuilt binaries)
avcodec: YES (58.134.100)
avformat: YES (58.76.100)
avutil: YES (56.70.100)
swscale: YES (5.9.100)
avresample: YES (4.0.0)
GStreamer: NO
DirectShow: YES
Media Foundation: YES
DXVA: YES
Parallel framework: Concurrency
Trace: YES (with Intel ITT)
Other third-party libraries:
Intel IPP: 2020.0.0 Gold [2020.0.0]
at: C:/Users/lenovo/Desktop/opencv4.6/build/3rdparty/ippicv/ippicv_win/icv
Intel IPP IW: sources (2020.0.0)
at: C:/Users/lenovo/Desktop/opencv4.6/build/3rdparty/ippicv/ippicv_win/iw
Lapack: NO
Eigen: NO
Custom HAL: NO
Protobuf: build (3.19.1)
NVIDIA CUDA: YES (ver 11.7, CUFFT CUBLAS FAST_MATH)
NVIDIA GPU arch: 61 70 75 80 86
NVIDIA PTX archs:
cuDNN: YES (ver 8.6.0)
OpenCL: YES (NVD3D11)
Include path: C:/Users/lenovo/Desktop/opencv4.6/opencv-4.6.0/3rdparty/include/opencl/1.2
Link libraries: Dynamic load
Python (for build): D:/program/Anaconda3/python.exe
Java:
ant: NO
JNI: NO
Java wrappers: NO
Java tests: NO
Install to: C:/Users/lenovo/Desktop/opencv4.6/build/install
-----------------------------------------------------------------
Configuring done (28.9s)
分别在debug
以及release
模式下,在解决方案资源管理器窗口中找到ALL_BUILD
右击,点击生成,等待编译完成
编译好后在build
路径下会生成install
文件夹,打开可以看到编译成功的opencv
包:
至于VS项目属性配置就不再详述了