Atitit 图像处理 调用opencv 通过java  api   attilax总结

Atitit 图像处理 调用opencv 通过java  api   attilax总结

1.1. Opencv java api的支持 opencv2.4.2 就有了对java api的支持1

1.2. 安装2016-05-19  opencv v2.4.13   267M  ,一个压缩包解压即可1

1.3. Opencv d java 接口api  ,把opencv-2413.jar加入java项目1

1.4. /AtiPlatf_ee/src/com/attilax/img/SfitTest.java 提取sfit特征2

2. Qa3

2.1.  java.lang.UnsatisfiedLinkError: Directory separator should not appear in library name: D:\tsclib.dll3

2.2. System.loadLibrary   Native.loadLibrary 区别3

2.3. 参考资料4

1.1. Opencv java api的支持 opencv2.4.2 就有了对java api的支持

2012-07-04 opencv2.4.2 就有了对java api的支持

虽说以前可以使用jna调用dll但是比较麻烦。数据类型可能对应不上。。使用python调用dll也是可以的。

有了全新的java api支持那就最好不过了。

1.2. 安装2016-05-19  opencv v2.4.13   267M  ,一个压缩包解压即可

解压以后2.7g  包含64 位和x86 ,如果只要64位,则1.5g差不多了

又包含vc12 和vc11版,,如果只要一个vc12,则600M体积就可以了。。

C:\progrm\opencv\build\x64\vc12

1.3. Opencv d java 接口api  ,把opencv-2413.jar加入java项目

C:\progrm\opencv\build\java

opencv-2413.jar

opencv_java2413.dll

1.4. /AtiPlatf_ee/src/com/attilax/img/SfitTest.java 提取sfit特征

package com.attilax.img;

import org.opencv.core.Core;

import org.opencv.core.Mat;

import org.opencv.core.MatOfKeyPoint;

import org.opencv.highgui.Highgui;

import org.opencv.features2d.*;

public class SfitTest {

/**

* ret

* 128

1589

* @param args

*/

public static void main(String[] args) {

//opencv_java2413  Core.NATIVE_LIBRARY_NAME

System.load( "C:\\progrm\\opencv\\build\\java\\x64\\opencv_java2413.dll" );

Mat test_mat = Highgui.imread("C:\\000sklt\\2.jpg");

Mat desc = new Mat();

FeatureDetector fd = FeatureDetector.create(FeatureDetector.SIFT);

MatOfKeyPoint mkp =new MatOfKeyPoint();

fd.detect(test_mat, mkp);

DescriptorExtractor de = DescriptorExtractor.create(DescriptorExtractor.SIFT);

de.compute(test_mat,mkp,desc );//提取sift特征

System.out.println(desc.cols());

System.out.println(desc.rows());

}

}

2. Qa

2.1.  java.lang.UnsatisfiedLinkError: Directory separator should not appear in library name: D:\tsclib.dll

说明loadLibrary不支持路径。


     System.loadLibrary("tsclib.dll");
修改成
     System.load("D:/tsclib.dll");

2.2. System.loadLibrary   Native.loadLibrary 区别

一中是用JNA方法,另外是用JNative方法,两种都是转载来的,

Native.loadLibrary(DLLPATH, DM.class); 需要实现一个接口

Exception in thread "main" java.lang.UnsatisfiedLinkError: no opencv_java2413 in java.library.path

at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)

at java.lang.Runtime.loadLibrary0(Runtime.java:870)

at java.lang.System.loadLibrary(System.java:1122)

at com.attilax.img.SfitTest.main(SfitTest.java:15)

2.3. 参考资料

java中调用dll文件的两种方法 - jimmy609的专栏 - 博客频道 - CSDN.NET.html

opencv java api提取图片sift特征 - anexplore - 博客园.html

OpenCV 3.0 版正式发布,史上功能最全,速度最快的版本 - OPEN资讯.html

opencv_百度百科.html

作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher

捕鸟王"Bird Catcher 王中之王King of Kings 虔诚者Pious 宗教信仰捍卫者 Defender Of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak

简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴

全名::Emir Attilax Akbar bin Mahmud bin  attila bin Solomon bin adam Al Rapanui 埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 本亚当  阿尔 拉帕努伊

常用名:艾提拉(艾龙),  EMAIL:[email protected]

头衔:uke总部o2o负责人,全球网格化项目创始人,

uke宗教与文化融合事务部部长, uke宗教改革委员会副主席

,Uke部落首席大酋长,

uke制度与重大会议委员会委员长,uke保安部首席大队长,uke制度检查委员会副会长,

奶牛科技cto ,uke 首席cto

uke波利尼西亚区大区连锁负责人,克尔格伦群岛区连锁负责人,莱恩群岛区连锁负责人,uke汤加王国区域负责人。布维岛和南乔治亚和南桑威奇群岛大区连锁负责人

Uke软件标准化协会理事长理事长 uke终身教育学校副校长

Uke 数据库与存储标准化协会副会长 uke出版社编辑总编

Uke医院方面的创始人

转载请注明来源:attilax的专栏  ?http://www.cnblogs.com/attilax/

--Atiend

 

