Daily Archives: 8月 16, 2019

帮助我每周五天学习Machine Learning的技巧

Published by:

我每天学习 Machine Learning 9个月,然后找到了工作。怎么样?像这样…

男子戴着耳机,坐在电脑桌前

我退出了Apple。开始网络创业,失败了。我的心不在其中。

我想学习机器学习。它让我很兴奋。我要学习这一切。我不需要编写所有规则,机器会为我学习它。但我没有工作。

兴奋不会为事情付出代价。

我在周末开始驾驶优步来支付学费。

我喜欢结识新朋友,但我讨厌一直开车。交通,停止,启动,加油,我认为我有足够的燃料,空气,空调,换档,你不应该这样,你应该这样,所有这一切。

我研究过机器学习。一整天,一周五天。这很难。它仍然很难。

优步周末。本周机器学习。那是我的惯例。我必须学习。我必须学习这个,我不能继续开车,我不知道我的目标是什么,但我知道这不是开车。一个星期六晚上,我赚了280美元,罚款290美元。 – 晚上10美元。

在我自己创建的AI硕士学位 9个月后,我找到了一份工作。这是我有过的最好的工作。

我每天如何学习?

像这样。

1.减少搜索空间

机器学习很广泛。有代码,有数学,有概率,有统计数据,有数据,有算法。

并且不乏学习资源。拥有太多选项与没有选项相同。

如果你认真学习,那么就要为自己设置课程。 不要花费数周时间询问是否应该学习Python或R,而是选择Coursera或edX课程,从数学或代码开始,花一周时间计划一个粗略的计划,然后再遵循它。

对我来说,这是创建我自己的AI硕士学位。我决定先学习代码,Python就是我的语言。我搜索了不同的课程和书籍,并把我最感兴趣的书放在一起。我为每个人做的最好的道路是什么?可能不是。但这是我的,这就是为什么它有效。

一旦我有了课程,我就有了一条可以追随的道路,没有更多的浪费时间来决定什么是最好的方法。我可以起床,坐下来学习我需要(想要)学习的东西。

它也不严格。如果出现了引起我兴趣的事情,我会跟着它,并在我去的时候学习我需要的东西。

如果您是在线学习而不是通过大学学习,那么您应该走自己的路。

2.修复你的环境

你祖父的第一个橙色农场失败了。

土壤很好。种子在那里。所有设备也是如此。

发生了什么?

太冷了。橘子需要温暖的温度才能生长。你的祖父有种植橙子的技能,但他们没有机会在寒冷的气候中生长。

当他搬到一个温暖的城市时,他开始了另一个橙色农场。

12个月后,你的祖父正在镇上供应最好的橙汁。

学习就像种植橘子一样。

你可以拥有一台笔记本电脑,一个互联网连接,最好的书籍,但仍然没有动力去学习。

为什么?

因为你的环境已经关闭。

你的房间充满了分心。

你试着和朋友一起学习,但他们并不像你那样专注。

Whatsapp每7分钟一次。

你能做什么?

我把房间变成了一个研究天堂。清理它。把我的手机放在另一个房间的抽屉里,关掉所有地方的通知。

我告诉了我的朋友。我的电话一直持续到下午4点,我会跟你说话。他说没关系。

在朋友时间,朋友很棒,但学习时间是学习时间。没有你的手机不能一整天?试试一个小时。任何你看不到的抽屉都会起作用。请勿打扰默认。

修复您的环境,让知识流动。

3.设置系统,以便您始终获胜

问题13让我难过。我被卡住了。

我想昨天完成,但不能。

现在是时候学习,但我知道你昨天有多努力,无处可去。

我把它推迟了。我知道我应该读书。但是我把它推迟了。

这是一个循环。

Aghhhhhhh。我以前见过这个循环。我知道。但它仍然存在。

那堆书盯着我看。问题13.我设置了一个计时器。25分钟。我知道我可能无法解决问题,但我可以坐下25分钟尝试。

4分钟,这是地狱。燃烧地狱。我继续往前走。24分钟,我不想停下来。

计时器熄灭,我又设置了另一个。然后另一个。经过3次会议,我解决了这个问题。我告诉自己,我是世界上最好的工程师。这是谎言,但无关紧要。即使是一个小里程碑也是一个里程碑。

