macacon ディープラーニングで白黒動画をカラー化して楽しむOpenCVラッパー

 

f:id:eiji-kb:20160616165553j:plain

以前Youtubeにアップしていた自動彩色の動画に、外国人らしき人から動画作成のチュートリアルを作って欲しいとコメントが付きました。そこで、ラッパーを作成して公開しました。入力動画に対し彩色データを拡大して合わせる定番の処理をしていますので、元動画の解像感は保持されます。

 

自動彩色

自分の知る限り、ディープラーニングによる自動彩色で実行可能な学習済みモデルを公開したのは、Dahl氏が最初だと思います。
Automatic Colorization

そしてこのモデルを元に動画を作成したのがsamin氏で、氏はffmegを使用して動画を作成する方法を公開しています。
forward.py · GitHub
Dahl氏のモデルを使用した動画は、多くはこのsamin氏の方法を使用して作成されているようですね。

www.youtube.com

私も、白黒画像を用意してモデルに読み込ませる作業が退屈になってしまっため、同時期OpenCVを使って処理していました。OpenCVを使って動画を読み込み、Dahlモデルで彩色、動画出力までを一気に処理しますので、上のffmpegを使用した方法に比べ大幅に手間が減り高速に処理することができます。なお、ここでの動画作成ですが単にフレームごと彩色して動画出力しているだけです。難しい処理ではありません。


準備
実行確認環境

音声も後述のバッチで処理する場合

OpenCVのインストールがやや面倒ですが、その価値はあります。今回のラッパーの画像変換部分をOpenCVで処理したものとscikit-imageで処理したものとで速度を比較したところOpenCVの方が4倍ほど高速でした。(テスト動画でOpenCV版471.30sec、scikit-image版2143.16sec)

 

セットアップ

Dahl氏Automatic Colorization をダウンロードしてください。
http://tinyclouds.org/colorize/

 
次に以下のGitから、macacon.pyをmacacon.shをダウンロードして、上と同じフォルダに保存して下さい。

github.com

 

macacon.pyのスクリプトを以下に示します。

macacon python list

 

使い方

・基本的な使い方 (例:白黒動画ファイル名input_movie.mp4  出力ファイル名output_movie.mp4)

python macacon.py input_movie.mp4 output_movie.mp4

・オプション -mで オプションでモニタ画面を表示します。彩色作業中の様子を見たい場合に使用。

python macacon.py input_movie.mp4 output_movie.mp4 -m

                              f:id:eiji-kb:20160709160128p:plain

 

・オプション -c 倍率 で、彩度の強調もできます。ただし不自然なのであまりお薦めしません。また元々色が良くついていないところは強調しても効果はありません。

python macacon.py input_movie.mp4 output_movie.mp4 -c 2.8

    youtu.be


音声の処理
macacon.pyは動画の彩色処理だけで、音声処理はしません。そのため音声は動画編集ソフトなどで処理してください。自分はほとんどAviUtlで処理しています。
また動画編集ソフト以外の処理方法として、ffmpegを用いて白黒動画の音声を彩色した動画に付加する方法を示しておきます。

ffmpeg -i input_movie.mp4 -acodec copy -map 0:1 soundtrack.m4a
ffmpeg -i output_movie.mp4 -i soundtrack.m4a -vcodec copy -acodec copy output_movie_color.mp4

 

 

動画の彩色と音声の処理をまとめて行うバッチ
上2つの処理をバッチ化したものです。 


・基本的な使い方(例:白黒動画のファイル名input_movie.mp4  出力ファイル名output_movie.mp4)

sh ./macacon.sh input_movie.mp4 output_movie.mp4

・オプション -mで オプションでモニタ画面を表示します。彩色作業中の様子を見たい場合に使用。

sh ./macacon.sh -m input_movie.mp4 output_movie.mp4

・-c 倍率 で、彩度の強調もできます。ただし不自然なのであまりお薦めしません。また元々色が良くついていないところには強調しても効果ありません。

sh ./macacon.sh -c 2.8 input_movie.mp4 output_movie.mp4

 


処理時間

テスト環境

以下は、動画1秒あたり彩色に必要な時間(秒)です。(解像度720x540の動画でテスト)

 

f:id:eiji-kb:20160709214703j:plain


GPUであれば元動画の3.5倍程度の時間で彩色しますので、2時間の映画を彩色するのに7時間くらい見ておけばよいです。寝る前にセットしておけば翌朝には出来ています。
CPUの場合は、13.5倍の時間がかかるので2時間の映画を彩色するには27時間ほど必要ということになります。日曜に見たいのなら金曜日の寝る前に仕込んでおく必要がありますね。

なお、-mオプションはそれほど負荷がかかりませんので、パソコンを別件で操作しながら彩色する際は利用することをお薦めします。見ているだけでも楽しいので。

 

サンプル
以下はmacaconラッパーを使って彩色した例です。
 
ローマの休日

   www.youtube.com

西部戦線異常なし

   www.youtube.com

1:40くらいから、俳優の演技がすごいですね。緑のこけが生えたりはしていますが。

 

蛇足ですが、元モデルの学習データにないようなものを彩色しようとしてもあまりぱっとしない結果になると思います。あるいは変な結果、たとえば白髪の日本人の頭が金髪のサッカー選手みたいになったりします。これは学習データに日本人がなかったためでしょう。満足する結果を得たいのであれば、本来彩色したい対象に対する、十分な量の適切なデータセットで学習しておく必要があります。日本の映画なら、日本人のデータで学習するのが理想です。なお今回のモデルでは提供されていません。

