QT+Opencv2+VS2012 使用多线程显示网络摄像头实时画面


目前网上使用Qt5与opencv 显示视频的,都是使用死循环来做,不是很好。本代码使用Qt5的多线程在Qlabel控件下实时显示摄像头画面
资源截图
代码片段和文件信息
#include “CameraThread.h“

CameraThread::CameraThread(void)
{
    //ui.setupUi(this);
}


CameraThread::~CameraThread(void)
{
}

void CameraThread::run()
{
 VideoCapture cap(0);  
    if(!cap.isOpened())  
    {  
         return;
    }  
    Mat frame;  
    Mat edges;  
  
    bool stop = false;  
    while(!stop)  
    {  
        cap>>frame; 
        //cvtColor(frame edges CV_BGR2GRAY);  
        //GaussianBlur(edges edges Size(77) 1.5 1.5);  
        //Canny(edges edges 0 30 3);  
        //imshow(“当前视频“edges);  
        //if(waitKey(30) >=0)  
            //stop = true; 

    cvtColor(frame frame CV_RGB2RGBA);
QImage img = QImage((const unsigned char*)(frame.data)frame.cols frame.rows QImage::Format_RGB32); 
label->setPixmap(QPixmap::fromImage(img).scaled(label->size()));
label->resize(label->pixmap()->size());
//label->setPixmap(QPixmap::fromImage(img).scaled(label->size()));
    //label->resize(label->pixmap()->size());
    }  

}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-04-06 19:44  Qt_2
     目录           0  2017-04-01 22:12  Qt_2Qt_2
     文件        1019  2017-04-06 19:44  Qt_2Qt_2CameraThread.cpp
     文件         400  2017-04-06 19:42  Qt_2Qt_2CameraThread.h
     目录           0  2017-04-06 19:43  Qt_2Qt_2Debug
     文件      118416  2017-04-06 19:42  Qt_2Qt_2DebugCL.read.1.tlog
     文件        3026  2017-04-06 19:42  Qt_2Qt_2DebugCL.write.1.tlog
     文件      205831  2017-04-06 19:42  Qt_2Qt_2DebugCameraThread.obj
     文件          59  2017-04-06 19:43  Qt_2Qt_2DebugQt_2.lastbuildstate
     文件        1637  2017-04-06 19:43  Qt_2Qt_2DebugQt_2.log
     文件        7818  2017-04-06 19:42  Qt_2Qt_2Debugcl.command.1.tlog
     文件        3044  2017-04-06 19:42  Qt_2Qt_2Debugcustombuild.command.1.tlog
     文件         594  2017-04-06 19:42  Qt_2Qt_2Debugcustombuild.read.1.tlog
     文件         794  2017-04-06 19:42  Qt_2Qt_2Debugcustombuild.write.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink-cvtres.read.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink-cvtres.write.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink-rc.read.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink-rc.write.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10828-cvtres.read.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10828-cvtres.write.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10828-rc.read.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10828-rc.write.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10828.read.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10828.write.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10984-cvtres.read.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10984-cvtres.write.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10984-rc.read.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10984-rc.write.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10984.read.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.10984.write.1.tlog
     文件           2  2017-04-06 19:43  Qt_2Qt_2Debuglink.11088-cvtres.read.1.tlog
............此处省略70个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)