Updated by Dmitry Retinskiy over 10 years ago

In OpenCV 3.0 (I did not try other versions), when displaying small images, even with the `WINDOW_AUTOSIZE` flag, the window is not scaled properly.

<pre>


#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main( int argc, char** argv )
{
if( argc != 2)
{
cout <<" Usage: display_image ImageToLoadAndDisplay" << endl;
return -1;
}

Mat image;
image = imread(argv[1], IMREAD_COLOR); // Read the file

if( image.empty() ) // Check for invalid input
{
cout << "Could not open or find the image" << std::endl ;
return -1;
}

namedWindow( "Display window", WINDOW_AUTOSIZE ); // Create a window for display.
imshow( "Display window", image ); // Show our image inside it.

while (waitKey(0) != 27); // Wait for ESC key
return 0;
}

</pre>


Test image (100x100):

!http://i.stack.imgur.com/6XB1v.png!

Results:

!http://i.stack.imgur.com/LZOU7.png!

When moving the mouse to the displayed image, I got this:

!http://i.stack.imgur.com/Fo9kx.png!

Back