亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Merry Christmas-集成華為HMS ML Kit手部關鍵點識別來接住圣誕老人的禮物吧!

標簽:
Android

前言

We wish you a Merry Christmas, We wish you a Merry Christmas, We wish you a Merry Christmas and Happy New Year。圣诞节来临是不是大街小巷已经想起了这首熟悉的圣诞歌曲了呢?铺天盖地的圣诞树,圣诞玩偶,和雪花都在提醒着你圣诞节的到来,一款集成了华为HMS ML Kit手部关键点检测的圣诞小游戏就非常应景啦,一起来体验看看吧!

应用场景

圣诞小游戏是通过手势识别来控制雪橇车左右移动,从而接住从天掉落下来的各类圣诞礼物,每隔15秒将提一次速,给玩家带来不一样的购物游戏体验,快来接住圣诞老人的礼物吧!

在这里插入图片描述

开发实战

1.配置Maven仓地址
打开Android Studio项目级“build.gradle”文件

buildscript {
    repositories {
        google()
        jcenter()
        maven {url 'https://developer.huawei.com/repo/'}
    }
    dependencies {
        ...
        classpath 'com.huawei.agconnect:agcp:1.4.1.300'
    }
}
 
allprojects {
    repositories {
        google()
        jcenter()
        maven {url 'https://developer.huawei.com/repo/'}
    }
}

2.Full SDK集成

dependencies{
    // 引入基础SDK
    implementation 'com.huawei.hms:ml-computer-vision-handkeypoint:2.0.4.300'
    // 引入手部关键点检测模型包
    implementation 'com.huawei.hms:ml-computer-vision-handkeypoint-model:2.0.4.300'
}

用上述方式两种方法之一集成SDK后,在文件头添加配置。
在apply plugin: 'com.android.application’后添加apply plugin: ‘com.huawei.agconnect’

3.创建手部关键点分析器

MLHandKeypointAnalyzer analyzer =MLHandKeypointAnalyzerFactory.getInstance().getHandKeypointAnalyzer();

4.创建识别结果处理类“HandKeypointTransactor”

public class HandKeypointTransactor implements MLAnalyzer.MLTransactor<List<MLHandKeypoints>> {
    @Override
    public void transactResult(MLAnalyzer.Result<List<MLHandKeypoints>> results) {
        SparseArray<List<MLHandKeypoints>> analyseList = results.getAnalyseList();
        // 开发者根据需要处理识别结果,需要注意,这里只对检测结果进行处理。
        // 不可调用ML Kit提供的其他检测相关接口。
    }
    @Override
    public void destroy() {
        // 检测结束回调方法,用于释放资源等。
    }
}

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

analyzer.setTransactor(new HandKeypointTransactor());

6.创建LensEngine

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

7.调用run方法,启动相机,读取视频流,进行识别

// 请自行实现SurfaceView控件的其他逻辑。
SurfaceView mSurfaceView = findViewById(R.id.surface_view);
try {
    lensEngine.run(mSurfaceView.getHolder());
} catch (IOException e) {
    // 异常处理逻辑。
}
  1. 检测完成,停止分析器,释放检测资源
if (analyzer != null) {
    analyzer.stop();
}
if (lensEngine != null) {
    lensEngine.release();
}

结束语

手部关键点识别支持识别包括手指指尖,手腕等21个手部关键点,并返回关键点的位置数据。这款圣诞小游戏就是通过识别手部动态轨迹而控制雪橇车的移动,来接住各类从天而降的礼物,增加游戏的可玩性和趣味性。手部关键点识别还可以广泛应用在其它类别的APP上,大家一起来打开脑洞开发试试吧!

原作者:timer

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消