目录
一、 Open MV 简介

1.OpenMV摄像头的特点:
-
STM32H743II
ARM Cortex M7 处理器,480 MHz ,1MB RAM,2 MB flash. 所有的 I/O 引脚输出 3.3V 并且 5V 耐受。这个处理器有以下的IO接口。-
全速 USB (12Mbs) 接口
,可以连接到电脑。但是需要注意的是连接的必须是能够传输数据的线。当插入OpenMV摄像头后,你的电脑会出现一个虚拟COM端口和一个“U盘”。 -
μSD卡槽
拥有100Mbs读写,这允许你的OpenMV摄像头录制视频,和把机器视觉的素材从SD卡提取出来。 -
一个SPI总线
高达100Mbs速度,允许你简单的把图像流数据传给LCD扩展板,WiFi扩展板,或者其他控制器。 -
一个 I2C总线
,CAN总线, 和2两个异步串口总线 (TX/RX) ,用来链接其他控制器或者传感器。 -
一个12-bit ADC 和一个12-bit DAC。
-
2个 I/O 引脚用于舵机控制
. - 所有的IO口都可以用于,中断和PWM(板子上有10个I/O引脚)。
-
一个RGB LED(三色)
, 两个高亮的 850nm
IR LED(红外)
。 - 32 MB 外置的 32-bit SDRAM ,100 MHz的时钟,达到 400 MB/s 的带宽。
- 32 MB 外置的 quadspi flash, 100 MHz的时钟,4-bit DDR模式达到 100 MB/s 的带宽。
-
-
可拆卸的摄像头模块系统,允许OpenMV Cam H7 Plus与不同的感光元件模组连接:
-
OpenMV4 H7 Plus默认配置的
OV5640
感光元件处理2592×1944 (5MP)图像。在QVGA (320×240)及以下的分辨率时,大多数简单的算法可以运行(25~50)FPS。 - 对于专业的机器视觉应用
- 对于红外热成像机器视觉应用
-
OpenMV4 H7 Plus默认配置的
- 3.7V 锂离子电池接口
资料请看:
OpenMV | 星瞳科技
2.OpenMV摄像头的应用:
-
Frame Differencing帧差分算法
- 可以使用帧差分算法来查看场景中的运动情况。
-
Color Tracking颜色追踪
- 可以使用OpenMV在图像中同时检测多达16种颜色(实际上永远不会想要找到超过4种颜色),并且每种颜色都可以有任意数量的不同的色块。OpenMV会告诉您每个色块的位置,大小,中心和方向。
-
Marker Tracking标记跟踪
- 可以使用OpenMV Cam来检测颜色组的颜色,而不是单独的颜色。
-
Face Detection人脸检测
- 可以使用OpenMV Cam(或任何通用对象)检测脸。
-
Eye Tracking眼动跟踪
- 可以使用眼动跟踪来检测某人的注视方向。
-
Person Detection人检测
- 可以使用内置的人检测器(TensorFlow Lite模型)检测视野中是否有人。
-
Optical Flow光流
- 可以使用光流来检测您的OpenMV摄像机面前的画面。
-
QR Code Detection/Decoding二维码检测/解码
- 可以使用OpenMV Cam在其视野中读取QR码。
-
Data Matrix Detection/Decoding矩阵码检测/解码
- OpenMV Cam 也可以检测和解码矩阵码(2D条形码 Data Matrix)。
-
Linear Barcode Decoding条形码
- OpenMV Cam 还可以处理1D条形码。它可以解码 EAN2, EAN5, EAN8, UPCE, ISBN10, UPCA, EAN13, ISBN13, I25, DATABAR, DARABAR_EXP, CODABAR, CODE39, CODE93, 和 CODE128。
-
AprilTag Tracking标记跟踪
- 甚至比上面的QR码更好,OpenMV Cam 也可以追踪AprilTags。AprilTags是旋转不变,尺度不变,剪切不变和照明不变的最先进的基准标记。
-
Line Detection直线检测
- OpenMV Cam可以在几乎跑满帧率的情况下,快速完成无限长的直线检测。而且,也可以找到非无限长的线段。
-
Circle Detection圆形检测
- 可以使用OpenMV很容易的检测图像中的圆形。
-
Rectangle Detection矩形检测
- OpenMV也可以检测矩形,它使用了AprilTag库中的方形检测代码。
-
Template Matching模板匹配
- 可以使用OpenMV模板匹配来检测视野中是否有模板相似的图片。例如,可以使用模板匹配来查找PCB上的标记,或读取显示器上的已知数字。
-
Image Capture图像捕捉
- 可以使用OpenMV捕获RGB565/灰度的 BMP / JPG / PPM / PGM图像。可以直接在Python脚本中控制如何捕获图像。最重要的是,使用机器视觉的算法,进行绘制直线,绘制字符,然后保存。
-
Video Recording视频录制
- 可以使用OpenMV摄像机记录RGB565/灰度的MJPEG视频或GIF图像(或者RAW视频)。你可以在Python脚本中直接控制如何将每个视频帧记录,并完全控制视频录制的开始和结束。而且,像拍摄图像一样,您可以使用机器视觉的算法,进行绘制直线,绘制字符,然后保存。
-
TensorFlow Lite for Microcontrollers
- TensorFlow Lite支持使你可以在OpenMV Cam上运行自定义图像分类和分割模型。借助TensorFlow Lite,你可以轻松分类画面中复杂的区域,并根据所看到的内容控制I/O引脚。
3.规格:
二、 搭建环境,Open MV IDE安装
1.Windows系统
Windows安装很简单,我参照着星瞳的教程,下载驱动包,进入安装程序之后,自动安装IDE以及OpenMV Cam和MicroPython pyboard的驱动程序。
2.Linux系统
在ubantu上打开
Download | OpenMV
,我的虚拟机是64位,选择对应的版本下载。
打开 OpenMV IDE
.run
文件下终端。然后执行:(*表示版本号)
chmod +x openmv-ide-linux-*.run
./openmv-ide-linux-*.run
在Linux上安装OpenMV IDE。之后,请参阅安装程序输出目录中的
README.txt
文件和
setup.sh
文件以安装 设备固件更新软件(DFU),以便在您的启动加载器遇到问题时可以恢复您的OpenMV。
最后,要启动OpenMV IDE,只需单击该
bin/openmvide
文件即可。
只是ta在将摄像头与IDE连接时出现了问题,插入之后没有Open MV的虚拟端口,并且没有弹出驱动的安装程序。最后在ubantu上也安装了IDE无果后,
更换了可以传输数据的线
才解决问题,摄像头连接成功。
在这里出现了一个问题:在换线连接成功之后,弹出过一个窗口,提示我的电脑上有两个openmv凸轮,它询问我连接到哪个串行端口,在这里,我选择了windows,这代表openmv记住了我的选择,下次会自动选择。
三、Open MV IDE
1.概述:
OpenMV IDE使用QtCreator作为文本编辑器后端,具有强大的文本编辑器,由QtCreator驱动,帧缓冲查看器,直方图显示和集成的串行终端,用于OpenMV Cam的调试输出。
OpenMV IDE可以进行新建、打开、另存为、打印等,可以打开多个页面。此外,我还可以在上面看到很多实例便于我参考和使用。
2.运行:
想要运行,只需要点击左下方的运行按钮即可,如果有错误,会在串行终端中报错,OpenMV IDE会自动解析查找错误。当检测到错误时,OpenMV IDE将自动错误地打开文件并突出显示错误的行。
3.帧缓冲查看器:
右上方有一个帧缓冲区,可以查看处理代码时所看到的内容,帧缓冲区查看器在调用
sensor.snapshot()
时显示先前OpenMV Cam的帧缓冲区中的内容。
img = sensor.snapshot() # 拍一张照片并返回图像。
#截取当前图像,存放于变量img中。注意python中的变量是动态类型,不需要声明定义,直接用即可。
4.直方图显示:
OpenMV IDE右侧有一块直方图显示有关帧缓冲区图像的有关信息,有四个选项,分别是RGB、灰度、LAB、YUV 色彩空间。
了解完OpenMV 的基础概念信息,下一步就是学习OpenMV 图像处理方法,加油!