目录

一、 Open MV 简介​

1.OpenMV摄像头的特点:

2.OpenMV摄像头的应用:

3.规格:

二、 搭建环境,Open MV IDE安装

1.Windows系统

2.Linux系统

三、Open MV IDE

1.概述:

2.运行:

3.帧缓冲查看器:

4.直方图显示:


一、 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。
    • 对于专业的机器视觉应用
    • 对于红外热成像机器视觉应用
  • 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 图像处理方法,加油!

学习OpenMV(一)详细参数及简单介绍相关推荐

  1. python学习笔记(一)Python 简单介绍

    Python学习笔记(一)Python 简单介绍 Python介绍 Python简介 Python应用领域 Python是解释型的语⾔ 编译和解释的区别是什么? 编译型vs解释型 编译型 解释型 Py ...

  2. 【学习记录】Inception结构的简单介绍及Filter Concatenation的理解

    文章目录 [学习记录]Inception结构的简单介绍及Filter Concatenation的理解 Inception Filter Concatenation [学习记录]Inception结构 ...

  3. 【深度学习】超参数优化简单介绍

    介绍 超参数优化也称作超参数调整.往往机器学习/深度学习的算法中包含了成千上百万的参数,这些参数有的可以通过训练来优化,例如神经网络中的权重(Weight)等,我们称为参数(Parameter),也有 ...

  4. 每天一小时python官方文档学习(一)————python的简单介绍

    我们都知道,python的官方文档写得十分详尽,也是每一个学习python的人都绕不开的. 所以从今天开始,我每天都会用一小时学习python的官方文档,按照文档目录的顺序,摘录一些有用的语句,写下一 ...

  5. java 不定长参数_简单介绍Java的不定长度参数

    本文版权归作者所有,仅供用来网上学习来用,读者可以收藏,请不要下载到本机和重新发布到其它网站 先看两个简单的例子,来感受一下Java的不定长度参数 第一个例子: public class VariAr ...

  6. XML学习总结(2)——XML简单介绍

    2019独角兽企业重金招聘Python工程师标准>>> 一.XML概念 Extensible Markup Language,翻译过来为可扩展标记语言.Xml技术是w3c组织发布的, ...

  7. [深度学习-原理]GAN(生成对抗网络)的简单介绍

    系列文章目录 深度学习GAN(一)之简单介绍 深度学习GAN(二)之DCGAN基于CIFAR10数据集的例子 深度学习GAN(三)之DCGAN基于手写体Mnist数据集的例子 深度学习GAN(四)之c ...

  8. [EntLib]微软企业库5.0 学习之路——第五步、介绍EntLib.Validation模块信息、验证器的实现层级及内置的各种验证器的使用方法——上篇...

    本文是为后面的学习之路做铺垫,简单介绍下企业库中的Validation模块的一些相关知识,包括Validation模块的简介.用途.使用方法.默认提供的多种验证器的介绍等. 一.简介及用途 在实际的项 ...

  9. 地图可视化组件–folium简单介绍

    地图可视化组件–folium简单介绍 folium是基于Python环境开发的一个地图绘制包,可以在程序中引入从而绘制精美的地图数据可视化图表.folium建立在Python生态系统的数据处理能力和L ...

最新文章

  1. TF-IDF与余弦相似性的应用(二):找出相似文章
  2. php培训12.22
  3. JAVAEE框架之SpringMVC基础
  4. Android之ConnectivityManager
  5. bom .dom_MicroProfile 2.2 BOM导入支持
  6. 决策引擎中的Hunter类策略又是什么?
  7. 几款主流的 Python IDE
  8. python题目关于企业利润_Python练习题(一)
  9. 移动开发者的未来在哪里?
  10. ExtJS002Window创建
  11. SQL必知必会 附录解读
  12. 用了很多年的PC端离线版个人知识管理软件PKM2 Manager推荐给大家
  13. git管理工具使用-本地通过git命令拉取项目
  14. 《HBase权威指南》读书笔记(二)
  15. 狂团KtAdmin框架正式免费开源发布,助力独立版SAAS系统快速开发
  16. 《最好的告别》:如何优雅地走向生命终点
  17. P1:选 7-15 群发邮件
  18. 高数复习(2)--方向导数与梯度的理解 附根据梯度求轨迹的基本模型
  19. python 7周自学计划
  20. 百度地图(二) - 模仿百度地图搜索框

热门文章

  1. Tableau服务器部署方案
  2. 服务器之间文件同步 go,基于golang文件实时监控并同步远端服务器工具
  3. sdk无法打开的原因,值得新手参考
  4. Register Form
  5. Web安全—安全事件的分析思路详解(安全设备)
  6. 一文带你看懂!TensorFlow入门
  7. java毕业设计电力公司员工安全培训系统Mybatis+系统+数据库+调试部署
  8. 一目了然的 Node.js Windows10 安装篇
  9. 在matlab中 编程n,Matlab与C++混合编程 1--在C++中调用自己写的matlab函数
  10. java使用freemarker导出word标题失效问题