Verwenden Sie einfach die benannte Gesichtserkennungsdemo von OpenVINO in Docker

Ich habe Interactive_face_detection_demo ausgeführt sowie [face_recognition_demo](https://docs.openvinotoolkit.org/2020.3/demos_python html) wird ausgeführt. Es war eine Demo in OpenVINO 2020.3, aber es schien nicht in OpenVINO 2020.4 zu sein. Führen Sie es also im Jahr 2020.3 aus.

output-palette.gif

Mit Docker ausführen

Es ist praktisch, es auf 2020.4 oder 2020.3 einzustellen, also führen Sie es mit Docker aus. (Ich habe es in Google Colab nicht ausprobiert, da es schwierig zu sein scheint, die GUI zu bedienen.)

X11 Server Installation

Diese Demo hat die Funktion, dass Sie bei der Anzeige eines unbekannten Gesichts den Namen eingeben können und dieser mit dem Gesichtsbild an Ort und Stelle gespeichert wird. Legen Sie das Fenster fest, das von Docker aus für die Eingabe über die GUI gestartet werden soll.

Dieses Mal habe ich den X11-Server auf der Seite des Host-Betriebssystems (Windows 10) gestartet, damit das Fenster des Containers (Ubuntu 18) unter Windows 10 geöffnet werden kann. Da es sich um Windows 10 handelt, habe ich 1.20.8.1 von VcXsrv installiert und gestartet und private Netzwerke in den Windows-Firewall-Einstellungen zugelassen. Die Verbindungsadresse vom Docker-Container zum Host-Betriebssystem lautet nicht "localhost". Überprüfen Sie sie daher mit "ipconfig".

ipconfig
~~~
Ethernet-Adapter vEthernet(WSL):

Verbindungsspezifisches DNS-Suffix. . . . .:
Verknüpfen Sie die lokale IPv6-Adresse. . . . .: fe80::6ca1:e659:80eb:a804%18
IPv4-Adresse. . . . . . . . . . . .: 172.25.64.1 (Hier ist das DISPLAY-Verbindungsziel)
Subnetzmaske. . . . . . . . . .: 255.255.240.0
Standard-Gateway. . . . . . .:

Im obigen Beispiel ist 172.25.64.1 das DISPLAY-Verbindungsziel.

Starten Sie die Docker / Run-Demo

docker run \
  -v /c/Users/${USER}/Downloads:/Downloads \
  -u root \
  -it \
  --rm \
  -e DISPLAY=172.25.64.1:0.0 \
  openvino/ubuntu18_dev:2020.3

Der Teil von 172.25.64.1 ist die in ↑↑ bestätigte Adresse. Da es nicht erforderlich ist, eine Bibliothek hinzuzufügen oder zu erstellen, funktioniert dies möglicherweise auch dann, wenn Sie kein Root sind. Ich wollte jedoch den Modellpfad usw. auf [wie beim letzten Mal] setzen (https://qiita.com/tset-tset-tset/items/cfdb35f65c13d73ccf4a). Also bin ich Wurzel. Da es sich um eine Demo handelt, die nicht in 2020.4 enthalten ist, starten wir 2020.3.

Arbeiten Sie im Behälter unten

${INTEL_CVSDK_DIR}/deployment_tools/tools/model_downloader/downloader.py \
  --name face-detection-retail-0004,landmarks-regression-retail-0009,face-reidentification-retail-0095 \
  --output_dir /content/model/ \
  --precisions FP32

Face_recognition_demo Verwenden Sie das trainierte Modell, das Sie in Attached Downloader verwenden möchten Ich werde es mit fallen lassen.

mkdir -p /Downloads/face_gallery/
cd ${INTEL_CVSDK_DIR}/inference_engine/demos/python_demos/face_recognition_demo/
python3 ./face_recognition_demo.py \
  -m_fd /content/model/intel/face-detection-retail-0004/FP32/face-detection-retail-0004.xml \
  -m_lm /content/model/intel/landmarks-regression-retail-0009/FP32/landmarks-regression-retail-0009.xml \
  -m_reid /content/model/intel/face-reidentification-retail-0095/FP32/face-reidentification-retail-0095.xml \
  --input /Downloads/input.mp4 \
  --output /Downloads/output.mp4 \
  -fg /Downloads/face_gallery/ \
  --allow_grow

Da es sich um Python handelt, ist kein Build erforderlich. Außerdem enthält das Handbuch eine Beschreibung von "pip3 install -r require.txt", die jedoch nicht erforderlich war, da die abhängigen Module bereits enthalten sind. Nach dem Start wird "--allow_grow" hinzugefügt. Wenn Sie also ein unbekanntes Gesicht haben, werden Sie entsprechend gefragt. Zu diesem Zeitpunkt wird das Gesichtsbild in face_gallery gespeichert.

Recommended Posts

Verwenden Sie einfach die benannte Gesichtserkennungsdemo von OpenVINO in Docker
Verwenden Sie einfach die Gesichtserkennungsdemo von OpenVINO in (Google Colab | Docker).
[Docker] Verwenden Sie Umgebungsvariablen in Nginx conf
Verwendung des benannten Volumes in docker-compose.yml
Verwenden Sie Docker in einer Proxy-Umgebung unter Ubuntu 20.04.1
Verwendung von Docker in VSCode DevContainer
Verstehe in 5 Minuten !! Wie man Docker benutzt
Installieren Sie einfach Laravel 8 auf dem Docker in der PHP8-Umgebung