给大家介绍一个好用的在 Android 手机上的身体检测和关键点。先来看效果。
项目名字叫:TengineKit
如何使用这个项目呢? 首先,要在 Android 的 build.gradle 里面引用库
implementation 'com.tengine.tenginekit:core:0.0.1'
implementation 'com.tengine.tenginekit:body:0.0.1'
第二步呢,初始化 Tengine-Kit:
KitCore.init(this,
AndroidConfig
.create()
.setCameraMode()
.openFunc(AndroidConfig.Func.BlazePose).openFunc(AndroidConfig.Func.BlazePoseLandmark)
.setDefaultInputImageFormat()
.setInputImageSize(previewWidth, previewHeight)
.setOutputImageSize((int) ScreenWidth, (int) ScreenHeight)
);
第三步呢,调用 api:
Body.BodyDetect bodyDetect = Body.detect(mNV21Bytes);
List<BodyDetectInfo> bodyDetectInfos = new ArrayList<>();
List<BodyLandmarkInfo> landmarkInfos = new ArrayList<>();
if (bodyDetect.getBodyCount() > 0) {
bodyDetectInfos = bodyDetect.getDetectInfos();
landmarkInfos = bodyDetect.landmark2d();
}
第四步呢,就是根据得到的身体框和关键点进行绘制。
第五步呢,肯定就是释放了。
KitCore.release();
这样你可以得到美女跳舞的关键点拉。根据关键点再进行相应的处理,就可以变成火柴人跳舞拉。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.