Openmv简明使用教程

写在前面

本教程主要目的是指明学习资源在哪,可以怎么学,不教具体怎么使用,因为没有什么教程比官网上的教程更详细了,希望大家看完这篇文章后,能对如何学习使用Openmv有一个清晰的认知。

一、Openmv介绍

​ OpenMV 是一个开源,低成本,功能强大的 机器视觉模块。

​ 其以STM32F427CPU为核心,集成了OV7725摄像头芯片,在小巧的硬件模块上,用C语言高效地实现了核心机器视觉算法,提供Python编程接口。

​ 卖Openmv比较火的公司叫星瞳科技,但是比较贵,因为Openmv是开源的,在大家能力允许的范围下,可以买一些其他牌子的,只要折腾的来就行,甚至可以尝试自己按照开源的方案自制一个。

​ 开源链接分享:【自制】保姆级教程!做一个低成本的机器视觉神器OpenMV4_哔哩哔哩_bilibili

​ 淘宝购买链接指南:

​ 星瞳:星瞳OpenMV4 H7 Plus 500万高清智能摄像头 官方正版 图像处理 深度学习神经网络 AI目标检测 数字 形状识别-tmall.com天猫

​ 另一个我感觉比较实惠的:OpenMV4 H7 颜色 数字 条形码 二维码 图像识别 视觉识别模块智能-淘宝网 (taobao.com)

​ 星瞳Openmv文档使用教程地址:序言 · OpenMV中文入门教程

​ Openmv详细接口说明文档地址:OpenMV Cam快速参考 — MicroPython 1.9.2 文档 (singtown.com)

注:上面两个教程各有各的侧重点,第一个有很多的例程,但是对具体的接口介绍比较简洁,更注重应用;第二个则对接口都有非常详细的说明,且也会有一些简单的使用例程,建议两个文档一起使用最好。

​ 另,考虑到有些同学Python还都不是很熟悉,所以附上Python自学的链接:Python 基础教程 | 菜鸟教程 (runoob.com)或者Python教程 - 廖雪峰的官方网站 (liaoxuefeng.com)都不错,按照自己的意愿选择一个开始自学即可。

二、Openmv和Opencv的区别

​ OpenMV是开源的机器视觉框架,而 OpenMV 是一种开源计算机视觉库,OpenMV 可以运行在 MCU 上,OpenCV可以运行在多种框架的 CPU上,OpenMV的优势在于轻量化,但是处理高复杂图形信息等还是Opencv更强大。

三、Openmv IDE使用

​ Openmv要使用正常都需要搭配一个IDE使用,下载地址:Download | OpenMV

​ IDE打开像下面这样:

常使用的几个按键我都圈起来了,其中工具里面的阈值编辑器更常用。

IDE的左下角是连接和运行代码的按键,先连接,再运行。

如安装有问题或者想看更详细的使用说明,链接:10分钟快速上手 · OpenMV中文入门教程

脱机运行代码

将一个代码写好后,如果想要脱机运行,只需要将代码保存到Openmv相应的硬盘里(正常连接上Openmv后会像U盘一样弹出一个文档的界面,那就是Openmv内部的存储的地方),将代码保存好,代码名称改为main.py,放到那里面,下次想要让其自动运行时只需给其上电就行。

Openmv学习路径以及方法指导

​ 学习Openmv最重要的就是实践,首先可以先把星瞳官网上的关于颜色识别扫码串口通信边缘检测等的代码都copy下来运行运行,看看效果,没有啥是能让其在自己的操作下运行起来更吸引人的了。

​ 最基本的一些操作学习地址:OpenMv学习总结(满满干货) - 知乎 (zhihu.com)

这里面的代码都没有很长,都只是对一个个小点的使用,初学上手的话可以先看看这里面。

​ 在初步使用过Openmv后,可以给自己找几个小项目做,在做的过程中,就可以不断增进自己对Openmv的使用理解。

​ 给大家推荐几个项目:

​ 1.2023电赛控制题:2023年电赛---运动目标控制与自动追踪系统(E题)OpenMV方案_电赛openmv-CSDN博客

​ 2.视觉循迹小车:【精选】2022电赛C题:小车跟踪(方案1+核心代码)_2022年电赛题目-CSDN博客

​ 这边,第一个是用Openmv实现激光跟踪以及矩形框识别,给的链接里有成品的代码,但是不建议大家直接去看,大家可以根据自己的想法去Openmv的官网找相应的方法去解决问题,最后再看看人家是咋实现的,再去学习别人的做法.

​ 第二个也只需要大家去完成里面对应的视觉巡线以及跟踪识别的模块,控制方面可以先不管,做这个主要是考验大家如何处理线这个元素,也是有一定难度的,还是先自己琢磨,后面再看看人家是咋做的.

四、Openmv部分故障解决方案

插上线显示有设备连接但是IDE可能设备变砖

这种情况可以先确认一下自己手上Openmv的具体型号,然后在IDE里找到并再重新烧录一次即可,一般都可以解决.

接口摔坏/硬件顺坏

如果自己有焊接能力就尝试自己焊接维修,如果不行的话可以联系Openmv的客服寄修,不会很贵(相比于Openmv本身买来的价值来说)

摄像头延长线无法使用

首先,不建议使用延长线,如果使用也一定要在连接的地方糊好热熔胶,也不要压到线,更不要接反(没错,这个线接的时候要注意方向!),如果将摄像头重新插回板子上有用,而用上延长线后无法使用,那大概率是线坏了,得换。P.S.线是真的贵。。!

摄像头镜头模组损坏

