鉴于中国特色,我们出色的Great Wall要求我们IT从业人员具备高超的应变和适应能力。
当然如果自认为没有这种基本能力,玩这种老外的东东,基本上很难上手,不是智商不够,而是现实太残酷。
想当年,研发大多采用Google查资料,那真的叫一个准。虽然现在国内已经无法直接上Google了,只能默默的百度各种翻页,甚至翻上10页都找不到合适的(吐槽下)。
从业以来,多年的绕弯弯经验让我这次装Google AIY Vision Kit如鱼得水。通过整理,将一些非技术环节的门槛给大家提炼出来,希望大家能更多的将精力从事在技术上面。
这个环节其实只要有一些简单的小学折纸动手能力,都能很好的应对。不过前提是要有一个安装指南,大概率情况下,这就死翘翘节奏,因为安装指南的网页无法打开。
好吧,这里给大家整理下
适配器选项A:USB随身(OTG)适配器电缆,用于将Raspberry Pi USB微型端口转换为普通大小的USB端口。然后,您可以使用只需要一个USB端口的键盘/鼠标组合。
适配器选项B:Micro-USB集线器,提供多个USB端口以连接到任何传统键盘和鼠标。
选择操作系统
,滚动到底部,选择使用自定义
,然后找到上面下载的.img.xz
文件。选择存储
以选择microSD卡,然后单击写入
以开始将镜像文件烧录
到SD卡。
4. 关闭连接器闩锁
5. 确定纸板的方向
6. 拆下粘合衬
7. 折叠如图所示A指向的纸板,并且按平粘住
8. 如图翻转过来
9. 插入压电蜂鸣器
10. 安装摄像头
11. 翻转到另一侧
12. 向下折叠顶部纸板
13. 折叠左右两侧的纸板
14. 折叠底部纸板
15. 穿上蜂鸣器电线
16. 将长柔性电缆向上折叠
17. 向左折叠长柔性电缆
18. 穿上长柔性电缆
19. 继续穿线
20. 再穿线
23. 打开顶部电缆接头
24. 插入短柔性接头
25. 关闭电缆连接器闩锁
26. 定位您的 Vision Bonnet板子方向
27. 打开电缆连接器闩锁
28. 插入短柔性接头
29. 关闭电缆连接器闩锁
通过设备上标有“电源”的端口将Vision Kit插入墙上的电源(5V,2A)。
69. 让它启动
要确认已连接到电源,请查看标有SD卡的纸板上的孔。你会看到Raspberry Pi板上的绿色LED灯闪烁。
启动时要有耐心;第一次启动需要几分钟。当你听到一个短音时,你就会知道它被启动了。软件需要这段时间来安装和配置设置。在未来,它将开始得更快。
将视觉套件指向某人的脸(或你自己的脸),以尝试Joy Detector演示。当摄像头检测到人脸时,按钮亮起。
Joy Detector检测器使用机器学习来检测一个人是否在微笑或皱眉,以及他们在做什么。微笑会使按钮变黄,皱眉会使按钮变成蓝色。
如果表情真的很大,就会发出声音。如果相机看到不止一张脸,它会评估每个人的脸,并计算每个脸的快乐得分。
71. 拍照
在Joy Detector运行的任何时候,您都可以按下按钮拍摄照片。
如果你在相机检测到人脸时拍照(按钮亮起),它会保存照片的第二个版本,并用喜悦分数进行注释。
这些照片保存在SD卡的~/Pictures/目录中。在下一步中,您将学习如何在连接到工具包后访问这些照片。
官方给出的链接地址:google.android.apps.aiy,可能国内的朋友不一定能打开,这里已经给大家下好了AIY Projects app。
打开应用程序,按照屏幕上的说明与视觉套件通过蓝牙进行配对。并在App上输入RaspberryPi接入的WiFi(SSID, Password)。应用程序会显示RaspberyPi的IP地址,您将在后续使用到该IP地址。
注:如果忘记了,请重新打开App扫描树莓派即可显示该IP,请注意将手机和树莓派保持在同一个WiFi路由器下。
运行这些演示不需要监视器,但如果您有可用的监视器,它会很有用,这样您就可以看到Vision Kit所看到的内容。
确保您的计算机与Vision Kit位于同一个Wi-Fi网络上。这将允许您通过SSH连接到套件。
您将看到一个背景为AIY的桌面。弹出窗口将告诉您Raspberry Pi用户的密码设置为默认值。如果您计划在其他项目中使用此工具包或将其公开到internet,这一点很重要,但目前,单击“确定”是安全的。
单击屏幕顶部任务栏上的黑色矩形图标打开终端。
现在您应该看到提示
pi@raspberrypi: ~ $.
如果您将显示器连接到视觉套件,现在就可以查看拍摄的照片。(不幸的是,如果您的视觉套件没有直接插入显示器,则无法查看照片。)
要查看Joy Detector拍摄的照片,您需要首先使用cd将终端导航到~/Pictures目录。因此,在终端中键入以下内容并按enter键:
cd ~/Pictures
现在输入ls并按enter键查看目录中的内容。(提示:这是柠檬中的“l”,而不是#1。)您应该看到一个以.jpeg结尾的文件名列表。所以让我们看看其中一个。
在终端中键入以下命令并按enter键,将替换为要打开的文件名(例如2018-05-03_19.52.00.jpeg):
DISPLAY=:0 gpicview
这张照片将在插入Vision Kit的显示器上的新窗口中打开。
Tip: If you connected to your Vision Kit with monitor, mouse, and keyboard, you can enter the command without DISPLAY=:0
要从终端关闭照片窗口,请按Ctrl-C。
Joy Detector默认运行,因此您需要在运行另一个演示之前停止它。要执行此操作,请键入以下命令并按enter键:
sudo systemctl stop joy_detection_demo
然而,下次重新启动套件时,Joy Detector演示将再次开始运行。因此,如果要完全禁用它,使其在默认情况下不会启动,请在提示符中键入以下命令,然后按enter键:
sudo systemctl disable joy_detection_demo
您可以稍后通过以下方式重新启用:
sudo systemctl enable joy_detection_demo
要尝试其他几个Vision Kit演示,请转到它们所在的目录。在提示中键入以下命令,然后按enter键:
cd ~/AIY-projects-python/src/examples/vision
93. 看下有哪些应用
现在您已经更改了目录,键入ls
并按enter键查看当前目录中的内容。
图像分类相机演示使用物体检测模型来识别视觉套件中的物体。
要启动它,请键入以下命令并按enter键:
./image_classification_camera.py
如果工作正常,监视器上会弹出一个摄像头窗口(如果已连接),模型的输出开始打印到终端。
将您的视觉套件指向一些物体,例如一些办公用品或水果。检查您的终端屏幕,看看模型在猜测什么。每个猜测旁边的数字是其置信度得分。
您可能会对模型擅长猜测的对象种类感到惊讶。它的缺点是什么?尝试同一物体的不同角度,看看置信度分数是如何变化的。
图像分类相机演示将无限期运行,直到您中断它。
完成图像分类器演示后,按Ctrl-C结束演示。这将使您返回提示。
此演示使您的视觉套件能够识别人脸。它打印出它在终端中看到的人脸数量,如果你连接了监视器,它会在它识别的每个人脸周围画一个方框。
要启动人脸检测演示,请键入以下命令并按enter键:
./face_detection_camera.py
如果它正常工作,你会看到监视器上弹出一个摄像头窗口(如果连接了),模型的输出将开始打印到你的终端。
将相机指向某些人脸,观看演示输出。迭代告诉您模型运行的次数。num_faces是模型对相机视野中有多少人脸的最佳猜测。
当你完成了人脸检测演示的实验后,按Ctrl-C结束它。这将使你回到提示。
通过此演示,当您的视觉套件检测到人脸时,它会自动拍摄照片。要启动它,请键入以下命令并按enter键:
./face_camera_trigger.py
如果你连接了监视器,你会看到一个闪烁的光标,并弹出一个相机窗口。它将保持这种状态,直到相机看到一张脸并拍摄到一张照片。
将相机对准自己或朋友。试着做一堆人脸,并用机器认为的人脸做实验。
当它看到一张脸时,它会拍照并在当前目录中创建一个名为faces.jpg的图像,然后关闭相机窗口并返回提示。
要验证照片是否已创建,请在提示下键入ls,然后按enter键。
您应该看到当前目录中列出了一个名为faces.jpg的文件。
下面的演示向您展示了如何使用现有图像文件作为输入(而不是使用实时摄像机馈送)。因此,您需要先用相机拍摄照片(或将文件保存到同一目录中)。
要捕获名为image.jpg的新照片,请键入以下命令并按enter键:
raspistill -w 1640 -h 922 -o image.jpg
相机将等待5秒,然后拍照。
要验证照片是否已创建,请在提示下键入ls,然后按enter键。您应该看到在上述步骤中使用的文件名。
现在,让我们使用上面拍摄的照片和面部检测模型。如果您跳过了这一步,请返回并拍照,或者确保您的SD卡上有一张带脸的照片。
要运行演示,请在终端中键入以下命令,然后按enter键:
./face_detection.py --input image.jpg
如果将图像文件命名为其他文件,请将image.jpg替换为要使用的文件的名称。
完成后,你应该得到这样的结果:
Face #0: face_score=0.989258, joy_score=0.969556, bbox=(632.0, -15.0, 782.0, 782.0)
facescore
是指模型是否确定找到了一张脸,joyscore是指这个人看起来有多开心(两个分数都是1分)。bbox告诉你脸在图像中的位置。
物体检测演示会拍摄一张图像,并检查它是猫、狗还是人。
首先,您需要准备好图像:使用相机拍摄照片或将照片保存在SD卡上。
然后键入以下命令并按enter键,将image.jpg替换为要使用的文件:
./object_detection.py --input image.jpg
完成后,你应该得到这样的结果:
Object #0: kind=PERSON(1), score=0.959231, bbox=(359, 108, 896, 808)
kind
是检测到的对象类型,分数是模型对其给出的结果的信心程度。bbox是该对象在图像中的位置。
菜肴分类器模型可以从图像中识别食物。
首先,您需要准备好图像:使用相机拍摄照片或将照片保存在SD卡上。
然后键入以下命令并按enter键,将image.jpg替换为要使用的文件:
./dish_classification.py --input image.jpg
处理完成后(可能需要一分钟),你会得到一个结果列表,以及确定的食物类型和概率分数,表明模型对其答案有多自信(满分1)。
这是来自上面的相同图像分类器,但现在针对捕获的图像运行。
首先,您需要准备好图像:使用相机拍摄照片或将照片保存在SD卡上。
然后键入以下命令并按enter键,将image.jpg替换为要使用的文件:
./image_classification.py --input image.jpg
像相机图像分类器一样,您将得到一个结果列表,其中包括对象的类型和模型的置信度。
当您完成了一天的视觉套件后,在拔下之前正确关闭它非常重要,以确保您不会损坏SD卡。
如果您已将套件连接到显示器、鼠标和键盘,则可以通过打开应用程序菜单(桌面左上角的树莓派图标),然后单击关机来关闭它。
否则,如果您使用SSH终端连接到套件,请键入以下命令并按enter键:
sudo poweroff
几分钟后,Raspberry Pi上的绿色LED将关闭(通过标有SD卡的孔查看),表明该套件已关闭。
然后,您可以安全地从套件中拔下电源。
在国外的网络环境,其实到这里已经基本完成所有入门环节,但是(但是,但是),我们国内的用户做这个可是一个非常头大的事情。当然对于有经验的高手就不说了,反正也得花点时间,但是能搞定。
pi@PiCam:~ $ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 10 (buster)
Release: 10
Codename: buster
pi@PiCam:~ $ uname -a
Linux PiCam 5.10.103+ #1529 Tue Mar 8 12:19:18 GMT 2022 armv6l GNU/Linux
这里我们就给各位小白整理下:
$ sudo nano /etc/apt/sources.list
$ sudo nano /etc/apt/sources.list.d/raspi.list
$ cat /etc/apt/sources.list
#deb http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
# deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
$ cat /etc/apt/sources.list.d/raspi.list
deb https://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main
#deb http://archive.raspberrypi.org/debian/ buster main
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspberrypi.org/debian/ buster main
注:这里是真没有办法,毕竟这关系搞僵了,也许若干年后吧,大家都懂的。
$ sudo nano /etc/apt/sources.list.d/aiyprojects.list
$ cat /etc/apt/sources.list.d/aiyprojects.list
#deb https://packages.cloud.google.com/apt aiyprojects-stable main
有好的办法一定要告诉我啊!!!
最近找到一点方法,供有需要的朋友使用,请参考:apt-get通过代理更新系统
$ mkdir ~/.pip
$ nano ~/.pip/pip.conf
$ cat ~/.pip/pip.conf
[global]
timeout=1000
index-url=https://pypi.tuna.tsinghua.edu.cn/simple/
extra-index-url= http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=
pypi.tuna.tsinghua.edu.cn
mirrors.aliyun.com
树莓派系统预装的是vim-tiny版本,就是简易版,且默认是兼容模式。在使用vi编辑文件时,发现退格删除键(Backspace键),无法删除,方向键变成了ABCD(对应上下右左)还自动换行。
$ sudo apt-get remove vim-common
$ sudo apt-get install vim
$ sudo raspi-config
安装
$ sudo apt-get install samba
配置
$ sudo nano /etc/samba/smb.conf
$ sudo smbpasswd -a pi //添加远程samba登录密码,建议使用与ssh一致。
【1】The AIY Vision Kit from Google – Guide