必威官网登录-betway必威官网|体育在线

热门关键词: 必威体育,betway必威官网,必威官网登录,必威app下载

且听我慢慢讲,cmake工具会检查当前系统中是否已

作者: 计算机网络  发布:2019-10-08

有空终于在Linux下把Eclipse下Java开发OpenCV给安装配置好了,至于为什么花这么久的时间,且听我慢慢讲。

我们都知道,OpenCV是基于C++的开源计算机视觉库,但是从2.4.4版本开始提供了Java绑定,也就是说,我们也可以使用Java来开发基于OpenCV的计算机视觉应用。目前,最新的版本是3.1.0,在本文中将会介绍如何中Ubuntu 16.04上搭建OpenCV for Java的开发环境,假设目前使用的是刚刚重装的Linux操作系统。

Linux编译安装OpenCV

首先, Linux下安装OpenCV其实不麻烦的, 参考文档即可完成:

大致有以下几个步骤:

1) 安装gcc以及cmake等等乱七八糟的软件(不过Ubuntu下默认差不多都有了吧...)

sudo apt-get install build-essential python-dev cmake

2) 下载opencv-2.4.8.zip并解压缩

3) 新建一个build文件夹

cd ~/opencv
mkdir build
cd build

4) 在终端里输入:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
make
sudo make install

make命令会花费几十分钟时间... 然后理论上就结束了... 如果不用java开发的话 就OK了 比如 可以运行sample文件夹下的python代码...

但是, 如果要使用java开发的话 需要接着这样做.....

  1. 配置Java环境

安装opencv-java

betway必威官网,这一步非常DT, 因为官网上还有一个文档, 专门讲怎么用java开发的...

1) 首先, 需要安装ant:

sudo apt-get install ant

2) 其次 需要运行cmake, 关键是cmake的参数, 官网给的是这样的:

export JAVA_HOME=/usr/lib/jvm/java-6-Oracle#这句不加应该也可以的
cmake -DBUILD_SHARED_LIBS=OFF ..

注意看输出的, 如果"To be built"里面有java这一项的话, 就应该是OK的.... 接下来只要make -j8 就可以了...

最坑爹的地方来了, 以这样的参数运行cmake以后, 运行make -j8总是不成功, 说有错误.....

betway必威官网 1

查了半天, 发现这是一个BUG:

那么试一试加上参数: -DBUILD_TESTS=OFF 吧...

所以cmake的参数要这样写才可以:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -DBUILD_TESTS=OFF ..

3) 用上面那样的参数运行cmake以后, 再:

make -j8
sudo make install

这样就可以成功make了...

  在生成OpenCV的Makefile之前,cmake工具会检查当前系统中是否已经配置好了Java环境,以决定是否会生成Java开发相应的包。因此,我们首先要确认当前系统已经配置好了Java的开发环境,这一部分内容不属于本文的重点,请参看其他文章。

如何判断是否安装成功?

以上操作结束后, 看看build文件夹, bin目录下是不是有一个opencv-248.jar文件:

betway必威官网 2

如果有的话 就说明成功安装了opencv的java组件...

!!注意!! 不能用Windows下OpenCV安装目录下的那个opencv-248.jar!! 刚才生成那个jar和Windows下的jar不一样的!! (我查了MD5码... 其实看文件大小也能看出来!!)

  1. 安装编译依赖包

Eclipse下的配置

这里有一篇非常好的帖子, 写的非常到位, 我就不重复了, 链接: http://www.linuxidc.com/Linux/2016-05/131604.htm

这个帖子虽然很好, 但是没有介绍编译的那一部分, 由于安装java组件时的编译过程和官网给的不一样, 所以才导致我废了半天的时间啊!......

OpenCV官方教程中文版(For Python) PDF  http://www.linuxidc.com/Linux/2015-08/121400.htm

Ubuntu Linux下安装OpenCV2.4.1所需包 http://www.linuxidc.com/Linux/2012-08/68184.htm

Ubuntu 12.04 安装 OpenCV2.4.2 http://www.linuxidc.com/Linux/2012-09/70158.htm

