Accessing the webcam
We can build very interesting applications using the live video stream from the webcam. OpenCV provides a video capture object which handles everything related to the opening and closing of the webcam. All we need to do is create that object and keep reading frames from it.
The following code will open the webcam, capture the frames, scale them down by a factor of 2, and then display them in a window. You can press the Esc key to exit:
import cv2
cap = cv2.VideoCapture(0)
# Check if the webcam is opened correctly
if not cap.isOpened():
raise IOError("Cannot open webcam")
while True:
ret, frame = cap.read()
frame = cv2.resize(frame, None, fx=0.5, fy=0.5, interpolation=cv2.INTER_AREA)
cv2.imshow('Input', frame)
c = cv2.waitKey(1)
if c == 27:
break
cap.release()
cv2.destroyAllWindows() Under the hood
As we can see in the preceding code, we use OpenCV's VideoCapture function to create the video capture object cap. Once it...