接下来,我们的目的是做一个图像识别相关的事情,但由于我们这个Phytec开发板它并没有带一个摄像头外设,所以我们需要给他装一个摄像头,考虑到开发板上有自带的USB,那我们就用手头上的一个USB摄像头,如下图
2. 摄像头驱动
好了,硬件准备好了,我们就要准备对应的驱动,我们先尝试把摄像头插上板子上的USB口,然后到/dev目录下看一下有没有对应的驱动设备产生
开发板的demo里的驱动还是挺全的,可以看的出来我们的摄影头驱动已经装好了。
3. 应用程序
3.1 简介
嗯,接下来我们就可以写一个上层应用程序,来验证一下这个驱动是不是好的?功能很简单,我们按照我们的想法来拍一张照片,因为有我们上一篇做一个霓虹灯的实验做基础,我们现在应该很容易通过文件读写的方式来调用底层的摄像头驱动(其实就是一个文件),然后启动拍摄,读取一张照片。这里我们引入qml语言做UI设计,然后通过一个按钮来触发拍摄,并尝试把图片显示到界面上
3.2创建工程
打开QT之后,我选了一个swipe的demo,这是一个以实现滑动切换界面,这里我想到了之前的LEDs霓虹灯没有界面控制,这里我顺便加上。所以可以看到两个界面,一个为了摄像,一个为了霓虹灯,简单的修改一下名字即可得到如下效果:
3.3 Qml和cpp之间是怎么交互的?
这里要特别感谢qt官方的视频教程,链接如下:
https://app.ma.scrmtech.com/meetings-api/sapIndex/SapSourceData?pf_uid=23816_1987&sid=58001&source=2&pf_type=3&channel_id=25666&channel_name=Qt%2BWeChat&tag_id=e2d25d1ec8b84c22&appid=wxd90794c560648dff
Cpp调用qml里的函数:
Qml中的方法都可以当一个槽来使用,cpp中可以通过connect函数来触发qml里的方法
qml调用cpp里的函数:
1. 通过setContextProperty可以把cpp中的QObject指针暴露给qml,qml就可以直接调用了
2. 通过qmlRegisterType可以把cpp中的类注册到qml,qml再结合信号和槽就可以直接调用了
一句话总结:Qml和cpp之间交互通过QtMeta-Object system进行交互的,其中有很多方法,但是常用的还是信号和槽的方式交互。
我们找到linux_UVC library一个库,在这个基础上修改来增加我们的需求:
所有代码的github地址放在如下位置:
最后放一个拍的照片的效果:
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
PHYTEC
+关注
关注
0文章
19浏览量
3665 -
开发板试用
+关注
关注
3文章
301浏览量
2100
发布评论请先 登录
相关推荐
有奖丨米尔 全志T536开发板免费试用
米尔与全志合作发布的新品基于全志T536应用处理器的MYD-LT536-GK开发板免费试用活动来啦~~米尔提供了3块价值750元的MYD-LT536-GK开发板发起
追加名额丨米尔瑞芯微RK3576开发板有奖试用
米尔与瑞芯微合作发布的新品基于瑞芯微RK3576应用处理器的MYD-LR3576开发板免费试用活动加码啦~~米尔追加了2块价值849元的MYD-LR3576开发板发起试用活动您不仅可以
正点原子fpga开发板不同型号
正点原子作为国内领先的FPGA开发板供应商,其产品线覆盖了从入门级到高端应用的各个领域。这些开发板不仅适用于学术研究,还广泛应用于工业控制、通信、图像处理等多个领域。 1. 入门级开发板 1.1
有奖丨米尔 瑞芯微RK3576开发板免费试用
米尔与瑞芯微合作发布的新品基于瑞芯微RK3576应用处理器的MYD-LR3576开发板免费试用活动来啦~~米尔提供了7块价值849元的MYD-LR3576开发板发起试用活动您不仅可以免
树莓派和arm开发板的区别
,已经推出了多个版本,包括A、B、A+、B+、2、3、4等。 ARM开发板 ARM开发板是一种基于ARM架构的嵌入式开发板,
【PHYTEC AM62x开发板试用】开箱
本帖最后由 如去如来 于 2024-6-27 12:28 编辑
收到PHYTEC AM62x开发板已经两周,忙于其他事情还没来得及开箱测试,今天来补上。
自从1986年德国PHYTEC公司创立
发表于 06-18 23:27
点击参与米尔NXP i.MX 93开发板有奖试用
米尔与NXP合作发布的新品基于NXPi.MX93应用处理器的MYD-LMX9X开发板免费试用活动来啦~~米尔提供了3块价值678元的MYD-LMX9X开发板发起
fpga开发板是什么?fpga开发板有哪些?
FPGA开发板是一种基于FPGA(现场可编程门阵列)威廉希尔官方网站
的开发平台,它允许工程师通过编程来定义和配置FPGA芯片上的逻辑电路,以实现各种数字电路和逻辑功能。FPGA
fpga开发板与linux开发板区别
(Field-Programmable Gate Array)是一种可编程逻辑器件,它可以通过编程改变硬件逻辑电路的功能和结构。FPGA采用了可编程的门极,可以根据需要重新配置内部电路,从而实现不同的功能和逻辑关系。而Linux开发板
51单片机开发板的主要功能 51单片机开发板能做什么
51单片机开发板是一种基于8051系列单片机芯片的开发板,具有丰富的功能和广泛的应用。下面将详细介绍51单片机开发板的主要功能以及能够实现的各种应用。
DIY个人的Linux开发板教程
作者简介:大佬已在硬创社开源了近50款开发板,动手能力极强,于去年年底开始接触学习Linux,并由全志V3s、F1C200S等芯片开始上手DIY个人的Linux开发板。
评论