创客教育中常见的视觉识别摄像头介绍

2023-11-13

在这里插入图片描述

近年来,创客教育、人工智能教育在中小学日渐普及。从目前中小学教育的应用层面来说,主要包含了视觉和听觉等几个领域的人工智能教学。因此,摄像头模块或传感器,作为视觉领域必不可少的教具,也被应用的越来越多。市面上越来越多的厂家或机构,也开发了许多视觉摄像头相关的硬件。笔者作为一名创客爱好者以及中小学创客教育从业者,从自己的角度,为大家梳理了一些常用的摄像头模块,并做一些简单的介绍。因笔者水平有限,以及一些主观因素、难免会有疏漏和错误之处,还请大家见谅与批评指正。

注意,本文主要聚焦于介绍创客、爱好者、学生等人群,以及中小学教育领域可能用到的一些摄像头模块,至于一些专业领域的模块,不在本文介绍的范畴。

OpenMV

openmv
说到视觉摄像头模块,首先就不得不说赫赫有名的 OpenMV 了,它应该是开源硬件、创客领域中被用的最多的摄像头开发板之一了。

OpenMV 摄像头模块是一款小巧,低功耗,低成本的开发板,它的目标是希望成为机器视觉届的 Arduino,可以让创客或者爱好者轻松实现机器视觉(Machine Vision)相关的应用。为了实现这些目标,在硬件方面,最新版的 OpenMV H7 以 STM32H743VI ARM Cortex M7 芯片为核心,拥有 480 MHz 的主频,性能非常强大;在算法方面,OpenMV 做了各种集成和优化,支持大量的视觉算法;在编程方面,采用 microPython 语言进行编程,大大降低了入门难度;此外还拥有多个 IO 管脚,支持 ADC,DAC,PWM、I2C、串口和 SPI 等接口;在扩展方面,官方也推出了类似于 Arduino 的各种扩展板,让你可以轻松扩展 OpenMV 的功能,如添加 LCD 显示屏扩展来显示 OpenMV 所获取的图像,添加 WiFi 或蓝牙扩展模块,让其加入到网络中。另外,OpenMV 还可与 Arduino,树莓派等控制器结合使用,这使得 OpenMV 的应用范围就更加全面了。因此,OpenMV 才能成为开源硬件与创客领域使用最多的机器视觉摄像头模块之一。

openmv_shield

OpenMV 支持的算法或应用非常多,主要有:运动检测、颜色跟踪、标记跟踪、人脸检测、眼动追踪、光流检测、二维码检测/解码、数据矩阵检测/解码、条形码码解码、AprilTag 标记跟踪、图形检测(直线、圆形、方形)、模板匹配、图像捕获、视频录制。因为 OpenMV 出现的比较早,应用广泛,相对比较成熟,所以后面介绍的很多摄像头模块,在算法(至少在程序语言上)上很多就是借鉴了 OpenMV 的算法或者直接与之兼容。

有了这些算法的加持,仅需要写一些简单的 microPython 代码,即可轻松的完成各种机器视觉相关的任务。比如,可以给自己的机器人提供周边环境感知能力;给智能车增加视觉巡线功能;给智能玩具增加识别人脸功能,提高产品趣味性等;甚至,可以给工厂产品线增加残次品筛选功能等。

项目官网:https://openmv.io/

Pixy2

pixy2

Pixy 系列是卡内基-梅隆大学和 Charmed 实验室共同推出的图像识别系统,Pixy2 是其最新的第 2 代产品。与 OpenMV 相比,Pixy2 只能作为传感器使用,而不能作为主控使用。

Pixy2 采用 NXP LPC4330 双核处理器,主频为 204 MHz。作为一个传感器,Pixy2 的算法可以直接将数据处理结果发送给与之连接的微处理器即可,而不必让处理器处理所有的原始视觉信息,处理后得到的数据更精确有效。因此,你的 Arduino 板或其它微处理器可以腾出许多资源来执行其他事件。而且 Pixy2 处理图像的速度可以达到 60 Hz,即每秒钟可以处理 60 帧的图像,这样就保证了与 Arduino 等控制器的通信速度,保证了图像处理等相关任务的实时性。

Pixy2 支持多物体识别,具有强大的多色彩颜色识别及色块追踪能力(最高同时支持 7 种颜色的识别),只需按下一个按钮即可记忆并识别你教授的物体。另外它还支持线路追踪、线路分支检测和小型条形码识别功能,特别适合应用在小型移动机器人场景。

