OpenMv
Blucher_Ce
一只菜鸟
展开
-
01 OpenMv的自我理解
Openmv是国外的一种基于micropython驱动的开源机器视觉模块,在机器视觉算法上,已经做了很大的优化,可以很好的在MCU上快速运行,比如颜色跟踪,脸部检测等;并且引出了相关的外设,比如SPI,IIC等,方便客户进行扩展。官方还有一个与之匹配的IDE(源码开源),具有编辑器,调试终端,具有RGB直方图显示的帧缓冲区查看器。 这款号称单片机版的机器视觉处理模块功能比较强大,...原创 2018-04-24 11:31:44 · 1345 阅读 · 0 评论 -
02 find_blobs函数的探究 ---- 效率
基础怎么用官网说的太多了,但是就博主使用的过程中,有些坑还是要提醒下同样使用OpenMv的同学。首先贴出官网对于该函数的说明:image.find_blobs(thresholds[, roi=Auto,x_stride=2, y_stride=1, invert=False, area_threshold=10,pixels_threshold=10, merge=False, margin=0...原创 2018-05-03 17:31:46 · 6541 阅读 · 2 评论 -
03 对find_blobs函数的探究 ---- 查找blobs的方式
函数说明请看博主第一条博文。有一个问题,还是这种图形:在我们以一个固定的相框进行查找的时候(本图是采用256*8的大小),如果我们需要对blobs进行查找,还是会调用find_blobs函数进行查找,然后在该for循环下对blob的对象进行操作,那么问题来了,blob查找的顺序是怎么样的?代码和第一条博文一样for blob in img.find_blobs([thresholds],roi=(...原创 2018-05-03 17:47:04 · 6575 阅读 · 0 评论 -
05 对openMV的一些保护处理 —— 运行内存
使用OpenMv进行内存测试可以发现,在MicroPython语法中内存是一直增量的,测试可调用库函数gc.mem_free()进行内存测试,在博主的程序中可以发现一开始的空余内存为52k,然而随着时间的增长它的内存越来越小(只有一个while循环),当内存跑到0k的时候重置为52k,这个过程可能来自于micropython的语法结构,毕竟不同于传统的高级语言,定一个内存块进行赋值的逻辑。那么...原创 2018-05-21 16:51:28 · 3770 阅读 · 2 评论 -
04 对find_blobs函数的探究 ---- 神奇的area_threshold,pixels_threshold
按照官网的说法:If a blob’sbounding box area is less than area_threshold it is filteredout.If a blob’spixel count is less than pixel_threshold it is filteredout.就是说该值是一个阈值,当我们找到的blobs不满足其中任何的值的时候,则视为找不到blobs,...原创 2018-05-15 11:34:05 · 4522 阅读 · 0 评论 -
06 OPENMV中的AT指令集操作
最近一个项目需要使用wifi模块进行图片的传输,传输协议采用tcp协议,使用模块为经典的ESP8266,在此和大家分享一下在OPENMV中使用AT指令集遇到的一些问题:1:使用AT指令集一个基本常识就是一定要在AT指令后面加入回车换行符,在java中为string类型的“\r\n”,在C中为uint8_t类型的0x0D,0x0A,在openmv中我的方式是使用一个bytearray存储两个字符...原创 2018-07-19 16:27:35 · 1346 阅读 · 3 评论 -
07 Processing与openmv的IP自适应的思路
首先,为什么要IP自适应,在使用ESP8266的时候但凡使用到了TCP或者UDP协议,都不可避免的需要对IP进行指定:那么问题来了,当使用8266作为原型机进行测试的时候,在局域网内IP基本是DHCP自适应分配的,那么当ip在不断变换的时候,我们总不可能每次都烧写代码,所以有了一个IP自适应的想法,每次服务器的IP在变换的时候,客户端的8266将其自适应的进行设置。算法思路:UDP...原创 2018-07-20 16:49:02 · 512 阅读 · 0 评论