またDahl氏のモデルは多様性(平均化)問題があります。例えばスポーツカーなど赤でも青でもあり得る(多様な色を持つ)対象データを学習した場合、その対象の色として、色空間上の赤と青の平均の値として学習してしまいます。この平均化の効果により、彩色の予測が灰色がかった低い彩度となってしまうとのことです。(引用Zhang, Richard, Phillip Isola, and Alexei A. Efros. "Colorful Image Colorization."arXiv preprint arXiv:1603.08511 (2016).

 

使用条件
・非商用
・もしカラー化した動画をアップしようとするなら、監督など製作者の意志(遺志)の確認と尊重を願います。

これは製作者がカラー化を望んでいなかった場合も多いためです。あるいは、最新の技術を使って彩色するというのなら話は違ったのかもしれませんが、製作者が故人となった今では永遠にわからないことです。しかし個人で楽しむ分には問題ないと思います。もっとも、カラー化すれば白黒映画を見る取っ掛かりにはなりますが、不思議なことに一時間くらい続けて見ていると彩色のパターンにも慣れるのか、白黒でも構わないなと思えてきます。もしくは名作と言われるものは現代の並の映画よりはるかにおもしろいため、作品自体にのめり込み相対的に色のことがあまり気にならくなるためかもしれません。それでも、ひそかにカラー化した名画を、休みの日に、ビールでも飲みながらゆっくり見るのは幸せ…ですね。

 

Ubuntuアップデート後にログイン画面のループにはまる件

Ubuntuのアップデート(ソフトウェアの更新)適用後に、ログイン画面で正しいパスワードを入力しても、ログイン画面に戻されて延々ログインできないという不具合が発生します。ネット上にいくつか解決方法が掲載されているので試しましたが、私の環境ではうまく解決できませんでした。結論から言うと、私の場合はグラフィックドライバを再導入することで解決しました。(NVIDIAの外付グラボを使用している環境です)

 

1.ログイン画面から、Ctrl + Alt + F1を押し、CUI画面へ移行、ユーザIDとパスワードを入力し、ログイン。

 

2.Caffe(本家サイト版)をインストールして試してみる - 論理 Hearts Club Bandの、

   2-8. GUIサービスデーモンを停止します.

   から

   2-17. Xconfigurationの更新とNVIDIAドライバのインストールが成功したと表示されます. 

   までを実施。

(注:私の場合、ホームディレクトリにビデオドライバを置きっぱなしにしていますので、上記の対応となっています。ドライバが無い場合はその用意が必要です)

 

3.再起動後ログイン。

 

 

時折この方法で解決しています。根本的にこの不具合が発生しないようにできればいいのですが。

 

Caffe(本家サイト版)をインストールして試してみる

(2015/12一部改訂)
Caffeはインストールが面倒ということで有名です.面倒だけならまだしも、すでに環境構築済みのマシンにインストールしようとするとソフトの依存関係に問題があるのかインストールに失敗することがあります下手したら延々インストールに時間を費やした挙句,結局インストールできなかったということになります.そこで可能であればOSをクリーンインストールして直後にCaffeをインストールすることをおすすめしますこれならインストールは素直に進みます.以下は、その作業の記録です


前提条件
 Ubuntu 14.04.2 (日本語Remix14.04インストール後,アップデート)※クリーンインストール
 GPU使用(下記ではTITAN)
 (GPU+cuDNN+OpenBLASという組み合わせでのCaffeインストール手順)


1.Caffeのインストール
 下記のサイトおよび本家サイトを参考にしました.
 Caffeインストール - RupyWiki
 Caffe | Installation

 

   現在使用されているビデオドライバは,
   右上のギアのアイコンから、[システム設定]-[ソフトウェアとアップデート]
   を選択し,「追加のドライバー」のタブをクリックすることで確認できます.
   デフォルトでは,Nouveau ディスプレイドライバが使用されています.

f:id:eiji-kb:20150715021133p:plain


   ドライバのインストールのポイントとして以下の2点が言われています.
   ・デフォルトで稼働している nouveau ドライバを無効にする.
   ・ドライバインストールはCUIモードで行なう.

   なお細かい話ですが,
   CUIモードでは日本語が表示されません.◆に文字化けして表示されます.
   「ダウンロード」などの日本語フォルダ名は文字化けして判別できなくなります.

   そこで対策の一つしては,あらかじめホームディレクトリの日本語フォルダ名を英語
   に変更しておく方法があります.

   手順は下記参照.
   Ubuntuでホームディレクトリの中身を英語にする - Qiita

   
   もしくは,フォルダ名を日本語のままにしておきたい場合は,ダウンロードしたドライバを
   一段上のホームディレクトリに移動しておけばよいです.(以下説明はこれを前提とします)

    1)TITANのドライバをNVIDIAドライバダウンロードから入手します.
    TITAN(無印,Black,Z)であれば,以下のように選択.
    (各自所有のグラボに合わせる)

    f:id:eiji-kb:20150727113247p:plain

    [検索]をクリックする.下記はTITANの例.

    f:id:eiji-kb:20150727113543p:plain

    ダウンロードする.

   2)nouveau ドライバの無効化,ドライバのインストール

    (参考サイト)
   How to Install NVIDIA 346.35 Stable Driver in Ubuntu 14.04 | UbuntuHandbook
   Remove nouveau and install nvidia Driver in Ubuntu 15.04 | allaboutlinux.eu
   nvidiaのdriverをインストール(ubuntu) - mikemoke blog
   Ubuntu に最新の NVIDIA Driver をインストールする。 - ZONDEEL BLOG


   上記のサイトを参考にしながら,実際に設定した内容を以下に記します.

   2-1. Ctrl+Alt+T で端末を開きます.
   2-2. 以下のコマンドで既存のドライバを削除します.
     (OSクリーンインストールの場合削除0個と出ます)

sudo apt-get remove nvidia*
sudo apt-get autoremove

   2-3. nouveauドライバの無効化ファイル編集のため,エディタを起動します.

sudo gedit /etc/modprobe.d/blacklist-nouveau.conf

     そして開いたファイルに下記の内容を貼り付け,保存します.

blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

   2-4. 以下のコマンドを入力して,nouveauを無効化します.

echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
sudo update-initramfs -u

   
   2-5. マシンを再起動します.

   2-6. 再起動後Ubuntuにログインし,
     Ctrl + Alt + F1
     を押し,CUIを起動します.
   
   2-7. CUI画面から,ユーザIDとパスワードを入力してログインします.
   
   2-8. GUIサービスデーモンを停止します.

sudo service lightdm stop

 
   2-9. インストーラの実行権限を変更します.

sudo chmod 755 NVIDIA-Linux-x86_64-352.63.run


   2-10. インストーラを実行します.

sudo ./NVIDIA-Linux-x86_64-352.63.run

 
   2-11. ライセンス同意確認が表示されますので内容を確認し同意したら,[Accept]を選択します.

f:id:eiji-kb:20150720183132j:plain

   2-12. 私の環境ではプレインストールスクリプトが失敗したと表示されました.
     そのまま[Continue installaton]を選択して次に進みます.
f:id:eiji-kb:20150719040245j:plain

    2-13. UEFIのセキュリティーブートのためにNVIDA Kernel moduleを署名するか
     尋ねてきます.ここは[Install without signing]を選択しました.

