opencv3.4.3能否兼容opencv2

时间: 2023-11-04 19:43:16 浏览: 27
OpenCV 3.4.3与OpenCV 2是两个独立的版本,虽然它们有很多相同的功能和API,但也有一些不同点。因此,不能保证OpenCV 3.4.3与OpenCV 2的代码可以完全兼容。 如果您要将OpenCV 2的代码迁移到OpenCV 3.4.3,您需要注意一些变化和更新。例如,一些函数的名称可能已更改,参数可能已更改或删除,还可能添加了新的功能和API。 因此,为了避免不必要的问题,建议您在将OpenCV 2的代码迁移到OpenCV 3.4.3之前,仔细检查文档并进行必要的更改。
相关问题

树莓派C++安装opencv3.4.3

树莓派C++安装OpenCV3.4.3的步骤如下: 1. 下载OpenCV安装包和OpenCV_contrib安装包: ```shell cd ~ wget -O opencv.zip https://github.com/opencv/opencv/archive/3.4.3.zip unzip opencv.zip wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/3.4.3.zip unzip opencv_contrib.zip ``` 2. 安装依赖项: ```shell sudo apt-get update sudo apt-get upgrade sudo apt-get install build-essential cmake pkg-config sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev sudo apt-get install libxvidcore-dev libx264-dev sudo apt-get install libgtk2.0-dev libgtk-3-dev sudo apt-get install libatlas-base-dev gfortran ``` 3. 创建并进入一个build目录: ```shell cd ~/opencv-3.4.3/ mkdir build cd build ``` 4. 配置CMake: ```shell cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.3/modules \ -D ENABLE_NEON=ON \ -D ENABLE_VFPV3=ON \ -D BUILD_TESTS=OFF \ -D INSTALL_PYTHON_EXAMPLES=OFF \ -D BUILD_EXAMPLES=OFF .. ``` 5. 编译OpenCV: ```shell make -j4 ``` 这个过程可能需要几个小时,取决于你的树莓派版本和配置。 6. 安装OpenCV: ```shell sudo make install sudo ldconfig ``` 7. 验证OpenCV是否安装成功: ```shell pkg-config --modversion opencv ``` 如果成功安装,将会输出OpenCV的版本号。

ubuntu18.04安装qt5.9+opencv3.4.3

以下是在Ubuntu 18.04上安装Qt 5.9和OpenCV 3.4.3的步骤: 1. 安装Qt 5.9 打开终端,输入以下命令: ``` sudo apt-get update sudo apt-get install qt5-default ``` 2. 安装OpenCV 3.4.3 打开终端,输入以下命令: ``` sudo apt-get update sudo apt-get install libopencv-dev ``` 3. 配置Qt Creator 打开Qt Creator,选择“工具”->“选项”,在“Kits”选项卡中添加一个新的Kit,选择“Desktop”->“Default”,然后设置以下参数: - Compiler: GCC - Debugger: GDB - Qt version: Qt 5.9.5 4. 配置OpenCV 在Qt Creator中,选择“文件”->“新建文件或项目”,选择“应用程序”->“Qt Widgets应用程序”,然后按照向导设置项目。在“项目配置”中,选择“添加库”->“外部库”,然后设置以下参数: - 名称: opencv - 版本: 3.4.3 - 头文件路径: /usr/include/opencv4 - 库文件路径: /usr/lib/x86_64-linux-gnu - 库文件: opencv_core, opencv_highgui, opencv_imgproc, opencv_imgcodecs 完成设置后,就可以在Qt Creator中使用OpenCV了。 希望这些步骤能够帮助你在Ubuntu 18.04上安装Qt 5.9和OpenCV 3.4.3。

相关推荐

