Implementing your OpenCV filters
Now that your development environment is ready, we can begin the fun part! We will implement three filters using OpenCV:
FilterOriginal
: This filter does nothing and returns the same picture (lazy!)FilterGrayscale
: This filter converts a picture from color to grayscaleFilterBlur
: This filter smoothes the picture
The parent class of all these filters is Filter
. Here is this abstract class:
//Filter.h class Filter { public: Filter(); virtual ~Filter(); virtual QImage process(const QImage& image) = 0; }; //Filter.cpp Filter::Filter() {} Filter::~Filter() {}
As you can see, process()
is a pure abstract method. All filters will implement a specific behavior with this function. Let's begin with the simple FilterOriginal ...
Get Mastering Qt 5 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.