f:id:eiji-kb:20150719040613j:plain

   2-14. 32bit互換ライブラリのインストール先を見つけることができませんと警告が出ます.
      そのまま[OK]を押します.(2015/12追記 最新バージョンでは32bitライブラリを導入するか聞いてくるようです。いずれにせよ導入しません)

f:id:eiji-kb:20150727115725p:plain

   2-15. libvdpau ライブラリについての紹介が表示されます.[OK]を押します.

f:id:eiji-kb:20150719042219j:plain

   2-16. NVIDIA XドライバをXconfigurationに反映させるか尋ねてきます.
      [Yes]を選択しました.

f:id:eiji-kb:20150719042705j:plain

    2-17. Xconfigurationの更新とNVIDIAドライバのインストールが成功したと表示されます.
      [OK]を押します.

f:id:eiji-kb:20150719043427j:plain

    2-18. 以上でドライバのインストールは終了です.
        機械を再起動します.
   
   起動後,ドライバを確認すると,以下の画面となります.
   (ドライバがNouveau から,手動インストールされたドライバになる)

f:id:eiji-kb:20150719043648p:plain

   ドライバインストール後は,
   Ubuntu起動時にNVIDIAのロゴが一瞬表示されるようになります.
 

  (2)CUDAのインストール
    (参考サイト)
    Getting Started Linux :: CUDA Toolkit Documentation
    Ubuntu14.04 ServerでCUDA 6.5.14の環境を整える

   1)CUDA7をCUDA 7 Downloadsから入手します.
    [Linux x86]のタブを選択します.
    RUNFILEでのインストールを行いますのでRUNを選択します.

f:id:eiji-kb:20150716041721p:plain

    ダウンロードした cuda_7.0.28_linux.run は
    コンソールでインストールを行いますので,
    ダウンロードフォルダから一段上のホームディレクトリへ移動しておきます.

   2)RUNFILEでインストールのため,
    テキストモード(ランレベル3)でマシンを再起動します.
    ググったところ方法はいくつかありますが,
    ここでは起動時のGRUBメニューから起動オプションを追加して起動する方法で説明します.
     
    2-1. マシンを再起動します.
     GRUBメニューが表示されたら,Ubuntuが選択された状態で「e」キーを押します.

f:id:eiji-kb:20150722044730j:plain

テキストモード(ランレベル3)に再起動します。
テキストモード(ランレベル3)に再起動します。

      2-2. ”linux"行に起動オプションを追加します.
     "splash"の次に,” text 3 "(テキストモード,ランレベル3)と追記します.
     下記は追記した後の写真です.
     (この変更は一過性のもので,今回ブートのみ有効です
      次回ブート時は,追記内容は消去されます)

     追記後,[F10]キーを押して,再ブートします.

f:id:eiji-kb:20150727124847j:plain

      2-3. 念のため,ログイン後,
      ”runlevel"コマンドでランレベルが3となっているか確認しました.

      f:id:eiji-kb:20150727120801p:plain

     2-4. CUDAのインストーラは,NVIDIAビデオドライバが含まれていますが.
      (1)で既に最新バージョンをインストールしていますので不要です.
      そこでCUDAtoolkitとサンプルを個別にインストールするために,
      それ専用のインストーラを生成します.

      最初に,インストーラの実行権限を変更します.

sudo chmod 755 cuda_7.0.28_linux.run

    2-5. インストーラを生成するため-extractオプションを付けて実行します.

sudo ./cuda_7.0.28_linux.run -extract=$HOME/nvidia_install

    オプションで指定したフォルダにドライバとツールキットとサンプルのインストーラが生成されます.

    2-7. 生成先フォルダに移動します.

cd nvidia_install

     2-8. Cudaのインストーラを実行します.

sudo ./cuda-linux64-rel-7.0.28-19326674.run

     2-9. EULAが表示されます.スペースキーで進んでください.
      最後にオプションを聞いてきます下記のとおり入力しました.

        ・ソフトウェア使用許諾(EULA): accept
        ・インストールパス:[Enter] (デフォルト)
        ・デスクトップメニューショートカットの作成:[Enter] (デフォルト)
        ・シンボリックリンクの作成:[Enter] (デフォルト)

f:id:eiji-kb:20150722044045j:plain

      「Installation Complete」と表示されたら,インストール終了です.

     2-10. 引き続きサンプルのインストーラを実行します.
      先のツールキットのインストールと似たような手順です.

sudo ./cuda-samples-linux-7.0.28-19326674.run 

       インストーラのオプションは次のとおり入力しました.

        ・ソフトウェア使用許諾(EULA): accept
        ・インストールパス:[Enter] (デフォルト)

    f:id:eiji-kb:20150722044206j:plain

     2-11. 次に "Enter CUDA install path [default is /usr/local/cuda-7.0]"
      と表示されるので,確認して[Enter]を押します.

      「Installation Complete」と表示されたら,インストール終了です.
      ここでUbnuntuを再起動しました.
      また,インストールフォルダは作業完了後にでも削除してください.

   3) Pathの設定
    3-1. エディタで .profile にパスを追記します.

gedit .profile

    3-2. 下記を末尾に追加し,保存しました.

export PATH=$PATH:/usr/local/cuda-7.0/bin
export LD_LIBRARY_PATH=/usr/local/cuda-7.0/lib64:$LD_LIBRARY_PATH
export CUDA_ROOT=/usr/local/cuda-7.0/bin

    3-3. パスを反映させます.

source ~/.profile


   4)g++のインストール

    CUDAのサンプルをmakeしようとしたところ,
    g++が入っていないと言われましたので,インストールしました.
    (サンプルのmakeはCUDAのインストール確認のため行いました.これは
     Caffeインストールにあたっての必須事項ではないため,詳細は割愛します)     

sudo apt-get install g++


  (3)cuDNNのインストール
   (参考サイト)
   cuDNNインストール - RupyWiki


   cuDNNを使用した方が処理速度が速くなるとのことでインストールしました.
   なおダウンロードにはアカウント登録が必要です.
   (これは個人的に前おこなったので説明は割愛させていただきます...)

   1)NVIDIA cuDNN – GPU Accelerated Deep Learning
    から,cuDNN v2 Library for Linuxをダウンロードしました.
    そのほか,Users Guide や Code Sampleもダウンロードしておきました.

f:id:eiji-kb:20150723190913p:plain

   2)Downloadsフォルダに解凍します.
    そのあと,/usr/local フォルダに移動します.

sudo cp -r cudnn-6.5-linux-x64-v2 /usr/local/

   3)エディタで .profile にパスを追記します.

gedit .profile

   4)下記を末尾に追加し,保存しました.

