c++、opencv报错
错误描述
-
0x00007FFAEDD9FDEC 处(位于 GetPose_ORB.exe 中)有未经处理的异常: Microsoft C++ 异常: cv::Exception,位于内存位置 0x0000008B88D9E630 处
-
OpenCV(4.3.0) Error: Assertion failed ((unsigned)i0 < (unsigned)size.p[0])
-
未加载kernelbase.pdb
-
严重性 代码 说明 项目 文件 行 禁止显示状态 错误 C2398 元素“1”: 从“size_t”转换到“int”需要收缩转换 GetPose_ORB e:\03_program\getpose_20230410\main.cpp 484
错误解决
当以上四种错误连续出现(即,解决了一个,依然编译不成功,报第二个错误),可尝试的解决办法:
- 程序中使用的文件路径改成绝对路径,使用
\
进行转义,如下:
错误:“E:\03_Program\images\1.png”;
正确:“E:\03_Program\images\1.png”;
注:针对Microsoft C++ 异常: cv::Exception,位于内存位置 0x0000008B88D9E630 处
、OpenCV(4.3.0) Error: Assertion failed ((unsigned)i0 < (unsigned)size.p[0])
错误 - 在变量前进行强制转换,加
(数据类型)
, 如(int)
、int32_t
注:针对的错误:元素“1”: 从“size_t”转换到“int”需要收缩转换
,此时会紧接着出现Microsoft C++ 异常: cv::Exception,位于内存位置 0x0000008B88D9E630 处、OpenCV(4.3.0) Error: Assertion failed ((unsigned)i0 < (unsigned)size.p[0])
错误, 此时就要查看文件路径是否使用了转义符号\
。 - 如果问题还没解决,就需要考虑“链接器->附加依赖项”
cite: https://blog.csdn.net/weixin_41940945/article/details/88700101、https://blog.csdn.net/qq_51899357/article/details/123328225