你不能总是控制你是否在学习上取得进步。但是你可以控制你花在一些东西上的时间。

可以控制:每天四个25分钟的会话。

无法控制:完成每天开始的每项任务。

设置系统,以便您始终获胜。

4.有时什么都不做

我得出结论。学习是最终的技能。如果我能学会更好地学习,我可以做得更好。我可以学习机器学习,我可以成为一个更好的程序员,我可以学习写得更好。我想,我必须改进我的学习。我立刻开始了。

我做了Coursera学习如何学习课程。其中一个主题是专注于扩散思维。

当你完成一项任务时,会集中思考

当你没有考虑任何事情时,就会出现分散思维

最好的学习发生在这两者的交叉。这就是为什么你在淋浴时有一些最好的想法。因为没有别的事情发生。

当你让分散的思维接管时,它会让你的大脑空间将所有吸收的东西联系在一起。

问题是,为了使它正常工作,你需要时间。

如果您已经设置了系统,那么您可以进行四次25分钟的重点工作,然后再去散步。小睡一会儿。坐下来思考你学到了什么。

一旦你开始不经常做任何事情,你会发现很多东西都是有价值的,因为空的空间。一个房间是四个围绕空间的墙,一个轮胎除了空气之外什么都没有,一艘船因空的空间而漂浮。

你的学习程序可以做更多的事情。

5.接受失败

学习很失败。

你学到了一件事,第二天就忘记了。

然后另一个忘了它。

另一个。

忘记了。

你整个周末都在学习,周一去上班,没有人知道。

有人问我如何深刻地记得书中的东西?我说我没有。如果我很幸运,我会记得我读过一本书的1%。当1%与另外1%的其他东西交叉时,神奇就会发生。这让我觉得自己像专家点连接器。

经过一年的学习,你会发现还有更多东西需要学习。

什么时候结束?

它没有。它总是第一天。

拥抱失败。

6.这个有3年历史的原则

前几天我在公园。

有一个小男孩跑来跑去度过他的生命。向上滑动,滑下,在树上,从树上,在泥土中,从泥土中,上山,下山。

他笑着跳起来然后又笑了起来。

他的妈妈过来接他。

“来吧,查理,我们得走了。”

当她把他带走时,他一直笑着挥舞着他的蓝色塑料铲。

是什么让他着迷?

他在玩。他很开心。整个世界都是新的。我们的文化在工作和娱乐之间存在严格的分歧。研究被认为是有效的。

你应该学习以获得更多的工作。你应该努力赚钱。这笔钱给你带来休闲时间。一旦你买了休闲时间,那么只有这样你才能像查理一样笑着跑来跑去。

如果你的头脑研究是有效的,那将是地狱。因为总有更多要学习。你知道它是怎么回事,所有工作都没有。

但是假设,你有学习的想法是经历一个主题然后到下一个主题的过程。

连接游戏等不同的东西。

如果你是查理走下幻灯片,你会开始对它有同样的感觉。

你学到了一件事,你用它来学习别的东西,你被卡住,你克服它,你学到了另一件事。然后你就跳出舞来吧。

我了解到,如果你有像表格,列或数据框架这样的结构化数据,像CatBoost,XGBoost和LightGBM这样的集合算法效果最好。对于非结构化数据,如图像,视频,自然语言和音频,深度学习和/或转移学习应该是您的首选模型。

我连接了点。我告诉自己我是专家点连接器。从点到下一个跳舞。

这样做,你将完成一个比你开始时更有活力的学习课程。

这是一个有3年历史的原则。把一切视为游戏。

这就足够了。

这是我睡觉的时间。

这是一个奖励。

7.睡觉

睡眠不好意味着学习不好。

你可能还不够。

我不是。驾驶优步的最佳资金是周五和周六晚上。人们出去吃饭,聚会,去夜总会,我没有,我开车。我要去,直到凌晨2点,凌晨3点,回家睡觉,直到太阳以7-8把我叫醒。我有两天的火车残骸。星期一会来,我会在不同的时区。周二变得更好,到了周三我回到了我需要的地方。那个周期将在周五重复。

