반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- xcode
- picker
- build
- TensorFlow
- jest
- react
- ReactNative
- node
- webpack
- unittest
- qunit
- Chrome
- androidstudio
- avds
- localserver
- Android
- 네트워크
- IOS
- 센토스
- MAC
- PYTHON
- 맥
- VirtualBox
- MachineLearning
- centos
- 개발
- 리눅스
- vsCode
- linux
Archives
- Today
- Total
로메오의 블로그
[Facial Recognition] 단체사진에서 인원수 알아내기 본문
반응형
프로젝트 설정
$ python3 --version
Python 3.7.4
$ cd /my/project/path
$ mkdir facial_recognition
$ mkdir facial_recognition/img facial_recognition/img/group
$ code ./facial_recognition
img/group 폴더에 단체 사진을 넣습니다.
라이브러리 설치
$ pip3 install opencv-python
$ pip3 install opencv-contrib-python
$ pip3 install cmake
$ pip3 install dlib
$ pip3 install face_recognition
$ pip3 install flask
findfaces.py
$ touch findfaces.py
import face_recognition
image = face_recognition.load_image_file('./img/group/AFP_1HX9KB_1561790986947_1561791001208.jpg')
face_locations = face_recognition.face_locations(image)
# 각 얼굴의 coordinate를 표시한다.
print(face_locations)
$ python3 findfaces.py
[(14, 161, 50, 125), (42, 261, 78, 225), (18, 353, 54, 317), (54, 453, 90, 417)]
결괏값에 4개의 coordinates가 Array로 표시됩니다.
(top, right, bottom, left) 순서입니다.
(사진에 5명 있는데, 제일 오른쪽의 흑인 분은 인식 못한듯...)
import face_recognition
image = face_recognition.load_image_file('./img/group/AFP_1HX9KB_1561790986947_1561791001208.jpg')
face_locations = face_recognition.face_locations(image)
# 각 얼굴의 coordinate를 표시한다.
# print(face_locations)
# 사진에 있는 인원수를 반환한다.
print(f'사진에는 모두 {len(face_locations)}명의 사람이 있습니다.')
$ python3 findfaces.py
사진에는 모두 4명의 사람이 있습니다.
사진을 바꿔 보겠습니다.
import face_recognition
image = face_recognition.load_image_file('./img/group/49408859_401.jpg')
face_locations = face_recognition.face_locations(image)
# 각 얼굴의 coordinate를 표시한다.
# print(face_locations)
# 사진에 있는 인원수를 반환한다.
print(f'사진에는 모두 {len(face_locations)}명의 사람이 있습니다.')
$ python3 findfaces.py
사진에는 모두 10명의 사람이 있습니다.
이번에는 정확하게 인식했네요.
더 많은 사람으로 변경해보겠습니다.
import face_recognition
image = face_recognition.load_image_file('./img/group/1136468516.jpg.0.jpg')
face_locations = face_recognition.face_locations(image)
# 각 얼굴의 coordinate를 표시한다.
# print(face_locations)
# 사진에 있는 인원수를 반환한다.
print(f'사진에는 모두 {len(face_locations)}명의 사람이 있습니다.')
$ python3 findfaces.py
사진에는 모두 38명의 사람이 있습니다.
38명보다 훨씬 많은데 인식률이 낮네요 ㅎ
반응형
'Backend > Python & Blockchain' 카테고리의 다른 글
[Facial Recognition] 얼굴 추출하기 (0) | 2019.07.19 |
---|---|
[Facial Recognition] 얼굴 비교하기 (0) | 2019.07.19 |
[DApp - react.js] Election 화면을 React.js로 변경 - back-end 연결 (0) | 2019.07.08 |
[DApp - react.js] Election 화면을 React.js로 변경 - Component 나누기 (0) | 2019.07.08 |
[DApp - react.js] Election 화면을 React.js로 변경하기 - 환경설정 (0) | 2019.07.08 |
Comments