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安装

相关推荐
说私域24 分钟前
桑德拉精神与开源链动2+1模式AI智能名片S2B2C商城小程序的协同价值研究
人工智能·小程序·开源·零售
视觉语言导航33 分钟前
武汉大学无人机视角下的多目标指代理解新基准!RefDrone:无人机场景指代表达理解数据集
人工智能·深度学习·无人机·具身智能
艾醒(AiXing-w)1 小时前
探索大语言模型(LLM):国产大模型DeepSeek vs Qwen,谁才是AI模型的未来?
大数据·人工智能·语言模型
巷9551 小时前
YOLO v2:目标检测领域的全面性进化
人工智能·yolo·目标检测
Cloud Traveler1 小时前
从 “学会学习” 到高效适应:元学习技术深度解析与应用实践
人工智能·学习·自然语言处理
数澜悠客1 小时前
AI规则引擎:解锁SQL数据分析新姿势
数据库·人工智能·oracle
蹦蹦跳跳真可爱5891 小时前
Python----神经网络(《Inverted Residuals and Linear Bottlenecks》论文概括和MobileNetV2网络)
网络·人工智能·python·深度学习·神经网络
Mory_Herbert1 小时前
5.2 参数管理
人工智能·pytorch·深度学习·神经网络·机器学习
hanniuniu131 小时前
强力巨彩谷亚推出专业智慧显示屏,满足多元场景需求
人工智能
He_Donglin2 小时前
Data Mining|缺省值补全实验
人工智能·机器学习·数据挖掘