首页 > Windows开发 > 详细

关于windows在vscode中配置opencv遇到的问题及解决办法总结

时间:2021-08-30 05:08:55      阅读:21      评论:0      收藏:0      [点我收藏+]

关于windows在vscode中配置opencv遇到的问题及解决办法总结

最近正在学习opencv,平时变成喜欢使用vscode。喜欢使用它主要是因为vscode使用起来比较方便而且美观,需要使用到相关的模块直接下载插件即可,顶多就再多配置一个编译环境如gcc 、clang 、java、python等。

opencv的编译过程比较简单,搭建百度既可以完成,这里简要说一下就可以了。opencv的代码包含两部分,一部分是他的核心代码包,一个是他的扩展模块。自行编译的话建议将扩展模块一起编译出来。不然,opencv里面提前编译好的也只有核心部分,自此编译就没有必要了。cmake时记得将一个xxx_word选项勾选上,还有一个就是有一个extra_xxx的变量找到并将他的值指向你的扩展模块的module文件夹即可。如果有报错说网络问题的就去cmakedownload.log里面去找找下载的链接,自己找梯子下载好重新命名替换原来的为下载完成的文件。然后编译即可。dubug和release版本都要编译

编译的时候使用visual studio和visual studio code都可以,如果使用后者需要安装C/C++、CMake、CMake Tool插件。然后配置CMake Tool的生成器即可,这里建议使用Visual Studio 1x 。个人感觉后者编译器来占用的内存要少很多,而且看起来显卡也在使用(20+%),而visual studio编译的时候显卡几乎没用,仅为0.01-0.3%,占用内存也比较多。

编译完成之后将编译好的文件,放到你的安装目录下面。然后在环境变量里面新建一个变量OpenCV_DIR只想你的安装目录。

配置opencv在vscode中的环境

opencv在vscode中的配置可以使用C/C++来配置,但是.vscode文件夹里面的三个文件配置起来很是麻烦,这里使用的是cmake来自动配置opencv,cmakelist如下:

# project name
PROJECT(opencv_test)
# requirement of cmake version
cmake_minimum_required(VERSION 3.5)
# set the directory of executable files
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${opencv_test_SOURCE_DIR}/bin)
# find required opencv
find_package(OpenCV REQUIRED)
# directory of opencv headers
include_directories(${OpenCV_INCLUDE_DIRS})
# name of executable file and path of source file
add_executable(opencv_test src/opencv_test.cpp)
# directory of opencv library
link_directories(${OpenCV_LIBRARY_DIRS})
# opencv libraries
target_link_libraries(opencv_test ${OpenCV_LIBS})

cmake自己研究的不是很深,因此不过多解释,大家直接复制我的然后改名称就可以使用了。

配置的时候不要使用MinGW Makefiles生成器,要使用Visual Studio 1x生成器。之前使用MinGW Makefiles在编译的时候来时说找不到文件还说:

but it set OpenCV_FOUND to FALSE so package "OpenCV" is considered to be [cmake]   NOT FOUND.

然后使用Visual Studio 1x生成器却没有任何问题,运行的好好的,很是不解。。。

注意:这里不建议使用vscode里面的插件clangd,因为它和C/C++插件会冲突,虽然clang有很多优点而且代码提示我也非常喜欢,但是配置起来比较麻烦,clangd需要使用compile_commands.json,至少我是不太会使用,经常出现找不到头文件的情况。因为作者使用vscode配置硬件,编写程序时很多硬件的辅助插件仅支持C/C++,使用clangd就很鸡肋。对于opencv来说的话也不要使用clangd了,因为compile_commands.json文件Visual Studio 1x是不会生成的,也就是说你找不到头文件而且还配置不了,要么换生成器但是opencv程序又会运行不了,因此还是放弃吧。

如果大家有配置clangd的相关办法,欢迎大家留言分享,我会及时改进。

关于windows在vscode中配置opencv遇到的问题及解决办法总结

原文:https://www.cnblogs.com/3236676588buladuo/p/15200193.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!