时间: 2024-11-04 19:01:49

Atitit 图像处理 调用opencv 通过java  api   attilax总结的相关文章

Atitit。激活某个程序的api attilax总结

Atitit.激活某个程序的api attilax总结 1. 设置当前某窗口为当前窗口,有几个步骤要做:1.得到窗口句柄FindWindow2.切换键盘输入焦点AttachThreadInput3.显示窗口ShowWindow(有些窗口被最小化/隐藏了)4.更改窗口的Zorder,SetWindowPos使之最上,为了不影响后续窗口的Zorder,改完之后,再还原5.最后SetForegroundWindow这样应该可以保窗体跑到前台吧?? 作者:: 老哇的爪子 Attilax 艾龙,  EMA

(4)通过调用hadoop的java api实现本地文件上传到hadoop文件系统上

(1)首先创建java project 选择eclipse菜单上File->New->Java Project. 并命名为UploadFile. (2)加入必要的hadoop jar包 右键选择JRE System Library,选择Build Path下的Configure Build Path. 然后选择Add External Jars.到你解压的hadoop源码目录下加入jar包和lib下的全部jar包. lib目录下的全部jar包. (3)加入UploadFile类 代码例如以下:

Atitit opencv版本新特性attilax总结

1.1. :OpenCV 3.0 发布,史上功能最全,速度最快的版1 1.2. 应用领域2 1.3. OPENCV2.4.3改进 2.4.2就有了对java的支持2 1.4. opencv在2.4.4版本以后添加了对java的最新支持,可以利用java api了.3 2. Qa3 2.1.  java.lang.UnsatisfiedLinkError: Directory separator should not appear in library name: D:\tsclib.dll3 1

在NDK C++线程中如何调用JAVA API

from://http://www.eoeandroid.com/thread-150995-1-1.html 在NDK中创建的线程中, 只允许调用静态的Java API. 当在线程中调用env->FindClass(), 系统就会发出异常.http://android.wooyd.org/JNIExample中有较详细的调用说明. 示例代码如下: JAVA 代码:public class simple_test extends Activity {    ...    public stati

在IntelliJ IDEA 13中配置OpenCV的Java开发环境

准备工作: 下载IDEA 13(这里以版本13为例,后面简称IDEA): 下载Java JDK(用于配置基本的Java开发环境): 下载OpenCV 2.4.9(这里以版本2.4.9为例,据这篇文章说,OpenCV的2.4版本开始支持Java API接口): 安装IDEA: 安装JDK,并在IDEA中配置JDK: 将下载好的OpenCV 2.4.9解压到某个目录下,例如,解压后的路径为“D:\opencv”,该路径下包含build文件夹和source文件夹. 配置开发环境: 1)在IDEA中新建

kafka2.9.2的伪分布式集群安装和demo(java api)测试

1.什么是kafka? kafka是LinkedIn开发并开源的一个分布式MQ系统,现在是Apache的一个孵化项目.在它的主页描述kafka为一个高吞吐量的分布式(能将消息分散到不同的节点上)MQ.Kafka仅仅由7000行Scala编写,据了解,Kafka每秒可以生产约25万消息(50 MB),每秒处理55万消息(110 MB). kafka目前支持多种客户端语言:java,python,c++,php等等. kafka集群的简要图解如下,producer写入消息,consumer读取消息

ubuntu12.04+kafka2.9.2+zookeeper3.4.5的分布式集群安装和demo(java api)测试

博文作者:迦壹 博客地址:http://idoall.org/home.php?mod=space&uid=1&do=blog&id=547 转载声明:可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明,谢谢合作! --------------------------------------- 目录: 一.什么是kafka? 二.kafka的官方网站在哪里? 三.在哪里下载?需要哪些组件的支持? 四.如何安装? 五.FAQ 六.扩展阅读 一.什么是kafka? ka

kafka2.9.2的分布式集群安装和demo(java api)测试

目录: 一.什么是kafka? 二.kafka的官方网站在哪里? 三.在哪里下载?需要哪些组件的支持? 四.如何安装? 五.FAQ 六.扩展阅读   一.什么是kafka? kafka是LinkedIn开发并开源的一个分布式MQ系统,现在是Apache的一个孵化项目.在它的主页描述kafka为一个高吞吐量的分布式(能将消息分散到不同的节点上)MQ.Kafka仅仅由7000行Scala编写,据了解,Kafka每秒可以生产约25万消息(50 MB),每秒处理55万消息(110 MB). kafka目

Atitit 图像处理之编程之类库调用的接口api cli gui ws rest  attilax大总结.docx

Atitit 图像处理之编程之类库调用的接口api cli gui ws rest  attilax大总结.docx 1. 为什么需要接口调用??1 1.1. 为了方便集成复用模块类库1 1.2. 嫁接不同的语言与类库,以及嵌入dsl1 1.3. 方便跨机器,跨开发板,跨硬件,跨运行环境的代码复用2 2. 接口api的历史2 2.1. 发展历程2 2.2. API 这个类库默认提供的接口,要求同语言调用一般2 2.3. Cli接口 命令行接口.单机跨语言接口(推荐比较常用)3 2.4. 图形用户