【QT】QT调用电脑摄像头并拍照

这篇具有很好参考价值的文章主要介绍了【QT】QT调用电脑摄像头并拍照。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

建议搭配视频食用:

【【QT】QT调用电脑摄像头并拍照】 https://www.bilibili.com/video/BV1pc411G7qy/?share_source=copy_web&vd_source=c0d9dd4e64b88e4dbf93ac009c2010dc

一、在pro文件中添加‘multimedia multimediawidgets’

qt 摄像头,qt

二、在ui界面创建一个widget并改名为camera用于展示摄像头内容和pushbutton 用于拍照,并右键pushbutton点击转到槽备用

qt 摄像头,qt

三、对.h文件的操作

添加头文件

//摄像头
#include <QCameraImageCapture>
#include <QCamera>

 在private中创建两个摄像头对象

//创建两个摄像头对象
    QCamera *ca;
    QCameraImageCapture *capture;

qt 摄像头,qt

四、对.cpp文件的操作

添加头文件

//调用摄像头
#include <QCameraInfo>
#include <QCamera>
#include <QCameraViewfinder>
#include <QCameraImageCapture>
#include <QPixmap>
//弹窗
#include <QMessageBox>

 编写调用摄像头代码

    //获取可用摄像头设备并输出在控制台
    QList<QCameraInfo> infos = QCameraInfo::availableCameras();
    qDebug() << infos.value(0).deviceName() << ":" <<infos.value(0).description();
    QString camera = infos.value(0).deviceName();
    qDebug() << camera;
    //显示摄像头
    ca =new QCamera(camera.toUtf8() ,this );
    ui->camera->show();

    QCameraViewfinder *v2 = new QCameraViewfinder(ui->camera);
    v2->resize(ui->camera->size());
    ca->setViewfinder(v2);
    v2->show();
    ca->start();

编写点击按钮时的拍照代码

    //截取用户打卡时的图片
    capture = new QCameraImageCapture(ca);
    capture->capture("E://你的文件夹//命名.jpg");
    QMessageBox::information(this, "good", "good!");

五、最后运行

qt 摄像头,qt

qt 摄像头,qt

补档

如何让每次截图照片文件的命名不一样

解决方法:每次截图时加上时间做以区分,代码如下

添加头文件

#include <QDateTime>

将点击事件函数改为如下格式文章来源地址https://www.toymoban.com/news/detail-521129.html

void MainWindow::on_pushButton_clicked()
{

    //截取用户打卡时的图片
    capture = new QCameraImageCapture(ca);
    QDateTime time = QDateTime::currentDateTime();//获取当前时间
    QString nameseed = time.toString("yy-MM-dd hh-mm-ss");//将当前时间格式化,注意:时分秒之间不能用:连接,因为文件命名时不可以使用:
    capture->capture("E://RuanJianGongCheng//capture//"+ nameseed +".jpg");
    QMessageBox::information(this, "good", "good!!!");

}

到了这里,关于【QT】QT调用电脑摄像头并拍照的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity | 如何调用摄像头拍照

    我只用了PC端,其他平台我没试过哈~ 1.常见的输入内容 常见的输入内容:声音、图片 (影像就是一连串图片不停的放,所以摄像头发给电脑的实际上是很多很多图片) 常见的输入设备:输入声音对应的设备一般是麦克风,图片对应的设备一般设摄像头。 2.unity获取设备访问

    2023年04月09日
    浏览(29)
  • python调用摄像头实现拍照功能

    目录 1.介绍 2.系统依赖 (1)OpenCV-Python库 (2)Tkinter库 (3)Pillow库 (4)Time库 3.系统代码 4.效果展示 5.注意事项         这是一个有趣的项目,通过Python程序调用系统的摄像头,实现了拍照的功能.         我的主页还有一些文章介绍了其他有趣的项目,可以动手尝试一下: 代码写不完了

    2024年02月04日
    浏览(41)
  • Python进阶,使用 opencv 调用摄像头进行拍照

             opencv 支持 Python 版本的模块叫作 opencv-p hon ,可直接使用 pip install opencv-python 令进行安装,但常常会因为网络等问题导致失败。推荐使用离线模式来安装 opencv 模块。 下载完安装包后,使用如下命令进行安装: D: pip install opencv

    2024年02月11日
    浏览(54)
  • Pyqt5打开电脑摄像头进行拍照

    目录 1、设计UI界面 2、设计逻辑代码,建立连接显示窗口 3、结果 1、设计UI界面 将ui界面转为py文件后获得的逻辑代码为:(文件名为  Camera.py ) 2、设计逻辑代码,建立连接显示窗口 逻辑代码如下:(文件名为 Camera_main.py ) 3、结果 参考:暂未成功人士

    2024年02月12日
    浏览(35)
  • Unity3D:调用安卓摄像头拍照

    操作步骤:创建脚步并挂载到Main Camera上 仍未解决的问题:导入到安卓平台测试时,拍照按钮不能随着屏幕旋转而变换位置; 拍照时会把拍照按钮也截进去。

    2024年02月06日
    浏览(34)
  • opencv在linux上调用usb摄像头进行拍照

    一般video1就是usb摄像头

    2024年02月06日
    浏览(37)
  • uniapp开发h5或小程序调用摄像头拍照,录屏

    uniapp开发h5或小程序调用摄像头拍照,录屏 如图 注意,小程序上线使用需要配置upload域名。

    2024年02月12日
    浏览(46)
  • Qt开发_调用OpenCV(4.x)完成人脸检测并绘制马赛克(摄像头实时数据)

    这个基于Qt和OpenCV的人脸检测和人脸打码项目是通过实时视频流中的人脸识别来保护隐私。 该项目目的是保护隐私并确保人脸数据安全。在某些情况下,使用实时视频流进行人脸检测和识别可能涉及对个人隐私的侵犯。通过在图像中打码人脸区域,可以避免未经许可的人脸出

    2024年02月06日
    浏览(40)
  • 使用PYQT5打开电脑摄像头并进行拍照

    目录 1 UI界面的布局 2 UI界面布局对应的代码 3 打开电脑摄像头等功能的完整代码 4 一些代码函数和优化界面代码 5 最终效果 下图是简单设计的一个UI控制的输出可视化界面。       其中, 摄像头图片显示 使用的是左边功能的 label 类、 打开摄像头拍照关闭摄像头导出图片

    2023年04月21日
    浏览(30)
  • 移动端利用 input 标签调用手机摄像头拍照,实现人脸验证的功能

    近期在做项目时,有一个需求需要实现人脸识别功能,该功能的底层原理就是利用手机的拍照功能,获取用户的人脸图片,然后调用公安部的图像库进行逐一比对。实现这个功能只需要两步,第一步就是获取用户人脸图片;第二步就是将图片传给后端进行人脸比对。由于现在

    2024年02月16日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包