opencv assignTo报错

最近编写opencv代码时遇到如下问题,谨此记录,如有高人路过,恳请指点

使用的编辑器是vscode里面的cmake插件,cmake插件选择的developer kit是vs studio community 2019 Release - amd64, cl.exe OpenCv版本为4.1.0

文件目录如下,工程是c++编写的cnn网络,一个mat库,一个cnn库,主程序为main.cpp

project
|---cnn_classification
	|----mat.h
	|----mat.cpp
	|----cnn.h
	|----cnn.cpp
|----main.cpp

CMakeList如下:

cmake_minimum_required(VERSION 2.8)

project(main)

#set(DEFAULT_CXX_STANDARD 11)

find_package(OpenCV REQUIRED)

#添加头文件路径
include_directories(${PROJECT_SOURCE_DIR}/cnn_classification/)

include_directories(${OpenCV_INCLUDE_DIRS})

#添加库文件搜索路径
link_directories(${PROJECT_SOURCE_DIR}/build/Debug/)

#添加cnn运行库
add_library(cnn STATIC  ${PROJECT_SOURCE_DIR}/cnn_classification/mat.h
                        ${PROJECT_SOURCE_DIR}/cnn_classification/cnn.h
                        ${PROJECT_SOURCE_DIR}/cnn_classification/cnn.cpp  
                        ${PROJECT_SOURCE_DIR}/cnn_classification/mat.cpp)
#添加可执行文件
add_executable(main ${PROJECT_SOURCE_DIR}/cnn_classification/main.cpp)

#链接运行库
target_link_libraries(main cnn
                            ${OpenCV_LIBS}
)

编译时报如下错误:
opencv assignTo报错_第1张图片
这实在令人费解,这份代码在同学的电脑上无论是windows还是ubuntu都可以编译。同学电脑上win下面opencv为.4.1.1,ubuntu 3.4.6

解决方法是:换成opencv3.4.6版本即可。其它环境如文章开头所述,不变

至于为什么,别的博客好像有提到cv源码中有一定的问题,我觉得不能排除这种情况。

你可能感兴趣的:(opencv)