Raspberry Pi Desktop (for PC and Mac) で TensorFlow 1.12, Keras 2.2.4, OpenCV, Dlib, その他関連ソフトウェア環境を整える
Raspberry Pi Desktop (for PC and Mac) は,Debian 9 ベース.軽量である.
【目次】
- RaspDesktop のシステム更新
- Raspberry Pi で Berry Conda のインストール
- Git, cmake, wget, 7-Zip のインストール
- Python の仮想環境の作成(conda を使用)
- 新規作成された Python 環境を使いたいとき
- 新規された Python 環境で、パッケージのインストールの前準備を行う
- 新規作成された Python 環境に、TensorFlow, Keras, OpenCV, Spyder をインストール
- 確認のためKeras を使ってみる
- 新規作成された Python 環境に、numpy, scipy, h5py, sciklit-learn, scikit-image, matplotlib, seaborn, pandas, pillow, jupyter, pytest, docopt, pyyaml, cython, imutils, mtcnn その他種々のパッケージをインストール
- 新規作成された Python 環境に、Dlib をインストール
- 新規作成された Python 環境に、face_recognition, msgpack, geopandas をインストール
- (オプション)Raspberry Pi で TensorFlow をソースコードからビルドして、インストールする
- (オプション)Raspberry Pi で OpenCV をソースコードからビルドして、インストールする
【サイト内の関連ページ】
前準備
RaspDesktop のシステム更新
次のコマンドを実行.
sudo apt -y update
sudo apt -yV upgrade
sudo apt -yV dist-upgrade
sudo rpi-update
sudo apt -yV autoremove
sudo apt autoclean
sudo shutdown -r now
Python 開発環境と pip のインストール
- Python 開発環境と pip のインストール
sudo apt -y update sudo apt -y install python3-dev python3-pip python-dev python-pip
- pip の更新
cd /tmp sudo rm -f get-pip.py curl -O https://bootstrap.pypa.io/get-pip.py sudo rm -rf ~/.cache/pip mkdir ~/.cache/pip sudo python3 get-pip.py sudo python get-pip.py
Git, cmake, wget, p7zip-full のインストール
- 端末を開く
- 次のコマンドを実行する.
sudo apt -y update sudo apt -y install git cmake cmake-curses-gui cmake-gui curl wget p7zip-full
64 ビット版のコンパイラとライブラリ類のインストール
TensorFlow, Keras のインストールで使いたいので。
sudo apt install gcc:amd64 g++:amd64 cpp:amd64 binutils:amd64 cpp-6:amd64 g++-6:amd64 gcc-6:amd64 linux-compiler-gcc-6-x86:amd64 linux-headers-4.9.0-8-amd64:amd64 linux-headers-amd64:amd64 lxrandr:amd64 x11-xserver-utils:amd64 make:amd64
Anaconda3 のダウンロードとインストール
ダウンロードとインストールの手順
- ダウンロード用Webページを開く
- Linux 版が欲しいので,「Linux」をクリック
- 32ビット版をインストールしたい.「32-Bit Installer」をクリック
- ファイルのダウンロードが始まる.
- ダウンロードした .sh ファイルを実行.
- ライセンス条項を確認してください、というメッセージが出る.「Enterキー」.
- ライセンス条項の画面.「yes」,「Enterキー」.
ライセンス条項に同意できないときは、進んではいけない.
- インストールディレクトリは既定(デフォルト)のままでよい.「Enterキー」.
- インストールが始まる.しばらく待つ
- .bashrc の PATH にインストールディレクトリの設定を加えてよいかの確認.「yes」, 「Enterキー」.
* このとき,システム環境変数 Pathに,自動で追加される
- VSCode をインストールするか.
Yes または No
インストール後の設定と確認
- 新しく、 端末を開く
- パスが通っていることの確認
次のコマンドを実行.
* エラーメッセージが出なければ OK.
which python which ipython which pip which conda
- python のバージョンの確認
python --version
- conda の動作確認
* エラーメッセージが出なければ OK.
conda info
- Anaconda3 の conda パッケージの更新、古い conda パッケージファイルの削除
「conda config --remove channels conda-forge」は,conda のチャンネルに「conda-forge」が入っていたら削除する操作.「CondaKeyError: 'channels' 'conda-forge' ...」というエラーメッセージは無視してよい.
conda config --remove channels conda-forge conda upgrade -y --all conda clean -y --packages
(以下省略) - Anaconda 3 配下の Python の pip の更新
cd /tmp rm get-pip.py curl -O https://bootstrap.pypa.io/get-pip.py python get-pip.py
- Anaconda3 の Python の numpy を確認
バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある.
python -c "import numpy; print( numpy.__version__ )"
Python の仮想環境の作成(conda を使用)
- 今から作成するPython の仮想環境の名前と、Pythonのバージョンを決めておく
- Python の仮想環境の名前: ai
- Pythonのバージョン: 3
- 端末を開く
- 前もって Python をインストールしておくことを作成する
次のコマンドを実行.
「Proceed ([y]/n) ?」 に対しては Enterキー
conda create -n ai python=3
- Python 環境が作成できたことを確認
conda info -e
これで、もとからの Python 環境と, 新規作成されたPython 環境(Python のバージョン 3.6,名前は ai)の共存できた。
新規作成された Python 環境を使いたいとき
- 端末を開く
- 端末で,次のコマンドを実行し,Python 環境(名前は ai)に切り替える
source activate ai
新規作成された Python 環境で、パッケージのインストールの前準備を行う
いま作成した Python の仮想環境で、パッケージの更新などの前準備を行う
- 端末を開く
- Python の仮想環境を有効にする
次のコマンドを実行.
* 「source activate ai 」は Python 環境(名前はai)を有効にするためのコマンド(各自の環境の名前にあわせること)
source activate ai
「Could not find conda environment: ai」というメッセージが出たときは、上の「Python の仮想環境の作成」を行う
- Anaconda3 の conda パッケージの更新、古い conda パッケージファイルの削除
「conda config --remove channels conda-forge」は,conda のチャンネルに「conda-forge」が入っていたら削除する操作.「CondaKeyError: 'channels' 'conda-forge' ...」というエラーメッセージは無視してよい.
conda config --remove channels conda-forge
conda upgrade -y --all
conda clean -y --packages
(以下省略) - conda の動作確認
エラーメッセージが出ないことを確認
conda info
新規作成された Python 環境に、TensorFlow, Keras, OpenCV, Spyder をインストール
Anaconda では,conda 形式の Python パッケージを、簡単に扱うことができる. Pythonパッケージ以外のソフトウェアをインストールすることもできる
- TensorFlow: ライブラリ。ニューラルネットワークや深層学習(ディープラーニング)に使用されることが多い。Kerasのバックエンドとして使用されることも多い。
- Keras: ニューラルネットワークに関する種々の機能を持つソフトウェア
- OpenCV: ライブラリ。コンピュータビジョン、機械学習等の機能を持つ
- Spyder: Python の開発環境
- 端末を開く
- いま作成した Python の仮想環境を有効にする
次のコマンドを実行.
source activate ai
- OpenCV, Spyder のインストール
時間がかかるので待つ
* 「conda install」は、パッケージをインストールするためのコマンド
conda install -y opencv conda install -y -c spyder-ide spyder
* Windows で、あるPython 環境(名前は aiとする)の spyder を使いたいとき:
- Windows のスタートメニューに「spyder (ai)」が増えるので、それを使う。あるいは
- コマンドプロンプトで「sourece activate ai」を実行したあとに「spyder」
- pip の更新
cd /tmp sudo rm -f get-pip.py curl -O https://bootstrap.pypa.io/get-pip.py python get-pip.py pip list
- Keras, TensorFlow の前提パッケージのインストール
conda install -y numpy wheel six h5py pyyaml scipy pylint sphinx chardet pyzmq pyflakes pygments cloudpickle jedi nbconvert psutil pycodestyle pickleshare numpydoc pip install --no-deps -U protobuf
- Keras, TensorFlow のインストール
pip install --no-deps -U tensorflow keras keras_applications keras_preprocessing plp list
- TensorFlow のバージョン確認
python -c "import tensorflow as tf; print( tf.__version__ )"
- Keras のバージョン確認
python -c "import keras; print( keras.__version__ )"
- OpenCV のバージョン確認
python -c "import cv2; print( cv2.__version__ )"
新規作成された Python 環境で、numpy, scipy, h5py, sciklit-learn, scikit-image, matplotlib, seaborn, pandas, pillow, jupyter, pytest, docopt, pyyaml, cython, imutils, mtcnn をインストール
Anaconda では,conda 形式の Python パッケージを、簡単に扱うことができる. Pythonパッケージ以外のソフトウェアをインストールすることもできる
- 端末を開く
- いま作成した Python の仮想環境を有効にする
次のコマンドを実行.
source activate ai
- numpy, scipy, h5py, sciklit-learn, scikit-image, matplotlib, seaborn, pandas, pillow, jupyter, pytest, docopt, pyyaml, cython のインストール
conda install -y numpy scipy h5py scikit-learn scikit-image matplotlib seaborn pandas pandasql pillow conda install -y jupyter pytest docopt pyyaml cython
(途中省略)
(以下省略) - imutils, mtcnn のインストール
* mtcnn については https://github.com/open-face/mtcnn
mkdir /usr/local sudo chown $USER /usr/local cd /usr/local rm -rf imutils rm -rf mtcnn
- imutils のバージョン確認
python -c "import imutils; print( imutils.__version__ )"
- mtcnn のバージョン確認
バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある.
python -c "import mtcnn; print( mtcnn.__version__ )"
- python-visualization/folium, DinoTools/python-overpy, ianare/exif-py, mapado/haversine, Turbo87/utm のインストール
mkdir /usr/local sudo chown $USER /usr/local cd /usr/local rm -rf folium rm -rf python-overpy rm -rf exif-py rm -rf haversine
cd /usr/local git clone https://github.com/python-visualization/folium cd folium python setup.py build python setup.py install cd /usr/local git clone https://github.com/DinoTools/python-overpy cd python-overpy python setup.py build python setup.py install cd /usr/local git clone https://github.com/ianare/exif-py cd exif-py python setup.py build python setup.py install cd /usr/local git clone https://github.com/mapado/haversine cd haversine python setup.py build python setup.py install cd /usr/local git clone https://github.com/Turbo87/utm cd utm python setup.py build python setup.py install
- その他、各種パッケージのインストール
* 下から必要なものを選んでインストール
conda install -y chainer conda install -y graphviz conda install -y pydot conda install -y yaml conda install -y flask conda install -y django conda install -y sympy conda install -y sqlite conda install -y redis conda install -y gensim conda install -y pylint conda install -y bz2file
新規作成された Python 環境で、Dlib のインストール(書きかけ)
- (オプション)OpenBLAS を使いたいときは、インストールしておく
Windows でのインストール手順は「OpenBLAS のインストール(ソースコードを使用)(clang, flang を利用)(Windows 上)」で説明している.
- 端末を開く
- インストールディレクトリを空にする
mkdir /usr/local sudo chown $USER /usr/local cd /usr/local rm -rf dlib
- (オプション)Anaconda をインストールしていて、Anaconda3 の Python 環境を有効にしたいときの操作
* Anaconda3 の Python 環境を有効にしたいときは、次のように操作する. 「activate ai 」は Python 環境(名前はai)を有効にするためのコマンド(各自の環境の名前にあわせること)
source activate ai
- Dlib Python パッケージのインストール
cd /usr/local git clone https://github.com/davisking/dlib cd dlib python setup.py build python setup.py install
新規作成された Python 環境で、face_recognition, msgpack, geopandas のインストール
前準備として, Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022)もしくはVisual Studio 2022 のインストールを終えておくこと.
- 端末を開く
- (オプション)Anaconda をインストールしていて、Anaconda3 の Python 環境を有効にしたいときの操作
* Anaconda3 の Python 環境を有効にしたいときは、次のように操作する. 「activate ai 」は Python 環境(名前はai)を有効にするためのコマンド(各自の環境の名前にあわせること)
source activate ai
- インストールディレクトリを空にする
mkdir /usr/local sudo chown $USER /usr/local cd /usr/local rm -rf face_recognition rm -rf msgpack rm -rf geopandas
- インストール
cd /usr/local git clone https://github.com/ageitgey/face_recognition cd face_recognition python setup.py build python setup.py install cd /usr/local git clone https://github.com/msgpack/msgpack-python cd msgpack-python python setup.py build python setup.py install cd /usr/local git clone https://github.com/geopandas/geopandas cd geopandas python setup.py build python setup.py install
確認のため Keras を使ってみる
- 次の画像を使うことにする
* 次のコマンドで、ダウンロードし、ImageMagick を使って画像表示してみる
cd /tmp wget https://www.kkaneko.jp/tools/raspbian/124.png display 124.png
- ディープラーニングで、画像認識してみる
新しい端末を開く
- Python のプログラムを実行したいので、まず、端末で「python」を実行
source activate ai python
- 次のプログラムをコピー&ペースト
ここで、エラーメッセージが出たら教えてください
from tensorflow.keras.preprocessing import image from keras.applications.inception_v3 import preprocess_input, decode_predictions, InceptionV3 import numpy as np model = InceptionV3(weights='imagenet') img_path = '/tmp/124.png' img = image.load_img(img_path, target_size=(299, 299)) x = image.img_to_array(img) x = np.expand_dims(x, axis=0) x = preprocess_input(x) preds = model.predict(x) print('Predicted:') for p in decode_predictions(preds, top=5)[0]: print("Score {}, Label {}".format(p[2], p[1]))
- exit() で終わる