export LD_LIBRARY_PATH=/usr/local/cudnn-6.5-linux-x64-v2:$LD_LIBRARY_PATH

   5)インクルードファイルやライブラリファイルを必要な場所にコピーします.

cd /usr/local/cudnn-6.5-linux-x64-v2
sudo cp cudnn.h /usr/local/cuda-7.0/include
sudo cp libcudnn* /usr/local/cuda-7.0/lib64

 

  (4) BLASのインストール
    OpenBLAS,ATLAS,IntelMKLから選択できますが,
   パフォーマンスが良いOpenBLASをインストールしました.
   IntelMKLは商用なので避けました.
   (参考)
   Easy Installation of an Optimized Theano on Current Ubuntu — Theano 0.7 documentation


    1)gitが入っていないので,インストールします.

sudo apt-get install git

    2)コンパイルFORTRANが必要なので,インストールします.

sudo apt-get install gfortran

    3)gitでOpenBLASを入手します.

git clone https://github.com/xianyi/OpenBLAS

    4) ダウンロード後,makeします.

cd OpenBLAS
make FC=gfortran

    下記が表示されます.
f:id:eiji-kb:20150723202441p:plain

   5)つづけて,下記を入力します.

sudo make PREFIX=/usr/local install

     下記が表示されたら終了です.

f:id:eiji-kb:20150723202707p:plain



  (4)その他の依存関係ソフトのインストール.
   (1)のサイトを参考.

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler


  (5)Caffe本体のインストール
   1)gitでCaffeを入手します.

git clone https://github.com/BVLC/caffe.git

   2)python関係のライブラリ(numpy,cpython等requirements.txts参照)をインストール
    しますが,まずpipがインストールされていないのでそれからインストール.

sudo apt-get install python-pip

   3)caffe/pythonディレクトリに移動し(1行目),pip実行(2行目).

cd caffe/python
for req in $(cat requirements.txt); do sudo pip install $req; done

   4)Caffeフォルダへ移動し,Makefile.configファイルをひな形からコピーし,
    コピーしたファイルをエディタで開きます.

cd ..
cp Makefile.config.example Makefile.config
gedit Makefile.config

   5)エディタで開いたファイルに以下の通り変更を加えます.
    (左側数字:は行番号ですので無視してください)

    5-1. CuDNN使用のためコメント(#)をはずします

5: USE_CUDNN := 1

    5-2. OpenBLASを指定.
      そしてOpenBLASのインクルードファイルとライブラリフォルダを指定.

46: BLAS := open

50: BLAS_INCLUDE := /usr/local/include
51: BLAS_LIB := /usr/local/lib

    5-3. 以上の修正が終了したらファイルを保存してエディタを閉じ,
      make実行.

make all
make test

      ちなみに自分の環境で処理時間はmake allで7〜8分,make testで4分程度だった.
      (わざわざマルチコアではコンパイルしませんでした)

    5-4. 以下を入力し,

make runtest

      下記のように[PASSED]と表示されることを確認.

f:id:eiji-kb:20160102102055p:plain

 

  (5)PyCaffeの設定

   1)python-numpyをインストール

sudo apt-get install python-numpy

   2)pyCaffeをmake.

make pycaffe

   3)パス追加のため,ホームディレクトリに移動後、エディタ起動

gedit .profile

   4)末尾に,以下を追加

export PYTHONPATH=$HOME/caffe/python:$PYTHONPATH 

   5)パスを反映させます.

source ~/.profile

 

   以上で作業は終了です.
   次のチュートリアルが動くことを確認して,とりあえずインストール終了としました.


2.Caffeを試してみる
 ネット上ではいろいろチュートリアルがあります.
 今回,下記で試しました.

 ・葉月ちゃんでも出来るDeep learning
  http://files.sig2d.org/sig2d14.pdf
 これは日本語で書かれており,Caffeでの処理の概要を掴むのに良いです.

 なお本文を試していて見落としがちなのは,
 >学習用および判別用の両方のネットワーク定義を変更するのを忘れないこと.
 と書いてあるところです.
 つまり cifar10_quick_train_test.prototxt の num_output の変更と共に,
 cifar10_quick.prototxt の num_output も同じ数に変更します.


3.CNNについて

 Deep learningの本として,下記の本が有名ですが、説明がわかりやすく,おすすめします.


 また上の本のCNNの章をスライドで説明されたのが以下です.
 これはスライドのアニメーション的な動きが,直感的な理解を助けてくれます.
  

      

www.slideshare.net



4.謝辞
 インストールにあたってはほぼ他のサイトを参考にしました.感謝いたします

 

(自分用備忘)
Linuxインストール時,内蔵グラフィックにモニタを接続して導入すると,後で内蔵グラフィックと外付グラボの切り替えが問題なくできる(外付グラボに接続してインストールすると,内蔵グラフィックにモニタを接続しても,うまく表示しなかった)

手順(順序とタイミングに注意して行う)
1.UEFIで,内蔵グラフィック(IDG)を選択しておく.
 (1)起動時画面で,[DEL]キー押下し,UEFI起動.
 (2)左ペインの[SETTING]をクリック
   [Advanced]-[Integrated Graphics Configuration]を選択
  Initiate Graphic Adapterを,[IDG]に変更
  左ペインの[SETTING]をクリックTOPメニューに戻り,Save & Exitを選択
  Save Changes and Rebootを選択し,再起動.
2.内蔵GPUのポートにモニタを接続
3.Linux導入
4.導入終了後、再起動時,UEFIを立ち上げ,PEGに変更する.
 (1)起動時画面で,[DEL]キー押下し,UEFI起動.
 (2)左ペインの[SETTING]をクリック
   [Advanced]-[Integrated Graphics Configuration]を選択
  Initiate Graphic Adapterを,[IDG]に変更
  左ペインの[SETTING]をクリックしTOPメニューに戻り,Save & Exitを選択
  Save Changes and Rebootを選択し,再起動.
5.再起動時,すばやく外付グラボのポートにモニタを接続する.
6.外付グラボのドライバをインストール(上記参照)



