当前位置: 首页 > news >正文

如何在国际上做网站/seo搜索引擎优化知乎

如何在国际上做网站,seo搜索引擎优化知乎,廊坊seo培训,某公司网站策划建设可以使用 OpenCV 来操作摄像头,不过 Qt5 已经自带了调用系统摄像头的功能,在 .pro 文件中增加下面的模块:1QT multimedia multimediawidgets主要是使用下面 3 个类,使用起来很方便:QCameraQCameraViewfinderQCameraImageCapture下面代码的效…

可以使用 OpenCV 来操作摄像头,不过 Qt5 已经自带了调用系统摄像头的功能,在 .pro 文件中增加下面的模块:

1
QT += multimedia multimediawidgets

主要是使用下面 3 个类,使用起来很方便:

  • QCamera

  • QCameraViewfinder

  • QCameraImageCapture

下面代码的效果为

7f34fcfd86d69d6da23bafe4ac38a1ca.png

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
#include #include #include #include #include #include #include #include #include #include int main(int argc, char *argv[]) {    QApplication a(argc, argv);    a.setStyleSheet("QCameraViewfinder, QLabel { border: 2px dashed grey;}");    QCamera *camera = new QCamera(); // 摄像头对象    QCameraViewfinder *viewfinder = new QCameraViewfinder(); // 用于实时显示摄像头图像    QCameraImageCapture *imageCapture = new QCameraImageCapture(camera); // 用于截取摄像头图像    camera->setViewfinder(viewfinder); // camera 使用 viewfinder 实时显示图像    viewfinder->setAttribute(Qt::WA_StyledBackground, true); // 使 viewfinder 能够使用 QSS    QLabel *previewLabel = new QLabel(""); // 拍照预览的 label    QPushButton *captureButton = new QPushButton("拍照"); // 点击拍照的按钮    viewfinder->setFixedHeight(150);    previewLabel->setFixedHeight(150);    previewLabel->setMinimumWidth(150);    previewLabel->setAlignment(Qt::AlignCenter);    // 布局 widgets    QVBoxLayout *layout = new QVBoxLayout();    layout->addWidget(viewfinder);    layout->addWidget(previewLabel);    layout->addWidget(captureButton);    layout->addStretch();    QWidget *window = new QWidget();    window->setLayout(layout);    window->show();    camera->start();    // 点击拍照    QObject::connect(captureButton, &QPushButton::clicked, [=] {        imageCapture->capture("capture.jpg"); // 如果不传入截图文件的路径,则会使用默认的路径,每次截图生成一个图片    });    // 拍照完成后的槽函数,可以把 image 保存到自己想要的位置    QObject::connect(imageCapture, &QCameraImageCapture::imageCaptured, [=](int id, const QImage &image) {        Q_UNUSED(id)        QImage scaledImage = image.scaled(previewLabel->size(), Qt::KeepAspectRatio, Qt::SmoothTransformation);        previewLabel->setPixmap(QPixmap::fromImage(scaledImage));    });    return a.exec();}

QCamera *camera = new QCamera() 初始化摄像头对象,调用 camera->start() 打开摄像头,成功打开后可以在 QCameraViewfinder 上实时的看到摄像头的图像,如果打开失败则什么都看不到。

QCameraImageCapture::capture() 用于捕捉摄像头的图像,完成后会发射信号 imageCaptured(),可以在这个信号的槽函数中把捕捉到的图像显示给用户,如果满意的话就可以保存到文件,或者上传到服务器等。capture() 接受一个参数,为截图后图片保存的路径,如果使用默认的路径,每次截图都会生成一个图片,如果想截图产生的图片都保存为一个固定的图片文件,则传入一个路径即可。

仔细的看一下可以发现 QImage::scaled() 缩放的图像和 QCameraViewfinder 上缩放的图像的效果不一样,这是因为缩放的算法不同导致的,如果不满足需求,可以使用更专业的图像缩放算法进行处理。

需要注意的是 QCameraViewfinder 的 size policy 很奇怪,vertical 和 horizontal 都是 Preferred,和 QLabel 默认的 size policy 一样,但是表现出来的却是 expanding 的样子,甚至有 spacer 时,spacer 的 expanding 都没有效果,空间全被 QCameraViewfinder 占据了。

此外,怎么判断是否启动了摄像头?文档里说:

Starts the camera.

State is changed to QCamera::ActiveState if camera is started successfully, otherwise error() signal is emitted.

但是实际情况却是 camera->start() 后如果摄像头不可用也不会发出 error 信号,不过我们可以根据 camera 的 status 来判断:

123
QObject::connect(camera, &QCamera::statusChanged, [] (QCamera::Status status) {    qDebug() << status; // 如果 status 为 QCamera::UnavailableStatus,则说明摄像头不可用,为 QCamera::ActiveStatus 则说明摄像头启动成功});
http://www.jmfq.cn/news/4867345.html

相关文章:

  • 企业地址管理系统/北京seo方法
  • 做网站后台的叫什么/网站访问量
  • 5昌平区网站建设/国内搜索引擎排名第一的是
  • wordpress替换/企业seo顾问公司
  • 未来中森网站建设价格/百度一下就会知道了
  • 台州建站服务/全球网站流量排名100
  • 北京网站建设设计公司浩森宇特/微信搜一搜排名优化
  • 多肉建设网站的目的及功能定位/推广软件赚钱违法吗
  • 友情手机站/全球搜索
  • 网站建设团队武汉/百度站长工具seo
  • 高质量的高密网站建设/常见的线下推广渠道有哪些
  • 深圳福田网站制作/seo交流中心
  • 网页设计与制作html/泾县网站seo优化排名
  • 高端网站设计简介/seo在线短视频发布页运营
  • 莱芜又出大事/郑州seo网站排名
  • 手机网站开发技术路线/百度统计手机app
  • 辽宁工程建设信息网站/网站结构有哪几种
  • 各大网站大全/网站设计培训
  • 加盟网站制作运营/网络营销与直播电商专业就业前景
  • 自助建站软件自动建站系统/快速排名工具免费
  • 电商网站100排行榜/个人网站搭建
  • 做啤酒纸箱包装的网站/网上引流推广怎么做
  • 浙江网站建设情况/cctv 13新闻频道
  • 帝国+只做网站地图/百度排名规则
  • 网站开发支付超时如何解决/项目网
  • 网站建设要学哪些方面/网络小说排行榜
  • 自己做的网站如何让百度搜索/企业如何建立网站
  • 做教程网站如何查用户搜索/seo查询源码
  • 网站seo怎么做/百度认证营销推广师
  • 设计家装修网站/优化方案模板