OpenMV:18数字识别

本文探讨了OpenMV使用Lenet卷积神经网络进行数字识别的方法,对比了NCC模板匹配的局限性。Lenet模型允许一定程度的数字大小和角度变化,而OpenMV在识别较小数字(如身份证号)时可能受限。最新固件中nn库已删除,需自行训练神经网络。
摘要由CSDN通过智能技术生成

Lenet是一种卷积神经网络,可以用来识别打印的、手写的数字

我们之前就有讲到过利用OpenMV的NCC模板匹配算法来进行数字识别,模板匹配需要我们实现保存需要匹配的数字或者字母的模板图片

比如你要识别0、1、2、…、8、9,那么你就需要保存十张图片来进行数字识别,并且模板匹配对于模板图片的大小和角度是有一定要求的:如果我们的数字大小稍微有所变化或角度稍微有所变化,那么我们的模板图片也需要相应地更改,这也是模板匹配的一定局限性

Lenet数字识别:我们只需要提前保存Lenet数字识别的神经网络模型文件到我们OpenMV内置的flash中,运行例程即可直接进行数字识别,对于数字大小和角度并没有太大的要求(就算数字的大小或者角度改变了,Lenet仍然可以识别出来)

需要注意的是:无论是NCC模板匹配还是Lenet神经网络数字识别,我们的OpenMV只能够识别相对大一点的数字,像身份证上的的身份证号码这么小的数字OpenMV是无法实现识别的

3.6.5及以后固件删除此例程,OpenMV4 Plus使用TensorFlow Lite替代

nn库被删除了,我们只能自己去训练神经网络了

就当作了解吧🥀

# LetNet数字识别例程
import sensor, image, time, os, nn

sensor.reset()                         # 复位并初始化传感器。

sensor.set_contrast(3)
sensor.set_pixformat(sensor.GRAYSCALE) #设置图像色彩格式,有RGB565色彩图和GRAYSCALE灰度图两种
# 数字识别没有必要用到彩图RGB565&
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值