Visual C++使用OpenCV顯示圖片
顯示圖片使用的是imshow 函數,OpenCV會建立一個視窗只顯示你給他的圖片
參數1是給視窗的標題,參數2是想要顯示的圖片
顯示之後我們還會加上 waitKey 函數,因為如果只是顯示完圖片,馬上程式就結束了,
我們也就看不到圖片長怎樣了,所以用waitKey讓程式暫停一下。
另外,可以用 namedWindow 函數讓顯示圖片的視窗可以被縮放,
雖然用 CV_WINDOW_NORMAL 可以讓視窗縮放,但是沒有等比例放大,所以實際在觀察圖片的時候要多多留意!
一個例子顯示2倍大的圖片
namedWindow("Original Color Image", CV_WINDOW_NORMAL); // 讓視窗可以被調整
imshow("Original Color Image", image);
resizeWindow("Original Color Image", image.cols*2, image.rows*2); // 讓視窗變大
下面是顯示圖片的範例程式碼
#include
#include
using namespace std;
using namespace cv;
int main(int argc, char** argv)
{
Mat image;
try
{
if (argc > 1)
{
image = imread(argv[1], CV_LOAD_IMAGE_COLOR);
}
else
{
image = imread("image.bmp", CV_LOAD_IMAGE_COLOR);
}
}
catch (Exception& e)
{
cerr << e.what() << endl;
return -1;
}
if(! image.data )
{
cout << "Could not open or find the image" << endl;
return -1;
}
// namedWindow("Original Color Image", CV_WINDOW_AUTOSIZE);
imshow("Original Color Image", image);
waitKey();
system("pause");
return 0;
}
留言