除此以外,Pixy2 还有一个专门的配套软件 PixyMon,通过 USB 线将 Pixy2 与电脑连接,可以让你在电脑上直接看到 Pixy2 摄像头看到的实时场景,同时软件还支持对 Pixy2 进行配置,调整识别参数,提高识别效果。

项目官网:https://pixycam.com/

HuskyLens

huskylens

HuskyLens(中文名:哈士奇,或二哈),是由 DFRobot 针对中小学、创客和爱好者开发的一款人工智能摄像头。它采用了新一代的 AI 人工智能专用芯片 Kendryte K210,内置 64 位 400 MHz 双核 RISC-V 处理器,运行神经网络算法的速度比 STM32H743(即 OpenMV 摄像头模块的处理芯片)快 1000 倍以上。

除了性能强大之外,HuskyLens 还是一款简单易用的 AI 视觉传感器,内置 6 种功能:人脸识别、物体追踪、物体识别、巡线追踪、颜色识别、标签(二维码)识别。HuskyLens 自带 2.0 寸 IPS 显示屏(320×240 分辨率),可以将调试过程和识别结果直接显示在屏幕上,非常方便。拨动功能按键,就能切换算法,按下学习按键即可完成 AI 训练,摆脱繁琐的训练和复杂的视觉算法,让你更加专注于项目的构思和实现。

huskeylens_functions

HuskyLens 板载 UART / I2C 接口,可以连接到 Arduino、掌控板、micro:bit、Raspberry Pi 等主流控制器,实现硬件无缝对接。

除此以外,为了方便中小学学生设计人工智能相关项目,HuskyLens 不仅支持 C/C++ 或 Python 等编程语言与之进行通信交互,而且还支持图形化编程,如 Mind+、MakeCode 等软件,仅需几个简单的图形编程模块,就可以完成如图像识别等复杂的任务。

产品官网:https://www.dfrobot.com.cn/goods-2050.html

M5StickV & UnitV

m5stickv

M5StickV 由 M5Stack 针对创客和爱好者开发的一款人工智能摄像头,采用了 Kendryte K210 人工智能芯片作为主控。

M5StickV 摄像头具备机器视觉能力,配备 OV7740 摄像头和一块 1.14 寸的 IPS 显示屏(135×240 分辨率),可以实时显示摄像头和算法识别的图像结果。除了图像功能以外,M5StickV 还搭载了麦克风声音传感器和喇叭,支持语音识别和语音合成相关的任务。另外,它还搭载 MPU6886 六轴运动传感器,包括三轴陀螺仪和三轴加速度计,可以轻松检测摄像头的姿态和运动状态;M5StickV 还集成了 200 mAh 的锂电池,支持充放电管理,这使得它可以独立使用,而不需要额外供电。在如此小的体积(48×24×22mm)之内,搭载如此多的功能,同时性能还非常强大,性价比之高,非常难得。

M5StickV 支持多种视觉识别能力,主要应用场景有:面部识别/检测、物体检测/分类、实时获取目标的大小和坐标、实时获取检测到的目标类型、形状识别、视频/显示、游戏模拟器等。

在保持性能和功能的前提下,为了简化编程难度,M5StickV 支持 microPython 开发环境,这使得你在使用 M5stickV 上进行项目开发时,程序代码将会更加精简。因此 M5StickV 会是一个很好的零门槛机器视觉嵌入式解决方案。

另外,M5StickV 其实还有一个“精简”版本:UnitV。UnitV 只搭载了 M5StickV 的核心模块:K210 主控和 OV2640 摄像头,因此在图像相关领域,与 M5StickV 的功能基本类似。而 M5StickV 拥有的显示屏、麦克风声音传感器、喇叭、六轴传感器等,在 UnitV 上通通被丢弃了。这样一来,两者就形成了一个鲜明的定位差异,M5StickV 适合在前期做开发调试,UnitV 适合在后期做部署,即测试好程序和功能以后,直接用 UnitV 代替 M5StickV,从而减少项目成本。

m5unitv

产品官网:https://m5stack.com/

ROI

koi

KOI 锦鲤人工智能模块,是小喵科技针对中小学和爱好者开发的一款可图形化编程的 AIoT(AI+IoT)人工智能模块,搭载了 Kendryte K210 人工智能专用芯片。

