我遇到了一个在 Qt 中从 IplImage 转换为 QImages 的例程,我尝试了它并且它运行良好,之后我尝试使用 Iplframes 在标签中显示视频,它也有效,但现在我试图显示来自我的网络摄像头和我遇到了某种麻烦,因为它不显示任何内容,Opencv 2.3,Ubuntu Linux C++
CvCapture* capture = cvCreateFileCapture( argv[1] );
//CvCapture* capture = cvCaptureFromCAM( 0 );
while(1) {
frame = cvQueryFrame( capture );
cvWaitKey(33);
if( !frame ) break;
cvCvtColor(frame,frame,CV_BGR2RGB);
myImage = QImage((unsigned char *)frame->imageDataOrigin,frame->width,frame->height,QImage::Format_RGB888);
myLabel.setPixmap(QPixmap::fromImage(myImage));
myLabel.show();
//sleep(1);
Sleeper::msleep(33);
}
我有 2 个选项,capturefromcam 或 capturefromavi,它从 avi 视频转换并完美显示转换后的帧,但是当我为我的网络摄像头捕获的帧尝试相同的事情时,它不显示任何内容,我也没有收到任何错误或类似的东西, 任何想法?