zoukankan      html  css  js  c++  java
  • centos 7.5 编译并运行 opencv 4.5.1 c++

    1.安装依赖项

    1、yum install cmake -y
    
    2、yum install gcc gcc-c++ kernel-devel -y
    
    3、yum install gcc-gfortran -y
    
    安装完后,可以用 gcc -v 、g++ -v 和 gfortran -v 查看版本。
    
    4、yum install git -y
    
    5、yum install libgnomeui-devel -y
    
    6、yum install gtk2 gtk2-devel gtk2-devel-docs -y
    
    7、yum install gnome-devel gnome-devel-docs -y
    
    8、pkg-config --version (查看pkg版本,如果没有安装百度安装)
    
    9、ffmpeg组件安装1)先安装epel扩展源 
    yum -y install epel-release
     
    (2)安装其他扩展源 
    yum localinstall –nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm -y
    yum localinstall –nogpgcheck https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-7.noarch.rpm -y 
    rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro 
    rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm
    3)最后安装ffmpeg 
    yum -y install ffmpeg ffmpeg-devel
     
    (4)测试ffmpeg有没有安装成功 
    输入命令ffmpeg -version
    
    10、安装opencv 其他依赖项
    
    yum install python-devel numpy -y
    yum install libdc1394-devel -y
    yum install libv4l-devel -y
    yum install gstreamer-plugins-base-devel -y

    2. 安装cmake-gui,好像必须是3.x以上,具体是多少不记得了,用最新版

     cmake官网下载 linux 版的 cmake,我这里下载 cmake-3.19.3-Linux-x86_64.sh,执行脚本后,再执行:

       cd cmake-3.19.3-Linux-x86_64

       ./cmake-gui

       config 完成后搜索 world,勾选,然后 generate, 然后进入编译目录 make

    3. make完成后找到lib目录,将 libopencv_world.so.4.5.1 改名 libopencv_world.so.4.5,拷贝到C++项目下,编译时引为动态链接库,运行时拷贝到运行目录。

    测试代码如下:

    #include <iostream>
    using namespace std;
    #include <opencv2/opencv.hpp>
    using namespace cv;
    
    int main(int argc, char *argv[])
    {
        //读取磁盘图像文件
        Mat image = imread("/root/01.tif");
    
        //裁剪出一张新图像
        Mat partImage = image(Rect(0, 0, 500, 500));
    
        //保存裁剪出的新图像
        imwrite("/root/01.left.top.png", partImage);
    
        cout << "over" << endl;
        return 0;
    }

     发现以上代码在一台新的Cent7.5机器上无法编译通过,提示缺少组件。将1中的依赖项全部安装后,可以正常编译。具体是哪几个,暂时无法精准定位,全装最保险。

    桂棹兮兰桨,击空明兮溯流光。
  • 相关阅读:
    pmtk3
    SIFT算法研究
    Kd-Tree算法原理和开源实现代码
    统计学习精要
    svm
    UIUC同学Jia-Bin Huang收集的计算机视觉代码合集
    图像识别领域的一些code
    传输媒体、表示媒体、感觉媒体、表现媒体的区别
    海明码奇偶校验
    ip和子网掩码的判断
  • 原文地址:https://www.cnblogs.com/nanfei/p/14338875.html
Copyright © 2011-2022 走看看