当前位置: 首页 > article >正文

懒人笔记-opencv4.8.0篇

懒人笔记-opencv4.8.0篇

  • 前言
  • 1、卸载 opencv3.4.3
    • 1.1 cmake
    • 1.2 编译过程
    • 1.3 卸载
    • 1.4 检查代码是否卸载干净
  • 2、安装 opencv4.8.0
    • 2.1 安装依赖
    • 2.2 创建编译目录
    • 2.3 设置编译选项
    • 2.4 执行编译命令
    • 2.5 环境配置
      • 2.5.1、环境配置添加库路径
      • 2.5.2 更新系统
      • 2.5.3 配置bash
      • 2.5.4 保存退出,然后执行如下命令使得配置生效
    • 2.6 报错,找不到cv

前言

之前安装了opencv 3.4.3 版本,后来图像处理的原因,升级到opencv4.8.0版本,升级是成功了,但是调用失败,不认cv命名空间,一堆百度也没有找到问题所在,后来 pkg-config --modversion opencv4 查了下版本号,发现调用的还是之前的版本,既然如此就只能用暴力手段了,重装!

1、卸载 opencv3.4.3

之前删除了cmake相应的文件夹,所以需要重新在安装下,如下:

1.1 cmake

sudo cmake -D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=/usr/local
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.3/modules
-D INSTALL_C_EXAMPLES=ON
-D BUILD_EXAMPLES=ON

以上命令可以参考 《懒人笔记-opencv篇》

1.2 编译过程

make -j$(nproc)
sudo make install

1.3 卸载

sudo make uninstall
cd …
sudo rm -r release
sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV /usr/local/bin/opencv* /usr/local/lib/libopencv*

sudo apt-get --purge remove opencv-doc opencv-data python-opencv

1.4 检查代码是否卸载干净

pkg-config opencv --libs
pkg-config opencv --modversion
sudo find / -name “opencv

2、安装 opencv4.8.0

2.1 安装依赖

sudo apt update

sudo apt install build-essential cmake git pkg-config libgtk-3-dev

sudo apt install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

sudo apt install libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev

sudo apt install openexr libatlas-base-dev python3-dev python3-numpy

sudo apt install libtbb2 libtbb-dev libdc1394-22-dev

sudo apt install fortran 这个命令可能不成功,不过不影响

2.2 创建编译目录

进入opencv4.8.0的目录,创建文件夹并进入
sudo mkdir release
cd release

2.3 设置编译选项

sudo cmake -D CMAKE_BUILD_TYPE=RELEASE \

           -D CMAKE_INSTALL_PREFIX=/usr/local \

           -D INSTALL_C_EXAMPLES=ON \

          -D INSTALL_PYTHON_EXAMPLES=ON \

          -D OPENCV_GENERATE_PKGCONFIG=ON \

          -D OPENCV_EXTRA_MODULES_PATH=~/opencv_build/opencv_contrib/modules \  这里用绝对路径

         -D BUILD_EXAMPLES=ON ..

2.4 执行编译命令

make -j$(nproc)

sudo make install

sudo ldconfig

2.5 环境配置

2.5.1、环境配置添加库路径

sudo vim /etc/ld.so.conf.d/opencv.conf
#打开后可能是空文件,在文件内容最后添加
/usr/local/lib

2.5.2 更新系统

sudo ldconfig

2.5.3 配置bash

sudo vim /etc/bash.bashrc
在末尾添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

2.5.4 保存退出,然后执行如下命令使得配置生效

source /etc/bash.bashrc
激活配置然后更新database
sudo updatedb

查看下版本和库
pkg-config opencv --libs
pkg-config opencv --modversion

2.6 报错,找不到cv

后面参考example,在进行工程编译的时候,发现报找不到cv的错误,最终通过降opencv4下的opencv2文件夹复制一份到和opencv4同级目录才得以解决。

参考博客:https://blog.51cto.com/u_16213621/10688172


http://www.kler.cn/news/295015.html

相关文章:

  • 【详解 Java 注解】
  • 一些数学经验总结——关于将原一元二次函数增加一些限制条件后最优结果的对比(主要针对公平关切相关的建模)
  • 分数阶微积分MATLAB计算
  • 将你的github仓库设置为web代理
  • Java零基础-如何在分布式系统中进行日志管理?
  • 【鸿蒙】HarmonyOS NEXT星河入门到实战1-开发环境准备
  • Vulnhub:Dr4g0n b4ll 1
  • Qt/C++开源项目 TCP客户端调试助手(源码分享+发布链接下载)
  • <class ‘pyspark.sql.dataframe.DataFrame‘>
  • Eureka原理与实践:构建高可用微服务架构的基石
  • MCU5.51单片机的最小系统
  • IDEA git提交时如何忽略某个文件或文件夹
  • 任务执行拓扑排序(华为od机考题)
  • Elasticsearch - SpringBoot 索引与文档相关demo
  • Spring Boot 部署方案!打包 + Shell 脚本详解
  • 【知识分享】MQTT实战-使用mosquitto客户端连接emqx服务器
  • 【人工智能】Transformers之Pipeline(十五):总结(summarization)
  • ubuntu上通过openvswitch卸载实现roce over vxlan
  • 橘子学ES实战操作之管道类型Ingest pipelines的基本使用
  • Kubernetes 1.25 containerd 环境部署 SuperMap iManager
  • 【MRI基础】TR 和 TE 时间概念
  • 文心快码前端工程师观点分享:人机协同新模式的探索之路(三)
  • day44-测试平台搭建之前端vue学习-基础4
  • java-redis-雪崩
  • QString如何格式化字符串
  • 3.门锁_STM32_矩阵按键设备实现
  • 手机同时传输USB功能与充电的实现及LDR6500的作用
  • Java爬虫开发:Jsoup库在图片URL提取中的实战应用
  • 使用Node-API进行线程安全开发
  • 枚举和联合体