[4월 6일]

정서이·2022년 4월 6일
0

1) 학습한 내용

1.cognitive service

①관련 라이브러리 불러오기

②Subscription key와 서비스 주소확인

③헤더 정보 셋팅

④서비스호출

⑤호출결과로 받은 JSON 처리

2.Face detection

Face API Sample

face api는 인물 분석을 통해서 다양한 정보를 제공해 줍니다. Azure Portal에서 Face API를 먼저 생성하고 접속에 필요한 URL과 subscription key를 가져와서 보여 줍니다.
관련된 라이브러리를 가져옵니다. request는 웹 통신을 위해서 가져오고 BytesIO, Image는 이미지를 처리하기 위해서 사용하고 있습니다. ImageDraw, ImageFont는 이미지 위에 선을 긋거나 글씨를 넣기 위해서 사용됩니다.

import requests
from io import BytesIO
from PIL import Image, ImageDraw, ImageFont

Subscription Key와 서비스의 주소를 설정합니다.

subscription_key = 'cfed609ad3ef4031bb274bb3e808e302'
faceDetection_url = 'https://facedetect00.cognitiveservices.azure.com/face/v1.0/detect'

분석에 사용할 이미지를 확인합니다.

image_url = 'https://postfiles.pstatic.net/MjAyMjAzMTZfMjYw/MDAxNjQ3NDI0NjAzMTI4.jkRx9E9M5NhkB_hXtyvigkoSi_4dPkDue4CCDaNIs34g.svQPjz1ycyUYZUHYWl7k18bktxkzs7GAVySx-78diRUg.JPEG.newwave1014/Screenshot_20220316-185156_Instagram.jpg?type=w966'
img = Image.open(BytesIO(requests.get(image_url).content))
img

headers = {'Ocp-Apim-Subscription-Key': subscription_key}
params = {
    'returnFaceID':'true',
    'returnFaceAttributes': 'age,gender'
}
data={'url':image_url}

서비스를 호출해서 결과를 확인합니다.

response = requests.post(faceDetection_url,
                        headers=headers,
                        params=params,
                        json=data)
faces = response.json()
faces
draw = ImageDraw.Draw(img)
for face in faces:
    rect=face['faceRectangle']
    top=rect['top']
    left=rect['left']
    width=rect['width']
    height=rect['height']
    draw.rectangle(((left,top),(left+width,top+height)),outline='red')
    face_info = face['faceAttributes']
    age = face_info['age']
    gender = face_info['gender']
    result = 'gender:'+gender+' Age:'+ str(age)
    draw.text((left,top),result,fill='blue')
img

얼굴인식

3.OCR 실습

0개의 댓글

관련 채용 정보