トップページ -> 最新情報技術の実習と研究ツール -> Linux のインストール,設定,運用保守,便利な使い方 -> Ubuntu で、Python, virtualenv, virtualenvwrapper, Keras, TensorFlow, OpenCV, Dlib その他 Python パッケージと各種ツール (git, cmake, wget, p7zip など)のインストール
[サイトマップへ]  

Ubuntu で、Python, virtualenv, virtualenvwrapper, Keras, TensorFlow, OpenCV, Dlib その他 Python パッケージと各種ツール (git, cmake, wget, p7zip など)のインストール

金子邦彦研究室: データベース、人工知能(AI)、データサイエンスの融合により不可能を可能にする

ユースケース:Python で人工知能、データサイエンス、コンピュータビジョンを行いたい.顔検出や顔識別も行いたい .

※ Ubuntu で Python 処理系のインストール + TensorFlow, Keras, OpenCVを整えたいときは、このWebページのはじめから「TensorFlow, Keras, OpenCV のインストールまでを行う。 顔検出や顔識別で Dlib を使いたいときは、最後まで行う。

※ Windows を使いたいときは、 別のページで説明しています。

目次

  1. 前準備
  2. Ubuntu で Python ヘッダファイルとライブラリ、pip のインストール
  3. (オプション)virtualenv, virtualenv wrapper のインストールと設定
  4. 主要パッケージ(numpy, scipy, h5py, sciklit-learn, scikit-image, matplotlib, seaborn, pandas, pillow, jupyter, pytest, docopt, pyyaml, cython)のインストール
  5. TensorFlow, Keras, OpenCV のインストール
  6. 確認のためKeras を使ってみる
  7. Ubuntu で git, cmake, wget, p7zip のインストール
  8. imutils, mtcnn その他のパッケージのインストール
  9. Dlib のインストール
  10. face_recognition, msgpack, geopandas のインストール
  11. virtualenv を用いて Python バージョン3 環境の新規作成
  12. virtualenv を用いて Python バージョン2 環境の新規作成
  13. virtualenv, virtualenv wrapper の確認
  14. spyder 開発版 のインストール
  15. virtualenv の Python バージョン 3 環境でSWIG を使ってみる

サイト内の関連 Web ページ:


前準備

Ubuntu のシステム更新

次のコマンドを実行.

sudo apt update
sudo apt -yV upgrade
sudo apt -yV dist-upgrade
sudo apt -yV autoremove
sudo apt autoclean
sudo shutdown -r now

Ubuntu で Python ヘッダファイルとライブラリ、pip のインストール

  1. 端末を開く

  2. Python ヘッダファイルとライブラリ、pip のインストール
    sudo apt -yV install python3-dev python3-pip python-dev python-pip 
    

  3. pip の更新
    cd /tmp
    sudo rm -f get-pip.py
    wget 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
    sudo pip3 install --ignore-installed --upgrade virtualenvwrapper
    sudo pip install --ignore-installed --upgrade virtualenvwrapper
    

  4. pip3, pip の動作確認

    ※ エラーメッセージが出ないことを確認.

    pip3 list
    pip list
    

(オプション)Ubuntu で virtualenv, virtualenv wrapper のインストールと設定

  1. 端末を開く

  2. virtualenv, virtualenv wrapper のインストール
    sudo pip install -U virtualenv virtualenvwrapper
    sudo pip3 install -U virtualenv virtualenvwrapper
    

  3. virtualenv, virtualenv wrapper の設定

    エラーメッセージが出ていないことを確認

    export WORKON_HOME=$HOME/.virtualenvs
    export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
    source /usr/local/bin/virtualenvwrapper.sh
    touch ~/.profile
    echo -e "\n# virtualenv and virtualenvwrapper" >> ~/.profile
    echo "export WORKON_HOME=$HOME/.virtualenvs" >> ~/.profile
    echo "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3" >> ~/.profile
    echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.profile
    source ~/.profile
    

    virtualenvwrapper の使い方

    • mkvirtualenv <Python仮想環境名>: Python仮想環境の新規作成
    • workon: Python仮想環境の一覧表示
    • workon <Python仮想環境名>: Python仮想環境の有効化
    • deactivate: いま有効化されているPython仮想環境の無効化

