忘備録-備忘録

技術的な備忘録

TensorFlowインストール

2020-01-10 22:26:53 | raspberry ...
Raspberry piにTensorFlowをインストールしたときのメモです。

ハードウェア
Raspberry pi 4 4GB

環境確認
pi@raspberrypi:~/work $ python3 -V
Python 3.7.3
pi@raspberrypi:~/work $ pip3 -V
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)

インストール
pi@raspberrypi:~/work $ sudo apt install libatlas-base-dev
pi@raspberrypi:~/work $ pip3 install tensorflow
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting tensorflow
   Downloading https://www.piwheels.org/simple/tensorflow/tensorflow-1.14.0-cp37-none-linux_armv7l.whl (79.6MB)
     55% |█████████████████▉               | 44.3MB 4.6MB/s eta 0:00:08
THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE. If you have updated the package versions, please update the hashes. Otherwise, examine the package contents carefully; someone may have tampered with them.
     tensorflow from https://www.piwheels.org/simple/tensorflow/tensorflow-1.14.0-cp37-none-linux_armv7l.whl#sha256=d4b1c2eda7a46e00e5091c077958c1bc116fc2be6c5ecb870a613edac2a95e74:
         Expected sha256 d4b1c2eda7a46e00e5091c077958c1bc116fc2be6c5ecb870a613edac2a95e74
              Got        23acc899ae0ac258d239c8a100c884763bbdbb613b6ddb516c2305f0a7c78924

ダウンロードエラーでインストールできなかったので、直接ダウンロードしてインストールしました。
pi@raspberrypi:~/work $ wget https://www.piwheels.org/simple/tensorflow/tensorflow-1.14.0-cp37-none-linux_armv7l.whl
pi@raspberrypi:~/work $ pip3 install tensorflow-1.14.0-cp37-none-linux_armv7l.whl


動作チェック
下記のtest.pyファイルを作成します。
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

実行します。
pi@raspberrypi:~/work $ python3 test.py 
2020-01-10 10:15:57.796165: E tensorflow/core/platform/hadoop/hadoop_file_system.cc:132] HadoopFileSystem load error: libhdfs.so: cannot open shared object file: No such file or directory
WARNING:tensorflow:From test.py:3: The name tf.Session is deprecated. Please use tf.compat.v1.Session instead.

B’Hello, TensorFlow!’

エラーメッセージは表示されるが動作はしているようです。エラーメッセージを表示させないようにするにはhadoopをインストールする必要があるらしいことがわかりました。

画像の判定(サンプルプログラム)
classify_image.pyを
https://github.com/tensorflow/models/blob/master/tutorials/image/imagenet/classify_image.py
からダウンロードします。実行すると次のようになります。
pi@raspberrypi:~/work $ python3 classify_image.py 2> /dev/null
giant panda, panda, panda bear, coon bear, Ailuropoda melanoleuca (score = 0.89107)
indri, indris, Indri indri, Indri brevicaudatus (score = 0.00779)
lesser panda, red panda, panda, bear cat, cat bear, Ailurus fulgens (score = 0.00296)
custard apple (score = 0.00147)
earthstar (score = 0.00117)

つぎに動物(ここでは猫)の写っている画像を用意して実行します。
pi@raspberrypi:~/work $ python3 classify_image.py --image_file neko.jpg 2> /dev/null
tabby, tabby cat (score = 0.48554)
tiger cat (score = 0.19503)
Egyptian cat (score = 0.10221)
lynx, catamount (score = 0.03373)
French bulldog (score = 0.00182)

動作しているようです。

参考


最新の画像もっと見る

コメントを投稿