作者:wangwei8638

手势识别应用于智能家电、家用机器人、可穿戴、儿童教具等硬件设备,通过用户的手势控制对应的功能,人机交互方式更加智能化、自然化。本文主要介绍手势识别API的调用使用攻略。

一.平台接入

此步骤比较简单,不多阐述。可参照之前文档:

https://ai.baidu.com/forum/topic/show/943028

二.分析接口文档

  1. 接口API

https://ai.baidu.com/docs#/Body-API/02f6ce24

(1)接口描述

识别图片中的手势类型,返回手势名称、手势矩形框、概率分数,可识别24种常见手势,适用于手势特效、智能家居手势交互等场景。

支持的24类手势列表:拳头、OK、祈祷、作揖、作别、单手比心、点赞、Diss、我爱你、掌心向上、双手比心(3种)、数字(9种)、Rock、竖中指。

除识别手势外,若图像中检测到人脸,会同时返回人脸框位置。

(2)请求说明

需要用到的信息有:

请求URL:

https://aip.baidubce.com/rest/2.0/image-classify/v1/gesture

Header格式:Content-Type:application/x-www-form-urlencoded

(3)返回示例

 {"log_id": 4466502370458351471,"result_num": 2,"result": [{"probability": 0.9844077229499817,"top": 20,"height": 156,"classname": "Face","width": 116,"left": 173},{"probability": 0.4679304957389832,"top": 157,"height": 106,"classname": "Heart_2","width": 177,"left": 183}]}

2.获取access_token

#client_id 为官网获取的AK, client_secret 为官网获取的SK
client_id =【百度云应用的AK】
client_secret =【百度云应用的SK】#获取token
def get_token():
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=' + client_id + '&client_secret=' + client_secret
request = urllib.request.Request(host)
request.add_header('Content-Type', 'application/json; charset=UTF-8')
response = urllib.request.urlopen(request)
token_content = response.read()
if token_content:
token_info = json.loads(token_content.decode("utf-8"))
token_key = token_info['access_token']
return token_key

三.识别结果

返回结果:

{'log_id': 288214665005727209,'result': [{'classname': 'Five','height': 253,'left': 537,'probability': 0.8713970184326172,'top': 344,'width': 238},{'classname': 'Face','height': 237,'left': 808,'probability': 0.7121545076370239,'top': 164,'width': 208}],'result_num': 2}

处理结果方面:可以看出,检测出手势为Five,以及识别人脸并标出位置。

处理速度方面:处理时间4.80s,时间较长。
四.源码共享

# -*- coding: utf-8 -*-#!/usr/bin/env pythonimport osimport requestsimport base64import jsonfrom pprint import pprintimport time#client_id 为官网获取的AK, client_secret 为官网获取的SKapi_key = '**************************'secret_key = '******************************'class LandmarkRecognizer(object):def __init__(self, api_key, secret_key):self.access_token = self._get_access_token(api_key=api_key, secret_key=secret_key)self.API_URL = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/gesture' + '?access_token=' \+ self.access_token#获取token@staticmethoddef _get_access_token(api_key, secret_key):api = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials' \'&client_id={}&client_secret={}'.format(api_key, secret_key)rp = requests.post(api)if rp.ok:rp_json = rp.json()#            print(rp_json['access_token'])return rp_json['access_token']else:print('=> Error in get access token!')def get_result(self, params):rp = requests.post(self.API_URL, data=params)if rp.ok:#            print('=> Success! got result: ')rp_json = rp.json()pprint(rp_json)return rp_jsonelse:print('=> Error! token invalid or network error!')print(rp.content)return None#手势识别def detect(self, img_path):f = open(img_path, 'rb')strover = '识别结果:'img_str = base64.b64encode(f.read())params = {'image': img_str}tic = time.clock()rp_json = self.get_result(params)toc = time.clock()print(strover)print('花费时长: '+'%.2f'  %(toc - tic) +' s')if __name__ == '__main__':recognizer = LandmarkRecognizer(api_key, secret_key)img = 'F:\paddle\ss5.png'recognizer.detect(img)

