Summary
By now, we should have an application that displays a camera feed, listens for keyboard input, and (on command) records a screenshot or screencast. We are ready to extend the application by inserting some image-filtering code (Chapter 3, Processing Images with OpenCV) between the start and end of each frame. Optionally, we are also ready to integrate other camera drivers or application frameworks besides the ones supported by OpenCV.
We also possess the knowledge to manipulate images as NumPy arrays, UMat objects, or data that we can stream over a network. An understanding of image data and especially of NumPy arrays forms the perfect foundation for our next topic, filtering images.