[Python] Construction de l'environnement OpenCV avec Docker (cv2.imshow () fonctionne également)

J'ai écrit un tel Qiita (Ubuntu, Python, environnement OpenCV créé sur Docker) avant, mais cv2.imshow () Cela n'a pas fonctionné et je faisais divers essais et erreurs.

Dans cet article, j'écrirai comment faire fonctionner correctement cv2.imshow () même dans l'environnement Docker.

Le système d'exploitation hôte est MacOS Catalina.

1. Installez XQuartz

https://www.xquartz.org/

Après l'installation, cochez Autoriser les connexions des clients réseau dans l'onglet Sécurité des Préférences XQuartz.

2. Ouvrez xhost

xhost +
  1. Docker run
docker run -it \
-v $(pwd):/code \
-v ~/.Xauthority:/root/.Xauthority \ #Requis pour interagir avec Docker et GUI
-e DISPLAY=$(hostname):0 \ #Requis pour interagir avec Docker et GUI
-p 8888:8888 \ #Pour Jupyter
--name opencv \ 
ubuntu /bin/bash

4. Diverses mises à jour et installations

Procédez comme suit dans le conteneur

apt-get -y update && apt-get -y upgrade && \
apt-get -y install python3-pip vim libgl1-mesa-dev libgtk2.0-dev && \
pip3 install numpy opencv-python jupyterlab pandas matplotlib scikit-learn seaborn scipy

5. Contrôle de fonctionnement

  1. Lancez XQuartz sur le PC hôte

  2. Démarrez Jupyter (à l'intérieur du conteneur)

jupyter lab --ip=0.0.0.0 --allow-root --LabApp.token=''
  1. Accédez à http: // localhost: 8888 / avec le navigateur du PC hôte

  2. Procédez comme suit dans Jupyter

import cv2

img = cv2.imread('test.jpeg') #Mettez une image appropriée
img.shape # => (Longueur verticale de l'image,Longueur horizontale, 3 )Est retourné

cv2.imshow('img', img) #Si vous souhaitez afficher une image, exécutez-la avec cet ensemble de 3 lignes
cv2.waitKey(0)
cv2.destroyAllWindows

Si ce qui précède fonctionne sans erreur !! Merci pour votre travail acharné !!!

Recommended Posts

[Python] Construction de l'environnement OpenCV avec Docker (cv2.imshow () fonctionne également)
Préparer l'environnement python3 avec Docker
Construction d'environnement virtuel avec Docker + Flask (Python) + notebook Jupyter
Commencez avec Python! ~ ① Construction de l'environnement ~
Construire un environnement Mysql + Python avec docker
Construction de l'environnement Python3 avec pyenv-virtualenv (CentOS 7.3)
Construction de l'environnement pytorch @ python3.8 avec pipenv
[docker] Construction de l'environnement python3.5 + numpy + matplotlib
Construction d'environnements OpenCV3 et Python3 sur Ubuntu
[Ubuntu 18.04] Créer un environnement Python avec pyenv + pipenv
Cv2.imshow fonctionne désormais correctement avec OpenCV3 de Homebrew
Créer un environnement Jupyter Lab (Python) avec Docker
Construction d'environnement (python)
Créer un environnement Python + uWSGI + Nginx avec Docker
Création d'un environnement Ubuntu, Python, OpenCV sur Docker
construction d'environnement python
Python - Construction de l'environnement
Construction de l'environnement Python
Environnement de lancement avec LineBot + Heroku + Docker + Python
Entendons-nous bien avec Python # 0 (Construction de l'environnement)
Collecter des informations depuis Twitter avec Python (construction de l'environnement)
Préparer l'environnement d'exécution de Python3 avec Docker
Construire un environnement d'analyse avec Docker (jupyter notebook + PostgreSQL)
[Python] Créer un environnement de développement Django avec Docker
Créer un environnement de Nginx + uWSGI + Python (Django) avec docker
Construction d'environnement Poetry-virtualenv avec python de centos-sclo-rh ~ Notes
Construction d'un environnement d'oreiller - Pour Docker + iPython (et OpenCV)
Premier python ① Construction de l'environnement avec pythonbrew & Hello World !!
De la construction d'environnement Python à la construction d'environnement virtuel avec anaconda
Construction de l'environnement: GCP + Docker
Binarisation avec OpenCV / Python
construction d'environnement python homebrew
Construction de l'environnement de développement Python
Utiliser python avec docker
environnement python avec docker-compose
Construction de l'environnement de développement python2.7
Environnement virtuel avec Python 3.6
Construction de l'environnement Python @ Win7
Modèle de construction d'environnement de développement local Python [Flask / Django / Jupyter avec Docker + VS Code]
Construction d'un environnement d'analyse de données Python facile avec Windows10 Pro x VS Code x Docker
Pour pouvoir utiliser le japonais avec Python dans l'environnement Docker
De Kafka à KSQL - Construction d'environnement facile avec docker
Construction d'un environnement d'analyse de données avec Python (notebook IPython + Pandas)
Application Web réalisée avec Python3.4 + Django (Construction de l'environnement Part.1)
Exemple de construction d'environnement WSL2 Python, Node.js, Java, git-secrets, Docker
Construction de l'environnement de contrôle à distance Pepper-kun avec Docker + IPython Notebook
Construction de l'environnement de développement de plug-in QGIS3 Python avec VSCode (macOS)
Construction de l'environnement Python + Anaconda + Pycharm
"Traitement Apple" avec OpenCV3 + Python3
Installer l'environnement Python avec Anaconda
Gérez l'environnement python avec virtualenv
Édition d'image avec python OpenCV
Capture de caméra avec Python + OpenCV
Construction de l'environnement Python (Windows10 + Emacs)
[Python] Utilisation d'OpenCV avec Python (basique)