NVIDIAのドライバインストールについて
下記のような簡便な手順でドライバはインストールできるが、これではどうもディープラーニングフレームワーク側での処理がうまくなされない。TensorFlowでは、GPUでの処理がうまくできない(GPUのメモリ確保してない、処理低速、結局CPUで稼働?)。また、Caffeのインストール(make)にも失敗する。

 

 (1)NVIDIAビデオドライバのインストール(2015/12改訂)
   Nouveauの無効化など関係なく,簡単にインストールできたので改訂.

   (このインストール方法じゃ、GPUで処理がきちんとされなかった。よって削除)

   右上のギアのアイコンから、[システム設定]-[ソフトウェアとアップデート]
   を選択し,「追加のドライバー」のタブをクリック.
   デフォルトでは,X.Org Xerver -Nouveau… ディスプレイドライバが選択されているが,
   NVIDIA binary driver…nvidia-352...(プロプライエタリ,検証済み)を選択する.
   [変更の適用]をクリック.

f:id:eiji-kb:20151220104200p:plain

   右下にオレンジのプログレスバーが表示されるので,しばらく待つ.

f:id:eiji-kb:20151220104834p:plain

   適用後,再起動した.これでOK.

 

352というのは,Titanのドライバのバージョン番号.この番号はNVIDIAドライバダウンロードから自分のグラボを検索すると判る.今回グラボを取り付けた状態でLinuxを導入したため,最初からグラボを認識して,上のように親切に出てきてくれたものと考えられる.

※※以下の方法でもインストールできる.これも4行で済むので簡単.
以下のサイトからの情報.

(※リンク先削除)

sudo add-apt-repository ppa:xorg-edgers/ppa
sudo apt-get update
apt-cache search 'nvidia-[0-9]+$'
sudo apt-get install nvidia-352

352以外もインストール可.(バージョンは3行目実行後,画面に表示される)

 

 

テキストモード(ランレベル3)に再起動します。
テキストモード(ランレベル3)に再起動します。

Deep learning用のハードを用意する

今年(2015年)に入り,いっきに一般の単語となった観があるDeep learning(深層学習).
流行語大賞の候補に入りそうな勢いです.
Google Trendsにて日本での「Deep learning」「深層学習」の検索数推移を見てみました.
2014年後半から右肩上がりの角度が急になっています.

f:id:eiji-kb:20150725151119p:plain

ちなみに国別で見てみたのが下図.最大5カ国まで同時表示できますので,各国見てみました.
中国が多い.たしかにこの前のDeep learningを使った認識コンテストでも,TOP10に中国の大学があちこち入っていました.
しかしアメリカと比較してもこんなに多いのはなぜ?グラフが急激に下がっているのも意味不明.f:id:eiji-kb:20150725225426p:plain

話がそれましたが,とにかくDeep learningもここまで一般化すると今更やっても遅い感があります.しかし,始めなければチャンスもありません.まだ可能性はあると思います.
そこでDeep learningの環境を構築しました.
ついでに,夏季休暇あたりに個人的にDeep learningを試してみようと思っている方に,何を揃えたらよいか,必要なものがざっと俯瞰できるガイド的なものも作成できると思いこれを作りました.すでにDeep learningをばりばりやっている方にはなんの価値もない内容です.

1.Deep learningに適したOSとハード
 OSはUbuntu,ハードはタワー型でNVIDIAGPU.  

 f:id:eiji-kb:20150729082512p:plain

 上はかなりのポンチ絵で申し訳ないのですが,
 Deep learningフレームワークは,Caffe,Torch, Pylearn2, Mocha, Chainer, ... 各種存在します.
 この中でCaffeやTorch,Pylearn2はかなりメジャーです.
 また,これらフレームワークを操作する言語(フレームワーク自体その言語で記述されていることも多い)も,
 違いがあります.
 従来の機械学習の分野では,numpyやscikit-learnといった機械学習に便利なライブラリが
 使えるpythonが利用者を獲得しており,引き続きDeep learning界隈でも人気があるようです.
 最終的には,自分のやりたいこと(CNNで識別したい,自分で新しいニューラルネットを作りたい)
 に適した粒度のフレームワークを使うことになると思います.
 その見極めのためにもメジャーなものにはひと通り目を通しておくことは有益と考えます.
 これらDeep leaningのフレームワークですが,対応OSとしてはlinuxが第一のターゲットとなっています.
 同じUnix系のMacOSも対象となっていますが,コンパイラの違いなどによってフレームワーク
 によってはインストールがlinuxより面倒な場合があります.
 Windowsでは非公式サポートだったり,サポートしないが自分たちで試してみてといった一段下の
 取り扱いとなっています.
 もちろん手間暇をかけてWindowsで動かすといったこともありですが,
 Deep leaningが主目的であればあっさりUbuntuを使うのが良いです.
 今は昔と違い3つのOSをそれぞれ得意案件に応じて使い分けることも多いと思います.

 ハードはコストパフォーマンスを考えればWindows機(Ubuntu機も同じ)となります.
 Macは当然アップル社製のみまた,MacbookiMacGPUが世代によりNVIDIAであったり
 AMD(ATI)であったりします.
 選択の幅がWindows機(Ubuntu機)に比べ狭い.
 Windows機(Ubuntu機)はデザインやMacOSが原則使用できないことを置いておけば,
 コストパフォーマンスに優れます.
 Windows機(Ubuntu機)でも高性能なGPUを積んだノートは高価なため,対象はデスクトップとなり,
 またごついGPUを積むことになるため,タワー型が対象となってきます.
 熱のことを考えたら,ミニタワーよりゆとりのあるミドルタワーやフルタワーが良いかと思います.

 もちろんハードについては,予算があれば性能重視で行くこともできます.
 GPU複数枚積むと性能も上がります.
 実際Deep leaning向けにそのような構成のマシンも売られています.
 だいたい100万円は超えるようですが.自分で組めばもう少し安くできるかもしれません.
 会社か学校で予算が出る,もしくは金持ちで痛くも痒くもない,金持ちではないが漢,
 といった場合は選択が可能と思います.

2.GPUの選択について
 TITANシリーズがおすすめとなります.
 GPUはメインのパーツとなります.よって性能が良いものをおすすめします.