这种破碎的睡眠时间表是不可接受的。我的目标是更好地学习。睡眠可以清洁大脑并使大脑中的新连接发生。我在晚上10点,晚上11点开车离开,回到家,得到了7-9个小时。更少的钱,更多的学习。

不要交换睡眠更多的学习时间。反其道而行之。

机器学习很广泛。

要好好学习,要好好学习,你需要提醒自己。

  • 减少搜索空间
  • 修复您的环境
  • 拥抱失败
  • 有时什么也不做
  • 将学习视为游戏
  • 良好的睡眠以便更好的学习

晚安。


有疑问或建议吗?我的Twitter DM是开放的。你也可以在mrdbourke.com上找到这样的帖子,以及我在YouTube上做这些事情的视频

PS如果你从这篇文章中获得了价值,你可能会喜欢这个视频。

关于自学机器学习的思考?提醒自己这6件事

Published by:

我是一名自学成才的机器学习工程师,如果我重新开始,这就是我告诉自己的

我大部分自学的地方都在那里。照片来自:Daniel Bourke在YouTube上

视觉上学得更好?YouTube上有这篇文章的视频版本

我们在澳大利亚举办了一次关于机器人技术的聚会,这是一个问题时间。

有人问了一个问题。

“我如何从不同的背景进入人工智能和机器学习?”

尼克转身叫了我的名字。

“丹·伯克在哪里?”

我在后台与Alex交谈。我走了过来。

“他在这里,”尼克继续道,“Dan来自健康科学背景,他研究营养,然后驾驶Uber,在线学习机器学习,现在已经和Max Kelsen一起成为一年的机器学习工程师。”

尼克是布里斯班科技公司Max Kelsen的首席执行官兼联合创始人。

我站着不停地听着。

“他记录了他的在线旅程,如果你有任何问题,我相信他会很乐意提供帮助。”

问题结束了,我回到了食物。

Ankit过来了。他告诉我他正在努力利用机器学习来更好地理解学生学习的项目。他将讲座出勤率,在线学习门户上花费的时间,测验结果以及其他一些内容结合起来。他甚至建立了一个前端Web门户来与结果进行交互。

Ankit的作品激发了我的灵感。这让我想做得更好。

然后又有几个人开始过来并询问有关如何进入机器学习的问题。全部来自不同领域。

这是困难的部分。我仍然认为自己是初学者。

但最好的导师是在你面前1 – 2年的人。刚刚经历过你将要经历的事情的人。任何更长的时间,建议变得模糊。当它新鲜时你想要它。

我的兄弟正在进入机器学习。这就是我一直对他说的话(如果我重新开始的话,还有我自己)。

A)获得一些Python基础(3-4个月)

这种语言并不重要。它可能是R,Java,Python等等。重要的是挑选一个并坚持下去。

如果你刚开始,你会发现Python很难出错。

如果你想进入应用机器学习,代码是强制性的。

从网上挑选一个基础课程,并坚持几个月。奖励积分如果它同时适用于教授数据科学。DataCamp非常适合这种情况。

有时会变得很难,但这就是重点。学习编程语言就像学习另一种语言和另一种思维方式一样。

但你以前做过。记得你3岁的时候?可能不是。但是你身边的人都在使用你以前从未听过的文字和声音。过了一会儿,你也开始使用它们了。

B)当你还没有准备好时开始制作东西

尽快应用你所学到的知识。

无论你完成了多少门课程,你都永远不会100%准备好。

不要被引诱完成更多课程作为能力的标志。

如果我回去重新开始,这是我改变的一件事。

找到自己的项目,通过错误来学习和学习。

回到你3岁的自我。你说的每个第三个字都错了。没有句子结构,也没有语法。一切都刚刚出来。

C)那里有很多,所以减少杂乱

那里有很多课程。他们都很棒。

很难找到一个坏的。

但这就是事情。由于有这么多,很难选择。另一个可以阻挡你的陷阱。

为了解决这个问题,我获得了自己的AI硕士学位。我自己的定制跟踪。

如果需要,您可以复制它。但我鼓励你花几天时间研究自己,看看什么对你最好。

作为一个提醒,我发现的三个资源与我日常工作最相符的是,动手机器学习书fastai机器学习课程Coursera上应用数据科学与Python课程

在您有几个月的Python经验之后,为这些书签添加书签。

