点击上方“蘑菇云创造”可以关注我们哦
虚谷号百科相机
上一篇教程中已经介绍了虚谷号结合厚物扩展板和pinpong库的基本使用方法,这篇教程来带大家做一个简单的项目,来感受一下虚谷号结合了厚物扩展板和pinpong库后的强大功能。
上一篇教程:01【pingpong库控制硬件】之虚谷号-1
一、功能演示
注:按键A为切换/返回键,按键B为确定键。(记住这个有利于下面的理解)
1.需要的器件:
虚谷号创客版套件 x1 (主要包含主板、天线、数据线、适配器,也可以选择教育版套件,性能更佳)
厚物扩展板 1
USB免驱摄像头 * 1 (自备,我这里用的是ANC摄像头)
2.创建百度云图像识别应用
本次项目的实现我们借助了百度云的图像识别功能,要使用百度云的图像识别功能需要在百度云创建一个图像识别的应用,这一节就来介绍如何在百度云创建一个图像识别的应用:
(1)浏览器打开百度云图像识别:链接
https://cloud.baidu.com/product/imagerecognition
(2)注册或登录百度云帐号,登录后点击立即使用。(我们使用的功能都是免费的,请放心使用)
(3)点击创建应用。
(4)点开图像识别前面的加号可以看到图像识别的接口默认已经全部勾选。
(5)填写好名称和描述,操作完成后点击立即创建。
6)创建完成后点击查看应用详情。
(7)记录下AppID、APIKey、SecretKey三个参数,最后程序设计中会用到,到这里我们的图像识别应用就创建成功了。
3.组装接线
按照上图将线接好后再将数据线的另一端接到电脑上,接好后板子上的指示灯会被点亮。
4.按照上一篇教程中准备工作中的方法,打开jupyter编辑器,新建python3文件(如果没有做过上一篇教程,需要先将上一篇教程中的准备工作做一次)
二、程序设计
通过开始的演示视频,大家应该已经对本项目的功能有了了解,我们将功能拆分成几个部分来分别实现,分别是:屏幕和按键实现菜单切换、拍照功能实现、明星识别功能实现、功能组合实现。
虚谷号中有很多已经装好的库,但是这次设计中我们可能用到了虚谷号中没有自带的库(不确定),为保险起见我们先安装两个库文件:
pip install baidu-aip 百度云的SDK包
pip install pypinyin 汉字转拼音的库(视频中口误说成了虚谷号不支持中文,在此修正:是PinPong库目前不支持中文显示,因此需要先将汉字转拼音)
1.屏幕和按键实现菜单切换
(1)流程图
(2)程序代码
根据流程图设计程序,代码中具体说明已经做了标注
(3)运行效果
2.拍照功能实现
(1)程序代码
(2)运行效果
程序运行后就可以在编辑器页面上显示出摄像头拍到的照片
3.明星识别功能实现
明星识别的方法与流程与菜品识别和动物识别基本相同,只是调用百度云SDK的接口不同,因此我们这里以明星识别为例,介绍一下怎样设计。
注意:这里的AppID_Censor、APIKey_Censor、SecretKey_Censor三个参数不要修改,明星识别的这个接口在百度云官方文档中没有找到,因此使用的是虚谷号教程中的一个开放接口。
(1)流程图
(2)程序代码
(3)运行效果
动图比较模糊,功能就是按下B键拍照并显示姓名和相似度,按下A键后返回。
4.组合功能实现
上面的三部分代码已经将三部分主要功能分步实现了,下面我们将功能进行整合,除了菜品识别模式和动物识别模式增加了新的函数,其他没有新的函数增加,只需要注意代码逻辑即可。
注意:这里需要将AppID、APIKey、SecretKey三个参数修改为准备工作中获取到的三个对应参数。
(1) 流程图
(2)程序代码
将最后这个程序复制到jupyter中运行,就可以实现最开始视频演示的功能了。记住不要忘了替换AppID、APIKey、SecretKey三个参数。
三、脱机工作
上面我们所讲的方法都是通过USB线连接电脑的,如果想脱离电脑拿在手里跟小伙伴玩耍要怎么做呢,其实虚谷号是有这种工作模式的,下面我们来讲一下怎样不通过电脑连接就能工作。
1.注释最后代码当中的一些代码。
将代码中的有标注的代码注释掉(在前面加一个#),这些是用于在网页编辑器中显示图片,当我们脱离电脑工作时就不需要在电脑上显示图片了,因此需要注释掉。
2.跟之前一样用USB连接电脑,然后打开弹出的U盘,进入Python文件夹,打开python_config.ini文件,修改文件内容。
3.在Python文件夹下,右键新建文本文件,重命名为main.py,然后用记事本打开main.py并将最后完成的代码复制进去,保存后关闭。
4.断开板子跟电脑的连接,将USB线一端插入板子上方的供电口(不是侧面的),另一端接适配器,适配器接到电源插座,或者另一端直接连充电宝也可以,按下复位键后等待20S左右即可看到屏幕正常显示,表示程序正常运行。
5.如果屏幕没有反应,就重新连接电脑打开U盘->Python文件夹,察看python_log.txt文件,里面会有错误信息提示,按照提示修改代码即可。
百度云图像识别还有车辆识别、车辆检测、商标识别、植物识别、地标识别、花卉识别等功能,可以通过察看官方文档来使用:https://ai.baidu.com/ai-doc/IMAGERECOGNITION/vk3bcxiu2
蘑菇云创造
扫码|关注我们
微信号|DFRobot2019
入群交流|添加微信
推荐阅读
-
大疆发布全新编程教育无人机,Mind+编程助力其创意无限!
-
Mind+:深耕8年的国产青少年编程软件,支持AI人工智能与IoT物联网功能
-
【前置知识】pinpong库能让你用python来控制硬件
-
02【pinpong库控制硬件】之Arduino uno-按钮Led-2
-
03【pinpong库控制硬件】之 Latte Panda一代-1
-
02【pinpong库控制硬件】之Arduino uno-Led闪烁-1
-
01【pingpong库控制硬件】之虚谷号-1
-
2020 创客嘉年华官方报名通道开启
点击“阅读原文”,了解更多!

