How to take a webcam picture using OpenCV in Python
This code opens /dev/video0
and takes a single picture, closing the device afterwards:
import cv2
video_capture = cv2.VideoCapture(0)
# Check success
if not video_capture.isOpened():
raise Exception("Could not open video device")
# Read picture. ret === True on success
ret, frame = video_capture.read()
# Close device
video_capture.release()
You can also use cv2.VideoCapture("/dev/video0")
, but this approach is platform-dependent. cv2.VideoCapture(0)
will also open the first video device on non-Linux platforms.
In Jupyter you can display the picture using
import sys
from matplotlib import pyplot as plt
frameRGB = frame[:,:,::-1] # BGR => RGB
plt.imshow(frameRGB)