D)研究是必要的,但如果你不能应用它是毫无意义的

你会看到每天都有关于新机器学习方法的文章和论文。

别理他们。

没有办法跟上他们所有这一切,它只能阻止你回到基础设置。

大多数最好的机器学习技术已经存在了几十年。改变的是计算能力和数据可用性的增加。

不要被新的分心。

如果你刚开始,坚持先找到你的基础。然后根据您的项目需求扩展您的知识。

E)每天一点点

3岁你是一个学习机(机器学习者?)。

几年之后,你几乎没有言语,几十年来一直在说话的人。

怎么样?

因为你每天练习一点。

然后复利就开始了。

每天增加1%=年底增加3700%。

如果你错过了一天,无论如何,生活就会发生。尽可能恢复。

很快你就会开始讲数据语言了。

F)不要因为不知道某事而殴打自己

“你有没有建立过推荐引擎?”

“没有。”

“我们有一个项目需要一个作为概念证明,你认为你可以搞清楚吗?”

“当然。”

大多数人认为高中或大学后学习停止。它没有。

上面的情景发生在另一周。我从来没有建立过推荐引擎。然后我做了。

如果你以前做过的事情失败了,那么失败也不错。你一直在走路,但是当你自己绊倒时,你并没有打败自己。它发生了。你继续走路。

但是,在新事物上失败是很困难的。你以前从未这样做过。

学习机器学习类似这样。

第一年:你太烂了。

第二年:你比前一年好,但是你觉得你更糟糕,因为你意识到你有多少不知道。

第3年:???? (我不在那里)

拥抱吮吸。

不知道有什么东西可以帮助你学习更多东西会让自己多少钱?

零。

学习新东西需要时间。每一天都是第一天。

学习不是线性的。

你3岁的孩子如何反应不懂一个字?

你笑了 把手放在空中,然后爬一会儿。

现在一样。除了你可以走路。

¹如果没有所有创造过课程并分享他们所学知识的优秀人才,我所做的所有工作和我所学到的东西都是不可能实现的。

有更多问题吗?在TwitterLinkedInYouTube上联系

这篇文章最初作为Quora的答案出现。

DeepPiCar – 第2部分:Raspberry Pi设置和PiCar组装

Published by:

组装PiCar硬件并安装所有软件驱动程序。让它在客厅里运行

执行摘要

欢迎回来!在本指南中,我们将首先介绍要购买的硬件以及我们需要它们的原因。接下来,我们将对它们进行设置,以便在本文末尾我们将在客厅中运行PiCar。

