一键安装 OpenCV:MILQ 热门脚本 install-opencv.sh 完整拆解与使用教程
【免费下载链接】milqUseful code of Manuel Ignacio López Quintero项目地址: https://gitcode.com/gh_mirrors/mi/milq
MILQ是开发者 Manuel Ignacio López Quintero 精选的开源代码合集,其中 install-opencv.sh 是项目里最热门的一键安装 OpenCV脚本:在 Ubuntu 或 Debian 上运行一次,即可自动完成系统更新、依赖安装、源码编译到 OpenCV 4.5.1 落地的全流程,是面向新手最省心的Ubuntu/Debian 源码安装 OpenCV方案。
🧰 为什么需要"一键安装 OpenCV"
手动编译 OpenCV 是出了名的繁琐:构建工具、GUI 库、媒体 I/O、视频编解码、并行计算、Python/Java 绑定……依赖动辄几十上百个包,任何一步漏装都会导致编译失败或功能缺失。
install-opencv.sh的价值在于:
- ✅一条命令跑完全程:从
apt-get update到make install全部自动化; - ✅依赖清单完整:涵盖图像、视频、并行计算、文档等场景所需的库;
- ✅多环境实测:脚本注释中保留了历次验证记录,可靠性经过时间检验;
- ✅支持可选增强:可配置安装 opencv_contrib 额外模块。
📦 先认识一下 MILQ 项目
MILQ 仓库按用途分为四大板块(详见 README.md):
| 目录 | 内容 |
|---|---|
examples/ | 有趣的代码示例,包括 OpenCV Viz 3D 可视化 demo |
learn/ | 教学用代码(PHP、C、Python、Shell 等基础练习) |
scripts/bash/ | 实用 Shell 脚本合集,主角install-opencv.sh就在这里 |
templates/ | C++ / Python / HTML 的项目空白模板 |
脚本一览见 scripts/bash/README.md,其中install-opencv.sh被官方描述为 "Installs OpenCV on Ubuntu or Debian"(在 Ubuntu 或 Debian 上安装 OpenCV)。
🔍 完整拆解:脚本如何分 4 步安装 OpenCV
打开 install-opencv.sh,整个流程被清晰地划分为 4 个阶段:
第 1 步:更新系统
先用apt-get update刷新软件源,确保后续安装的依赖都是较新版本(升级、清理命令以注释形式提供,按需启用)。
第 2 步:一次性装齐全部依赖
这是脚本最"值钱"的部分,按功能分组安装:
- 构建工具:build-essential、cmake
- GUI:qt5-default、libvtk6-dev(注释里还贴心说明了想换 GTK 界面该怎么改)
- 媒体 I/O:zlib、libjpeg、libpng、libtiff、libwebp 等编解码库
- 视频 I/O:libavcodec、libavformat、libx264 等一整套视频处理库
- 并行与线性代数:libtbb、eigen3
- Python / Java 绑定:python3-dev、numpy、default-jdk 等
- 文档工具:doxygen、unzip、wget
第 3 步:下载源码并用 CMake 配置
脚本默认下载OpenCV 4.5.1源码包并解压,然后在build目录执行cmake,开启 Qt 界面、OpenGL、VTK、TBB 并行、GDAL 地理空间数据等特性。如果启用了 contrib 模块,会额外指定-DOPENCV_EXTRA_MODULES_PATH指向 contrib 模块目录。
第 4 步:编译、安装并刷新动态库缓存
最后执行make -j8(8 线程并行编译)→sudo make install→sudo ldconfig,让系统正确找到刚装好的 OpenCV 动态库。
脚本结尾会提示你去运行 OpenCV 示例做最终验证——项目里恰好自带了现成示例(下一节介绍)。
🚀 快速上手:3 步运行 install-opencv.sh
第 1 步:获取脚本
git clone https://gitcode.com/gh_mirrors/mi/milq第 2 步:给脚本执行权限
cd milq chmod +x scripts/bash/install-opencv.sh第 3 步:一键运行
sudo bash scripts/bash/install-opencv.sh💡 编译过程可能需要 20~40 分钟,取决于 CPU 性能。建议挂一个 tmux/screen 会话,避免断连后前功尽弃。
⚙️ 进阶用法:两个选项改版本、换模块
脚本开头只有两个关键选项(install-opencv.sh 第 8-9 行):
OPENCV_VERSION='4.5.1' # Version to be installed OPENCV_CONTRIB='NO' # Install OpenCV's extra modules (YES/NO)- 改版本:把
OPENCV_VERSION改成你想要的版本号(需与 OpenCV 官方发布版本一致); - 加模块:把
OPENCV_CONTRIB改成YES,脚本会自动下载对应版本的 opencv_contrib 并一起编译,获得 SIFT、xfeatures2d 等额外算法模块——这是"Debian 安装 OpenCV 4.x 含 contrib 模块"的正确姿势。
脚本注释中还保留了历次测试记录,例如 Ubuntu 20.04 LTS + OpenCV 4.5.1 验证通过,可作为你选择版本组合的参考依据。
🧪 安装后验证:跑一个 OpenCV Viz 示例
MILQ 自带一个最小 OpenCV 示例:examples/cpp/opencv/viz/demo.cpp,它会在一个 3D 窗口中绘制坐标系和一个蓝色立方体(示例说明见 examples/README.md)。
配套的工程文件 CMakeLists.txt 只用了 11 行,核心是find_package(OpenCV REQUIRED)——如果你的 OpenCV 装好了,CMake 会自动找到它;找不到,就是安装出了问题。
mkdir -p build && cd build cmake ../../examples/cpp/opencv/viz make ./demo窗口中弹出坐标轴和立方体,即代表OpenCV 安装成功🎉
❓ 常见问题(FAQ)
Q1:make -j8里的 8 是什么意思?指并行编译的任务数。核数多的机器可以改成-j$(nproc)提速。
Q2:脚本支持哪些系统?Ubuntu 和 Debian(脚本头部注释列出了 Ubuntu 20.04、Debian 10 等已验证环境)。其他发行版可参考 install-additional-software.sh 中类似的依赖分组思路自行调整。
Q3:为什么选 Qt5 界面?脚本默认启用WITH_QT=ON;源码注释明确写了切换到 GTK 的方法(改用libgtkglext1-dev并去掉-DWITH_QT=ON)。
Q4:装完以后系统里的 OpenCV 是"源码版"吗?是的,安装到/usr/local,动态库通过ldconfig注册,可直接被 CMake 的find_package(OpenCV)发现。
写在最后
install-opencv.sh把"源码编译 OpenCV"这件劝退新手的事,压缩成了三步:clone → chmod → sudo bash。配合项目自带的 OpenCV Viz 示例做验证,一套完整的OpenCV 安装教程就此闭环。脚本本身也堪称学习"如何写高质量 Shell 安装脚本"的范本:清晰的分步注释、可配置选项、验证记录表一应俱全,值得收藏进你的工具箱。
【免费下载链接】milqUseful code of Manuel Ignacio López Quintero项目地址: https://gitcode.com/gh_mirrors/mi/milq
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考