0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

OpenMV的最终目标是使嵌入式机器视觉应用程序更易访问

电子工程师 来源:工程师青青 作者: 电子发烧友 2019-03-29 14:32 次阅读

使嵌入式机器视觉应用程序更易访问是OpenMV的最终目标,该项目负责开发开源、低成本嵌入式相机平台的多个迭代。

OpenMV始于2013年,当时副总裁兼联合创始人Ibrahim Abdelkader正在寻找一款比他更好,更便宜的串行相机模块。期望的结果是一个小型,可扩展的机器视觉模块,成本低于100美元。最终,OpenMV转移到Hackaday项目,然后转移到Kickstarter项目,然后 – 总裁兼联合创始人Kwabena Agyeman于2015年加入运营业务。

从那时起,OpenMV开发并销售了多个相机平台的迭代。 OpenMV Cam的当前版本H7采用STMicroelectronics STM32H743VI ARM Cortex M7处理器,运行频率为400 MHz,内存为1 MB,闪存为2 MB。所有I / O引脚输出3.3V且耐5V。 I / O接口包括USB计算机接口;一个能够100 Mbps读/写的μSD卡插槽;可以运行高达100 Mbps的SPI总线,I2C总线,CAN总线和异步串行总线,用于连接其他微控制器传感器,以及12位ADC,12位DAC,三个I / O引脚伺服控制,RGB LED和两个850 nm红外LED。

使用OpenMV Cam H7,一次可跟踪多达16种颜色。

可拆卸摄像头模块允许OpenMV Cam H7与不同的传感器连接,但摄像头配有OmniVision Technologies的OV7725图像传感器。这款640 x 480色彩传感器是一个1/4“CMOS图像传感器,全分辨率下以60 fps运行,速度高达120 fps,分辨率低于320 x 240.另外,相机的镜头尺寸为2.8 mm标准M12镜头卡口。

对于专业机器视觉应用,OpenMV提供全球快门相机模块,由安森美半导体的752 x 480 MT9V034全局快门CMOS传感器组成。对于热成像应用,OpenMV提供FLIR Lepton适配器模块。

“使用我们的系统部署散热功能是一个简单的过程,”Agyeman说。 “假设您想将相机放在房间的角落以进行安全或监视。也许它有一个Wi-Fi芯片可以在它看到任何东西时向服务器发送一条消息。 OpenMV cam是一体化的包装,可以完成所有工作。“

他继续说道,“我们有一个电池连接器,一个Wi-Fi屏蔽,FLIR Lepton支持,并且软件可以让整个系统开启,捕获热图像并关闭,同时以非常低的功耗生存等待一些环保行动发生。“

关于软件,编程是通过MicroPython完成的 – 一种用C编写的Python可编程语言版本,经过优化可在微控制器上运行。 OpenMV的摄像头有一个运行在机上的MicroPython内核。

“通过内核,您可以发送Python代码脚本,并解析,编译和执行该代码。我们所有的函数都是用C语言编写的,然后他们为他们创建了一个Python模块,您可以使用MicroPython解释器调用它们。使用Python的原因是我们的固件现在约为2 MB,加载固件需要很长时间,“他说。

“如果你在C工作,”Agyeman继续说道,“每次对设备进行编程需要很长时间,包括任何时候进行一次更改。可以努力使固件的某些部分可重新编程,而某些部分不可重新编程,从而无需擦除整个部分,但通过使用MicroPython,我们的编译,上载和执行时间不到一秒。 ”

openmv最新的相机,openmv cam h7,建立在ARM Cortex m7处理器上。

真实案例和性能

Agyeman说,OpenMVCam的所有版本都可以完成各种成像任务,包括颜色跟踪、人脸检测视频记录和基准标记跟踪(Apriltag标记跟踪),但机器视觉社区的一个潜在的有趣功能是字符识别,这是使用chars74k图像数据完成的。ET.由大量字母A-Z和数字0-9的图片组成,该数据集可以用H7识别打印字符。

Agyeman说,虽然它不一定有“全文识别”,但OpenMVCamH7可以指向一个字母并识别该字母。

“当针对图像的感兴趣区域时,算法以大约20 fps的速度运行。如果你不需要很高的帧速率,你可以拍一张照片,如果你知道图像中的数字应该在哪里,你可以在该区域启动算法,并将文本数字化,”他说。

Agyeman提供的一个例子是,openmv cam指向带有旋转数字的机械刻度盘,目的是借助于机器学习实现刻度盘的数字化。

“即使有了OpenCV和基于Linux的处理器,这也不容易,”他说。“只有模板匹配或机器学习才能解决这一问题。然而,有了H7,我们就有了一个机器学习示例脚本,该脚本直接内置在相机中,不需要安装任何软件。

OpenMV相机部署的其他现实应用包括机器人竞赛,如First Robotics以及用于简单特征检测的产品线装配应用程序。相机内置的免费功能包括条形码读取、二维码读取和数据矩阵读取功能。虽然H7相机或以前版本的相机无法与工业相机或智能相机(通常用于机器视觉)的功能匹配,但OpenMV及其相机的一个优势是成本。

Agyeman说:“当人们不想为复杂的机器视觉摄像机系统支付费用时,他们使用OpenMV摄像机,他们希望能够完成一些涉及最低质量控制检查的工作,并希望能够快速实施一个简单的解决方案。”“这避免了他们使用系统集成商和昂贵的相机和个人电脑

使用OpenMV相机作为微控制器,将其插入编写简单代码的计算机,并使用编辑器来处理安装,这是Agyeman最近看到的另一个应用程序。

