qt + opencv 摄像头显示问题

Meteor2222 2017-01-04 09:53:52
1.环境是qt5.7 + opencv3.1+win7
2.然后关键的代码是
void Dialog::sltBtnOpenCamera()
{
//打开摄像头 从摄像头中获取视频
m_camera = cvCreateCameraCapture(0);
//开启定时器 没隔0.5秒刷新一次
m_timer->start(500);
}


void Dialog::sltTimeOut()
{
//读取摄像头信息 将读取回来的帧转换成QImage类型 并在主界面的QLabel中显示

//从摄像头中抓取并返回每一帧
m_imgFrame = cvQueryFrame(m_camera);
//将抓取到的帧转换成QImage格式
QImage showImage((const uchar*)m_imgFrame->imageData, m_imgFrame->width, m_imgFrame->height, QImage::Format_RGB888);
//将图片显示到QLabel上
ui->m_lbPhoto->setPixmap(QPixmap::fromImage(showImage));
}
void Dialog::sltBtnCloseCamera()
{
//停止定时器
m_timer->stop();
//释放摄像头内存
cvReleaseCapture(&m_camera);

}

3.最后能打开摄像头 但是label上显示是一片黑,如图


本人是菜鸟 刚学qt 求大神指导~~
...全文
537 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mr_Zhouzl 2017-01-06
  • 打赏
  • 举报
回复
0.5秒太长了,应该是30毫秒

16,212

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