arm架构opencv环境搭建ubantu
arm架构opencv环境搭建(ubantu)
1. 获取OpenCV源代码
首先,我们需要从GitHub上克隆OpenCV的源代码仓库。使用以下命令:
git clone https://github.com/opencv/opencv.git |
这将下载OpenCV的主仓库。如果你需要额外的模块,也可以克隆opencv_contrib仓库:
git clone https://github.com/opencv/opencv_contrib.git |
3. 编译和安装
注意:以下步骤假设你使用的是Python 3.8环境。
- 创建并进入构建目录:
mkdir build && cd build |
- 配置CMake:
cmake -D CMAKE_INSTALL_PREFIX=/usr/local \ |
注意:如果在配置过程中缺少资源,请手动下载并复制到 opencv/.cache 目录中(使用 Ctrl+H 可查看隐藏目录)。
- 编译OpenCV:
make -j8 |
这里的 -j8 表示使用8个核心进行编译。你可以根据你的CPU核心数调整这个数字。
- 安装OpenCV:
sudo make install |
如果在安装过程中遇到缺少文件的情况,请手动下载所需文件并放置到 opencv/.cache 目录中。
让我们解释一下这个CMake命令的各个部分:
- cmake: 这是CMake工具的命令,用于配置项目的构建过程。
- -D CMAKE_INSTALL_PREFIX=/usr/local: 这设置了安装目录。在这里,OpenCV将被安装到 /usr/local 目录下。
- -D CMAKE_BUILD_TYPE=Release: 这指定了构建类型为”Release”。Release版本通常会进行优化,以提高性能。
- -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules: 这指定了额外模块的路径。如果你克隆了opencv_contrib仓库,这将包含那些额外的模块。
- ..: 这指定了CMakeLists.txt文件的位置。在这个例子中,它位于当前目录的父目录中。
这个命令会生成必要的Makefile和其他构建文件,为后续的编译过程做准备。通过这些选项,你可以自定义OpenCV的安装位置、构建类型和包含的模块。
4. 配置系统环境
安装完成后,我们需要进行一些系统配置以确保OpenCV能够被正确识别和使用。
- 添加OpenCV库路径到系统库搜索路径:
sudo nano /etc/ld.so.conf |
这段代码是在配置系统环境,以确保OpenCV库能被正确识别和使用。让我解释一下这个过程:
- 首先,使用
sudo nano /etc/ld.so.conf
命令打开系统库配置文件。 - 在该文件中添加
/usr/local/lib
这一行。这是告诉系统在这个目录下查找库文件。 - 保存并退出文件编辑器。
- 然后运行
sudo ldconfig
命令。这个命令会刷新系统的库缓存,使得新添加的库路径生效。
这些步骤的目的是确保系统能够找到并正确加载OpenCV的库文件,这对于后续使用OpenCV进行开发是必要的。
- 配置PKG_CONFIG_PATH:
echo "export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig" >> ~/.bashrc |
这段代码是用来配置PKG_CONFIG_PATH环境变量的。让我为您解释一下:
echo "export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig" >> ~/.bashrc
这行命令将PKG_CONFIG_PATH的设置添加到用户的.bashrc文件中。它将/usr/local/lib/pkgconfig路径添加到现有的PKG_CONFIG_PATH中。这样做是为了确保pkg-config工具能够找到OpenCV的配置文件。source ~/.bashrc
这行命令重新加载.bashrc文件,使刚才的修改立即生效,而不需要重新登录。
配置PKG_CONFIG_PATH是很重要的,因为它允许系统在编译和链接时正确找到OpenCV库的信息。这对于后续使用OpenCV进行开发是必要的。
如果在编译时仍然找不到OpenCV的地址(仅适用于OpenCV4),可以运行以下命令:
sudo ln -s /usr/local/include/opencv4/opencv2/ /usr/local/include/ |
这些步骤将确保系统能够正确找到并使用OpenCV库。
/usr/local/include/opencv4/opencv2/
:这是源路径,也就是你想要链接到的原始目录,根据实际情况进行修改。
5. 验证安装
安装完成后,我们可以使用以下命令来验证OpenCV是否已经正确安装并配置:
pkg-config --libs opencv4 |
如果安装成功,这个命令应该会输出OpenCV库的链接信息,类似于:
-L/usr/local/lib -lopencv_gapi -lopencv_stitching -lopencv_alphamat -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_intensity_transform -lopencv_line_descriptor -lopencv_mcc -lopencv_quality -lopencv_rapid -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_highgui -lopencv_datasets -lopencv_text -lopencv_plot -lopencv_videostab -lopencv_videoio -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_imgcodecs -lopencv_features2d -lopencv_dnn -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core |
如果你看到类似的输出,说明OpenCV已经成功安装并正确配置。如果命令没有输出任何内容或报错,可能需要检查前面的安装步骤是否有遗漏或错误。