Linux下安装并使用Java开发opencv的配置

简介:

inux编译安装opencv

首先, linux下安装opencv其实不麻烦的, 参考文档即可完成: http://docs.opencv.org/trunk/doc/tutorials/introduction/linux_install/linux_install.html

大致有以下几个步骤:

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


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

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

3) 新建一个build文件夹


 
 
  1. cd ~/opencv 
  2. mkdir build 
  3. cd build 

4) 在终端里输入:


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

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

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

安装opencv-java

这一步非常DT, 因为官网上还有一个文档, 专门讲怎么用java开发的…http://docs.opencv.org/doc/tutorials/introduction/desktop_java/java_dev_intro.html

1) 首先, 需要安装ant:


 
 
  1. sudo apt-get install ant 

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


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

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

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

Linux下安装并使用Java开发opencv的配置

查了半天, 发现这是一个BUG: http://code.opencv.org/issues/2859

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

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


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

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


 
 
  1. make -j8 
  2. sudo make install 

这样就可以成功make了…

如何判断是否安装成功?

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

Linux下安装并使用Java开发opencv的配置

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

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

Eclipse下的配置

这里有一篇非常好的帖子, 写的非常到位, 我就不重复了, 链接:

http://exintopro.net/blog/2013/10/02/setting-up-eclipse-for-using-opencv-java-in-ubuntu/

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


来源:51CTO

相关文章
|
3月前
|
安全 前端开发 Java
《深入理解Spring》:现代Java开发的核心框架
Spring自2003年诞生以来,已成为Java企业级开发的基石,凭借IoC、AOP、声明式编程等核心特性,极大简化了开发复杂度。本系列将深入解析Spring框架核心原理及Spring Boot、Cloud、Security等生态组件,助力开发者构建高效、可扩展的应用体系。(238字)
|
5月前
|
Java Linux Apache
Apache NetBeans 27 (macOS, Linux, Windows) - Java 等多语言开源跨平台 IDE
Apache NetBeans 27 (macOS, Linux, Windows) - Java 等多语言开源跨平台 IDE
343 5
Apache NetBeans 27 (macOS, Linux, Windows) - Java 等多语言开源跨平台 IDE
|
4月前
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
4月前
|
存储 Java 关系型数据库
Java 项目实战基于面向对象思想的汽车租赁系统开发实例 汽车租赁系统 Java 面向对象项目实战
本文介绍基于Java面向对象编程的汽车租赁系统技术方案与应用实例,涵盖系统功能需求分析、类设计、数据库设计及具体代码实现,帮助开发者掌握Java在实际项目中的应用。
184 0
|
5月前
|
JavaScript 安全 前端开发
Java开发:最新技术驱动的病人挂号系统实操指南与全流程操作技巧汇总
本文介绍基于Spring Boot 3.x、Vue 3等最新技术构建现代化病人挂号系统,涵盖技术选型、核心功能实现与部署方案,助力开发者快速搭建高效、安全的医疗挂号平台。
290 3
|
5月前
|
安全 Java 数据库
Java 项目实战病人挂号系统网站设计开发步骤及核心功能实现指南
本文介绍了基于Java的病人挂号系统网站的技术方案与应用实例,涵盖SSM与Spring Boot框架选型、数据库设计、功能模块划分及安全机制实现。系统支持患者在线注册、登录、挂号与预约,管理员可进行医院信息与排班管理。通过实际案例展示系统开发流程与核心代码实现,为Java Web医疗项目开发提供参考。
294 2
|
4月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
497 1
二、Linux文本处理与文件操作核心命令