专栏首页GPUS开发者辣眼睛,看别人如何用Jetson TX1花式逗猫!

辣眼睛,看别人如何用Jetson TX1花式逗猫!

如果你最近在阅读人工智能(artificial intelligence,简称AI)、深度学习(deep learning)和神经网络(neural networks)等相关信息,却发现自己搞不太懂,别担心,你并不孤独!这些名词听起来如此高端,象是「超级计算机」才能做的事情,桌上型计算机的档次大概就不够了,更别说Maker常用来做专题的嵌入式计算机了,对吧?

不过,最近Nvidia出的Jetson TX1开发板改变了这一切!Jetson TX1 非常小巧,需要的电能不多,正好可以让Maker发挥创意!Jetson系列开发板用的是Nvidia广受欢迎的图像处理器,专为高速影像显示打造,也就是Nvidia的专长。当每秒钟可以捕捉分析数百张图像时,对Maker来说代表什么呢?比方说,这可以应用在脸孔辨识或保全、汽车与飞机自动驾驶 、3D投影(3D mapping)、进阶机器人行为等,还有更多可能性等待我们去想象。

Maker的第一个专题的作者是Sam Brown,他利用Jetson快速影像处理与「神经网络」的学习能力,做出一款「猫咪侦测雷射逗猫器」,其中的雷射笔只有在侦测到有猫咪出现的时候才会启动──人类不行,只有猫咪才有效!这一款「猫咪侦测器」( Cat Spotter)真的 可以辨识出猫咪的模样!这一切都要归功于Jetson强大的计算能力、神经网络软件与用来训练神经网络的大型影像库。这与用闪示卡(flash cards)来训练学生很类似(如「猫」和「不是猫」」,差别在于Jetson只要花几分钟就可以学习上千张图像。经过训练之后, Jetson就可以透过内建摄影机,在几毫秒内完成图像辨识,比一般计算机快上几千倍。

Jetson TX1是Nvidia第二代为Maker于其他开发专题设计的板子,沿用他们家的高速影像处理器, 可以多工进行大量运算与深度学习,有了这样的硬件条件,猫咪侦测器才有办法在极短的时间内判断图像中是否有猫咪存在。 好了!现在,请跟随以下步骤来制作Jetson TX1猫咪侦测器吧!

用Jetson TX1打造猫咪侦测与雷射逗猫器 专题作者:Sam Brown

为了让你能快速上手,我们准备了完整的软件让你可以直接安装在Jetson上,只要一打开就可以直接启用猫咪侦测功能了(Cat Spotter)!

Jetson的更新程序只能在Ubuntu Linux执行,所以,我们要先用UNetbootin做出一个随身碟,这个随身碟可以让任何计算机以 Ubuntu的方式开启。 另外,我们还需要另一个随身碟,里面放的是复制的硬盘映像档(hard drive image)。 UNetbootin用的Ubuntu和Jetson 硬盘映像档都有数g的大小,下载需要花上一些时间,因此,我们就趁等待时间来做Arduino雷射控制器吧! PARTS

  1. Nvidia Jetson TX1开发者套件包:包含Nvidia Jetson TX1开发板、AC转接头、电源线、USB Micro-B连接线(标准A公和标准A母)、橡胶脚垫(4)、快速上手指南与安全小册、Wi-Fi天线(2)。
  2. Arduino Uno微控制器板。
  3. 雷射二极管,3V,5mW,如Amazon产品编号B00VCR036Q,或也可以用 5V雷射二极管, 省去晶体管部分。
  4. 晶体管,NPN型。
  5. 玩家级伺服马达,小型 (2),如Amazon产品编号B00ZEDRR3Q。
  6. 支架,用来制作云台架,你可以自己用木板、塑胶或金属来做,买现成的也行, 或者,也可以在 Thingiverse找出来3D输出。
  7. USB随身碟,32GB (2)。
  8. 迷你面包板,如 Jameco产品编号#2155452。
  9. 跳线
  10. Jetson TX1与Arduino外壳(非必要)。

TOOLS

  1. 计算机,内含x86处理器 ── 其实就是一般的桌上型计算机或笔记型计算机。Raspberry PI或内有其他中央处理器的计算机可能不行。
  2. Arduino IDE,可以从arduino.cc/downloads免费下载。

连接硬件

硬件的部分其实很单纯,你只需要一个雷射二极管(网络上买很便宜)、两颗一般规格的迷你伺服马达(装在云台架上),和Arduino微控制器来控制这些零件就行了,最后,我们加上一个NPN 晶体管,让Arduino控制 3.3V电源开关。

要制作简单的云台雷射逗猫器 ,请将两颗伺服马达与雷射二极管接到Arduino上(如电路图所示),请将雷射二极管接上+3.3V针脚,伺服马达则接到5V针脚。

将两颗伺服马达分别装到90°的云台架上和Arduino外壳上方,如图所示。接着,请将雷射二极管也装到支架上,指向前方。当系统启动后,会需要让雷射光朝地板或其他猫咪看得到的地方发射。

请从https://github.com/baudot/cat_play_jetson_triggered网页下载Arduino程序档,然后,打开计算机中的 Arduino IDE,将程序档上传到Arduino开发板上。将Arduino用USB连接线接上Jetson。

现在,你的雷射逗猫玩具已经大功告成,只要在Jetson写入猫咪侦测软件,逗猫玩具会就在侦测到猫咪的形体时有所反应了! 设定猫咪侦测软件

1. 为了让Jetson侦测猫咪,我们会直接使用受过训练的神经网络,档案已经放在刚刚下载的映像档中了。

2. 用ExFAT档案系统分割第二个USB随身碟 ,大部分的随身碟用的都是较早期的FAT档案系统,不接受4GB以上的档案,我们10GB的映像档也就不行了。

3. 将下载下来的档案 (laser_cat.tgz)复制到第二个随身碟上。

4. 现在,请用第一个随身碟(有UNetbootin)将计算机重新启动,就可以在计算机上使用Ubuntu Linux。这是因为NVIDIA的软件工具JetPack必须在Ubuntu Linux上运作。

5. 请打开终端机视窗,依序输入以下指令,为Ubuntu系统加入 ExFAT硬盘支援: sudo add-apt-repository universe sudo apt-get update sudo apt-get install exfat-utils exfat-fuse

6. 将第二个随身碟插入Ubuntu计算机,现在应该读得到了!

7. 将laser_cat.tgz档案复制到Ubuntu系统,档案复制大约要花上几分钟。

8. 打开终端机,将路径指向laser_cat.tgz存放位置,并输入以下指令来解压缩: tar -xvzf laser_cat.tgz 解压缩的程序可能会花个几分钟。

9. 解压缩完成之后,请输入以下指令:cd bootloader 指向刚解压缩完成的路径。

10.用USB接micro-USB转接线,将Jetson连接到运作Ubuntu的计算机上,micro-USB的那一头接在Jetson后。

11.将Jetson关机。重新打开、放开电源键之后,立刻按住「更新」(Update)钮,这个时候,请轻触「重启」(Reset)按钮,等待两秒,再将「更新」按钮放开。如果将按钮转到在Jetson的前侧(这个时候,Wifi天线在后),「电源」(Power)按钮会位在最右边,「更新」按钮位在右边数来第二的位置,「重启」钮则在最左边。

12.要确认计算机有成功连上Jetson,可以在终端机上输入lsusb指令,如果再出现的列表中看到「NVIDIA」字样,那就表示有连上Jetson,可以进行更新。

13.在Ubuntu计算机上,你还在bootloader路径吗?很好,现在请输入以下指令,将我们预先准备的雷射猫软件载入Jetson:

sudo ./tegraflash.py --bl cboot.bin --applet nvtboot_recovery.bin --chip 0x21 --cmd "write APP laser_cat_APP.img" 请让这个指令执行一下(大概要15-20分钟),然后就大功告成了!也就是完整复制我们制作出来、已被训练过的Jetson系统了。 最后,请中断笔记型计算机与Jetson之间的连结,重新启动 Jetson,并确认摄影机的镜头没有被挡住,完成后就可以开始侦测猫咪了!

有了Jetson TX1,我们今天做的新玩具只要几毫秒就可以透过一套神经网络来辨识猫咪,这样的影像识别速度将打开机器人领域的新篇章,让机器人有更多跟真实世界互动的可能性。

猫咪侦测器的背后有许多要素,在制作专题的时候也一并安装了,或许你会有兴趣进一步探索这些工具: Caffe-- Caffe是一组打造神经网络的套件,我们用来进行猫咪辨识的神经网络是正Caffe应用的其中一个范例,这组套件尤其适合进行视觉辨识。 Digits--Digits则是另一种设定与探索神经网络的工具,而且不需要写程序。 CUDA 解开了Jetson的束缚,让Jetson可以一次进行很多、很多个任务,象是…… cuDNN,在 CUDA的辅助之下,cuDNN软件可以用惊人的速度执行神经网络!

最后看看它是怎么工作的吧! 小编已经决定亲手来试试这个项目了,谁叫我家也有一个喵星人呢?


本文分享自微信公众号 - 吉浦迅科技(gpusolution),作者:Maker

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-12-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 看国外媒体对NVIDIA Jetson Nano的评测报告

    由于目前Jetson Nano还在路上,没有拿到实物,所以我们一起来看看他都说了些啥,来解解渴吧!

    GPUS Lady
  • 说好了一起用树莓派,你却偷偷地玩起了Jetson NANO

    "创客运动”(maker movement)在一定程度上是由Raspberry Pi等低成本电脑促成的,它推动了嵌入式开发者社区的快速增长,并为数千万人带来了更...

    GPUS Lady
  • 推荐一款NVIDIA Jetson产品可用的RGBD相机

    本产品是新⼀代⼩型化 RGBD 相机,集成了 640×480 像素的 TOF 深度摄像头和 500 万像素的 RGB 摄像头。⼩型化超薄的尺⼨结构适合各种嵌⼊式...

    GPUS Lady
  • 语言设计中的鸭子类型风格

    image.png #思特沃克好声音# (图片:网络) 在动态语言的世界里一直流传着一种叫做鸭子类型的风格,其来自谚语:“如果行鸭子一样走路,像鸭子一样呱呱叫...

    ThoughtWorks
  • Flash图片处理 图像处理 效果 滤镜 pixelbender blender mode

      前6个小玩意,正好对应Flash CS滤镜面板的几个效果,使用比较简单,详细可以参考这个: http://blog.sina.com.cn/s/blog_3...

    用户1258909
  • 从小白到独立开发Android和IOS两种平台app过程与总结

    16年上半年在帮老师,帮外面随便做点东西以便得到些生活费养活自己。下半年去外面公司待了一段时间,然后选择回来帮自己做个东西,历时三个月,独自完成安卓及IOS版本...

    用户2802329
  • 通过代码去执行testNG用例

    背景 用testNG去编写的测试用例,通过@Test去执行用例,一般本地都是通过IDE去执行相应的方法,持续集成的话,都是通过maven来执行或指定testNG...

    千往
  • 系统架构师论文-论软件需求分析方法和工具的选用

    本文通过一个集成电路设计有关的软件项目,讨论了该项目的主要特点和本人所担任的工作,着重讨论了在项目需求分析过程中采用的具体方法和工具以及选用的理由。 由于项目...

    cwl_java
  • 腾讯旅游与马蜂窝联合发布《2019清明小长假出游趋势报告》

    ? 扫描图中二维码查看《2019清明小长假出游趋势报告》。 ? ?

    腾讯文旅
  • 1. C语言的第一个程序

    (。・∀・)ノ゙嗨!大家好,我是呆博~很开心可以在这里给大家分享我的 C 语言学习笔记~

    谭庆波

扫码关注云+社区

领取腾讯云代金券