OpenCV3的程序转到OpenCV4下进行编译出现的 CV_**** 问题解决方法

文章目录

  • 写在前面
  • 一、问题描述
  • 二、解决方法
  • 参考链接

写在前面

自己的测试环境:Ubuntu 20.04.5,OpenCV4.2.0

一、问题描述

自己把OpenCV3的程序转到OpenCV4下进行编译,遇到如下报错

error: ‘CV_INTER_LINEAR’ was not declared in this scope
error: ‘CV_RANSAC’ was not declared in this scope
error: ‘CV_WINDOW_AUTOSIZE’ was not declared in this scope

二、解决方法

出现这个问题的主要原因是 OpenCV3 和 OpenCV4 中的某些变量是不一样的。OpenCV4部分取消了CV_前缀
解决方法很简单,就是找到报错的文件,报错的变量修改适配 OpenCV4 中的变量。

  1. 报错error: ‘CV_INTER_LINEAR’ was not declared in this scope的解决方法
CV_INTER_LINEAR  修改为 cv::INTER_LINEAR

或者,添加头文件 
#include
  1. 报错error: ‘CV_RANSAC’ was not declared in this scope的解决方法
程序中的 CV_RANSAC  修改为 cv::RANSAC
  1. 报错 error: ‘CV_WINDOW_AUTOSIZE’ was not declared in this scope 的解决方法
CV_WINDOW_AUTOSIZE  修改为 cv::WINDOW_AUTOSIZE

或者,添加头文件 
#include 

然后再次编译就可以编译通过了。

参考链接

[1] xlsemmmmmm. opencv常见用法和opencv3->opencv4版本切换 [EB/OL]. https://blog.csdn.net/weixin_43848456/article/details/123380782, 2022-07-10/2022-11-28.

你可能感兴趣的:(Opencv,opencv,ubuntu)