要在树莓派上下载OpenCV,你可以按照以下步骤进行操作: 1. 首先,你需要安装Python2环境。这是因为之前安装的OpenCV是基于Python2的。如果你还没有安装Python2,请先安装它。 2. 下载OpenCV和OpenCV_contrib的压缩包。你可以在命令行中使用以下命令将压缩包下载到树莓派的/home/pi/Downloads目录下: cd /home/pi/Downloads wget https://github.com/Itseez/opencv/archive/3.4.0.zip wget https://github.com/Itseez/opencv_contrib/archive/3.4.0.zip 第一个压缩包大约86.8MB,第二个压缩包大约54.5MB。这些压缩包包含了OpenCV的源代码和额外的功能模块。 3. 解压缩下载的压缩包。你可以使用文件管理器或者在命令行中使用以下命令解压缩: unzip /home/pi/Downloads/3.4.0.zip unzip /home/pi/Downloads/3.4.0.zip 这将在/home/pi/Downloads目录下创建两个文件夹opencv-3.4.0和opencv_contrib-3.4.0。 4. 复制所需的文件。根据引用中的建议,你需要复制xfeatures2d文件夹和xfeatures2d.hpp文件。你可以使用以下命令将这些文件复制到相应的目录下: cp /home/pi/Downloads/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2/xfeatures2d /home/pi/Downloads/opencv-3.4.0/modules/stitching/include/opencv2/ cp /home/pi/Downloads/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2/xfeatures2d.hpp /home/pi/Downloads/opencv-3.4.0/modules/stitching/include/opencv2/ 5. 编译和安装OpenCV。按照正常的OpenCV编译和安装步骤进行操作。你可以使用以下命令在树莓派上编译OpenCV: cd /home/pi/Downloads/opencv-3.4.0 mkdir build cd build cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D OPENCV_EXTRA_MODULES_PATH=/home/pi/Downloads/opencv_contrib-3.4.0/modules \ -D BUILD_EXAMPLES=ON .. make -j4 sudo make install sudo ldconfig 在这个过程中可能会遇到一些错误。根据引用中的提示,如果编译到81%左右时出现错误,可能是由于下载的文件不完整导致的。你可以尝试将缺少的文件复制到/home/pi/Downloads/opencv_contrib-3.4.3/modules/xfeatures2d/src/目录下来解决这个问题。 完成以上步骤后,你就成功地在树莓派上下载了OpenCV。你可以开始使用OpenCV进行图像处理和计算机视觉任务了。123 #### 引用[.reference_title] - *1* *2* *3* [在树莓派上安装opencv](https://blog.csdn.net/banxianercc/article/details/121272427)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
引用中提到了OpenCV 3.4.3 包含了两个文件:opencv_ffmpeg.dll和opencv_ffmpeg_64.dll。这两个文件是用来与FFmpeg库集成的。通过将它们与OpenCV一起使用,可以实现对视频文件的处理和分析。 引用中提到了一个使用OpenCV和Python开发的答题卡识别系统。通过使用OpenCV图像处理库,可以建立精确的计算机视觉算法,实现对答题卡的批量识别和信息导出至Excel表格等功能。 由于OpenCV是一个开源的计算机视觉库,它并没有直接继承FFmpeg库的功能。然而,OpenCV提供了一些用于处理和操作视频文件的函数和类。你可以使用OpenCV的VideoCapture类来读取视频文件,并使用OpenCV的函数来处理视频帧。这些函数包括对视频帧进行裁剪、缩放、滤波、特征提取等操作。通过结合OpenCV和FFmpeg,你可以实现更复杂的视频处理任务。 所以,尽管OpenCV没有直接继承FFmpeg库的功能,但它可以通过使用相关的函数和类来实现对视频文件的处理和分析。123 #### 引用[.reference_title] - *1* [opencv_ffmpeg.dll、 opencv_ffmpeg_64.dll](https://download.csdn.net/download/weixin_43699719/13714251)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [opencv_ffmpeg_64和opencv_ffmpeg.rar](https://download.csdn.net/download/qq_43769923/12158267)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [基于Python+OpenCV智能答题卡识别系统-深度学习和图像识别算法应用(含Python全部工程源码)+训练与测试数据...](https://download.csdn.net/download/qq_31136513/88280326)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
根据引用,在使用Qt过程中引入OpenCV可能会遇到找不到OpenCV头文件的报错。解决方法是配置opencv.conf文件,输入相应命令来解决路径问题。根据引用,在树莓派上,默认可见的是/usr/include/目录,而我的opencv_modules.hpp文件在/usr/local/include/opencv4/opencv2目录下,所以需要通过命令来创建链接。最后,根据引用,如果还遇到找不到特定头文件的问题,可以根据头文件的实际路径进行相应的替换。例如,将#include "opencv2/xfeatures2d.hpp"替换为#include "/home/pi/Downloads/opencv_contrib-3.4.3/modules/xfeatures2d/include/opencv2/xfeatures2d.hpp"。以上是针对Qt树莓派OpenCV的一些解决方法和路径配置的建议。123 #### 引用[.reference_title] - *1* *2* [树莓派使用c++ qt 编译opencv流程](https://blog.csdn.net/HAO_keshui/article/details/129794665)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [空卡安装设置树莓派4B并安装opencv+QT](https://blog.csdn.net/maum61/article/details/122141123)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
在Ubuntu上一键安装ROS的OpenCV,可以按照以下步骤进行操作: 1. 首先,安装ROS。可以使用ROS官方提供的安装脚本进行安装,具体步骤可以参考ROS官方文档。 2. 安装OpenCV。在安装ROS之后,系统会自带一个版本的OpenCV。可以通过查看文件分布来确定OpenCV的安装位置,比如是否有pkgconfig文件夹、opencv.pc文件以及libopencv库的位置。可以参考相关博客或文档来查看这些信息\[1\]。 3. 如果需要安装其他版本的OpenCV,可以通过手动编译和安装来实现。首先,下载OpenCV的源代码,可以从OpenCV官方网站的Releases页面下载\[3\]。然后解压源代码,并进入解压后的目录。 4. 创建一个build目录,并进入该目录。然后使用cmake命令来配置编译选项,指定安装路径等。例如,可以使用以下命令进行配置: cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_GENERATE_PKGCONFIG=ON .. 这个命令将会生成一个opencv.pc文件,可以使用sudo updatedb和locate opencv.pc命令来查找该文件的位置\[3\]。 5. 配置完成后,使用make命令进行编译。可以使用make -j命令来加速编译过程。 6. 编译完成后,使用sudo make install命令来安装OpenCV。 7. 最后,根据需要,可以设置一些环境变量。例如,可以在.bashrc文件中添加以下语句: export PKG_CONFIG_PATH=/usr/local/opencv343/lib/pkgconfig export LD_LIBRARY_PATH=/usr/local/opencv343/lib export OpenCV_DIR=/usr/local/opencv343 这些环境变量可以帮助系统找到安装的OpenCV库\[2\]。 请注意,以上步骤仅供参考,具体操作可能会因系统版本和安装方式的不同而有所差异。建议在进行操作之前,先查阅相关文档和教程,以确保正确安装和配置ROS的OpenCV。 #### 引用[.reference_title] - *1* *3* [Ubuntu安装后续|ROS配置|opencv|qt|vscode](https://blog.csdn.net/lizhijian111/article/details/127528301)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [ubuntu18.04 opencv3.4.3 安装](https://blog.csdn.net/weixin_43112462/article/details/128067135)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

