OpenCV开发:编译安装opencv

OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库。它为开发者提供了丰富的工具和函数,用于处理图像和视频数据,以及执行各种计算机视觉任务。

以下是 OpenCV 的一些主要特点和功能:

  1. 跨平台性:OpenCV 支持多个操作系统,包括 Windows、Linux、macOS 等,可以在不同平台上运行。

  2. 图像处理:提供了丰富的图像处理功能,包括图像滤波、转换、几何变换、颜色空间转换等。

  3. 特征检测和描述:可以进行关键点检测、特征描述、特征匹配等操作,常用于对象识别、图像配准等任务。

  4. 目标检测和跟踪:提供了各种目标检测和跟踪算法,如 Haar 级联检测器、基于深度学习的物体检测器等。

  5. 机器学习支持:集成了机器学习库,可用于训练和应用分类器、聚类器等模型。

  6. 摄像机标定和运动估计:能够进行摄像机标定,估计摄像机的内部和外部参数,并进行运动估计。

  7. 图像和视频 I/O:支持从多种来源读取图像和视频数据,并提供保存处理结果的功能。

  8. 高效性能:OpenCV 使用优化的 C/C++ 代码实现,性能较高,并提供了 Python、Java 等语言的接口。

OpenCV 通过丰富的文档和示例,使得开发者可以利用其强大的功能进行图像处理、计算机视觉和机器学习应用的开发和研究。它被广泛应用于医疗图像分析、安全监控、自动驾驶、增强现实等领域。

下载opencv源码

git clone https://github.com/opencv/opencv.git

源码同级创建编译目录

mkdir build
cd build

构建Makefile

cmake -DCMAKE_BUILD_TYPE=Debug -DBUILD_EXAMPLES=ON ../opencv

编译安装结果

--   Other third-party libraries:
--     Lapack:                      YES (/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/System/Library/Frameworks/Accelerate.framework -lm -ldl)
--     Eigen:                       NO
--     Custom HAL:                  YES (carotene (ver 0.0.1))
--     Protobuf:                    build (3.19.1)
--     Flatbuffers:                 builtin/3rdparty (23.5.9)
-- 
--   OpenCL:                        YES (no extra features)
--     Include path:                NO
--     Link libraries:              -framework OpenCL
-- 
--   Python (for build):            /usr/bin/python3
-- 
--   Java:                          
--     ant:                         NO
--     Java:                        YES (ver 19.0.2)
--     JNI:                         /Users/zhb/Library/Java/JavaVirtualMachines/openjdk-19.0.2/Contents/Home/include /Users/zhb/Library/Java/JavaVirtualMachines/openjdk-19.0.2/Contents/Home/include/darwin /Users/zhb/Library/Java/JavaVirtualMachines/openjdk-19.0.2/Contents/Home/include
--     Java wrappers:               YES (JAVA)
--     Java tests:                  NO
-- 
--   Install to:                    /usr/local
-- -----------------------------------------------------------------
-- 
-- Configuring done (37.1s)
-- Generating done (1.3s)
-- Build files have been written to: /Users/zhb/dev/cv/lib/build

编译安装

make -j7
sudo make install

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

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

相关文章

【Java】Spring Bean有几种配置方式?

定义 Spring Bcan 的3 种方式分别是:基于XML 的方式配置、基于注解扫播方式配置、基于元数据类的配置。 SpringBean是Spring中最基本的组成单元,Spring 官方文档对 Bean 的解释是这样的:In Spring, the objects that form the backbone of your application and tha…

华为HCIP认证H12-821题库上

1、2.OSPF核心知识 (单选题)下面关于0SPF的特殊区域,描述错误的是: A、Totally Stub Area允许ABR发布缺省的三类LSA,不接受五类LSA和细化三类LSA B、NSSA Area和Stub区域的不同在于该区域允许自治系统外部路由的引入,由ABR发布…

Linux完成mysql数据库的备份与恢复

背景: 在进行数据报表的测试过程中,为了让我们的测试数据更加真实,因此我们需要同步生产数据到测试环境。方式有很多种,我这里介绍的是通过Linux完成数据同步。 备份数据: 执行命令:mysqldump -uxxx -pxxx…

PyCharm连接远程服务器

要求:PyCharm专业版才支持远程服务 一、创建远程连接 先建立本地与远程服务器之间的SSH连接 1、配置连接 2、建立SSH连接,选择文件传输协议 SFTP 3、设置服务器名(可以随意命名) 4、配置 SSH连接 点击 172.18.1.202 配置…

字符串排序算法

题目描述: 题目描述 设计一个程序,实现对输入字符串数组按字符串长度进行排序功能。具体要求如下:编写函数void sortByLength(char *strArray[], int numStrings);,用于对输入的字符串数组 strArray 按字符串长度进行升序排序。在…

bugkuctf web随记wp

常规思路: 1,源码2,抓包3,御剑dirsearch扫后台检查是否有git文件未删除4,参数 本地管理员:1,cu看源码,sci看源码有一串东西2,base64解码后是test123猜测是密码3&#x…

