我用imshow函數寫了一些簡單的程序。它很好地工作了幾次。我試過在處理之前和之後查看兩張照片。這是第一次,它運行良好,但第二次它崩潰了我的應用程序。從opencv的Imshow不工作了
現在每次imshow崩潰應用程序。
如何解決這個問題?
#include <iostream>
#include <iostream>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv;
int main()
{
Mat image, gray_image;
string file_path;
cout << "Input file path: ";
cin >> file_path;
image = imread(file_path, CV_LOAD_IMAGE_UNCHANGED);
if (image.data==NULL)
{
cout << "No image found!";
return 1;
}
cvtColor(image, gray_image, CV_BGR2GRAY);
namedWindow("Orig", CV_WINDOW_AUTOSIZE);
namedWindow("Gray", CV_WINDOW_AUTOSIZE);
imshow("Orig", image);
imshow("Gray", gray_image);
cout << "Output file path: ";
cin >> file_path;
imwrite(file_path, gray_image);
return 0;
}
你或許應該向我們展示一些代碼,究竟你改變。 –
堆棧跟蹤也很有用。 –
我沒有改變任何東西,只是第二次運行相同的程序。 – Mitu