Using plugins in an application is one of the most powerful methods of extending an application, and many of the applications that people use in their daily lives benefit from the power of plugins. A plugin is simply a library (*.dll on Windows, *.so on Linux, and so on) that can be loaded and used at runtime to take care of a specific task, but of course, it cannot be executed like a standalone application, and it depends on the application using it. We will also use plugins throughout this book to extend our computer vision application.
In this section, we will learn how to create an example application (called Image_Filter) that simply loads and uses plugins in a specified folder on the computer. However, before that we will learn how to create a plugin in Qt that uses both Qt and OpenCV frameworks, since our plugin will most probably need to...