当前位置:首页 > 经验 >

手机看手上的骨骼用的啥软件(有什么软件可以直接看手骨头)

来源:原点资讯(www.yd166.com)时间:2022-10-29 17:07:55作者:YD166手机阅读>>

你有没有过这种体验,拍照时对着镜头,脑子一片空白、表情僵硬、手和脚无处安放,最后拍出来的照片很是奇怪。拍照软件中的固定姿势抓拍功能可以帮助你:选择一个你想要的姿势模板,当你摆出同款姿势时,软件会进行自动抓拍,完美避开拍照时的尴尬。本文详细介绍了华为HMS ML kit人体骨骼识别技术的集成过程,该技术精准定位了14个骨骼点,可以轻松实现固定姿势抓拍。
人体骨骼检测功能开发实战
做了一个视频流骨骼识别小demo,做一次实战演练,
Github demo源码:https://github.com/HMS-Core/hms-ml-demo/tree/master/MLKit-Sample
1. 开发前准备
您需要完成必要的开发准备工作,同时请确保您的工程中已经配置HMS Core SDK的maven仓地址,并且完成了本服务的SDK集成。
1.1 在项目级build.gradle文件中配置maven仓地址。

buildscript { repositories { google() jcenter() maven { url 'https://developer.huawei.com/repo/' } } //配置AGC插件 dependencies { classpath "com.android.tools.build:gradle:3.3.2" } } allprojects { repositories { google() jcenter() maven { url 'https://developer.huawei.com/repo/' } } }

1.2 在应用级build.gradle中引入SDK。

dependencies { implementation 'com.huawei.hms:ml-computer-vision-skeleton-model:2.0.1.300' implementation 'com.huawei.hms:ml-computer-vision-skeleton:2.0.1.300' implementation 'com.huawei.hms:ml-computer-vision-base:2.0.1.300' }

2. 开发步骤
2.1 静态图片检测
2.1.1 创建人体骨骼检测器。

MLSkeletonAnalyzer analyzer = MLSkeletonAnalyzerFactory.getInstance().getSkeletonAnalyzer();

2.1.2 通过bitmap创建MLFrame,建议图片尺寸不小于320 * 320像素,不大于1920 * 1920像素。

//通过bitmap创建MLFrame。 MLFrame frame = MLFrame.fromBitmap(bitmap);

2.1.3 调用“asyncAnalyseFrame”方法进行人体骨骼检测。

Task<List<MLSkeleton>> task = analyzer.asyncAnalyseFrame(frame); task.addOnSuccessListener(new OnSuccessListener<List<MLSkeleton>>() { public void onSuccess(List<MLSkeleton> skeletons) { // 对检测结果进行处理。 } }).addOnFailureListener(new OnFailureListener() { public void onFailure(Exception e) { // 检测失败。 } });

2.1.4 检测完成,停止分析器,释放检测资源。

try { if (analyzer != null) { analyzer.stop(); } } catch (IOException e) { // 异常处理。 }

给大家看下Demo效果:

手机看手上的骨骼用的啥软件,有什么软件可以直接看手骨头(1)

2.2 动态视频检测
2.2.1 创建人体骨骼检测器。

MLSkeletonAnalyzer analyzer = MLSkeletonAnalyzerFactory.getInstance().getSkeletonAnalyzer();

2.2.2 开发者创建识别结果处理类“SkeletonAnalyzerTransactor”,该类实现MLAnalyzer.MLTransactor<T>接口,使用此类中的“transactResult”方法获取检测结果并实现具体业务。

public class SkeletonAnalyzerTransactor implements MLAnalyzer.MLTransactor<MLSkeleton> { @Override public void transactResult(MLAnalyzer.Result<MLSkeleton> results) { SparseArray<MLSkeleton> items = results.getAnalyseList(); // 开发者根据需要处理识别结果,例如,在此方法中进行相似度计算,从而在检测到特定姿势后进行拍照等操作。 // 需要注意,这里只对检测结果进行处理,不可调用ML Kit提供的其他检测相关接口。 // 将SparseArray封装的结果转换为List数组,以便进行相似度比较。 List<MLSkeleton> resultsList = new ArrayList<>(); for (int i = 0; i < items.size(); i ) { resultsList.add(items.valueAt(i)); } // 在检测结果和模板之间进行相似度比较。 // templateList表示人体骨骼模板,可以通过静态图片检测的方式生成模板,支持单人或多人模板匹配。 float result = analyzer.caluteSimilarity(resultsList, templateList); } @Override public void destroy() { // 检测结束回调方法,用于释放资源等。 } }

2.2.3 设置识别结果处理器,实现分析器与结果处理器的绑定。

analyzer.setTransactor(new SkeletonAnalyzerTransactor());

2.2.4 创建LensEngine,该类由ML Kit SDK提供,用于捕捉相机动态视频流并传入分析器。建议设置的相机显示尺寸不小于320 * 320像素,不大于1920 * 1920像素。

// Create LensEngine. LensEngine lensEngine = new LensEngine.Creator(getApplicationContext(), analyzer) .setLensType(LensEngine.BACK_LENS) .applyDisplayDimension(1280, 720) .applyFps(20.0f) .enableAutomaticFocus(true) .create();

2.2.5 开发者启用相机,读取视频流并进行识别,待检测完成,停止分析器,释放检测资源。

if (analyzer != null) { try { analyzer.stop(); } catch (IOException e) { // 异常处理。 } } if (lensEngine != null) { lensEngine.release(); }

动态视频流效果:

手机看手上的骨骼用的啥软件,有什么软件可以直接看手骨头(2)

基于华为HMS ML kit人体骨骼识别技术,我们能做的还有很多:
a.在体感游戏中让虚拟形象模拟真人动作,增加游戏趣味性。
b.辅助健身锻炼或康复训练时的姿势矫正。
c.在监控中检测异常行为。
更详细的开发指南参考华为开发者联盟官网:
华为开发者联盟机器学习服务开发指南
欲了解更多详情,请参阅:
华为开发者联盟官网:https://developer.huawei.com/consumer/cn/hms
获取开发指导文档:https://developer.huawei.com/consumer/cn/doc/development
参与开发者讨论请到Reddit社区:https://www.reddit.com/r/HMSCore/
下载demo和示例代码请到Github:https://github.com/HMS-Core
解决集成问题请到Stack Overflow:https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Newest

原文链接:https://developer.huawei.com/consumer/cn/forum/topicview?fid=18&tid=0202333916402640253
原作者:留下落叶

栏目热文

扫描手骨头的软件(手机骨头扫描软件)

扫描手骨头的软件(手机骨头扫描软件)

传说中的「刷掌支付」,可能真的要来咯~不知道最近各位机友,有没有刷到这样一条新闻:简单来说,就是亚马逊准备将自家的「刷掌...

2022-10-29 17:39:39查看全文 >>

手机可以扫描照片吗(如何用手机扫描照片)

手机可以扫描照片吗(如何用手机扫描照片)

很多人都有收藏老照片的习惯,一些有趣有意思的老照片,也想把它们珍藏在自己的手机里,这样随时都可以进行查看,那么我们怎么才...

2022-10-29 17:37:51查看全文 >>

手机扫描手掌骨头(手机扫描骨头软件)

手机扫描手掌骨头(手机扫描骨头软件)

来源:江苏新闻大家有没有仔细观察过自己拿手机的姿势?是用整个手掌握持手机,还是用小拇指托住手机呢?近日,“长时间握手机导...

2022-10-29 16:59:08查看全文 >>

手机扫描骨骼怎么弄的(手机可以扫描自己的骨骼教程)

手机扫描骨骼怎么弄的(手机可以扫描自己的骨骼教程)

医生让我检查骨密度?骨密度是什么?为什么要查它?都说骨密度低表示有骨质疏松症,是不是证明骨密度越高越好呢?骨密度检查结果...

2022-10-29 16:58:42查看全文 >>

手机真的能扫描手骨吗(手机扫描手骨软件)

手机真的能扫描手骨吗(手机扫描手骨软件)

手势识别在很多人眼中是高科技、高大上、人工智能的代名词,实际应用中,手势识别已经被很多领域应用到了人们的日常生活中,如我...

2022-10-29 17:06:34查看全文 >>

手机怎样扫描能看见手指骨(怎么能看到自己手的骨头的软件)

手机怎样扫描能看见手指骨(怎么能看到自己手的骨头的软件)

最近,我换上了华为Mate50。既然有了新机,就要挨个试试它的新科技,让自己充分享受到“我有你没有”的新机优越感。在试用...

2022-10-29 17:04:22查看全文 >>

手机扫描身体骨骼(手机可以扫描自己的骨骼教程)

手机扫描身体骨骼(手机可以扫描自己的骨骼教程)

新华社上海1月27日电 题:当化石标本碰上“元宇宙”,你想“召唤”哪只史前动物?新华社记者陈爱平农历虎年临近,你想“邂逅...

2022-10-29 17:12:00查看全文 >>

手机怎么扫描人体骨架(手机里怎么看真实的骨骼扫描器)

手机怎么扫描人体骨架(手机里怎么看真实的骨骼扫描器)

新华社广州11月28日电(记者吴涛)当你的手机扫过图书,故事中的人物、建筑等要素就会像3D电影一样呈现在屏幕上,你不仅可...

2022-10-29 17:34:34查看全文 >>

苹果11关机之后怎么开机(苹果11关机开机全过程)

苹果11关机之后怎么开机(苹果11关机开机全过程)

相信有小伙伴第一次接触iphone或者刚入手iphone14或iPhone 14 pro系列新机后,发现我们在以往用机经...

2022-10-29 17:45:32查看全文 >>

苹果11怎么关机和开机视频(苹果11关机了怎么开机)

苹果11怎么关机和开机视频(苹果11关机了怎么开机)

相信很多拿到iPhone 14系列手机的用户会发现,与以往不同iPhone 14系列手机开机时会有开机声音,关机时也有关...

2022-10-29 17:06:35查看全文 >>

文档排行