硬件供应清单

  • 1 x Raspberry Pi 3型号B +套件,带2.5A电源(50美元)这是DeepPiCar的大脑。这款最新型号的Raspberry Pi配备1.4Ghz 64位四核处理器,双频wifi,蓝牙,4个USB端口和一个HDMI端口。我推荐这个套件(仅在Raspberry Pi板上),因为它带有一个电源适配器,你需要在进行非驱动编码和测试时插入,以及两个芯片散热器,这将阻止你的Raspberry Pi CPU过热。
  • 1 x 64 GB micro SD卡(8美元)这是Raspberry Pi操作系统和我们所有软件的存储位置。任何品牌的micro SD卡都应该可以正常工作。你可能只有一个人躺在你的房子周围。32GB也应该没问题。我选择了64 GB,因为我计划在我的汽车行驶时记录大量视频,以便稍后分析其行为,并使用视频在以后的项目中进行深度学习培训。
  • 1 x SunFounder PiCar-V套件(115美元)这是DeepPiCar的主体。确保你得到如上所示的Model V(又名Version 2.0)。除了Raspberry Pi和电池外,它还配备了机器人汽车所需的一切。市场上有很多Raspberry Pi车载套件,我之所以选择这款车载套件是因为它配备了开源python API来控制汽车,而其他供应商则拥有其专有的API或基于C的API。众所周知,python现在是机器学习和深度学习的首选语言。此外,开源很重要,因为如果我们发现API中的错误而不必等待制造商提供软件更新,我们可能会自己修改汽车API的内部。
  • 4 x 18650电池和1 x电池充电器(20美元)您可以获得任何18650电池和兼容充电器。这些电池适用于高耗电应用,例如驱动Raspberry Pi板和PiCar。PiCar只需要两个电池,但你总是想要另外一对新电池,这样你就可以随时保持你的车在轨道上运行。我建议晚上给两套充电,这样你就不必担心测试过程中电池没电了。
  • 1个Google Edge TPU USB加速器(75美元)每个英雄都需要一个伙伴。谷歌的边缘TPU(Edge意味着它适用于移动和嵌入式设备,而TPU代表Tensor处理单元)是Raspberry Pi板的绝佳附件。虽然Pi CPU在很小的捆绑中包含了大量的计算能力,但它并不是为深度学习而设计的。另一方面,Google新发布的Edge TPU(2019年3月)专门用于运行用TensorFlow编写的深度学习模型。在本系列的第6部分中,我们将在TensorFlow中构建一个实时交通标志检测模型。这个模型深200多层!仅在Raspberry Pi的CPU上运行此模型只能处理每秒1帧(FPS),这几乎不是实时的。此外,它消耗100%的CPU并使所有其他程序无响应。但在Edge TPU的帮助下,我们现在可以处理12个FPS,这对于实时工作来说已经足够了。我们的CPU保持冷却,可用于执行其他处理任务,如控制汽车。
  • 套迷你交通标志(15美元)和一些乐高小雕像。如果您的年轻人在游戏室中有一些玩具标志和乐高小雕像,您可能不需要购买它们。你可以使用你发现的任何标志来训练模型,只要确保它们不是太大了
  • (可选)1 x 170度广角USB相机(40美元)。这是一个可选配件。我买了它来取代SunFounder PiCar附带的相机,这样汽车就可以拥有广阔的视野。相机很棒,但不像我喜欢的广角,它不能看到前轮前面3-4英寸的车道线。我最初使用相机拍摄了第4部分中的代码。在尝试了几个镜头后,我发现这款广角相机的精度和稳定性大大提高了。控制硬件和软件(与在汽车模拟器中运行汽车相比)是很好的,因为如果单独通过软件无法轻易解决问题,您可以采用硬件修复。
  • USB键盘/鼠标和带HDMI输入的显示器。在Pi的初始设置阶段,您只需要这些。之后,我们可以通过VNC或Putty远程控制Pi。
  • 运行Windows / Mac或Linux的台式机或笔记本电脑,我将在此处称之为“PC”。我们将使用此PC远程访问并将代码部署到Pi计算机。

有时候,我的惊喜是Raspberry Pi,我们汽车的大脑只有30美元左右,比我们的许多其他配件便宜。事实上,随着时间的推移,硬件变得越来越便宜,而且软件完全免费且丰富。难道我们不是生活在一个伟大的时代吗?!

这是组装完成后的最终产品。我在这里使用广角相机。

Raspberry Pi设置

Raspberry Pi操作系统设置(1小时)

  • 按照这个优秀的分步指南,将NOOBS Raspbian操作系统(各种Linux)安装到micro SD卡上。它需要大约20分钟和大约4GB的磁盘空间。安装并重新启动后,您应该看到如下所示的完整GUI桌面。这感觉就像你在Windows或Mac GUI环境中,不是吗?
  • 在安装过程中,Pi会要求您更改默认用户的密码pirasp例如,我们将密码设置为。
  • 初始安装后,Pi可能需要升级到最新的软件。这可能需要10-15分钟。

设置远程访问

设置远程访问允许Pi计算机无头运行(即没有显示器/键盘/鼠标),这使我们无需一直连接显示器和键盘/鼠标。该视频提供了有关如何设置SSH和VNC远程访问的非常好的教程。无论如何,这是步骤。

  • 打开终端应用程序,如下所示。终端应用程序是一个非常重要的程序,因为后面文章中的大多数命令都将从终端输入。
  • 通过运行找到Pi的IP地址ifconfig。在这种情况下,我的Pi的IP地址是192.168.1.120
