qt调用海康工业相机踩坑全纪录

方法一,使用qt中的QCameraInfo::availableCameras()调用海康摄像头

结论,失败
想的太天真

#include "mainwindow.h"
#include <QApplication>
#include <QCamera>
#include <QCameraInfo>
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
//    MainWindow w;
//    w.show();

    //读取所有摄像头信息
    QList<QCameraInfo> infos = QCameraInfo::availableCameras();
    foreach(QCameraInfo info, infos){
        qDebug()<<info.description()<<info.deviceName();
    }

    return a.exec();
}

方法二:使用RTSP协议

问了同事,RTSP不适合,或者是压根不能用在工业相机上,以后再考究,略

方法三(成功):qt的pro文件中配置

.pro文件中只加入这三行

LIBS += $$PWD/Libraries/MvCameraControl.lib
INCLUDEPATH += $$PWD/include/
DEPENDPATH += $$PWD/include/

报错1: error: D:\program\hk3\hk\Libraries\MvCameraControl.lib: No such file or directory

路径不对

报错2:error: undefined reference to `__imp_MV_CC_EnumDevices’

MvCameraControl.lib文件位数不对,换成对应你编译器的位数

通过右键添加库

也不知道为什么,不好使不如自己修改pro了
在这里插入图片描述

报错3:D:\MVS\Development\Includes\PixelType.h:179: error: ‘__int64’ does not name a type; did you mean ‘__divtc3’?

在这里插入图片描述
在你的工程中,调用了海康sdk的source文件中,添加

#include "mainwindow.h"

后不再报错,原因未知。。
盲试:

  1. 程序目录中加入MvCameraControl.dll文件,结论加不加没区别
  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值