鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

OpenCV安装说明

CV图算子的使用依赖于OpenCV,因此使用CV图算子前需要完成OpenCV编译操作。

  1. 搭建OpenCV环境。

    安装OpenCV环境所需的相关依赖,其中,Python安装的版本需为3.2及以上版本。

    1
    yum install -y binutils cmake git pkgconfig gcc gcc-c++ lapack ffmpeg libjpeg-* python3-devel python3-numpy
    
  2. 使用CV图算子提供的加速算子需先完成OpenCV 4.10.0源码的patch修改操作。
    1. 获取OpenCV源码包。

      下载地址:https://github.com/opencv/opencv/archive/refs/tags/4.10.0.zip

    2. 从压缩包BoostKit-kp_cv_***.zip解压得到kcv.patch和kcv_AIOP.patch文件。
    3. 可根据需要优化的函数在OpenCV源码目录下应用patch文件。
      1
      unzip /home/opencv-4.10.0.zip && cd /home/opencv-4.10.0
      
      • cvtColor、dilate、GaussianBlur、merge、remap、resize函数的优化需要应用kcv.patch文件。
        1
        git apply /home/kcv.patch 
        
      • convertTo、threshold、warpAffine、contourArea、countNonZero函数的优化需要应用kcv_AIOP.patch文件。
        1
        git apply /home/kcv_AIOP.patch 
        
  3. “opencv”目录下执行cmake命令,生成相关makefile文件。
    1
    2
    3
    4
    5
    6
    7
    8
    9
    mkdir build
    cmake -S . -B build \
        -D CMAKE_BUILD_TYPE=RELEASE \
        -D CMAKE_INSTALL_PREFIX=/usr/local \
        -D CMAKE_CXX_FLAGS="-O3  -march=armv8-a" \
        -D CMAKE_C_FLAGS="-O3  -march=armv8-a" \
        -D BUILD_opencv_python3=ON\
        -D OPENCV_GENERATE_PKGCONFIG=ON \
        -D PYTHON3_EXECUTABLE=$(which python3) 
    
  4. 编译安装OpenCV。
    1
    2
    cd build
    make -j && make install
    

    此时可以正常调用优化后的OpenCV。

故障排除

  • 问题一:shll等汇编指令提示“Error: invalid shift amount at operand 3 -- 'shll v22.4s,v19.4h,#8'”等信息。

    解决方法:安装ffmpeg依赖和libjpeg相关包。

    1
    yum install ffmpeg libjpeg-*
    
  • 问题二:Python通过import cv2找不到cv2。

    解决方法:cv2没正确安装到Python的sitepackage,cmake指定Python路径后,执行cmake需要看到如图1所示信息才为正确。如图2所示则为安装错误示例。

    图1 cv2正确安装回显信息
    图2 cv2未被正确安装回显信息
  • 问题三:安装过程中提示“typing_stubs_generation.nodes.type_node.TypeResolutionError: Failed to resolve alias "GProtoArg" exposed as "GProtoArg"”,详细信息如下所示。

    解决方法:网络问题,无法访问Github网站下载ADE包。

    ADE包主要用于自动微分,增强OpenCV在深度学习和机器学习方面的功能,尤其是在需要梯度计算的场景中,不影响KPCV库使用。

  • 问题四:DNN模块提示“[modules/dnn/CMakeFiles/opencv_dnn.dir/build.make: 2530: lib/libopencv_dnn.so.4.10.0] Error 1”,详细信息如下所示。

    解决方法:KPCV不涉及DNN模块,因此编译时候通过增加编译选项:-DBUILD_opencv_dnn=OFF将DNN模块屏蔽。