Qt5摄像头截图

                    Qt5中去除了Phono,却而代之的是QtMultimedia,模块提供了许多与多媒体有关的类。

                    今天主要使用QCamera类来打开设备和显示图像,以及截图。

                    1.QCamera类这个QCamera类提供了接口系统相机设备QCamera能够被用和QVideoWidget一起取景器显示,和QMediaRecorder一起视频录制,和QCameraImageCapture 一起进行图像采取。

                    三种模式:1只是用来显示2静态图片捕获3视频捕获

                   

p_camera = new QCamera;//启用系统默认的摄像头
p_ciCapture = new QCameraImageCapture(p_camera);//用摄像头初始化一个QCameraImageCapture用来截图
p_camera->setCaptureMode(QCamera::CaptureStillImage);//设置摄像头的模式,可以抓取静态图像
p_camera->setViewfinder(ui->widget);//设置显示的窗体
p_camera->start();//摄像头启动



//可以截图则截图
if (p_ciCapture->isReadyForCapture()) {
    p_ciCapture->capture();
}

//截图后QCameraImageCapture发出下面这个信号,与一个槽相连显示图片
imageCaptured(int,QImage)

//显示截图的图片的槽函数
QImage scaledImage = image.scaled(ui->widget->size(),
                                      Qt::KeepAspectRatio,
                                      Qt::SmoothTransformation);
ui->label->setPixmap(QPixmap::fromImage(scaledImage));
Qt5摄像头截图_第1张图片

不过截取的图片可能出现断裂的情况,可能是底层的问题。

                  

你可能感兴趣的:(Qt5摄像头截图)