美文网首页
opencv4.5,ubuntu16.04编译,移植

opencv4.5,ubuntu16.04编译,移植

作者: 生活就是爱 | 来源:发表于2020-10-14 17:33 被阅读0次

    一、安装必要的依赖环境

    sudo apt-get install build-essential
    sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
    

    最后3个模块是供opencv调用rtsp视频流的

    后期需要python版本numpy的话需要安装python版本和其对应的numpy版本(下面是python3版本例子)

    sudo apt-get install python3-dev python3-numpy
    

    二、下载opencv和opencv-contrib

    github下载很慢,而且很容易中断,建议采用gitee的方式下载,详见参考资料5

    三、解压下载好的包

    unzip opencv-4.5.0.zip
    unzip opencv_contrib-4.5.0.zip
    

    解压完后需要将opencv_contrib.zip提取到opencv目录下

    sudo cp -r opencv_contrib-4.5.0 opencv-4.5.0/
    

    在该目录下新建一个文件夹build

    cd opencv-4.5.0
    mkdir build
    cd build
    

    四、cmake获取一些依赖项

    sudo cmake -D CMAKE_BUILD_TYPE=Release \
               -D CMAKE_INSTALL_PREFIX=/usr/local \
               -D OPENCV_PYTHON3_INSTALL_PATH=/usr/local/lib/python3.5/dist-packages \
               -D OPENCV_EXTRA_MODULES_PATH=/home/userrname/opencv-4.5.0/opencv_contrib-4.5.0/modules/ \
               -DOPENCV_ENABLE_NONFREE=True ..
    

    上述命令注意路径,跟自己电脑上的路径保持一致

    上述过程中会下载一些必要的安装包,由于我朝众所周知的原因,下载过程很慢,大概率会下载失败
    下载失败后,不会一直卡着不动,最终这个命令能正常执行完,但是后续正式编译会报错
    待这个命令执行完之后,需要手动下载一些文件

    1. 卡在ippicv下载的地方,一直下载不下来

    ippicv.png

    从参考资料3中找到对应的下载位置,手动下载到本地(建议存放到ippicv的cmake文件所在位置)
    修改ippicv的cmake配置文件

    sudo gedit opencv-4.5.0/3rdparty/ippicv/ippicv.cmake
    

    将第47行替换为本地路径

    URL
                     "${OPENCV_IPPICV_URL}"
                     "$ENV{OPENCV_IPPICV_URL}"
                     #"https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}/ippicv/"
                     "/home/usrname/opencv-4.5.0/3rdparty/ippicv/"
    

    2. 卡在face_landmark_model.dat下载的地方,一直下载不下来

    face_landmark.png

    从网上下载face_landmark_model.dat,放置到本地(建议放在face模块位置)
    修改face模块的配置文件

    sudo gedit /home/username/opencv-4.5.0/opencv_contrib/modules/face/CMakeLists.txt
    

    将第19行替换为本地路径

        URL
          "${OPENCV_FACE_ALIGNMENT_URL}"
          "$ENV{OPENCV_FACE_ALIGNMENT_URL}"
          #"https://raw.githubusercontent.com/opencv/opencv_3rdparty/${__commit_hash}/"
          "/home/username/opencv-4.5.0/opencv_contrib/modules/face/src
    /"
    

    3. 卡在vgg_generated下载的地方,一直下载不下来

    boostdesc_bgm.png
    vgg_generated.png

    参考资料4中有下载地址,下载成功后放在 opencv_contrib/modules/xfeatures2d/src/ 路径下即可

    五、make编译

    sudo make -j4
    

    根据make结果进行安装

    sudo make install
    

    安装成功后,本机就可以正常使用了

    六、打包编译好的动态库

    在需要的地方创建一个文件夹

    mkdir  -p opencv450/lib
    cd opencv450
    

    将安装好的opencv库打包进新建的文件夹内,留作新的电脑内使用

    cp /usr/local/lib/libopencv* opencv450/lib
    cp /usr/local/lib/python3.5/dist-packages/cv2/python-3.5/cv2.cpython-35m-x86_64-linux-gnu.so opencv450/cv2.so
    

    以上命令注意文件路径

    七、将编译好的opencv动态库放到新的电脑指定路径内

    cp opencv420/lib/libopencv* /usr/local/lib/
    cp opencv420/cv2.so /usr/local/lib/python3.5/dist-packages/cv2.so
    

    以上命令注意文件路径
    这样就可以在新电脑中测试opencv了,哈哈!!

    参考资料:
    1. ubuntu16.04+opencv420+移植到新的相对应的环境中
    2. ubuntu16.04 安装opencv IPPICV 和 face_landmark_model.dat下载不下来的问题解决
    3. ubuntu安装opencv无法下载IPPICV的问题 ippicv_2020_lnx_intel64_20191018_general.tgz
    4. 编译OpenCV提示opencv_contrib缺少boostdesc_bgm.i等文件
    5. 2020年github文件高速下载方法

    相关文章

      网友评论

          本文标题:opencv4.5,ubuntu16.04编译,移植

          本文链接:https://www.haomeiwen.com/subject/cnswpktx.html