Python 3.x 安装opencv+opencv_contrib的操作方法

Python 3.x 安装opencv+opencv_contrib的操作方法:

  1. 安装依赖库

在Linux系统中,先安装一些必要的依赖库:

sudo apt-get install build-essential cmake unzip pkg-config
sudo apt-get install libjpeg-dev libpng-dev libtiff-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install libgtk2.0-dev
sudo apt-get install libcanberra-gtk-module
  1. 下载opencv和opencv_contrib源码

下载最新版本的opencv和opencv_contrib源码,解压并进入目录:

wget https://github.com/opencv/opencv/archive/4.5.4.zip
unzip 4.5.4.zip
cd opencv-4.5.4/

wget https://github.com/opencv/opencv_contrib/archive/4.5.4.zip
unzip 4.5.4.zip
cd opencv_contrib-4.5.4/
  1. 编译安装opencv

在opencv源码目录下新建一个build目录,进入build目录:

mkdir build
cd build/

运行cmake配置opencv,其中-D参数指定了opencv_contrib目录的位置:

cmake -D CMAKE_BUILD_TYPE=RELEASE \
      -D CMAKE_INSTALL_PREFIX=/usr/local \
      -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.5.4/modules \
      -D ENABLE_PRECOMPILED_HEADERS=OFF ..

cmake配置完成后,运行make进行编译:

make -j4

编译完成后,运行sudo make install进行安装:

sudo make install
  1. 测试安装结果

在Python环境中,import cv2并运行cv2.version,若输出版本号则代表安装成功。

示例一:

import cv2

image = cv2.imread("example.jpg")
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

cv2.imshow("Gray Image", gray)
cv2.waitKey(0)
cv2.destroyAllWindows()

该示例读取一张图片并将其转换为灰度图像,最后展示出来。

示例二:

import cv2
import numpy as np

image1 = cv2.imread("example1.jpg")
image2 = cv2.imread("example2.jpg")

result = cv2.addWeighted(image1, 0.7, image2, 0.3, 0)

cv2.imshow("Combined Image", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

该示例读取两张图片并进行加权合成,最后展示出来。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 3.x 安装opencv+opencv_contrib的操作方法 - Python技术站

(0)
上一篇 2023年5月25日
下一篇 2023年5月25日

相关文章

  • Django实现文章详情页面跳转代码实例

    当用户点击文章列表中某一篇文章时,需要将用户跳转到该文章的详情页面,这个过程中需要进行URL路由和视图函数的编写。下面就是Django实现文章详情页面跳转的完整攻略: 1.添加URL路由 首先需要在Django中添加URL路由。URL路由负责将请求的URL地址与名称相匹配的视图函数进行对应,进而返回相应的响应结果。在应用的urls.py文件中添加以下代码,表…

    人工智能概论 2023年5月24日
    00
  • Python 实现局域网远程屏幕截图案例

    下面我就为您详细讲解“Python 实现局域网远程屏幕截图案例”的完整攻略。 一、基本思路 要实现局域网远程屏幕截图,首先需要了解两个基本概念:客户端和服务器端。客户端是请求服务的一方,服务器端是提供服务的一方。 具体来说,我们需要使用 Python 构建一个服务器端程序,用于接收远程客户端发送的请求,并进行屏幕截图操作。同时,我们还需要编写一个客户端程序,…

    人工智能概论 2023年5月25日
    00
  • SpringCloud Stream消息驱动实例详解

    SpringCloud Stream消息驱动实例详解 本文将详细介绍Spring Cloud Stream的使用方法,包括如何使用Spring Cloud Stream进行消息驱动、如何构建生产者和消费者,并给出了两个示例说明。 什么是Spring Cloud Stream? Spring Cloud Stream是用于构建消息驱动微服务的框架,提供了一种简…

    人工智能概览 2023年5月25日
    00
  • python中pivot()函数基础知识点

    当我们需要对一个表格进行汇总统计时,可以使用Pandas库中的pivot函数来实现。pivot函数可以将表格中的行和列交换,数据也会随之相应变化,以实现特定的汇总要求。 使用Pandas库中的pivot函数,首先需要读取数据生成一个DataFrame数据框。然后,我们可以使用pivot函数来将DataFrame数据框进行重塑。 1. 语法格式 pivot函数…

    人工智能概览 2023年5月25日
    00
  • Django框架使用mysql视图操作示例

    下面是“Django框架使用mysql视图操作示例”的完整攻略。 什么是Django框架 Django是一个开放源代码的Web应用程序框架。使用Python编写,遵循MVC模式。Django的主要目标是使得开发复杂、数据库驱动的网站变得简单。Django注重快速开发、DRY原则、模块化设计。它使用鲁棒性、可重用性和可组合性开发高级功能和复杂性。 Django…

    人工智能概论 2023年5月25日
    00
  • 使用Python实现简单的学生成绩管理系统

    使用Python实现简单的学生成绩管理系统需要遵循以下步骤: 1. 确定系统需求和功能 首先需要明确学生成绩管理系统需要实现哪些功能,比如添加学生信息、添加成绩、查询学生成绩等。 2. 设计数据结构 根据系统需求和功能设计合适的数据结构,比如使用字典存储学生信息和成绩数据。 3. 实现代码 根据需求和数据结构设计实现完整的Python代码,其中需要包含添加、…

    人工智能概览 2023年5月25日
    00
  • Python应用自动化部署工具Fabric原理及使用解析

    Python应用自动化部署工具Fabric原理及使用解析 什么是Fabric Fabric 是一个基于 Python 的应用自动化部署工具,它可以快速、轻松地完成部署、系统管理和自动化任务的执行。Fabric 在 Python 的 paramiko 和 PyCrypto 库的基础上进行部署,使得远程命令执行和文件传输变得非常简单易用。 Fabric 的主要特…

    人工智能概论 2023年5月25日
    00
  • python使用pil进行图像处理(等比例压缩、裁剪)实例代码

    理解你的要求后,我将为你提供一篇详细的“Python使用PIL进行图像处理(等比例压缩、裁剪)实例代码”的攻略。 PIL简介 Python Imaging Library(PIL)是Python的一个常用图像处理库,通过使用PIL,可以方便地进行图像压缩、旋转、裁剪、调整大小等操作。PIL支持多种图像格式,如JPEG、PNG、BMP等。PIL的核心模块是PI…

    人工智能概览 2023年5月25日
    00
合作推广
合作推广
分享本页
返回顶部