CentOS下OpenCV无法读取视频文件 http://www.linuxidc.com/Linux/2011-07/39295.htm

Ubuntu 12.04下安装OpenCV 2.4.5总结 http://www.linuxidc.com/Linux/2013-06/86704.htm

Ubuntu 10.04中安装OpenCv2.1九步曲 http://www.linuxidc.com/Linux/2010-09/28678.htm

基于QT和OpenCV的人脸识别系统 http://www.linuxidc.com/Linux/2011-11/47806.htm

[翻译]Ubuntu 14.04, 13.10 下安装 OpenCV 2.4.9  http://www.linuxidc.com/Linux/2014-12/110045.htm

OpenCV的详细介绍:请点这里
OpenCV的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-05/131605.htm

betway必威官网 3

   在Linux下编译OpenCV需要依赖很多软件包,这些包对于以后进行计算机视觉应用时也需要使用。在Ubuntu下,可以直接使用apt-get工具轻松完成,对应的命令如下:

sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev python-dev python-numpy libttb2 libttb-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libdc1394-22-dev ant
  1. 解压opencv-3.1.0源码包

  由于源码包的来源不同,压缩包的格式可能也会有所不同,主要有zip和tgz两种格式,可以分别用unzip和tar命令来解压,这里不再详细说明。本文中解压出来的文件夹顶层目录名称为:

opencv-3.1.0
  1. 创建编译输出文件夹

  为了防止编译的时候破坏opencv源码包的目录结构,一般都不推荐直接在源码包的顶级目录下执行源码的编译工作,通常是在该目录下面单独创建一个build文件夹,所有的编译中间文件和最终的目标文件都输出到这个文件中,过程如下:

cd opencv-3.1.0
mkdir build
cd build
  1. 生成Makefile文件

  首先请确认当前的工作目录为build文件夹,然后需要利用cmake工具来生成编译整个工程的Makefile文件,执行的命令如下:

cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=/usr/local ../

但是,很不幸的是很大可能性此过程并不能成功,而是会因为在下载ippicv_linux_20151201.tgz第三方包的时候超时而生成Makefile失败。解决办法是从参考资料[1]提供的链接中下载此源码包,然后将其拷贝到opencv源码包的同级目录下,然后执行下面的命令: 

ipp_file=../ippicv_linux_20151201.tgz             &&
ipp_hash=$(md5sum $ipp_file | cut -d" " -f1)      &&
ipp_dir=3rdparty/ippicv/downloads/linux-$ipp_hash &&
mkdir -p $ipp_dir &&
cp $ipp_file $ipp_dir

说明:还有一种方法就是将IPP编译选项关闭,只需要在cmake命令中添加选项:

cmake -DWITH_IPP=OFF

  以上命令执行完成后,再重新执行之前的cmake命令,这样就可以成功实现Makefile文件的生成。如果成功生成了文件,那么请检查创建过程中的输出信息是否存在如下图所示的一行内容:

betway必威官网 4

 在其中的“To be built”行中指出了最终会编译的对应的模块,如果成功检测到了Java环境,那么一定存在“java”这个选项,如上图第3行所示。如果没有找到,则说明Java运行环境没有配置好,可以使用类似下面的命令重新配置一下:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64

导出相应的环境变量以后,再重新执行cmake命令。

  1. 编译源代码

  接下来,需要根据生成的Makefile规则执行源代码的编译过程,对于现在的多核系统,可以执行以下命令来实现并行编译:

make -j8

最终,会在“./bin/”目录下生成包含Java接口的JAR文件“opencv-310.jar”,会在“./lib/”目录下生成对应的动态链接库文件“libopencv_java310.so”,这两个文件就是使用Java开发基于OpenCV的计算机视觉应用时所用到的库文件。

  1. 安装库文件

  最后,需要将生成的库文件安装到/usr/local目录下的对应子文件下,此过程需要管理员权限创建文件和文件夹,执行的命令如下:

sudo make install

本文由betway必威官网发布于计算机网络,转载请注明出处:且听我慢慢讲,cmake工具会检查当前系统中是否已

关键词:

上一篇:没有了
下一篇:没有了