raspberrypi4 条件分岐⑤🐈







今までのプログラムを応用させ、 顔認識を使って、"happiness"の値だけを抽出し、その値が0.5以上の値であれば猫が鳴くというプログラムを構成する



ソースコードの表示

import cognitive_face as CF
import json
import picamera
import time
import cv2 as cv
import pygame
import time


KEY = ''
ENDPOINT = ''

CF.Key.set(KEY)
CF.BaseUrl.set(ENDPOINT)

while True:
with picamera.PiCamera() as camera:
camera.resolution = (512,384)
camera.capture('test.jpg')
print('capture')
img = cv.imread('test.jpg')
grayimg = cv.cvtColor(img,cv.COLOR_BGR2GRAY)
img = "test.jpg"
faces = CF.face.detect(img, attributes='emotion')
f=json.dumps(faces)
j=json.loads(f)

for i in range(0,len(j)):
print(j[i]['faceAttributes']['emotion']['happiness'])

happiness_val = j[i]['faceAttributes']['emotion']['happiness']

if happiness_val > 0.5 :
pygame.mixer.init(frequency=44100)
pygame.mixer.music.load("audio/cat1a.mp3")
pygame.mixer.music.play(1)
time.sleep(2)
pygame.mixer.music.stop()


else:
sys.exit()