Raspberry Pi + Apache + Google Cloud Vision API + Slack API 사용하기
목적
전체상
동작 확인
http://192.168.x.x/test.jpg
(Raspberry Pi의 IP 주소)
받은 슬랙
아파치
sudo chmod 777 /var/www/html
파이썬
test.py
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import io
from time import sleep
from datetime import datetime
import subprocess
import requests
import json
from google.cloud import vision
from google.cloud.vision import types
def exec_cmd(cmd):
#r = subprocess.check_output(cmd, shell=True)
#return r.decode('utf-8').strip()
subprocess.call(cmd, shell=True)
def take_photo():
#now = datetime.now()
#f = now.strftime('%Y-%m-%d_%H-%M-%S') + '.jpg'
f = 'test.jpg'
exec_cmd('fswebcam ' + f)
def get_label(file_name):
#key_path = '/home/pi/*/yourkey.json'
#os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = key_path
client = vision.ImageAnnotatorClient()
with io.open(file_name, 'rb') as image_file:
content = image_file.read()
image = types.Image(content=content)
response = client.label_detection(image=image)
labels = response.label_annotations
d = labels[0].description
s = labels[0].score
text = 'label: ' + d + ' score: ' + '{:.2f}'.format(s)
return text
def send_slack(text):
WEB_HOOK_URL = 'https://hooks.slack.com/services/xxx'
requests.post(WEB_HOOK_URL, data = json.dumps({
'text': text,
}))
if __name__ == '__main__':
take_photo()
txt = get_label('test.jpg')
send_slack(txt)
쉘 스크립트
test.sh
sleep 3
python3 test.py
cp test.jpg /var/www/html/
Reference
이 문제에 관하여(Raspberry Pi + Apache + Google Cloud Vision API + Slack API 사용하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/takeshikondo/items/cc2bc5c692d75d50d415텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)