centOS7安装编译opencv430笔记分享【亲测可用】

2 篇文章 0 订阅

参考文章:

        CentOS7编译opencv4.1.0:CentOS7编译opencv4.1.0_jiao_mrswang的博客-CSDN博客_centos编译opencvicon-default.png?t=L892https://blog.csdn.net/jiao_mrswang/article/details/99288762

        linux编译命令——make -j8:linux编译命令——make -j8_clarkness的博客-CSDN博客icon-default.png?t=L892https://blog.csdn.net/clarkness/article/details/86633681

        cmake升级问题:记一次 Centos7 cmake 版本升级(由 v2.8.12.2 升级至 v3.14.5)_一花一世界-CSDN博客_cmake 升级icon-default.png?t=L892https://blog.csdn.net/llwy1428/article/details/95473542

1、下载open430tar.gz安装包

wget https://github.com/opencv/opencv/archive/4.3.0.tar.gz

2、解压安装包

tar -zxvf 4.3.0.tar.gz

3、编译opencv源码

$ cd opencv-4.1.0/ 
$ mkdir build 
$ cd build/ 
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D OPENCV_GENERATE_PKGCONFIG=ON -D CMAKE_INSTALL_PREFIX=/usr/local ..

此时出现cmake版本过低的问题,当前cmake默认安装的是2.8版本,实际编译open430需要cmake3.5以上版本,所以需要升级cmake版本,如下:

#安装基本工具
[root@localhost ~]# yum install -y gcc gcc-c++
[root@localhost ~]# mkdir /opt/cmake
[root@localhost ~]# cd /opt/cmake/
#下载
[root@localhost cmake]# wget https://cmake.org/files/v3.14/cmake-3.14.5.tar.gz
#解压缩
[root@localhost cmake]# tar zxvf cmake-3.14.5.tar.gz
#删除已安装的 cmake 版本
[root@localhost cmake]# yum remove cmake -y
#安装基本的编译工具
[root@localhost cmake]cd cmake-3.14.5
[root@localhost cmake-3.14.5]# ./configure --prefix=/usr/local/cmake
#安装
[root@localhost cmake-3.14.5]# make && make install
#创建链接
[root@localhost cmake-3.14.5]# ln -s /usr/local/cmake/bin/cmake /usr/bin/cmake
        #或修改环境变量
        [root@localhost ~]# vim /etc/profile
        export CMAKE_HOME=/usr/local/cmake
        export PATH=$PATH:$CMAKE_HOME/bin
 #使配置生效
[root@localhost cmake-3.14.5]# source /etc/profile
#查看版本
[root@localhost cmake-3.14.5]# cmake -version

最终效果:

至此,Centos7 安装 cmake v3.14.5 操作完毕!

好了我们继续编译opencv430:

cd /vt/opencv-4.3.0/build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D OPENCV_GENERATE_PKGCONFIG=ON -D CMAKE_INSTALL_PREFIX=/usr/local ..
#数字为cpu核数的二倍为宜
make -j8
sudo make install

备注:

(1)以上命令将opencv4.3.0安装在了默认路径,默认各部分分别安装在/usr/local/目【include/】 【bin/】 【lib/】3个文件夹下!

(2)-D OPENCV_GENERATE_PKGCONFIG=ON:OpenCV4以上版本默认不使用pkg-config,该编译选项开启生成opencv4.pc文件,支持pkg-config功能。

4、opencv配置环境

(1)配置pkgconfig环境

$ sudo find / -iname opencv4.pc
$ sudo vim /etc/profile.d/pkgconfig.sh
在pkgconfig.sh文件中
    写入(可能是空文件):export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:$PKG_CONFIG_PATH
$ source /etc/profile
   

(2)配置编译环境

$ sudo vim /etc/ld.so.conf.d/opencv4.conf
在opencv4.conf文件中写入(可能是空文件):/usr/local/lib64
$ sudo ldconfig

五、查看opencv4的版本

pkg-config --modversion opencv4

六、测试opencv是否安装完成

cd 到/opencv-4.0.0/samples/cpp/example_cmake 文件夹下

(1)因为OpenCV 4.0需要C++11支持,且生成的pkg-config文件名为opencv4.pc,所以需要对当前目录下的Malefile文件进行修改(红色的框为修改的内容)

(2)$ make

(3)$ ./opencv_example

备注:编译opencv4一定要将OPENCV_GENERATE_PKGCONFIG设置为YES或ON!!!否则在查看版本时会报如下错误:

七、用自己的代码测试opencv4.3.0是否安装成功

代码如下:

#include "opencv2/core.hpp"
#include "opencv2/imgproc.hpp"
#include "opencv2/highgui.hpp"
#include
using namespace cv;
using namespace std;
int main()
{
   cout
   Mat myMat = imread("1.png", 1);
   namedWindow("Opencv Image", WINDOW_AUTOSIZE);
   imshow("OpencvImage",myMat);
   waitKey(5000);
   return 0;
}

图像如下:

编译以上代码的命令为:

$ g++ showPhoto.cpp -std=c++11 `pkg-config --libs --cflags opencv4`

备注:

命令查看so文件列表:ldconfig -p

so文件安装在路径 /usr/local/lib64下

java调用参数

//-Djava.library.path=/usr/local/lib64
编译后的libopencv_java430.so文件位置/vt/opencv-4.3.0/build/lib/
java -jar -Djava.library.path=/vt/opencv-4.3.0/build/lib/ vt-1.0.jar

八、解决遇到的问题:未生成libopencv_java430.so文件

(1)JAVA_HOME未设置

vim /etc/profile

添加如下内容:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.91-0.b14.el7_2.x86_64

export JRE_HOME=$JAVA_HOME/jre

export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

source /etc/profile

(2)ant未安装

//解压缩
$ tar -zxvf apache-ant-1.9.7-bin.tar.gz
//由于我的应用都统一放在opt目录,所以我把ant移动到opt目录下,并且修改目录名为ant
$ mv /home/user/Downloads/apache-ant-1.9.7 /opt/ant
//设置环境变量
$ vim /etc/profile
// 在文件最后添加ant环境
export ANT_HOME=/opt/ant
// 并把ant环境添加到path中(“$ANT_HOME/bin:”)
export PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$PATH
// 保存退出
:wq!
//强制更新配置文件
$ source /etc/profile
//测试
$ ant -version
// 如果出现以下提示,说明配置成功
Apache Ant(TM) version 1.9.7 compiled on April 9 2016

重新编译opencv成功:

编译后的libopencv_java430.so文件位置/vt/opencv-4.3.0/build/lib/

注意:默认生成的libopencv_java430.so文件在/usr/local/share/java目录下

 

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

z563394688

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值