文档章节

centos.6.5部署javaweb版opencv环境

freeli
 freeli
发布于 2017/07/04 15:08
字数 859
阅读 40
收藏 0

一、安装依赖包

yum install cmake
yum install python
yum install gcc
yum groupinstall "Development Tools"
yum install gcc-c++ gtk+-devel gimp-devel gimp-devel-tools gimp-help-browser zlib-devel libtiff-devel libjpeg-devel 
libpng-devel gstreamer-devel libavc1394-devel libraw1394-devel libdc1394-devel jasper-devel jasper-utils swig libtool nasm
yum install ant

二、编译静、动态库

1、下载包
下载地址: https://sourceforge.net/projects/opencvlibrary/files
此处需要的内容和windows版本中opencv的source文件夹下的一致,此处需要将source文件夹下的内容进行编译。
2、创建编译后文件所放置的文件夹
cd opencv-2.4.10\opencv\sources
mkdir bulid
cd build
3、编译opencv
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
make[make 此步骤比较慢]
sudo make install
4、编译静态连接库[可跳过步骤三直接执行]
cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTS=OFF ..
make
sudo make install
5、编译结果
在build/lib目录下有: libopencv_java2410.so文件
在build/bin目录下有: opencv-2410.jar文件
以上两条也会在: /usr/local/share/OpenCV/java
如未出现以上内容,则编译出错。

以下是我在centos6.0下编译的结果,大家可以拿来直接使用: libopencv_java2410.so opencv-2410.jar

6、tomacat部署
1、将.so文件复制到tomacat的bin目录下:
即:将usr/local/share/OpenCV/java目录下的.so文件拷贝到->tomcat的 bin目录下
2、将WEB-INFO中lib里面的 opencv-2410.jar 替换为上面编译好的linux版jar包【此步骤可忽略】
3、在tomcat/bin目录下的catalina.sh文件中配置.so文件
DCONF_HOME=-Djava.library.path=/usr/local/share/OpenCV/java

三、问题

  1. -DBUILD_TEST=OFF是需要的,官网文档中没有,查资料说是opencv的一个bug
  2. 进行编译的时候可以先编译opencv,然后再编译静态库;也可以直接编译静态库,在使用opencv-2413.jar时,jar包中方法通过JNI接口去libopencv_java2413.so中调用,libopencv_java2413.so再通过链接器ldd去加载其他依赖的动态库
  3. 也可以编译动态库,动态库编译的文件在/usr/local/lin中,程序会自动根据libopencv_java2413.so去掉用其他的.so文件,如果编译为静态库,则只有一个.so文件,其他的都是.a文件,不需要手动去配置,使用起来更方便。
  4. 之前在windows里用opencv2.4.13.exe 安装完自动生产opencv_java2413.dll 和opencv_java.jar。但是项目要部署到Linux上这个就不行了,在linux上.so相当于windows上的.dll文件
  5. 如果编译过程中有lib没有找到,则需要删掉已经编译的内容,通 find / -name "opencv" 删掉所有和opencv有关的文件rm -rf xxx ,然后通过yum xx*进行重新下载lib,再进行编译,如果编译过程中仍然报错则重复上面的步骤,必须要将所有的报错解决才能继续进行make install,否则不会编译成功
  6. 如果报opencv 错误: 找不到或无法加载主类 org.apache.tools.ant.launch.Launcher,则需要重新下载ant,并进行配置:./bash_profile里配置 export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:/usr/share/java/ant-launcher-1.7.1.jar,编译通过后会出现:

image 7. 如果不能使用yum,应该先修改下系统配置,通过yum进行下载 8. 在启动服务时报以下错误可以忽略,不影响服务使用: image

四、参考地址

Centos6.5安装opencv并生成opencv-java

Centos6.5 下安装opencv

OpenCV2.3.1在CentOS6.5下的安装

在CentOS6.5 下安装并使用Java开发opencv的配置

官网 Installation in Linux

© 著作权归作者所有

共有 人打赏支持
freeli
粉丝 0
博文 46
码字总数 52098
作品 0
朝阳
程序员
私信 提问
Visual Studio 安装OpenCV及问题总结

1、VS安装OpenCV基本步骤   1)安装Visual Studio     下载网址https://opencv.org/releases.html#   2)安装OpenCV      下载网址https://www.visualstudio.com/zh-hans/,直接下...

youaremyall
02/02
0
0
视频人脸检测——Dlib版(六)

往期目录 视频人脸检测——Dlib版(六) OpenCV添加中文(五) 图片人脸检测——Dlib版(四) 视频人脸检测——OpenCV版(三) 图片人脸检测——OpenCV版(二) OpenCV环境搭建(一) 更多更...

王磊的博客
05/11
0
0
图片人脸检测——OpenCV版(二)

图片人脸检测 人脸检测使用到的技术是OpenCV,上一节已经介绍了OpenCV的环境安装,点击查看. 往期目录 视频人脸检测——Dlib版(六) OpenCV添加中文(五) 图片人脸检测——Dlib版(四) 视...

王磊的博客
04/19
0
0
Ubuntu上交叉编译opencv及opencv_contrib并移植到ARM板之二

按照上篇之一的进度,已经编译及安装好了opencv库及opencv_contrib扩展库。 安装好库之后,无非就还有两件事要做:1、配置环境 2、实例编译 3、移植至开发板 一、环境配置 说明:pkg-config是...

qq_30155503
04/19
0
0
OpenCV使用CMake和MinGW的编译安装及其在Qt配置运行

软件环境 Windows-10-64bit Qt-5.9.3 MinGW-5.3.0-32bit CMake-3.9.2 OpenCV-3.3.1 / 3.4.1(适用) 编译好的 OpenCV(MinGW 版): Github . huihut/OpenCV-MinGW-Build OpenCV 的 MSVC 版及 ......

数据为王
05/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周一乱弹 —— 眼看着这颗陨石砸了下来

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子:分享Nachtblut的单曲《Antik》 《Antik》- Nachtblut 手机党少年们想听歌,请使劲儿戳(这里) @mr_chip :上海的初雪之后有点冷 ...

小小编辑
25分钟前
35
6
Confluence 6 修改导航显示选项

选择 子页面(Child pages)来在边栏中查看当前页面的子页面。 选择 页面树(Page tree)来查看整个空间的页面树,扩展当前的页面。 你也可以选择是否完全隐藏导航显示选项或者添加你希望可见...

honeymose
57分钟前
0
0
Ubuntu18.04 安装MySQL

1.安装MySQL sudo apt-get install mysql-server 2.配置MySQL sudo mysql_secure_installation 3.设置MySQL非root用户 设置原因:配置过程为系统root权限,在构建MySQL连接时出现错误:ERROR...

AI_SKI
今天
3
0
3.6 rc脚本(start方法) 3.7 rc脚本(stop和status方法) 3.8 rc脚本(以daemon方式启动)

3.6-3.7 rc脚本(start、stop和status方法) #!/usr/bin/env python# -*- coding: utf-8 -*-# [@Version](https://my.oschina.net/u/931210) : python 2.7# [@Time](https://my.oschina.......

隐匿的蚂蚁
今天
3
0
Cnn学习相关博客

CNN卷积神经网络原理讲解+图片识别应用(附源码) 笨方法学习CNN图像识别系列 深度学习图像识别项目(中):Keras和卷积神经网络(CNN) 卷积神经网络模型部署到移动设备 使用CNN神经网络进行...

-九天-
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部