最新推荐

Windows 下编译opencv3+opencv_contrib方法

windows下环境:VS3+CUDA8.0+Cmake3.4.3详细步骤,附上一些错误以供参考,另附上一些opencv2.x与opencv3兼容的函数改动

300551古鳌科技财务报告资产负债利润现金流量表企业治理结构股票交易研发创新等1391个指标(2013-2022).xlsx

包含1391个指标,其说明文档参考: https://blog.csdn.net/yushibing717/article/details/136115027 数据来源:基于上市公司公告数据整理 数据期间:从具体上市公司上市那一年开始-2022年度的数据,年度数据 包含各上市公司股票的、多年度的上市公司财务报表资产负债表、上市公司财务报表利润表、上市公司财务报表现金流量表间接法、直接法四表合在一个面板里面,方便比较和分析利用 含各个上市公司股票的、多年度的 偿债能力 披露财务指标 比率结构 经营能力 盈利能力 现金流量分析 风险水平 发展能力 每股指标 相对价值指标 股利分配 11类财务指标分析数据合在一个面板里面,方便比较和分析利用 含上市公司公告的公司治理、股权结构、审计、诉讼等数据 包含1391个指标,如: 股票简称 证券ID 注册具体地址 公司办公地址 办公地址邮政编码 董事会秘书 董秘联系电话 董秘传真 董秘电子邮箱 ..... 货币资金 其中:客户资金存款 结算备付金 其中:客户备付金 .........