Openmv的镜头模组我感觉比较容易坏,所以大家使用的时候一定小心避免磕碰,如果坏了基本上就要更换了,而且一般没办法单独购买摄像头模组,都要成套一个一起买,所以大家还是爱惜点用吧。

更多故障请看官方的说明:常见故障 · OpenMV中文入门教程

Openmv简明使用教程的更多相关文章

  1. 《简明python教程》笔记一

    读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info  安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...

  2. WebPack 简明学习教程

    WebPack 简明学习教程 字数1291 阅读22812 评论11 喜欢35 WebPack是什么 一个打包工具 一个模块加载工具 各种资源都可以当成模块来处理 网站 http://webpack. ...

  3. (原+转)简明 Python 教程:总结

     简明 Python 教程 说明:本文只是对<简明Python教程>的一个总结.请搜索该书查看真正的教程. 第3章 最初的步骤 1. Python是大小写敏感的. 2. 在#符号右面的内容 ...

  4. 笔记|《简明Python教程》:编程小白的第一本python入门书

    <简明Python教程>这本书是初级的Python入门教材,初级内容基本覆盖,对高级内容没有做深入纠结.适合刚接触Python的新手,行文比较简洁轻松,读起来也比较顺畅. 下面是我根据各个 ...

  5. OsharpNS轻量级.net core快速开发框架简明入门教程-Osharp.Redis使用

    OsharpNS轻量级.net core快速开发框架简明入门教程 教程目录 从零开始启动Osharp 1.1. 使用OsharpNS项目模板创建项目 1.2. 配置数据库连接串并启动项目 1.3. O ...

  6. OsharpNS轻量级.net core快速开发框架简明入门教程-从零开始启动Osharp

    OsharpNS轻量级.net core快速开发框架简明入门教程 教程目录 从零开始启动Osharp 1.1. 使用OsharpNS项目模板创建项目 1.2. 配置数据库连接串并启动项目 1.3. O ...

  7. OsharpNS轻量级.net core快速开发框架简明入门教程-代码生成器的使用

    OsharpNS轻量级.net core快速开发框架简明入门教程 教程目录 从零开始启动Osharp 1.1. 使用OsharpNS项目模板创建项目 1.2. 配置数据库连接串并启动项目 1.3. O ...

  8. OsharpNS轻量级.net core快速开发框架简明入门教程-基于Osharp实现自己的业务功能

    OsharpNS轻量级.net core快速开发框架简明入门教程 教程目录 从零开始启动Osharp 1.1. 使用OsharpNS项目模板创建项目 1.2. 配置数据库连接串并启动项目 1.3. O ...

  9. 学习笔记《简明python教程》

    学习笔记<简明python教程> 体会:言简意赅,很适合新手入门 2018年3月14日21:45:59 1.global 语句 在不使用 global 语句的情况下,不可能为一个定义于函数 ...

  10. 简明awk教程(Simple awk tutorial)

    整理翻译.原文地址:http://www.hcs.harvard.edu/~dholland/computers/awk.html 简明awk教程 为什么选awk? awk小巧.快速.简单.awk语言 ...

随机推荐

  1. 鸿蒙WebSocket的使用竟如此简单

    使用WebSocket建立服务器与客户端的双向连接,需要先通过createWebSocket()方法创建WebSocket对象,然后通过connect()方法连接到服务器.当连接成功后,客户端会收到o ...

  2. laravel The Process class relies on proc_open, which is not available on your PHP installation.

    解决办法: 在php.ini中,找到disable_functions选项,看看后面是否有proc_open函数被禁用了,去掉proc_get_status,proc_open即可

  3. Liunx配置sudo使oracle用户有root权限执行脚本

    1. vi /etc/sudoers 将%wheel 两行前的注释# 删除 2.  vi /etc/group 将oracle用户 加入 wheel组

  4. 准确理解 JS 的 ++ 运算符

    对于刚开始接触前端开发的朋友们来说,可能地一个令人苦恼的问题是关于运算符 ++ 的计算,特别是它还有前置与后置的区别.当它们和一堆运算在一起的时候,常常令人头晕目眩! 我经常性地称它是一个***难人的 ...

  5. K8s Ingress, 你这个老6

    本文是有态度马甲的第185篇原创. 本文记录了k8s中核心对象Ingress的产生背景和实现机制. 我们都知道k8s Service是一种将Pods通过网络暴露出来的抽象,每个服务定义了一组有关Pod ...

  6. deepseek+dify工作流实现代码审计

    一.登录dify,设置deepseek apikey 登录dify(https://cloud.dify.ai/signin) 设置deepseek apikey 二.创建dify工作流 添加工作流应 ...

  7. 【Linux】5.3 Shell字符串

    Shell 字符串 字符串是shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了),字符串可以用单引号,也可以用双引号,也可以不用引号.单双引号的区别跟PHP类似. 1. 单 ...

  8. 手写数字识别实战教程:从零实现MNIST分类器(完整代码示例)

    引言:数字识别的魔法世界 在人工智能的奇妙宇宙中,手写数字识别堪称经典中的经典.这个看似简单的任务--让电脑像人一样"认数字",背后蕴含着模式识别的核心思想.本文将带领你亲手实现一 ...

  9. H5 ios端微信浏览器下-底部工具固定方法

    在外层配置css position: fixed; width: 100%; top: 0px; bottom: 0px; overflow: auto; 结束

  10. 为什么不推荐在 MySQL 中直接存储图片、音频、视频等大容量内容?

    在MySQL中直接存储图片.音频.视频等大容量内容(通常称为BLOB数据)通常不被推荐,主要原因包括以下几点: 1. 性能问题 存储效率:存储大容量文件(如图片.音频.视频等)会大幅增加数据库的存储负 ...