开始使用tensorflow和raspberry pi进行图像识别

想掌握图像识别吗?多亏了Tensorflow和覆盆子皮,你可以马上开始。...

TensorFlow是谷歌的神经网络库。鉴于机器学习是目前最热门的事情,谷歌在这项新技术中处于领先地位也不足为奇。

image-recognition-raspi-tensorflow

在本文中,您将学习如何在Raspberry Pi上安装TensorFlow,并在预先训练的神经网络上运行简单的图像分类。

入门

要开始使用图像识别,您需要一个Raspberry Pi(任何型号都可以)和一个带有Raspbian Stretch(9.0+)操作系统的SD卡(如果您是Raspberry Pi的新手,请使用我们的安装指南)。

启动Pi并打开终端窗口。确保Pi是最新的,并检查Python版本。

sudo apt-get updatepython --versionpython3 --version

在本教程中,您可以同时使用python2.7或python3.4+。这个例子是针对python3的。对于Python2.7,在本教程中用Python替换Python3,用pip替换pip3。

Pip是Python的包管理器,通常作为标准安装在Linux发行版上。

如果您发现没有,请按照本文中的install for Linux说明进行安装。

安装tensorflow

安装TensorFlow过去是一个非常令人沮丧的过程,但是最近的更新使它变得非常简单。虽然您可以在没有任何先前知识的情况下遵循本教程,但在尝试之前,可能需要了解机器学习的基本知识。

在安装TensorFlow之前,请先安装Atlas库。

sudo apt install libatlas-base-dev

完成后,通过pip3安装TensorFlow

pip3 install --user tensorflow

这将为登录用户安装TensorFlow。如果您喜欢使用虚拟环境,请在此处修改代码以反映这一点。

测试张量流

一旦安装好,您就可以测试它是否与TensorFlow相当于一个Hello,world!

从命令行使用nano或vim创建一个新的Python脚本(如果您不确定要使用哪一个,它们都有优点),并将其命名为易于记住的名称。

sudo nano tftest.py

输入此代码,由Google提供,用于测试TensorFlow:

import tensorflow as tfhello = tf.c***tant('Hello, TensorFlow!')sess = tf.Session()print(sess.run(hello))

如果您使用的是nano,请按Ctrl+X退出,并在提示时键入Y保存文件。

从终端运行代码:

python3 tftest.py

你应该看到“你好,TensorFlow”打印出来。

如果您运行的是python3.5,则会收到几个运行时警告。官方的TensorFlow教程承认会发生这种情况,建议您忽略它。

TensorFlow and Python3.5 - Ignorable error

真管用!现在做一些有趣的关于张量流的事情。

安装图像分类器

在终端中,在主目录中为项目创建一个目录并导航到其中。

mkdir tf1cd tf1

TensorFlow有一个git存储库,其中有一些示例模型可供尝试。将存储库克隆到新目录:

git clone https://github.com/tensorflow/models.git

您希望使用图像分类示例,可以在模型/教程/图像/imagenet中找到。立即导航到该文件夹:

cd models/tutorials/image/imagenet

标准图像分类脚本与提供的熊猫图像一起运行:

Tiny TensorFlow Panda

要使用提供的panda图像运行标准图像分类器,请输入:

python3 classify_image.py

这将熊猫的图像输入到神经网络中,神经网络返回对图像内容的猜测,并给出其确定程度的值。

TensorFlow Panda Classifying Output

如输出图像所示,神经网络猜测正确,几乎有90%的把握。它还认为图片中可能包含一个奶油冻苹果,但它对这个答案不是很有信心。

使用自定义图像

熊猫图片证明了TensorFlow的工作原理,但考虑到该项目提供的例子,这也许并不奇怪。为了更好的测试,你可以把自己的图像交给神经网络进行分类。

在本例中,您将看到TensorFlow神经网络是否可以识别George。

George the Dinosaur

见见乔治。乔治是一只恐龙。要将此图像(此处以裁剪形式提供)输入神经网络,请在运行脚本时添加参数。

python3 classify_image.py --image_file=/home/pi/george.jpg

