ubuntu22.04@laptop OpenCV定制化安装

ubuntu22.04@laptop OpenCV定制化安装

  • [1. 源由](#1. 源由)
  • [2. 默认配置](#2. 默认配置)
  • [3. 定制配置](#3. 定制配置)
  • [4. 定制安装](#4. 定制安装)
  • [5. 定制OpenCV-4.9.0](#5. 定制OpenCV-4.9.0)
    • [5.1 修改opencv.conf](#5.1 修改opencv.conf)
    • [5.2 加载so文件](#5.2 加载so文件)
    • [5.3 修改bash环境变量](#5.3 修改bash环境变量)
    • [5.4 增加pkgconfig](#5.4 增加pkgconfig)
    • [5.5 检查OpenCV-4.9.0安装](#5.5 检查OpenCV-4.9.0安装)
  • [6. 总结](#6. 总结)
  • [7. 参考资料](#7. 参考资料)

1. 源由

目前,能Google到的代码层次不齐,且OpenCV库本身就在不断迭代更新。

因此,在实际使用过程涉及到版本之间的差异,同样环境不同OpenCV版本的对比验证就显得尤为重要。

本章节就将针对这个特殊的需求进行整理,供需要使用的朋友进行参考。

2. 默认配置

通常通过apt工具安装deb文件,都是安装在默认位置。

  • /usr/local/lib so文件位置
  • /usr/local/include h头文件位置

3. 定制配置

定制化的安装流程,需要在编译的时候指定安装文件临时存放的位置。

注:这里引用了一些宏定义,后续github脚本版本中提供。

复制代码
-D CMAKE_INSTALL_PREFIX=$SNAPDRAGONFLY_CURRENT_DIR_PATH/installation/opencv-"$cvVersion" \

比如:期望安装路径为:/opt/opencv-4.9.0

复制代码
-D CMAKE_INSTALL_PREFIX=/opt/opencv-4.9.0 \

4. 定制安装

整个代码编译过程详见:ubuntu22.04@laptop OpenCV安装

注:配置时,请增加宏定义符号-D CMAKE_INSTALL_PREFIX=/opt/opencv-4.9.0

复制代码
cmake -D CMAKE_BUILD_TYPE=RELEASE \
      -D WITH_TBB=ON \
      -D BUILD_TBB=OFF \
      -D WITH_V4L=ON \
      -D WITH_QT=ON \
      -D WITH_OPENGL=ON \
	-D OPENCV_GENERATE_PKGCONFIG=ON \
	-D INSTALL_PYTHON_EXAMPLES=ON \
	-D INSTALL_C_EXAMPLES=ON \
	-D CMAKE_INSTALL_PREFIX=/opt/opencv-4.9.0 \
	-D OPENCV_PYTHON3_INSTALL_PATH=$SNAPDRAGONFLY_CURRENT_DIR_PATH/opencv-$cvVersion-py3/lib/python3.10/site-packages \
	-D OPENCV_ENABLE_NONFREE=ON \
	-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \
	-D PYTHON_EXECUTABLE=../../opencv-$cvVersion-py3/bin/python3 \
	-D BUILD_EXAMPLES=ON ..

脚本make install执行完成后,所有文件将会直接安装到/opt/opencv-4.9.0

5. 定制OpenCV-4.9.0

5.1 修改opencv.conf

复制代码
$ sudo vim /etc/ld.so.conf.d/opencv.conf
$ sudo cat /etc/ld.so.conf.d/opencv.conf
/opt/opencv-4.9.0
$ ls /opt/
opencv-4.9.0

5.2 加载so文件

复制代码
$ sudo ldconfig

5.3 修改bash环境变量

复制代码
$ sudo vi /etc/bash.bashrc
$ sudo cat /etc/bash.bashrc |tail -n 2
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
$ source /etc/bash.bashrc
$ echo $PKG_CONFIG_PATH
:/usr/local/lib/pkgconfig
$ sudo mkdir -p /usr/local/lib/pkgconfig

5.4 增加pkgconfig

复制代码
$ cd /opt/opencv-4.9.0
$ find ./ -name opencv4.pc
./lib/pkgconfig/opencv4.pc
$ sudo cp ./lib/pkgconfig/opencv4.pc /usr/local/lib/pkgconfig

5.5 检查OpenCV-4.9.0安装

复制代码
$ pkg-config --cflags opencv4
-I/opt/opencv-4.9.0/include/opencv4

6. 总结

安装上述方法,可以安装多个OpenCV环境,比如:

  • OpenCV 4.0.0
  • OpenCV 4.9.0

仅需要在使用的时候,替换不同版本的opencv4.pc配置文件即可。

7. 参考资料

【1】ubuntu22.04@laptop OpenCV安装

相关推荐
whaosoft-1431 小时前
51c自动驾驶~合集7
人工智能
刘晓倩4 小时前
Coze智能体开发实战-多Agent综合实战
人工智能·coze
石迹耿千秋5 小时前
迁移学习--基于torchvision中VGG16模型的实战
人工智能·pytorch·机器学习·迁移学习
路人蛃8 小时前
通过国内扣子(Coze)搭建智能体并接入discord机器人
人工智能·python·ubuntu·ai·aigc·个人开发
CV-杨帆8 小时前
论文阅读:arxiv 2025 A Survey of Large Language Model Agents for Question Answering
论文阅读·人工智能·语言模型
绝顶大聪明8 小时前
【深度学习】神经网络-part2
人工智能·深度学习·神经网络
加百力9 小时前
AI助手竞争白热化,微软Copilot面临ChatGPT的9亿下载挑战
人工智能·microsoft·copilot
Danceful_YJ9 小时前
16.使用ResNet网络进行Fashion-Mnist分类
人工智能·深度学习·神经网络·resnet
香蕉可乐荷包蛋10 小时前
AI算法之图像识别与分类
人工智能·学习·算法
张较瘦_10 小时前
[论文阅读] 人工智能 + 软件工程 | 当LLMs遇上顺序API调用:StateGen与StateEval如何破解测试难题?
论文阅读·人工智能