ssm数据结构课程网络学习平台的+vue毕业论文.doc

ssm数据结构课程网络学习平台的+vue毕业论文.doc

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire

Objective-C中的协议与代理设计模式介绍

# 1. 理解Objective-C中的协议 协议是Objective-C中一种很重要的特性,它类似于其他编程语言中的接口,用来定义对象之间的通信规则和行为约定。在Objective-C中,协议可以帮助实现对象之间的松耦合和重用性。让我们深入了解Objective-C中的协议。 ## 1.1 什么是Objective-C中的协议? 在Objective-C中,协议是一组方法的声明,定义了一个对象可以遵循的接口。协议本身并不实现任何方法,而是规定遵循该协议的类需要实现协议中定义的方法。通过协议,可以在不同的类之间定义一组公共的行为和方法。 ## 1.2 协议的声明和使用方法 在Ob

编写求n!的函数f(int n),在主函数中输入两个整数m、n,然后调用函数求: C=m!/n!(m -n)!

好的,我可以编写这个函数。以下是代码示例: ```c++ #include <iostream> using namespace std; int f(int n) { if (n <= 1) { return 1; } else { return n * f(n - 1); } } int main() { int m, n; cout << "请输入两个整数m和n,以空格分隔:" << endl; cin >> m >> n; int C = f(m) / (f(n) * f(m - n));

视频中运动目标跟踪算法的研究.doc

视频中运动目标跟踪算法的研究.doc

"互动学习:行动中的多样性与论文攻读经历"

多样性她- 事实上SCI NCES你的时间表ECOLEDO C Tora SC和NCESPOUR l’Ingén学习互动,互动学习以行动为中心的强化学习学会互动,互动学习,以行动为中心的强化学习计算机科学博士论文于2021年9月28日在Villeneuve d'Asq公开支持马修·瑟林评审团主席法布里斯·勒菲弗尔阿维尼翁大学教授论文指导奥利维尔·皮耶昆谷歌研究教授:智囊团论文联合主任菲利普·普雷教授,大学。里尔/CRISTAL/因里亚报告员奥利维耶·西格德索邦大学报告员卢多维奇·德诺耶教授,Facebook /索邦大学审查员越南圣迈IMT Atlantic高级讲师邀请弗洛里安·斯特鲁布博士,Deepmind对于那些及时看到自己错误的人...3谢谢你首先,我要感谢我的两位博士生导师Olivier和Philippe。奥利维尔,"站在巨人的肩膀上"这句话对你来说完全有意义了。从科学上讲,你知道在这篇论文的(许多)错误中,你是我可以依

Objective-C中的推送通知与APNs实现

# 1. 推送通知简介 推送通知是移动应用开发中常用的一种技术,它可以向用户发送消息、提醒或通知,即使用户并未在使用应用时也能及时获取重要信息。在Objective-C中,实现推送通知需要使用苹果提供的苹果推送通知服务(APNs)。本章将介绍推送通知的基础知识,包括推送通知的概念、作用和原理。接下来我们将深入了解。 ### 1.1 什么是推送通知 推送通知是通过网络将消息发送到设备的一种技术。应用程序可以向设备发送推送通知,无论用户当前是否在使用该应用,都可以及时获取到消息或通知。用户收到推送通知后,可以通过通知中的内容了解到消息的来源和内容,以便及时处理。 ### 1.2 推送通知的

php中,跳转语句有break和contimue

其实,`break`和`continue`并不是跳转语句,它们是用于控制循环语句的关键字。 `break`用于中断循环,跳出当前循环结构(如`for`、`while`、`do-while`),执行循环结构后面的语句。如果`break`语句后面跟着一个数字n,则表示跳出第n层循环。例如: ``` for ($i = 0; $i < 10; $i++) { for ($j = 0; $j < 10; $j++) { if ($j == 5) { break 2; // 跳出两层循环 } } } ``` `continue