在OpenEuler22.03下进行qt程序开发,包括OpenCV和海康相机SDK的使用

1.前期工作

1.1安装图形界面

        因为欧拉系统是服务器操作系统,没有图形界面,所以第一步是装上自己喜欢的图形界面。此例安装的是UKUI,其界面风格与window接近。

dnf install ukui -y
dnf groupinstall fonts –y
systemctl set-default graphical.target #默认使用图形界面,重启后生效

 1.2安装qtcreator

        OpenEuler22.03自带qt5,但是没有IDE不方便开发,所以第二步是安装qtcreator,可以在官网或一些国内镜像网站获取安装包,例如:Index of /qt/official_releases/qtcreator/ | 清华大学开源软件镜像站 

        下载完成后添加可执行权限,运行安装,此例安装的是qt-creator-opensource-linux-x86_64-4.15.2.run。安装过程只需要选择一下安装目录,其他一直点下一步即可。

        安装完成后需要手动添加kit,运行qtcreator,在工具—>选项—>kits右侧的Qt Versions中添加本机的qmake,我的完整路径为/usr/lib64/qt5/bin/qmake,然后添加kits(参照下图)。

         添加完就可以自己写一段Hello World验证是否成功了。

2.OpenCV安装与相关配置讲解

2.1安装OpenCV

        先使用dnf查看软件源中是否有OpenCV ,查找到后直接使用命令dnf install opencv安装。

dnf update
dnf search opencv #查找名为opencv的安装包
dnf install opencv

2.2配置OpenCV

        安装完OpenCV后需要添加到pkgconfig管理,方便我们写代码时调用。pkgconfig是一个使用后缀名为.pc的文件来管理软件包的工具,OpenEuler22.03系统中这些.pc文件放在/usr/lib64和/usr/lib64/pkgconfig目录下,在此目录搜索opencv可以看到已经存在了名为opencv4.pc的文件,这说明在安装opencv就已经被加入到pkgconfig的管理中了。文件内容见下图:

        根据文件内容可知,OpenCV版本为4.5.2,库文件路径为/usr/lib64,头文件路径为/usr/include/opencv4。

        所以,在Qt中要使用OpenCV,只需要在项目的pro文件中添加上CONFIG+=link_pkgconfigPKGCONFIG+=opencv4即可

         main.cpp内容如下:

#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
#include <iostream>
using namespace cv;
using std::cout;
using std::endl;
int main()
{
    std::string image_path = samples::findFile("test.jpeg");
    Mat img = imread(image_path, IMREAD_COLOR);
    if(img.empty())
    {
        std::cout << "Could not read the image: " << image_path << std::endl;
        return 1;
    }
    Mat gray_img;
    cvtColor(img, gray_img, COLOR_BGR2GRAY);
    bool success = imwrite("test_gray.jpeg", gray_img);
    cout << success << endl;
    return 0;
}

         在编译后生成的文件内放一张名为test.jpeg的图片,运行代码,效果如下:

 3.海康相机SDK的使用

3.1获取海康SDK

        在海康官网下载linux64位的SDK

 3.2使用海康SDK预览和抓图

        将SDK中的头文件和库文件复制到项目目录下,头文件在qtcreator中右键项目—>添加现有文件,库文件在pro文件中引入。

 

         代码已上传,有需要可自行下载。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 海康相机SDK海康威视公司推出的一款相机软件开发工具包,它可以帮助开发者实现对海康相机的控制与数据处理。而使用Qt编写的二次开发程序可以在跨平台、界面友好、开发效率高等方面表现出色。因此,将海康相机SDK二次开发Qt的方法可以有效提高开发效率和使用体验。 在二次开发Qt程序之前,首先需要安装海康相机SDKQt开发环境。然后,通过SDK给出的样例程序,了解相机控制和数据处理的基本操作。接下来,结合Qt开发框架,建立相应界面和事件响应,并利用海康相机SDK提供的函数,实现相机的开启、关闭、捕获图片等操作。同时,也要考虑到QtSDK之间的数据转换和参数传递的问题。 在开发过程中,需要注意一些细节问题,如相机连接状态的检测、相机参数的设置、图像处理算法的优化等。同时,也可以结合其他相关的开源库,如OpenCV等,进一步丰富程序的功能。 总之,海康相机SDK二次开发Qt是一个非常有前景和实际意义的开发方向。通过此类程序的开发,可以提高海康相机的应用范围和应用效果,满足不同用户的实际需求。 ### 回答2: 海康相机SDK是一款网络摄像机开发工具包,可以提供高质量的视频流和图像采集,集成该SDKQT开发环境中可以实现基于网络摄像机的图像处理和视频监测应用的开发。 在使用海康相机SDK进行QT二次开发的过程中,需要首先了解SDK操作和QT编程的基本知识。在使用SDK时,需要通过SDK提供的API进行网络摄像机的控制、图像采集和视频流显示等操作。在此基础上,可以使用QT编程实现各种功能和应用,例如图像增强、文本识别、动态拍照和视频监测等。 在进行二次开发时,还需要注意SDK的版本选择和兼容性问题。另外,需要考虑软硬件平台的匹配问题,例如CPU架构、操作系统和网络接口等。在具体实现中,可以使用QT提供的多种工具和组件,例如QT designer、QT creatorQT widgets等,以提高开发效率和代码质量。 总之,通过海康相机SDK的二次开发QT编程的结合,可以实现基于网络摄像机的各种应用和功能,为用户提供更加便捷、高效的视频监测和图像处理体验。 ### 回答3: 海康相机sdk是一个旨在为开发者提供海康威视相机设备的二次开发接口的软件开发工具包。对于开发者来说,使用海康相机sdk进行二次开发是非常重要的,这是因为该工具包提供了丰富的API,可以使开发者更加高效地定制相机设备的软件功能。 在海康相机sdk二次开发中,Qt是一种流行的跨平台开发框架,可以集成到C++中,使用Qt编写对于初学者来说也比较容易上手。我们可以使用Qt Creator IDE来编写程序,该IDE支持快速的窗口设计和多线程开发。同时,Qt还提供了很好的图形用户界面(GUI)支持,这对于开发相机设备用户友好的UI界面非常重要。 在使用海康相机sdk进行二次开发时,我们需要遵守相应的开发流程,首先需要进行硬件设备连接和查询,然后创建相应的海康相机对象,并且设置相机参数、注册回调函数等。之后,我们可以使用Qt编写界面并添加关于设备的一些功能,例如录像、拍照和保存数据等。 总之,使用海康相机sdk进行二次开发是一个涉及不同技术的综合性开发过程,例如设备硬件、图像处理、网络和GUI开发,同时也需要注意程序的健壮性和安全性等方面的考虑。虽然这个过程可能会面临一些挑战,但是在付出努力后,我们可以获得一个高效且功能强大的相机设备软件,满足我们的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值