A basic graphical user interface with OpenCV
We are going to create a basic user interface with OpenCV. The OpenCV user interface allows us to create windows, add images to it, move it, resize it, and destroy it.
The user interface is in the OpenCV's module called highui
:
#include <iostream> #include <string> #include <sstream> using namespace std; // OpenCV includes #include "opencv2/core.hpp" #include "opencv2/highgui.hpp" using namespace cv; const int CV_GUI_NORMAL= 0x10; int main( int argc, const char** argv ) { // Read images Mat lena= imread("../lena.jpg"); Mat photo= imread("../photo.jpg"); // Create windows namedWindow("Lena", CV_GUI_NORMAL); namedWindow("Photo", WINDOW_AUTOSIZE); // Move window moveWindow("Lena", 10, 10); moveWindow("Photo", 520, 10); // show images imshow("Lena", lena); imshow("Photo", photo); // Resize window, only non autosize resizeWindow("Lena", 512, 512); // wait for any key press waitKey(0); ...