展望未来,OpenMV团队着眼于开发新的人工智能AI)解决方案。

“我们可以做的一件事是,因为它是一个处理器,直接使用SPI总线接口与其他处理器通信。不同的人工智能板现在存在,帮助加速和启用新的应用程序。他说:“我们正在考虑将这些设备集成为未来相机的防护罩。”

“此外,”他说,“我们正在努力将人工智能功能集成到相机中。”

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4962

    文章

    18145

    浏览量

    286510
  • 机器视觉
    +关注

    关注

    160

    文章

    3996

    浏览量

    118084
  • openMV
    +关注

    关注

    3

    文章

    28

    浏览量

    9659

原文标题:OpenMV:低成本、开源平台支持不同的嵌入式视觉应用程序

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    嵌入式软件开发应该掌握哪些知识?

    两个部分组成,其中嵌入式软件是指在嵌入式系统中运行的程序,用于控制硬件并提供特定的功能和服务。嵌入式软件应用广泛,包括汽车、医疗设备、智能家居、智能穿戴、工业自动化等众多领域。 二、
    发表于 02-19 11:23

    嵌入式学习步骤

    开发板上测试固件以及在实际设备上进行测试。 嵌入式系统的多样化发展,它将更为广泛地应用于各个领域,实现智能化、网络化、自动化的目标。同时,随着人工智能和机器学习技术的发展,嵌入式系统
    发表于 02-02 15:24

    嵌入式Linux应用程序开发详解-第3章

    电子发烧友网站提供《嵌入式Linux应用程序开发详解-第3章.pdf》资料免费下载
    发表于 11-16 11:19 0次下载
    <b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>应用程序</b>开发详解-第3章

    嵌入式Linux应用程序开发详解-第2章

    电子发烧友网站提供《嵌入式Linux应用程序开发详解-第2章.pdf》资料免费下载
    发表于 11-16 11:18 0次下载
    <b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>应用程序</b>开发详解-第2章

    嵌入式Linux应用程序开发详解-第1章

    电子发烧友网站提供《嵌入式Linux应用程序开发详解-第1章.pdf》资料免费下载
    发表于 11-16 11:17 0次下载
    <b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>应用程序</b>开发详解-第1章

    嵌入式视觉技术如何赋予机器观察能力

    “看”的能力一直被认为是生物体独有的特质,它让我们能够识别形状、颜色、纹理和深度,进而与外部世界互动。 而现在,这个能力正被赋予机器,这就是机器视觉更专业地说是嵌入式
    的头像 发表于 10-18 11:36 1419次阅读

    什么是嵌入式Linux?

    Linux到底是什么呢? 嵌入式linux 是将日益流行的Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行的一种操作系统。简单来说,是除了电脑之外可以运行程序的设备,将C
    发表于 10-11 13:47

    107使用ADS v1.2进行嵌入式软件开发

    当开始为嵌入式应用程序开发软件时,ADS的用户可能不知道他们的目标硬件的技术规格。目标外围设备、内存映射甚至处理器本身的细节可能是未知或未确定的。 为了在知道或考虑此类细节之前进行软件
    发表于 08-30 06:27

    机器视觉嵌入式的关系

    机器视觉嵌入式的关系 机器视觉嵌入式技术是当前信息技术中得到广泛应用的两个关键领域。它们的结
    的头像 发表于 08-09 16:57 697次阅读

    什么叫机器视觉机器视觉嵌入式有什么关系?

    、理解和处理图像或视频数据,以实现自动化的视觉分析和决策。机器视觉通过使用各种算法和模型,对图像或视频进行各种处理和分析,例如目标识别、图像分类、
    的头像 发表于 08-07 08:09 621次阅读
    什么叫<b class='flag-5'>机器</b><b class='flag-5'>视觉</b>?<b class='flag-5'>机器</b><b class='flag-5'>视觉</b>和<b class='flag-5'>嵌入式</b>有什么关系?

    机器视觉基础知识点总结:机器视觉嵌入式的关系

    机器视觉嵌入式系统是密切相关的。机器视觉是指计算机技术用于模拟人类视觉系统的能力,通过对图像或
    的头像 发表于 08-05 16:25 1773次阅读

    使用Arduino Nano 33构建嵌入式语音识别应用程序

    电子发烧友网站提供《使用Arduino Nano 33构建嵌入式语音识别应用程序.zip》资料免费下载
    发表于 06-28 14:50 1次下载
    使用Arduino Nano 33构建<b class='flag-5'>嵌入式</b>语音识别<b class='flag-5'>应用程序</b>

    嵌入式学习路线你知道吗?

    应用和驱动开发打下坚实的基础。 4学习嵌入式Linux应用程序开发 这一阶段主要学习上层的嵌入式Linux应用程序开发,包括基于Linux多进程、多线程、网络、文件与目录和QT编程。掌
    发表于 06-14 16:00

    OpenMV初识

    嵌入式端进行python开发。OpenMV基于32位,ARM Cortex-M7内核的OpenMV-H7, 并结合各种摄像头,可以进行多种机器视觉
    的头像 发表于 06-12 11:23 1440次阅读
    <b class='flag-5'>OpenMV</b>初识

    瑞萨嵌入式应用程序编程接口参考手册

    瑞萨嵌入式应用程序编程接口参考手册
    发表于 05-04 19:44 1次下载
    瑞萨<b class='flag-5'>嵌入式</b><b class='flag-5'>应用程序</b>编程接口参考手册