Ubuntu 22.04 安装配置opencv


OpenCV下载:https://opencv.org/releases/

​编译与安装

  • 安装cmake
    OpenCV需要使用cmake进行编译
sudo apt-get install cmake
  • 安装依赖
sudo apt-get install build-essential pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
  • 解压
unzip opencv-4.4.0
  • 进入文件目录,创建build目录并进入
cd opencv-4.4.0/
mkdir build
cd build
  • 使用cmake生成makefile文件
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_GTK=ON -D OPENCV_GENERATE_PKGCONFIG=YES ..

CMAKE_BUILD_TYPE=RELEASE:表示编译发布版本
CMAKE_INSTALL_PREFIX:表示生成动态库的安装路径,可以自定义
WITH_GTK=ON:这个配置是为了防止GTK配置失败:即安装了libgtk2.0-dev依赖,还是报错未安装
OPENCV_GENERATE_PKGCONFIG=YES:表示自动生成OpenCV的pkgconfig文件,否则需要自己手动生成。

  • 编译
make -j$(nproc)

使用多个系统内核进行编译,从而提高编译速度,如果编译时报错,可以尝试不使用多个内核编译,虽然需要更长的编译时间,但是可以避免一些奇怪的报错

  • 安装
sudo make install

环境配置

  • 将OpenCV的库添加到系统路径

sudo vim /etc/ld.so.conf

在文件中加上一行

include /usr/loacal/lib

sudo ldconfig

sudo vim /etc/bash.bashrc

#在文末添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
source /etc/bash.bashrc

#使用以下命令查看是否安装和配置成功
pkg-config --modversion opencv4
pkg-config --cflags opencv4
pkg-config --libs opencv4

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/60498.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 216-组合总数Ⅲ

题目链接&#xff1a;LeetCode216 欢迎留言交流&#xff0c;每天都会回消息。 class Solution {List<List<Integer>> rs new ArrayList<>();LinkedList<Integer> path new LinkedList<>();public List<List<Integer>> combinati…

Python 获取PDF的各种页面信息(页数、页面尺寸、旋转角度、页面方向等)

目录 安装所需库 Python获取PDF页数 Python获取PDF页面尺寸 Python获取PDF页面旋转角度 Python获取PDF页面方向 Python获取PDF页面标签 Python获取PDF页面边框信息 了解PDF页面信息对于有效处理、编辑和管理PDF文件至关重要。PDF文件通常包含多个页面&#xff0c;每个页…

Github配置ssh key原理及操作步骤

文章目录 配置SSH第一步&#xff1a;检查本地主机是否已经存在ssh key第二步&#xff1a;生成ssh key第三步&#xff1a;获取ssh key公钥内容第四步&#xff1a;Github账号上添加公钥第五步&#xff1a;验证是否设置成功验证原理 往github上push项目的时候&#xff0c;如果走ht…

爬虫学习8

Frida是一个动态代码插桩工具&#xff0c;允许开发者在运行时修改和调试应用程序 import ...&#xff1a;这行代码表示导入所需的模块或库&#xff0c;但具体的导入内容在图片中被省略了。 rdev frida.get_remote_device()&#xff1a;这行代码获取一个远程设备实例&#xff…

【动手学电机驱动】STM32-FOC(6)基于 IHM03 的无感方波控制

STM32-FOC&#xff08;1&#xff09;STM32 电机控制的软件开发环境 STM32-FOC&#xff08;2&#xff09;STM32 导入和创建项目 STM32-FOC&#xff08;3&#xff09;STM32 三路互补 PWM 输出 STM32-FOC&#xff08;4&#xff09;IHM03 电机控制套件介绍 STM32-FOC&#xff08;5&…

图像匹配验证码自动检测:基于YOLOv10和传统图像匹配算法

图像匹配验证码自动检测&#xff1a;基于YOLOv10和传统图像匹配算法 图像匹配验证码自动检测&#xff1a;基于YOLOv10和传统图像匹配算法 引言图像采集YOLOv10目标检测图像匹配1.计算两张图像的灰度直方图相似性2. RGB通道分离后的直方图相似度计算3. 感知哈希算法3. 均值哈希算…

POI word转pdf乱码问题处理

