Raspberry PiのPythonライブラリはpipよりapt-getで入れるのが断然早い

Raspberry PiのPythonライブラリに関して

 Twitterでつぶやいたら、意外に知らない人が多そうだったので、自分へのメモも兼ねて記事にしておきます。

 Raspberry PiのPythonライブラリは、pipで入れる方法とapt-getで入れる方法の2つあって、apt-getで入れる方が断然早いです。pipだとビルドから始まってしまうことが多いので、非常に時間がかかるんですよね。詳しい理由はわかりませんが、Armマイコンだからなのだと思います(多分、単純にpipのバイナリパッケージを用意してくれる人が少ない)。

 Python2、Python3それぞれで説明します。

Python2でのapt-getで入るPythonライブラリ

 よく入れるもので、時間がかかるものです。

 Numpy、PIL、Pandas、Matplotlibは、それぞれ以下のコマンドの上から順に対応しています。

$ sudo apt-get install python-numpy
$ sudo apt-get install python-imaging
$ sudo apt-get install python-pandas
$ sudo apt-get install python-matplotlib

 Open CVは、以下2行です。

$ sudo apt-get install libopencv-dev
$ sudo apt-get install python-opencv

Python3でのapt-getで入るPythonライブラリ

 Python3の場合は、以下です。

 Numpy、PIL、Pandas、Matplotlibは以下です。

$ sudo apt-get install python3-numpy
$ sudo apt-get install python3-imaging
$ sudo apt-get install python3-pandas
$ sudo apt-get install python3-matplotlib

 2019/10/22 追記:Raspbian BuslerではOpen CVは以下サイトを参考にインストールしました。

Raspberry Pi + Python 3 に OpenCV 3 をなるべく簡単にインストールする - Qiita

 簡単にセットアップできるコマンドを用意しました。以下2行でセットアップできます。

$ wget https://raw.githubusercontent.com/karaage0703/raspberry-pi-setup/master/setup-opencv-raspbian-buster.sh
$ chmod 755 setup-opencv-raspbian-buster.sh
$ ./setup-opencv-raspbian-buster.sh

 他の方法としては、試してないですが以下も良さそうです。

ラズパイ3にOpenCV3/4を簡単に導入 - Qiita

 Raspbian Stretch世代では、以下コマンドでOpen CVがインストールできました(過去情報です)。

$ wget https://github.com/mt08xx/files/raw/master/opencv-rpi/libopencv3_3.4.0-20180115.1_armhf.deb
$ sudo apt install -y ./libopencv3_3.4.0-20180115.1_armhf.deb
$ sudo ldconfig

機械学習(ディープラーニング)をする場合のセットアップ

 単純にそれぞれのライブラリを使いたいだけなら、上記で良いのですが。機械学習、特にTensorFlowやKerasを使ったディープラーニングをしたい場合は、Numpy等のバージョンとの組み合わせによってはうまく動かなかったりするので注意が必要です。

 TensorFlow+Kerasの場合は、以下記事参照してセットアップ下さい。

 なるべくapt-getを使って、極力早くセットアップできるような手順になっています。OpenCVとかTensorFlowを1からビルドしようとすると数時間とか平気でかかるので、最新バージョンが必須のとき以外は、パッケージ版をインストールするのが吉です。

まとめ

 Raspberry PiでのPythonライブラリを手軽にいれる方法を紹介してみました。こういう、地味に初心者には気づかない罠みたいなので嫌になっちゃうこと多いですよね。少しでも知見が多くの人の役に立てば幸いです。

関連記事

変更履歴

  • 2020/01/14 ディープラーニングのセットアップに関する記事へのリンク差し替え
  • 2019/10/22 Raspbain BuslerでのOpen CVのインストール方法を修正