【C++ 图像处理 OpenCV】20230814-OpenCV和OpenCV-contrib配置过程中遇到的问题

OpenCV和OpenCV-contrib配置中遇到的问题

一、环境

Microsoft Visual Studio 2022

opencv-4.5.5-vc14_vc15 .exe,以下简称“D:\OpenCV-4.5.5\opencv\build\include\opencv2”为OpenCV库文件夹

opencv-contrib-4.5.5-zip。需要与opencv版本对应

cmake-3.24.0-rc1-windows-x86_64.msi。有博主说,4.5.5配cmake3.2.5及以上会报错,选择3.2.4成功配置环境。

https://cmake.org/files/

jdk-17_windows-x64_bin.msi

VTK-8.2.0.zip

以上资源下载链接

二、遇到的问题

2.1 配置环境遇到的问题

2.1.1CMake遇到的问题

2.1.1.1 JNI is not found

​ 重新下载安装jdk。安装时直接选择把路径添加到环境变量PATH中,就不用再配置环境变量了。

2.1.1.2 VTK is not found
Found JNI: C:/Program Files/Java/jdk-17/include  found components: AWT JVM 
VTK is not found. Please set -DVTK_DIR in CMake to VTK build directory, or to VTK install subdirectory with VTKConfig.cmake file
CMake Error at cmake/OpenCVModule.cmake:356 (_glob_locations):
  Syntax error in cmake code at

    D:/OpenCV-4.5.5/opencv/sources/cmake/OpenCVModule.cmake:356

  when parsing string

    D:\OpenCV-4.5.5\opencv_contrib-4.5.5\modules

  Invalid character escape '\O'.
Call Stack (most recent call first):
  cmake/OpenCVModule.cmake:385 (ocv_glob_modules)
  CMakeLists.txt:927 (ocv_register_modules)

​ 下载VTK,重新BUILD和INSTALL。我下载的版本未VTK-8.2.0。

​ 参照VTK下载并安装

2.1.1.3 “\o"转义字符出错。

​ 在CMake输入路径时,路径用的是"\“,需要改为使用”/"。

​ 如
在这里插入图片描述

2.1.1.4 无法启动程序 xxxxxxxxx 系统找不到指定的文件

​ 如下图

在这里插入图片描述

​ 该错误时因为没有配置“附加依赖项”。有可能你认为自己已经配置了“附加依赖项”,但是可能是你再opencv和opencv-contrib的编译过程中配置了“附加依赖项”,而将该配置 配置给了opencv项目或者opencv-contrib项目,而没有配置给你自己的项目,比如我这里没有配置“附加依赖项”给自己的“opencv_demo”项目。

2.1.1.5 无法打开输入文件“opencv——xxx.lib”。

原因时“附加依赖项”的路径不对,我最开始配置时,直接配置的时lib的名字,没有配置绝对路径。改为配置为绝对路径后,就可以正常运行了。

在这里插入图片描述

配置的依赖项目录,前面时自己刚才生成的newbuild目录下的库路径(每个人不一定相同)。

D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_aruco455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_barcode455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_bgsegm455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_bioinspired455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_calib3d455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_ccalib455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_core455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_datasets455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_dnn_objdetect455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_dnn_superres455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_dnn455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_dpm455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_face455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_features2d455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_flann455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_fuzzy455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_gapi455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_hfs455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_highgui455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_img_hash455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_imgcodecs455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_imgproc455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_intensity_transform455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_line_descriptor455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_mcc455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_ml455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_objdetect455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_optflow455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_phase_unwrapping455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_photo455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_plot455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_quality455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_rapid455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_reg455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_rgbd455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_saliency455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_shape455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_stereo455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_stitching455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_structured_light455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_superres455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_surface_matching455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_text455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_tracking455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_video455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_videoio455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_videostab455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_viz455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_wechat_qrcode455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_xfeatures2d455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_ximgproc455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_xobjdetect455.lib
D:\OpenCV-4.5.5\opencv\newbuild\install\x64\vc17\lib\opencv_xphoto455.lib

2.2 编写代码遇到的问题

2.2.1无法打开源文件:

  • /face.hpp和face/facerec.hpp——>下载opencv_contrib,在里面找到face文件夹和face.hpp。然后将其拷贝到OpenCV库文件夹下。

2.2.2未定义符CvFont——>添加依赖

#include "opencv2/imgproc/imgproc_c.h"

2.2.3未定义符FaceRecognizer——>添加命名空间。


using namespace cv::face;

2.2.4未定义符createEigenFaceRecognizer()

将该方法改为EigenFaceRecognizer::create()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
opencv-4.4.0-vc14_vc15.exe 版本:4.4.0 2020年7月 OpenCV 4.x的夏季更新已发布 :晴天: 此版本的亮点: SIFT(尺度不变特征变换)算法已移至主存储库(SIFT的专利已过期) DNN模块: 改进的图层/激活/支持更多模型: 最新的Yolo v4检测器:#17148。为[yolo]层(Yolo v3和Yolo v4)禁用了每层NMS,因为它们是不正确的-用于cv::dnn::NMSBoxes所有检测。 ONNX:添加对Resnet_backbone(Torchvision)的支持#16887 EfficientDet模型支持:#17384 新样本/演示: 添加文本识别示例:C ++ / Python FlowNet2光流:#16575 英特尔®推理引擎后端(OpenVINO™): 增加了对OpenVINO 2020.3 LTS / 2020.4版本的支持 计划在下一版本删除对NN Builder API的支持 CUDA后端的许多修复和优化(感谢@YashasSamaga):PR G-API模块: 在OpenCV后端引入了用于状态内核的新API :GAPI_OCV_KERNEL_ST。有状态内核在各个图执行(标准更多)或流的视频帧之间(以流模式)保留其状态。 在G-API推出更多面向视频的操作:goodFeaturesToTrack,buildOpticalFlowPyramid,calcOpicalFlowPyrLK。 添加了更多的图像处理内核:Laplacian和双边过滤器。 修复了G-API的OpenCL后端的潜在崩溃。 OpenCV社区的许多其他伟大贡献,包括但不限于: Obj-C / Swift绑定:#17165 (opencv_contrib)Julia绑定是正在进行的GSoC项目的一部分:#2547 (opencv_contrib)BIMEF:生物启发的多重曝光融合框架,用于弱光图像增强: #2448 为CV_16UC1图像启用Otsu阈值:#16640 为文本检测添加笔划宽度变换算法:#2464 计划在Apache 2许可证上进行下一版本OE-32的 迁移#17491

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

豆得儿不是猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值