调用百度云计算,实现python手势识别。
转载于10分钟用python实现手势识别

import os
import cv2
from aip import AipBodyAnalysis
from aip import AipSpeech
from threading import Thread
import time
import playsound

""" 你的 APPID AK SK """
APP_ID = '23678578'
API_KEY = 'XRdiguUTBroIEicHjNtxZCQ6'
SECRET_KEY =  'BOqhMisUWPFsMGMs3QDuDoskSQYYnRwV'
''' 调用'''

hand={'One':'数字1','Five':'数字5','Fist':'拳头','Ok':'OK',
        'Prayer':'祈祷','Congratulation':'作揖','Honour':'作别',
        'Heart_single':'比心心','Thumb_up':'点赞','Thumb_down':'Diss',
        'ILY':'我爱你','Palm_up':'掌心向上','Heart_1':'双手比心1',
        'Heart_2':'双手比心2','Heart_3':'双手比心3','Two':'数字2',
        'Three':'数字3','Four':'数字4','Six':'数字6','Seven':'数字7',
        'Eight':'数字8','Nine':'数字9','Rock':'Rock','Insult':'竖中指','Face':'脸'}

#语音合成
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

#手势识别
gesture_client = AipBodyAnalysis(APP_ID, API_KEY, SECRET_KEY)

capture = cv2.VideoCapture(0)#0为默认摄像头
def camera():

    while True:
        #获得图片
        ret, frame = capture.read()
        # cv2.imshow(窗口名称, 窗口显示的图像)
        #显示图片
        cv2.imshow('frame', frame)
        if cv2.waitKey(1) == ord('q'):
            break
Thread(target=camera).start()#引入线程防止在识别的时候卡死

def gesture_recognition():

    #第一个参数ret 为True 或者False,代表有没有读取到图片

    #第二个参数frame表示截取到一帧的图片

    while True:
        try:
            ret, frame = capture.read()

            #图片格式转换
            image = cv2.imencode('.jpg',frame)[1]

            gesture =  gesture_client.gesture(image)   #AipBodyAnalysis内部函数
            words = gesture['result'][0]['classname']

            voice(hand[words])
            print(hand[words])

        except:
            voice('识别失败')
        if cv2.waitKey(1) == ord('q'):
            break

def voice(words):
    #语音函数
    result  = client.synthesis(words, 'zh', 1, {
        'vol': 5,
    })
    if not isinstance(result, dict):
        with open('./res.mp3', 'wb') as f:
            f.write(result)
            f.close()
        playsound('./res.mp3')

gesture_recognition()
Logo

GitCode AI社区是一款由 GitCode 团队打造的智能助手,AI大模型社区、提供国内外头部大模型及数据集服务。

更多推荐