開発環境の構築(Linux) - hasegaw/IkaLog GitHub Wiki
Linux環境における IkaLog 開発環境の構築
インストール対象ディストリビューション
Ubuntu 14.04.3 LTS 64bit (Desktop版を利用)
動作確認済キャプチャカード
Blackmagic Design社製キャプチャカード(Decklink SDK経由)
各種パッケージの導入
パッケージのアップデート
$ sudo apt-get update
$ sudo apt-get -y upgrade
コンパイラや必要なライブラリ等を導入
$ sudo apt-get -y install build-essential cmake git \
libopencv-dev libgtk2.0-dev pkg-config \
python3-dev \
libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff4-dev \
libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine-dev \
gstreamer1.0-plugins-bad \
libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \
libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev \
libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev \
libopencore-amrnb-dev libopencore-amrwb-dev \
libtheora-dev libvorbis-dev libxvidcore-dev \
python-pip python-virtualenv virtualenvwrapper \
libblas-dev libatlas-dev libatlas-base-dev \
x264 v4l-utils unzip
virtualenv及びvirtualenvwrapperの設定を有効にするために.bashrcを読み込む
$ source .bashrc
ikalog用のvirtualenvを作成
$ mkvirtualenv -p /usr/bin/python3.4 ikalog
作成したvirtualenvが有効になるとプロンプトに(ikalog)が表示される
(ikalog)$
必要なpythonパッケージを導入
(ikalog)$ pip install Mako numpy protobuf MarkupSafe Pillow appdirs \
backports-abc chainer decorator filelock \
msgpack-python nose py pytest pytools \
six tornado certifi umsgpack urllib3
ikalog用のディレクトリを作成して移動
(ikalog)$ mkdir ~/ikalog
(ikalog)$ cd ~/ikalog
opencvのソースコードをgithubから取得(depthオプションで最新リビジョンだけを取得)
(ikalog)$ git clone --depth 1 https://github.com/Itseez/opencv.git
(ikalog)$ git clone --depth 1 https://github.com/Itseez/opencv_contrib.git
ikalogのソースコードをgithubから取得
(ikalog)$ git clone https://github.com/hasegaw/IkaLog.git
opencvのビルド
(ikalog)$ cd opencv
(ikalog)$ mkdir build
(ikalog)$ cd build
(ikalog)$ cmake -D CMAKE_INSTALL_PREFIX=/usr/local -D CMAKE_BUILD_TYPE=RELEASE \
-D OPENCV_EXTRA_MODULES_PATH=~/ikalog/opencv_contrib/modules \
-D BUILD_opencv_python3=ON -D BUILD_opencv_python2=OFF \
-D WITH_CUDA=ON -D BUILD_EXAMPLES=OFF ..
(ikalog)$ make -j 4
(ikalog)$ sudo make install
※注意 cmakeを再実行する場合は必ずキャッシュファイルを削除してください
キャッシュファイルがある状態ではPythonの認識に失敗するため、pythonモジュールが有効になりません
(ikalog)$ rm CMakeCache.txt
環境変数 PYTHONPATHの設定
(ikalog)$ export PYTHONPATH=/usr/local/lib/python3.4/site-packages:$PYTHONPATH
永続化する場合は .bashrc 等に追記してください
ikalogの設定ファイルの編集
(ikalog)$ cd ~/ikalog/IkaLog
(ikalog)$ cp IkaConfig.py.sample IkaConfig.py
(ikalog)$ vi IkaConfig.py
GStreamer経由でBlackmagic Design社製キャプチャカードを使う場合
以下の行を有効にします
source = inputs.CVgst()
source.start_gst("decklinksrc connection=hdmi mode=720p5994 device-number=0 ! videoconvert ! appsink")
ikalogの起動
(ikalog)$ python IkaLog.py
virtualenvの使い方
virtualenvに入る場合は
$ workon ikalog
(ikalog)$
抜ける場合は
(ikalog)$ deactivate
$
変更履歴
2015/11/24 libblas-dev libatlas-dev libatlas-base-dev のインストールを追記