详细流程及源代码帮您快速接入百度大脑手势识别相关推荐

  1. 详细功能描述及代码带您快速接入百度大脑通用文字识别

    作者:才能我浪费99 1.功能描述: 基于深度学习及大规模图像训练,准确识别图片中的物体.场景信息.可以应用于: 相关内容及广告推荐:对用户浏览网页中图片进行分析,识别图片内容给出相关内容推荐或广告展 ...

  2. 快速接入百度大脑网络图片识别

    作者:才能我浪费99 1.功能描述 依托全网海量优质数据和业界领先的深度学习技术针对网络图片进行优化识别,支持更多网络字体和复杂背景下的文字识别 2.平台接入 具体接入方式比较简单,可以参考我的另一个 ...

  3. 快速接入百度大脑银行卡识别

    1.功能描述: 支持对主流银行卡的卡号.有效期.发卡行.卡片类型4个关键字段进行结构化识别,识别准确率超过99% 2.平台接入 具体接入方式比较简单,可以参考我的另一个帖子,这里就不重复了: http ...

  4. 快速接入百度大脑出租车票识别

    作者:才能我浪费99 1.功能描述: 支持识别全国各大城市出租车票的6个关键字段,包括发票号码.代码.车号.日期.时间.金额.使用出租车票识别技术,实现对发票号码.日期.时间.金额等信息的自动识别和录 ...

  5. 国航APP接入百度大脑OCR身份证识别技术,让机票购买更便捷!

    价值成果 中国国航APP通过接入百度大脑OCR身份证识别技术,实现了旅客线上自助修正错购机票信息的功能.购票信息错误的旅客只需在中国国航APP上传身份证照片,即可进行购票身份认证,并立即修正错误信息. ...

  6. 快速接入百度地图定位、描点

    这里整理一下接入 百度地图 的流程,做一下记录(基于 Kotlin 语言开发). 第一步,肯定还是注册账号,创建应用了. 先来到百度地图 首页 登录自己或公司的 百度账号(公司项目,一般都是由公司提供 ...

  7. 详细功能及代码快速帮您接入百度大脑人脸融合

    本文主要介绍人脸融合API的调用使用攻略.这里只是调用测试,有的融合结果可能比较恐怖,希望不要拍砖. 一.平台接入 此步骤比较简单,不多阐述.可参照之前文档: https://ai.baidu.com ...

  8. 还在自己手写请假流程吗?Activiti7帮你快速请假!!!

    养成习惯,先赞后看!!! 目录 前言 流程 改动需求-->逼死程序员 Activiti7相当方便快捷 前言 本片博客的重点会放在流程的讲解以及Activiti7的一些重点功能上.详细的Activ ...

  9. Android Studio中快速接入百度OCR遇到的问题解决方法

    直接进入正题,我android 接入第三方插件,一般习惯直接运行demo,然后根据demo的功能,再考虑是把demo导入项目,还是把项目需要的功能,相对应接入项目. 现在开始说说百度OCR,这个百度确 ...

最新文章

  1. 左线性文法和右线性文法_线性代数期末考试复习资料
  2. R语言as.numeric函数将因子变量(factor)转化为数值变量(Numeric)
  3. [翻译]帮助文档-jQuery 选择器
  4. Ext 整合 Jquery
  5. Nodejs开发微信公众号中控服务
  6. 【DataMagic】如何在万亿级别规模的数据量上使用Spark
  7. Dialog详解(包括进度条、PopupWindow、自定义view、自定义样式的对话框)
  8. 监测-病毒篇(病毒的了解和认识)
  9. Harbor 核心服务不可用---故障排除
  10. 系统win8 任务栏消失不见的解决办法
  11. RSTP快速生成树简介、RSTP与STP的区别、RSTP BPDU字段信息、RSTP角色与端口状态介绍、RSTP工作过程之P/A机制详细分解)
  12. 阿里云Centos7搭建MySql数据库
  13. Android 应用快捷方式 Shortcuts(一)
  14. 银联在线支付5100030异常
  15. 访问学者申请德国签证需提供护照吗?需注意些什么?
  16. 一牛网:MTK软件,硬件芯片资料集锦(datasheet,规格书,原理图,参考设计,SDK等)二
  17. python哈姆雷特词频统计_《哈姆雷特与三国演义》词频统计,Hamlet,和
  18. Foxit Reader(福昕PDF阅读器) v4.3.1.218 绿色专业版
  19. 爬虫配套学习-前端学习笔记01
  20. 我爱我专业计算机为主题的演讲稿,2017年我爱我的专业演讲稿精选

热门文章

  1. PostgreSQL学习第十二篇 服务的启停和创建
  2. 利用深度学习算法,一键抠图制作证件照
  3. 我们真的缺前端工程师吗
  4. 山东2022中国农民丰收节 国稻种芯:主场活动在禹城举办
  5. 猴子选大王 java_基于java数据结构链表写的猴子选大王
  6. 故事中的哲理,一起分享一下
  7. pc微信逆向最新3.9.2.23版本
  8. JAVA线程的创建和使用
  9. C语言:向一个数组输入数据,并求出该整形数组中的最大值(vs)
  10. C语言算法——实现二分查找