分享

stm32图像识别分类技术,陈老师简单为你阐述一下

 山峰云绕 2022-05-14

https://m.toutiao.com/is/F5ptsK2/?=stm32图像识别分类技术 




STM32图像分类

前言

可能有的同学会有疑问,STM32 能做图像分类这么复杂的事情吗?

嵌入式系统中视觉技术的迅速普及,推动了用于汽车安全、机器视觉和运动分析的超高速成像攻克方案。相应地,通过更壮大的图像传感器和更小的像素体系构造,能够显着提高其产品的性能和成像功能。

///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程和毕业设计指导,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像白色字体加我也能领取哦,记得口令陈老师///

机器视觉技术运用图像识别算法来识别图像中的物体,并在不影响诸如工业自动化、机器人技术、컞人机和3D建模等广泛应用的情况下,为物体提供更详细精确的图像而不会造成变形。

我们能够肯定的告诉你:完全能够,这就是嵌入式机器进修(EmbeddedML)技术!不要忘了MCU才是真正的霸主

下面请听小编为你慢慢道来。

首先嵌入式机器进修是一个很大的话题,波及到的技术主要有:

·嵌入式软硬件技术:ARM、DSP、C/C++、Linux、Android等

·图像处理:数字图像理论、OpenCV等

·机器进修理论:高数、线代、CNN、激活函数、损失函数、梯度下降等

·机器进修框架:TensorFlow、Caffe等

·Python . . .

这么多东西要学!想想都可怕,假如我们把这些都写在一片文章里那么你一定不干,我们也不干啊。所以我们决定做一个嵌入式机器进修(EmbeddedML)专栏,通过一系列的文章和视频,带你走进这个新奇的世界!

机器学习技术简介

机器进修是一种新的编程方式,一种能够让机器具有进修才能的编程方式。

我们来看看传统的编程方式与机器进修这种编程方式有何不同。

传统的编程方式是运用规则(由程序员要编写)和数据生成结果。

机器进修与传统的编程方式相反,我们输写的是结果和数据,得到的是规则,这个规则是通过机器进修技术得到的,而不是由程序员编写的。

为什么要使用机器学习技术?

在某些应用场景中,运用机器进修技术的益处是显而易见的。对于计算机来说,现实中生活中的很多应用场景都非常的复杂,假如分辨猫和狗,大部分时候,我们没法事先编写一套规则让计算机分辨出哪个是猫哪个是狗。此时机器进修技术的优越性就显现出来了,我们运用大量已标记的猫狗图片,去训练深度网络模型,得到一个识别猫狗的规则,计算机利用这个规则就能进行猫狗识别了。

机器学习的过程

机器进修应用一般分为两个过程:

·一是模型的训练,这个过程须要大量的数据和计算量,一般在计算才能很强的计算机上进行。

·二是运用训练所得的模型对输写进行预测,这个过程计算量相对就会小很多,能够在手机上,甚至是在MCU上进行。

自动手尝试,是了解一个新事物最好的方式。我们为你准备了一个轻松易行的实验项目,不须要开发板,只有你有一台电脑就能运行。下面初始!

在STM32上进行图像分类实验

这里仅介绍怎么样在STM32上运行机器进修模型,从而对输写图像的类别进行预测。至于模型的网络搭建、训练和转换将在后续文章中介绍。

图像分类项目简介

本项目达到了在STM32上进行图像分类的任务。运用CIFAR-10数据集,通过Caffe机器进修框架搭建和训练神经网络模型,其次将所得模型进行转换,使其能够运行在STM32上。本项目运行在Keil的模拟器中,所以没需开发板即可体验机器进修在STM32上的应用效果。

CIFAR-10数据集简介

CIFAR-10数据集由10类32x32的彩色图片组成,一共包括60000张图片,每一类包括6000图片。其中50000张图片作为训练集,10000张图片作为测试集。

有了CIFAR-10数据集我们就不用自己到处去收集照片了,能够直接初始训练模型,其次运用模型。

项目的输入

输写是一幅宽32像素高32像素的彩色图像,为方便STM32实验操作,事先将图像转换为像素值数组,寄存在
armnnexamplescifar10_inputs.h中。

项目输出

输出是测试图像所属的类别的概率,概率值最大的就是目标图像的所属类,输出结果如下图所示:

细心的同学可能要问了,为什么这里的输出是127,而不是一个0~1之间的数?

这个跟我们运用的Softmax函数相关,一般Softmax函数的公式是这样的:

y_i = e^(x_i) / sum(e^x_j)

而在STM32上我们采用的是以2为底Softmax函数,所以其输出会有所不同。

y_i = 2^(x_i) / sum(2^x_j)

图像识别简略来说是计算机对宗旨图像进行获娶处理和分析的过程,图像识别技术的目标是通过计算机对所感知信息的处理,使计算机获取到和人类识别图像一样的信息。人类识别信息的过程是见到一个物品,大脑会在我们认知的所有物品中搜索与之相匹配的类型,从而得出结论。机器的图像识别也类似,机器获取到宗旨图像,先对它进行预处理,其次对简略的形状进行提取,一般都是物品的边缘形状。其次提取复杂的构造,最后提取高度复杂或抽象的构造,再对预存的信息进行匹配,从而得出结论。

此时随着深度进修的应用与图像素材的不断增加,相信图像识别会越来越懂你

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多