pi @ raspberrypi:〜$ ifconfig | grep wlan0 -A1
wlan0:flags = 4163 <UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.120 netmask 255.255.255.0 broadcast 192.168.1.255
  • sudo raspi-config在终端中运行以启动“Raspberry Pi软件配置工具”。系统可能会提示您输入用户密码pi
  • 启用S​​SH服务器:选择5. Interface Options– > SSH– >Enable
  • 启用VNC服务器:选择5. Interface Options– > VNC– >Enable
  • 下载RealVNC Viewer并将其安装到您的PC上。
  • 使用Real VNC Viewer连接到Pi的IP地址。您将看到与Pi正在运行的桌面相同的桌面。
  • 此时,您可以安全地断开显示器/键盘/鼠标与Pi计算机的连接,只需插入电源适配器即可。

设置远程文件访问

由于我们的Pi将无头运行,我们希望能够从远程计算机访问Pi的文件系统,以便我们可以轻松地将文件传输到Pi计算机或从Pi计算机传输文件。我们将在Pi上安装Samba文件服务器。

pi @ raspberrypi:〜$ sudo apt-get update && sudo apt-get upgrade -y
获取:1 http://archive.raspberrypi.org/debian stretch InRelease [25.4 kB] 
软件包[45.0 kB] 
[省略...] 
解压缩lxplug-ptbatt(0.5)over(0.4)... 
设置lxplug-ptbatt(0.5)... 
pi @ 




raspberrypi :〜$ sudo apt-get install samba samba-common-bin -y读取包列表...完成构建依赖树        [省略...] 处理libc-bin的触发器(2.24-11 + deb9u4)... 处理触发器为systemd(232-25 + deb9u11)... pi @ raspberrypi :〜$ sudo rm / etc /samba/smb.conf pi @ raspberrypi:〜$ sudo nano /etc/samba/smb.conf

然后将以下行粘贴到nano编辑器中

[global] 
netbios name = Pi
服务器字符串= PiCar文件系统
工作组= WORKGROUP

[HOMEPI]
路径= / home / pi
comment =无评论
browsable = yes
writable =是
创建掩码= 0777
目录掩码= 0777
public = no

通过Ctrl-X保存并退出nano,单击是以保存更改。

然后设置Samba服务器密码。为简单起见,我们将使用与raspSamba服务器密码相同的内容。设置密码后,重新启动Samba服务器。

#create samba密码
pi @ raspberrypi:〜$ sudo smbpasswd -a pi
新的SMB密码:
重新输入新的SMB密码:
添加了用户pi。#re restart samba server
pi @ raspberrypi:〜$ sudo service smbd restart

此时,您应该能够通过Pi的IP地址(My Pi的IP为192.168.1.120)从PC连接到Pi计算机。转到您的PC(Windows),打开命令提示符(cmd.exe)并键入:

#将Pi主目录挂载到R:PC上的驱动器
C:\> net use r:\\ 192.168.1.120 \ homepi
命令成功完成。
C:\ Users \ dctia> r:C:\> dir r:
驱动器R中的
卷是HOMEPI 卷序列号是61E3-70FF 目录R:\ 05/02/2019 03:57 PM <DIR>。
04/08/2019 04:48 AM <DIR> ..
04/08/2019 05:43 AM <DIR> Desktop
04/08/2019 05:43 AM <DIR> Documents
04/08/2019 05:43 AM < DIR>下载
04/08/2019 05:15 AM <DIR> MagPi
04/08/2019 05:43 AM <DIR> Music
05/02/2019 03:43 PM <DIR>图片
04/08/2019 05:43 AM <DIR> Public
04/08/2019 05:43 AM <DIR>模板
04/08/2019 05:43 AM <DIR>视频
0文件0字节
11 Dir(s )22,864,379,904字节免费

事实上,这是我们的Pi计算机文件系统,我们可以从它的文件管理器中看到。这将非常有用,因为我们可以直接从我们的PC编辑驻留在Pi上的文件。例如,我们可以使用PyCharm IDE首先在Pi上编辑Python程序,然后使用Pi的终端(通过VNC)来运行这些程序。

如果你有一台Mac,这里是如何连接到Pi的文件服务器。按Command-K打开“连接到服务器”窗口。输入网络驱动器路径(替换为Pi的IP地址),即smb://192.168.1.120/homepi,然后单击“连接”。输入登录名/密码,即pi / rasp,然后单击“确定”以安装网络驱动器。然后,驱动器现在将显示在桌面和Finder窗口侧栏中。有关Mac上更深入的网络连接说明,请查看此优秀文章