在硬件上,KOI 含有摄像头、麦克风、喇叭、1.3 寸 IPS 显示屏(240×240 分辨率)、WiFi 模块、支持外接 TF 卡等。它的摄像头还突破性的采用了可调整视角设计,支持 0~180° 旋转,不管作为前置摄像头还是后置摄像头场景,都可轻松切换。IPS 显示屏,可用于显示摄像头的实时图片与一些操作的交互信息。有了这些硬件的加持,KOI 可实现视、听、说全方位的 AI 功能,比如视觉识别、语音识别、语音合成、物联网等功能。齐备的功能可以让中小学学生系统性体验与学习人工智能。除了集成 USB、UART 等通信接口以为,模块还集成 WiFi 接口,可以让你的人工智能作品接入云端,让作品更加出色。

在使用上,KOI 支持图形化编程和代码编程,无论是新手还是创客均可快速上手,可以说是非常适合中小学入门人工智能的一款摄像头模块。

由于主控也是使用了 K210 芯片,因此其他 K20 主控的摄像头能实现的功能,KOI 基本都能实现,官方也列举了大量的中小学教学中的人工智能应用场景。

koi功能枚举

产品官网:https://www.kittenbot.cn/

K210 系列

从前面的介绍可以看出,HuskyLens、M5StickV、UnitV、KOI 等几个模块都使用了 Kendryte K210 人工智能芯片。值得一提的是,K210 这款芯片是由中国的公司嘉楠科技自主研发设计的,芯片中包含了一个自研的神经网络硬件加速器 KPU,可以高性能地进行卷积神经网络运算,简单来说,就是非常适合应用于人工智能机器听觉与机器视觉领域,所以这也是为什么前面提到的摄像头模块都用到了 K210 这款芯片。

