Précédent → Jouer avec le module de caméra Raspberry Pi Zero WH Partie 0 Suivant → Jouez avec le module de caméra Raspberry Pi Zero WH, partie 2
Dans cet article, nous allons configurer python et vérifier le fonctionnement du module caméra.
Dans la version de Raspberry Pi OS introduite cette fois, le lien symbolique de python a été mis sur python2 (2.7.16), alors changez le lien en python3 (3.7.3). En remarque, la bibliothèque Python de Raspberry Pi OS semble être plus rapide avec apt-get qu'avec pip.
#Remplacement du lien symbolique
$ cd /usr/bin
$ sudo unlink python
$ sudo ln -s python3 python
Après avoir connecté le câble du module de caméra à l'unité principale du Raspberry Pi, activez la caméra à partir de "Paramètres" → "Paramètres du Raspberry Pi" → "Interface". Vérifiez ensuite si le module de caméra est correctement connecté.
#Vérifier la connexion de la caméra
$ vcgencmd get_camera
Si "pris en charge = 1 détecté = 1" s'affiche, la connexion est réussie.
À titre de test, je prendrai une image fixe.
#Par défaut/home/Enregistrer dans pi
$ sudo raspistill -o image.jpg
3.1. OpenCV
Tout d'abord, installez les bibliothèques dont dépend OpenCV.
# libhdf5-vérification de la version xxx(Cette version est 103)
$ sudo apt-cache search libhdf5
#Installation de diverses bibliothèques
$ sudo apt-get install libhdf5-dev libhdf5-serial-dev libhdf5-103
$ sudo apt-get install libqtgui4 libqtwebkit4 libqt4-test python3-pyqt5
$ sudo apt-get install libatlas-base-dev
$ sudo apt-get install libjasper-dev
Ensuite, installez OpenCV.
#Installation d'OpenCV
$ sudo pip3 --default-timeout=1000 install opencv-python
Si cela est laissé tel quel, ʻimport cv2peut générer une erreur, alors définissez la variable d'environnement. Ajoutez ce qui suit à "~ / .bashrc" et exécutez
source ~ / .bashrc`.
# ~/.Ajouté à bashrc
export LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libatomic.so.1
Ce code affiche l'écran capturé par la caméra en échelle de gris et se termine lorsque la touche q est enfoncée.
capture_test.py
import cv2
def capture():
# 0 is a camera number.
cap = cv2.VideoCapture(0)
print('### Break is \'q\' key.')
while(cap.isOpened()):
# 'ret' is a boolean.
ret, frame = cap.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('frame', gray)
# Break is 'q' key.
if cv2.waitKey(1) & 0xff == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
if __name__=='__main__':
capture()
Recommended Posts