主要パッケージ(numpy, scipy, h5py, sciklit-learn, scikit-image, matplotlib, seaborn, pandas, pillow, jupyter, pytest, docopt, pyyaml, cython)のインストール

  1. 端末を開く

  2. (オプション)もし、Python 仮想環境を新規作成し、そこにインストールしたいときは、そのためのコマンドを実行

    ※ Python 仮想環境を新規作成し、そこにインストールしたいときに限る

    source /usr/local/bin/virtualenvwrapper.sh
    mkvirtualenv --python=/usr/bin/python3 ai
    lsvirtualenv 
    workon ai 
    

  3. numpy, scipy, h5py, sciklit-learn, scikit-image, matplotlib, seaborn, pandas, pillow, jupyter, pytest, docopt, pyyaml, cython のインストール
    sudo pip3 install -U numpy scipy h5py scikit-learn scikit-image matplotlib seaborn pandas pillow
    sudo pip3 install -U jupyter pytest docopt pyyaml cython
    

TensorFlow, Keras, OpenCV のインストール

  1. 端末を開く

  2. (オプション)もし、Python 仮想環境にインストールしていて、そこにインストールしたいとき、それを有効化する

    ※ Python 仮想環境を有効化したいときに限る

    source /usr/local/bin/virtualenvwrapper.sh
    workon ai 
    

  3. TensorFlow 1.13.1, Keras 2.24, OpenCV のインストール

    時間がかかるので待つ

    ※ 「pip3 install」は、パッケージをインストールするためのコマンド

    sudo pip3 install -U tensorflow keras opencv-python
    

  4. Python の numpy パッケージがインストールできたことの確認

    ※ バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある

    python3 -c "import numpy; print( numpy.__version__ )"
    

  5. TensorFlow のバージョン確認

    ※ バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある

    python3 -c "import tensorflow as tf; print( tf.__version__ )"
    

  6. keras のバージョン確認

    ※ バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある

    python3 -c "import keras; print( keras.__version__ )"
    

  7. インストール済みパッケージの表示

    pip3 list 
    

確認のためKeras を使ってみる

  1. 端末を開く

  2. (オプション)もし、Python 仮想環境にインストールしていたときは、それを有効化する

    ※ Python 仮想環境にインストールしたときに限る

    source /usr/local/bin/virtualenvwrapper.sh
    workon ai 
    

  3. 前準備として h5py, pillow のインストール

    sudo pip3 install -U h5py pillow
    

  4. この Web ページでは、次の画像を使うことにする

    478.png のようなファイル名で保存しておく

  5. Python のプログラムを実行したいので、まず、端末で「python」を実行
    cd <画像を置いたディレクトリ>
    python
    

  6. 次のプログラムをコピー&ペースト

    VGG を使うプログラム。Kerasのサイトで公開されているものを少し書き換えて使用。

    import h5py
    from keras.preprocessing import image
    from keras.applications.vgg16 import VGG16
    from keras.applications.vgg16 import preprocess_input
    import numpy as np
    
    m = VGG16(weights='imagenet', include_top=False)
    
    img_path = '478.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)
    
    features = m.predict(x)
    print(features) 
    

    InceptionV3 を使うプログラム。Kerasのサイトで公開されているものを少し書き換えて使用。

    import h5py
    from keras.preprocessing import image
    from keras.applications.inception_v3 import preprocess_input, decode_predictions, InceptionV3
    import numpy as np
    
    m = InceptionV3(weights='imagenet')
    
    img_path = '478.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 = m.predict(x)
    
    print('Predicted:')
    for p in decode_predictions(preds, top=5)[0]:
        print("Score {}, Label {}".format(p[2], p[1]))
    

  7. exit() で終わる

Ubuntu で git, cmake, wget, p7zip のインストール

  1. 端末を開く

  2. 次のコマンドを実行.
    sudo apt -yV install git
    sudo apt -yV install cmake
    sudo apt -yV install wget
    sudo apt -yV install p7zip
    

