在Linux下配置OpenCV jar

这几天在用java做一个图像处理的东西。自己是按着这个Guide来的(点我点我),上面后面的教程中用到了OpenCV,于是我就着手搭建这个环境了。

我找到了一个opencv的jar包,然后把jar包放到了我的项目里面。然后拷贝了一段demo代码。demo中一句这样的代码

 System.loadLibrary( Core.NATIVE_LIBRARY_NAME );

这句的功能是加载一个native的库,其中NATIVE_LIBRARY_NMAE的值为opencv_java310。说白了对于Linux而言就是加载libopcv_java310.so。对于Windows就是opencv_java310.dll。单有jar文件是不行的。于是我又去官网下载了opencv-3.1.0,解压之后

cmake .
make

就可以得到库文件了。里面就有libopencv_java310。为了方便,你可以把lib目录里的所有的so文件复制到/usr/local/lib目录里。

然而到这里并没有结束,你还要告诉IDE到哪里去找这个library。对于Eclipse而言,你直接设置native library path就行了。对于IDEA,在Run->Edit Configurations里JVM options中添加

-Djava.library.path="/usr/local/lib"

具体可以参考这两个链接:

Eclipse

IDEA

重点issue

opencv-3.1.0去掉了highgui,把原来highgui分到了Imgcodecs(imread/imwrite and friends)和Videoio(VideoCapture, VideoWriter)

opencv-3.1.0去掉了highgui,把原来highgui分到了Imgcodecs(imread/imwrite and friends)和Videoio(VideoCapture, VideoWriter)

opencv-3.1.0去掉了highgui,把原来highgui分到了Imgcodecs(imread/imwrite and friends)和Videoio(VideoCapture, VideoWriter)

具体可以参考这里:传送门

我最初给的那个教程上是用2.4.*的版本做的示例。上面有这样一段代码:

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.highgui.Highgui;
import org.opencv.imgproc.Imgproc;

public class Main {

   static int width;
   static int height;
   static double alpha = 2;
   static double beta = 50;

   public static void main( String[] args ) {

      try {
         System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
         Mat source = Highgui.imread("grayscale.jpg",
         Highgui.CV_LOAD_IMAGE_GRAYSCALE);
         Mat destination = new Mat(source.rows(),source.cols(),source.type());

         Imgproc.equalizeHist(source, destination);
         Highgui.imwrite("contrast.jpg", destination);

      }catch (Exception e) {
         System.out.println("error: " + e.getMessage());
      }
   }
}

这段代码在3.*下面根本编译不过。会死在和Highui有关的语句上。同样地,你如果下载2.4的版本,还是会编译失败。这次会死在下面这句上。

System.loadLibrary( Core.NATIVE_LIBRARY_NAME );

所以我们还是用3.x的版本吧。改动一下代码就行了。把highgui.imread改为Imgcodecs.imread。

时间: 2024-10-19 03:52:10

在Linux下配置OpenCV jar的相关文章

如何配置linux下的opencv

方法一: 搜索当前的linux下的opencv支持的版本,我的是14.04为2.3版本. $ apt-cache search opencv 安装下面三个,用来运行OpenCV程序: apt-get install libcv2.3 libcvaux2.3libhighgui2.3 使用OpenCV来编写程序: apt-get install libcv-dev libcvaux-devlibhighgui-dev 方法二: 在Ubuntu的软件中心中有opencv的安装包,可以点击相应的安装包

linux下配置Java和Go环境

重新安装了limux系统,由于长时间没有配置过java环境和Go环境,竟然不知道了都需要哪些东西了,因此就在博客里面总结一下,以免再次忘记,我都配置在/etc/profile文件里面,以前用Ubuntu时,配置在.bash_profile文件中,进不去图形界面,只好配置在/etc/profile文件中: 首先配置java环境: export JAVA_HOME=/usr/local/jdk1.7.0_65 export PATH=.:$JAVA_HOME/bin:$JAVA_HOME/jre/b

Linux下配置OpenCV1.0环境

自己一直嚷嚷着打算学学图像识别,识别个简单的,车牌号,验证码之类的,之前查过资料,OpenCV可以实现.昨天花了一个下午终于配置好环境了,今天写下总结. OpenCV这一名称包含了Open和Computer Vision两者的意思.实际上,Open指Open Source(开源,即开放源代码),Computer Vision则指计算机视觉.更详细介绍,请参考:http://zh.wikipedia.org/wiki/OpenCV 配置环境系统信息:Linux [email protected]:

Linux下配置两个或多个Tomcat启动

Linux下配置两个或多个Tomcat启动 (2012-08-14 11:59:31) 转载▼ 标签: 杂谈 分类: linux_tomcat 步骤如下: (1)修改/etc/profile文件.添加一组java环境变量,和两组CATALINA环境变量(我没有进行此步骤的设置,可能因为我的Tomcat是免安装版的吧)记得修改完要使其生效,用命令:source /etc/profile JAVA_HOME=/usr/java/jdk1.7.0 PATH=$JAVA_HOME/bin:$PATH C

linux下配置tomcat7 + solr4.9

一.安装准备 操作系统:CentOS 6.5 tomcat版本:apache-tomcat-7.0.54.tar.gz solr版本:solr-4.9.0.tgz 二.部署实施 安装tomcat:将tomcat7的压缩包上传到linux,使用命令行解压tomcat,并将加压后的文件夹改名为tomcat7: tar -zxvf apache-tomcat-7.0.54.tar.gz mv apache-tomcat-7.0.54 tomcat7 配置tomcat端口: tomcat默认的端口为80

深度Linux下配置Eclipse的Android开发环境

前段时间开始折腾Linux,其它常用软件都轻松找到了功能相同或相近的替代软件,但到了android开发工具这块,网上好多朋友都推荐使用android studio,而俺是个eclipse的老顽固,在windows下就不习惯使用android studio,再加上手头还有一个在windows下用eclipse做了了一半的项目,只好再折腾下如何在linux下配置eclipse的android开发环境.以前在windows下配置eclipse的android开发环境一般是以下几个步骤:1.安装JDK,

Linux下配置tomcat + apr + native应对高并发

在慢速网络上Tomcat线程数开到300以上的水平,不配APR,基本上300个线程狠快就会用满,以后的请求就只好等待.但是配上APR之后,Tomcat将以JNI的形式调用Apache HTTP服务器的核心动态链接库来处理文件读取或网络传输操作,这时并发的线程数量明显下降,从原来的300可能会马上下降到只有几十,新的请求会毫无阻塞的进来. 一.Tomcat运行模式介绍 Tomcat 有三种(bio,nio.apr) 运行模式,首先来简单介绍下: (1)BIO    BIO(blocking I/O

Linux下配置Tomcat服务器

Linux下配置Tomcat服务器和Windows下其实差不多,可以去官网下载安装包释放或者在线下载,只是当时下载的windows.zip文件,现在下载.tar.gz格式的即可,下面使用命令行的方式安装 还是在/usr/local下新建目录tomcat进入后用wget命令下载最新包,tomcat9.0现在已经出来了,但是为了和eclipse项目更好的兼容,建议下载tomcat8.0的最新包 下载好之后进行释放 tar -xzvf apache-tomcat-8.0.30.tar.gz 释放出来之

Linux下配置VNC

环境: REDHAT 5 1. 检查是否安装了VNC: rpm -qa vnc-server vnc-server-4.1.2-9.el5 没安装的话,安装一下: yum install vnc-server 2. 配置vncserver登录密码: [[email protected] ~]# vncserver You will require a password to access your desktops. Password: Verify: xauth:  creating new