SeetaFace2采用标准C++开发,全部模块均不依赖任何第三方库,支持x86架构(Windows、Linux)和ARM架构(Android)。
SeetaFace2支持的上层应用包括但不限于人脸门禁、无感考勤、人脸比对等。
编译简介2.1编译依赖GNUMake工具GCC或者Clang编译器CM2.2linux和windows平台编译说明linux和windows上的SDK编译脚本见目录craft,其中craft/linux下为linux版本的编译脚本,craft/windows下为windows版本的编译脚本,默认编译的库为64位Release版本。
linux和windows上的SDK编译方法:打开终端(windows上为VS2015x64NativeToolsCommandPrompt工具,linux上为bash),cd到编译脚本所在目录;
执行对应平台的编译脚本。
linux上example的编译运行方法:cd到example/search目录下,执行make指令;
拷贝模型文件到程序指定的目录下;
执行脚本run.sh。
windows上example的编译运行方法:使用vs2015打开SeetaExample.sln构建工程,修改Opencv3.props属性表中变量OpenCV3Home的值为本机上的OpenCV3的安装目录;
执行vs2015中的编译命令;
拷贝模型文件到程序指定的目录下,运行程序。
2.3Android平台编译说明Android版本的编译方法:安装ndk编译工具;
环境变量中导出ndk-build工具;
cd到各模块的jni目录下(如SeetaNet的Android编译脚本位置为SeetaNet/sources/jni,FaceDetector的Android编译脚本位置为FaceDetector/FaceDetector/jni),执行ndk-build-j8命令进行编译。
编译依赖说明:人脸检测模块FaceDetector,面部关键点定位模块FaceLandmarker以及人脸特征提取与比对模块FaceRecognizer均依赖前向计算框架SeetaNet模块,因此需优先编译前向计算框架SeetaNet模块。
1
亲测可用,jni内有aecm的源码,lib内有编译好的.so,并且wrapper也已经写好,如果直接使用的话请直接连package一起copy否则会报错,如果自己写wrapper自己编译jni那请自便,使用效果明显
2024/2/25 1:34:51 1.23MB webrtc aecm android
1
提供javajni示例程序,linuxso工程,windowsdll工程,将科大讯飞语音合成程序封装成windows支持的dll和linux支持的so并且导出api,java使用jni直接调用。
代码均已编译测试通过,需要appid和mscdll则可以自己去官网重新下载。
2024/2/17 18:25:19 20.59MB 语音合成 jni调用 linux windows
1
本地接口规范,官方中文版尽管可以完全用Java编写应用程序,但是有时单独用Java不能满足应用程序的需要。
程序员使用JNI来编写Java本地方法,可以处理那些不能完全用Java编写应用程序的情况。
2024/2/13 16:25:41 695KB JNI JavaNativeInterface
1
学习JNI编译时,缺少的jni.h和jni_md.h头文件
2024/2/10 1:06:01 9KB jni.h jni_md.h
1
使用JNI的方式建立socket连接并进行socket数据的接收与发送初步了解了JNI的使用方式
2024/1/25 20:21:05 168KB Socket JNI Android
1
JamVMisanewJavaVirtualMachinewhichconformstotheJVMspecificationversion2(bluebook).IncomparisontomostotherVMs(freeandcommercial)itisextremelysmall,withastrippedexecutableonPowerPCofonly~130K,andIntel100K.However,unlikeothersmallVMs(e.g.KVM)itisdesignedtosupportthefullspecification,andincludessupportforobjectfinalisation,theJavaNativeInterface(JNI)andtheReflectionAPI.
2024/1/23 8:20:24 611KB JamVM
1
这个串口调试demo应该可以说运行于任何厂家做的android开发板,主要是这个没有采用厂家的库文件,就我测试的,一个我们自己做的android2.3系统,底层硬件操作(指串口)有专门的*.so文件支持,一个是其他公司的,也是一个*.so文件,但是这两个*.so文件不一样,接口参数也不一样,这两个的串口相关程序都没有法在彼此的平台上跑起来,但是这个demo可以,他采用jni形式完成的。
具体怎么回事,还在研究中。
2024/1/8 22:55:29 1.54MB android 串口 jni
1
安卓程序ptrace注入例子,送给想研究手游注入的同学使用JNI注入
2023/12/29 4:47:13 88KB 注入 JNI
1
1、JNI动态注册实例。
2、运行环境是Androidstudio。
3、动态注册是在JNi层实现的,JAVA层不需要关心,因为在system.load时就会去调用JNI_OnLoad,有就注册,没有就不注册。
动态注册的原理:JNI允许我们提供一个函数映射表,注册给JVM,这样JVM就可以用函数映射表来调用相应的函数, 而不必通过函数名来查找相关函数(这个查找效率很低,函数名超级长)流程更加清晰可控,效率更高.。
2023/12/26 14:14:46 13.65MB Android JNI
1
共 49 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