imutils, mtcnn その他のパッケージのインストール

  1. 端末を開く

  2. (オプション)もし、Python 仮想環境にインストールしていて、そこにインストールしたいとき、それを有効化する

    ※ Python 仮想環境を有効化したいときに限る

    source /usr/local/bin/virtualenvwrapper.sh
    workon ai 
    

  3. imutils, mtcnn のインストール

    ※ mtcnn については https://github.com/open-face/mtcnn

    sudo mkdir /usr/local/pytools
    cd /usr/local/pytools
    sudo rm -rf imutils
    sudo rm -rf mtcnn
    

    cd /usr/local/pytools
    sudo git clone https://github.com/jrosebr1/imutils 
    cd imutils
    sudo python3 setup.py build
    sudo python3 setup.py install 
    
    cd /usr/local/pytools
    sudo git clone https://github.com/ipazc/mtcnn 
    cd mtcnn
    sudo python3 setup.py build
    sudo python3 setup.py install 
    

  4. imutils のバージョン確認

    python -c "import imutils; print( imutils.__version__ )"
    

  5. mtcnn のバージョン確認

    ※ バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある

    python -c "import mtcnn; print( mtcnn.__version__ )"
    

  6. python-visualization/folium, DinoTools/python-overpy, ianare/exif-py, mapado/haversine, Turbo87/utm のインストール
    sudo mkdir /usr/local/pytools
    cd /usr/local/pytools
    sudo rm -rf folium
    sudo rm -rf python-overpy
    sudo rm -rf exif-py
    sudo rm -rf haversine
    

    cd /usr/local/pytools
    sudo git clone https://github.com/python-visualization/folium 
    cd folium
    sudo python3 setup.py build
    sudo python3 setup.py install 
    
    cd /usr/local/pytools
    sudo git clone https://github.com/DinoTools/python-overpy 
    cd python-overpy
    sudo python3 setup.py build
    sudo python3 setup.py install 
    
    cd /usr/local/pytools
    sudo git clone https://github.com/ianare/exif-py 
    cd exif-py
    sudo python3 setup.py build
    sudo python3 setup.py install 
    
    cd /usr/local/pytools
    sudo git clone https://github.com/mapado/haversine 
    cd haversine
    sudo python3 setup.py build
    sudo python3 setup.py install 
    
    cd /usr/local/pytools
    sudo git clone https://github.com/Turbo87/utm 
    cd utm
    sudo python3 setup.py build
    sudo python3 setup.py install 
    

    ※ 下から必要なものを選んでインストール

    sudo pip3 install -U chainer
    sudo pip3 install -U graphviz
    sudo pip3 install -U pydot
    sudo pip3 install -U yaml
    sudo pip3 install -U flask
    sudo pip3 install -U django
    sudo pip3 install -U sympy
    sudo pip3 install -U sqlite
    sudo pip3 install -U redis
    sudo pip3 install -U gensim
    sudo pip3 install -U pylint
    sudo pip3 install -U bz2file
    

Dlib のインストール

  1. (オプション)OpenBLAS を使いたいときは、インストールしておく
    sudo apt install openblas-dev
    

  2. 端末を開く

  3. (オプション)もし、Python 仮想環境にインストールしていて、そこにインストールしたいとき、それを有効化する

    ※ Python 仮想環境を有効化したいときに限る

    source /usr/local/bin/virtualenvwrapper.sh
    workon ai 
    

  4. インストールディレクトリを空にする
    sudo mkdir /usr/local/pytools
    cd /usr/local/pytools
    sudo rm -rf dlib
    

  5. Dlib Python パッケージのインストール

    cd /usr/local/pytools
    sudo git clone https://github.com/davisking/dlib
    cd dlib
    sudo python3 setup.py build
    sudo python3 setup.py install 
    

face_recognition, msgpack, geopandas のインストール

  1. 端末を開く

  2. (オプション)もし、Python 仮想環境にインストールしていて、そこにインストールしたいとき、それを有効化する

    ※ Python 仮想環境を有効化したいときに限る

    source /usr/local/bin/virtualenvwrapper.sh
    workon ai 
    

  3. インストールディレクトリを空にする
    sudo mkdir /usr/local/pytools
    cd /usr/local/pytools
    sudo rm -rf face_recognition
    sudo rm -rf msgpack
    sudo rm -rf geopandas
    

  4. インストール

    cd /usr/local/pytools
    sudo git clone https://github.com/ageitgey/face_recognition
    cd face_recognition
    sudo python3 setup.py build
    sudo python3 setup.py install 
    
    cd /usr/local/pytools
    sudo git clone https://github.com/msgpack/msgpack-python 
    cd msgpack-python
    sudo python3 setup.py build
    sudo python3 setup.py install 
    
    cd /usr/local/pytools
    sudo git clone https://github.com/geopandas/geopandas 
    cd geopandas
    sudo python3 setup.py build
    sudo python3 setup.py install 
    

