- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Qt Qcamera
在 Windows Surface Pro 平板电脑上捕获图像。我写了这段小代码来检查 QCamera 功能,但是在捕获图像后,保存的图像分辨率非常低,即 640*360,即使 Surface Pro 的后置摄像头支持 1280*720。即使支持分辨率的 QList 也总是返回空。我到处寻找但找不到可能的解决方案,有人可以帮忙吗?
这是我使用的代码:
#include "camera.h"
#include <QCamera>
#include <QCameraImageCapture>
#include <QCameraViewfinder>
#include <QDebug>
#include<QMultimedia>
Camera::Camera(QWidget *parent) :
QWidget(parent)
{
QByteArray cameraDevice;
int count = QCamera::availableDevices().count();
int cameraId = 1;
QList<QByteArray> cameradev = QCamera::availableDevices();
QByteArray camdevice = cameradev[cameraId];
QCamera *camera = new QCamera(camdevice);
QString description = camera->deviceDescription(camdevice);
qDebug() <<"Device Name"<< description;
QCameraViewfinder *viewfinder = new QCameraViewfinder();
viewfinder->showMaximized();
camera->setViewfinder(viewfinder);
QCameraImageCapture *imageCapture = new QCameraImageCapture(camera);
//camera->setCaptureMode(QCamera::CaptureStillImage);
camera->start();
QList<QSize> resolutions = imageCapture->supportedResolutions();//returns always empty
QImageEncoderSettings imageSettings;
imageSettings.setCodec("image/jpeg");
imageSettings.setResolution(1280, 720);
imageCapture->setEncodingSettings(imageSettings);
imageCapture->capture("D:/1.jpg");
camera->searchAndLock();
camera->unlock();
qDebug() << camera->error();
}
最佳答案
看来问题出在 Qt 版本上,这个问题在 Qt 5.5 及以上版本中已修复,并且可以获取相机的所有支持分辨率。
关于c++ - 如何在 Qt 5.3 中使用 QCamera 设置图像分辨率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36704647/
我想获得所选摄像机的分辨率,并在视频捕捉中获得原始帧,但我还没有清楚地找到如何去做。你可以帮帮我吗!?提前致谢。 // Open camera for reading cameraQt
我已经使用带有 QAbstractVideoSurface 的 QCamera 实现了相机捕获。我将 QAbstractVideoSurface 扩展到派生类,以将捕获编码到缓冲区中以供将来处理。一切
我在 Qt 中使用 opencv 相机支持来捕获图像,因为 Qt5.2 现在有 QCamera 和 QCameraImageCapture,我正在移植到它,代码得到了极大的简化。 但是拍摄的图像太暗,
我正在使用 Qt 5.2,我想在相机准备就绪后立即继续从相机拍照。我怎么知道相机已经准备好捕捉,因为总是有一条消息“相机未准备好”。有什么想法吗? 最佳答案 QCamera 有这个信号: void s
这是关于安排带有小部件的多媒体对象。以下是我尝试过的: MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) {
我正在尝试创建一个基于 Qt 示例的使用相机 API 的应用程序。 问题: 以下调用检查是否支持视频捕获 返回false。 camera->isCaptureModeSupported(QCamera
我使用跨平台Qt创建了一个应用程序,在这个应用程序上,我需要在两个不同的屏幕上显示一个QCamera的结果。这涉及到在同一 QCamera 上链接两个 QCameraViewFinder。 我的代码是
我有一个 Camera 类,目前只返回连接到计算机的可用相机数量。在我的 PhotoProcessor 类 (QWidget) 中创建了一个 Camera 对象,然后将其移至另一个线程,因为我在检查可
有没有办法在 Windows 上使用 Qt (5.6.2) 获取已连接相机支持的像素格式(RGB24、RGB32 等)列表? 我目前正在使用 QCameraImageCapture(使用我的 USB
很幸运我的程序很简单,所以我最终找到了导致神秘日志消息的原因。我的程序日志如下所示: Debugging starts failed to start Debugging has finished 之
我正在使用 Qt Qcamera 在 Windows Surface Pro 平板电脑上捕获图像。我写了这段小代码来检查 QCamera 功能,但是在捕获图像后,保存的图像分辨率非常低,即 640*3
我正在开发网络/图形用户界面应用程序。我正在另一台未安装 Qt 的计算机上测试该应用程序。但是当我启动应用程序时,QCamera::availableDevices()返回一个空列表。当我在安装了 Q
我正在尝试编写一个简单的程序,使用 Qt 从网络摄像头拍摄照片。Qt Creator中有一个示例工程,其中QCamera用于拍照和录制视频。但它不是以正确的方式工作。我无法使用方法 QCameraIm
我是一名优秀的程序员,十分优秀!