基于 K210 芯片的产品,除了前面几款集成度比较高的产品,可以应用于爱好者或中小学学生教学场景外,其实还有很多相关的开发板模块,可以应用于专业创客、技术研发场景,比如 Sipeed Maixduino 开发板、Maix Bit 开发板、Maix Dock 开发板、Maix Go 开发板、Widora BIT K210 开发板等,当然还有更多,这里不能一一列举。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l7wLyuUH-1597893677240)(https://ironpanda-1259781115.cos.ap-shanghai.myqcloud.com/2020-07-30/k210boards.png)]

这些模块实际上不能称之为摄像头模块,而只是一些开发板。但是这些开发板基本都集成了摄像头和显示屏接口,支持直接连接摄像头传感器和显示屏模块,从而成为一个人工智能摄像头开发套件,所以我也放在这里做一些简单介绍,让大家稍微了解一下。

因为这些模块更多的是面向专业开发者或者专业创客的,所以在功能上会更加自由。前面几款基于 K210 芯片的摄像头基本都有一些定制的算法,集成了相应的功能,不需要用户去开发底层代码,所以在功能上往往也会受限。但是这些 K210 通用开发板,在算法和实现效果上往往更加自由。虽然官方也提供了一些通用的算法案例,但是为了实现更好的效果或提升性能,往往需要自己去开发底层算法,因此不太适合用在中小学教学场景中,但是对于感兴趣的创客老师,也是非常值得尝试的。

小 MU

mu

小 MU 视觉传感器是由杭州摩图科技针对青少年创客教育开发的一款人工智能摄像头模块,目前最新版本是第 3 代。它采用 ESP32 双核处理器作为主控芯片,配有一颗 VGA 85° 无畸变广角镜头,具有速度快,视野广,体积小,功耗低等特点。由于采用 ESP32 作为主控芯片,所以模块自身还具有 WiFi 功能,可以实现图传和无线通讯,轻松实现 AIoT 应用,譬如局域网内监控云台、遥控监控车等。在硬件接口上,小 MU 采用 UART 串口和 I2C 作为主要通讯方式,可以在任何嵌入式平台上使用。

小 MU 集成了多种视觉算法,而且它的视觉算法全部由摩图科技自主研发,包括色块检测,颜色识别,球体识别,人体检测,以及形状、交通、数字卡片识别,通过固件升级还可以获得更多算法的支持。摄像头上方具有一颗高度集成的光线传感器,可以实现环境光强度的检测,红外测距,手势方向识别功能。

在编程方面,小 MU 支持在 Arduino、Mixly、Mind+、MakeCode 等主流编程开发平台上直接使用,官方提供了相应的库文件和模块支持,难度适宜,可以广泛应用于智能玩具、人工智能教具、创客产品等产品或领域。

产品官网:http://morpx.com/

ESP32 系列

除了小 MU 以外,使用 ESP32 作为主控的摄像头传感器模块其实也有很多,比如 ESP32-CAM、ESP-EYE、T-Camera、M5Camera 等。这些模块基本也都大同小异,由于主控芯片一样,因此在性能、算法、效果上基本上差不多。另外,ESP32 这款芯片也是完全由我国的公司乐鑫科技自主开发的,在国际上也非常受欢迎。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IyfHxKP8-1597893677243)(https://ironpanda-1259781115.cos.ap-shanghai.myqcloud.com/2020-07-30/esp32camera.png)]

相比前面描述的摄像头模块,这几款 ESP32 摄像头模块中,除了小 MU 官方开发了各种识别算法外,其他几款基本缺少官方的算法支持,要实现特定是视觉识别功能,需要用户自己开发算法和程序,使用难度比较高;而且在性能方面,远不及 K210 芯片支持的几款摄像头以及 OpenMV、Pixy2 等。因此,在中小学教育领域中应用不是很多。

树莓派+普通摄像头+OpenCV

除了前面提到的集成摄像头的模块以外,在中小学教育中,采用树莓派(或其他类似性能的单板计算机),再加上普通摄像头和 OpenCV 算法,也是一个很好的选项。

pi_camera

众所周知,树莓派是由树莓派基金会研发的一种只有信用卡大小的单板计算机,目前最新版本是 4B。最初的设计目标是用较为廉价的硬件和开源软件为儿童提供一个计算机教育平台。但其优秀的扩展性和易于开发的特性,使其不仅仅用于儿童教育,更是成为了极客们的玩具。树莓派被开发出了千千万万种玩法,并且普通人也可以轻松实现。

相比前面的摄像头模块,它们的主控芯片基本上是 MCU 微处理器,受芯片性能和处理能力的影响,它们上面运行的的视觉算法基本都是为芯片定制的,开发难度相对比较高。但是树莓派的处理器性能却是计算机级别的,直接可以运行电脑级别的操作系统,因此,将电脑端运行的通用算法在树莓派上运行往往是绰绰有余,比如常见的开源图像识别算法 OpenCV。再加上也有越来越多的树莓派图形化编程软件涌现出来,中小学生使用树莓派完成视觉识别任务的难度大大降低,实现各种视觉算法的自由度也更高,所以应用也是越来越广泛。

几个方案的对比

对比表

总结

通过前面的介绍,可以发现,国产的人工智能技术越来越强大,以往在摄像头模块或传感器领域,基本被国外技术垄断,但是现在也越来越多出现了中国技术的身影,比如 K210、ESP32 等芯片基本都是由我国的公司自主研发的,而且在应用上也逐渐在取代国外的技术。虽然还只是停留在一些微处理器领域,但是随着中小学人工智能教育的普及,越来越多学生能够接触到前沿高端的技术,从小埋下科技的种子,相信在不久的将来,我国在许多核心科技领域,一定能实现跨越式发展,赶超一些发达国家的技术。有幸生活在这样一个时代,既是幸运,也充满挑战,希望可以与各位老师与学生共勉!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

创客教育中常见的视觉识别摄像头介绍 的相关文章

随机推荐

  • .sh文件中第一行 #!/bin/bash -il 是什么

    sh文件中第一行 bin bash il 是什么 是执行该脚本文件的解释器的路径和选项 在一个 shell 脚本文件的第一行加上 符号 称为 shebang 它告诉系统使用哪个解释器执行这个脚本 在 bin bash 的例子中 它告诉系统使
  • Deep learning-based CSI Feedback for Beamforming 1

    1 Abstract The potentials of massive multiple input multipleoutput MIMO are all based on the available instantaneous cha
  • 目标检测综述-------深度学习用于目标检测的近期进展 introduction(一)

    论文题目 Recent Advances in Deep Learning for Object Detection 论文地址 摘要 目标检测是计算机视觉一个重要的视觉问题并且在最近得到了广泛的研究 视觉目标检测致力于在给定的图像内找到带有
  • “No input file specified “问题的处理

    接手新项目 配置的时候 遇上了 No input file specified 的问题 第一反应 是上网搜 关于这个问题的帖子有很多 总的来说 得到的问题原因有 一 跟路径有关系 路径没指对 二 可能是权限的问题 如 不允许访问 三 SCR
  • 《实现VM机与本机互ping》

    实现VM机与本机互ping 1 安装VM机及对应的OS gt 到本机检测VMware Network Adapter VMnet8是否已经生成 网上邻居 网络连接 2 查看 VMware Network Adapter VMnet8 网络I
  • C++ for循环跳过某一项求和

    include
  • 双三次插值及Matlab实现

    双三次插值及Matlab实现 一 简单实例 采用简单实例进行对双三次插值的介绍 由于双三次插值对于目标图像的某一像素进行估计时 所采用的像素信息为其周围16个像素点信息 因此不同于最近邻插值和双线性插值 此时假设有 5 5 5 times5
  • feign.FeignException: status 400 reading xxx#xxxx(String); content:

    网上有很多不一样的说话 我这个主要是因为feign的那个方法使用的 RequestParam注解 这个接收的参数长度过长造成的 这也是feign就算使用post方法 RequestParam的那个参数他会放在请求地址后面 而不是放在请求体
  • JupyterNotebook设置Python环境的方法步骤

    不多说 看链接 https stackoverflow com questions 39604271 conda environments not showing up in jupyter notebook conda activate
  • LAMP架构(qq农场)、部署jira、Java+数据库环境、

    LAMP架构 论坛 yum y install httpd yum y install mariadb mariadb server yum y install php php fpm php mysql php gd gd systemc
  • Linux多线程

    什么是线程 线程是OS调度的基本单位 其实在Linux环境下 线程可以看做是轻量级线程 Linux的线程本质仍然是进程 Linux先有进程后有线程 当创建了一个进程时 系统给他分配一段4G的虚拟内存 并在其内生成进程的PCB 当他调用相关函
  • 2023年网络安全趋势【网安人必看】

    数据安全越来越重要 我国 数据安全法 提出 建立健全数据安全治理体系 各地区部门均在探索和简历数据分类分级 重要数据识别与重点保护制度 数据安全治理不仅是一系列技术应用或产品 更是包括组织构建 规范制定 技术支撑等要素共同完成数据安全建设的
  • android Native和 Flutter 通信

    android 工程集成Flutter 集成方式主要是两种 1 工程的方式集成 首先创建android 和flutter工程 工程路径必须在同一路径下 1 在android 工程的settings gradle 文件中添加 rootProj
  • oracle的jdbc的版本与jdk对应关系

    连接类型 1 JDBC OCI oci是oracle call interface的缩写 此驱动类似于传统的ODBC 驱动 因为它需要Oracle Call Interface and Net8 所以它需要在运行使用此驱动的JAVA程序的机
  • 《软件测试》第六章 检查代码

    软件测试 第六章 检查代码 6 0 前言 6 1 静态白盒测试 检查设计和代码 6 2 正式审查 6 2 1 同事审查 6 2 2 走查 6 2 3 检验 6 3 编码标准和规范 6 4 通用代码审查清单 6 4 1 数据引用错误 6 4
  • MATLAB:画图

    目录 一 一个图上显示多个函数 二 在一个窗口显示多个图片 三 图形标注 四 线条属性 一 一个图上显示多个函数 1 相当于将上一个plot 保持住 plot B big angle x r hold on plot big angle x
  • Pandas中 DataFrame中添加一行/一列

    概述 添加行df loc 以及df append 两种方法 添加列df 和df insert 两种方法 添加行例concat 和reindex 两种方法 一 添加行 1 采用loc 方法 loc方法和iloc方法一样 可以索引DataFra
  • 定义和初始化vector对象

    和任何一种类类型一样 vector模板控制着定义和初始化向量的方法 下面列出了定义vector对象的常用方法 默认初始化 vector对象从而创建一个指定类型的空vector vector
  • Android Studio SDK Manager license 失效问题

    Before building your project you need to accept the license agreements and complete the installation of the missing comp
  • 创客教育中常见的视觉识别摄像头介绍

    近年来 创客教育 人工智能教育在中小学日渐普及 从目前中小学教育的应用层面来说 主要包含了视觉和听觉等几个领域的人工智能教学 因此 摄像头模块或传感器 作为视觉领域必不可少的教具 也被应用的越来越多 市面上越来越多的厂家或机构 也开发了许多