Linux · OpenCV · Python · Ubuntu · Windows

Windows Subsystem for Linux(WSL)にOpenCV3.2とPython3.5をインストール(その2)

前回は、WSLのインストールを行いましたので、今回はOpenCVとPython3.5をインストールします。Python3.5はパッケージからインストールしますが、OpneCV3.2はソースコードをビルドして構築します。

      1. はじめにシステム環境をアップデートします。少し時間がかかります。
        $ sudo apt-get update ; sudo apt-get upgrade
        [sudo] password for ubuntu:
        
      2. ビルドに必要なパッケージをインストールします。
        $ sudo apt-get install build-essential git cmake \
            pkg-config libjpeg-dev libtiff5-dev libjasper-dev \
            libpng12-dev libavcodec-dev libavformat-dev \
            libswscale-dev libv4l-dev libgtk2.0-dev \
            libatlas-base-dev gfortran
        
      3. Python3関連をセットアップします。
        $ sudo apt-get install python3-dev python3-pip
        $ sudo pip3 install numpy
        
      4. opencv,opencv_contribをダウンロードします。
        $ cd ~
        $ git clone https://github.com/Itseez/opencv.git
        $ cd opencv
        $ git checkout 3.2.0
        $ cd ..
        $ git clone https://github.com/Itseez/opencv_contrib.git
        $ cd opencv_contrib/
        $ git checkout 3.2.0
        $ cd ..
        
      5. cmakeします。
        $ cd opencv
        $ mkdir build
        $ cd build
        $ cmake -D CMAKE_BUILD_TYPE=RELEASE \
            -D CMAKE_INSTALL_PREFIX=/usr/local \
            -D INSTALL_PYTHON_EXAMPLES=ON \
            -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
            -D BUILD_EXAMPLES=ON ..
        
      6. makeします。
        $ make
        $ sudo make install
        $ sudo ldconfig
        
      7. 今後実行するときに、以下のようなエラーが発生し動きませんので、ここで対応しておきます。
        cannot enable executable stack as shared object requires: Invalid argument
        

        execstackをインストールして実行します。

        $ sudo apt-get install execstack
        $ sudo /usr/sbin/execstack -c /usr/local/lib/libopencv_*
        
      8. 正常にインストールされているか、バージョンを確認します。
        • pythonのバージョン確認
          $ python3 -V
          Python 3.5.2
          
        • OpenCVのバージョン確認
          OpenCVは、pythonのコードを使ってバージョンを取得します。
          ファイル名を”version.py”として下記2行のファイルを作成し実行します。
          vi ~/version.py

          import cv2
          print(cv2.__version__)
          
          $ python3 ~/version.py
          3.2.0
          

         

      9. 動作確認用にサンプルプログラムを用意します。
        出力先に、Windowsのデスクトップを指定してみました。25行目の「*****」はご利用のWindowsユーザ名を指定してください。vi ~/example.py

        #coding: utf-8
        
        import cv2
        
        import numpy as np
        
        faceCascade = cv2.CascadeClassifier('/home/ubuntu/opencv/data/haarcascades/haarcascade_frontalface_default.xml')
        
        img = cv2.imread('/home/ubuntu/opencv/samples/data/lena.jpg', cv2.IMREAD_COLOR)
        
        gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
        
        face = faceCascade.detectMultiScale(gray, 1.1, 3)
        
        if len(face) > 0:
        
          for rect in face:
        
            cv2.rectangle(img, tuple(rect[0:2]), tuple(rect[0:2]+rect[2:4]), (0, 0,255), thickness=2)
        
        else:
        
          print ("no face")
        
        cv2.imwrite('/mnt/c/Users/*****/Desktop/detected.jpg', img)
        
      10. 実行
        $ python3 ~/sample.py
        
      11. 実行結果
        正常に動作していれば、WindowsのデスクトップにLenaさんが表示されているはずです。lena
      12. 予定したところまで確認できたので、完了とします。
        今回触ってみてた感想は、こんなに簡単にLinuxが動かてしまうのか・・・という驚きでした。Windowsアプリとして動作するので、インストールも削除も簡単です。不要になったら削除すればよいのはすごくよいことだと思います。
Linux · OpenCV · Python · Ubuntu · Windows

Windows Subsystem for Linux(WSL)にOpenCV3.2とPython3.5をインストール(その1)

2017 年 10 月 17 日にリリースされた Windows 10 Fall Creators Update にて、Windows Subsystem for Linux(WSL)が正式にリリースされました。

これにより、Windows10でUbuntuが正式に動くようになりましたので、試しにOpenCV3.2、Python3.5をインストールしてみたいと思います。

対象OS:Windows 10 home (Fall Creators Update済み)

    1. コントロールパネルを開きます。
      コルタナに「コントロールパネル」を記入すると、検索結果に表示されますので、それをクリックします。
      OpenCV3.2-00
    2. プログラムをクリックします
      図1
    3. プログラムと機能の下の「Windowsの機能の有効化または無効化」をクリックします。
      図2
    4.  「Windows の機能の有効化または無効化」で「Windows Subsystem for Linux」にチェックして「OK」をクリックします。。
      名称未設定5
    5. 続いてMicrosoft StoreでUbuntuをダウンロードします。
      Windowボタンをクリックし、メニューから「Microsoft Store」をクリックします。
      名称未設定2
    6. Microsoft Storeで「Ubuntu」を検索し、Ubuntuをダウンロードします。
      ubuntu
    7. Ubuntuがダウンロードできました。起動してみます。
      図3-1
    8. Ubuntuを起動すると、新しいユーザ名とパスワードを聞いてくるので入力します。

      ここではユーザは、ubuntuにして、パスワードは適当に決めました。

      Enter new UNIX username: ubuntu
      Enter new UNIX password:
      Retype new UNIX password:
      
      passwd: password updated successfully
      Default UNIX user set to: ubuntu
      To run a command as administrator (user "root"), use "sudo <command></command>".
      See "man sudo_root" for details.
      
      ubuntu@*****:~$
      

       

    9. 無事ユーザが作られました。次回は、OpenCV3.2とPython 3.5をインストールします。