docs: editing face recog article

This commit is contained in:
Oleg Kalachev
2019-01-03 05:21:37 +03:00
parent 5ef2be56c4
commit 07bcaf21a1
5 changed files with 18 additions and 6 deletions

BIN
docs/assets/Mikhail.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

BIN
docs/assets/Timofey.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

BIN
docs/assets/screen.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View File

@@ -50,6 +50,7 @@
* [3G-модем](3g.md)
* Проекты на базе Клевера
* [Шаровая защита коптера](shield.md)
* [Распознавание лиц](face_recognition.md)
* [CopterHack-2018](copterhack2018.md)
* [CopterHack-2017](copterhack2017.md)
* Дополнительные материалы

View File

@@ -12,16 +12,19 @@
Для начала нужно установить все необходимые библиотеки:
```
```bash
pip install face_recognition
pip install opencv-python
```
Затем скачать сам скрипт из репозитория:
```
```bash
git clone https://github.com/mmkuznecov/face_recognition_from_clever.git
```
## Объяснение кода
Подключаем библиотеки:
```python
@@ -31,6 +34,7 @@ import os
import urllib.request
import numpy as np
```
***Данный кусок кода предназначен для Python 3. В Python 2.7 подключаем urllib2 вместо urllib:***
```python
@@ -51,11 +55,14 @@ for i in os.listdir('faces/'):
i=i.split('.')[0]
known_face_names.append(i)
```
***Дополнение: все изображения хранятся в папке faces в формате name.jpg***
<img src="https://github.com/mmkuznecov/face_recognition_from_clever/blob/master/files/screen.jpg" width="50%">
<img src="https://github.com/mmkuznecov/face_recognition_from_clever/blob/master/faces/Mikhail.jpg" width="30%">
<img src="https://github.com/mmkuznecov/face_recognition_from_clever/blob/master/faces/Timofey.jpg" width="30%">
<img src="../assets/screen.jpg" width="50%">
<img src="../assets/Mikhail.jpg" width="30%">
<img src="../assets/Timofey.jpg" width="30%">
Инициализируем некоторые переменные:
@@ -65,6 +72,7 @@ face_encodings = []
face_names = []
process_this_frame = True
```
Берем изображение с сервера и преобразуем его в cv2 формат:
```python
@@ -89,9 +97,10 @@ frame = cv2.imdecode(arr, -1)
Затем просто запускаем скрипт:
```
```bash
python recog.py
```
И на выходе:
<img src="https://github.com/mmkuznecov/face_recognition_from_clever/blob/master/files/Mikhail_output.jpg" width="50%">
@@ -100,8 +109,10 @@ python recog.py
## Возможные трудности
При запуске скрипта может выскочить следующая ошибка:
```python
known_face_encodings.append(face_recognition.face_encodings(i)[0])
IndexError: list index out of range
```
В этом случае постарайтесь переделать изображения в папке faces, возможно из-за плохого качества программа не распознает лиц на изображениях.