簡體   English   中英

OpenCV cv :: imshow()不起作用,但是cvShowImage()起作用

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM