如此这般简单方便的图像处理新方式(micropython之openmv)

2019-07-20 04:51发布

本帖最后由 our单片机 于 2017-10-16 13:56 编辑

来不及多解释了,快上车!首先对我最爱的小伙伴们做个简介吧:我们是一群电子爱好者!人数不多,五脏俱全。有学生,有从业者。有即将踏入和正在踏入社会的小年轻;也有踌躇满志在社会打拼了几年的青年;也有经历人生大起大落经验丰富的老司机!我们因为共同的爱好,聚到了一起!我们的兴趣是吹水!啊,不,讨论技术,讨论人生!我们的爱好是骗板!啊,不,积极参加论坛活动,试用多种官方板子!我们的目标是出名!啊,不,让世界因为我们这群人而变得有那么一点点不一样!
其次对我带来的东西做个简介吧:Openmv——开源;摄像头;micropython;stm32f7;图像识别等等等等! 图片1.png 没错,openmv就是这样的一个存在!说道openmv大家就想到了opencv!不过呢,相对入手难度,可玩性之类的。Openmv更大众化,因为他模块现成,只需要几行简单的PY代码就可以玩起来了~没错,就是这么简单,一个外行人在教程的指导下都可以把基本功能玩起来!首先给大家看几张靓照吧(我们前期自己玩的时候记录的照片)!file:///C:/Users/Inc_Biza/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg没错,就是这么小巧!不要问我为什么是屎黄 {MOD}。。。大家投票决定的!哈哈哈哈!当然这一版只是我们自己玩的第一版,后面的几版我们也做了红 {MOD}和蓝 {MOD}!不过屎黄 {MOD}这么风骚,就先放出来这个吧~~~在从业的路上,我慢慢认识了非常多性格合得来的小伙伴!机缘巧合,群里不断有perfect的小伙伴加入!我坚信技术开源才是王道,技术共享才能更好的进步!所以我们讨论技术,分享技术,资源共享!我们互相帮助,共同进步!三人行,必有我师焉!所以我们都互相称呼为哥!不分年龄,不论阅历,只为初心!同样的巧合,我们了解到了openmv,也是因为有小伙伴(5哥)一直在做这方面的东西,不过一直没找到情投意合的伙伴!一开始我们讨论的时候是打算买来玩的,后来另外一个小伙伴说要玩就自己怼(R哥)!没错!自己怼!大家一拍即合!其实吧主要原因还是因为穷。。。官网的定价实在太高了!所以就有了那款屎黄 {MOD}的首版!然后慢慢的改进,然后就一直玩到今天!
接下来详细介绍一个本帖的猪脚:openmv3
Openmv是国外的一种基于micropython驱动的开源机器视觉模块,在机器视觉算法上,已经做了很大的优化,可以很好的在MCU上快速运行,比如颜 {MOD}跟踪,脸部检测等;并且引出了相关的外设,比如SPI,IIC等,方便客户进行扩展。官方还有一个与之匹配的IDE(源码开源),具有编辑器,调试终端,具有RGB直方图显示的帧缓冲区查看器。file:///C:/Users/Inc_Biza/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg 基于以上特点,对于入门视觉机器开发者来说,真的是很好的一个模块。既然说了是我们自己怼了块板子玩了,就得说下R哥怼这块板子的过程了,当然肯定不是copy就好了,这样多无趣。官方的板子是四层板,对于前期DIY来说,能省就省,就怼成两层板了;还有物料方面,除了CMOS和MCU怼得一样,其他物料有些在国内很难找,所以还是怼为国内通用点的器件啦,当然封装还是copy得一样,免得山寨得太山寨了。然后硬件前期构思,中期得布局布线了,布局这点还是跟官方的差不多一致,就是布线有点坑了,两层板不好的地方在于:电源线并不能像四层板那样可以留一层可以自由自在得撒野。还好,怼了几天终于拿去JLC打了屎黄 {MOD}的板子(不要问我为什么打屎黄 {MOD}的)。然后等了几天到了。PCB和PCBA如图所怼: 图片3.png file:///C:/Users/Inc_Biza/AppData/Local/Temp/msohtmlclip1/01/clip_image006.jpgfile:///C:/Users/Inc_Biza/AppData/Local/Temp/msohtmlclip1/01/clip_image007.jpg

软件上,官方也提供了很多基于micropython的例程。如图所示: 图片5.png 比如基本的外设驱动(IO口,SPI,IIC等),还有基本的绘画操作、图像基本过滤算法(帧间差分;二值化;边缘阈值检测;腐蚀和膨胀;平均、中值、中点滤波;锐化等)、拍照录像功能、人脸检测、还有一些功能检测(黑白线检测等)、还有一些官方模块的例子(LCD、WIFI、BLE等)、二维码等。这对于在硬件平台上学习入门视觉开发已经相当足够了。

附上一些效果图 图片6.png 图片7.png
帧间差分检测物体移动 图片8.png      边缘阈值检测    图片9.png             膨胀
图片10.png 图片11.png                               LCD显示

因为这个平台,我对视觉开发充满了兴趣,也想着分享给大家,让大家可以更好更快的学习视觉开发相关的东西,当然是我们大家一起学习啦,共同讨论,共同进步。对DIY有兴趣的小伙伴请关注一下我们,关注一下活动啦~我们十分的欢迎大家进群交流,因为DIY无止境~可玩的东西太多了!而open source是技术进步的阶梯~相信大家的思维碰撞可以点亮技术前方的道路~
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。