Video processing systems require a stream processing architecture, in which video frames from a continuous stream are processed one (or more) at a time. This type of processing is critical in systems that have live video or where the video data is so large that loading the entire set into the workspace is inefficient. Computer Vision System Toolbox supports a stream processing architecture through System objects™ (for use in MATLAB®) and blocks (for use in Simulink®).
You can acquire images and video directly into MATLAB and Simulink from PC-compatible imaging hardware. With support for multiple hardware vendors, you can use a range of imaging devices, from inexpensive web cameras or industrial frame grabbers to high-end scientific cameras that meet low-light, high-speed, and other challenging requirements.
Video applications present common but difficult challenges that require flexible analysis and processing functionality. Using MATLAB and Simulink products, you can:
Once you have captured a video processing system design in MATLAB code or a Simulink block diagram, you can evaluate alternatives for impact on performance and fixed-point arithmetic. You can generate real-time embedded code from your block diagram and execute the code on a variety of supported target hardware for verification, debugging, and implementation. Targets that include optimized video processing libraries improve the performance of your system even further.