f:id:eiji-kb:20150729204850p:plain

 速度(Flops)については,サイトにより微妙に違いがあり,上図は下記を参照しました.
 List of Nvidia graphics processing units - Wikipedia, the free encyclopedia


 現行品はTITAN Xや980などのMaxwell世代の製品となります.
 現在はこれらの製品が最も入手し易いということになります.
 しかし残念ながら,これらは前世代(Kepler)と比べて性能がさほど上がっていません.
 また,Deep learningでは浮動小数点の精度は単精度でも十分とされているため
 重視する必要は無いとはいえ,倍精度の性能が出ないのも面白くないところです.
 さらに,次期製品であるPascalアーキテクチャは,性能がかなり向上する見込みである
 ことがアナウンスされています.Deep learning用途であれば10倍向上ということです.
 鵜呑みにするのもなんですが,それでも製造プロセスは変更されますし倍近いトランジスタ
 が載せれるようになるため,性能は確実に向上します.
 仮にDeep learning用途で10倍になるのなら,いやそこまで行かなくても数倍でも性能が
 上がるのであれば,そりゃ来年購入することになると思います.
 こういう情報を仕入れると,安い買い物ではないため現行のMaxwell世代品は買う気が失せます.
 しかし待っていても使えないし時間も金のうちですので,ここは現行品を購入するか,
 もしくは入手の確実性は低いですがKepler世代品を中古で購入するということになります.
 私はTITANを入手しました.

 なお,Teslaシリーズですが,これはGPUコンピューティング専用品です.
 ECCメモリを積むなど,信頼性を重視した製品となっております.
 関係の無い世界ですのでよく知りませんが,GPUクラスタを組む場合に
 この信頼性はかなり重要になってくるものと想定されます.
 ただ価格も相当に良いです.(ググったらK40が最安で52.8万円くらい)
 個人ベースではなかなか購入できないと思いますので,表では参考としました.

3.実際に購入したハードと価格
 (1)GPU
   TITANをオークションで入手しました.
   4月ころ入手で,58,000円
   グラボはいくつかメーカがあるのですが,
   落としたのはEVGAというメーカのものです.
   EVGA製は,OCができたりと,品質が良いという評価のようです.
   他のメーカのものであれば,もう少し安いようです.
  f:id:eiji-kb:20150728131121j:plain


 (2)パソコン本体
   BTOで購入.
   いくつかサイトを見て,値段がこなれていると思ったパ◯コン工房より購入.
   (特にこの会社を薦めているわけではありません.どこでも良いと思います)

   基本方針は,
    ・性能は基本的にハイエンド側のものを.
    ・しかし水冷とかOCとかしない.
    ・コスト重視.ケースとか安いので良い.BTOでオーダするより個別に購入した方
     が安いパーツは個別に買う.

   ええ,私はお大尽ではないのでコストは重視します.
   しかしハイエンド側としたのは,過去の機械学習のソフトでBoFでCPUのマルチコア
   を使って処理に一晩とかかけていたので,CPUはいいものを選択することにしました.
   ただ,性能が高いCPUを選択しても払った値段に比例して性能が向上するわけでは
   ないです.
   Deep learningでは,処理の中心はGPUとなりますので,
   パソコン本体側は割りきってコストの安い構成にすることも考えられます.
   むしろ本体はi3とか安い構成で組んだ方が,
   そのピーキーさがかっこいいかなとも妄想しました.

   パーツはBTOでオーダするより実店舗の方が安いものがありました.
   BTOでオーダしたら保証や取り付けの手間なしのメリットはあるのですが,
   メモリなど故障する可能性が低く,手間もかからないパーツならもうコスト重視で
   個別に購入します.好きなメーカのパーツが選択できるというメリットもあります.

   実際にベースのモデルとして選択したのは,
   ・MD7100-i7-HLB[Win8.1] 
   スペックは以下の通りです.
  f:id:eiji-kb:20150731052844j:plain 
   このベースモデルの正確な価格は控えていませんでしたが,8万円台後半でした.
   これに以下のカスタマイズをおこないました.
    ・CPU i7-4790K       (+6,480円程.Kは4コア同時に最大4.2GHz動作
                  可能との記事を見たのでこれにした)
    ・メモリ 16G(8G✕2)     (+11,980円程.なおBTOで32Gにすると高い.
                  そこは個別買いで対応予定.)
    ・HDD 2T         (+4,980円程.HDDはWindows用として.しかしこれが...)
    ・光学ドライブ ブルーレイ    (+5,980程.これはDeep Learningには関係なし.)
    ・電源 700W 80PLUS GOLD (+7,980円程.GPU対応)   
   以上のカスタマイズをして,
    ・支払価格 136,494円(税込,送料込)
     (※価格は時期により異なります.上の発注は2015年7月初旬に行いました)
    ・納期 8日間(発注から手元に納品するまで.土日含めて)

   納期はケースバイケースと思いますが,私の場合8日でした.
   休暇に間に合わせようと思ったら,早めの手配をおすすめします.

   ・残念だったこと
    HDDは+5千円で2Tにできたのでそうしたのだが,
    本体に入ってきたのがSeagateBarracudaだった.
    f:id:eiji-kb:20150729053157j:plain 

    以前iMac27のリコールプログラムでSeagateの1Tが対象になり,
    実際に壊れたので個人的にSeagateにはいい印象を持っていない.
    もちろん今回のが問題ある製品というわけではないのだが.


 (3)個別購入パーツ
    1)SSDUbuntu用) 
     ・Crucial CT500MX200SSD1 25,916円
     ・オウルテック HDD/SSD用→3.5インチサイズ変換ブラケット   536円
     ・サンワサプライ シリアルATA3ケーブル 0.5m TK-SATA3-05  739円 
                           計 27,191円

      f:id:eiji-kb:20150729074234j:plain

     以前機械学習の特徴量を保存していくのにかなり容量を食った思い出があるので,
     UbuntuもHDDにしようと考えていたが,下記にSSDがいいとありましたので
     参考にさせて頂きSSDにしました.
     Hi-KingさんのChainerの解説がとてもわかりやすい - shi3zの長文日記

      データは増えたらとりあえず手持ちのUSBHDDに保存するかHDDを増設する.
     なおSSDのメーカ選定は下記を参考にさせて頂きました.
     http://ssdおすすめ.com/


    2)その他
     ・結束バンド 100円(電源やSATAケーブルの取り回しで,付け直しする必要があった.ダイソーで購入)
     ・ベゼル用ネジ 270円(安いケースのせいか,ベゼルは1スロットを除き,
      空き缶のフタのようにねじ切るタイプ.まとめて押えるレバー(緑)があるが,
      これはGPUのカドと干渉して押えることができなかった.ベゼルのスロット用の
      ネジも1コしかおまけについてなかったので買いに行った.面倒くさ.)     

      f:id:eiji-kb:20150729060155j:plain


    3)その他(環境により必要ない)
     ・無線子機 バッファロー WLI-UC-G301N 1,500円程
      デスクトップは有線でつなぐのが普通なのでちょっとアンバランスですが,
      都合により無線子機を付けた.実店舗で特価品で購入.
     ・モニタ Prolite X2380HS 15,000円程 これも実店舗の特価品で購入.

  

 (4)最終的な費用
     モニタなど一部の費用はおよそだがここまでの金額を合計すると,
     総合計 238,555円 
     となる.

     ちなみに,7月29日現在で,GTX980Ti搭載したPCは以下の価格.
     パーツが違ったり,メモリやSSDの容量が少なかったりモニタがオプションなど
     条件が違うので単純な比較はできませんが,目安として掲載しました.
