[英]OpenCV cv::imshow() does not work but cvShowImage() does
我遇到了一個OpenCV以前從未遇到過的問題。 當我使用cv :: imshow()時,圖像可以完美顯示,但是頂部欄上有奇怪的ascii字符,而不是窗口名稱,每隔幾秒鍾就會出現一個新窗口,並使用不同的名稱,而舊窗口凍結在任何幀上目前處於開啟狀態。 我可以退出凍結的窗口,但更多窗口會以不同的名稱立即顯示。 我以前使用過OpenCV,並且imshow()一直為我工作。 這是我的代碼:
#include "stdafx.h"
#include "opencv2/opencv.hpp"
using namespace cv;
int main()
{
VideoCapture cap(0);
Mat frame;
namedWindow("Sample Program", CV_WINDOW_AUTOSIZE);
while (true)
{
cap >> frame;
imshow("Sample Program", frame);
if(waitKey(30) >= 0) break;
}
return 0;
}
如果我將imshow()替換為
cvShowImage("Sample Program", cvCloneImage(&(IplImage)frame));
它運作完美。 我只想知道是否存在庫問題或導致此問題的原因,我正在Visual Studio Ultimate 2012中使用OpenCV 2.4.9
using namespace std;
using namespace cv;
有了簡歷,它對我有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.