安装USB摄像头

USB摄像头的设备驱动程序应该已经配备了Raspian OS。我们将安装摄像机查看器,以便我们可以看到实时视频。

  • 将USB相机从PiCar套件中取出并插入Pi计算机的USB端口
  • sudo apt-get install cheese从终端运行安装“奶酪”,相机查看器。
pi @ raspberrypi:〜$ sudo apt-get install cheese -y
读取包列表...完成
构建依赖关系树
读取状态信息...完成
....
cheese是最新版本(3.22.1-1)。
  • 通过Raspberry Pi button(Top Left Corner)– > Sound & Video– > 启动奶酪应用程序Cheese您应该看到如上图所示的实时视频源。

SunFounder PiCar-V软件配置(偏离手册)

在组装PiCar之前,我们需要安装PiCar的python API。SunFounder发布了其Python API的服务器版本和客户端版本。客户端API代码用于远程控制PiCar,在您的PC上运行,它使用Python版本3.服务器API代码在PiCar上运行,遗憾的是,它使用的是Python版本2,这是一个过时的版本。由于我们编写的自驱动程序将专门在PiCar上运行,因此PiCar Server API也必须在Python 3中运行。幸运的是,SunFounder的所有API代码都是Github上的开源代码,我制作了一个分支并将整个仓库(服务器和客户端)更新为Python 3.(我将很快将我的更改提交给SunFounder,因此它可以合并回到主要回购,一经SunFounder批准。)

暂时,运行以下命令(粗体),而不是SunFounder手册中的软件命令。您不必在本手册的第20-26页上运行命令。

#将所有对python(版本2)的调用路由到python3,
#pip(版本2)到pip3,即使在sudo模式下
#note:`sudo abcd`在管理员模式下运行`abcd`命令
alias python = python3
alias pip = pip3
alias sudo ='sudo'
#下载修补的PiCar-V驱动程序API,并运行它的设置
pi @ raspberrypi :〜$ cd pi @ raspberrypi:〜$ git clone https://github.com/dctian/SunFounder_PiCar.git
克隆到' SunFounder_PiCar'...
remote:枚举对象:9,完成。
remote:计数对象:100%(9/9),完成。
remote:压缩对象:100%(9/9),完成。
remote:总计276(delta 0),重用2(delta 0),pack-reused 267
接收物体:100%(276/276),53.33 KiB | 0字节/秒,完成。
解决增量:100%(171/171),完成。
pi @ raspberrypi:〜$ cd~ / SunFounder_PiCar / picar /

pi @ raspberrypi:〜/ SunFounder_PiCar / picar $ git clone https://github.com/dctian/SunFounder_PCA9685.git
克隆到'SunFounder_PCA9685'...
remote:枚举对象:7,完成了。
remote:计数对象:100%(7/7),完成。
remote:压缩对象:100%(5/5),完成。
远程:总计87(delta 2),重用6(delta 2),pack-
reused 80 Unpacking对象:100%(87/87),完成。pi @ raspberrypi:〜/ SunFounder_PiCar / picar $ cd~ / SunFounder_PiCar /
pi @ raspberrypi:〜/ SunFounder_PiCar $ sudo python setup.py install
将SunFounder-PiCar 1.0.1添加到easy-install.pth文件
中将picar脚本安装到/ usr / local / bin
[省略....] #下载修补后的PiCar-V应用程序
#并安装相关软件
pi @ raspberrypi:〜/ SunFounder_PiCar / picar $ cd
pi @ raspberrypi :〜$ git clone https://github.com/dctian/SunFounder_PiCar-V.git
克隆到'SunFounder_PiCar-V'...
remote:枚举对象:969,完成。
remote:总计969(delta 0),重用0(delta 0),pack-
reused 969 接收对象:100%(969/969),9.46 MiB | 849.00 KiB / s,完成。
解决增量:100%(432/432),完成。pi @ raspberrypi:〜$ cd SunFounder_PiCar -V pi @ raspberrypi:〜/ SunFounder_PiCar-V $sudo ./install_dependencies
将sunFounder-PiCar 1.0.1添加到easy-install.pth文件
中将picar脚本安装到/ usr / local / bin 安装/usr/local/lib/python2.7/dist-packages/SunFounder_PiCar-1.0.1- py2.7.egg
处理SunFounder-PiCar的依赖关系== 1.0.1
完成SunFounder-PiCar的处理依赖关系== 1.0.1
完成
将MJPG-Streamer复制到备用位置。完成
Enalbe I2C。完成安装结果:
django成功
python-smbus成功
python-opencv成功
libjpeg8-dev成功
你需要更改的东西可能需要重启才能生效。
你想立即重启吗?(是/否)是的

