代码拉取完成,页面将自动刷新
package org.img.processing;
import org.smirkcat.loaddll;
/**
* @author smirklijie
* @time 2016年7月7日17:27:05
* @see 用于提供java调用c++接口例子
*/
public class ImgJni {
//函数指针地址,linux64位指针地址为8字节,需要64位存储,需要init函数初始化
public long ptrNative;
public ImgJni(){
ptrNative=init();
}
public ImgJni(String path){
ptrNative=initPath(path);
}
/**
* 实现图片的传图,返回相关信息
* @param ptrNative
* @param img
* @return
*/
public native String processing(long ptrNative,byte[] img);
/**
* 预留函数,初始化类和模型文件
* @param path
* @return
*/
public native long initPath(String path);
/**
* 预留函数,初始化类
* @return
*/
public native long init();
/**
* 删除c++类,删除前确信不在调用,不然需重新执行init函数给ptrNative赋值
* 只能执行一次,两次出错,内存释放只有一次
* @return
*/
public native void delete(long ptrNative);
// 静态调用只执行一次,加载本地库 ,编译好的动态放到src/main/resources下面
// 此处用了我的 项目loaddll来加载,可以用原生方法来加载s
static {
try {
JarDllJava.loadLib("libimgjni", "/dll/", ImgJni.class);
System.out.println("加载动态库imgjni完成");
} catch (Exception e) {
System.err.println("加载动态库imgjni失败,错误日志:" + e.getMessage());
}
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型