image_ufile=在脚本名称之后允许按路径添加任何图像。让我们看看这个神经网络是怎么做的。

TensorFlow Dinosaur Classification Output

不错!虽然乔治不是一只三角龙,但与其他选项相比,神经网络将这张图片归类为恐龙,具有高度的确定性。

张量流和覆盆子皮,准备好了

TensorFlow的这个基本实现已经有了潜力。这种物体识别是在Pi上进行的,不需要连接internet就可以正常工作。这意味着,随着一个覆盆子Pi相机模块和覆盆子Pi合适的电池单元,整个项目可以变得便携。

大多数教程只触及一个主题的表面,但它从来没有比在这种情况下更真实。机器学习是一门极其密集的学科。

让你的知识更进一步的一种方法是参加专门的课程。同时,用这些TensorFlow项目来实践机器学习和Raspberry Pi,你可以自己尝试。

  • 发表于 2021-03-18 14:49
  • 阅读 ( 219 )
  • 分类:IT

你可能感兴趣的文章

使用raspberry pi触摸屏的10个项目

与其将Raspberry Pi**电视,或通过SSH连接(或通过VNC或RDP进行远程桌面连接),您可能会选择购买Raspberry Pi触摸屏显示器。 ...

  • 发布于 2021-03-14 20:42
  • 阅读 ( 262 )

5种使用raspberry pi相机模块进行延时摄影的方法

树莓圆周率的轻,紧凑的特性意味着,当与流行的相机模块和便携式电池配对,它可以作为一个秘密相机使用。考虑到这一点,我最近拍摄了五个惊人的延时视频。你也可以。 ...

  • 发布于 2021-03-15 07:42
  • 阅读 ( 193 )

如何从usb启动raspberry pi 3

树莓圆周率是一个伟大的,多功能的一块工具包,项目的多样性,如经营一个媒体中心作为广播电台使用的能力。但它有一个明显的缺陷:无法从USB启动。 ...

  • 发布于 2021-03-17 12:42
  • 阅读 ( 241 )

通过引导分区破解树莓pi的6种方法

用覆盆子皮是非常有趣的。有这么多项目要选,50美元的电脑会让你忙上几个月。但是建立树莓皮皮可能会很费时。 ...

  • 发布于 2021-03-18 17:12
  • 阅读 ( 240 )

如何在raspberry pi上安装android

尽管Raspberry-Pi有很多操作系统可用,但您可能更愿意使用基于Linux的操作系统。但缺少触摸屏支持又如何呢? ...

  • 发布于 2021-03-18 23:47
  • 阅读 ( 314 )

如何将raspberry pi设置为windows瘦客户端

想在你的树莓皮上运行Windows吗? ...

  • 发布于 2021-03-21 09:29
  • 阅读 ( 682 )

如何在raspberry pi上安装操作系统

你的Raspberry Pi没有预装操作系统。 ...

  • 发布于 2021-03-21 13:44
  • 阅读 ( 255 )

谷歌珊瑚开发板比树莓皮好吗?

...发板是一个SBC,带有谷歌定制的Mendel操作系统,设计用于TensorFlow Lite神经网络。它还具有全面的通用输入/输出(GPIO)引脚。考虑到它的外观和大小,您可能认为这是另一个覆盆子皮克隆,但有一些重要的区别。 ...

  • 发布于 2021-03-21 16:34
  • 阅读 ( 438 )

5个树莓pi数字标牌项目,您应该尝试

需要在商店橱窗里播放视频吗?想向参观者展示你学校或教堂的设施吗?也许你想分享一段宣传视频?不管是哪种情况,你都不需要安装一台PC来播放,甚至不需要通过超长的HDMI电缆来传输。 ...

  • 发布于 2021-03-22 17:48
  • 阅读 ( 214 )

安装kodi将您的raspberry pi变成家庭媒体中心

你需要一个媒体中心解决方案,而且你听说过Kodi。它合适吗?你能把它安装在你的树莓皮上吗?一旦你做到了,你如何把它变成一个世界一流的家庭媒体中心?我们会教你怎么做。 ...

  • 发布于 2021-03-23 08:43
  • 阅读 ( 295 )