f:id:eiji-kb:20150729174432j:plain

     なお,繰り返しになりますが,このブログは特定の会社の製品を推薦する
     ものではありません.
     あえて書くことでもありませんが,実際の購入にあたっては,面倒ですが各社の
     サイトで価格をご確認の上,納得された上で購入されることをおすすめします.

4.パーツ取り付け
 フタを開けて手順書を見てGPUを取り付けた.
 熱のことを考慮してHDDは元あったところから一段上のベイに移動,
 SSDは下のベイに取り付けた.
f:id:eiji-kb:20150729073252j:plain

 このあたりはケースによって違うので,細かいことは略しますが,
 パズルみたいなもんで,取り外したり付けようとした時に,引っかかったような感じを
 受けた場合は,きちんと目視でパーツを確認した方が良い.

5.Ubuntuインストール
 (1)Windows8.1とのデュアルブート

  下記サイトなどを参考にさせていただきました.

デュアルブート(UEFI Win8.1 + Ubuntu14.04) その2 - Windows 8.1のパーティション構成を確認する - Ubuntu kledgeb
  なおWindowsで使用している2T HDDもトラブル対策を考えパーティションを分けました.
  上のサイトには,フリーのパーティション操作ソフトの紹介があったので,それを使いました.
  Windows10リリース直前なのでタイミング的に残念でしたが,10へのアップデートは機会
  を見てやろうと思います.

 (2)Ubuntu14.04LTS日本語Remix(インストール直後アップデートし14.04.2)
  インストールは(1)で紹介したサイトを参考にしながらおこないました.
  LiveCDで起動した時点で,無線子機 バッファロー WLI-UC-G301N は認識するので,
  暗号化規格やキーを設定できます.

  Ubuntuについては,本家サイトの14.04.2isoイメージから導入するか
  日本語Remix14.04isoイメージで導入するか悩みました.
  実際両方入れたりしましたが,最終的には(2)の形で導入したものを使っています.
  個人の好みです.
  本家isoから英語版としてインストールしておけば一番無難という気がしますが,
  Deep learningでかなりUbuntu環境を常用しそうなので,やはり日本語環境で使いたい.
  本家isoでもインストール時日本語を選択すれば日本語インプットメソッドとしてiBus-anthy
  が入る.しかし私はmozcが使いたい.(和音かなというのを使うので)
  結局日本語Remixの方が面倒がなかったので,こちらで使っています.


 (3)トラブルシューティング
  1)日本語Remix14.04LTSを導入し,後述するCaffe(ビデオドライバ等環境含む)を
   インストールした後にUbuntuを14.04.2にアップデートしたところ,
   ログインしてもすぐログイン画面に戻されるという病気がでた.
   これに対してはサイト上にいろいろな情報があるので試したが,解消しなかった.
   まだ導入したばかりなので,再度Ubuntuクリーンインストールした.
   日本語Remix14.04LTSを導入直後,14.04.2にアップデート(sudo apt-get update,
   sudo apt-get upgrade)しCaffeを導入した.
   なぜログインできなくなったのか原因不明なため,今後アップデートが発生した時が不安.
   14.04.2ではxserverが14.10相当のものにかわるという記事を見たがそれが関係あるのか.
   実際に14.04と14.04.02では後述するNVIDIAドライバ導入後の起動時の挙動も違う.
   今の私のUbuntuの知識では原因はわかりません.スミマセン.
   
  2)Ubuntuを2度目導入したとき,導入後真っ黒な画面になってUbuntuが起動しなくなった.
   よく覚えていないが,下記のような流れで対処した.
   1. UEFI(昔でいうBIOS)で起動して,Windows Boot Managerからブートした.
   2. Windowsから管理者権限のコマンドプロンプトを立ち上げ,以下を入力し,

bcdedit /enum firmware

    ブート情報を確認. 

  f:id:eiji-kb:20150729153720j:plain

    ubuntuというのが2個ある.
    GRUBX64とSHIMX64というところが違うが,
    下記サイトを参照すると,

Ubuntu Boot Repair その27 - おすすめの修復でUbuntuを起動できるようにする(ブートメニュー)(UEFI + GPT) - Ubuntu kledgeb

    SHIMX64・・・セキュアブートが有効な環境で「GRUB2」を起動するOSローダ.
             セキュアブートが無効でも利用可.
    GRUBX64・・・セキュアブートが無効の環境で「GRUB2」を起動するOSローダ.

    ということだった.
    今回購入したPCでは,SHIMX64であれば起動した.

   3. 名前が同じubuntuで判別しずらいのでubuntu shimx64に変える.
    下記{id}は,SHIM64.EFIのidentifier(モザイクで隠している部分)をコピペして入力
    する.

bcdedit /set {id} description "ubuntu shimx64"

     (参考サイト)bcdeditでUEFIのブート・エントリの名前を変更する − @IT


   4. UEFIを起動し,Boot Option #1を,ubuntu shimx64にした.

  f:id:eiji-kb:20150729161338j:plain

   これでGRUBが表示され,Ubuntuが起動できるようになった.

  それにしても,SSDは起動が速いですね.
  今回,PC本体も速いということもあると思いますが,
  以前使ってたHDDでのUbuntuよりはるかに快適です.
  買ってよかった.

   (以下に続く )  

eiji-kb.hatenablog.com

Sublime Text 2 で Verilog 編集

SublimeVerilogの構文をカラー表示したい場合は,

別途,パッケージ(プラグイン)を導入することで可能となる.

以下その手順.

 

1.Sublimeでパッケージを読み込みさせるための設定.(まずこれが必要.)

(1)Sublimeのメニューから,

   [View]- [Show Console] を選択.

(2)開いたコンソールに,下記Sublimeオフィシャルサイトから,

   「SUBLIME TEXT 2」のタブのPythonのコードをコピペし,

   [Enter]キーを押して実行. 

   https://sublime.wbond.net/installation

   これにより,自機にパッケージ用フォルダが作成され,

   パッケージコントロールがHTTPS経由でダウンロードされる.

f:id:eiji-kb:20140109163034p:plain

(3)導入終了後,Sublimeを再起動する.

 