数据处理架构

目录 Lambda架构 Kappa架构 Lambda架构 Lambda架构由Twitter的首席科学家Nathan Marz提出。这种架构试图平衡延迟、吞吐量、容错性和系统复杂性四个方面,以满足大数据和实时数据处理的需求。Lambda架构主要由三个层次组成: 批处理层(Batch…

ChatGPT热门项目

1.智能GPT 项目地址:智能GPT:你只要提供OpenAI的API Key,那么它就可以根据你设定的目标,采用Google搜索、浏览网站、执行脚本等方式 主要语言:Python 推荐理由:这是由开发者Significant Gravitas推出的项目…

103基于matlab的极限学习机(ELM)和改进的YELM和集成极限学习机(EELM)是现在流行的超强学习机

基于matlab的极限学习机(ELM)和改进的YELM和集成极限学习机(EELM)是现在流行的超强学习机,该程序是三者的方法比对。 包括学习时间,训练精度和测试精度的对比。数据可更换自己 的,程序已调通,可直接运行…

从零开发短视频电商 OpenSearch/Elasticsearch 查询总结

文章目录 Match Queries(全文查询)Term Queries(词项查询)Range Queries(范围查询)Wildcard Queries(通配符查询)Fuzzy Queries(模糊查询)Prefix Queries&…

SpringBoot之数组,集合,日期参数的详细解析

1.4 数组集合参数 数组集合参数的使用场景:在HTML的表单中,有一个表单项是支持多选的(复选框),可以提交选择的多个值。 多个值是怎么提交的呢?其实多个值也是一个一个的提交。 后端程序接收上述多个值的方式有两种: 数…

MacOS升级指定的系统

问题描述: Mac升级系统,如果使用默认推送的升级可能会升级到最新 的版本,那么怎样才能升级制定的系统呢?1. 搜索“macOS安装器” 2. 点击“使用App store 或浏览器下载macOS安装器” 3. 选择需要的系统,使用App Store …

飞天使-docker知识点5-资源限制与容器的不同状态

文章目录 cpu和内存的限制内存限制的部分参数容器的不同状态docker images 的分层docker registry制作镜像 cpu和内存的限制 默认情况下,容器没有资源限制,可以使用主机内核调度程序允许的尽可能多的 给定资源,Docker 提供了控制容器可以限制…

JavaWeb项目中已经导入依赖却报错依赖不存在

问题描述 在使用 Maven Servlet Tomcat 来搭建 JavaWeb 项目时,在 pom.xml 中正确引入了依赖,编码过程中也能够正常使用。但是在启动 Tomcat 之后(启动时或启动后),却报错显示该依赖不存在。 可能原因 pom.xml 的…

品牌如何做好软文营销?媒介盒子分享

许多公司在做软文营销时,试图通过运营不同平台来扩大其覆盖范围,他们希望通过这种方式触达更多受众,然而如果品牌软文没有质感,就会被用户抛弃。今天媒介盒子就来和大家聊聊:品牌方做内容时如何加强质感。 一、 营销需…

12.14_黑马数据结构与算法笔记Java

目录 120 二叉搜索树 min max 121 二叉搜索树 put 122 二叉搜索树 前任后任1 123 二叉搜索树 前任后任2 124 二叉搜索树 删除1 125 二叉搜索树 删除2 126 二叉搜索树 删除3 127 二叉搜索树 删除 递归1 128 二叉搜索树 删除 递归2 129 二叉搜索树 范围查询 130 二叉搜…

Elasticsearch 查询语法

引言 Elasticsearch(ES)是一个高度可扩展的开源全文搜索和分析引擎。它允许你快速、实时地存储、搜索和分析大量数据。ES 强大的查询语言是其核心功能之一,它提供了多种查询类型来满足各种复杂的搜索需求。在这篇博客中,我们将深…

【超图】SuperMap iClient3D for WebGL/WebGPU —— 单体gltf模型与Blender中的方向对应关系

作者:taco 在很多包含动画的场景中,像模拟小人的行走、模拟火车的轨迹运行,又或者是模拟风力发电等等等。我们通常会加一些动画模型到里面。而有的时候可能会出现,这火车怎么倒着走啊!这人怎么头朝下啊。这种方向的问题…

WPS Office JS宏实现Excel转换为JSON格式数据

通过Excel JS宏,将表格中的数据以”列“形式导出为JSON数据格式。 我们在整理文档时,产品会通过Excel将功能点和功能描述分层级整理出来,有时需要将此数据导入到系统中,Web端对Json这类数据比较友好,所以这里试着使用E…

说说React中setState和replaceState的区别?

在 React 中,setState()和 replaceState()是用于更新组件状态的两个方法。它们之间有一些区别。 1)setState(newState):setState() 方法用于更新组件的状态。它接收一个新状态对象作为参数,并将新状态与当前状态合并。React 会合并状态更新并…