新闻详情

新闻详情

首页 / 资讯中心 / 详情

【CanMV K210】AI 视觉 MNIST 手写数字识别与分类推理

发布时间:2026/9/28 3:15:55来源:尧图网络
【CanMV K210】AI 视觉 MNIST 手写数字识别与分类推理
在 CanMV K210 入门和 AI 视觉项目中,MNIST 手写数字识别是一个很适合拆解的分类模型实验。它不像人脸检测那样输出目标框,而是把输入图像送入模型后,判断画面中的数字更接近 0 到 9 中的哪一类。本实验使用 CanMV K210 运行4.7_Mnist_recognition.py。程序通过摄像头采集画面,对图像进行开窗、灰度化、缩放、反色、字符增强和 AI 格式转换,再送入 KPU 执行 MNIST 分类模型推理。模型输出 10 个分类结果后,程序取置信度最高的一项作为识别数字,并在 LCD 画面上显示num: x。学习目标说明理解分类模型流程掌握图像输入、预处理、KPU 推理、分类输出和结果显示之间的关系区分分类与检测理解 MNIST 输出数字类别,人脸检测输出目标位置框掌握图像预处理使用灰度化、缩放、反色和字符增强改善模型输入理解 KPU 推理结果从模型输出列表中找到最大值,并得到对应数字类别建立调试思路从摄像头画面、模型路径、输入尺寸、光照和数字书写方式排查问题这个实验的重点不是让 LCD 显示一个数字那么简单,而是理解“图像如何变成分类结果”。摄像头采集到的是一张实时图像,经过预处理后变成适合模型输入的数据,KPU 输出的是 10 个类别的分数,程序再从这些分数中选出最可能的数字。文章目录理论基础硬件设施软件代码扩展应用总结理论基础MNIST 手写数字识别属于图像分类任务。分类模型的目标是判断输入图像属于哪一个类别,本实验中的类别就是数字 0 到 9。和人脸检测不同,分类模型通常不会告诉目标在画面中的具体位置,也不会输出矩形框,而是输出每个类别对应的分数或置信度。本实验中,摄像头输出的是 QVGA 图像,程序通过sensor.set_windowing((224, 224))截取中间区域,让识别对象尽量处于画面中心。随后图像被转换成灰度图,并缩放为 112×112。MNIST 模型通常关注的是数字笔画形状,因此灰度化可以减少颜色干扰,缩放可以让输入尺寸匹配模型要求,反色和字符增强可以让数字轮廓更接近模型训练时的数据特征。代码中的out = kpu.run_with_output(img_mnist2, getlist=True)会返回一个列表,这个列表可以理解成模型对 0 到 9 每个数字的判断结果。程序使用max(out)找到分数最高的一项,再用out.index(max_mnist)得到对应的数字编号。比如最大值出现在列表第 3 个位置,就认为当前图像更像数字 3。下面的流程图展示的是 MNIST 手写数字识别的数据处理链路。它不是普通电路接线图,而是从摄像头图像到分类结果的 AI 推理流程。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

OpenAI Tibo 拆解 Codex 限额:同一张 Rate Card,Sol 为何更快耗尽? 2026/9/28 4:17:49

OpenAI Tibo 拆解 Codex 限额:同一张 Rate Card,Sol 为何更快耗尽?

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Cursor 配 TaoToken:settings.json 骨架与报错排查实录 2026/9/28 4:17:30

Cursor 配 TaoToken:settings.json 骨架与报错排查实录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
OpenManus源码架构分析:从入口到工具调用的配置骨架拆解 2026/9/28 4:17:30

OpenManus源码架构分析:从入口到工具调用的配置骨架拆解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
LangChain多智能体Router配置TaoToken:settings.json骨架与路由验证 2026/9/28 4:17:30

LangChain多智能体Router配置TaoToken:settings.json骨架与路由验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
如何在本地部署OpenClaw:TaoToken统一Key接入与config.toml配置实战 2026/9/28 4:17:30

如何在本地部署OpenClaw:TaoToken统一Key接入与config.toml配置实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Bleetz Network 企业级网络架构落地指南 2026/9/28 4:17:29

Bleetz Network 企业级网络架构落地指南

在高并发业务场景中,网络架构的稳定性往往决定了系统的生死存亡。很多开发团队在初期只关注业务逻辑的实现,却忽略了底层网络传输的瓶颈,直到流量峰值到来时,才面对连接超时、数据包丢失甚至服务雪崩的惨痛现实。传统的单机部署或简单的负载均衡方案,在面对突发流量洪峰时…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