virtualenv を用いて Python バージョン3 環境の新規作成

  1. 新しく端末を開く

  2. システムの python3 のバージョンの確認
    which python3
    python3 --version 
    

    Ubuntu 18.04 での実行結果の例

  3. Python バージョン3 環境の新規作成

    名前: py36

    使用する Python: python3

    source /usr/local/bin/virtualenvwrapper.sh
    mkvirtualenv --python=/usr/bin/python3 py36
    

  4. 確認
    lsvirtualenv 
    

    py36」という新しい Python 環境が作成されたことが分かる

  5. 確認 の続き

    新しく端末を開き、次のコマンドを実行.

    「workon py36」は、py36 の Python 環境の使用を開始するためのコマンド. エラーメッセージが出なければ OK.

    source /usr/local/bin/virtualenvwrapper.sh
    workon py36
    which python
    which pip
    

  6. 試しに、py36 の Python 環境の Python を使ってみる
    source /usr/local/bin/virtualenvwrapper.sh
    workon py36
    python 
    print(1 + 2)
    exit()
    


virtualenv を用いて Python バージョン 2 環境の新規作成

  1. 新しく端末を開く

  2. システムの python のバージョンの確認
    which python
    python --version 
    

    Ubuntu 18.04 での実行結果の例

  3. Python 環境の新規作成

    source /usr/local/bin/virtualenvwrapper.sh
    mkvirtualenv --python=/usr/bin/python py27
    

  4. 確認
    lsvirtualenv 
    

    py27」という新しい Python 環境が作成されたことが分かる

  5. 確認 の続き

    新しく端末を開き、次のコマンドを実行.

    「workon py27」は、py27 の Python 環境の使用を開始するためのコマンド. エラーメッセージが出なければ OK.

    source /usr/local/bin/virtualenvwrapper.sh
    workon py27
    which python
    which pip
    

  6. 試しに、py27 の Python 環境の Python を使ってみる
    source /usr/local/bin/virtualenvwrapper.sh
    workon py27
    python 
    print(1 + 2)
    exit()
    


virtualenv, virtualenv wrapper の確認


spyder 開発版 のインストール

https://github.com/spyder-ide/spyder に記載の手順に従う

  • (オプション)もし、Python 仮想環境にインストールしていて、そこにインストールしたいとき、それを有効化する

    ※ Python 仮想環境を有効化したいときに限る

    source /usr/local/bin/virtualenvwrapper.sh
    workon ai 
    

  • インストール操作
    sudo pip3 install -U PyQT5
    sudo pip3 install -U git+https://github.com/spyder-ide/spyder-kernels
    sudo pip3 install -U git+https://github.com/spyder-ide/qtpy
    cd /tmp
    sudo git clone https://github.com/spyder-ide/spyder.git
    cd spyder 
    git pull 
    python bootstrap.py
    sudo python3 setup.py install 
    

    「spyder3」で、試しに起動してみる.


    virtualenv の Python バージョン 3 環境で SWIG を使ってみる

    1. SWIG のインストール (Install swig)
      sudo apt -yV install swig
      

    2. プログラムファイルの作成

      http://www.swig.org/Doc1.3/Python.html#Python_nn6 に記載のサンプルプログラム

      • example.i
        %module example
        
        %{
        #define SWIG_FILE_WITH_INIT
        #include "example.h"
        %}
        
        int fact(int n);
        

      • example.c
        #include "example.h"
        
        int fact(int n) {
            if (n < 0){ /* This should probably return an error, but this is simpler */
                return 0;
            }
            if (n == 0) {
                return 1;
            }
            else {
                /* testing for overflow would be a good idea here */
                return n * fact(n-1);
            }
        }
        

      • example.h
        int fact(int n);
        

      • setup.py
        #!/usr/bin/env python
        
        """
        setup.py file for SWIG example
        """
        
        from distutils.core import setup, Extension
        
        
        example_module = Extension('_example',
                                   sources=['example_wrap.c', 'example.c'],
                                   )
        
        setup (name = 'example',
               version = '0.1',
               author      = "SWIG Docs",
               description = """Simple swig example from docs""",
               ext_modules = [example_module],
               py_modules = ["example"],
               )
        

    3. 新しく端末を開く

    4. プログラムファイルから、Python で実行可能にするためのファイルを作る

      端末で次のように操作

      source /usr/local/bin/virtualenvwrapper.sh
      workon py36
      swig -python example.i
      sudo python3 setup.py build_ext --inplace
      ls -la example.* build 
      

    5. python 処理系を起動し、次のプログラムを試してみる
      import example
      example.fact(4)
      exit()