1.使用poi 转换word文档成pdf 导入依赖 <dependency><groupId>com.aspose</groupId><artifactId>words</artifactId><version>16.8.0</version></dependency>2.代码实现: SneakyThrowspublic void wordToPdf(String docPath,…

平替 Spring 正当时!Solon v3.0.3 发布

Solon 框架&#xff01; Java “新式”应用开发框架。开放原子开源基金会&#xff0c;孵化项目。从零开始构建&#xff08;非 java-ee 架构&#xff09;&#xff0c;有灵活的接口规范与开放生态。 追求&#xff1a; 更快、更小、更简单提倡&#xff1a; 克制、简洁、高效、开…

C03S03-Linux网络之DNS服务器

一、DNS 1. DNS概述 DNS&#xff08;域名系统、Domain Name System&#xff09;是将域名和IP地址相互映射的一个分布式数据库&#xff0c;方便用户访问互联网。IP地址是互联网上所有设备的唯一标识&#xff0c;设备之间的通信依赖于IP地址。DNS使得用户在访问网站时不需要记住…

华为云全球加速GA该在什么场景使用呢?

在全球化的商业环境中&#xff0c;企业面临着如何快速、稳定地扩展全球业务的挑战。华为云全球加速&#xff08;GA&#xff09;作为一款高效的全球网络加速服务&#xff0c;致力于帮助企业提升全球用户的访问体验&#xff0c;确保业务的稳定运行。九河云来和大家介绍一下什么是…

鸿蒙系统的发展及开发者机遇

鸿蒙系统&#xff08;HarmonyOS&#xff09;凭借其分布式架构和跨设备协同能力&#xff0c;展现出强大的发展潜力&#xff0c;在智能手机、智能穿戴、车载、家居等行业领域应用日益广泛&#xff0c;已逐渐形成与安卓、iOS 三足鼎立的市场格局。 开发者面临的挑战 1. 技术适应与…

WPF中Prism框架中 IContainerExtension 和 IRegionManager的作用

在Prism框架中&#xff0c;IContainerExtension和IRegionManager扮演着重要的角色&#xff0c;具体作用如下&#xff1a; IContainerExtension IContainerExtension接口是Prism 7中引入的&#xff0c;用于抽象依赖注入容器的操作。它实现了IContainerProvider和IContainerReg…

【C++】string(一)

大家好&#xff0c;我是苏貝&#xff0c;本篇博客带大家了解C的string类&#xff0c;如果你觉得我写的还不错的话&#xff0c;可以给我一个赞&#x1f44d;吗&#xff0c;感谢❤️ 目录 1. 标准库中的string类1.1 string类(了解)1.2 string类的常用接口说明(A) string类对象的…

qt QSyntaxHighlighter详解

1、概述 QSyntaxHighlighter是Qt文本处理框架中的一个强大工具&#xff0c;它专门用于实现文本编辑器中的语法高亮功能。通过自定义高亮规则&#xff0c;QSyntaxHighlighter可以实现对代码编辑器、富文本编辑器中的关键字、注释等内容的高亮显示。这一功能对于提升代码的可读性…

第二天python笔记

Print(内容) Print(value,…,sep ,end\,n,fileNone) 字符串不管用几个单引号或双引号都能输出 sep是分隔符&#xff0c;逗号 默认显示空格分隔, 号可以连接前后’字符串’&#xff0c;不用写sep end是结束语 Chr()ascll值转字母文字 Ord()查找这个的ascll值 #单行注释,快…

方案丨车险保单OCR:3秒钟完成保单审核

在涉及车辆交易的各种情况下&#xff0c;记录和管理车险保单信息是一项必不可少的任务。然而&#xff0c;面对数量庞大的电子保单&#xff0c;传统的手工录入方式显得尤为低效——它不仅消耗大量时间&#xff0c;而且容易出现错误&#xff0c;这不仅影响了用户的满意度&#xf…

【数据结构】汇编 、机器语言 高级语言 简析。

汇编语言、机器语言和高级语言 1. 机器语言&#xff08;Machine Language&#xff09; 定义&#xff1a;机器语言是计算机能够直接执行的、用二进制编码的指令集&#xff0c;属于最低级别的编程语言。它由 0 和 1 组成&#xff0c;每条指令由一串二进制数表示。机器语言与计算…

有效提升网站流量的SEO技巧分享

内容概要 在数字时代&#xff0c;SEO&#xff08;搜索引擎优化&#xff09;已经成为提升网站曝光度和吸引访问者的重要工具。SEO的核心目标是通过优化网站的各个方面&#xff0c;提高在搜索引擎结果页面上的排名&#xff0c;从而获得更多的自然流量。有效的SEO策略能够让您在激…

【go从零单排】JSON序列化和反序列化

&#x1f308;Don’t worry , just coding! 内耗与overthinking只会削弱你的精力&#xff0c;虚度你的光阴&#xff0c;每天迈出一小步&#xff0c;回头时发现已经走了很远。 &#x1f4d7;概念 在 Go 语言中&#xff0c;处理 JSON 数据主要依赖于 encoding/json 包。这个包提…

虚幻引擎 CEO 谈元宇宙:发展、策略与布局

在当今科技领域&#xff0c;元宇宙无疑是最热门的话题之一。Epic Games 首席执行官 Tim Sweeney 对元宇宙的未来发展充满信心&#xff0c;他认为开放元宇宙将融合娱乐、游戏和科技产业&#xff0c;带来一个光明的未来。本文将深入探讨采访中的关键内容&#xff0c;分析元宇宙的…