回答是,提示重启时。重新启动后,应安装所有必需的硬件驱动程序。我们将在汽车装配后测试它们。

PiCar大会

装配过程密切重新组装构建复杂的乐高套装,整个过程大约需要2个小时,手眼协调很多,并且很有趣。(您甚至可能在施工阶段让您的年轻人参与其中。)PiCar Kit附带一份印刷的逐步说明手册。但我推荐这两个额外的资源。

  • 教学手册的PDF版本。打印手册很小,图表可能打印得不是很清楚,而PDF版本非常清晰,可以搜索和放大以获得更多细节。我发现在组装阶段我的笔记本电脑上的PDF非常有帮助。
  • 由SunFounder发布的YouTube 4部分教学视频。不幸的是,这些视频适用于较旧版本的PiCar,因此某些部件(如伺服电机组件)不同。但大多数零件和装配技术都是一样的。因此,如果您对装配手册中的特定图表感到头疼,您可能需要查看视频的相关部分。我希望SunFounder能够为新的PiCar-V套件发布一组新的视频。

旧版PiCar的装配视频(4个部分),一个有用的参考

当橡胶遇上这条路!

现在PiCar的所有基本硬件和软件都已到位,让我们尝试运行它!

  • 通过VNC从PC连接到PiCar
  • 确保有新电池,将开关拨到ON位置并拔下micro USB充电线。请注意,您的VNC远程会话应该仍然有效。
  • 在Pi终端中,运行以下命令(以粗体显示)。你应该:
  1. 看到汽车行驶得更快,然后发出时减速 picar.back_wheel.test()
  2. 当发出时,看到前轮转向左,中间和右侧picar.front_wheel.test()。要停止这些测试,请按Ctrl-C。要退出python程序,请按Ctrl-D。
pi @ raspberrypi:〜/ SunFounder_PiCar / picar $ python3 
Python 3.5.3(默认,2018年9月27日,17:25:39)
[GCC 6.3.0 20170516]关于linux输入
“help”,“copyright”,“credits”或“许可证”了解更多信息。>>> 导入picar
>>> picar.setup() >>> picar.front_wheels.test()
DEBUG“front_wheels.py”:设置调试关闭
DEBUG“front_wheels.py”:设置轮调试关闭
DEBUG“Servo.py” :设置调试关闭
turn_left
turn_straight
turn_right >>> picar.back_wheels.test()
DEBUG“back_wheels.py”:设置调试关闭
DEBUG“TB6612.py”:

DEBUG“PCA9685.py”:设置调试关闭
前进,速度= 0
前进,速度= 1
前进,速度= 2
前进,速度= 3
前进,速度= 4
前进,速度= 5
前进,速度= 6
前进,速度= 7
前进,速度= 8
前进,速度= 9
前进,速度= 10
前进,速度= 11
  • 如果您遇到错误或看不到车轮移动,那么您的硬件连接或软件设置有问题。对于前者,请仔细检查您的电线连接,确保电池充满电。对于后者,请在评论部分发布一条消息,其中包含您遵循的详细步骤和错误消息,我将尽力提供帮助。

下一步是什么

恭喜你,你现在应该有一个PiCar,可以看到(通过奶酪),并运行(通过python 3代码)!它还不是一款深度学习车,但我们正在努力实现这一目标。每当你准备好的时候,请继续前进到第3部分,在那里我们将为PiCar提供计算机视觉和深度学习的超级大国。

以下是整个指南的链接:

第1部分:概述

第2部分:Raspberry Pi设置和PiCar组装(本文)

第3部分:让PiCar看到并思考

第4部分:通过OpenCV进行自主车道导航

第5部分:通过深度学习进行自主车道导航

第6部分:交通标志和行人检测和处理