2.Verilog用パッケージ(プラグイン)の導入

(1)Sublime再起動後,

   [command]+[control]+[P] を同時に押し,

   コマンドパレットを表示

(2)コマンドパレットに, install と入力する.

   メニューが絞られ,下記が表示されるので,

   「Package Control:Install Package」を選択.

   f:id:eiji-kb:20140109163127p:plain

(3)パッケージ一覧が表示されるので,Verilog を選択する.

   (Verilogは「v」始まりなので,ずっと下の方にスクロールする)

f:id:eiji-kb:20140109163206p:plain

   導入が完了したら,一番下のバーにその旨のメッセージが表示される.(数秒)

 

以上で導入完了.

Verilogソースがカラーで構文表示可能となる.

 

***

 

MacVerilog 編集するさい,

VirtualBox上のWin7でgeditを使用していた.

geditを使用したのはデフォルトでVerilogの構文強調表示ができるためであり,

Win7で使用したのは,Mac版のgeditは日本語が入力できないためであるが,

いかんせん,VirtualBox経由では操作感に問題があった.

適当なエディタを探していたところ,Sublimeを見つけた.

デモの画面を見たところ,これは,従来のエディタとは,

一線を画しているように見える.

ちょっと使ってみる.

 

(追記)

”a”と入力すると下記のように入力支援のメニューが表示され,

"always"を選択してタブを押すと,

f:id:eiji-kb:20140219132610p:plain

にょろにょろっと下記のようにひな型が挿入される.

f:id:eiji-kb:20140219132624p:plain

例えばclkではなくclockなどで記述していたら,

修正しなければならないのだけど,

便利といえば便利.

 

DUO3.0ヘッドアップディスプレイ

英語学習の定番DUO3.0を勉強中ですが少々飽きてきました.

スマホに取り込み帰宅時などに聞いていますが,

英文や対訳文がヘッドアップディスプレイで目の前に表示されればいいなと

思うことがあります.

そうすれば,帰宅時や,料理中などの空き時間も活用できるかと思い,

試してみました.


1.ヘッドアップディスプレイの選択

  外出しても目立たないものが良いのですが,

  適当なものを見つけることができませんでした.

  現実的に入手できる製品として,

  EPSON製のシースルーヘッドアップディスプレイ

  MOVERIO BT-100

  がありましたので,こちらを購入しました.

f:id:eiji-kb:20131021032543j:plain

 (MOVERIO. 上がメガネ.下はAndroidのコントローラ)

 

  結論から申しますとこの製品,

  アーリアダプタから先の溝を飛び越えることを

  はなから放棄したと思わせる,

  いさぎの良い製品でした.

  (1)デザインがNG

   両側が異様に大きく膨らんで,非常にアンバランス.

   これを掛けての外出は,

   ほとんどの人にとって,難しい行為になると考えられる.

 

  (2)コントローラはAndroidだが,こなれていない.

   タッチパッドはオーバーシュートしがちという感覚.

 

  このMOVERIOを純粋に娯楽用メディアプレーヤーとして

  使うのであれば,強いストレスを感じることになると思います.

  しかし,実験用,または技術的な娯楽製品と考えれば,
  すばらしい製品です.

  シースルのヘッドアップディスプレイに,

  ポケットサイズのAndroid端末付き,Wifi内蔵,充電機能付きです.

  Androidですので,ユーザでソフトを追加することができます.

  これで3.4万円程度(Amazomで購入)でした.

  
  EPSONさんはこの製品で,

  利益は求めていないのでしょうが,

  このような製品を出してくれるEPSONさんに感謝です.


2.ソフトの準備

  (1)DUO3.0音声ファイルの分割と,歌詞の読み込み

     こちらは,ネット上の情報を参考にさせていただきました.

  (2)歌詞表示可能ミュージックプレーヤの導入

     MOVERIOに,歌詞(英文)を表示させるミュージックプレイヤーを

     導入する必要があります.

     ところで,MOVERIOのAndroidのバージョンは2.2と,余り高くありま

     せん.

     そのため,選択できるプレイヤーの幅が狭まります.

     とりあえず,MOVERIOに対応可能なフリーのプレイヤーとして,

     「pimp my music」

     を見つけましたのでこちらを導入することにしました.


     また,MOVERIOには,GooglePlayがインストールされていません.

     そのためパソコンで一旦インストーラ(apkファイル)を

     ダウンロードして,microSD経由でMOVERIOに導入する必要が

     あります.

    (こちらも,ネット上の情報を参考にさせていただきました.)


3.使用

 (1)下記のような感じでDUO3.0が表示されます.

    (肉眼では線はまっすぐに,またもう少し綺麗に見えます)

f:id:eiji-kb:20131021032503j:plain

 

 (2)実験として,MOVERIOでDUO3.0を見ながら,カレーを作ってみます.

    まず,野菜の皮は剥けるでしょうか.

f:id:eiji-kb:20131021032616j:plain

 

 (3)無事剥けました.

f:id:eiji-kb:20131021032637j:plain

    ただ野菜を剥く手元と,MOVERIOに表示されている文字を合わせて見よう

    とすると,不自然に首を大きく下に向けなければなりません.

    この姿勢は疲れます.

   (普段,野菜を剥くときは,首を少し下に落として,後は視線を落として

    剥いています.それが自然な見方だと再認識しました.)

 

    == 都度手を洗って写真を撮るのが面倒なので,以下略 ==

 

 (4)カレー完成しました.夜遅く作り始め,時間が無かったため,

    速く火が通るように,野菜は小さく切っています.

    本当はごろごろが好きですが.

f:id:eiji-kb:20131021032654j:plain

 

結果を申しますと,MOVERIOを掛けてDUO3.0を見ながらカレーを作ることは可能です.

しかし,前述の通り,MOVERIOは顔に固定されているため,必ずしも視線の先にDUO3.0の画像が見えるわけはありません.料理する対象物と,DUO3.0の画像を重ね合わせて見るには,普段よりも不自然な形で首を動かさなくてはならず,姿勢に無理を感じます.苦痛でした.またMOVERIOの重さや装着感の悪さ(締めつけ感)も非常に良くありません.したがってここでのDUO3.0の使い方は,耳で文章を聞いて,気になる文章だけ確認するといった使い方になるかと思います.

また,「pimp my music」も,時々停止します.

しかし,有無を言わせず目の前に次から次へと文章が表示されるのは,楽です.

今のところ,横になって,仰向けになり天井を見ながら利用するのが,一番快適なようです.